From bb1368e4c5154b006b2e678261cbfa01e317b3b6 Mon Sep 17 00:00:00 2001
From: 小小儁爺 <1694218219@qq.com>
Date: 星期四, 21 十一月 2024 16:38:53 +0800
Subject: [PATCH] 1.订单工单 新增重量、总料  字段

---
 src/views/workOrder/workOrderList.vue |  286 +++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 185 insertions(+), 101 deletions(-)

diff --git a/src/views/workOrder/workOrderList.vue b/src/views/workOrder/workOrderList.vue
index 691427b..a559944 100644
--- a/src/views/workOrder/workOrderList.vue
+++ b/src/views/workOrder/workOrderList.vue
@@ -8,6 +8,8 @@
           <el-button v-waves type="success" icon="el-icon-connection" @click="send">娲惧彂</el-button>
         </div>
 
+        <el-button v-waves type="primary" icon="el-icon-download" @click="download">瀵煎嚭</el-button>
+
         <!--        <el-button v-waves icon="el-icon-switch-button" @click="orderClose">鍏抽棴宸ュ崟</el-button>-->
       </div>
 
@@ -168,6 +170,113 @@
             fixed
           />
           <el-table-column
+            prop="injectnumber"
+            label="娉ㄥ鏈哄彿"
+            show-tooltip-when-overflow
+            width="110"
+            sortable="custom"
+          >
+            <template slot-scope="{row}">{{ row.injectnumber?row.injectnumber:'/' }}</template>
+          </el-table-column>
+          <el-table-column
+            prop="customername"
+            label="瀹㈡埛鍚嶇О"
+            show-tooltip-when-overflow
+            width="110"
+            sortable="custom"
+          >
+            <template slot-scope="{row}">{{ row.customername?row.customername:'/' }}</template>
+          </el-table-column>
+          <el-table-column
+            prop="partcode"
+            label="浜у搧缂栫爜"
+            show-tooltip-when-overflow
+            sortable="custom"
+            min-width="120"
+          />
+          <el-table-column
+            prop="partname"
+            min-width="150"
+            label="浜у搧鍚嶇О"
+            show-tooltip-when-overflow
+            sortable="custom"
+          />
+
+          <el-table-column
+            prop="partspec"
+            label="浜у搧瑙勬牸"
+            sortable="custom"
+            width="110"
+            show-tooltip-when-overflow
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.partspec">{{ row.partspec }}</div>
+              <div v-else>/</div>
+            </template>
+          </el-table-column>
+          <el-table-column
+            prop="colour"
+            label="棰滆壊"
+            show-tooltip-when-overflow
+            width="110"
+            sortable="custom"
+          >
+            <template slot-scope="{row}">{{ row.colour?row.colour:'/' }}</template>
+          </el-table-column>
+
+          <el-table-column
+            prop="weight"
+            label="閲嶉噺"
+            show-tooltip-when-overflow
+            width="110"
+            sortable="custom"
+          >
+            <template slot-scope="{row}">{{ row.weight?row.weight:'/' }}</template>
+          </el-table-column>
+
+          <el-table-column
+            prop="totalnumber"
+            label="鎬绘枡"
+            show-tooltip-when-overflow
+            width="110"
+            sortable="custom"
+          >
+            <template slot-scope="{row}">{{ row.totalnumber?row.totalnumber:'/' }}</template>
+          </el-table-column>
+
+          <el-table-column
+            prop="plan_qty"
+            label="宸ュ崟鏁�"
+            sortable="custom"
+            show-tooltip-when-overflow
+            width="100"
+          />
+          <el-table-column
+            prop="saleOrderCode"
+            label="閿�鍞鍗�"
+            sortable="custom"
+            show-tooltip-when-overflow
+            min-width="160"
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.saleOrderCode">{{ row.saleOrderCode }}</div>
+              <div v-else>/</div>
+            </template>
+          </el-table-column>
+          <el-table-column
+            prop="clerkuser"
+            label="閿�鍞笟鍔″憳"
+            sortable="custom"
+            show-tooltip-when-overflow
+            width="150"
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.clerkuser">{{ row.clerkuser }}</div>
+              <div v-else>/</div>
+            </template>
+          </el-table-column>
+
+          <el-table-column
             prop="status"
             label="宸ュ崟鐘舵��"
             sortable="custom"
@@ -185,6 +294,21 @@
               <div v-if="row.status==='SCHED'">宸叉帓绋�</div>
             </template>
           </el-table-column>
+
+          <el-table-column
+            prop="wotype"
+            label="鍗曟嵁绫诲瀷"
+            sortable="custom"
+            show-tooltip-when-overflow
+            min-width="120"
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.wotype==='PO'">鏍囧噯宸ュ崟</div>
+              <div v-else-if="row.wotype==='FO'">鎶ュ簾琛ュ崟</div>
+              <div v-else>/</div>
+            </template>
+          </el-table-column>
+
           <el-table-column
             prop="wo_code"
             label="宸ュ崟缂栧彿"
@@ -204,103 +328,7 @@
               <div v-else>/</div>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="saleOrderCode"
-            label="閿�鍞鍗�"
-            sortable="custom"
-            show-tooltip-when-overflow
-            min-width="160"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.saleOrderCode">{{ row.saleOrderCode }}</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="wotype"
-            label="鍗曟嵁绫诲瀷"
-            sortable="custom"
-            show-tooltip-when-overflow
-            min-width="120"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.wotype==='PO'">鏍囧噯宸ュ崟</div>
-              <div v-else-if="row.wotype==='FO'">鎶ュ簾琛ュ崟</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="partcode"
-            label="浜у搧缂栫爜"
-            show-tooltip-when-overflow
-            sortable="custom"
-            min-width="120"
-          />
-          <el-table-column
-            prop="partname"
-            min-width="150"
-            label="浜у搧鍚嶇О"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="partspec"
-            label="浜у搧瑙勬牸"
-            sortable="custom"
-            width="110"
-            show-tooltip-when-overflow
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.partspec">{{ row.partspec }}</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="plan_qty"
-            label="宸ュ崟鏁�"
-            sortable="custom"
-            show-tooltip-when-overflow
-            width="100"
-          />
-          <el-table-column
-            prop="injectnumber"
-            label="娉ㄥ鏈哄彿"
-            show-tooltip-when-overflow
-            width="110"
-            sortable="custom"
-          >
-            <template slot-scope="{row}">{{ row.injectnumber?row.injectnumber:'/' }}</template>
-          </el-table-column>
-          <el-table-column
-            prop="customername"
-            label="瀹㈡埛鍚嶇О"
-            show-tooltip-when-overflow
-            width="110"
-            sortable="custom"
-          >
-            <template slot-scope="{row}">{{ row.customername?row.customername:'/' }}</template>
-          </el-table-column>
-          <el-table-column
-            prop="colour"
-            label="棰滆壊"
-            show-tooltip-when-overflow
-            width="110"
-            sortable="custom"
-          >
-            <template slot-scope="{row}">{{ row.colour?row.colour:'/' }}</template>
-          </el-table-column>
-          <el-table-column
-            prop="clerkuser"
-            label="閿�鍞笟鍔″憳"
-            sortable="custom"
-            show-tooltip-when-overflow
-            width="150"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.clerkuser">{{ row.clerkuser }}</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
+
           <el-table-column
             prop="wkshp_name"
             label="鐢熶骇杞﹂棿"
@@ -530,7 +558,7 @@
       :title="operation==='add'?'鏂板':(operation==='edit'?'淇敼':'璇︽儏')"
       :visible.sync="dialogVisible"
       width="1200px"
-      top="8vh"
+      top="3vh"
       :close-on-click-modal="false"
       @closed="handleClose"
       @close="handleClose"
@@ -705,6 +733,12 @@
         </el-form-item>
         <el-form-item label="棰滆壊">
           <el-input v-model="dialogForm.colour" style="width: 200px" />
+        </el-form-item>
+        <el-form-item label="閲嶉噺">
+          <el-input v-model="dialogForm.weight" style="width: 200px" />
+        </el-form-item>
+        <el-form-item label="鎬绘枡">
+          <el-input v-model="dialogForm.totalnumber" style="width: 200px" />
         </el-form-item>
 
         <el-divider content-position="left">宸ュ簭淇℃伅</el-divider>
@@ -1333,6 +1367,13 @@
                 </el-form-item>
                 <el-form-item label="棰滆壊:" class="formContent">
                   {{ formApprove.colour }}
+                </el-form-item>
+
+                <el-form-item label="閲嶉噺:" class="formContent">
+                  {{ formApprove.weight }}
+                </el-form-item>
+                <el-form-item label="鎬绘枡:" class="formContent">
+                  {{ formApprove.totalnumber }}
                 </el-form-item>
                 <!--                <el-form-item label="宸ヨ壓璺嚎:" class="formContent">-->
                 <!--                  {{ formApprove.routename }}-->
@@ -2041,7 +2082,7 @@
 import {
   AddMesOrderCodeSearch,
   AddUpdateMesOrder, DeleteMesOrder,
-  MesBadOrderSearch, MesOrderDistribution, MesOrderNewStepContent,
+  MesBadOrderSearch, MesOrderDistribution, MesOrderExcelSearch, MesOrderNewStepContent,
   MesOrderSearch,
   UpdateMesOrderStepSearch
 } from '@/api/WorkOrder'
@@ -2049,7 +2090,8 @@
 import { CustomerPermissions, PrentOrganization, PrentOrganizationNoCompany, StepData } from '@/api/GeneralBasicData'
 import Sortable from 'sortablejs'
 import ElDragSelect from '@/components/DragSelect'
-import { MesOrderPrintSearch } from '@/api/GridReport' // base on element-ui
+import { MesOrderPrintSearch } from '@/api/GridReport'
+import { GroupSalaryReportExcelSearch } from '@/api/ReportManager' // base on element-ui
 
 export default {
   name: 'WorkOrderList',
@@ -2120,6 +2162,9 @@
         customername: '', // 瀹㈡埛鍚嶇О
         colour: '', // 棰滆壊
 
+        weight: '', // 閲嶉噺
+        totalnumber: '', // 鎬绘枡
+
         mesmaxqty: 0// 宸ュ崟鐨勬渶澶у��
       },
       customerArr: [],
@@ -2178,6 +2223,12 @@
         ],
         colour: [
           { required: true, message: '璇疯緭鍏ラ鑹�', trigger: ['blur', 'change'] }
+        ],
+        weight: [
+          { required: true, message: '璇疯緭鍏ラ噸閲�', trigger: ['blur', 'change'] }
+        ],
+        totalnumber: [
+          { required: true, message: '璇疯緭鍏ユ�绘枡', trigger: ['blur', 'change'] }
         ]
 
       },
@@ -2351,6 +2402,28 @@
     // })
   },
   methods: {
+    async download() {
+      // let tempDate = this.form.operdate
+      // if (tempDate.length > 0) {
+      //   tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1])
+      // }
+      const data = {
+        wkshopcode: this.form.wkshopcode, // 杞﹂棿缂栫爜
+        mesorderstus: this.form.mesorderstus, // 宸ュ崟鐘舵�佺爜
+        mesordercode: this.form.mesordercode, // 宸ュ崟缂栧彿
+        partcode: this.form.partcode, // 浜у搧缂栫爜
+        ordertype: this.form.ordertype, // ordertype
+        sourceorder: this.form.sourceorder, // 婧愬崟鍗曞彿
+        saleordercode: this.form.saleordercode, // 閿�鍞鍗�
+        partname: this.form.partname, // 浜у搧鍚嶇О
+        partspec: this.form.partspec, // 浜у搧瑙勬牸
+        creatuser: this.form.creatuser, // 鍒涘缓浜哄憳
+        createdate: this.form.createdate ? handleDatetime(this.form.createdate) : '' // 鍒涘缓鏃堕棿
+      }
+
+      const { data: res } = await MesOrderExcelSearch(data)
+      window.location.href = res
+    },
     async getCustomerPermissions() {
       const { data: res } = await CustomerPermissions()
       this.customerArr = res
@@ -2481,6 +2554,7 @@
       this.form.sourceorder = ''
       this.form.ordertype = ''
       this.form.createdate = ''
+      this.form.saleordercode = ''
       this.getMesOrderSearch()
     },
     // 鏂板鎸夐挳
@@ -2588,6 +2662,9 @@
       this.dialogForm.customercode = row.customercode
       this.dialogForm.colour = row.colour
 
+      this.dialogForm.weight = row.weight
+      this.dialogForm.totalnumber = row.totalnumber
+
       const data = {
         sourceid: this.dialogForm.sourceorderid,
         sourcewo: this.dialogForm.sourceorder,
@@ -2689,7 +2766,9 @@
 
         injectnumber: '',
         customercode: '',
-        colour: ''
+        colour: '',
+        weight: '',
+        totalnumber: ''
       }
       this.stepSelectedValue = []
       this.stepTableData = []
@@ -2743,6 +2822,9 @@
             customercode: this.dialogForm.customercode,
             customername: this.customerArr.find(i => i.code === this.dialogForm.customercode).name,
             colour: this.dialogForm.colour,
+
+            weight: this.dialogForm.weight,
+            totalnumber: this.dialogForm.totalnumber,
 
             data_sources: this.dialogForm.data_sources, // 鏁版嵁鏉ユ簮
             isstep: workListSub.length > 0 ? 'Y' : 'N', //
@@ -2836,6 +2918,8 @@
           this.formApprove.injectnumber = row.injectnumber || '/'
           this.formApprove.customername = row.customername || '/'
           this.formApprove.colour = row.colour || '/'
+          this.formApprove.weight = row.weight || '/'
+          this.formApprove.totalnumber = row.totalnumber || '/'
 
           this.$nextTick(() => {
             res3.forEach(i => {

--
Gitblit v1.9.3