Browse Source

Merge branch 'master_hella' of http://dev.ccwin-in.com:3000/sfms3.0/sfms3.0-ui into master_hella

hella_online_20240829
chenfang 7 months ago
parent
commit
61b5c2940c
  1. 14
      src/components/BasicForm/src/BasicForm.vue
  2. 2
      src/views/qms/inspectionQ1/index.vue
  3. 30
      src/views/qms/inspectionQ1/inspectionQ1.data.ts
  4. 2
      src/views/qms/inspectionQ2/index.vue
  5. 49
      src/views/qms/inspectionQ2/inspectionQ2.data.ts
  6. 2
      src/views/qms/inspectionQ3/index.vue
  7. 51
      src/views/qms/inspectionQ3/inspectionQ3.data.ts
  8. 63
      src/views/qms/inspectionRecordFirst/addForm.vue
  9. 22
      src/views/qms/inspectionRequest/inspectionRequestMain.data.ts
  10. 193
      src/views/qms/inspectionScheme/addForm.vue
  11. 271
      src/views/qms/inspectionTemplate/addForm.vue
  12. 1
      src/views/report/printBusinesstypeTemplate/printBusinesstypeTemplate.data.ts
  13. 12
      src/views/report/printClientPrinter/index.vue
  14. 29
      src/views/report/printClientPrinter/printClientPrinter.data.ts
  15. 19
      src/views/wms/basicDataManage/documentSetting/switch/index.vue
  16. 43
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts
  17. 34
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
  18. 83
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/supplierinvoiceRequestMainDifference.data.ts

14
src/components/BasicForm/src/BasicForm.vue

@ -706,20 +706,20 @@ const submitForm = async () => {
return return
} }
// //
// try { try {
const data = unref(formRef)?.formModel const data = unref(formRef)?.formModel
emit('submitForm', formType.value, data) emit('submitForm', formType.value, data)
// } finally { } finally {
// formLoading.value = false // formLoading.value = false
// } }
} else { } else {
// //
// try { try {
const data = unref(formRef)?.formModel const data = unref(formRef)?.formModel
emit('submitForm', formType.value, data) emit('submitForm', formType.value, data)
// } finally { } finally {
// formLoading.value = false // formLoading.value = false
// } }
} }
} else { } else {
// //
@ -728,7 +728,7 @@ const submitForm = async () => {
const data = unref(formRef)?.formModel const data = unref(formRef)?.formModel
emit('success', formType.value, data) emit('success', formType.value, data)
} finally { } finally {
formLoading.value = false // formLoading.value = false
} }
} }
} }

2
src/views/qms/inspectionQ1/index.vue

@ -187,6 +187,8 @@ nextTick(() => {
handleTime: new Date().getTime(), handleTime: new Date().getTime(),
claimTime: new Date().getTime(), claimTime: new Date().getTime(),
priority: '3', priority: '3',
qty: 1,
claimAmount: 1,
    })     })
  })   })
} }

30
src/views/qms/inspectionQ1/inspectionQ1.data.ts

@ -82,7 +82,15 @@ export const Q1 = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
}, },
isSearch: true isSearch: true
@ -143,7 +151,7 @@ export const Q1 = useCrudSchemas(
form: { form: {
component: 'InputNumber', component: 'InputNumber',
componentProps: { componentProps: {
min: 1, min: 0.01,
precision: 2 precision: 2
} }
} }
@ -213,9 +221,14 @@ export const Q1 = useCrudSchemas(
width: 150 width: 150
}, },
form: { form: {
component: 'InputNumber' component: 'InputNumber',
componentProps: {
min: 0.01,
precision: 2
}
} }
}, },
{ {
label: '成本中心', label: '成本中心',
field: 'costCode', field: 'costCode',
@ -225,6 +238,7 @@ export const Q1 = useCrudSchemas(
form: { form: {
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
componentProps: { componentProps: {
enterSearch:true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择成本中心代码', // 输入框占位文本 searchListPlaceholder: '请选择成本中心代码', // 输入框占位文本
searchField: 'costcentreCode', // 查询弹窗赋值字段 searchField: 'costcentreCode', // 查询弹窗赋值字段
@ -237,7 +251,15 @@ export const Q1 = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'costcentreCode',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },

2
src/views/qms/inspectionQ2/index.vue

@ -195,6 +195,8 @@ nextTick(() => {
handleTime: new Date().getTime(), handleTime: new Date().getTime(),
claimTime: new Date().getTime(), claimTime: new Date().getTime(),
priority: '3', priority: '3',
qty: 1,
claimAmount: 1,
    })     })
  })   })
} }

49
src/views/qms/inspectionQ2/inspectionQ2.data.ts

@ -77,7 +77,15 @@ export const Q2 = useCrudSchemas(
value: '0', value: '0',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'number',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
}, },
isSearch: true isSearch: true
@ -123,7 +131,15 @@ export const Q2 = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },
@ -218,7 +234,15 @@ export const Q2 = useCrudSchemas(
value: 'itemCode', value: 'itemCode',
isMainValue: true isMainValue: true
} }
] ],
verificationParams: [{
key: 'number',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },
@ -234,7 +258,7 @@ export const Q2 = useCrudSchemas(
form: { form: {
component: 'InputNumber', component: 'InputNumber',
componentProps: { componentProps: {
min: 1, min: 0.01,
precision: 2 precision: 2
} }
} }
@ -287,7 +311,11 @@ export const Q2 = useCrudSchemas(
width: 150 width: 150
}, },
form: { form: {
component: 'InputNumber' component: 'InputNumber',
componentProps: {
min: 0.01,
precision: 2
}
} }
}, },
{ {
@ -300,6 +328,7 @@ export const Q2 = useCrudSchemas(
form: { form: {
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
componentProps: { componentProps: {
enterSearch:true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择成本中心', // 输入框占位文本 searchListPlaceholder: '请选择成本中心', // 输入框占位文本
searchField: 'costcentreCode', // 查询弹窗赋值字段 searchField: 'costcentreCode', // 查询弹窗赋值字段
@ -312,7 +341,15 @@ export const Q2 = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'costcentreCode',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },

2
src/views/qms/inspectionQ3/index.vue

@ -188,6 +188,8 @@ nextTick(() => {
    basicFormRef.value.formRef.setValues({     basicFormRef.value.formRef.setValues({
handleTime: new Date().getTime(), handleTime: new Date().getTime(),
priority: '3', priority: '3',
qty: 1,
amount: 1,
    })     })
  })   })
} }

51
src/views/qms/inspectionQ3/inspectionQ3.data.ts

@ -71,7 +71,15 @@ export const Q3 = useCrudSchemas(
value: '0', value: '0',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'number',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
}, },
isSearch: true isSearch: true
@ -103,6 +111,7 @@ export const Q3 = useCrudSchemas(
width: 150 width: 150
}, },
tableForm: { tableForm: {
enterSearch: true,
isInpuFocusShow: true, isInpuFocusShow: true,
searchListPlaceholder: '请选择物料代码', // 输入框占位文本 searchListPlaceholder: '请选择物料代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段 searchField: 'code', // 查询弹窗赋值字段
@ -115,11 +124,20 @@ export const Q3 = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
}, },
form: { form: {
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
componentProps: { componentProps: {
enterSearch: true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择物料代码', // 输入框占位文本 searchListPlaceholder: '请选择物料代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段 searchField: 'code', // 查询弹窗赋值字段
@ -132,7 +150,15 @@ export const Q3 = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },
@ -148,7 +174,7 @@ export const Q3 = useCrudSchemas(
form: { form: {
component: 'InputNumber', component: 'InputNumber',
componentProps: { componentProps: {
min: 1, min: 0.01,
precision: 2 precision: 2
} }
} }
@ -254,7 +280,11 @@ export const Q3 = useCrudSchemas(
width: 150 width: 150
}, },
form: { form: {
component: 'InputNumber' component: 'InputNumber',
componentProps: {
min: 0.01,
precision: 2
}
} }
}, },
{ {
@ -267,6 +297,7 @@ export const Q3 = useCrudSchemas(
form: { form: {
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
componentProps: { componentProps: {
enterSearch: true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择成本中心', // 输入框占位文本 searchListPlaceholder: '请选择成本中心', // 输入框占位文本
searchField: 'costcentreCode', // 查询弹窗赋值字段 searchField: 'costcentreCode', // 查询弹窗赋值字段
@ -279,7 +310,15 @@ export const Q3 = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'costcentreCode',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },

63
src/views/qms/inspectionRecordFirst/addForm.vue

@ -34,7 +34,9 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="物料编码" prop="itemCode"> <el-form-item label="物料编码" prop="itemCode">
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input v-model="data.itemCode" disabled placeholder="请选择物料编码" /> <el-input v-model="data.itemCode" placeholder="请选择物料编码"
@blur="onBlur('item', ItemBasicApi.getItembasicPage)"
@focus="onFocus"/>
<el-button type="info" plain style="width: 40px" @click="opensearchItemsTable()" <el-button type="info" plain style="width: 40px" @click="opensearchItemsTable()"
><Icon icon="ep:search" /> ><Icon icon="ep:search" />
</el-button> </el-button>
@ -56,9 +58,9 @@
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="data.inspectionSchemeCode" v-model="data.inspectionSchemeCode"
disabled
placeholder="请选择检验方案" placeholder="请选择检验方案"
/> @blur="onBlur('inspectionScheme', InspectionSchemeApi.InspectionSchemePage)"
@focus="onFocus"/>
<el-button <el-button
type="info" type="info"
plain plain
@ -545,7 +547,7 @@
</div> </div>
<template #footer> <template #footer>
<ButtonBase :Butttondata="Butttondata" @button-base-click="buttonBaseClick" /> <ButtonBase :Butttondata="Butttondata" @button-base-click="buttonBaseClick" :key="count"/>
</template> </template>
</Dialog> </Dialog>
<Dialog <Dialog
@ -1465,6 +1467,59 @@ const inspectionValueInput = (item, cur) => {
} }
} }
} }
//
const onBlur = async (field, pageApi, item) => {
const dataObj = item ? item.inspectionCharacteristicsBaseVO : data.value
if (dataObj[field + 'Code']) {
const _searchCondition = {}
const filters: any[] = []
filters.push(
{
action: '==',
column: 'available',
value: 'TRUE'
},
{
column: 'code',
action: '==',
value: dataObj[field + 'Code']?.trim()
}
)
//
_searchCondition.isSearch = true
_searchCondition.filters = filters
const array = await pageApi(_searchCondition)
Butttondata = [
defaultButtons.formSaveBtn(null), //
defaultButtons.formCloseBtn(null) //
]
count.value++
const obj = array.list[0]
if (obj) {
dataObj[field + 'Name'] = obj.description
} else {
message.alert('暂无数据')
dataObj[field + 'Code'] = ''
dataObj[field + 'Name'] = ''
}
} else {
dataObj[field + 'Name'] = ''
Butttondata = [
defaultButtons.formSaveBtn(null), //
defaultButtons.formCloseBtn(null) //
]
count.value++
}
}
const count = ref(0)
//
const onFocus = () => {
Butttondata = [
defaultButtons.formSaveBtn({ disabled: true }), //
defaultButtons.formCloseBtn(null) //
]
count.value++
}
</script> </script>
<style scoped> <style scoped>
.small-title { .small-title {

22
src/views/qms/inspectionRequest/inspectionRequestMain.data.ts

@ -235,6 +235,7 @@ export const InspectionMain = useCrudSchemas(
}, },
form: { form: {
componentProps: { componentProps: {
enterSearch: true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchTitle: '供应商信息', // 查询弹窗标题 searchTitle: '供应商信息', // 查询弹窗标题
searchListPlaceholder: '请选择供应商', // 输入框占位文本 searchListPlaceholder: '请选择供应商', // 输入框占位文本
@ -248,7 +249,15 @@ export const InspectionMain = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },
@ -276,6 +285,7 @@ export const InspectionMain = useCrudSchemas(
}, },
form: { form: {
componentProps: { componentProps: {
enterSearch: true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchTitle: '物料信息', // 查询弹窗标题 searchTitle: '物料信息', // 查询弹窗标题
searchListPlaceholder: '请选择物料', // 输入框占位文本 searchListPlaceholder: '请选择物料', // 输入框占位文本
@ -289,7 +299,15 @@ export const InspectionMain = useCrudSchemas(
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} }
] ],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
}, },

193
src/views/qms/inspectionScheme/addForm.vue

@ -18,7 +18,12 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="物料编码" prop="itemCode"> <el-form-item label="物料编码" prop="itemCode">
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input v-model="data.itemCode" disabled placeholder="请选择物料编码" /> <el-input
v-model="data.itemCode"
placeholder="请选择物料编码"
@blur="onBlur('item', ItemBasicApi.getItembasicPage)"
@focus="onFocus"
/>
<el-button <el-button
type="info" type="info"
plain plain
@ -41,6 +46,13 @@
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="物料名称" prop="itemName">
<div style="display: flex; width: 100%">
<el-input v-model="data.itemName" placeholder="请选择物料" disabled />
</div>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="描述" prop="description"> <el-form-item label="描述" prop="description">
<el-input v-model="data.description" placeholder="请填写描述" /> <el-input v-model="data.description" placeholder="请填写描述" />
@ -53,28 +65,6 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="检验类型" prop="inspectionType"> <el-form-item label="检验类型" prop="inspectionType">
<!-- <div style="display: flex; width: 100%">
<el-input v-model="data.testTypeName" disabled placeholder="请选择检验类型" />
<el-button
type="info"
plain
style="width: 40px"
@click="
opensearchTable(
'testTypeCode',
null,
'检验类型',
SamplingProcess.allSchemas,
SamplingProcessApi.getSamplingProcessPage,
null,
false,
'main',
null
)
"
><Icon icon="ep:search" />
</el-button>
</div> -->
<el-select v-model="data.inspectionType" placeholder="请选择检验类型"> <el-select v-model="data.inspectionType" placeholder="请选择检验类型">
<el-option <el-option
v-for="dict in getStrDictOptions(DICT_TYPE.INSPECTION_TYPE)" v-for="dict in getStrDictOptions(DICT_TYPE.INSPECTION_TYPE)"
@ -89,9 +79,12 @@
<el-form-item label="检验模板" prop="programmeTemplateCode"> <el-form-item label="检验模板" prop="programmeTemplateCode">
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="data.programmeTemplateName" v-model="data.programmeTemplateCode"
disabled
placeholder="请选择检验模板" placeholder="请选择检验模板"
@blur="
onBlur('programmeTemplate', InspectionTemplateApi.inspectionTemplatePage)
"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -122,12 +115,24 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="动态修改规则" prop="dynamicUpdateCode"> <el-form-item label="检验模板描述" prop="programmeTemplateName">
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="data.dynamicUpdateName" v-model="data.programmeTemplateName"
placeholder="请选择检验模板"
disabled disabled
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="动态修改规则" prop="dynamicUpdateCode">
<div style="display: flex; width: 100%">
<el-input
v-model="data.dynamicUpdateCode"
placeholder="请选择动态修改规则" placeholder="请选择动态修改规则"
@blur="onBlur('dynamicUpdate', DynamicRuleApi.getDynamicRulePage)"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -157,6 +162,17 @@
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="动态修改规则描述" prop="dynamicUpdateName">
<div style="display: flex; width: 100%">
<el-input
v-model="data.dynamicUpdateName"
placeholder="请选择动态修改规则描述"
disabled
/>
</div>
</el-form-item>
</el-col>
<!-- <el-col :span="12"> <!-- <el-col :span="12">
<el-form-item label="拆分规则" prop="splitRule"> <el-form-item label="拆分规则" prop="splitRule">
<el-select v-model="data.splitRule" placeholder="请选择拆分规则"> <el-select v-model="data.splitRule" placeholder="请选择拆分规则">
@ -344,9 +360,16 @@
> >
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodName" v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodCode"
disabled
placeholder="请选择检验方法" placeholder="请选择检验方法"
@blur="
onBlur(
'inspectionMethod',
InspectionMethodApi.getInspectionMethodPage,
item
)
"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -376,6 +399,20 @@
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item
label="检验方法描述"
prop="inspectionCharacteristicsBaseVO.inspectionMethodName"
>
<div style="display: flex; width: 100%">
<el-input
v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodName"
disabled
placeholder="请选择检验方法"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item
label="采样过程" label="采样过程"
@ -383,9 +420,12 @@
> >
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="item.inspectionCharacteristicsBaseVO.samplingProcessName" v-model="item.inspectionCharacteristicsBaseVO.samplingProcessCode"
disabled
placeholder="请选择采样过程" placeholder="请选择采样过程"
@blur="
onBlur('samplingProcess', SamplingProcessApi.getSamplingProcessPage, item)
"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -415,6 +455,20 @@
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item
label="采样过程描述"
prop="inspectionCharacteristicsBaseVO.inspectionMethodName"
>
<div style="display: flex; width: 100%">
<el-input
v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodName"
disabled
placeholder="请选择采样过程描述"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item
label="是否允许修改特征值" label="是否允许修改特征值"
@ -586,8 +640,9 @@
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="item.inspectionCharacteristicsBaseVO.quantifyQuantifyCode" v-model="item.inspectionCharacteristicsBaseVO.quantifyQuantifyCode"
disabled
placeholder="请选择选定集" placeholder="请选择选定集"
@blur="onBlur('quantifyQuantify', SelectedSetApi.getSelectedSetPage, item)"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -618,13 +673,27 @@
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 1">
<el-form-item
label="选定集描述"
prop="inspectionCharacteristicsBaseVO.quantifyQuantifyName"
>
<div style="display: flex; width: 100%">
<el-input
v-model="item.inspectionCharacteristicsBaseVO.quantifyQuantifyName"
disabled
placeholder="请选择选定集描述"
/>
</div>
</el-form-item>
</el-col>
</el-row> </el-row>
</el-form> </el-form>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
<template #footer> <template #footer>
<ButtonBase :Butttondata="Butttondata" @button-base-click="buttonBaseClick" /> <ButtonBase :Butttondata="Butttondata" @button-base-click="buttonBaseClick" :key="count" />
</template> </template>
</Dialog> </Dialog>
<Dialog <Dialog
@ -861,7 +930,7 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
quantifyUom: item.inspectionCharacteristicsBaseVO.quantifyUom, quantifyUom: item.inspectionCharacteristicsBaseVO.quantifyUom,
resultEntryMethod: item.inspectionCharacteristicsBaseVO.resultEntryMethod, resultEntryMethod: item.inspectionCharacteristicsBaseVO.resultEntryMethod,
samplingProcessCode: item.inspectionCharacteristicsBaseVO.samplingProcessCode, samplingProcessCode: item.inspectionCharacteristicsBaseVO.samplingProcessCode,
samplingProcessName:item.inspectionCharacteristicsBaseVO.samplingProcessName, samplingProcessName: item.inspectionCharacteristicsBaseVO.samplingProcessName
} }
} }
@ -925,9 +994,6 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
} }
data.value.process = list data.value.process = list
} }
} else { } else {
data.value = { data.value = {
code: '', code: '',
@ -1382,6 +1448,59 @@ const changeIsTarget = (e, item) => {
rules.value['inspectionCharacteristicsBaseVO.quantifyTarget'][0].required = false rules.value['inspectionCharacteristicsBaseVO.quantifyTarget'][0].required = false
} }
} }
//
const onBlur = async (field, pageApi, item) => {
const dataObj = item ? item.inspectionCharacteristicsBaseVO : data.value
if (dataObj[field + 'Code']) {
const _searchCondition = {}
const filters: any[] = []
filters.push(
{
action: '==',
column: 'available',
value: 'TRUE'
},
{
column: 'code',
action: '==',
value: dataObj[field + 'Code']?.trim()
}
)
//
_searchCondition.isSearch = true
_searchCondition.filters = filters
const array = await pageApi(_searchCondition)
Butttondata = [
defaultButtons.formSaveBtn(null), //
defaultButtons.formCloseBtn(null) //
]
count.value++
const obj = array.list[0]
if (obj) {
dataObj[field + 'Name'] = obj.description
} else {
message.alert('暂无数据')
dataObj[field + 'Code'] = ''
dataObj[field + 'Name'] = ''
}
} else {
dataObj[field + 'Name'] = ''
Butttondata = [
defaultButtons.formSaveBtn(null), //
defaultButtons.formCloseBtn(null) //
]
count.value++
}
}
const count = ref(0)
//
const onFocus = () => {
Butttondata = [
defaultButtons.formSaveBtn({ disabled: true }), //
defaultButtons.formCloseBtn(null) //
]
count.value++
}
</script> </script>
<style scoped> <style scoped>
.small-title { .small-title {

271
src/views/qms/inspectionTemplate/addForm.vue

@ -26,15 +26,13 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="动态修改规则编码" prop="dynamicUpdateCode">
label="动态修改规则编码"
prop="dynamicUpdateCode"
>
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="data.dynamicUpdateCode" v-model="data.dynamicUpdateCode"
placeholder="请选择动态修改规则编码" placeholder="请选择动态修改规则编码"
@blur='dynamicUpdateCodeBlur' @blur="onBlur('dynamicUpdate', DynamicRuleApi.getDynamicRulePage)"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -65,10 +63,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="动态修改规则描述" prop="dynamicUpdateName">
label="动态修改规则描述"
prop="dynamicUpdateName"
>
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="data.dynamicUpdateName" v-model="data.dynamicUpdateName"
@ -97,7 +92,6 @@
> >
<template #label> <template #label>
<span class="custom-tabs-label" style="display: flex; align-items: center"> <span class="custom-tabs-label" style="display: flex; align-items: center">
<span>{{ item.description }}</span> <span>{{ item.description }}</span>
<Icon <Icon
icon="ep:document-copy" icon="ep:document-copy"
@ -150,7 +144,6 @@
/> />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row> </el-row>
</el-form> </el-form>
<div class="small-title">检验特性</div> <div class="small-title">检验特性</div>
@ -179,8 +172,14 @@
<el-input <el-input
v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodCode" v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodCode"
placeholder="请选择检验方法编码" placeholder="请选择检验方法编码"
disabled @blur="
@blur='inspectionMethodCodeBlur(item)' onBlur(
'inspectionMethod',
InspectionMethodApi.getInspectionMethodPage,
item
)
"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -219,7 +218,7 @@
<el-input <el-input
v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodName" v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodName"
disabled disabled
placeholder="请选择检验方法编码" placeholder="请选择检验方法"
/> />
</div> </div>
</el-form-item> </el-form-item>
@ -231,9 +230,12 @@
> >
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="item.inspectionCharacteristicsBaseVO.samplingProcessName" v-model="item.inspectionCharacteristicsBaseVO.samplingProcessCode"
disabled
placeholder="请选择采样过程" placeholder="请选择采样过程"
@blur="
onBlur('samplingProcess', SamplingProcessApi.getSamplingProcessPage, item)
"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -263,7 +265,20 @@
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item
label="采样过程描述"
prop="inspectionCharacteristicsBaseVO.inspectionMethodName"
>
<div style="display: flex; width: 100%">
<el-input
v-model="item.inspectionCharacteristicsBaseVO.inspectionMethodName"
disabled
placeholder="请选择采样过程描述"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item
label="是否允许修改特征值" label="是否允许修改特征值"
@ -322,9 +337,7 @@
placeholder="请选择结果录入方式" placeholder="请选择结果录入方式"
> >
<el-option <el-option
v-for="dict in getStrDictOptions( v-for="dict in getStrDictOptions(DICT_TYPE.UOM)"
DICT_TYPE.UOM
)"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
@ -338,8 +351,10 @@
prop="inspectionCharacteristicsBaseVO.quantifyDecimal" prop="inspectionCharacteristicsBaseVO.quantifyDecimal"
v-if="item.inspectionCharacteristicsBaseVO.featureType == 0" v-if="item.inspectionCharacteristicsBaseVO.featureType == 0"
> >
<el-input v-model="item.inspectionCharacteristicsBaseVO.quantifyDecimal" <el-input
type="number"/> v-model="item.inspectionCharacteristicsBaseVO.quantifyDecimal"
type="number"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 0"> <el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 0">
@ -347,7 +362,10 @@
label="是否设定上限" label="是否设定上限"
prop="inspectionCharacteristicsBaseVO.quantifyIsCapping" prop="inspectionCharacteristicsBaseVO.quantifyIsCapping"
> >
<el-switch v-model="item.inspectionCharacteristicsBaseVO.quantifyIsCapping" @change="changeIsCapping($event,item)"/> <el-switch
v-model="item.inspectionCharacteristicsBaseVO.quantifyIsCapping"
@change="changeIsCapping($event, item)"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -356,56 +374,80 @@
prop="inspectionCharacteristicsBaseVO.quantifyIsLowlimit" prop="inspectionCharacteristicsBaseVO.quantifyIsLowlimit"
label="是否设定下限" label="是否设定下限"
> >
<el-switch v-model="item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit" @change="changeLowlimit($event,item)"/> <el-switch
v-model="item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit"
@change="changeLowlimit($event, item)"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 0">
<el-form-item <el-form-item
prop="inspectionCharacteristicsBaseVO.quantifyIsTarget" prop="inspectionCharacteristicsBaseVO.quantifyIsTarget"
label="是否设定目标值" label="是否设定目标值"
v-if="item.inspectionCharacteristicsBaseVO.featureType == 0"
> >
<el-switch v-model="item.inspectionCharacteristicsBaseVO.quantifyIsTarget" @change="changeIsTarget($event,item)" /> <el-switch
v-model="item.inspectionCharacteristicsBaseVO.quantifyIsTarget"
@change="changeIsTarget($event, item)"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 0 && item.inspectionCharacteristicsBaseVO. quantifyIsCapping"> <el-col
<el-form-item :span="12"
label="上限值" v-if="
prop="inspectionCharacteristicsBaseVO.quantifyCapping" item.inspectionCharacteristicsBaseVO.featureType == 0 &&
item.inspectionCharacteristicsBaseVO.quantifyIsCapping
"
> >
<el-input v-model="item.inspectionCharacteristicsBaseVO.quantifyCapping" type="number"/> <el-form-item label="上限值" prop="inspectionCharacteristicsBaseVO.quantifyCapping">
<el-input
v-model="item.inspectionCharacteristicsBaseVO.quantifyCapping"
type="number"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 0 && item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit"> <el-col
:span="12"
v-if="
item.inspectionCharacteristicsBaseVO.featureType == 0 &&
item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit
"
>
<el-form-item <el-form-item
label="下限值" label="下限值"
prop="inspectionCharacteristicsBaseVO.quantifyLowlimit" prop="inspectionCharacteristicsBaseVO.quantifyLowlimit"
> >
<el-input v-model="item.inspectionCharacteristicsBaseVO.quantifyLowlimit" type="number"/> <el-input
v-model="item.inspectionCharacteristicsBaseVO.quantifyLowlimit"
type="number"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 0 && item.inspectionCharacteristicsBaseVO.quantifyIsTarget"> <el-col
<el-form-item :span="12"
label="目标值" v-if="
prop="inspectionCharacteristicsBaseVO.quantifyTarget" item.inspectionCharacteristicsBaseVO.featureType == 0 &&
item.inspectionCharacteristicsBaseVO.quantifyIsTarget
"
> >
<el-input v-model="item.inspectionCharacteristicsBaseVO.quantifyTarget" type="number"/> <el-form-item label="目标值" prop="inspectionCharacteristicsBaseVO.quantifyTarget">
<el-input
v-model="item.inspectionCharacteristicsBaseVO.quantifyTarget"
type="number"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 1">
<el-form-item <el-form-item
label="选定集" label="选定集"
prop="inspectionCharacteristicsBaseVO.quantifyQuantifyCode" prop="inspectionCharacteristicsBaseVO.quantifyQuantifyCode"
v-if="item.inspectionCharacteristicsBaseVO.featureType == 1"
> >
<div style="display: flex; width: 100%"> <div style="display: flex; width: 100%">
<el-input <el-input
v-model="item.inspectionCharacteristicsBaseVO.quantifyQuantifyName" v-model="item.inspectionCharacteristicsBaseVO.quantifyQuantifyCode"
disabled
placeholder="请选择选定集" placeholder="请选择选定集"
@blur="onBlur('quantifyQuantify', SelectedSetApi.getSelectedSetPage, item)"
@focus="onFocus"
/> />
<el-button <el-button
type="info" type="info"
@ -435,13 +477,31 @@
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="item.inspectionCharacteristicsBaseVO.featureType == 1">
<el-form-item
label="选定集描述"
prop="inspectionCharacteristicsBaseVO.quantifyQuantifyName"
>
<div style="display: flex; width: 100%">
<el-input
v-model="item.inspectionCharacteristicsBaseVO.quantifyQuantifyName"
disabled
placeholder="请选择选定集描述"
/>
</div>
</el-form-item>
</el-col>
</el-row> </el-row>
</el-form> </el-form>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
<template #footer> <template #footer>
<ButtonBase :Butttondata="Butttondata" @button-base-click="buttonBaseClick" /> <ButtonBase
:Butttondata="Butttondata"
@button-base-click="buttonBaseClick"
:key="count"
/>
</template> </template>
</Dialog> </Dialog>
<Dialog title="修改名称" v-model="dialogVisibleName" width="500px" :close-on-click-modal="false"> <Dialog title="修改名称" v-model="dialogVisibleName" width="500px" :close-on-click-modal="false">
@ -476,7 +536,12 @@ import * as DynamicRuleApi from '@/api/qms/dynamicRule' //动态修改规则
import { DynamicRule } from '@/views/qms/dynamicRule/dynamicRule.data' // import { DynamicRule } from '@/views/qms/dynamicRule/dynamicRule.data' //
import * as SelectedSetApi from '@/api/qms/selectedSet' // import * as SelectedSetApi from '@/api/qms/selectedSet' //
import { SelectedSet } from '@/views/qms/selectedSet/selectedSet.data' // import { SelectedSet } from '@/views/qms/selectedSet/selectedSet.data' //
import { validateInteger,validateTwoNum,validateMaxNumber5,validateNumSix } from '@/utils/validator' import {
validateInteger,
validateTwoNum,
validateMaxNumber5,
validateNumSix
} from '@/utils/validator'
const message = useMessage() // const message = useMessage() //
const props = defineProps({ const props = defineProps({
@ -571,13 +636,13 @@ const rules = ref({
{ required: true, message: '请选择特征类型', trigger: ['blur', 'change'] } { required: true, message: '请选择特征类型', trigger: ['blur', 'change'] }
], ],
'inspectionCharacteristicsBaseVO.quantifyTarget': [ 'inspectionCharacteristicsBaseVO.quantifyTarget': [
{ required: true, message: '请输入目标值', trigger: 'blur' }, { required: true, message: '请输入目标值', trigger: 'blur' }
], ],
'inspectionCharacteristicsBaseVO.quantifyCapping': [ 'inspectionCharacteristicsBaseVO.quantifyCapping': [
{ required: true, message: '请输入上限值', trigger: 'blur' }, { required: true, message: '请输入上限值', trigger: 'blur' }
], ],
'inspectionCharacteristicsBaseVO.quantifyLowlimit': [ 'inspectionCharacteristicsBaseVO.quantifyLowlimit': [
{ required: true, message: '请输入下限值', trigger: 'blur' }, { required: true, message: '请输入下限值', trigger: 'blur' }
], ],
'inspectionCharacteristicsBaseVO.quantifyUom': [ 'inspectionCharacteristicsBaseVO.quantifyUom': [
{ required: true, message: '请选择计量单位', trigger: 'blur' } { required: true, message: '请选择计量单位', trigger: 'blur' }
@ -592,7 +657,6 @@ const rules = ref({
] ]
}) })
/** 打开弹窗 */ /** 打开弹窗 */
let tabIndex = 1 let tabIndex = 1
const open = async (type: string, row?: any, masterParmas?: any, titleName?: any) => { const open = async (type: string, row?: any, masterParmas?: any, titleName?: any) => {
@ -644,7 +708,7 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
quantifyUom: item.inspectionCharacteristicsBaseVO.quantifyUom, quantifyUom: item.inspectionCharacteristicsBaseVO.quantifyUom,
resultEntryMethod: item.inspectionCharacteristicsBaseVO.resultEntryMethod, resultEntryMethod: item.inspectionCharacteristicsBaseVO.resultEntryMethod,
samplingProcessCode: item.inspectionCharacteristicsBaseVO.samplingProcessCode, samplingProcessCode: item.inspectionCharacteristicsBaseVO.samplingProcessCode,
samplingProcessName:item.inspectionCharacteristicsBaseVO.samplingProcessName, samplingProcessName: item.inspectionCharacteristicsBaseVO.samplingProcessName
} }
} }
@ -667,7 +731,6 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
arr.push(obj) arr.push(obj)
}) })
data.value.process = arr data.value.process = arr
} else { } else {
data.value = JSON.parse(JSON.stringify(row)) data.value = JSON.parse(JSON.stringify(row))
data.value.version = String(data.value.version) data.value.version = String(data.value.version)
@ -694,7 +757,6 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
}) })
data.value.process = list data.value.process = list
} }
} else { } else {
data.value = { data.value = {
code: '', code: '',
@ -786,6 +848,7 @@ const buttonBaseClick1 = (val) => {
} }
} }
const buttonBaseClick = (val) => { const buttonBaseClick = (val) => {
console.log(val)
// //
if (val == 'save') { if (val == 'save') {
submitForm() submitForm()
@ -813,10 +876,7 @@ const validateForm = (formRef) => {
return array.some((item, index) => { return array.some((item, index) => {
return ( return (
array.findIndex((v, i) => { array.findIndex((v, i) => {
return ( return i !== index && JSON.stringify(v.sequenceCode) === JSON.stringify(item.sequenceCode)
i !== index &&
JSON.stringify(v.sequenceCode) === JSON.stringify(item.sequenceCode)
)
}) !== -1 }) !== -1
) )
}) })
@ -824,7 +884,6 @@ const validateForm = (formRef) => {
const submitForm = async () => { const submitForm = async () => {
try { try {
// //
await validateForm(formProcessRef.value) await validateForm(formProcessRef.value)
await formMainRef.value.validate() await formMainRef.value.validate()
@ -862,9 +921,15 @@ const submitForm = async () => {
console.log(data.value.process) console.log(data.value.process)
const arr1 = data.value.process.filter( const arr1 = data.value.process.filter(
(item) => (item) =>
((item.inspectionCharacteristicsBaseVO.quantifyIsCapping && (String(item.inspectionCharacteristicsBaseVO.quantifyCapping).split('.')[1]?.length>Number(item.inspectionCharacteristicsBaseVO.quantifyDecimal)))|| ((item.inspectionCharacteristicsBaseVO.quantifyIsCapping &&
(item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit && (String(item.inspectionCharacteristicsBaseVO.quantifyLowlimit).split('.')[1]?.length>Number(item.inspectionCharacteristicsBaseVO.quantifyDecimal)))|| String(item.inspectionCharacteristicsBaseVO.quantifyCapping).split('.')[1]?.length >
(item.inspectionCharacteristicsBaseVO.quantifyIsTarget && (String(item.inspectionCharacteristicsBaseVO.quantifyTarget).split('.')[1]?.length>Number(item.inspectionCharacteristicsBaseVO.quantifyDecimal)))) && Number(item.inspectionCharacteristicsBaseVO.quantifyDecimal)) ||
(item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit &&
String(item.inspectionCharacteristicsBaseVO.quantifyLowlimit).split('.')[1]?.length >
Number(item.inspectionCharacteristicsBaseVO.quantifyDecimal)) ||
(item.inspectionCharacteristicsBaseVO.quantifyIsTarget &&
String(item.inspectionCharacteristicsBaseVO.quantifyTarget).split('.')[1]?.length >
Number(item.inspectionCharacteristicsBaseVO.quantifyDecimal))) &&
item.inspectionCharacteristicsBaseVO.featureType == 0 item.inspectionCharacteristicsBaseVO.featureType == 0
) )
if (arr1 && arr1.length > 0) { if (arr1 && arr1.length > 0) {
@ -873,19 +938,38 @@ const submitForm = async () => {
return return
} }
// //
const arr2 = data.value.process.filter( const arr2 = data.value.process.filter((item) => {
(item) =>
{
// , // ,
return (item.inspectionCharacteristicsBaseVO.quantifyIsCapping && item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit && !item.inspectionCharacteristicsBaseVO.quantifyIsTarget && (parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit)))|| return (
(item.inspectionCharacteristicsBaseVO.quantifyIsCapping &&
item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit &&
!item.inspectionCharacteristicsBaseVO.quantifyIsTarget &&
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit)) ||
// //
(item.inspectionCharacteristicsBaseVO.quantifyIsCapping && item.inspectionCharacteristicsBaseVO.quantifyIsTarget && !item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit && (parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget)))|| (item.inspectionCharacteristicsBaseVO.quantifyIsCapping &&
item.inspectionCharacteristicsBaseVO.quantifyIsTarget &&
!item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit &&
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget)) ||
// //
( item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit && item.inspectionCharacteristicsBaseVO.quantifyIsTarget&&!item.inspectionCharacteristicsBaseVO.quantifyIsCapping && (parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit) >= parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget)))|| (item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit &&
item.inspectionCharacteristicsBaseVO.quantifyIsTarget &&
!item.inspectionCharacteristicsBaseVO.quantifyIsCapping &&
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit) >=
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget)) ||
// //
(item.inspectionCharacteristicsBaseVO.quantifyIsCapping && item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit && item.inspectionCharacteristicsBaseVO.quantifyIsTarget && ((parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit) )||(parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget))||(parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit) >= parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget)))) (item.inspectionCharacteristicsBaseVO.quantifyIsCapping &&
} item.inspectionCharacteristicsBaseVO.quantifyIsLowlimit &&
item.inspectionCharacteristicsBaseVO.quantifyIsTarget &&
(parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit) ||
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyCapping) <=
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget) ||
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyLowlimit) >=
parseFloat(item.inspectionCharacteristicsBaseVO.quantifyTarget)))
) )
})
console.log(99, arr2) console.log(99, arr2)
if (arr2 && arr2.length > 0) { if (arr2 && arr2.length > 0) {
const str = arr2.map((item) => item.description).join(',') const str = arr2.map((item) => item.description).join(',')
@ -1025,7 +1109,6 @@ const searchTableSuccess = (formField, searchField, val, type, row) => {
data.value.dynamicUpdateName = val[0].description data.value.dynamicUpdateName = val[0].description
} }
} }
} }
// //
const changeIsCapping = (e, item) => { const changeIsCapping = (e, item) => {
@ -1035,7 +1118,6 @@ const changeIsCapping = (e,item) => {
} else { } else {
rules.value['inspectionCharacteristicsBaseVO.quantifyCapping'][0].required = false rules.value['inspectionCharacteristicsBaseVO.quantifyCapping'][0].required = false
} }
} }
// //
const changeLowlimit = (e, item) => { const changeLowlimit = (e, item) => {
@ -1061,15 +1143,19 @@ const copy = (item)=>{
newItem.name = data.value.process[data.value.process.length - 1].name + 1 newItem.name = data.value.process[data.value.process.length - 1].name + 1
newItem.code = '' newItem.code = ''
newItem.id = '' newItem.id = ''
newItem.sequenceCode =data.value?.process[data.value?.process?.length-1]?.sequenceCode? parseInt(data.value.process[data.value.process.length-1].sequenceCode) + 1 : '' newItem.sequenceCode = data.value?.process[data.value?.process?.length - 1]?.sequenceCode
? parseInt(data.value.process[data.value.process.length - 1].sequenceCode) + 1
: ''
newItem.inspectionCharacteristicsBaseVO.code = '' newItem.inspectionCharacteristicsBaseVO.code = ''
newItem.inspectionCharacteristicsBaseVO.id = '' newItem.inspectionCharacteristicsBaseVO.id = ''
newItem.inspectionCharacteristicsBaseVO.concurrencyStamp = 1 newItem.inspectionCharacteristicsBaseVO.concurrencyStamp = 1
data.value.process.push(newItem) data.value.process.push(newItem)
editableTabsValue.value = newItem.name editableTabsValue.value = newItem.name
} }
// //
const dynamicUpdateCodeBlur = async () => { const onBlur = async (field, pageApi, item) => {
const dataObj = item ? item.inspectionCharacteristicsBaseVO : data.value
if (dataObj[field + 'Code']) {
const _searchCondition = {} const _searchCondition = {}
const filters: any[] = [] const filters: any[] = []
filters.push( filters.push(
@ -1081,27 +1167,44 @@ const dynamicUpdateCodeBlur = async () => {
{ {
column: 'code', column: 'code',
action: '==', action: '==',
value: data.value?.dynamicUpdateCode?.trim() value: dataObj[field + 'Code']?.trim()
} }
) )
// //
_searchCondition.isSearch = true _searchCondition.isSearch = true
_searchCondition.filters = filters _searchCondition.filters = filters
const array = await DynamicRuleApi.getDynamicRulePage(_searchCondition) const array = await pageApi(_searchCondition)
Butttondata = [
defaultButtons.formSaveBtn(null), //
defaultButtons.formCloseBtn(null) //
]
count.value++
const obj = array.list[0] const obj = array.list[0]
if (obj) { if (obj) {
data.value.dynamicUpdateName = obj.description dataObj[field + 'Name'] = obj.description
} else { } else {
message.alert('暂无数据') message.alert('暂无数据')
data.value.dynamicUpdateCode ='' dataObj[field + 'Code'] = ''
data.value.dynamicUpdateName ='' dataObj[field + 'Name'] = ''
}
} else {
dataObj[field + 'Name'] = ''
Butttondata = [
defaultButtons.formSaveBtn(null), //
defaultButtons.formCloseBtn(null) //
]
count.value++
} }
} }
// const count = ref(0)
const inspectionMethodCodeBlur = async () => { //
const onFocus = () => {
Butttondata = [
defaultButtons.formSaveBtn({ disabled: true }), //
defaultButtons.formCloseBtn(null) //
]
count.value++
} }
</script> </script>
<style scoped> <style scoped>
.small-title { .small-title {

1
src/views/report/printBusinesstypeTemplate/printBusinesstypeTemplate.data.ts

@ -64,7 +64,6 @@ export const PrintBusinesstypeTemplate = useCrudSchemas(reactive<CrudSchema[]>([
label: '备注', label: '备注',
field: 'remark', field: 'remark',
sort: 'custom', sort: 'custom',
isSearch: true,
}, },
{ {
label: '操作', label: '操作',

12
src/views/report/printClientPrinter/index.vue

@ -99,9 +99,9 @@ const { getList, setSearchParams } = tableMethods
// //
const HeadButttondata = [ const HeadButttondata = [
defaultButtons.defaultAddBtn({hasPermi:'wms:printClientPrinter:create'}), // defaultButtons.defaultAddBtn({hasPermi:'wms:print-client-printer:create'}), //
defaultButtons.defaultImportBtn({hasPermi:'wms:printClientPrinter:import'}), // defaultButtons.defaultImportBtn({hasPermi:'wms:print-client-printer:import'}), //
defaultButtons.defaultExportBtn({hasPermi:'wms:printClientPrinter:export'}), // defaultButtons.defaultExportBtn({hasPermi:'wms:print-client-printer:export'}), //
defaultButtons.defaultFreshBtn(null), // defaultButtons.defaultFreshBtn(null), //
defaultButtons.defaultFilterBtn(null), // defaultButtons.defaultFilterBtn(null), //
defaultButtons.defaultSetBtn(null), // defaultButtons.defaultSetBtn(null), //
@ -133,8 +133,8 @@ const buttonBaseClick = (val, item) => {
// - // -
const butttondata = [ const butttondata = [
defaultButtons.mainListEditBtn({hasPermi:'wms:printClientPrinter:update'}), // defaultButtons.mainListEditBtn({hasPermi:'wms:print-client-printer:update'}), //
defaultButtons.mainListDeleteBtn({hasPermi:'wms:printClientPrinter:delete'}), // defaultButtons.mainListDeleteBtn({hasPermi:'wms:print-client-printer:delete'}), //
] ]
// - // -
@ -165,6 +165,7 @@ const formsSuccess = async (formType,data) => {
} }
if(data.activeTime==0)data.activeTime = null; if(data.activeTime==0)data.activeTime = null;
if(data.expireTime==0)data.expireTime = null; if(data.expireTime==0)data.expireTime = null;
basicFormRef.value.formLoading = true
if (formType === 'create') { if (formType === 'create') {
await PrintClientPrinterApi.createPrintClientPrinter(data) await PrintClientPrinterApi.createPrintClientPrinter(data)
message.success(t('common.createSuccess')) message.success(t('common.createSuccess'))
@ -172,6 +173,7 @@ const formsSuccess = async (formType,data) => {
await PrintClientPrinterApi.updatePrintClientPrinter(data) await PrintClientPrinterApi.updatePrintClientPrinter(data)
message.success(t('common.updateSuccess')) message.success(t('common.updateSuccess'))
} }
basicFormRef.value.formLoading = false
basicFormRef.value.dialogVisible = false basicFormRef.value.dialogVisible = false
getList() getList()
} }

29
src/views/report/printClientPrinter/printClientPrinter.data.ts

@ -18,18 +18,45 @@ export const PrintClientPrinter = useCrudSchemas(reactive<CrudSchema[]>([
field: 'clientCode', field: 'clientCode',
sort: 'custom', sort: 'custom',
isSearch: true, isSearch: true,
form: {
component: 'Select',
componentProps: {
options: [{
name:1111,
id:111
}],
optionsAlias: {
labelField: 'name',
valueField: 'id'
},
filterable: true,
}
}
}, },
{ {
label: '打印机名称', label: '打印机名称',
field: 'printerName', field: 'printerName',
sort: 'custom', sort: 'custom',
isSearch: true, isSearch: true,
form: {
component: 'Select',
componentProps: {
options: [{
name:2222,
id:222
}],
optionsAlias: {
labelField: 'name',
valueField: 'id'
},
filterable: true,
}
}
}, },
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
sort: 'custom', sort: 'custom',
isSearch: true,
}, },
{ {
label: '操作', label: '操作',

19
src/views/wms/basicDataManage/documentSetting/switch/index.vue

@ -32,8 +32,8 @@
<span>{{ row.code }}</span> <span>{{ row.code }}</span>
</el-button> </el-button>
</template> </template>
<template #action="{ row }"> <template #action="{ row, $index }">
<ButtonBase :Butttondata="butttondata" @button-base-click="buttonTableClick($event,row)" /> <ButtonBase :Butttondata="butttondata(row, $index)" @button-base-click="buttonTableClick($event,row)" />
</template> </template>
</Table> </Table>
</ContentWrap> </ContentWrap>
@ -129,10 +129,21 @@ const buttonBaseClick = (val, item) => {
} }
// - // -
const butttondata = [
defaultButtons.mainListEditBtn(null), // const butttondata = (row, $index)=>{
const hiddenArray = ['CreatePutawayRequestAfterInspectRecordCreated',
'CreateBackflushRecordAfterProductreceiptRecordCreated',
'CreateProductputawayRequestAfterProductreceiptRecordCreated',
'ExecuteProductreceiptJobPredictIsCreatePutawayRequest',
'CreatePurchasePlanAfterDiscretePurchaseOrderPublished',
'ExemptItemCreatePutawayRequestAfterPurchaseReceiptRecordCreated',
'CreatePurchaseReceiptRequestAfterSupplierDeliverRecordCreated'
]
return [
defaultButtons.mainListEditBtn({hide:hiddenArray.indexOf(row.code)>-1}), //
// defaultButtons.mainListDeleteBtn({hasPermi:'wms:switch:delete'}), // // defaultButtons.mainListDeleteBtn({hasPermi:'wms:switch:delete'}), //
] ]
}
// - // -
const buttonTableClick = async (val, row) => { const buttonTableClick = async (val, row) => {

43
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts

@ -602,8 +602,8 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
}, },
{ {
label: '创建时间', label: '供应商创建时间',
field: 'createTime', field: 'requestTime',
isTable: true, isTable: true,
sortTableDefault:1001, sortTableDefault:1001,
formatter: dateFormatter, formatter: dateFormatter,
@ -879,10 +879,13 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '供应商创建日期', label: '供应商创建时间',
field: 'supplierDate', field: 'requestTime',
sort: 'custom', sort: 'custom',
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1160,19 +1163,19 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
{ // {
label: '创建时间', // label: '创建时间',
field: 'createTime', // field: 'createTime',
formatter: dateFormatter, // formatter: dateFormatter,
sortTableDefault:1000, // sortTableDefault:1000,
detail: { // detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss' // dateFormat: 'YYYY-MM-DD HH:mm:ss'
}, // },
isForm: false, // isForm: false,
isTable: false, // isTable: false,
isSearch: false, // isSearch: false,
isDetail: true, // isDetail: true,
} // }
])) ]))
//表单校验 //表单校验
export const SupplierinvoiceRecordMainRules = reactive({ export const SupplierinvoiceRecordMainRules = reactive({
@ -1209,7 +1212,7 @@ export const SupplierinvoiceRecordMainRules = reactive({
businessType: [ businessType: [
{ required: true, message: '请输入业务类型', trigger: 'blur' } { required: true, message: '请输入业务类型', trigger: 'blur' }
], ],
createTime: [ requestTime: [
{ required: true, message: '请输入创建时间', trigger: 'blur' } { required: true, message: '请输入创建时间', trigger: 'blur' }
], ],
creator: [ creator: [
@ -1533,7 +1536,7 @@ export const SupplierinvoiceRecordDetailRules = reactive({
itemCode: [ itemCode: [
{ required: true, message: '请输入物料代码', trigger: 'blur' } { required: true, message: '请输入物料代码', trigger: 'blur' }
], ],
createTime: [ requestTime: [
{ required: true, message: '请输入创建时间', trigger: 'blur' } { required: true, message: '请输入创建时间', trigger: 'blur' }
], ],
creator: [ creator: [

34
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts

@ -724,8 +724,8 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isForm: false, isForm: false,
}, },
{ {
label: '创建时间', label: '供应商创建时间',
field: 'createTime', field: 'requestTime',
isTable:true, isTable:true,
formatter: dateFormatter, formatter: dateFormatter,
sortTableDefault:1000, sortTableDefault:1000,
@ -1184,10 +1184,13 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '供应商创建日期', label: '供应商创建时间',
field: 'supplierDate', field: 'requestTime',
sort: 'custom', sort: 'custom',
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1465,19 +1468,6 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
{
label: '创建时间',
field: 'createTime',
formatter: dateFormatter,
sortTableDefault:1000,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
])) ]))
@ -1957,8 +1947,8 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
//仅是主列表页面的筛选搜索条件 //仅是主列表页面的筛选搜索条件
{ {
label: '创建时间', label: '供应商创建时间',
field: 'createTime', field: 'requestTime',
sort: 'custom', sort: 'custom',
isDetail:false, isDetail:false,
isTable: false, isTable: false,
@ -2003,8 +1993,8 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
hiddenInMain:true, hiddenInMain:true,
}, },
{ {
label: '创建时间', label: '供应商创建时间',
field: 'createTime', field: 'requestTime',
hiddenInMain:true, hiddenInMain:true,
isTable: false, isTable: false,
table: { table: {

83
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/supplierinvoiceRequestMainDifference.data.ts

@ -658,28 +658,28 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
}, },
}, },
{ // {
label: '申请时间', // label: '申请时间',
field: 'requestTime', // field: 'requestTime',
formatter: dateFormatter, // formatter: dateFormatter,
detail: { // detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss' // dateFormat: 'YYYY-MM-DD HH:mm:ss'
}, // },
sort: 'custom', // sort: 'custom',
table: { // table: {
width: 180 // width: 180
}, // },
isTable:false, // isTable:false,
isForm:false, // isForm:false,
form: { // form: {
component: 'DatePicker', // component: 'DatePicker',
componentProps: { // componentProps: {
type: 'datetime', // type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', // dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', // valueFormat: 'x',
} // }
}, // },
}, // },
{ {
label: '部门', label: '部门',
field: 'departmentCode', field: 'departmentCode',
@ -731,8 +731,8 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isForm: false, isForm: false,
}, },
{ {
label: '创建时间', label: '供应商创建时间',
field: 'createTime', field: 'requestTime',
isTable:true, isTable:true,
formatter: dateFormatter, formatter: dateFormatter,
sortTableDefault:1000, sortTableDefault:1000,
@ -1200,10 +1200,13 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '供应商创建日期', label: '供应商创建时间',
field: 'supplierDate', field: 'requestTime',
sort: 'custom', sort: 'custom',
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1481,19 +1484,19 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
{ // {
label: '创建时间', // label: '创建时间',
field: 'createTime', // field: 'createTime',
formatter: dateFormatter, // formatter: dateFormatter,
sortTableDefault:1000, // sortTableDefault:1000,
detail: { // detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss' // dateFormat: 'YYYY-MM-DD HH:mm:ss'
}, // },
isForm: false, // isForm: false,
isTable: false, // isTable: false,
isSearch: false, // isSearch: false,
isDetail: true, // isDetail: true,
}, // },
])) ]))
const singlePriceFormart = (row, column, cellValue) => { const singlePriceFormart = (row, column, cellValue) => {

Loading…
Cancel
Save