From 7d0a954d23d21c0cdaff6ed20ad7291b3dbf889a Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期四, 30 六月 2022 17:45:39 +0800
Subject: [PATCH] 1.完成制造模型(工序定义)页面开发

---
 src/views/sbgl/sbqd.vue |   74 ++++++++++++++++++++++++++-----------
 1 files changed, 52 insertions(+), 22 deletions(-)

diff --git a/src/views/sbgl/sbqd.vue b/src/views/sbgl/sbqd.vue
index 346addf..5532429 100644
--- a/src/views/sbgl/sbqd.vue
+++ b/src/views/sbgl/sbqd.vue
@@ -17,7 +17,7 @@
               <el-input v-model="form.DeviceName" placeholder="璇疯緭鍏�" style="width: 200px" />
             </el-form-item>
             <el-form-item label="浣跨敤鐘舵��" style=" display: flex;">
-              <el-select v-model="form.Status" filterable style="width: 200px" placeholder="璇烽�夋嫨">
+              <el-select v-model="form.Status" :popper-append-to-body="false" filterable style="width: 200px" placeholder="璇烽�夋嫨">
                 <el-option
                   v-for="item in StatusArr"
                   :key="item.value"
@@ -27,7 +27,7 @@
               </el-select>
             </el-form-item>
             <el-form-item label="鎵�灞炶溅闂�" style=" display: flex;">
-              <el-select v-model="form.WorkShop" filterable style="width: 200px" placeholder="璇烽�夋嫨">
+              <el-select v-model="form.WorkShop" :popper-append-to-body="false" filterable style="width: 200px" placeholder="璇烽�夋嫨">
                 <el-option
                   v-for="item in WorkShopArr"
                   :key="item.code"
@@ -37,7 +37,7 @@
               </el-select>
             </el-form-item>
             <el-form-item filterable label="璁惧绫诲瀷" style="display: flex;">
-              <el-select v-model="form.DeviceType" style="width: 200px" placeholder="璇烽�夋嫨" @change="deviceTypeChange">
+              <el-select v-model="form.DeviceType" :popper-append-to-body="false" style="width: 200px" placeholder="璇烽�夋嫨" @change="deviceTypeChange">
                 <el-option
                   v-for="item in DeviceTypeArr"
                   :key="item.code"
@@ -49,6 +49,7 @@
             <el-form-item label="璁惧缁�" style=" display: flex;">
               <el-select
                 v-model="form.DeviceGroup"
+                :popper-append-to-body="false"
                 :disabled="form.DeviceType===''"
                 style="width: 200px"
                 placeholder="璇烽�夋嫨"
@@ -196,6 +197,7 @@
     </div>
     <!--璁惧娓呭崟鏂板缂栬緫-->
     <el-dialog
+      :close-on-click-modal="false"
       :title="operation==='add'?'鏂板':'淇敼'"
       :visible.sync="dialogVisible"
       width="50%"
@@ -211,7 +213,7 @@
           <el-input v-model="dialogForm.devicename" style="width: 220px" />
         </el-form-item>
         <el-form-item label="璁惧绫诲瀷" prop="devicetypecode">
-          <el-select v-model="dialogForm.devicetypecode" style="width: 220px" placeholder="璇烽�夋嫨" @change="devicetypecodeChange">
+          <el-select v-model="dialogForm.devicetypecode" :popper-append-to-body="false" style="width: 220px" placeholder="璇烽�夋嫨" @change="devicetypecodeChange">
             <el-option
               v-for="item in DeviceTypeArr"
               :key="item.code"
@@ -221,9 +223,9 @@
           </el-select>
         </el-form-item>
         <el-form-item label="璁惧缁�" prop="devicegroupcode">
-          <el-select v-model="dialogForm.devicegroupcode" :disabled="dialogForm.devicetypecode===''" style="width: 220px" placeholder="璇烽�夋嫨">
+          <el-select v-model="dialogForm.devicegroupcode" :popper-append-to-body="false" :disabled="dialogForm.devicetypecode===''" style="width: 220px" placeholder="璇烽�夋嫨">
             <el-option
-              v-for="item in DeviceGroupArr"
+              v-for="item in DeviceGroupDialogArr"
               :key="item.code"
               :label="item.name"
               :value="item.code"
@@ -236,10 +238,11 @@
             style="width: 220px"
             type="date"
             placeholder="閫夋嫨鏃ユ湡"
+            popper-class="dateStyle"
           />
         </el-form-item>
         <el-form-item label="鎵�灞炶溅闂�" prop="workshopcode">
-          <el-select v-model="dialogForm.workshopcode" style="width: 220px" placeholder="璇烽�夋嫨" @change="workshopcodeChange">
+          <el-select v-model="dialogForm.workshopcode" :popper-append-to-body="false" style="width: 220px" placeholder="璇烽�夋嫨" @change="workshopcodeChange">
             <el-option
               v-for="item in WorkShopArr"
               :key="item.code"
@@ -249,7 +252,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="鎵�灞炰骇绾�" prop="linecode">
-          <el-select v-model="dialogForm.linecode" :disabled="dialogForm.workshopcode===''" style="width: 220px" placeholder="璇烽�夋嫨">
+          <el-select v-model="dialogForm.linecode" :popper-append-to-body="false" :disabled="dialogForm.workshopcode===''" style="width: 220px" placeholder="璇烽�夋嫨">
             <el-option
               v-for="item in WorkLineArr"
               :key="item.linecode"
@@ -259,7 +262,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="浣跨敤鐘舵��" prop="status">
-          <el-select v-model="dialogForm.status" style="width: 220px" placeholder="璇烽�夋嫨">
+          <el-select v-model="dialogForm.status" :popper-append-to-body="false" style="width: 220px" placeholder="璇烽�夋嫨">
             <el-option
               v-for="item in StatusArr"
               :key="item.value"
@@ -287,6 +290,7 @@
       :visible.sync="DeviceTypeDialogVisible"
       width="50%"
       top="15vh"
+      :close-on-click-modal="false"
       class="DeviceTypeDialogVisible"
       @close="handleCloseDeviceType"
     >
@@ -297,8 +301,8 @@
       <el-table
         :data="DeviceTypeArray"
         border
+        height="400"
         highlight-current-row
-        :style="{width: 100+'%',height:tableHeight-300+'px'}"
         :header-cell-style="this.$headerCellStyle"
         :cell-style="this.$cellStyle"
         @sort-change="sortChangeOfDeviceType"
@@ -372,6 +376,7 @@
       title="璁惧缁�"
       :visible.sync="DeviceGroupDialogVisible"
       width="70%"
+      :close-on-click-modal="false"
       top="15vh"
       class="DeviceTypeDialogVisible"
       @close="handleCloseDeviceGroup"
@@ -383,7 +388,7 @@
         :data="DeviceGroupArray"
         border
         highlight-current-row
-        :style="{width: 100+'%',height:tableHeight-300+'px'}"
+        height="400"
         :header-cell-style="this.$headerCellStyle"
         :cell-style="this.$cellStyle"
         @sort-change="sortChangeOfDeviceGroup"
@@ -419,7 +424,7 @@
           sortable="custom"
         >
           <template slot-scope="{row}">
-            <el-select v-if="row.isVisible===1" v-model="row.eqptype_code" placeholder="璇烽�夋嫨">
+            <el-select v-if="row.isVisible===1" v-model="row.eqptype_code" :popper-append-to-body="false" placeholder="璇烽�夋嫨">
               <el-option
                 v-for="item in DeviceTypeArr"
                 :key="item.code"
@@ -545,6 +550,7 @@
         status: '',
         ratio: ''
       },
+      DeviceGroupDialogArr: [], // 璁惧缁勬暟缁�
       WorkLineArr: [], // 鎵�灞炰骇绾挎暟缁�
       operation: '',
       dialogFormRules: {
@@ -624,7 +630,7 @@
     },
     // 璁惧绫诲瀷鏀瑰彉鏃�
     async deviceTypeChange(val) {
-      this.form.DeviceType = val
+      this.form.DeviceGroup = ''
       const { data: res } = await DeviceTypeSelectGroup({ eqptypecode: val })
       this.DeviceGroupArr = res
     },
@@ -668,10 +674,11 @@
       this.dialogVisible = true
     },
     // 淇敼鎸夐挳
-    edit(operation, row) {
+    async edit(operation, row) {
       this.operation = operation
       this.dialogVisible = true
-      // console.log(row)
+      await this.devicetypecodeChange(row.eqptype_code)
+      await this.workshopcodeChange(row.wksp_code)
       this.$nextTick(() => {
         this.dialogForm.id = row.id
         this.dialogForm.devicecode = row.code
@@ -725,7 +732,7 @@
     // 瀵硅瘽妗嗚澶囩被鍨嬩笅鎷夐�夋嫨鏀瑰彉鏃�
     async devicetypecodeChange(val) {
       const { data: res } = await DeviceTypeSelectGroup({ eqptypecode: val })
-      this.DeviceGroupArr = res
+      this.DeviceGroupDialogArr = res
       this.dialogForm.devicegroupcode = ''
     },
     // 瀵硅瘽妗嗗彇娑�
@@ -807,7 +814,8 @@
     },
     // 鏂板鎸夐挳
     addDeviceType() {
-      this.DeviceTypeArray.unshift({ code: '', name: '', group: '', remark: '', isVisible: 1 })
+      const number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
+      this.DeviceTypeArray.unshift({ code: '', name: '', group: '', remark: '', isVisible: 1, number: number })
     },
     // 鍒犻櫎
     DeviceTypeDel(row) {
@@ -852,7 +860,7 @@
     // 鍙栨秷
     DeviceTypeCancel(row) {
       this.DeviceTypeArray.forEach((item, index) => {
-        if (item.isVisible === 1 && item.code === row.code) {
+        if (item.isVisible === 1 && item.number === row.number) {
           this.DeviceTypeArray.splice(index, 1)
         }
       })
@@ -882,7 +890,8 @@
     },
     // 鏂板
     addDeviceGroup() {
-      this.DeviceGroupArray.unshift({ code: '', name: '', eqptype_code: '', eqptype_name: '', remark: '', isVisible: 1 })
+      const number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
+      this.DeviceGroupArray.unshift({ code: '', name: '', eqptype_code: '', eqptype_name: '', remark: '', isVisible: 1, number: number })
     },
     // 鎺掑簭
     sortChangeOfDeviceGroup({ column, prop, order }) {
@@ -956,7 +965,7 @@
     // 鍙栨秷鎸夐挳
     DeviceGroupCancel(row) {
       this.DeviceGroupArray.forEach((item, index) => {
-        if (item.isVisible === 1 && item.code === row.code) {
+        if (item.isVisible === 1 && item.number === row.number) {
           this.DeviceGroupArray.splice(index, 1)
         }
       })
@@ -972,10 +981,13 @@
   height: 30px;
   display: flex;
   align-items: center;
-  border: 1px solid $main_color;
+  //border: 1px solid $main_color;
+  border: none;
   padding: 0 20px;
 }
-
+::v-deep .el-button--primary:hover {
+  border: none;
+}
 ::v-deep .el-button--info {
   //background-color: $main_color !important;
   height: 30px;
@@ -1112,4 +1124,22 @@
 .body ::v-deep .el-form-item{
   margin-bottom: 0;
 }
+::v-deep .el-input__inner:focus {
+  border-color: $main_color;
+}
+
+::v-deep .el-select .el-input__inner:focus{
+  border-color: $main_color;
+}
+
+::v-deep .el-select-dropdown__item.selected{
+  color: $main_color;
+}
+</style>
+<style lang="scss">
+.dateStyle{
+  .el-date-table td.today span{
+    color: #42b983;
+  }
+}
 </style>

--
Gitblit v1.9.3