Files
scrq-hd/.svn/pristine/e7/e77e248d55106e445870e754035ac2024bbbbe5c.svn-base
2025-07-03 10:34:04 +08:00

247 lines
6.9 KiB
Plaintext

<template>
<div style="width: 800px; height: 450px" ref="edit">
<el-form
style="height: 360px; margin-top: 20px; margin-right: 160px"
label-width="160px"
:model="formData"
ref="formData"
>
<el-form-item
label="位号"
:rules="[{ required: true, message: '请输入位号', trigger: 'blur' }]"
>
<el-input v-model="formData.location" disabled />
</el-form-item>
<el-form-item label="缺陷原因">
<el-input v-model="formData.defect" disabled></el-input>
</el-form-item>
<el-form-item
label="责任部门"
:rules="[
{ required: true, message: '请选择责任部门', trigger: 'blur' },
]"
>
<el-select
style="width: 480px"
v-model="formData.deptIdC"
placeholder="请选择"
@change="phedep"
>
<el-option
v-for="(item, index) in deptNameCrr"
:key="index"
:label="item.deptName"
:value="item.deptId"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="不良现象" prop="phenomenon">
<el-select
style="width: 480px"
v-model="formData.phenomenonId"
placeholder="请选择"
@change="phenomenonchange"
>
<el-option
v-for="(item, index) in phenomenonList"
:key="index"
:label="item.phenomenonText"
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="处理方式" prop="way">
<el-select
style="width: 480px"
v-model="formData.way"
placeholder="请选择"
>
<el-option
v-for="(item, index) in this.$dictType.getPasteRepairwayArray()"
:key="index"
:label="item.text"
:value="item.key"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="是否解决" prop="isOk">
<el-select
style="width: 480px"
v-model="formData.isOk"
placeholder="请选择"
>
<el-option
v-for="(item, index) in this.$dictType.getYesNoArray()"
:key="index"
:label="item.text"
:value="item.key"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button
style="margin-left: 30%"
type="primary"
@click="AddThis('formData')"
>添加</el-button
>
<el-button @click="close">取消</el-button>
</el-form-item>
</el-form>
</div>
</template>
<script >
import { listDept } from "@/api/system/dept";
export default {
mounted() {
this.getDefect();
this.getlistDept();
this.getphenomenonList();
Object.keys(this.lydata.val).forEach((val) => {
this.formData[val] = this.lydata.val[val];
});
this.formData.isOk = 1;
this.formData.way = 5;
},
name: "edit",
props: {
layerid: {
type: String,
default: "",
},
lydata: {
type: Object,
default: () => {
return {};
},
},
},
data() {
return {
isShowR: false,
defectSecond: "",
formData: {
way: null,
isOk: null,
deptIdC: "",
deptNameC: "",
phenomenonId: "",
},
options: [], //不良原因
deptNameCrr: [],
phenomenonList: [], //不良现象
};
},
methods: {
phedep(val) {
//责任部门
var obj = this.deptNameCrr;
var hostValue = {};
obj.forEach((item, index) => {
const id = item.deptId;
if (!hostValue[id]) {
hostValue[id] = {
item,
};
}
});
this.formData.deptNameC = hostValue[val].item.deptName;
},
phenomenonchange(val) {
var obj = this.phenomenonList;
var hostValue = {};
obj.forEach((item, index) => {
const id = item.id;
if (!hostValue[id]) {
hostValue[id] = {
item,
};
}
});
this.formData.phenomenon = hostValue[val].item.phenomenonText;
},
getDefect() {
this.$PatchRepair.defectList().then((resp) => {
if (resp.data.code == 200 && resp.data.data.length > 0) {
this.options = resp.data.data;
}
});
},
getphenomenonList() {
this.$PatchRepair.phenomenonList().then((resp) => {
if (resp.data.code == 200 && resp.data.data.length > 0) {
this.phenomenonList = resp.data.data;
}
});
},
getlistDept() {
listDept().then((resp) => {
if (resp.code == 200 && resp.data.length > 0) {
this.deptNameCrr = resp.data;
}
else{
console.log(resp.msg,'1414')
this.$message.error(resp.msg)
}
});
},
AddThis(formData) {
this.$refs[formData].validate((valid) => {
if (valid) {
var exPasterRepairDetailList = [];
exPasterRepairDetailList.push(this.formData);
let params = {
id: this.$parent.queryParams.id,
materialBar: this.$parent.materialBar,
materialCode: this.$parent.queryParams.materialCode,
materialId: this.$parent.queryParams.materialId,
materialName: this.$parent.queryParams.materialName,
materialSpec: this.$parent.queryParams.materialSpec,
orderProdId: this.$parent.queryParams.orderProdId,
orderProdNumber: this.$parent.queryParams.orderProdNumber,
orderWorkId: this.$parent.queryParams.id,
orderWorkNumber: this.$parent.queryParams.orderWorkNumber,
updatedBy: this.$parent.queryParams.updatedBy,
updatedDt: this.$parent.queryParams.updatedDt,
createdBy: this.$parent.queryParams.createdBy,
createdDt: this.$parent.queryParams.createdDt,
workCenterId: this.$parent.queryParams.workCenterId,
workCenterName: this.$parent.queryParams.workCenterName,
isOk: this.formData.isOk,
visualInspectionBy: this.$parent.queryParams.visualInspectionBy,
visualInspectionDt: this.$parent.queryParams.visualInspectionDt,
exPasterRepairDetailList,
};
this.$PatchRepair.pasterRepairUpdata(params).then((resp) => {
if (resp.data.code == 200) {
this.$message.success("维修成功");
this.$layer.close(this.layerid);
this.$parent.isShow = false;
this.$parent.getTable();
} else {
this.$message.error(resp.data.msg);
}
});
} else {
console.log("失败");
}
});
},
close() {
this.$layer.close(this.layerid);
this.$parent.isShow = false;
},
},
};
</script>
<style scoped>
</style>