From c8435fd9afcf1e211c38fa9848a8d27c2d989f04 Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期一, 22 四月 2024 15:54:36 +0800
Subject: [PATCH] 工种管理 列表的接口联调+删除工种的接口联调+添加工种,编辑工种 2个接口联调

---
 src/views/employeeManage/employeeInfo/components/AddEmployee.vue |  126 +++++++++++++++++++++++++++++++++---------
 1 files changed, 99 insertions(+), 27 deletions(-)

diff --git a/src/views/employeeManage/employeeInfo/components/AddEmployee.vue b/src/views/employeeManage/employeeInfo/components/AddEmployee.vue
index d5d9149..cc662c9 100644
--- a/src/views/employeeManage/employeeInfo/components/AddEmployee.vue
+++ b/src/views/employeeManage/employeeInfo/components/AddEmployee.vue
@@ -13,26 +13,29 @@
         <el-form-item label="鎵嬫満鍙凤細" prop="phoneNum">
           <el-input v-model="form.phoneNum" placeholder="璇疯緭鍏�" maxlength="11" show-word-limit></el-input>
         </el-form-item>
-        <el-form-item label="鍏ヨ亴鏃堕棿锛�" prop="date">
-          <el-date-picker v-model="form.date" style="width:100%;" type="date" placeholder="閫夋嫨鏃ユ湡"
+        <el-form-item label="鍏ヨ亴鏃堕棿锛�" prop="employmentTime">
+          <el-date-picker v-model="form.employmentTime" style="width:100%;" type="date" placeholder="閫夋嫨鏃ユ湡"
             value-format="yyyy-MM-dd">
           </el-date-picker>
         </el-form-item>
-        <el-form-item label="杞﹂棿锛�" prop="phoneNum">
-          <el-select v-model="form.phoneNum" filterable placeholder="璇烽�夋嫨" style="width: 100%">
-            <el-option v-for="item in DeviceList" :key="item.id" :label="item.name" :value="item.id">
+        <el-form-item label="杞﹂棿锛�" prop="shopNameObj">
+          <el-select v-model="form.shopNameObj" filterable placeholder="璇烽�夋嫨" style="width: 100%" @change='getGroupNumber'>
+            <el-option v-for="item in shopList" :key="item.number"
+                  :label="item.name"
+                  :value="{ value: item.number, label: item.name }">
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="缁勫埆锛�" prop="phoneNum">
-          <el-select v-model="form.phoneNum" filterable placeholder="璇烽�夋嫨" style="width: 100%">
-            <el-option v-for="item in DeviceList" :key="item.id" :label="item.name" :value="item.id">
+        <el-form-item label="缁勫埆锛�" prop="groupNumber">
+          <el-select v-model="form.groupNumber" filterable placeholder="璇烽�夋嫨" style="width: 100%">
+            <el-option v-for="item in groupNumberList" :key="item" :label="item" :value="item">
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="宸ョ锛�" prop="phoneNum">
-          <el-select v-model="form.phoneNum" filterable placeholder="璇烽�夋嫨" style="width: 100%">
-            <el-option v-for="item in DeviceList" :key="item.id" :label="item.name" :value="item.id">
+        <el-form-item label="宸ョ锛�" prop="workTypeObj">
+          <el-select v-model="form.workTypeObj" filterable placeholder="璇烽�夋嫨" style="width: 100%">
+            <el-option v-for="item in workTypeList" :key="item.id" :label="item.name" 
+            :value="{ value: item.id, label: item.name }">
             </el-option>
           </el-select>
         </el-form-item>
@@ -46,7 +49,14 @@
 </template>
 
 <script>
-import { getDeleteFollowRecord } from "@/api/employeeManage/employeeInfo.js"
+
+import { createWorkerInfo,updateWorkerInfo,getWorkTypeList } from "@/api/employeeManage/employeeInfo.js"
+import {
+  getDictList,
+} from "@/api/productManage/silkRegisterForm.js";
+import {
+  getWorkshopManageGroup,
+} from "@/api/productManage/productRegisterForm.js";
 export default {
   props: {
     editRow: {
@@ -60,7 +70,14 @@
         id: '',
         name: '',
         phoneNum: '',
+        employmentTime:'',
+        shopNameObj:{},
+        groupNumber:'',
+        workTypeObj:{},
       },
+      shopList:[],//杞﹂棿
+      groupNumberList:[],//缁勫埆
+      workTypeList:[], //宸ョ
       rules: {
         id: [
           {
@@ -91,10 +108,10 @@
           },
         ],
       },
-      DeviceList: [],
     };
   },
   created() {
+    this.getSelectDataList()
   },
   watch: {
     islook(newVal) {
@@ -110,50 +127,105 @@
     formInfo() {
       if (this.islook) {
         this.form = {
-          explain: "",
-          prefixId: "",
-          id: "",
-          number: 0,
-          remark: "",
-          status: "",
-          frockLife: "",
-          frockName: "",
-          vendor: "",
+          id: '',
+          name: '',
+          phoneNum: '',
+          employmentTime:'',
+          shopNameObj:{},
+          groupNumber:'',
+          workTypeObj:{},
         };
         this.$nextTick(()=>{
           this.$refs["form"].resetFields();
           if (this.editRow.id) {
             this.form = JSON.parse(JSON.stringify(this.editRow));
+            this.getGroupNumber(true)
           }
         })
       }
     },
-    cancelMethod() {
+    getGroupNumber(val){
+      // shopName
+      if(this.form.shopNameObj.value){
+        //缁勫埆
+        getWorkshopManageGroup({number:this.form.shopNameObj.value}).then((res) => {
+           if (res.code == 200) {
+              let groupNumberList = res.data || {};
+              this.groupNumberList=[]
+              if(Object.keys(groupNumberList).length>0){
+                for(let i in groupNumberList){
+                  this.groupNumberList.push(groupNumberList[i])
+                }
+                this.form.shopName=''
+                // 缂栬緫
+                if(val){
+                  setTimeout(()=>{
+                    this.$set(this.form,'shopName',this.form.shopName)
+                  },200)
+                }
+              }
+            }else{
+              this.groupNumberList=[]
+              this.form.shopName=''
+            }
+          });
+      }else{
+        this.workshopGroupList =[]
+      }
+    },
+    getSelectDataList() {
+      //杞﹂棿
+      getDictList({
+        dictType: 1,
+      }).then((res) => {
+        if (res.code == 200) {
+          this.shopList = res.data || [];
+        }
+      });
+      getWorkTypeList({
+        page:0,
+        pageSize:0,
+        keyWord:''
+      }).then((res) => {
+        if (res.code == 200) {
+          this.workTypeList = res.data || [];
+        }
+      });
+    },
+    cancelMethod(val) {
       this.$refs["form"].resetFields();
       this.islook = false;
+      if(val){
+        this.$emit('refresh')
+      }
+      
     },
     submitForm(formName) {
       this.$refs[formName].validate((valid) => {
         if (valid) {
           let form = JSON.parse(JSON.stringify(this.form));
+          form.shopId=form.shopNameObj.value
+          form.shopName=form.shopNameObj.label
+          form.workTypeId=form.workTypeObj.value
+          form.workType=form.workTypeObj.label
           if (this.editRow.type == "add") {
-            getDeleteFollowRecord(form).then((res) => {
+            createWorkerInfo(form).then((res) => {
               if (res.code == 200) {
                 this.$message({
                   message: "娣诲姞鎴愬姛锛�",
                   type: "success",
                 });
-                this.cancelMethod();
+                this.cancelMethod(true);
               }
             });
           } else {
-            getDeleteFollowRecord(form).then((res) => {
+            updateWorkerInfo(form).then((res) => {
               if (res.code == 200) {
                 this.$message({
                   message: "缂栬緫鎴愬姛锛�",
                   type: "success",
                 });
-                this.cancelMethod();
+                this.cancelMethod(true);
               }
             });
           }

--
Gitblit v1.8.0