修改bug

This commit is contained in:
‘937886381’ 2023-07-17 17:00:11 +08:00
parent f8dd086cf9
commit bc6ae3a005
34 changed files with 1147 additions and 1068 deletions

View File

@ -2,7 +2,7 @@
* @Author: zwq * @Author: zwq
* @Date: 2022-08-22 14:57:50 * @Date: 2022-08-22 14:57:50
* @LastEditors: zhp * @LastEditors: zhp
* @LastEditTime: 2023-07-11 10:23:31 * @LastEditTime: 2023-07-17 10:36:32
* @Description: * @Description:
--> -->
<!DOCTYPE html> <!DOCTYPE html>

View File

@ -0,0 +1,29 @@
/*
* @Date: 2020-12-29 16:49:28
* @LastEditors: zhp
* @LastEditTime: 2023-07-17 09:36:52
* @FilePath: \basic-admin\src\filters\DataDict\index.js
* @Description: 部分常量的数据字典定义
*/
import i18n from "@/i18n"
const table = {
upload: {
0: '未上传',
1:' 已上传',
},
VerifyType: {
0: i18n.t('gage.insideVerify'),
1: i18n.t('gage.outsideVerify')
},
judgmentResult: {
0: '未判定 ',
1: '合格',
2: '不合格'
},
}
export default function (dictTable) {
return function (val) {
return table?.[dictTable]?.[val]
}
}

View File

@ -1,7 +1,7 @@
/* /*
* @Date: 2020-12-14 09:07:03 * @Date: 2020-12-14 09:07:03
* @LastEditors: zhp * @LastEditors: zhp
* @LastEditTime: 2023-04-18 15:14:26 * @LastEditTime: 2023-07-17 14:34:42
* @FilePath: \basic-admin\src\filters\index.js * @FilePath: \basic-admin\src\filters\index.js
* @Description: 过滤器定义多语言过滤器修改 * @Description: 过滤器定义多语言过滤器修改
*/ */
@ -146,6 +146,22 @@ export function handleLimit(string) {
} }
} }
export function handleProductType(Array) {
let arr = []
Array.forEach(ele => {
arr.push(ele.productTypeName)
})
return arr.join(',')
}
export function handleProcess(Array) {
let arr = []
Array.forEach(ele => {
arr.push(ele.processName)
})
return arr.join(',')
}
export function getSimpleText(html) { export function getSimpleText(html) {
var re1 = new RegExp('<.+?>', 'g') var re1 = new RegExp('<.+?>', 'g')
var msg = html.replace(re1, '') var msg = html.replace(re1, '')

View File

@ -43,6 +43,9 @@ t.notAvailable = '不可用'
t.time = '时间段' t.time = '时间段'
t.parameter = '台差参数' t.parameter = '台差参数'
t.configuration = '配置' t.configuration = '配置'
t.uploadFile = '上传'
t.detail = '查看详情'
@ -694,6 +697,9 @@ t.researchquality.stageTwoDate = '阶段2时间'
t.researchquality.stageThreeDate = '阶段3时间' t.researchquality.stageThreeDate = '阶段3时间'
t.researchquality.stageFourDate = '阶段4时间' t.researchquality.stageFourDate = '阶段4时间'
t.researchquality.approvedMemo = '审核记录' t.researchquality.approvedMemo = '审核记录'
t.researchquality.phase = '阶段'
t.researchquality.realTime = '实际完成时间'
@ -718,6 +724,7 @@ t.customerquality.qualityAcceptanceDate = '质量接收日期'
t.customerquality.confirmDeliveryDate = '确认交付日期' t.customerquality.confirmDeliveryDate = '确认交付日期'
t.customerquality.deliveryRequiredDate = '要求交付日期' t.customerquality.deliveryRequiredDate = '要求交付日期'
t.customerquality.status = '状态' t.customerquality.status = '状态'
t.customerquality.file = '清单文件'

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-14 10:17:26 * @LastEditTime: 2023-07-17 10:24:03
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -18,8 +18,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')"> <el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')">
<el-date-picker v-model="dataForm.inspectionTime" type="datetime" :placeholder="$t('code.inspectionTime')" <el-date-picker v-model="dataForm.inspectionTime" type="datetime"
format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'> :placeholder="$t('code.inspectionTime')" format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -69,14 +69,16 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')"> <el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')">
<el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')"></el-input> <el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')"> <el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')">
<el-input v-model="dataForm.inspectionQuantity" :placeholder="$t('code.inspectionQuantity')"></el-input> <el-input v-model="dataForm.inspectionQuantity"
:placeholder="$t('code.inspectionQuantity')"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -86,7 +88,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')"> <el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')">
<el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')"></el-input> <el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -102,7 +105,7 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="userId" :label="$t('code.username')"> <el-form-item prop="userId" :label="$t('code.username')">
<el-select v-model="dataForm.userId" :placeholder="$t('code.username')"> <el-select v-model="dataForm.userId" :placeholder="$t('code.username')">
<el-option v-for="item in unitList" :key="item.id" :label="item.realName" :value="item.id"> <el-option v-for="item in userList" :key="item.id" :label="item.realName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -331,23 +334,13 @@ export default {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
;console.log(res.data.list)
if (res.code === 0) { if (res.code === 0) {
this.userList = res.data.list this.userList = res.data.list
} }
}) })
.catch(() => { .catch(() => {
}) })
this.$http
.get(this.urlOptions.getProductURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
this.productList = res.data.list
}
})
.catch(() => {
})
this.$http this.$http
.get(this.urlOptions.getDictDataList, { .get(this.urlOptions.getDictDataList, {
params: { params: {
@ -385,6 +378,17 @@ export default {
}) })
.catch(() => { .catch(() => {
}) })
this.$http
.get(this.urlOptions.getProductURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
this.productList = res.data.list
}
})
.catch(() => {
})
// console.log(111111); // console.log(111111);
}, },
// //

View File

@ -2,8 +2,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-14 10:18:03 * @LastEditTime: 2023-07-17 10:24:07
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -19,8 +19,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')"> <el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')">
<el-date-picker v-model="dataForm.inspectionTime" type="datetime" :placeholder="$t('code.inspectionTime')" <el-date-picker v-model="dataForm.inspectionTime" type="datetime"
format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'> :placeholder="$t('code.inspectionTime')" format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -70,14 +70,16 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')"> <el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')">
<el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')"></el-input> <el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')"> <el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')">
<el-input v-model="dataForm.inspectionQuantity" :placeholder="$t('code.inspectionQuantity')"></el-input> <el-input v-model="dataForm.inspectionQuantity"
:placeholder="$t('code.inspectionQuantity')"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -87,7 +89,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')"> <el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')">
<el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')"></el-input> <el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -103,7 +106,7 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="userId" :label="$t('code.username')"> <el-form-item prop="userId" :label="$t('code.username')">
<el-select v-model="dataForm.userId" :placeholder="$t('code.username')"> <el-select v-model="dataForm.userId" :placeholder="$t('code.username')">
<el-option v-for="item in unitList" :key="item.id" :label="item.realName" :value="item.id"> <el-option v-for="item in userList" :key="item.id" :label="item.realName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-14 10:18:33 * @LastEditTime: 2023-07-17 10:24:12
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -19,8 +19,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')"> <el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')">
<el-date-picker v-model="dataForm.inspectionTime" type="datetime" :placeholder="$t('code.inspectionTime')" <el-date-picker v-model="dataForm.inspectionTime" type="datetime"
format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'> :placeholder="$t('code.inspectionTime')" format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -70,14 +70,16 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')"> <el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')">
<el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')"></el-input> <el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')"> <el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')">
<el-input v-model="dataForm.inspectionQuantity" :placeholder="$t('code.inspectionQuantity')"></el-input> <el-input v-model="dataForm.inspectionQuantity"
:placeholder="$t('code.inspectionQuantity')"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -87,7 +89,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')"> <el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')">
<el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')"></el-input> <el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -103,7 +106,7 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="userId" :label="$t('code.username')"> <el-form-item prop="userId" :label="$t('code.username')">
<el-select v-model="dataForm.userId" :placeholder="$t('code.username')"> <el-select v-model="dataForm.userId" :placeholder="$t('code.username')">
<el-option v-for="item in unitList" :key="item.id" :label="item.realName" :value="item.id"> <el-option v-for="item in userList" :key="item.id" :label="item.realName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -148,12 +151,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="criticalNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="criticalNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.criticalNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.criticalNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="criticalDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="criticalDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.criticalDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.criticalDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -176,12 +181,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="majorNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="majorNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.majorNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.majorNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="majorDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="majorDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.majorDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.majorDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -204,12 +211,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="minorNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="minorNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.minorNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.minorNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="minorDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="minorDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.minorDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.minorDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -232,12 +241,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="totalNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="totalNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.totalNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.totalNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="totalDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="totalDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.totalDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.totalDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -475,7 +486,7 @@ export default {
}, },
getDict() { getDict() {
this.$http this.$http
.post(this.urlOptions.getSamplingPlanURL, { .get(this.urlOptions.getSamplingPlanURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -486,7 +497,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getUserURL, { .get(this.urlOptions.getUserURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -497,7 +508,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getProductURL, { .get(this.urlOptions.getProductURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -508,7 +519,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getDictDataList, { .get(this.urlOptions.getDictDataList, {
params: { params: {
limit: 999, limit: 999,
page: 1, page: 1,
@ -523,7 +534,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getSupplierURL, { .get(this.urlOptions.getSupplierURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -534,7 +545,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getFactoryURL, { .get(this.urlOptions.getFactoryURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-14 10:19:44 * @LastEditTime: 2023-07-17 10:24:16
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -19,8 +19,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')"> <el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')">
<el-date-picker v-model="dataForm.inspectionTime" type="datetime" :placeholder="$t('code.inspectionTime')" <el-date-picker v-model="dataForm.inspectionTime" type="datetime"
format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'> :placeholder="$t('code.inspectionTime')" format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -70,14 +70,16 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')"> <el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')">
<el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')"></el-input> <el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')"> <el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')">
<el-input v-model="dataForm.inspectionQuantity" :placeholder="$t('code.inspectionQuantity')"></el-input> <el-input v-model="dataForm.inspectionQuantity"
:placeholder="$t('code.inspectionQuantity')"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -87,7 +89,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')"> <el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')">
<el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')"></el-input> <el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -103,7 +106,7 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="userId" :label="$t('code.username')"> <el-form-item prop="userId" :label="$t('code.username')">
<el-select v-model="dataForm.userId" :placeholder="$t('code.username')"> <el-select v-model="dataForm.userId" :placeholder="$t('code.username')">
<el-option v-for="item in unitList" :key="item.id" :label="item.realName" :value="item.id"> <el-option v-for="item in userList" :key="item.id" :label="item.realName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -148,12 +151,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="criticalNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="criticalNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.criticalNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.criticalNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="criticalDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="criticalDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.criticalDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.criticalDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -176,12 +181,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="majorNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="majorNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.majorNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.majorNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="majorDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="majorDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.majorDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.majorDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -204,12 +211,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="minorNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="minorNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.minorNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.minorNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="minorDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="minorDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.minorDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.minorDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -232,12 +241,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="totalNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="totalNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.totalNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.totalNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="totalDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="totalDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.totalDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.totalDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -475,7 +486,7 @@ export default {
}, },
getDict() { getDict() {
this.$http this.$http
.post(this.urlOptions.getSamplingPlanURL, { .get(this.urlOptions.getSamplingPlanURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -486,7 +497,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getUserURL, { .get(this.urlOptions.getUserURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -497,7 +508,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getProductURL, { .get(this.urlOptions.getProductURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -508,7 +519,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getDictDataList, { .get(this.urlOptions.getDictDataList, {
params: { params: {
limit: 999, limit: 999,
page: 1, page: 1,
@ -523,7 +534,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getSupplierURL, { .get(this.urlOptions.getSupplierURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -534,7 +545,7 @@ export default {
.catch(() => { .catch(() => {
}) })
this.$http this.$http
.post(this.urlOptions.getFactoryURL, { .get(this.urlOptions.getFactoryURL, {
params: this.listQuery params: this.listQuery
}) })
.then(({ data: res }) => { .then(({ data: res }) => {

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-06-19 15:52:51 * @Date: 2023-06-19 15:52:51
* @LastEditTime: 2023-07-14 10:15:12 * @LastEditTime: 2023-07-17 10:31:16
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -21,14 +21,14 @@
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total" <pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" /> @pagination="getDataList" />
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel" <base-dialog width="70%" :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
@confirm="handleConfirm" :before-close="handleCancel"> @confirm="handleConfirm" :before-close="handleCancel">
<deliveryInspection-add ref="addOrUpdate" @successSubmit="successSubmit"> <deliveryInspection-add ref="addOrUpdate" @successSubmit="successSubmit">
</deliveryInspection-add> </deliveryInspection-add>
<!-- <el-row slot="footer" type="flex" justify="end"> </el-row> --> <!-- <el-row slot="footer" type="flex" justify="end"> </el-row> -->
</base-dialog> </base-dialog>
<base-dialog :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible" @cancel="handleSearchCancel" <base-dialog width="70%" :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible"
@confirm="handleSearchConfirm" :before-close="handleSearchCancel"> @cancel="handleSearchCancel" @confirm="handleSearchConfirm" :before-close="handleSearchCancel">
<deliveryInspection-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit"> <deliveryInspection-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit">
</deliveryInspection-search> </deliveryInspection-search>
<el-row slot="footer" type="flex" justify="end"> <el-row slot="footer" type="flex" justify="end">

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-06-19 15:52:51 * @Date: 2023-06-19 15:52:51
* @LastEditTime: 2023-07-14 10:16:01 * @LastEditTime: 2023-07-17 10:30:40
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -21,13 +21,13 @@
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total" <pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" /> @pagination="getDataList" />
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel" <base-dialog width="70%" :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
@confirm="handleConfirm" :before-close="handleCancel"> @confirm="handleConfirm" :before-close="handleCancel">
<productInspection-add ref="addOrUpdate" @successSubmit="successSubmit"></productInspection-add> <productInspection-add ref="addOrUpdate" @successSubmit="successSubmit"></productInspection-add>
<!-- <el-row slot="footer" type="flex" justify="end"> </el-row> --> <!-- <el-row slot="footer" type="flex" justify="end"> </el-row> -->
</base-dialog> </base-dialog>
<base-dialog :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible" @cancel="handleSearchCancel" <base-dialog width="70%" :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible"
@confirm="handleSearchConfirm" :before-close="handleSearchCancel"> @cancel="handleSearchCancel" @confirm="handleSearchConfirm" :before-close="handleSearchCancel">
<productInspection-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit"> <productInspection-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit">
</productInspection-search> </productInspection-search>
<el-row slot="footer" type="flex" justify="end"> <el-row slot="footer" type="flex" justify="end">

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-06-12 13:22:50 * @Date: 2023-06-12 13:22:50
* @LastEditTime: 2023-07-14 10:16:14 * @LastEditTime: 2023-07-17 10:29:25
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -21,14 +21,14 @@
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total" <pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" /> @pagination="getDataList" />
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel" <base-dialog width="70%" :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
@confirm="handleConfirm" :before-close="handleCancel"> @confirm="handleConfirm" :before-close="handleCancel">
<productRegistration-add ref="addOrUpdate" @successSubmit="successSubmit"> <productRegistration-add ref="addOrUpdate" @successSubmit="successSubmit">
</productRegistration-add> </productRegistration-add>
<!-- <el-row slot="footer" type="flex" justify="end"> </el-row> --> <!-- <el-row slot="footer" type="flex" justify="end"> </el-row> -->
</base-dialog> </base-dialog>
<base-dialog :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible" @cancel="handleSearchCancel" <base-dialog width="70%" :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible"
@confirm="handleSearchConfirm" :before-close="handleSearchCancel"> @cancel="handleSearchCancel" @confirm="handleSearchConfirm" :before-close="handleSearchCancel">
<productRegistration-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit"> <productRegistration-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit">
</productRegistration-search> </productRegistration-search>
<el-row slot="footer" type="flex" justify="end"> <el-row slot="footer" type="flex" justify="end">
@ -50,11 +50,12 @@
</template> </template>
<script> <script>
import basicPage from "@/mixins/basic-page"; import basicPage from "@/mixins/basic-page"
import basicSearch from "@/mixins/basic-search"; import basicSearch from "@/mixins/basic-search"
import productRegistrationSearch from "./components/productRegistrationSearch.vue"; import productRegistrationSearch from "./components/productRegistrationSearch.vue"
import productRegistrationAdd from "./components/productRegistration-add.vue"; import productRegistrationAdd from "./components/productRegistration-add.vue"
import i18n from "@/i18n"; import i18n from "@/i18n"
import incoming from "@/filters/incoming"
// import i18n from "@/i18n"; // import i18n from "@/i18n";
const tableProps = [ const tableProps = [
{ {
@ -76,10 +77,12 @@ const tableProps = [
{ {
prop: "upload", prop: "upload",
label: i18n.t('code.upload'), label: i18n.t('code.upload'),
filter: incoming('upload'),
}, },
{ {
prop: "judgmentResult", prop: "judgmentResult",
label: i18n.t('code.judgmentResult'), label: i18n.t('code.judgmentResult'),
filter: incoming('judgmentResult'),
}, },
{ {
prop: "productCode", prop: "productCode",
@ -149,7 +152,7 @@ export default {
data() { data() {
return { return {
urlOptions: { urlOptions: {
getDataListURL: "code/productRegistration/page/term", getDataListURL: "/code/productRegistration/page/term",
deleteURL: "/code/productRegistration", deleteURL: "/code/productRegistration",
exportURL: "/code/productRegistration/export", exportURL: "/code/productRegistration/export",
}, },

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-06-12 13:22:50 * @Date: 2023-06-12 13:22:50
* @LastEditTime: 2023-07-14 10:16:28 * @LastEditTime: 2023-07-17 10:29:35
* @LastEditors: zwq * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
@ -21,14 +21,14 @@
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total" <pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" /> @pagination="getDataList" />
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel" <base-dialog width="70%" :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
@confirm="handleConfirm" :before-close="handleCancel"> @confirm="handleConfirm" :before-close="handleCancel">
<shipmentRegistration-add ref="addOrUpdate" @successSubmit="successSubmit"> <shipmentRegistration-add ref="addOrUpdate" @successSubmit="successSubmit">
</shipmentRegistration-add> </shipmentRegistration-add>
<!-- <el-row slot="footer" type="flex" justify="end"> </el-row> --> <!-- <el-row slot="footer" type="flex" justify="end"> </el-row> -->
</base-dialog> </base-dialog>
<base-dialog :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible" @cancel="handleSearchCancel" <base-dialog width="70%" :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible"
@confirm="handleSearchConfirm" :before-close="handleSearchCancel"> @cancel="handleSearchCancel" @confirm="handleSearchConfirm" :before-close="handleSearchCancel">
<shipmentRegistration-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit"> <shipmentRegistration-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit">
</shipmentRegistration-search> </shipmentRegistration-search>
<el-row slot="footer" type="flex" justify="end"> <el-row slot="footer" type="flex" justify="end">
@ -55,6 +55,7 @@ import basicSearch from "@/mixins/basic-search";
import shipmentRegistrationSearch from "./components/shipmentRegistrationSearch.vue"; import shipmentRegistrationSearch from "./components/shipmentRegistrationSearch.vue";
import shipmentRegistrationAdd from "./components/shipmentRegistration-add.vue"; import shipmentRegistrationAdd from "./components/shipmentRegistration-add.vue";
import i18n from "@/i18n"; import i18n from "@/i18n";
import incoming from "@/filters/incoming";
// import i18n from "@/i18n"; // import i18n from "@/i18n";
const tableProps = [ const tableProps = [
{ {
@ -76,10 +77,12 @@ const tableProps = [
{ {
prop: "upload", prop: "upload",
label: i18n.t('code.upload'), label: i18n.t('code.upload'),
filter: incoming('upload'),
}, },
{ {
prop: "judgmentResult", prop: "judgmentResult",
label: i18n.t('code.judgmentResult'), label: i18n.t('code.judgmentResult'),
filter: incoming('judgmentResult'),
}, },
{ {
prop: "productCode", prop: "productCode",
@ -149,7 +152,7 @@ export default {
data() { data() {
return { return {
urlOptions: { urlOptions: {
getDataListURL: "code/shipmentRegistration/page/term", getDataListURL: "/code/shipmentRegistration/page/term",
deleteURL: "/code/shipmentRegistration", deleteURL: "/code/shipmentRegistration",
exportURL: "/code/shipmentRegistration/export", exportURL: "/code/shipmentRegistration/export",
}, },

View File

@ -0,0 +1,173 @@
<!--
* @Author: zhp
* @Date: 2023-07-14 13:44:46
* @LastEditTime: 2023-07-17 15:51:39
* @LastEditors: zhp
* @Description:
-->
<template>
<div>
<el-drawer close-on-press-escape:title="$t('add')" :append-to-body="true" :before-close="handleClose"
:visible.sync="innerDrawer">
<el-form :model="dataForm" ref="dataForm" :rules="dataRule" @keyup.enter.native="dataFormSubmitHandle()"
label-width="120px">
<el-form-item prop="requirementListId" :label="$t('customerquality.requirementListName')">
<el-select v-model="dataForm.requirementListId" :placeholder="$t('customerquality.requirementListName')">
<el-option v-for="item in requirementList" :key="item.id" :label="item.requirementListName"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="knowledgeBaseId" :label="$t('customerquality.knowledgeBaseName')">
<el-select v-model="dataForm.knowledgeBaseId" :placeholder="$t('customerquality.knowledgeBaseName')">
<el-option v-for="item in knowledgeBaseList" :key="item.id" :label="item.knowledgeBaseName"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="innerDrawer = false">{{ $t('cancel') }} </el-button>
<el-button type="primary" @click="dataFormSubmit"> {{ $t('confirm') }}</el-button>
</el-form-item>
</el-form>
</el-drawer>
</div>
</template>
<script>
import i18n from "@/i18n"
import basicAdd from "@/mixins/basic-add"
import debounce from "lodash/debounce"
export default {
mixins: [basicAdd],
data() {
return {
urlOptions: {
submitURL: "/customerquality/qmsKnowledgeBaseRequirementList",
getRequirementListURL: "/customerquality/qmsCustomerQualityRequirementList/page",
getKnowledgeBaseURL: "/customerquality/qmsKnowledgeBase/page"
},
dataForm: {
knowledgeBaseId: null,
requirementListId:null
},
innerDrawer: false,
listQuery: {
limit: 10,
page:1,
},
requirementList: [],
knowledgeBaseList:[],
}
},
computed: {
dataRule() {
return {
knowledgeBaseId: [
{
required: true,
message: this.$t("validate.required"),
trigger: "change",
},
],
requirementListId: [
{
required: true,
message: this.$t("validate.required"),
trigger: "change",
},
]
};
},
},
mounted () {
this.getDict()
},
methods: {
init(id) {
this.dataForm.id = id || ''
this.innerDrawer = true
this.$nextTick(() => {
this.$refs["dataForm"].resetFields()
if (this.dataForm.id) {
this.getInfo()
} else {
// this.getCode()
}
})
},
handleClose() {
this.innerDrawer = true
this.$refs.dataForm.resetFields()
},
getInfo() {
this.$http
.get(`/customerquality/qmsKnowledgeBaseRequirementList/${this.dataForm.id}`)
.then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg);
}
this.dataForm = {
...this.dataForm,
...res.data,
};
})
.catch(() => { });
},
getDict() {
this.$http
.get(this.urlOptions.getRequirementListURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.requirementList = res.data.list
}
})
.catch(() => {
})
this.$http
.get(this.urlOptions.getKnowledgeBaseURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.knowledgeBaseList = res.data.list
}
})
.catch(() => {
})
},
//
dataFormSubmit() {
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: () => {
this.innerDrawer = false;
this.$emit("refreshDataList");
},
});
})
.catch(() => { });
});
},
},
}
</script>
<style lang="scss" scoped>
</style>

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-07-14 13:44:46 * @Date: 2023-07-14 13:44:46
* @LastEditTime: 2023-07-14 13:59:46 * @LastEditTime: 2023-07-17 15:59:27
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -9,6 +9,11 @@
<div> <div>
<el-drawer :title="$t('customerquality.knowledgeBase')" :visible.sync="drawer" size="50%"> <el-drawer :title="$t('customerquality.knowledgeBase')" :visible.sync="drawer" size="50%">
<div> <div>
<SearchBar :formConfigs="formConfig" ref="ruleForm" @headBtnClick="buttonClick">
<!-- <el-badge :value="5" class="item">
<el-button type="primary" size="small" @click="conditionSearch">条件搜索</el-button>
</el-badge> -->
</SearchBar>
<base-table id="palletTable" :table-props="tableProps" :page="listQuery.page" ref="palletTable1" <base-table id="palletTable" :table-props="tableProps" :page="listQuery.page" ref="palletTable1"
:limit="listQuery.limit" :table-data="tableData"> :limit="listQuery.limit" :table-data="tableData">
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="100" label="操作" :method-list="tableBtn" <method-btn v-if="tableBtn.length" slot="handleBtn" :width="100" label="操作" :method-list="tableBtn"
@ -17,6 +22,7 @@
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total" <pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" /> @pagination="getDataList" />
</div> </div>
<baseConfig-add ref="baseConfigAddList" v-if="baseConfigAddShow" @refreshDataList="getDataList"></baseConfig-add>
</el-drawer> </el-drawer>
</div> </div>
</template> </template>
@ -25,8 +31,10 @@
import basicPage from "@/mixins/basic-page" import basicPage from "@/mixins/basic-page"
// import basicSearch from "@/mixins/basic-search" // import basicSearch from "@/mixins/basic-search"
// import projectTypeSearch from "./components/projectTypeSearch.vue" // import projectTypeSearch from "./components/projectTypeSearch.vue"
import baseConfigAdd from "./baseConfig-add"
import customerquality from '@/filters/customerquality' import customerquality from '@/filters/customerquality'
// import qmsKnowledgeBaseAdd from "./components/qmsKnowledgeBase-add.vue" // import qmsKnowledgeBaseAdd from "./components/qmsKnowledgeBase-add.vue"
import InnerTable from "./innerTable"
import i18n from "@/i18n" import i18n from "@/i18n"
// import i18n from "@/i18n"; // import i18n from "@/i18n";
const tableProps = [ const tableProps = [
@ -40,8 +48,13 @@ const tableProps = [
}, },
{ {
prop: "categoryName", prop: "categoryName",
label: i18n.t('customerquality.category'), label: i18n.t('uploadFile'),
} },
{
prop: "code",
label: i18n.t('customerquality.file'),
subcomponent: InnerTable
},
]; ];
const tableBtn = [ const tableBtn = [
{ {
@ -51,14 +64,13 @@ const tableBtn = [
{ {
type: "delete", type: "delete",
btnName: i18n.t('delete'), btnName: i18n.t('delete'),
},
{
type: "configuration",
btnName: i18n.t('delete'),
} }
]; ];
export default { export default {
mixins: [basicPage], mixins: [basicPage],
components: {
baseConfigAdd,
},
data() { data() {
return { return {
urlOptions: { urlOptions: {
@ -67,7 +79,23 @@ export default {
exportURL: '/customerquality/qmsKnowledgeBase/export' exportURL: '/customerquality/qmsKnowledgeBase/export'
}, },
tableBtn, tableBtn,
baseConfigAddShow:[],
formConfig: [
{
type: "button",
btnName: i18n.t('search'),
name: "search",
color: "primary",
// plain: true,
},
{
type: "button",
btnName: i18n.t('add'),
name: "add",
color: "success",
plain: true
},
],
tableProps, tableProps,
tableData: [], tableData: [],
drawer: false, drawer: false,
@ -83,12 +111,90 @@ export default {
// this.dataForm.dictTypeId = dictTypeId || ""; // this.dataForm.dictTypeId = dictTypeId || "";
this.drawer = true this.drawer = true
this.$nextTick(() => { this.$nextTick(() => {
this.getDataList()
}); });
}, },
handleClick(){ buttonClick(val) {
console.log(val)
switch (val.btnName) {
case "search":
// this.listQuery.paramCode = val.paramCode;
// this.listQuery.supplierName = val.supplierName ? val.supplierName : undefined
// this.listQuery.supplierStatus = val.supplierStatus ? val.supplierStatus : undefined
// this.listQuery.supplierTypeId = val.supplierTypeId ? val.supplierTypeId : undefined
// this.listQuery.ment = this.ment ? this.ment : undefined
// console.log(i18n);
this.listQuery.page = 1;
this.getDataList()
break;
// case "export":
// // this.listQuery.paramCode = val.paramCode;
// this.exportHandle()
// break;
case "add":
// this.addOrEditTitle = ''
// this.addOrUpdateVisible = true;
this.baseConfigAddShow = true
this.$nextTick(() => {
this.$refs.baseConfigAddList.init()
})
// this.addOrUpdateHandle()
break;
default:
} }
}, },
getDataList() {
this.dataListLoading = true;
this.$http
.get(this.urlOptions.getDataListURL, {
params: this.listQuery,
})
.then(({ data: res }) => {
this.dataListLoading = false;
if (res.code !== 0) {
this.tableData = [];
this.listQuery.total = 0;
return this.$message.error(res.msg);
}
this.tableData = res.data.list;
this.listQuery.total = res.data.total;
})
.catch(() => {
this.dataListLoading = false;
})
},
handleClick(val) {
if (val.type === "delete") {
this.$confirm(`确定对[名称=${val.data.customerTypeName}]进行删除操作?`, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
this.$http.delete(this.urlOptions.deleteURL, { data: [val.data.id] }).then(({ data }) => {
if (data && data.code === 0) {
this.$message({
message: "操作成功",
type: "success",
duration: 1500,
onClose: () => {
this.getDataList();
},
});
} else {
this.$message.error(data.msg);
}
});
})
.catch(() => { });
} else if (val.type === 'edit') {
this.baseConfigAddShow = true
this.$nextTick(() => {
this.$refs.baseConfigAddList.init(val.data.id)
})
}
},
},
} }
</script> </script>

View File

@ -0,0 +1,173 @@
<!--
* @Author: zhp
* @Date: 2023-07-14 13:44:46
* @LastEditTime: 2023-07-17 16:55:03
* @LastEditors: zhp
* @Description:
-->
<template>
<div>
<el-drawer close-on-press-escape:title="$t('add')" :append-to-body="true" :before-close="handleClose"
:visible.sync="innerDrawer">
<el-form :model="dataForm" ref="dataForm" :rules="dataRule" @keyup.enter.native="dataFormSubmitHandle()"
label-width="120px">
<el-form-item prop="requirementListId" :label="$t('customerquality.requirementListName')">
<el-select v-model="dataForm.requirementListId" :placeholder="$t('customerquality.requirementListName')">
<el-option v-for="item in requirementList" :key="item.id" :label="item.requirementListName"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="knowledgeBaseId" :label="$t('customerquality.knowledgeBaseName')">
<el-select v-model="dataForm.knowledgeBaseId" :placeholder="$t('customerquality.knowledgeBaseName')">
<el-option v-for="item in knowledgeBaseList" :key="item.id" :label="item.knowledgeBaseName"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="innerDrawer = false">{{ $t('cancel') }} </el-button>
<el-button type="primary" @click="dataFormSubmit"> {{ $t('confirm') }}</el-button>
</el-form-item>
</el-form>
</el-drawer>
</div>
</template>
<script>
import i18n from "@/i18n"
import basicAdd from "@/mixins/basic-add"
import debounce from "lodash/debounce"
export default {
mixins: [basicAdd],
data() {
return {
urlOptions: {
submitURL: "/customerquality/qmsKnowledgeBaseRequirementList",
getRequirementListURL: "/customerquality/qmsCustomerQualityRequirementList/page",
getKnowledgeBaseURL: "/customerquality/qmsKnowledgeBase/page"
},
dataForm: {
knowledgeBaseId: null,
requirementListId:null
},
innerDrawer: false,
listQuery: {
limit: 10,
page:1,
},
requirementList: [],
knowledgeBaseList:[],
}
},
computed: {
dataRule() {
return {
knowledgeBaseId: [
{
required: true,
message: this.$t("validate.required"),
trigger: "change",
},
],
requirementListId: [
{
required: true,
message: this.$t("validate.required"),
trigger: "change",
},
]
};
},
},
mounted () {
this.getDict()
},
methods: {
init(id) {
this.dataForm.id = id || ''
this.innerDrawer = true
this.$nextTick(() => {
this.$refs["dataForm"].resetFields()
if (this.dataForm.id) {
this.getInfo()
} else {
// this.getCode()
}
})
},
handleClose() {
this.innerDrawer = true
this.$refs.dataForm.resetFields()
},
getInfo() {
this.$http
.get(`/customerquality/qmsKnowledgeBaseRequirementList/${this.dataForm.id}`)
.then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg);
}
this.dataForm = {
...this.dataForm,
...res.data,
};
})
.catch(() => { });
},
getDict() {
this.$http
.get(this.urlOptions.getRequirementListURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.requirementList = res.data.list
}
})
.catch(() => {
})
this.$http
.get(this.urlOptions.getKnowledgeBaseURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.knowledgeBaseList = res.data.list
}
})
.catch(() => {
})
},
//
dataFormSubmit() {
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: () => {
this.innerDrawer = false;
this.$emit("refreshDataList");
},
});
})
.catch(() => { });
});
},
},
}
</script>
<style lang="scss" scoped>
</style>

View File

@ -0,0 +1,164 @@
<!--
* @Author: zhp
* @Date: 2023-04-18 09:19:02
* @LastEditTime: 2023-07-17 16:59:22
* @LastEditors: zhp
* @Description:
-->
<template>
<div>
<el-popover placement="right" width="400" trigger="click">
<SearchBar :formConfigs="formConfig" ref="ruleForm" @headBtnClick="buttonClick">
<!-- <el-badge :value="5" class="item">
<el-button type="primary" size="small" @click="conditionSearch">条件搜索</el-button>
</el-badge> -->
</SearchBar>
<base-table id="palletTable" :table-props="tableProps" ref="palletTable1" :table-data="tableData">
</base-table>
<i slot="reference" class="el-icon-plus" @click="showInnerTable(injectData.id)" />
</el-popover>
<baseConfigFile-add ref="baseConfigFileAddList" v-if="baseConfigFileAddShow" @refreshDataList="getDataList"></baseConfigFile-add>
</div>
</template>
<script>
import i18n from "@/i18n"
import { timeFormatter } from '@/filters'
import baseConfigFileAdd from "./baseConfigFile-add"
const tableProps = [
{
prop: "stageOneName",
label: i18n.t('researchquality.stageOneName'),
},
{
prop: "stageOneDate",
label: i18n.t('researchquality.stageOneDate'),
filter: timeFormatter
},
{
prop: "stageTwoName",
label: i18n.t('researchquality.stageTwoName'),
},,
{
prop: "stageTwoDate",
label: i18n.t('researchquality.stageTwoDate'),
filter: timeFormatter
},
{
prop: "stageThreeName",
label: i18n.t('researchquality.stageThreeName'),
},
{
prop: "stageThreeDate",
label: i18n.t('researchquality.stageThreeDate'),
filter: timeFormatter
},
{
prop: "stageFourName",
label: i18n.t('researchquality.stageFourName'),
},
{
prop: "stageFourDate",
label: i18n.t('researchquality.stageFourDate'),
filter: timeFormatter
}
];
export default {
name: 'InnerTable',
props: {
injectData: {
type: Object,
default: () => ({})
},
itemProp: {
type: String
}
},
data() {
return {
tableProps,
list: this.injectData,
urlOptions: {
submitURL: "/customerquality/qmsPublicDocuments",
infoURL: "/customerquality/qmsPublicDocuments//{id}",
getCodeURL: '/customerquality/qmsPublicDocuments/getCode',
getDataListURL: '/customerquality/knowledgeBaseRequirementListData/page'
},
baseConfigFileAddShow:false,
tableData: [],
listQuery: {
limit: 10,
page:1,
},
formConfig: [
{
type: "button",
btnName: i18n.t('search'),
name: "search",
color: "primary",
// plain: true,
},
{
type: "button",
btnName: i18n.t('add'),
name: "add",
color: "success",
plain: true
},
],
}
},
components: {
baseConfigFileAdd,
},
methods: {
buttonClick(val) {
console.log(val)
switch (val.btnName) {
case "search":
this.listQuery.page = 1;
this.getDataList()
break;
// case "export":
// // this.listQuery.paramCode = val.paramCode;
// this.exportHandle()
// break;
case "add":
// this.addOrEditTitle = ''
// this.addOrUpdateVisible = true;
this.baseConfigFileAddShow = true
this.$nextTick(() => {
this.$refs.baseConfigFileAddList.init(this.injectData.id)
})
// this.addOrUpdateHandle()
break;
default:
}
},
showInnerTable() {
this.listQuery.knowledgeBaseRequirementListId = this.injectData.id
this.getDataList()
},
getDataList() {
this.dataListLoading = true;
this.$http
.get(this.urlOptions.getDataListURL, {
params: this.listQuery,
})
.then(({ data: res }) => {
this.dataListLoading = false;
if (res.code !== 0) {
this.tableData = [];
this.listQuery.total = 0;
return this.$message.error(res.msg);
}
this.tableData = res.data.list;
this.listQuery.total = res.data.total;
})
.catch(() => {
this.dataListLoading = false;
})
},
}
}
</script>

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-14 10:28:15 * @LastEditTime: 2023-07-17 15:50:39
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -45,7 +45,7 @@
<script> <script>
import debounce from "lodash/debounce"; import debounce from "lodash/debounce";
import basicAdd from "@/mixins/basic-add"; import basicAdd from "@/mixins/basic-add"
export default { export default {
mixins: [basicAdd], mixins: [basicAdd],
data() { data() {
@ -119,7 +119,7 @@ export default {
} else { } else {
// this.getCode() // this.getCode()
} }
}); })
}, },
// getCode() { // getCode() {
// this.$http // this.$http

View File

@ -1,336 +0,0 @@
<!--
* @Author: zhp
* @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-13 14:49:30
* @LastEditors: zhp
* @Description:
-->
<template>
<el-form :model="dataForm" ref="dataForm" :rules="dataRule" @keyup.enter.native="dataFormSubmitHandle()"
label-width="120px">
<el-form-item prop="registrationDate" :label="$t('researchquality.registrationDate')">
<el-date-picker v-model="dataForm.registrationDate" type="datetime"
:placeholder="$t('researchquality.registrationDate')">
</el-date-picker>
</el-form-item>
<el-form-item prop="changeSource" :label="$t('researchquality.changeSource')">
<el-select v-model="dataForm.changeSource" :placeholder="$t('researchquality.changeSource')">
<el-option v-for="item in changeSourceList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="sourceRemark" :label="$t('researchquality.sourceRemark')">
<el-input v-model="dataForm.sourceRemark" :placeholder="$t('researchquality.sourceRemark')">
</el-input>
</el-form-item>
<el-form-item prop="owner" :label="$t('researchquality.owner')">
<el-select v-model="dataForm.owner" :placeholder="$t('researchquality.owner')">
<el-option v-for="item in userList" :key="item.id" :label="item.realName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="title" :label="$t('researchquality.title')">
<el-input v-model="dataForm.title" :placeholder="$t('researchquality.title')">
</el-input>
</el-form-item>
<el-form-item prop="processId" :label="$t('researchquality.processName')">
<el-select v-model="dataForm.processId" :placeholder="$t('researchquality.processName')">
<el-option v-for="item in processList" :key="item.id" :label="item.processName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="productId" :label="$t('researchquality.productName')">
<el-select v-model="dataForm.productId" :placeholder="$t('researchquality.productName')">
<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="processId" :label="$t('researchquality.productTypeName')">
<el-select v-model="dataForm.processId" :placeholder="$t('researchquality.productTypeName')">
<el-option v-for="item in productTypeList" :key="item.id" :label="item.productTypeName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="temporaryChange" :label="$t('researchquality.temporaryChange')">
<el-switch v-model="dataForm.temporaryChange" :active-value="1" :inactive-value="0"></el-switch>
</el-form-item>
<!-- <el-row :gutter="20">
<el-col :span="12"> {{ this.$t('researchquality.planPhase') }} </el-col>
<el-col :span="12"> {{ this.$t('researchquality.planTime') }} </el-col>
</el-row> -->
<el-row :gutter="24">
<el-col :span="12">
<el-form-item prop="stageOneName" :label="$t('researchquality.stageOneName')">
<el-input v-model="dataForm.stageOneName" :placeholder="$t('researchquality.stageOneName')">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="stageOneDate" :label="$t('researchquality.stageOneDate')">
<el-date-picker v-model="dataForm.stageOneDate" type="datetime"
:placeholder="$t('researchquality.stageOneDate')">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="12">
<el-form-item prop="stageTwoName" :label="$t('researchquality.stageTwoName')">
<el-input v-model="dataForm.stageTwoName" :placeholder="$t('researchquality.stageTwoName')">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="stageTwoDate" :label="$t('researchquality.stageTwoDate')">
<el-date-picker v-model="dataForm.stageTwoDate" type="datetime"
:placeholder="$t('researchquality.stageTwoDate')">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="12">
<el-form-item prop="stageThreeName" :label="$t('researchquality.stageThreeName')">
<el-input v-model="dataForm.stageThreeName" :placeholder="$t('researchquality.stageThreeName')">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="stageThreeDate" :label="$t('researchquality.stageThreeDate')">
<el-date-picker v-model="dataForm.stageThreeDate" type="datetime"
:placeholder="$t('researchquality.stageThreeDate')">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="12">
<el-form-item prop="stageFourName" :label="$t('researchquality.stageFourName')">
<el-input v-model="dataForm.stageFourName" :placeholder="$t('researchquality.stageFourName')">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="stageFourDate" :label="$t('researchquality.stageFourDate')">
<el-date-picker v-model="dataForm.stageFourDate" type="datetime"
:placeholder="$t('researchquality.stageFourDate')">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- <el-form-item prop="productTypeStatus" :label="$t('basic.status')">
<el-select v-model="dataForm.productTypeStatus" :placeholder="$t('basic.status')">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</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/qmsSupplier",
infoURL: "/supplier/qmsSupplier/{id}",
getUserURL: '/sys/user/page',
getProcessURL: '/basic/qmsProcess/page',
getProductURL: '/basic/qmsProduct/page',
getProductTypeURL: '/basic/qmsProductType/page',
getSupplierTypeListURL: '/supplier/qmsSupplierType/page'
},
userList: [],
processList: [],
productTypeList: [],
productList: [],
changeSourceList: [
{
id: 0,
name: '工程变更'
},
{
id: 1,
name: '设计变更'
},
{
id: 2,
name: 'CCB'
}
],
visible: false,
listQuery: {
limit: 999,
page:1
},
dataForm: {
id: "",
changeSource:null,
currentStage: null,
owner: null,
productId: null,
productName: null,
qualityChangeStatus: null,
registrationDate: null,
sourceRemark: null,
stageFourDate: null,
stageFourName: null,
stageOneDate: null,
stageOneName: null,
stageThreeDate: null,
stageThreeName: null,
stageTwoDate: null,
stageTwoName: null,
temporaryChange: null,
title: null,
},
};
},
computed: {
dataRule() {
return {
code: [
{
required: true,
message: this.$t("validate.required"),
trigger: "blur",
},
],
name: [
{
required: true,
message: this.$t("validate.required"),
trigger: "blur",
},
],
ment: [
{
required: true,
message: this.$t("validate.required"),
trigger: "change",
},
],
supplierStatus: [
{
required: true,
message: this.$t("validate.required"),
trigger: "change",
},
],
};
},
},
methods: {
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.getUserURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.userList = res.data.list
}
})
.catch(() => {
})
this.$http
.get(this.urlOptions.getProcessURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.processList = res.data.list
}
})
.catch(() => {
})
this.$http
.get(this.urlOptions.getProductURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.productList = res.data.list
}
})
.catch(() => {
})
this.$http
.get(this.urlOptions.getProductTypeURL, {
params: this.listQuery
})
.then(({ data: res }) => {
if (res.code === 0) {
console.log(res);
this.productTypeList = res.data.list
}
})
.catch(() => {
})
},
//
getInfo() {
this.$http
.get(`/supplier/qmsSupplier/${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>

View File

@ -1,281 +0,0 @@
<!--
* @Author: zhp
* @Date: 2023-04-17 14:23:17
* @LastEditTime: 2023-07-13 14:06:42
* @LastEditors: zhp
* @Description:
-->
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-sys__user">
<SearchBar :formConfigs="formConfig" ref="ruleForm" @headBtnClick="buttonClick">
<el-badge :value="5" class="item">
<el-button type="primary" size="small" @click="conditionSearch">条件搜索</el-button>
</el-badge>
</SearchBar>
<base-table id="palletTable" :table-props="tableProps" :page="listQuery.page" ref="palletTable1"
:limit="listQuery.limit" :table-data="tableData">
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="100" label="操作" :method-list="tableBtn"
@clickBtn="handleClick" />
</base-table>
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" />
<!-- 弹窗, 新增 / 修改 -->
<base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
@confirm="handleConfirm" :before-close="handleCancel">
<qualityChange-add ref="addOrUpdate" @refreshDataList="successSubmit">
</qualityChange-add>
<!-- <el-row slot="footer" type="flex" justify="end"> </el-row> -->
</base-dialog>
<base-dialog :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible" @cancel="handleSearchCancel"
@confirm="handleSearchConfirm" :before-close="handleSearchCancel">
<qualityChange-search ref="searchOrUpdate" @successSubmit="conditionSearchSubmit">
</qualityChange-search>
<el-row slot="footer" type="flex" justify="end">
<el-col :span="12">
<el-button size="small" type="primary" plain class="btnTextStyle" @click="handleSearchCancel">
{{ $t("close") }}
</el-button>
<el-button size="small" class="btnTextStyle" type="primary" plain @click="handleSearchReset">{{
$t("reset")
}}</el-button>
<el-button type="primary" size="small" class="btnTextStyle" @click="handleSearchConfirm">
{{ $t("search") }}
</el-button>
</el-col>
</el-row>
</base-dialog>
</div>
</el-card>
</template>
<script>
import basicPage from "@/mixins/basic-page"
import basicSearch from "@/mixins/basic-search"
import qualityChangeSearch from "./components/qualityChangeSearch.vue"
import qualityChangeAdd from "./components/qualityChange-add.vue"
import i18n from "@/i18n"
// import supplier from '@/filters/supplier'
const tableProps = [
{
prop: "code",
label: i18n.t('researchquality.code'),
},
{
prop: "registrationDate",
label: i18n.t('researchquality.registrationDate'),
},
{
prop: "changeSource",
label: i18n.t('researchquality.changeSource'),
},
{
prop: "owner",
label: i18n.t('researchquality.owner'),
},
{
prop: "category",
label: i18n.t('researchquality.category'),
},
{
prop: "title",
label: i18n.t('researchquality.title'),
},
{
prop: "currentStage",
label: i18n.t('researchquality.currentStage'),
},
{
prop: "productName",
label: i18n.t('researchquality.productName'),
},
{
prop: "qualityChangeStatus",
label: i18n.t('researchquality.qualityChangeStatus'),
},
{
prop: "temporaryChange",
label: i18n.t('researchquality.temporaryChange'),
}
];
const tableBtn = [
{
type: "edit",
btnName: i18n.t('t.edit'),
},
{
type: "delete",
btnName: i18n.t('t.delete'),
}
];
export default {
mixins: [basicPage, basicSearch],
data() {
return {
urlOptions: {
getDataListURL: "/researchquality/qmsQualityChange/page",
deleteURL: "/researchquality/qmsQualityChange",
exportURL: '/researchquality/qmsQualityChange',
// getSupplierTypeListURL: '/supplier/qmsSupplierType/page'
// submitURL: '/supplier/qmsSupplierType'
},
tableProps,
ment: '',
tableBtn,
productData: {},
dataForm:{
limit: 999,
page:1
},
searchOrEditTitle: "",
searchOrUpdateVisible: false,
productOrEditTitle: "",
addOrEditTitle: '',
addOrUpdateVisible: false,
productOrUpdateVisible: false,
formConfig: [
// {
// type: "",
// label: i18n.t("params.paramCode"),
// placeholder: i18n.t("params.paramCode"),
// param: "paramCode",
// },
// {
// type: "separate",
// },
{
type: "button",
btnName: i18n.t('search'),
name: "search",
color: "primary",
// plain: true,
},
{
type: "button",
btnName: i18n.t('add'),
name: "add",
color: "success",
plain: true
},
{
type: "button",
btnName: i18n.t('export'),
name: "export",
color: "primary",
plain: true
}
],
};
},
components: {
qualityChangeSearch,
// supplierProduct,
qualityChangeAdd
},
// mounted () {
// this.getData();
// },
methods: {
//search-bar
handleProductCancel() {
this.productOrUpdateVisible = false;
this.productOrEditTitle = "";
},
handleCurrentChange(val) {
console.log(val);
this.productData = val.newVal ? val.newVal : {}
},
setCurrent(index) {
this.$refs.palletTable1.setCurrent("palletTable", index);
},
// handleSearchCancel() {
// this.searchOrEditTitle = "";
// this.searchOrUpdateVisible = false;
// },
conditionSearch() {
this.searchOrEditTitle = "搜索";
this.searchOrUpdateVisible = true;
this.$nextTick(() => {
this.$refs.searchOrUpdate.init();
});
},
// handleConfirm() {
// this.$refs.addOrUpdate.dataFormSubmitHandle();
// },
// conditionSearchSubmit() {},
conditionSearchSubmit(dataForm) {
// console.log(key);
// console.log(key);
this.listQuery.supplierName = dataForm.supplierName
this.listQuery.page = 1;
this.getDataList();
this.searchOrUpdateVisible = false;
// console.log(11111);
// this.conditionSearchSubmit();
},
handleClick(val) {
if (val.type === "delete") {
this.$confirm(`确定对[名称=${val.data.customerTypeName}]进行删除操作?`, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
this.$http.delete(this.urlOptions.deleteURL, { data: [val.data.id] }).then(({ data }) => {
if (data && data.code === 0) {
this.$message({
message: "操作成功",
type: "success",
duration: 1500,
onClose: () => {
this.getDataList()
},
});
} else {
this.$message.error(data.msg);
}
});
})
.catch(() => { });
} else if (val.type === 'edit') {
this.addOrUpdateVisible = true
this.addOrEditTitle = this.$t('edit')
this.$nextTick(() => {
this.$refs.addOrUpdate.init(val.data.id);
});
}
},
// addOrUpdateHandle(productData) {
// this.addOrUpdateVisible = true;
// this.$nextTick(() => {
// this.$refs.addOrUpdate.init(productData);
// });
// },
buttonClick(val) {
console.log(val)
switch (val.btnName) {
case "search":
// this.listQuery.paramCode = val.paramCode;
this.listQuery.supplierName = val.supplierName ? val.supplierName : undefined
this.listQuery.supplierStatus = val.supplierStatus ? val.supplierStatus : undefined
this.listQuery.supplierTypeId = val.supplierTypeId ? val.supplierTypeId : undefined
this.listQuery.ment = this.ment ? this.ment : undefined
// console.log(i18n);
this.listQuery.page = 1;
this.getDataList();
break;
case "export":
// this.listQuery.paramCode = val.paramCode;
this.exportHandle()
break;
case "add":
this.addOrEditTitle = '新增'
this.addOrUpdateVisible = true;
this.addOrUpdateHandle()
break;
default:
}
},
},
};
</script>

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-06-20 15:25:08 * @LastEditTime: 2023-07-17 10:23:54
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -18,8 +18,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')"> <el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')">
<el-date-picker v-model="dataForm.inspectionTime" type="datetime" :placeholder="$t('code.inspectionTime')" <el-date-picker v-model="dataForm.inspectionTime" type="datetime"
format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'> :placeholder="$t('code.inspectionTime')" format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -69,14 +69,16 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')"> <el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')">
<el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')"></el-input> <el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')"> <el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')">
<el-input v-model="dataForm.inspectionQuantity" :placeholder="$t('code.inspectionQuantity')"></el-input> <el-input v-model="dataForm.inspectionQuantity"
:placeholder="$t('code.inspectionQuantity')"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -86,7 +88,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')"> <el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')">
<el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')"></el-input> <el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -102,7 +105,7 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="userId" :label="$t('code.username')"> <el-form-item prop="userId" :label="$t('code.username')">
<el-select v-model="dataForm.userId" :placeholder="$t('code.username')"> <el-select v-model="dataForm.userId" :placeholder="$t('code.username')">
<el-option v-for="item in unitList" :key="item.id" :label="item.realName" :value="item.id"> <el-option v-for="item in userList" :key="item.id" :label="item.realName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-06-20 15:28:55 * @LastEditTime: 2023-07-17 10:23:45
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -19,8 +19,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')"> <el-form-item prop="inspectionTime" :label="$t('code.inspectionTime')">
<el-date-picker v-model="dataForm.inspectionTime" type="datetime" :placeholder="$t('code.inspectionTime')" <el-date-picker v-model="dataForm.inspectionTime" type="datetime"
format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'> :placeholder="$t('code.inspectionTime')" format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -70,14 +70,16 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')"> <el-form-item prop="batchQuantity" :label="$t('code.batchQuantity')">
<el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')"></el-input> <el-input v-model="dataForm.batchQuantity" :placeholder="$t('code.batchQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')"> <el-form-item prop="inspectionQuantity" :label="$t('code.inspectionQuantity')">
<el-input v-model="dataForm.inspectionQuantity" :placeholder="$t('code.inspectionQuantity')"></el-input> <el-input v-model="dataForm.inspectionQuantity"
:placeholder="$t('code.inspectionQuantity')"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -87,7 +89,8 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')"> <el-form-item prop="samplesQuantity" :label="$t('code.samplesQuantity')">
<el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')"></el-input> <el-input v-model="dataForm.samplesQuantity" :placeholder="$t('code.samplesQuantity')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -103,7 +106,7 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="userId" :label="$t('code.username')"> <el-form-item prop="userId" :label="$t('code.username')">
<el-select v-model="dataForm.userId" :placeholder="$t('code.username')"> <el-select v-model="dataForm.userId" :placeholder="$t('code.username')">
<el-option v-for="item in unitList" :key="item.id" :label="item.realName" :value="item.id"> <el-option v-for="item in userList" :key="item.id" :label="item.realName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -148,12 +151,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="criticalNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="criticalNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.criticalNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.criticalNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="criticalDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="criticalDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.criticalDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.criticalDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -176,12 +181,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="majorNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="majorNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.majorNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.majorNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="majorDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="majorDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.majorDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.majorDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -204,12 +211,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="minorNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="minorNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.minorNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.minorNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="minorDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="minorDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.minorDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.minorDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -232,12 +241,14 @@
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="totalNumber" :label="$t('code.defectsNumber')"> <el-form-item prop="totalNumber" :label="$t('code.defectsNumber')">
<el-input v-model="GBTDataForm.totalNumber" :placeholder="$t('code.defectsNumber')"></el-input> <el-input v-model="GBTDataForm.totalNumber" :placeholder="$t('code.defectsNumber')">
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item prop="totalDefectiveNumber" :label="$t('code.defectiveQuantity')"> <el-form-item prop="totalDefectiveNumber" :label="$t('code.defectiveQuantity')">
<el-input v-model="GBTDataForm.totalDefectiveNumber" :placeholder="$t('code.defectiveQuantity')"> <el-input v-model="GBTDataForm.totalDefectiveNumber"
:placeholder="$t('code.defectiveQuantity')">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -245,7 +256,6 @@
</el-form> </el-form>
</div> </div>
</template> </template>
<script> <script>
import debounce from "lodash/debounce"; import debounce from "lodash/debounce";
import basicAdd from "@/mixins/basic-add"; import basicAdd from "@/mixins/basic-add";
@ -481,7 +491,7 @@ export default {
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code === 0) { if (res.code === 0) {
console.log(res); console.log(res);
this.samplingPlanList = res.data this.samplingPlanList = res.data.list
} }
}) })
.catch(() => { .catch(() => {
@ -493,7 +503,7 @@ export default {
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code === 0) { if (res.code === 0) {
console.log(res); console.log(res);
this.userList = res.data this.userList = res.data.list
} }
}) })
.catch(() => { .catch(() => {
@ -505,7 +515,7 @@ export default {
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code === 0) { if (res.code === 0) {
console.log(res); console.log(res);
this.productList = res.data this.productList = res.data.list
} }
}) })
.catch(() => { .catch(() => {
@ -521,7 +531,7 @@ export default {
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code === 0) { if (res.code === 0) {
console.log(res); console.log(res);
this.unitList = res.data this.unitList = res.data.list
} }
}) })
.catch(() => { .catch(() => {
@ -533,7 +543,7 @@ export default {
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code === 0) { if (res.code === 0) {
console.log(res); console.log(res);
this.supplierList = res.data this.supplierList = res.data.list
} }
}) })
.catch(() => { .catch(() => {
@ -545,7 +555,7 @@ export default {
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code === 0) { if (res.code === 0) {
console.log(res); console.log(res);
this.factoryList = res.data this.factoryList = res.data.list
} }
}) })
.catch(() => { .catch(() => {

View File

@ -14,14 +14,15 @@
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total" <pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" /> @pagination="getDataList" />
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel" <base-dialog width="70%" :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
@confirm="handleConfirm" :before-close="handleCancel"> @confirm="handleConfirm" :before-close="handleCancel">
<incomingInspection-add ref="addOrUpdate" @successSubmit="successSubmit"></incomingInspection-add> <incomingInspection-add ref="addOrUpdate" @successSubmit="successSubmit"></incomingInspection-add>
<!-- <el-row slot="footer" type="flex" justify="end"> </el-row> --> <!-- <el-row slot="footer" type="flex" justify="end"> </el-row> -->
</base-dialog> </base-dialog>
<base-dialog :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible" @cancel="handleSearchCancel" <base-dialog width="70%" :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible"
@confirm="handleSearchConfirm" :before-close="handleSearchCancel"> @cancel="handleSearchCancel" @confirm="handleSearchConfirm" :before-close="handleSearchCancel">
<incomingInspection-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit"></incomingInspection-search> <incomingInspection-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit">
</incomingInspection-search>
<el-row slot="footer" type="flex" justify="end"> <el-row slot="footer" type="flex" justify="end">
<el-col :span="12"> <el-col :span="12">
<el-button size="small" type="primary" plain class="btnTextStyle" @click="handleSearchCancel"> <el-button size="small" type="primary" plain class="btnTextStyle" @click="handleSearchCancel">

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-06-12 13:22:50 * @Date: 2023-06-12 13:22:50
* @LastEditTime: 2023-06-20 15:35:49 * @LastEditTime: 2023-07-17 10:28:46
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -21,14 +21,14 @@
<pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total" <pagination :limit.sync="listQuery.limit" :page.sync="listQuery.page" :total="listQuery.total"
@pagination="getDataList" /> @pagination="getDataList" />
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel" <base-dialog width="70%" :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
@confirm="handleConfirm" :before-close="handleCancel"> @confirm="handleConfirm" :before-close="handleCancel">
<purchaseRegistration-add ref="addOrUpdate" @successSubmit="successSubmit"> <purchaseRegistration-add ref="addOrUpdate" @successSubmit="successSubmit">
</purchaseRegistration-add> </purchaseRegistration-add>
<!-- <el-row slot="footer" type="flex" justify="end"> </el-row> --> <!-- <el-row slot="footer" type="flex" justify="end"> </el-row> -->
</base-dialog> </base-dialog>
<base-dialog :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible" @cancel="handleSearchCancel" <base-dialog width="70%" :dialogTitle="searchOrEditTitle" :dialogVisible="searchOrUpdateVisible"
@confirm="handleSearchConfirm" :before-close="handleSearchCancel"> @cancel="handleSearchCancel" @confirm="handleSearchConfirm" :before-close="handleSearchCancel">
<purchaseRegistration-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit"> <purchaseRegistration-search ref="searchOrUpdate" @refreshDataList="conditionSearchSubmit">
</purchaseRegistration-search> </purchaseRegistration-search>
<el-row slot="footer" type="flex" justify="end"> <el-row slot="footer" type="flex" justify="end">
@ -49,11 +49,13 @@
</template> </template>
<script> <script>
import basicPage from "@/mixins/basic-page"; import basicPage from "@/mixins/basic-page"
import basicSearch from "@/mixins/basic-search"; import basicSearch from "@/mixins/basic-search"
import purchaseRegistrationSearch from "./components/purchaseRegistrationSearch.vue"; import purchaseRegistrationSearch from "./components/purchaseRegistrationSearch.vue"
import purchaseRegistrationAdd from "./components/purchaseRegistration-add.vue"; import purchaseRegistrationAdd from "./components/purchaseRegistration-add.vue"
import i18n from "@/i18n"; import i18n from "@/i18n"
import incoming from "@/filters/incoming";
// import i18n from "@/i18n"; // import i18n from "@/i18n";
const tableProps = [ const tableProps = [
{ {
@ -75,10 +77,12 @@ const tableProps = [
{ {
prop: "upload", prop: "upload",
label: i18n.t('code.upload'), label: i18n.t('code.upload'),
filter: incoming('upload'),
}, },
{ {
prop: "judgmentResult", prop: "judgmentResult",
label: i18n.t('code.judgmentResult'), label: i18n.t('code.judgmentResult'),
filter: incoming('judgmentResult'),
}, },
{ {
prop: "productCode", prop: "productCode",

View File

@ -1,13 +1,13 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-01-31 14:12:10 * @Date: 2023-01-31 14:12:10
* @LastEditTime: 2023-07-13 10:00:19 * @LastEditTime: 2023-07-17 16:14:43
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
<span> <span>
<el-button type="text" @click="getExperienceDetail">{{ $t('oss.type1') }} </el-button> <el-button type="text" @click="getExperienceDetail">{{ $t('detail') }} </el-button>
</span> </span>
</template> </template>
@ -24,7 +24,7 @@ export default {
methods: { methods: {
getExperienceDetail() { getExperienceDetail() {
this.$router.push({ this.$router.push({
name: 'laboratory-qmsLaboratoryTrainExperience', name: 'laboratory-qmsLaboratoryEmployeeResume',
query: { query: {
laboratoryTesterId: this.injectData.userId laboratoryTesterId: this.injectData.userId
} }

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-05-15 14:27:30 * @Date: 2023-05-15 14:27:30
* @LastEditTime: 2023-07-13 10:00:09 * @LastEditTime: 2023-07-17 16:13:47
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -14,7 +14,7 @@
--> -->
<template> <template>
<span> <span>
<el-button type="text" @click="getInspectionDetail">{{ $t('oss.type1') }} </el-button> <el-button type="text" @click="getInspectionDetail">{{ $t('detail') }} </el-button>
</span> </span>
</template> </template>
@ -31,7 +31,7 @@ export default {
methods: { methods: {
getInspectionDetail() { getInspectionDetail() {
this.$router.push({ this.$router.push({
name: 'laboratory-qmsLaboratoryTesterInspectionQualification', name: 'laboratory-qmsLaboratoryTrainExperience',
query: { query: {
laboratoryTesterId: this.injectData.userId laboratoryTesterId: this.injectData.userId
} }

View File

@ -1,13 +1,13 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-01-31 14:12:10 * @Date: 2023-01-31 14:12:10
* @LastEditTime: 2023-07-13 10:00:12 * @LastEditTime: 2023-07-17 16:07:15
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
<template> <template>
<span> <span>
<el-button type="text" @click="getInspectionDetail">{{ $t('oss.type1') }} </el-button> <el-button type="text" @click="getInspectionDetail">{{ $t('detail') }} </el-button>
</span> </span>
</template> </template>

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-05-12 16:45:00 * @LastEditTime: 2023-07-17 16:18:56
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -36,72 +36,11 @@ export default {
userList: [], userList: [],
gageTypeList:[], gageTypeList:[],
departmentList: [], departmentList: [],
processList: [
{
id: 0,
name: '未审核'
},
{
id: 1,
name: '不同意'
},
{
id: 2,
name: '同意'
}
],
listQuery: {
limit: 999,
gape: 1
},
gageStatusList: [
{
id: 0,
name:'在用'
},
{
id: 1,
name: '备用'
},
{
id: 2,
name: '停用'
},
{
id: 3,
name: '封存'
},
{
id: 4,
name: '报废'
},
{
id: 5,
name: '降级使用'
}
],
certificateTypeList: [
{
id: 0,
name: '检定证书'
},
{
id: 1,
name: '校准证书'
},
{
id: 2,
name: '检测报告'
},
{
id: 3,
name: '自校报告'
}
],
visible: false, visible: false,
dataForm: { dataForm: {
id: null, id: null,
userId:null userId: null,
remark:null,
}, },
}; };
}, },

View File

@ -21,7 +21,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item prop="validDate" :label="$t('laboratory.validDate')"> <el-form-item prop="validDate" :label="$t('laboratory.validDate')">
<el-date-picker v-model="dataForm.expectedReturnDate" type="datetime" :placeholder="$t('laboratory.validDate')" <el-date-picker v-model="dataForm.validDate" type="datetime" :placeholder="$t('laboratory.validDate')"
format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'> format='yyyy-MM-dd HH:mm:ss' valueFormat='yyyy-MM-ddTHH:mm:ss'>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
@ -66,6 +66,7 @@ export default {
code:null, code:null,
getDate: null, getDate: null,
id: null, id: null,
validDate:null,
laboratoryTesterId: null, laboratoryTesterId: null,
name: null, name: null,
qualificationDescription: null, qualificationDescription: null,

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-01-11 09:24:58 * @Date: 2023-01-11 09:24:58
* @LastEditTime: 2023-07-13 10:01:15 * @LastEditTime: 2023-07-17 16:17:07
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -9,9 +9,6 @@
<el-card shadow="never" class="aui-card--fill"> <el-card shadow="never" class="aui-card--fill">
<div class="mod-sys__user"> <div class="mod-sys__user">
<SearchBar :formConfigs="formConfig" ref="ruleForm" @headBtnClick="buttonClick"> <SearchBar :formConfigs="formConfig" ref="ruleForm" @headBtnClick="buttonClick">
<el-badge :value="6" class="item">
<el-button type="primary" size="small" @click="conditionSearch">条件搜索</el-button>
</el-badge>
</SearchBar> </SearchBar>
<base-table :table-props="tableProps" :page="listQuery.page" :limit="listQuery.limit" :table-data="tableData"> <base-table :table-props="tableProps" :page="listQuery.page" :limit="listQuery.limit" :table-data="tableData">
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="100" label="操作" :method-list="tableBtn" <method-btn v-if="tableBtn.length" slot="handleBtn" :width="100" label="操作" :method-list="tableBtn"
@ -56,11 +53,6 @@ import employeeResumeDetail from "./components/employeeResumeDetail.vue"
import basicSearch from "@/mixins/basic-search" import basicSearch from "@/mixins/basic-search"
import i18n from "@/i18n" import i18n from "@/i18n"
const tableProps = [ const tableProps = [
{
prop: 'userCode',
label: i18n.t("laboratory.userCode"),
align: 'center'
},
{ {
prop: 'userName', prop: 'userName',
label: i18n.t("laboratory.userName"), label: i18n.t("laboratory.userName"),
@ -139,13 +131,6 @@ export default {
name: "add", name: "add",
color: "success", color: "success",
plain: true plain: true
},
{
type: "button",
btnName: i18n.t('export'),
name: "export",
color: "primary",
plain: true
} }
], ],
}; };

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-12 15:06:16 * @LastEditTime: 2023-07-17 16:27:18
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -73,66 +73,66 @@ export default {
page: 1 page: 1
}, },
options: [{ options: [{
value: 0, value: '0',
label: '监控' label: '监控'
}, },
{ {
value: 1, value: '1',
label: '电芯来料检验' label: '电芯来料检验'
}, },
{ {
value: 2, value: '2',
label: 'IQC抽检' label: 'IQC抽检'
}, },
{ {
value: 3, value: '3',
label: 'IQC抽检2' label: 'IQC抽检2'
}, },
{ {
value: 4, value: '4',
label: '原料抽检' label: '原料抽检'
}, },
{ {
value: 5, value: '5',
label: '进货外观检验' label: '进货外观检验'
}, },
{ {
value: 6, value: '6',
label: '库内原料检验' label: '库内原料检验'
}, },
{ {
value: 7, value: '7',
label: '来料检验' label: '来料检验'
}, },
{ {
value: 8, value: '8',
label: '胶片' label: '胶片'
}, },
{ {
value: 9, value: '9',
label: '抽检' label: '抽检'
}, },
{ {
value: 10, value: '10',
label: '巡检' label: '巡检'
}, { }, {
value: 11, value: '11',
label: '首检' label: '首检'
}, },
{ {
value: 12, value: '12',
label: '末检' label: '末检'
}, },
{ {
value: 13, value: '13',
label: '实时监测' label: '实时监测'
}, },
{ {
value: 14, value: '14',
label: 'FQC抽检' label: 'FQC抽检'
}, },
{ {
value: 15, value: '15',
label: 'OQC抽检' label: 'OQC抽检'
}, },
], ],

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-01-11 09:24:58 * @Date: 2023-01-11 09:24:58
* @LastEditTime: 2023-07-12 14:57:28 * @LastEditTime: 2023-07-17 16:27:53
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -116,59 +116,59 @@ export default {
param: 'inspectionTypeId', param: 'inspectionTypeId',
selectOptions: [ selectOptions: [
{ {
id: 0, id: '0',
name: '监控' name: '监控'
}, },
{ {
id: 1, id: '1',
name: '电芯来料检验' name: '电芯来料检验'
}, },
{ {
id: 2, id: '2',
name: 'IQC抽检' name: 'IQC抽检'
}, },
{ {
id: 3, id: '3',
name: 'IQC抽检2' name: 'IQC抽检2'
}, },
{ {
id: 4, id: '4',
name: '原料抽检' name: '原料抽检'
}, },
{ {
id: 5, id: '5',
name: '进货外观检验' name: '进货外观检验'
}, },
{ {
id: 6, id: '6',
name: '库内原料检验' name: '库内原料检验'
}, },
{ {
id: 7, id: '7',
name: '来料检验' name: '来料检验'
}, },
{ {
id: 8, id: '8',
name: '胶片' name: '胶片'
}, },
{ {
id: 9, id: '9',
name: '抽检' name: '抽检'
}, },
{ {
id: 10, id: '10',
name: '巡检' name: '巡检'
}, },
{ {
id: 11, id: '11',
name: '首检' name: '首检'
}, },
{ {
id: 12, id: '12',
name: '末检' name: '末检'
}, },
{ {
id: 13, id: '13',
name: '实时监测' name: '实时监测'
}, },
{ {

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-04-18 09:19:02 * @Date: 2023-04-18 09:19:02
* @LastEditTime: 2023-04-18 14:24:53 * @LastEditTime: 2023-07-17 14:27:21
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -15,30 +15,44 @@
</template> </template>
<script> <script>
import i18n from "@/i18n" import i18n from "@/i18n"
import { timeFormatter } from '@/filters'
const tableProps = [ const tableProps = [
{ {
prop: "contact", prop: "stageOneName",
label: i18n.t('supplier.contact'), label: i18n.t('researchquality.stageOneName'),
}, },
{ {
prop: "contactEmail", prop: "stageOneDate",
label: i18n.t('supplier.contactEmail') label: i18n.t('researchquality.stageOneDate'),
filter: timeFormatter
}, },
{ {
prop: "contactPhone", prop: "stageTwoName",
label: i18n.t('supplier.contactPhone') label: i18n.t('researchquality.stageTwoName'),
},,
{
prop: "stageTwoDate",
label: i18n.t('researchquality.stageTwoDate'),
filter: timeFormatter
}, },
{ {
prop: "enterpriseNature", prop: "stageThreeName",
label: i18n.t('supplier.enterpriseNature') label: i18n.t('researchquality.stageThreeName'),
}, },
{ {
prop: "industry", prop: "stageThreeDate",
label: i18n.t('supplier.industry') label: i18n.t('researchquality.stageThreeDate'),
filter: timeFormatter
}, },
{ {
prop: "productService", prop: "stageFourName",
label: i18n.t('supplier.productService') label: i18n.t('researchquality.stageFourName'),
},
{
prop: "stageFourDate",
label: i18n.t('researchquality.stageFourDate'),
filter: timeFormatter
} }
]; ];
export default { export default {
@ -61,15 +75,18 @@ export default {
}, },
methods: { methods: {
showInnerTable(id) { showInnerTable(id) {
console.log(this.list)
console.log(id) console.log(id)
this.tableData = [ this.tableData = [
{ {
contact: this.injectData.contact, stageOneName: this.injectData.stageOneName,
contactEmail: this.injectData.contactEmail, stageOneDate: this.injectData.stageOneDate,
contactPhone: this.injectData.contactPhone, stageTwoName: this.injectData.stageTwoName,
enterpriseNature: this.injectData.enterpriseNature, stageTwoDate: this.injectData.stageTwoDate,
industry: this.injectData.industry, stageThreeName: this.injectData.stageThreeName,
productService: this.injectData.productService stageThreeDate: this.injectData.stageThreeDate,
stageFourName: this.injectData.stageFourName,
stageFourDate: this.injectData.stageFourDate,
} }
] ]
} }

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-02-14 15:02:26 * @Date: 2023-02-14 15:02:26
* @LastEditTime: 2023-07-14 15:55:36 * @LastEditTime: 2023-07-17 14:16:54
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -33,8 +33,8 @@
<el-input v-model="dataForm.title" :placeholder="$t('researchquality.title')"> <el-input v-model="dataForm.title" :placeholder="$t('researchquality.title')">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item prop="processList" :label="$t('researchquality.processName')"> <el-form-item prop="processListData" :label="$t('researchquality.processName')">
<el-select v-model="dataForm.processList" multiple :placeholder="$t('researchquality.processName')"> <el-select v-model="dataForm.processListData" multiple :placeholder="$t('researchquality.processName')">
<el-option v-for="item in processList" :key="item.id" :label="item.processName" :value="item.id"> <el-option v-for="item in processList" :key="item.id" :label="item.processName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
@ -45,8 +45,8 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item prop="productTypeList" :label="$t('researchquality.productTypeName')"> <el-form-item prop="productTypeListData" :label="$t('researchquality.productTypeName')">
<el-select v-model="dataForm.productTypeList" multiple :placeholder="$t('researchquality.productTypeName')"> <el-select v-model="dataForm.productTypeListData" multiple :placeholder="$t('researchquality.productTypeName')">
<el-option v-for="item in productTypeList" :key="item.id" :label="item.productTypeName" :value="item.id"> <el-option v-for="item in productTypeList" :key="item.id" :label="item.productTypeName" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
@ -184,6 +184,8 @@ export default {
stageThreeName: null, stageThreeName: null,
productTypeList: [], productTypeList: [],
processList: [], processList: [],
productTypeListData: [],
processListData: [],
stageTwoDate: null, stageTwoDate: null,
stageTwoName: null, stageTwoName: null,
temporaryChange: null, temporaryChange: null,
@ -243,17 +245,31 @@ export default {
this.getDict(); this.getDict();
}, },
methods: { methods: {
init(id, ) { init(data, ) {
this.dataForm.id = id || "" if (data) {
this.dataForm = data
let processArr = []
data.processList.forEach((item) => {
processArr.push(item.id)
})
this.dataForm.processListData = processArr
let productTypeArr = []
data.productTypeList.forEach((item) => {
productTypeArr.push(item.id)
})
this.dataForm.productTypeListData = productTypeArr
} else {
this.$refs["dataForm"].resetFields()
}
// this.dataForm.dictTypeId = dictTypeId || ""; // this.dataForm.dictTypeId = dictTypeId || "";
this.visible = true; this.visible = true;
this.$nextTick(() => { // this.$nextTick(() => {
this.$refs["dataForm"].resetFields(); // this.$refs["dataForm"].resetFields();
if (this.dataForm.id) { // if (this.dataForm.id) {
this.getInfo() // this.getInfo()
} else { // } else {
} // }
}); // });
}, },
getDict() { getDict() {
this.$http this.$http
@ -322,22 +338,23 @@ export default {
}, },
// //
dataFormSubmit() { dataFormSubmit() {
this.$refs["dataForm"].validate((valid) => { const processArr = this.dataForm.processListData.map((item) => {
if (!valid) {
return false;
}
const processArr = this.dataForm.processList.map((item) => {
return { return {
id: item id: item
} }
}) })
console.log(processArr);
this.dataForm.processList = processArr this.dataForm.processList = processArr
const productTypeArr = this.dataForm.productTypeList.map((item) => { const productTypeArr = this.dataForm.productTypeListData.map((item) => {
return { return {
id: item id: item
} }
}) })
this.dataForm.productTypeList = productTypeArr this.dataForm.productTypeList = productTypeArr
this.$refs["dataForm"].validate((valid) => {
if (!valid) {
return false;
}
this.$http[!this.dataForm.id ? "post" : "put"](this.urlOptions.submitURL, this.dataForm) this.$http[!this.dataForm.id ? "post" : "put"](this.urlOptions.submitURL, this.dataForm)
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: zhp * @Author: zhp
* @Date: 2023-04-17 14:23:17 * @Date: 2023-04-17 14:23:17
* @LastEditTime: 2023-07-14 15:02:29 * @LastEditTime: 2023-07-17 14:33:44
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
--> -->
@ -55,7 +55,7 @@ import basicSearch from "@/mixins/basic-search"
import qualityChangeSearch from "./components/qualityChangeSearch.vue" import qualityChangeSearch from "./components/qualityChangeSearch.vue"
import qualityChangeAdd from "./components/qualityChange-add.vue" import qualityChangeAdd from "./components/qualityChange-add.vue"
import InnerTable from "./components/innerTable" import InnerTable from "./components/innerTable"
import { timeFormatter, handleProcess, handleProductType } from '@/filters'
import i18n from "@/i18n" import i18n from "@/i18n"
// import supplier from '@/filters/supplier' // import supplier from '@/filters/supplier'
const tableProps = [ const tableProps = [
@ -66,6 +66,7 @@ const tableProps = [
{ {
prop: "registrationDate", prop: "registrationDate",
label: i18n.t('researchquality.registrationDate'), label: i18n.t('researchquality.registrationDate'),
filter: timeFormatter
}, },
{ {
prop: "changeSource", prop: "changeSource",
@ -75,10 +76,10 @@ const tableProps = [
prop: "owner", prop: "owner",
label: i18n.t('researchquality.owner'), label: i18n.t('researchquality.owner'),
}, },
{ // {
prop: "category", // prop: "category",
label: i18n.t('researchquality.category'), // label: i18n.t('researchquality.category'),
}, // },
{ {
prop: "title", prop: "title",
label: i18n.t('researchquality.title'), label: i18n.t('researchquality.title'),
@ -91,6 +92,16 @@ const tableProps = [
prop: "productName", prop: "productName",
label: i18n.t('researchquality.productName'), label: i18n.t('researchquality.productName'),
}, },
{
prop: "productTypeList",
label: i18n.t('researchquality.productTypeName'),
filter: handleProductType
},
{
prop: "processList",
label: i18n.t('researchquality.processName'),
filter: handleProcess
},
{ {
prop: "qualityChangeStatus", prop: "qualityChangeStatus",
label: i18n.t('researchquality.qualityChangeStatus'), label: i18n.t('researchquality.qualityChangeStatus'),
@ -134,6 +145,10 @@ export default {
limit: 999, limit: 999,
page:1 page:1
}, },
listQuery: {
limit: 50,
page: 1
},
searchOrEditTitle: "", searchOrEditTitle: "",
searchOrUpdateVisible: false, searchOrUpdateVisible: false,
productOrEditTitle: "", productOrEditTitle: "",
@ -245,10 +260,11 @@ export default {
}) })
.catch(() => { }); .catch(() => { });
} else if (val.type === 'edit') { } else if (val.type === 'edit') {
console.log(val.data)
this.addOrUpdateVisible = true this.addOrUpdateVisible = true
this.addOrEditTitle = this.$t('edit') this.addOrEditTitle = this.$t('edit')
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.addOrUpdate.init(val.data.id); this.$refs.addOrUpdate.init(val.data);
}); });
} }
}, },