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