From f791db88d83a7ed851b9412d9797ed16b345fe79 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期四, 07 七月 2022 18:39:18 +0800
Subject: [PATCH] 1.项目页面修改2.生产管理工单页面开发

---
 src/views/scgl/gd.vue |  547 +++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 413 insertions(+), 134 deletions(-)

diff --git a/src/views/scgl/gd.vue b/src/views/scgl/gd.vue
index 65b42ea..9ee6dc7 100644
--- a/src/views/scgl/gd.vue
+++ b/src/views/scgl/gd.vue
@@ -46,31 +46,45 @@
             <el-form-item label="浜у搧瑙勬牸" style=" display: flex;">
               <el-input v-model="form.partspec" style="width: 200px" placeholder="璇疯緭鍏�" />
             </el-form-item>
-            <el-form-item label="浜や粯鏃堕棿" style=" display: flex;">
-              <el-date-picker
-                v-model="form.paydate"
-                type="date"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                style="width: 200px"
-                placeholder="閫夋嫨鏃ユ湡"
-              />
-            </el-form-item>
             <el-form-item label="鍒涘缓浜哄憳" style=" display: flex;">
               <el-input v-model="form.creatuser" style="width: 200px" placeholder="璇疯緭鍏�" />
             </el-form-item>
             <el-form-item label="鍒涘缓鏃堕棿" style=" display: flex;">
+              <!--              <el-date-picker-->
+              <!--                v-model="form.createdate"-->
+              <!--                type="date"-->
+              <!--                value-format="yyyy-MM-dd HH:mm:ss"-->
+              <!--                style="width: 200px"-->
+              <!--                placeholder="閫夋嫨鏃ユ湡"-->
+              <!--              />-->
               <el-date-picker
                 v-model="form.createdate"
-                type="date"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                style="width: 200px"
-                placeholder="閫夋嫨鏃ユ湡"
+                type="daterange"
+                range-separator="~"
+                start-placeholder="寮�濮嬫棩鏈�"
+                end-placeholder="缁撴潫鏃ユ湡"
+                size="mini"
               />
             </el-form-item>
           </div>
-          <div style="display: flex;align-items: start;margin-top: 5px;z-index: 2">
-            <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
-            <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
+          <div style="min-height: 100px">
+            <div style="display: flex;align-items: start;justify-content:end;margin-top: 5px;z-index: 2">
+              <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
+              <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
+            </div>
+            <!--            <div v-if="!isFullscreen" style="display: flex;align-items: start; margin-top: 15px;z-index: 2">-->
+            <!--              <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>-->
+            <!--              <el-button type="primary" icon="el-icon-connection" @click="send('send')">娲惧彂</el-button>-->
+            <!--              <el-button type="primary" icon="el-icon-switch-button">璁㈠崟鍏抽棴</el-button>-->
+            <!--            </div>-->
+            <!--            <div v-if="isFullscreen" style="display: flex;flex-direction: column;align-items: end">-->
+            <!--              <div style="display: flex;margin: 10px 0">-->
+            <!--                <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>-->
+            <!--                <el-button type="primary" icon="el-icon-connection" @click="send('send')">娲惧彂</el-button>-->
+            <!--              </div>-->
+            <!--              <el-button type="primary" icon="el-icon-switch-button">璁㈠崟鍏抽棴</el-button>-->
+            <!--            </div>-->
+
           </div>
         </el-form>
       </div>
@@ -78,11 +92,7 @@
       <div style="margin-left: 10px;display: flex">
         <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>
         <el-button type="primary" icon="el-icon-connection" @click="send('send')">娲惧彂</el-button>
-        <el-button
-          type="primary"
-          icon="el-icon-switch-button"
-        >璁㈠崟鍏抽棴
-        </el-button>
+        <el-button type="primary" icon="el-icon-switch-button" @click="orderClose">宸ュ崟鍏抽棴</el-button>
       </div>
       <el-divider />
       <div class="elTableDiv">
@@ -103,6 +113,7 @@
           <!--          />-->
           <el-table-column
             width="50"
+            fixed
           >
             <template slot-scope="{row}">
               <el-radio
@@ -126,17 +137,18 @@
           >
             <template slot-scope="{row}">
               <div v-if="row.status==='NEW'">鏂板伐鍗�</div>
-              <div v-if="row.status==='CREATING'">鎵ц涓�</div>
-              <div v-if="row.status==='CREATED'">宸插叧闂�</div>
-              <!--              <div v-if="row.status==='ALLOC'">宸叉淳鍙�</div>-->
-              <!--              <div v-if="row.status==='START'">寮�宸�</div>-->
-              <!--              <div v-if="row.status==='CLOSED'">瀹屽伐</div>-->
+              <!--              <div v-if="row.status==='CREATING'">鎵ц涓�</div>-->
+              <!--              <div v-if="row.status==='CREATED'">宸插叧闂�</div>-->
+              <div v-if="row.status==='ALLO'">宸叉淳鍙�</div>
+              <div v-if="row.status==='START'">寮�宸�</div>
+              <div v-if="row.status==='CLOSED'">瀹屽伐</div>
             </template>
           </el-table-column>
           <el-table-column
             prop="wo_code"
             label="宸ュ崟缂栧彿"
             sortable="custom"
+
             width="160"
           />
           <el-table-column
@@ -192,15 +204,21 @@
             label="宸ュ崟绛夌骇"
             sortable="custom"
             width="120"
-          />
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.piroque==='1'">鐗圭骇</div>
+              <div v-if="row.piroque==='2'">绱ф��</div>
+              <div v-if="row.piroque==='3'">姝e父</div>
+            </template>
+          </el-table-column>
           <el-table-column
-            prop="createuser"
+            prop="lm_user"
             label="鍒涘缓浜哄憳"
             sortable="custom"
             width="120"
           />
           <el-table-column
-            prop="createdate"
+            prop="lm_date"
             label="鍒涘缓鏃堕棿"
             width="160"
             sortable="custom"
@@ -213,7 +231,7 @@
             <template slot-scope="{row}">
               <div class="operationClass">
                 <el-button type="text" @click="check(row)">宸ュ簭浠诲姟</el-button>
-                <el-button v-if="row.status==='NEW'" type="text" @click="del(row)">鍒犻櫎</el-button>
+                <el-button type="text" @click="del(row)">鍒犻櫎</el-button>
               </div>
             </template>
           </el-table-column>
@@ -231,24 +249,30 @@
         @pagination="getMesOrderSearch"
       />
     </div>
-
+    <!--鏂板娲惧彂瀵硅瘽妗�-->
     <el-dialog
       :title="operation==='add'?'鏂板':'娲惧彂'"
       :visible.sync="dialogVisible"
-      width="60%"
+      width="840px"
       top="15vh"
       :close-on-click-modal="false"
       @closed="handleClose"
       @close="handleClose"
     >
-      <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
+      <el-form
+        ref="dialogForm"
+        inline
+        :rules="dialogFormRules"
+        :model="dialogForm"
+        label-width="110px"
+      >
         <el-form-item
           label="璁㈠崟鐘舵��"
           prop="mesorderstus"
         >
           <el-select
             v-model="dialogForm.mesorderstus"
-            :disabled="operation!=='add'"
+            disabled
             :popper-append-to-body="false"
             style="width: 200px"
             placeholder="璇烽�夋嫨"
@@ -261,35 +285,9 @@
             />
           </el-select>
         </el-form-item>
-        <el-form-item
-          v-if="operation==='add'"
-          label="浜у搧淇℃伅"
-          prop="partcode"
-        >
-          <el-select
-            v-model="dialogForm.partcode"
-            :disabled="operation!=='add'"
-            :popper-append-to-body="false"
-            style="width: 200px"
-            placeholder="璇烽�夋嫨"
-            @change="partcodeChange"
-          >
-            <el-option
-              v-for="item in partArr"
-              :key="item.partcode"
-              :label="item.partname"
-              :value="item.partcode"
-            />
-          </el-select>
-        </el-form-item>
+
         <el-form-item label="宸ュ崟缂栧彿" prop="mesordercode">
           <el-input v-model="dialogForm.mesordercode" :disabled="operation!=='add'" style="width: 200px" />
-        </el-form-item>
-        <el-form-item v-if="operation!=='add'" label="浜у搧缂栫爜" prop="partcode">
-          <el-input v-model="dialogForm.partcode" :disabled="operation!=='add'" style="width: 200px" />
-        </el-form-item>
-        <el-form-item v-if="operation!=='add'" label="浜у搧鍚嶇О" prop="partname">
-          <el-input v-model="dialogForm.partname" :disabled="operation!=='add'" style="width: 200px" />
         </el-form-item>
         <el-form-item label="宸ュ崟鏁伴噺" prop="mesqty">
           <el-input
@@ -299,54 +297,93 @@
             style="width: 200px"
           />
         </el-form-item>
-        <el-form-item v-if="operation!=='add'" label="浜у搧瑙勬牸" prop="partspec">
-          <el-input v-model="dialogForm.partspec" :disabled="operation!=='add'" style="width: 200px" />
-        </el-form-item>
-        <el-form-item label="鐢熶骇杞﹂棿" prop="wkshopcode">
+        <el-form-item
+          v-if="operation==='add'"
+          label="浜у搧鍚嶇О"
+          prop="partcode"
+        >
           <el-select
-            v-model="dialogForm.wkshopcode"
+            v-model="dialogForm.partcode"
+            :disabled="operation!=='add'"
             :popper-append-to-body="false"
             style="width: 200px"
             placeholder="璇烽�夋嫨"
+            @change="partcodeChangeDialog"
           >
             <el-option
-              v-for="item in wkshopArr"
-              :key="item.code"
-              :label="item.name"
-              :value="item.code"
+              v-for="item in partArr"
+              :key="item.partcode"
+              :label="item.partname"
+              :value="item.partcode"
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="宸ヨ壓璺嚎" prop="routecode">
-          <el-select
-            v-model="dialogForm.routecode"
-            :disabled="dialogForm.partcode===''"
-            :popper-append-to-body="false"
-            style="width: 200px"
-            placeholder="璇烽�夋嫨"
-          >
-            <el-option
-              v-for="item in routeArr"
-              :key="item.route_code"
-              :label="item.route_name"
-              :value="item.route_code"
-            />
-          </el-select>
+        <el-form-item v-if="operation!=='add'" label="浜у搧鍚嶇О" prop="partname">
+          <el-input v-model="dialogForm.partname" disabled style="width: 200px" />
         </el-form-item>
-        <el-form-item label="寮�濮嬫椂闂�" prop="planstartdate">
+        <el-form-item label="浜у搧缂栫爜" prop="partcode">
+          <el-input v-model="dialogForm.partcode" disabled style="width: 200px" />
+        </el-form-item>
+        <el-form-item label="浜у搧瑙勬牸" prop="partspec">
+          <el-input v-model="dialogForm.partspec" disabled style="width: 200px" />
+        </el-form-item>
+        <div style="display: flex">
+          <el-form-item label="鐢熶骇杞﹂棿" prop="wkshopcode">
+            <el-select
+              v-model="dialogForm.wkshopcode"
+              :popper-append-to-body="false"
+              style="width: 200px"
+              placeholder="璇烽�夋嫨"
+            >
+              <el-option
+                v-for="item in wkshopArr"
+                :key="item.code"
+                :label="item.name"
+                :value="item.code"
+              />
+            </el-select>
+          </el-form-item>
+          <div style="display: flex;flex-wrap: nowrap">
+            <el-form-item label="宸ヨ壓璺嚎" prop="routecode">
+              <el-select
+                v-model="dialogForm.routecode"
+                :disabled="dialogForm.partcode===''"
+                :popper-append-to-body="false"
+                style="width: 160px"
+                placeholder="璇烽�夋嫨"
+              >
+                <el-option
+                  v-for="item in routeArr"
+                  :key="item.route_code"
+                  :label="item.route_name"
+                  :value="item.route_code"
+                />
+              </el-select>
+            </el-form-item>
+            <el-button
+              type="primary"
+              style="padding: 0 10px;margin-left: -8px;margin-top: 5px"
+              class="el-icon-search"
+              @click="searchClick"
+            />
+            <!--            :disabled="dialogForm.routecode===''"-->
+
+          </div>
+        </div>
+        <el-form-item label="璁″垝寮�濮嬫椂闂�" prop="planstartdate">
           <el-date-picker
             v-model="dialogForm.planstartdate"
             type="date"
-            value-format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd"
             style="width: 200px"
             placeholder="閫夋嫨鏃ユ湡"
           />
         </el-form-item>
-        <el-form-item label="缁撴潫鏃堕棿" prop="planenddate">
+        <el-form-item label="璁″垝瀹屾垚鏃堕棿" prop="planenddate">
           <el-date-picker
             v-model="dialogForm.planenddate"
             type="date"
-            value-format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd"
             style="width: 200px"
             placeholder="閫夋嫨鏃ユ湡"
           />
@@ -367,6 +404,54 @@
           </el-select>
         </el-form-item>
       </el-form>
+
+      <!--        宸ヨ壓璺嚎鏀惧ぇ闀滃璇濇-->
+      <el-dialog
+        title="宸ュ簭"
+        :visible.sync="dialogVisibleSearch"
+        width="540px"
+        top="25vh"
+        class="dialogVisibleSearch"
+        append-to-body
+      >
+        <el-table
+          :data="searchTableData"
+          border
+          stripe
+          height="300"
+          style="width: 100%;"
+          highlight-current-row
+          :header-cell-style="this.$headerCellStyle"
+          :cell-style="this.$cellStyle"
+        >
+          <el-table-column
+            prop="seq"
+            label="搴忓彿"
+            width="50"
+          />
+          <el-table-column
+            prop="stepcode"
+            label="宸ュ簭缂栫爜"
+          />
+          <el-table-column
+            prop="stepname"
+            label="宸ュ簭鍚嶇О"
+          />
+          <el-table-column
+            prop="flwtype"
+            label="宸ュ簭绫诲瀷"
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.flwtype==='W'">澶栧崗</div>
+              <div v-if="row.flwtype==='Z'">鑷埗</div>
+            </template>
+          </el-table-column>
+          <el-table-column
+            prop="descr"
+            label="宸ュ簭鎻忚堪"
+          />
+        </el-table>
+      </el-dialog>
       <span slot="footer" class="dialog-footer">
         <div class="footerButton">
           <el-button @click="dialogVisibleCancel">鍙� 娑�</el-button>
@@ -374,14 +459,94 @@
         </div>
       </span>
     </el-dialog>
+
+    <!--    宸ュ簭浠诲姟瀵硅瘽妗�-->
+    <el-dialog
+      title="宸ュ簭浠诲姟"
+      :visible.sync="dialogVisibleTask"
+      width="840px"
+      top="15vh"
+      class="dialogVisibleSearch"
+      :close-on-click-modal="false"
+    >
+      <el-table
+        :data="taskTableData"
+        border
+        stripe
+        height="300"
+        style="width: 100%;"
+        highlight-current-row
+        :header-cell-style="this.$headerCellStyle"
+        :cell-style="this.$cellStyle"
+      >
+        <el-table-column
+          prop="seq"
+          width="50"
+          label="搴忓彿"
+        />
+        <el-table-column
+          prop="wo_code"
+          label="宸ュ崟缂栧彿"
+        />
+        <el-table-column
+          prop="stepcode"
+          label="宸ュ簭缂栫爜"
+        />
+        <el-table-column
+          prop="stepname"
+          label="宸ュ簭鍚嶇О"
+        />
+        <!--        <el-table-column-->
+        <!--          prop="flwtype"-->
+        <!--          label="宸ュ簭绫诲瀷"-->
+        <!--        >-->
+        <!--          <template slot-scope="{row}">-->
+        <!--            <div v-if="row.flwtype==='W'">澶栧崗</div>-->
+        <!--            <div v-if="row.flwtype==='Z'">鑷埗</div>-->
+        <!--          </template>-->
+        <!--        </el-table-column>-->
+        <!--        <el-table-column-->
+        <!--          prop="descr"-->
+        <!--          label="宸ュ簭鎻忚堪"-->
+        <!--        />-->
+        <el-table-column
+          prop="plan_qty"
+          label="浠诲姟鏁伴噺"
+        />
+        <el-table-column
+          prop="good_qty"
+          label="鍚堟牸鏁伴噺"
+        />
+        <el-table-column
+          prop="ng_qty"
+          label="涓嶈壇鏁伴噺"
+        />
+      </el-table>
+
+      <span slot="footer" class="dialog-footer">
+        <div class="footerButton">
+          <el-button @click="dialogVisibleBack">杩� 鍥�</el-button>
+          <!--          <el-button type="primary" @click="dialogVisibleConfirm">纭� 瀹�</el-button>-->
+        </div>
+      </span>
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
 import Pagination from '@/components/Pagination'
-import { DeleteMesOrder, MesOrderSearch } from '@/api/scgl'
+import {
+  AddUpdateMesOrder,
+  ClosedErpOrder,
+  ClosedMesOrder,
+  DeleteMesOrder,
+  MesOrderSearch, SearchWorkStep,
+  SelectRouteStep
+} from '@/api/scgl'
 import { WorkShopSelect } from '@/api/sbgl'
 import { PartSelect, PartSelectRpute } from '@/api/zzmx'
+import { handleDatetime } from '@/utils/global'
 
 const SER_HZ = /^[\u4e00-\u9fa5]+$/
 export default {
@@ -402,6 +567,7 @@
       }
     }
     return {
+      isFullscreen: false,
       mainHeight: 0,
       tableHeight: 0,
       form: {
@@ -412,18 +578,18 @@
         partspec: '', // 浜у搧瑙勬牸
         creatuser: '', // 鍒涘缓浜哄憳
         createdate: '', // 鍒涘缓鏃堕棿
-        prop: 'partcode', // 鎺掑簭瀛楁
+        prop: 'lm_date', // 鎺掑簭瀛楁
         order: 'desc', // 鎺掑簭瀛楁
         page: 1, // 绗嚑椤�
         rows: 20 // 姣忛〉澶氬皯鏉�
       },
       erporderstusArr: [
         { code: 'NEW', name: '鏂板伐鍗�' },
-        { code: 'CREATING', name: '鎵ц涓�' },
-        { code: 'CREATED', name: '宸插叧闂�' }
-        // { code: 'ALLOC', name: '宸叉淳鍙�' },
-        // { code: 'START', name: '寮�宸�' },
-        // { code: 'CLOSED', name: '瀹屽伐' }
+        // { code: 'CREATING', name: '鎵ц涓�' },
+        // { code: 'CREATED', name: '宸插叧闂�' }
+        { code: 'ALLO', name: '宸叉淳鍙�' },
+        { code: 'START', name: '寮�宸�' },
+        { code: 'CLOSED', name: '瀹屽伐' }
       ],
       total: 10,
       radioSelected: '',
@@ -435,7 +601,7 @@
         wkshopname: '', // 鐢熶骇杞﹂棿鍚嶇О
         routename: '', // 宸ヨ壓璺嚎鍚嶇О
 
-        mesorderstus: '', // 宸ュ崟鐘舵�佺爜
+        mesorderstus: 'NEW', // 宸ュ崟鐘舵�佺爜
         mesordercode: '', // 宸ュ崟缂栧彿
         partcode: '', // 浜у搧缂栫爜
         mesqty: '', // 宸ュ崟鏁伴噺
@@ -452,9 +618,9 @@
       wkshopArr: [], // 鐢熶骇杞﹂棿鏁扮粍
       routeArr: [], // 宸ヨ壓璺嚎鏁扮粍
       orderlevArr: [
-        { code: '101', name: '涓�鑸�' },
-        { code: '102', name: '閲嶈' },
-        { code: '103', name: '鐗圭骇' }
+        { code: 1, name: '鐗圭骇' },
+        { code: 2, name: '绱ф��' },
+        { code: 3, name: '姝e父' }
       ], // 宸ュ崟绛夌骇鏁扮粍
       operation: '',
       dialogFormRules: {
@@ -486,8 +652,29 @@
           { required: true, message: '璇烽�夋嫨宸ュ崟绛夌骇', trigger: ['blur', 'change'] }
         ]
 
-      }
-
+      },
+      dialogVisibleTask: false,
+      taskTableData: [],
+      // dialogFormTask: {
+      //   partname: '', // 浜у搧鍚嶇О
+      //   partspec: '', // 浜у搧瑙勬牸
+      //   wkshopname: '', // 鐢熶骇杞﹂棿鍚嶇О
+      //   routename: '', // 宸ヨ壓璺嚎鍚嶇О
+      //
+      //   mesorderstusName: '', // 宸ュ崟鐘舵�佸悕绉�
+      //   mesorderstus: '', // 宸ュ崟鐘舵�佺爜
+      //   mesordercode: '', // 宸ュ崟缂栧彿
+      //   partcode: '', // 浜у搧缂栫爜
+      //   mesqty: '', // 宸ュ崟鏁伴噺
+      //
+      //   routecode: '', // 宸ヨ壓璺嚎缂栫爜
+      //   wkshopcode: '', // 鐢熶骇杞﹂棿缂栫爜
+      //   planstartdate: '', // 璁″垝寮�濮嬫椂闂�
+      //   planenddate: '', // 璁″垝瀹屾垚鏃堕棿
+      //   orderlev: '' // 宸ュ崟绛夌骇
+      // },
+      dialogVisibleSearch: false,
+      searchTableData: []
     }
   },
   created() {
@@ -500,11 +687,31 @@
   },
   methods: {
     async getMesOrderSearch() {
-      const res = await MesOrderSearch(this.form)
+      let tempDate = this.form.createdate
+      if (tempDate.length > 0) {
+        tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1])
+      }
+
+      const data = {
+        mesorderstus: this.form.mesorderstus, // 宸ュ崟鐘舵�佺爜
+        mesordercode: this.form.mesordercode, // 宸ュ崟缂栧彿
+        partcode: this.form.partcode, // 浜у搧缂栫爜
+        partname: this.form.partname, // 浜у搧鍚嶇О
+        partspec: this.form.partspec, // 浜у搧瑙勬牸
+        creatuser: this.form.creatuser, // 鍒涘缓浜哄憳
+        createdate: tempDate, // 鍒涘缓鏃堕棿
+        prop: this.form.prop, // 鎺掑簭瀛楁
+        order: this.form.order, // 鎺掑簭瀛楁
+        page: this.form.page, // 绗嚑椤�
+        rows: this.form.rows // 姣忛〉澶氬皯鏉�
+      }
+      const res = await MesOrderSearch(data)
       this.tableData = res.data
       this.total = res.count
+
+      // this.form.createdate = tempDate
     },
-    async  getSelect() {
+    async getSelect() {
       // 鑾峰彇浜у搧淇℃伅
       const { data: res1 } = await PartSelect()
       this.partArr = res1
@@ -560,8 +767,13 @@
       this.dialogForm.routecode = ''
     },
     // 宸ュ簭浠诲姟
-    check() {
-
+    async  check(row) {
+      this.dialogVisibleTask = true
+      const { data: res } = await SearchWorkStep({ wo_code: row.wo_code })
+      this.taskTableData = res
+    },
+    dialogVisibleBack() {
+      this.dialogVisibleTask = false
     },
     // 娲惧彂
     send(operation) {
@@ -572,7 +784,7 @@
       const row = this.tableData.find(item => item.wo_code === this.radioSelected)
 
       if (row.status !== 'NEW') {
-        return this.$message.info('姝ゅ伐鍗曚负闈炴湭寮�濮嬬姸鎬侊紝涓嶅彲娲惧彂锛�')
+        return this.$message.info('姝ゅ伐鍗曚负闈炴柊宸ュ崟鐘舵�侊紝涓嶅彲娲惧彂锛�')
       }
       this.operation = operation
       this.dialogVisible = true
@@ -586,17 +798,18 @@
         this.dialogForm.partspec = row.partspec
         this.dialogForm.routecode = row.route_code// 宸ヨ壓璺嚎浠g爜
         this.dialogForm.wkshopcode = row.wkshp_code// 鐢熶骇杞﹂棿浠g爜
-        // handleDatatime(row.plan_startdate.toString().length > 0)
-        this.dialogForm.planstartdate = row.plan_startdate
-        this.dialogForm.planenddate = row.plan_enddate
-        this.dialogForm.orderlev = row.piroque // 绛夌骇
+
+        this.dialogForm.planstartdate = row.plan_startdate !== null ? row.plan_startdate : handleDatetime(new Date())
+        this.dialogForm.planenddate = row.plan_enddate !== null ? row.plan_enddate : handleDatetime(new Date())
+        this.dialogForm.orderlev = row.piroque !== null ? row.piroque : 3 // 绛夌骇
       })
     },
     // 鍒犻櫎鎸夐挳
     async del(row) {
-      // if (row.status !== 'NEW') {
-      //   return this.$message.success('')
-      // }
+      console.log(row.status)
+      if (row.status === 'START' || row.status === 'CLOSED') {
+        return this.$message.info('姝ゅ伐鍗曚笉鍙垹闄わ紒')
+      }
       this.$confirm('鏄惁纭鍒犻櫎?', '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
@@ -609,15 +822,62 @@
           orderqty: row.plan_qty
         }
         console.log(data, 2)
-        // DeleteMesOrder(data).then(res => {
-        //   if (res.code === '200') {
-        //     this.$message.success('鍒犻櫎鎴愬姛!')
-        //     this.getMesOrderSearch()
-        //   }
-        // })
+        DeleteMesOrder(data).then(res => {
+          if (res.code === '200') {
+            this.$message.success('鍒犻櫎鎴愬姛!')
+            this.getMesOrderSearch()
+          }
+        })
       }).catch(() => {
         this.$message.info('宸插彇娑堝垹闄�')
       })
+    },
+    // 宸ュ崟鍏抽棴浜嬩欢
+    orderClose() {
+      if (this.radioSelected.length < 1) {
+        return this.$message.info('璇峰厛閫夋嫨宸ュ崟锛�')
+      }
+      console.log('宸ュ崟鍏抽棴浜嬩欢')
+      this.tableData.forEach(item => {
+        if (item.wo_code === this.radioSelected) {
+          if (item.status === 'START') {
+            return this.$message.info('褰撳墠宸ュ崟鏈畬宸ワ紝鏃犳硶鍏抽棴锛�')
+          } else if (item.status === 'CLOSED') {
+            return this.$message.info('宸ュ崟宸插叧闂紝鏃犻渶鍐嶅叧闂紒')
+          } else {
+            this.$confirm('鏄惁纭鍏抽棴宸ュ崟?', '鎻愮ず', {
+              confirmButtonText: '纭畾',
+              cancelButtonText: '鍙栨秷',
+              type: 'warning'
+            }).then(() => {
+              const data = {
+                wocode: item.wo_code,
+                m_po: item.m_po
+              }
+              ClosedMesOrder(data).then(res => {
+                if (res.code === '200') {
+                  this.$message.success('宸ュ崟鍏抽棴鎴愬姛!')
+                  this.getMesOrderSearch()
+                  // this.radioSelected = ''
+                }
+              })
+            }).catch(() => {
+              this.$message.info('宸插彇娑堝叧闂紒')
+            })
+          }
+        }
+      })
+    },
+    // 瀵硅瘽妗嗕骇鍝佷俊鎭�兼敼鍙�
+    partcodeChangeDialog(val) {
+      console.log(val)
+      this.dialogForm.partname = this.partArr.find(item => item.partcode === val).partname
+      this.dialogForm.partcode = this.partArr.find(item => item.partcode === val).partcode
+      this.dialogForm.partspec = this.partArr.find(item => item.partcode === val).partspec
+      // const { data: res } = await PartSelectRpute({ partcode: val })
+      // this.routeArr = res
+      // this.dialogForm.routecode = ''
+      this.partcodeChange(val)
     },
     // 瀵硅瘽妗嗗叧闂簨浠�
     handleClose() {
@@ -626,7 +886,7 @@
       this.dialogForm.wkshopname = '' // 鐢熶骇杞﹂棿鍚嶇О
       this.dialogForm.routename = '' // 宸ヨ壓璺嚎鍚嶇О
 
-      this.dialogForm.mesorderstus = '' // 宸ュ崟鐘舵�佺爜
+      this.dialogForm.mesorderstus = 'NEW' // 宸ュ崟鐘舵�佺爜
       this.dialogForm.mesordercode = '' // 宸ュ崟缂栧彿
       this.dialogForm.partcode = '' // 浜у搧缂栫爜
       this.dialogForm.mesqty = '' // 宸ュ崟鏁伴噺
@@ -648,10 +908,10 @@
       this.$refs.dialogForm.validate(valid => {
         if (valid) {
           const data = {
-            partname: this.dialogForm.partname, // 浜у搧鍚嶇О
-            partspec: this.dialogForm.partspec, // 浜у搧瑙勬牸
-            wkshopname: this.dialogForm.wkshopname, // 鐢熶骇杞﹂棿鍚嶇О
-            routename: this.dialogForm.routename, // 宸ヨ壓璺嚎鍚嶇О
+            // partname: this.dialogForm.partname, // 浜у搧鍚嶇О
+            // partspec: this.dialogForm.partspec, // 浜у搧瑙勬牸
+            // wkshopname: this.dialogForm.wkshopname, // 鐢熶骇杞﹂棿鍚嶇О
+            // routename: this.dialogForm.routename, // 宸ヨ壓璺嚎鍚嶇О
 
             mesorderstus: this.dialogForm.mesorderstus, // 宸ュ崟鐘舵�佺爜
             mesordercode: this.dialogForm.mesordercode, // 宸ュ崟缂栧彿
@@ -666,15 +926,15 @@
             OperType: this.operation === 'add' ? 'Add' : 'Update'
           }
           console.log(data, 1)
-          // AddUpdateMesOrder(data).then(res => {
-          //   if (res.code === '200') {
-          //     this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '淇敼鎴愬姛锛�')
-          //     this.dialogVisible = false
-          //     this.getMesOrderSearch()
-          //   } else {
-          //     this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '淇敼澶辫触锛�')
-          //   }
-          // })
+          AddUpdateMesOrder(data).then(res => {
+            if (res.code === '200') {
+              this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '娲惧彂鎴愬姛锛�')
+              this.dialogVisible = false
+              this.getMesOrderSearch()
+            } else {
+              this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '娲惧彂澶辫触锛�')
+            }
+          })
         }
       })
     },
@@ -683,7 +943,23 @@
       this.$nextTick(() => {
         this.mainHeight = window.innerHeight - 250
         this.tableHeight = this.mainHeight - 100
+        this.isFullscreen = window.innerHeight < 800
+        if (this.isFullscreen) {
+          this.tableHeight = this.tableHeight - 50
+        }
       })
+    },
+    // 宸ヨ壓璺嚎鏀惧ぇ闀滅偣鍑�
+    async searchClick() {
+      if (this.dialogForm.routecode === '') {
+        return this.$message.info('璇峰厛閫夋嫨宸ヨ壓璺嚎锛�')
+      }
+      this.dialogVisibleSearch = true
+      const { data: res } = await SelectRouteStep({ routecode: this.dialogForm.routecode })
+      this.searchTableData = res
+    },
+    dialogVisibleSearchBack() {
+      this.dialogVisibleSearch = false
     }
   }
 }
@@ -741,6 +1017,9 @@
 ::v-deep .el-dialog__body {
   padding: 20px 100px !important;
 }
+.dialogVisibleSearch ::v-deep .el-dialog__body {
+  padding: 20px 20px !important;
+}
 
 ::v-deep .el-radio__input.is-checked .el-radio__inner {
   background-color: $main_color;

--
Gitblit v1.9.3