From c77637aa6781f3275839674cb4fa2d4b72b8827c Mon Sep 17 00:00:00 2001
From: charles <981744753@qq.com>
Date: 星期一, 15 七月 2024 19:34:55 +0800
Subject: [PATCH] fix:修复纤度登记表,检验表,产量等级表部分的bug修复
---
src/views/employeeSalary/machineManage/components/addDialog.vue | 333 ++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 240 insertions(+), 93 deletions(-)
diff --git a/src/views/employeeSalary/machineManage/components/addDialog.vue b/src/views/employeeSalary/machineManage/components/addDialog.vue
index be18a75..474d15b 100644
--- a/src/views/employeeSalary/machineManage/components/addDialog.vue
+++ b/src/views/employeeSalary/machineManage/components/addDialog.vue
@@ -1,156 +1,303 @@
<template>
<div class="add_wordshop">
- <el-dialog :title="editConfig.dialogTitle + '杞﹂棿绠$悊'" :visible.sync="editConfig.visible" width="30%"
- :before-close="handleClose">
- <el-form :inline="true" label-width="20%" style="width: 100%;" :model="editConfig.infomitton" :rules="rules"
- ref="ruleForm">
- <el-form-item label="鏃ユ湡鍖洪棿" style="width: 100%;" prop="groupNumber">
- <el-date-picker
- style="width: 100%;"
- v-model="editConfig.infomitton.groupNumber"
- type="daterange"
- range-separator="鑷�"
+ <el-dialog :visible.sync="islook" width="38rem" @close="cancelMethod">
+ <div slot="title" class="tac drawerHeader">{{ editRow.title }}鏈哄彴</div>
+ <el-form label-width="100px" :model="form" :rules="rules" ref="form">
+ <el-form-item label="鏃ユ湡鍖洪棿" style="width: 100%" prop="date">
+ <el-date-picker
+ style="width: 100%"
+ v-model="form.date"
+ type="daterange"
+ range-separator="鑷�"
+ value-format="yyyy-MM-dd"
start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡"
>
</el-date-picker>
</el-form-item>
- <el-form-item prop="workshop" label="杞﹂棿" style="width: 100%;" >
- <el-select
- :disabled="this.editConfig.dialogTitle==='鏌ョ湅'" v-model="editConfig.infomitton.workshop" value-key="name" placeholder="璇烽�夋嫨杞﹂棿">
+ <el-form-item prop="workshopObj" label="杞﹂棿">
+ <el-select
+ v-model="form.workshopObj"
+ placeholder="璇烽�夋嫨杞﹂棿"
+ @change="getGroupNumber(false, 'workshopObj')"
+ >
<el-option
- v-for="item in workshopList"
- :key="item.ID"
+ v-for="item in shopList"
+ :key="item.number"
:label="item.name"
- :value="item">
+ :value="{ value: item.number, label: item.name }"
+ >
</el-option>
</el-select>
</el-form-item>
- <el-form-item prop="workshop" label="缁勫埆" style="width: 100%;" >
- <el-select
- :disabled="this.editConfig.dialogTitle==='鏌ョ湅'" v-model="editConfig.infomitton.groupNumber" value-key="name" placeholder="璇烽�夋嫨杞﹂棿">
+ <el-form-item prop="workshopGroup" label="缁勫埆">
+ <el-select
+ v-model="form.workshopGroup"
+ @change="getGroupNumber(false, 'workshopGroup')"
+ placeholder="璇峰厛閫夋嫨杞﹂棿"
+ no-data-text="璇峰厛閫夋嫨杞﹂棿"
+ >
<el-option
- v-for="item in workshopList"
- :key="item.ID"
- :label="item.name"
- :value="item">
+ v-for="item in groupNumberList"
+ :key="item"
+ :label="item"
+ :value="item"
+ >
</el-option>
</el-select>
</el-form-item>
- <el-form-item prop="workshop" label="鏈哄彴鍙�" style="width: 100%;" >
- <el-select
- :disabled="this.editConfig.dialogTitle==='鏌ョ湅'" v-model="editConfig.infomitton.groupNumber" value-key="name" placeholder="璇烽�夋嫨杞﹂棿">
+ <el-form-item prop="workerPosition" label="鏈哄彴鍙�">
+ <el-select
+ v-model="form.workerPosition"
+ placeholder="璇峰厛閫夋嫨杞﹂棿鍜岀粍鍒�"
+ no-data-text="璇峰厛閫夋嫨杞﹂棿鍜岀粍鍒�"
+ >
<el-option
- v-for="item in workshopList"
+ v-for="item in workerPositionList"
:key="item.ID"
- :label="item.name"
- :value="item">
+ :label="item.carNumber"
+ :value="{ value: item.carNumber, label: item.carNumber }"
+ >
</el-option>
</el-select>
</el-form-item>
- <el-form-item prop="workshop" label="鍛樺伐濮撳悕" style="width: 100%;" >
- <el-select
- :disabled="this.editConfig.dialogTitle==='鏌ョ湅'" v-model="editConfig.infomitton.groupNumber" value-key="name" placeholder="璇烽�夋嫨杞﹂棿">
- <el-option
- v-for="item in workshopList"
- :key="item.ID"
- :label="item.name"
- :value="item">
- </el-option>
- </el-select>
+ <el-form-item prop="name" label="鍛樺伐濮撳悕" style="width: 100%">
+ <UserSimpleSearchInput
+ :echoValue="form.workerId"
+ :echoName="form.name"
+ checkedNum="1"
+ request="1"
+ :clearable="true"
+ @select-user="setFormItem($event, 'workerId', 'name')"
+ >
+ </UserSimpleSearchInput>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
- <el-button @click="editConfig.visible = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="commitForm('ruleForm')">纭� 瀹�</el-button>
+ <el-button @click="cancelMethod()">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitForm('form')">纭� 瀹�</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
-// import {} from "@/api/systemSetting/workshopManage"
+import {
+ createWorkerPositionInfo,
+ updateWorkerPositionInfo,
+} from "@/api/employeeSalary/machineManage.js";
+import { getWorkshopManageGroup } from "@/api/productManage/productRegisterForm.js";
+import { getDictList } from "@/api/productManage/silkRegisterForm.js";
+import { getWorkshopManageList } from "@/api/systemSetting/workshopManage.js";
+import UserSimpleSearchInput from "@/components/common/UserSimpleSearchInput";
export default {
+ components: {
+ UserSimpleSearchInput,
+ },
props: {
- editDiaConfig: {
+ editRow: {
type: Object,
- default: () => {
- return {
- visible: false,
- dialogTitle: "娣诲姞",
- isReadonly: true,
- infomitton: {
- },
- }
- }
- }
+ },
},
data() {
return {
- editConfig: this.editDiaConfig,
- workshopList: [],
- carFlagList: [
- ],
+ shopList: [], //杞﹂棿
+ groupNumberList: [], //缁勫埆
+ workerPositionList: [], //鏈哄彴鍙�
+ islook: false,
+ form: {
+ date: [],
+ workshopObj: {},
+ workshop: "",
+ workshopGroup: "",
+ workerPosition: "",
+ name: "",
+ workerId: "",
+ },
rules: {
- workshopNumber: [
- { required: true, message: '璇烽�夋嫨杞﹂棿', trigger: 'change' }
+ date: [
+ { required: true, message: "璇烽�夋嫨", trigger: ["change", "blur"] },
],
- groupNumber: [
- { required: true, message: '璇峰~鍐欑粍鍒�', trigger: 'change' }
- ]
+ workshopObj: [
+ { required: true, message: "璇烽�夋嫨", trigger: ["change", "blur"] },
+ ],
+ workshopGroup: [
+ { required: true, message: "璇烽�夋嫨", trigger: ["change", "blur"] },
+ ],
+ workerPosition: [
+ { required: true, message: "璇烽�夋嫨", trigger: ["change", "blur"] },
+ ],
},
};
},
- computed: {
- },
+ computed: {},
created() {
+ this.getSelectDataList();
},
- mounted() {
-
- },
+ mounted() {},
watch: {
-
+ islook(newVal) {
+ if (newVal) {
+ this.formInfo();
+ }
+ },
+ editRow() {
+ this.formInfo();
+ },
},
methods: {
- handleClose(done) {
- done();
- },
- setParams() {
- let params = {
- workshopNumber: this.editConfig.infomitton.workshopNumber + '',
- groupNumber: Number(this.editConfig.infomitton.groupNumber),
- startCarNumber: Number(this.editConfig.infomitton.startCarNumber),
- endCarNumber: Number(this.editConfig.infomitton.endCarNumber),
- carFlag: Number(this.editConfig.infomitton.carFlag),
- notes: this.editConfig.infomitton.notes,
- // id:Number(this.editConfig.infomitton.workshopId),
+ formInfo() {
+ if (this.islook) {
+ this.form = {
+ date: [],
+ workshopObj: {},
+ workshop: "",
+ workshopGroup: "",
+ workerPosition: "",
+ workerId: "",
+ };
+ this.$nextTick(() => {
+ this.$refs["form"].resetFields();
+ if (this.editRow.id) {
+ this.form = JSON.parse(JSON.stringify(this.editRow));
+ this.getGroupNumber(true);
+ }
+ });
}
- return params
},
- async commitForm(formName) {
+ setFormItem(val, itemMark, itemName) {
+ this.$set(this.form, itemMark, val.id);
+ this.$set(this.form, itemName, val.name);
+ },
+ getGroupNumber(val, name) {
+ if (name == "workshopObj") {
+ this.form.workshopGroup = "";
+ this.form.workerPosition = "";
+ }
+ if (name == "workshopGroup") {
+ this.form.workerPosition = "";
+ }
+ if (Object.keys(this.form.workshopObj).length > 0) {
+ //缁勫埆
+ getWorkshopManageGroup({ number: this.form.workshopObj.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]);
+ }
+ }
+ } else {
+ this.groupNumberList = [];
+ this.form.workshop = "";
+ }
+ }
+ );
+ if (this.form.workshopGroup) {
+ getWorkshopManageList({
+ page: 0,
+ pageSize: 0,
+ keyWord: "",
+ workshopName: this.form.workshopObj.label,
+ groupNumber: this.form.workshopGroup,
+ }).then((res) => {
+ if (res.code == 200) {
+ this.workerPositionList = [];
+ let data = res.data ? JSON.parse(JSON.stringify(res.data)) : [];
+ if (Object.keys(data).length > 0) {
+ for (let i in data) {
+ this.workerPositionList.push({
+ ID: data[i].ID,
+ carNumber:
+ data[i].startCarNumber + "-" + data[i].endCarNumber,
+ });
+ }
+ }
+ } else {
+ this.workerPositionList = [];
+ }
+ });
+ }
+ } else {
+ this.groupNumberList = [];
+ }
+ },
+ getSelectDataList() {
+ //杞﹂棿
+ getDictList({
+ dictType: 1,
+ }).then((res) => {
+ if (res.code == 200) {
+ this.shopList = 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) {
- console.log("鏍¢獙閫氳繃")
+ let form = JSON.parse(JSON.stringify(this.form));
+ form.startDate = form.date.length > 0 ? form.date[0] : "";
+ form.endDate = form.date.length > 0 ? form.date[1] : "";
+ form.startWorkerPosition = form.workerPosition
+ ? Number(form.workerPosition.label.split("-")[0])
+ : "";
+ form.endWorkerPosition = form.workerPosition
+ ? Number(form.workerPosition.label.split("-")[1])
+ : "";
+ form.workshop =
+ Object.keys(form.workshopObj).length > 0
+ ? form.workshopObj.value
+ : "";
+ form.workshopName =
+ Object.keys(form.workshopObj).length > 0
+ ? form.workshopObj.label
+ : "";
+ if (this.editRow.type == "add") {
+ createWorkerPositionInfo(form).then((res) => {
+ if (res.code == 200) {
+ this.$message({
+ message: "娣诲姞鎴愬姛锛�",
+ type: "success",
+ });
+ this.cancelMethod(true);
+ }
+ });
+ } else {
+ updateWorkerPositionInfo(form).then((res) => {
+ if (res.code == 200) {
+ this.$message({
+ message: "缂栬緫鎴愬姛锛�",
+ type: "success",
+ });
+ this.cancelMethod(true);
+ }
+ });
+ }
} else {
- console.log('error submit!!');
+ console.log("error submit!!");
return false;
}
});
-
-
- }
- },
- components: {
-
+ },
},
};
</script>
<style scoped lang="scss">
-::v-deep .el-form-item__content {
- width: 70% !important;
+.el-form {
+ margin-bottom: 50px;
+ width: 94%;
+ margin: 0 auto;
}
-
::v-deep {
.el-form {
.el-input__inner {
--
Gitblit v1.8.0