From c4d59de5b8132c70ae4dc64e4309fc6d761b111d Mon Sep 17 00:00:00 2001
From: 小小儁爺 <1694218219@qq.com>
Date: 星期二, 16 十二月 2025 09:24:56 +0800
Subject: [PATCH] 1.工艺模式   生产工单带工序改为默认历史最新2.生产执行新增 订单号字段

---
 src/views/produce/reportCorrect.vue |  179 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 168 insertions(+), 11 deletions(-)

diff --git a/src/views/produce/reportCorrect.vue b/src/views/produce/reportCorrect.vue
index 26c5628..747064d 100644
--- a/src/views/produce/reportCorrect.vue
+++ b/src/views/produce/reportCorrect.vue
@@ -2,7 +2,11 @@
   <div>
     <div class="body" :style="{height:mainHeight+'px'}">
 
-      <div class="bodyTopFormGroup" style="margin-top: 10px;">
+      <div class="bodyTopButtonGroup" style="justify-content: space-between">
+        <el-button v-waves type="warning" icon="el-icon-edit" @click="batchUpdate">鎵归噺淇敼宸ヤ环</el-button>
+      </div>
+
+      <div class="bodyTopFormGroup">
         <el-form
           ref="form"
           :model="form"
@@ -30,16 +34,34 @@
             <el-form-item label="宸ュ崟缂栫爜" style=" display: flex;">
               <el-input v-model="form.wo_code" placeholder="璇疯緭鍏�" style="width: 200px" />
             </el-form-item>
+            <el-form-item label="璁㈠崟鍙�" style=" display: flex;">
+              <el-input v-model="form.orderno" placeholder="璇疯緭鍏�" style="width: 200px" />
+            </el-form-item>
             <el-form-item label="浜у搧缂栫爜" style=" display: flex;">
               <el-input v-model="form.partnumber" placeholder="璇疯緭鍏�" style="width: 200px" />
             </el-form-item>
-            <el-form-item label="浜у搧鍚嶇О" style=" display: flex;">
+            <el-form-item v-show="isExpandForm" label="浜у搧鍚嶇О" style=" display: flex;">
               <el-input v-model="form.partname" placeholder="璇疯緭鍏�" style="width: 200px" />
             </el-form-item>
             <el-form-item v-show="isExpandForm" label="浜у搧瑙勬牸" style=" display: flex;">
               <el-input v-model="form.partspec" placeholder="璇疯緭鍏�" style="width: 200px" />
             </el-form-item>
-
+            <el-form-item v-show="isExpandForm" label="宸ュ簭鍚嶇О" style=" display: flex;">
+              <el-select
+                v-model="form.stepcode"
+                filterable
+                :popper-append-to-body="false"
+                style="width: 200px"
+                placeholder="璇烽�夋嫨"
+              >
+                <el-option
+                  v-for="item in stepCodeArr"
+                  :key="item.stepcode"
+                  :label="item.stepname"
+                  :value="item.stepcode"
+                />
+              </el-select>
+            </el-form-item>
             <el-form-item v-show="isExpandForm" label="鎶ュ伐浜哄憳" style=" display: flex;">
               <el-input v-model="form.reportuser" placeholder="璇疯緭鍏�" style="width: 200px" />
             </el-form-item>
@@ -89,10 +111,10 @@
           ref="tableDataRef"
           class="tableFixed"
           :data="tableData"
-          :height="isExpandForm?tableHeight:(tableHeight+40)+'px'"
+          :height="isExpandForm?tableHeight:(tableHeight+80)+'px'"
           border
           row-class-name="custom-row"
-          :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px',}"
+          :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+80)+'px',}"
           highlight-current-row
           :header-cell-style="this.$headerCellStyle"
           :cell-style="this.$cellStyle"
@@ -117,6 +139,17 @@
             min-width="160"
             show-overflow-tooltip
           />
+          <el-table-column
+            prop="m_po"
+            label="璁㈠崟鍙�"
+            min-width="160"
+            show-tooltip-when-overflow
+            sortable="custom"
+          >
+            <template slot-scope="{row}">
+              {{ row.m_po?row.m_po:'/' }}
+            </template>
+          </el-table-column>
           <el-table-column
             prop="partnumber"
             label="浜у搧缂栫爜"
@@ -191,6 +224,13 @@
               {{ row.steptype === 'Z' ? '鑷埗' : '澶栧崗' }}
             </template>
           </el-table-column>
+          <el-table-column
+            prop="step_price"
+            label="宸ュ簭宸ヤ环"
+            show-overflow-tooltip
+            sortable="custom"
+            min-width="110"
+          />
           <el-table-column
             prop="wx_name"
             label="渚涘簲鍟�"
@@ -302,6 +342,12 @@
         <el-form-item label="宸ュ崟缂栧彿" class="dialogFormItem">
           <div style="width: 200px;">
             {{ dialogForm.wo_code }}
+          </div>
+          <!--          <el-input v-model="dialogForm.postcode" style="width: 200px" />-->
+        </el-form-item>
+        <el-form-item label="璁㈠崟鍙�" class="dialogFormItem">
+          <div style="width: 200px;">
+            {{ dialogForm.m_po }}
           </div>
           <!--          <el-input v-model="dialogForm.postcode" style="width: 200px" />-->
         </el-form-item>
@@ -464,6 +510,48 @@
       </span>
     </el-dialog>
 
+    <el-dialog
+      v-el-drag-dialog
+      title="鎵归噺宸ヤ环璋冩暣"
+      :visible.sync="batchUpdateDialogVisible"
+      width="1080px"
+      :close-on-click-modal="false"
+      top="15vh"
+      @closed="batchUpdateHandleClose"
+      @close="batchUpdateHandleClose"
+    >
+      <div style="display: flex;align-items: center">
+        <div>
+          淇敼涓猴細
+        </div>
+        <el-input-number
+          v-model="stepPriceEdit"
+          size="medium"
+          :precision="2"
+          :step="0.1"
+          :max="10"
+          :min="0"
+          style="margin: 0 10px 5px"
+        />
+        <div>
+          鍏� / 浠�
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <div class="footerButton">
+          <el-button v-waves @click="batchUpdateDialogVisibleCancel">鍙� 娑�</el-button>
+          <el-button
+            v-waves
+            type="primary"
+            :loading="$store.state.app.buttonIsDisabled"
+            :disabled="$store.state.app.buttonIsDisabled"
+            @click="batchUpdateDialogVisibleConfirm"
+          >纭� 瀹�</el-button>
+        </div>
+      </span>
+
+    </el-dialog>
+
   </div>
 </template>
 
@@ -472,8 +560,12 @@
 import { handleDatetime } from '@/utils/global'
 import elDragDialog from '@/directive/el-drag-dialog'
 import waves from '@/directive/waves'
-import { DefectPermissions, PrentOrganizationNoCompany } from '@/api/GeneralBasicData'
-import { MesOrderStepModelSearch, MesOrderStepUpdateSeave, MesOrderStepVerifySearch } from '@/api/WorkOrder'
+import { DefectPermissions, PrentOrganizationNoCompany, StepData } from '@/api/GeneralBasicData'
+import {
+  MesOrderStepModelSearch, MesOrderStepPriceBatchUpdateSeave,
+  MesOrderStepUpdateSeave,
+  MesOrderStepVerifySearch
+} from '@/api/WorkOrder'
 
 export default {
   name: 'ReportCorrect',
@@ -489,13 +581,14 @@
       tableHeight: 0,
       form: {
         wkshopcode: '',
+        orderno: '',
         wo_code: '', // 宸ュ崟缂栫爜
         partnumber: '', // 浜у搧缂栫爜
         partname: '', // 浜у搧鍚嶇О
         partspec: '', // 浜у搧瑙勬牸
         reportuser: '', // 鎶ュ伐浜哄憳
         reportdate: '', // 鎶ュ伐鏃堕棿
-
+        stepcode: '',
         prop: 'report_date', // 鎺掑簭瀛楁
         order: 'desc', // 鎺掑簭瀛楁
         page: 1, // 绗嚑椤�
@@ -541,7 +634,10 @@
         report_qty: [
           { required: true, message: '璇疯緭鍏ュ悎鏍兼暟閲�', trigger: ['blur', 'change'] }
         ]
-      }
+      },
+      stepCodeArr: [], // 涓嬫媺宸ュ簭闆嗗悎
+      batchUpdateDialogVisible: false,
+      stepPriceEdit: 0
 
     }
   },
@@ -552,6 +648,7 @@
     this.getMesOrderStepVerifySearch()
     this.getDefectPermissions()
     this.getPrentOrganizationNoCompany()
+    this.getStepData()
   },
   created() {
   },
@@ -562,8 +659,60 @@
     this.getMesOrderStepVerifySearch()
     this.getDefectPermissions()
     this.getPrentOrganizationNoCompany()
+    this.getStepData()
   },
   methods: {
+    // 鎵归噺淇敼宸ュ簭
+    batchUpdate() {
+      // this.$confirm('鏄惁纭淇敼?', '鎻愮ず', {
+      //   confirmButtonText: '纭畾',
+      //   cancelButtonText: '鍙栨秷',
+      //   type: 'warning'
+      // }).then(() => {
+      //
+      // }).catch(() => {
+      //   this.$notify.info('宸插彇娑堜慨鏀癸紒')
+      // })
+      this.batchUpdateDialogVisible = true
+    },
+    batchUpdateDialogVisibleCancel() {
+      this.batchUpdateDialogVisible = false
+    },
+    batchUpdateDialogVisibleConfirm() {
+      this.$confirm('鏄惁纭淇敼?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        const data = []
+        // "id": "string",
+        //   "price": "string",
+        //   "type": "string"
+        // data = this.tableData.map(i =>  {  id:i.id price:i.step_price, type:i.steptype})
+        this.tableData.forEach(i => {
+          data.push({
+            id: i.id, price: this.stepPriceEdit, type: i.style
+          })
+        })
+        MesOrderStepPriceBatchUpdateSeave(data).then(res => {
+          if (res.code === '200') {
+            this.batchUpdateDialogVisible = false
+            this.$message.success('淇敼鎴愬姛锛�')
+            this.getMesOrderStepVerifySearch()
+          }
+        })
+      }).catch(() => {
+        this.$notify.info('宸插彇娑堜慨鏀癸紒')
+      })
+    },
+    batchUpdateHandleClose() {
+      this.stepPriceEdit = 0
+    },
+    // 鑾峰彇宸ュ簭鍩虹璧勬枡
+    async getStepData() {
+      const { data: res } = await StepData()
+      this.stepCodeArr = res
+    },
     async getPrentOrganizationNoCompany() {
       const { data: res } = await PrentOrganizationNoCompany()
       this.wkshopcodeArr = res
@@ -585,8 +734,9 @@
         partname: this.form.partname,
         partspec: this.form.partspec,
         reportuser: this.form.reportuser,
+        stepcode: this.form.stepcode,
         reportdate: tempDate,
-
+        orderno: this.form.orderno,
         prop: this.form.prop, // 鎺掑簭瀛楁
         order: this.form.order, // 鎺掑簭瀛楁
         page: this.form.page, // 绗嚑椤�
@@ -613,11 +763,13 @@
     reset() {
       this.form.wkshopcode = ''
       this.form.wo_code = ''
+      this.form.orderno = ''
       this.form.partnumber = ''
       this.form.partname = ''
       this.form.partspec = ''
       this.form.reportuser = ''
       this.form.reportdate = ''
+      this.form.stepcode = ''
       this.getMesOrderStepVerifySearch()
     },
 
@@ -636,6 +788,7 @@
       if (res.code === '200') {
         this.dialogForm.id = row.id
         this.dialogForm.sbid = row.sbid
+        this.dialogForm.m_po = row.m_po
         this.dialogForm.wo_code = row.wo_code
         this.dialogForm.partnumber = row.partnumber
         this.dialogForm.partname = row.partname
@@ -744,7 +897,7 @@
     getHeight() {
       this.$nextTick(() => {
         this.mainHeight = window.innerHeight - 85
-        this.tableHeight = this.mainHeight - 205
+        this.tableHeight = this.mainHeight - 295
         this.$refs.tableDataRef.doLayout()
       })
     }
@@ -789,4 +942,8 @@
   align-items: center;
 }
 
+::v-deep .el-input--medium >input{
+  height: 36px !important;
+}
+
 </style>

--
Gitblit v1.9.3