提交代码
This commit is contained in:
221
src/views/modules/supplier/components/poorLaunch-add.vue
Normal file
221
src/views/modules/supplier/components/poorLaunch-add.vue
Normal file
@@ -0,0 +1,221 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2023-02-14 15:02:26
|
||||
* @LastEditTime: 2023-04-19 14:20:14
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
<template>
|
||||
<el-form :model="dataForm" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" label-width="120px">
|
||||
<el-form-item prop="productId" :label="$t('supplier.materialName')">
|
||||
<el-select v-model="dataForm.productId" :placeholder="$t('supplier.materialName')" @change="getProductCode">
|
||||
<el-option v-for="item in productList" :key="item.id" :label="item.productName" :value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="productCode" :label="$t('supplier.materialCode')">
|
||||
<el-input v-model="dataForm.productCode" :placeholder="$t('supplier.materialCode')" disabled>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="supplierId" :label="$t('supplier.supplierName')">
|
||||
<el-select v-model="dataForm.supplierId" :placeholder="$t('supplier.supplierName')">
|
||||
<el-option v-for="item in supplierList" :key="item.id" :label="item.name" :value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="supplierBatch" :label="$t('supplier.supplierBatch')">
|
||||
<el-input v-model="dataForm.supplierBatch" :placeholder="$t('supplier.supplierBatch')">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="offlineTime" :label="$t('supplier.offlineTime')">
|
||||
<el-date-picker v-model="dataForm.offlineTime" type="datetime" format='yyyy-MM-dd HH:mm:ss'
|
||||
valueFormat='yyyy-MM-ddTHH:mm:ss' :placeholder="$t('supplier.offlineTime')">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item prop="defectiveQuantity" :label="$t('supplier.defectiveQuantity')">
|
||||
<el-input v-model="dataForm.defectiveQuantity" :placeholder="$t('supplier.defectiveQuantity')">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="undesirablePhenomena" :label="$t('supplier.undesirablePhenomena')">
|
||||
<el-input v-model="dataForm.undesirablePhenomena" :placeholder="$t('supplier.undesirablePhenomena')">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import debounce from "lodash/debounce";
|
||||
import basicAdd from "@/mixins/basic-add";
|
||||
export default {
|
||||
mixins: [basicAdd],
|
||||
data() {
|
||||
return {
|
||||
urlOptions: {
|
||||
submitURL: "/supplier/qmsPoorLaunch",
|
||||
infoURL: "/supplier/qmsPoorLaunch/{id}",
|
||||
getProductListURL: '/basic/qmsProduct/page',
|
||||
getSupplierListURL: '/supplier/qmsSupplier/page'
|
||||
},
|
||||
options: [{
|
||||
value: 0,
|
||||
label: '不可用'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '可用'
|
||||
}],
|
||||
supplierList:null,
|
||||
enterpriseNatureList: [
|
||||
{
|
||||
value: 0,
|
||||
label: '私营'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '国有'
|
||||
},
|
||||
{
|
||||
value: 2,
|
||||
label: '外资'
|
||||
},
|
||||
{
|
||||
value: 3,
|
||||
label: '其他'
|
||||
}
|
||||
],
|
||||
|
||||
supplierTypeList: [],
|
||||
productList:[],
|
||||
visible: false,
|
||||
listQuery: {
|
||||
limit: 999,
|
||||
page:1
|
||||
},
|
||||
dataForm: {
|
||||
id: "",
|
||||
productId: null,
|
||||
supplierId: null,
|
||||
supplierBatch:null,
|
||||
productCode:null,
|
||||
offlineTime: null,
|
||||
defectiveQuantity: null,
|
||||
undesirablePhenomena:null
|
||||
},
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
dataRule() {
|
||||
return {
|
||||
// dictLabel: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t("validate.required"),
|
||||
// trigger: "blur",
|
||||
// },
|
||||
// ],
|
||||
// dictValue: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t("validate.required"),
|
||||
// trigger: "blur",
|
||||
// },
|
||||
// ],
|
||||
// sort: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t("validate.required"),
|
||||
// trigger: "blur",
|
||||
// },
|
||||
// ],
|
||||
};
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getProductCode(val) {
|
||||
this.productList.forEach(ele => {
|
||||
if (val === ele.id) {
|
||||
this.dataForm.productCode = ele.productCode
|
||||
}
|
||||
});
|
||||
},
|
||||
init(id, ) {
|
||||
this.dataForm.id = id || ""
|
||||
// this.dataForm.dictTypeId = dictTypeId || "";
|
||||
this.visible = true;
|
||||
this.$nextTick(() => {
|
||||
this.$refs["dataForm"].resetFields();
|
||||
if (this.dataForm.id) {
|
||||
this.getInfo();
|
||||
} else {
|
||||
this.getCode()
|
||||
}
|
||||
});
|
||||
},
|
||||
getCode() {
|
||||
this.$http
|
||||
.get(this.urlOptions.getSupplierListURL, { params: this.listQuery })
|
||||
.then(({ data: res }) => {
|
||||
if (res.code === 0) {
|
||||
console.log(res.data);
|
||||
this.supplierList = res.data.list
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
})
|
||||
this.$http
|
||||
.get(this.urlOptions.getProductListURL, { params: this.listQuery })
|
||||
.then(({ data: res }) => {
|
||||
if (res.code === 0) {
|
||||
this.productList = res.data.list
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
})
|
||||
},
|
||||
// 获取信息
|
||||
getInfo() {
|
||||
this.$http
|
||||
.get(`/supplier/qmsPoorLaunch/${this.dataForm.id}`)
|
||||
.then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
return this.$message.error(res.msg);
|
||||
}
|
||||
this.dataForm = {
|
||||
...this.dataForm,
|
||||
...res.data,
|
||||
};
|
||||
})
|
||||
.catch(() => {});
|
||||
},
|
||||
// 表单提交
|
||||
dataFormSubmitHandle: debounce(
|
||||
function () {
|
||||
this.$refs["dataForm"].validate((valid) => {
|
||||
if (!valid) {
|
||||
return false;
|
||||
}
|
||||
this.$http[!this.dataForm.id ? "post" : "put"](this.urlOptions.submitURL, this.dataForm)
|
||||
.then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
return this.$message.error(res.msg);
|
||||
}
|
||||
this.$message({
|
||||
message: this.$t("prompt.success"),
|
||||
type: "success",
|
||||
duration: 500,
|
||||
onClose: () => {
|
||||
console.log(1111);
|
||||
this.visible = false;
|
||||
this.$emit("successSubmit");
|
||||
},
|
||||
});
|
||||
})
|
||||
.catch(() => {});
|
||||
});
|
||||
},
|
||||
1000,
|
||||
{ leading: true, trailing: false }
|
||||
),
|
||||
},
|
||||
};
|
||||
</script>
|
||||
Reference in New Issue
Block a user