From ff76b3ed3494474e9301c49cf635f1553d49ecc5 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期六, 17 六月 2023 14:58:03 +0800
Subject: [PATCH] 1.生产管理、报表管理引入分车间概念

---
 src/views/produceManager/produceStartOrder.vue |  105 +++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 83 insertions(+), 22 deletions(-)

diff --git a/src/views/produceManager/produceStartOrder.vue b/src/views/produceManager/produceStartOrder.vue
index b552629..01ff435 100644
--- a/src/views/produceManager/produceStartOrder.vue
+++ b/src/views/produceManager/produceStartOrder.vue
@@ -542,7 +542,7 @@
           <div style="width: 200px">{{ dialogForm.partname }}</div>
         </el-form-item>
         <el-form-item label="浜у搧瑙勬牸锛�" style="margin: 0 10px 0 0">
-          <div style="width: 200px">{{ dialogForm.partspec }}</div>
+          <div style="width: 200px">{{ dialogForm.partspec?dialogForm.partspec:'/' }}</div>
         </el-form-item>
         <el-form-item label="褰撳墠宸ュ簭锛�" style="margin: 0 10px 0 0">
           <div style="width: 200px">{{ dialogForm.stepname }}</div>
@@ -594,6 +594,14 @@
           <div style="width: 200px">{{ dialogForm.nextstepname }}</div>
         </el-form-item>
 
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="杞﹂棿鍚嶇О锛�">
+          <div style="width: 200px">{{ dialogForm.wkshopname }}</div>
+        </el-form-item>
+
+        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="璁惧鍚嶇О锛�" style="margin: 0 10px 0 0">
+          <div style="width: 200px">{{ dialogForm.eqpname }}</div>
+        </el-form-item>
+
         <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" prop="reckway" label="璁′欢鏂瑰紡锛�">
 
           <el-radio-group v-model="dialogForm.reckway" style="width: 200px;" @change="reckwayChange">
@@ -634,20 +642,20 @@
           </el-select>
         </el-form-item>
 
-        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="璁惧鍚嶇О锛�" prop="eqpcode">
-          <el-select
-            v-model="dialogForm.eqpcode"
-            style="width: 200px;"
-            placeholder="璇烽�夋嫨"
-          >
-            <el-option
-              v-for="item in ZZeqpArr"
-              :key="item.code"
-              :label="item.name"
-              :value="item.code"
-            />
-          </el-select>
-        </el-form-item>
+        <!--        <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="璁惧鍚嶇О锛�" prop="eqpcode">-->
+        <!--          <el-select-->
+        <!--            v-model="dialogForm.eqpcode"-->
+        <!--            style="width: 200px;"-->
+        <!--            placeholder="璇烽�夋嫨"-->
+        <!--          >-->
+        <!--            <el-option-->
+        <!--              v-for="item in ZZeqpArr"-->
+        <!--              :key="item.code"-->
+        <!--              :label="item.name"-->
+        <!--              :value="item.code"-->
+        <!--            />-->
+        <!--          </el-select>-->
+        <!--        </el-form-item>-->
         <el-form-item v-if="dialogTitle==='鑷埗鎶ュ伐'" label="鍚堟牸鏁伴噺锛�" prop="startqty">
           <el-input v-model="dialogForm.startqty" oninput="value=value.replace(/[^0-9.]/g,'')" style="width: 200px;" />
           <!--          <el-input v-model="dialogForm.noreportqty" oninput="value=value.replace(/[^0-9.]/g,'')" style="width: 200px;" />-->
@@ -784,7 +792,7 @@
             :page.sync="Userform.page"
             :limit.sync="Userform.rows"
             align="right"
-            layout="total,prev, pager, next,sizes,jumper"
+            layout="total,prev, pager, next,sizes"
             popper-class="select_bottom"
             @pagination="getMesOrderStepSearch"
           />
@@ -851,12 +859,13 @@
             v-model="dialogForm.wxcode"
             style="width: 200px;"
             placeholder="璇烽�夋嫨"
+            @change="wxCodeChange"
           >
             <el-option
-              v-for="item in WXouterprovide"
-              :key="item.code"
-              :label="item.name"
-              :value="item.code"
+              v-for="item in WXouterprovide2"
+              :key="item.Name"
+              :label="item.tp"
+              :value="item.Name"
             />
           </el-select>
         </el-form-item>
@@ -939,6 +948,32 @@
           <el-input v-model="dialogForm.remarks" type="textarea" style="width: 200px;" />
         </el-form-item>
       </el-form>
+      <div v-if="dialogTitle==='澶栧崗鏀舵枡'" style="display: flex;flex-direction: column">
+        <!--鏄庡ぉ鎺ョ潃鍐欏鍗忔敹鏂欙紝渚涘簲鍟嗗搴旂殑宸叉敹鏈敹璇︽儏-->
+        <div style="height: 30px;margin-left:30px;">
+          鍙敹鏂欎緵搴斿晢锛�
+        </div>
+
+        <div
+          v-for="(item,index) in dialogForm.list"
+          v-if="item.acceptQty>0"
+          :key="item.Name"
+          style="display: flex;line-height: 26px;height: 26px;margin-left:30px;align-items: center"
+        >
+          <div
+            style="color: #fff;width: 22px;height: 22px;display: flex;justify-content: center;align-items: center;border-radius: 50%"
+            :style="{backgroundColor:$store.state.settings.theme}"
+          >{{ index+1 }}</div>
+          <div style="margin-left:30px;width: 160px;" class="ellipsis">
+            {{ item.tp }}
+          </div>
+          <div style="margin-left:30px;">
+            鍙敹鏁伴噺锛歿{ item.acceptQty }}
+          </div>
+        </div>
+
+      </div>
+
       <span slot="footer" class="dialog-footer">
         <div class="footerButton">
           <el-button v-waves @click="dialogVisibleCancel">鍙� 娑�</el-button>
@@ -1098,7 +1133,7 @@
           <div style="width: 200px">{{ badDialogForm.partname }}</div>
         </el-form-item>
         <el-form-item label="浜у搧瑙勬牸锛�">
-          <div style="width: 200px">{{ badDialogForm.partspec }}</div>
+          <div style="width: 200px">{{ badDialogForm.partspec?badDialogForm.partspec:'/' }}</div>
         </el-form-item>
         <el-form-item label="褰撳墠宸ュ簭锛�">
           <div style="width: 200px">{{ badDialogForm.stepname }}</div>
@@ -1380,6 +1415,7 @@
       ZZeqpArr: [], // 鑷埗璁惧鍚嶇О
       badArr: [], // 涓嶈壇鍘熷洜鏁扮粍
       WXouterprovide: [], // 澶栧崗渚涙柟鏁扮粍
+      WXouterprovide2: [], // 澶栧崗渚涙柟鏀舵枡鏁扮粍
       WXoutuser: [], // 鍙戞枡浜哄憳鏁扮粍
       userTableData: [], // 浜哄憳鍒楄〃
       UserTotal: 0,
@@ -1821,6 +1857,12 @@
 
         this.dialogForm.startqtySum = obj.noreportqty
 
+        this.dialogForm.eqpname = obj.eqpname
+        this.dialogForm.eqpcode = obj.eqpcode
+
+        this.dialogForm.wkshopcode = obj.wkshopcode
+        this.dialogForm.wkshopname = obj.wkshopname
+
         this.$refs.userTableDataRef.doLayout()
       })
 
@@ -1859,11 +1901,24 @@
       await this.getMesOrderStepSelectWX()
       await this.getMesOrderSelectUser()
     },
+    wxCodeChange(val) {
+      this.dialogForm.sqty = this.WXouterprovide2.find(i => i.Name === val).acceptQty
+    },
     // 澶栧崗鏀舵枡
     async WXback(obj) {
       // if (this.WXform.orderstepqrcode === '') {
       //   return this.$message.info('璇峰厛杈撳叆宸ュ簭锛�')
       // }
+      this.WXouterprovide2 = []
+      obj.list.forEach(i => {
+        i.acceptQty = parseFloat(i.fqty) - parseFloat(i.sqty) - parseFloat(i.ng_qty) - parseFloat(i.bad_qty)
+        if (i.acceptQty > 0) {
+          this.WXouterprovide2.push(i)
+        }
+      })
+
+      console.log(this.WXouterprovide2, 2)
+
       this.dialogTitle = '澶栧崗鏀舵枡'
       this.dialogVisible = true
 
@@ -1887,6 +1942,8 @@
         this.dialogForm.sqty = obj.startqty
 
         this.dialogForm.startqtySum = obj.startqty
+
+        this.dialogForm.list = obj.list
       })
       await this.getMesOrderStepSelectWX()
       await this.getMesOrderSelectUser()
@@ -1899,7 +1956,7 @@
     },
     // 鑾峰彇鑷埗鎶ュ伐鐢熶骇鐝粍涓嬫媺鍒楄〃
     async getMesOrderStepReportSelectUserGroup() {
-      const { data: res } = await MesOrderStepReportSelectUserGroup()
+      const { data: res } = await MesOrderStepReportSelectUserGroup({ wkshopcode: this.dialogForm.wkshopcode })
       this.ZZtreams = res
     },
     // 鑾峰彇鑷埗鎶ュ伐琛ㄦ牸user鎵�鏈�
@@ -2160,6 +2217,10 @@
               return this.$message.info('鏀舵枡鏁伴噺鍔犱笉鑹暟閲忎笉鑳藉ぇ浜庝簡鏈敹鏁伴噺!')
             }
 
+            if (this.WXouterprovide2.find(i => i.Name === this.dialogForm.wxcode).acceptQty < parseFloat(this.dialogForm.sqty) + parseFloat(this.dialogForm.noputqty)) {
+              return this.$message.info('鏀舵枡鏁伴噺鍔犱笉鑹暟閲忎笉鑳藉ぇ浜庤渚涘簲鍟嗗彲鏀舵暟閲�!')
+            }
+
             if (parseFloat(this.dialogForm.noputqty) > 0) {
               if (this.dialogForm.badcode.length < 1) {
                 return this.$message.info('璇烽�夋嫨涓嶈壇鍘熷洜锛�')

--
Gitblit v1.9.3