Commit 4e94662b by wusiyi

fix:质检bug修复

parent d7baf909
...@@ -311,7 +311,7 @@ export interface OrderInventoryData { ...@@ -311,7 +311,7 @@ export interface OrderInventoryData {
export interface QualityParams { export interface QualityParams {
updateParams: { id: number; version?: number }[] updateParams: { id: number; version?: number }[]
qualityIssues: string qualityIssues: string
qualify_problem_type: number | string qualifyProblemType: number | string
qualityPassed: boolean qualityPassed: boolean
source?: number // 0 列表页,1 快捷质检 source?: number // 0 列表页,1 快捷质检
} }
......
...@@ -832,12 +832,11 @@ const setData = async ( ...@@ -832,12 +832,11 @@ const setData = async (
const res = await qualityPodOrderOperationApi({ const res = await qualityPodOrderOperationApi({
updateParams: [{ id, version: detail.value.version }], updateParams: [{ id, version: detail.value.version }],
qualityIssues: '', qualityIssues: '',
qualify_problem_type: '', qualifyProblemType: '',
qualityPassed: true, qualityPassed: true,
source: 1, source: 1,
}) })
if (res.code !== 200) return if (res.code !== 200) return
emit('onSuccess', [{ id, status: true }])
} else { } else {
const res = (await props.completeApi( const res = (await props.completeApi(
[id], [id],
...@@ -1131,6 +1130,9 @@ const trackCodeInput = async () => { ...@@ -1131,6 +1130,9 @@ const trackCodeInput = async () => {
if (props.fastKey === 'productionScan') { if (props.fastKey === 'productionScan') {
await setData(detail.value.id.toString(), 'auto') await setData(detail.value.id.toString(), 'auto')
} }
if (props.fastKey === 'qualityScan') {
emit('onSuccess', [{ id: detail.value.id, status: true }])
}
playAudio('weight_search_success') playAudio('weight_search_success')
trackingNumberRef.value && trackingNumberRef.value.focus() trackingNumberRef.value && trackingNumberRef.value.focus()
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
v-model="visible" v-model="visible"
:title="qualityPassed ? '质检通过' : '质检不通过'" :title="qualityPassed ? '质检通过' : '质检不通过'"
width="450px" width="450px"
top="30vh"
:close-on-click-modal="false" :close-on-click-modal="false"
:destroy-on-close="true" :destroy-on-close="true"
@close="handleClose" @close="handleClose"
...@@ -18,10 +19,10 @@ ...@@ -18,10 +19,10 @@
<ElFormItem <ElFormItem
v-if="!qualityPassed" v-if="!qualityPassed"
label="原因" label="原因"
prop="qualify_problem_type" prop="qualifyProblemType"
> >
<ElSelect <ElSelect
v-model="form.qualify_problem_type" v-model="form.qualifyProblemType"
placeholder="请选择不通过原因" placeholder="请选择不通过原因"
style="width: 100%" style="width: 100%"
clearable clearable
...@@ -37,7 +38,7 @@ ...@@ -37,7 +38,7 @@
</ElSelect> </ElSelect>
</ElFormItem> </ElFormItem>
<ElFormItem <ElFormItem
v-if="!qualityPassed && form.qualify_problem_type === 5" v-if="!qualityPassed && form.qualifyProblemType === 5"
label="具体原因" label="具体原因"
prop="qualityIssues" prop="qualityIssues"
> >
...@@ -84,22 +85,22 @@ const updateParams = ref<{ id: number; version?: number }[]>([]) ...@@ -84,22 +85,22 @@ const updateParams = ref<{ id: number; version?: number }[]>([])
const reasonOptions = ref<QualityTypeItem[]>([]) const reasonOptions = ref<QualityTypeItem[]>([])
const form = reactive<{ const form = reactive<{
qualify_problem_type: number | string qualifyProblemType: number | string
qualityIssues: string qualityIssues: string
}>({ }>({
qualify_problem_type: '', qualifyProblemType: '',
qualityIssues: '', qualityIssues: '',
}) })
const rules = computed<FormRules>(() => { const rules = computed<FormRules>(() => {
if (qualityPassed.value) return {} if (qualityPassed.value) return {}
const result: FormRules = { const result: FormRules = {
qualify_problem_type: [ qualifyProblemType: [
{ required: true, message: '请选择不通过原因', trigger: 'change' }, { required: true, message: '请选择不通过原因', trigger: 'change' },
], ],
} }
if (form.qualify_problem_type && form.qualify_problem_type === 5) { if (form.qualifyProblemType && form.qualifyProblemType === 5) {
result.qualify_problem_type = [ result.qualifyProblemType = [
{ required: true, message: '请输入不通过原因', trigger: 'blur' }, { required: true, message: '请输入不通过原因', trigger: 'blur' },
] ]
} }
...@@ -118,11 +119,10 @@ const loadReasons = async () => { ...@@ -118,11 +119,10 @@ const loadReasons = async () => {
const handleReasonChange = () => { const handleReasonChange = () => {
form.qualityIssues = form.qualityIssues =
form.qualify_problem_type === 5 form.qualifyProblemType === 5
? '' ? ''
: reasonOptions.value.find( : reasonOptions.value.find((item) => item.key === form.qualifyProblemType)
(item) => item.key === form.qualify_problem_type, ?.value || ''
)?.value || ''
formRef.value?.clearValidate('qualityIssues') formRef.value?.clearValidate('qualityIssues')
} }
...@@ -138,7 +138,7 @@ const open = ( ...@@ -138,7 +138,7 @@ const open = (
})) }))
qualityPassed.value = passed qualityPassed.value = passed
source.value = sourceType source.value = sourceType
form.qualify_problem_type = '' form.qualifyProblemType = ''
form.qualityIssues = '' form.qualityIssues = ''
visible.value = true visible.value = true
if (!passed) void loadReasons() if (!passed) void loadReasons()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment