Merge remote-tracking branch 'origin/dev_天津_阳光印刷' into dev_天津_阳光印刷
| | |
| | | minWidth: 100, |
| | | }, |
| | | { |
| | | label: "工时定额", |
| | | prop: "workHours", |
| | | minWidth: 100, |
| | | }, |
| | | { |
| | | label: "工资", |
| | | prop: "wages", |
| | | minWidth: 100, |
| | | }, |
| | | { |
| | | label: "机台", |
| | | prop: "deviceName", |
| | | minWidth: 100, |
| | |
| | | { |
| | | label: "产量", |
| | | prop: "outputNum", |
| | | minWidth: 100, |
| | | |
| | | }, |
| | | { |
| | | label: "工资", |
| | | prop: "wages", |
| | | minWidth: 100, |
| | | |
| | | }, |
| | |
| | | <el-option label="计件" :value="1" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="工资定额" prop="salaryQuota"> |
| | | <el-input v-model="formState.salaryQuota" type="number" :step="0.001" /> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="工资定额" prop="salaryQuota">--> |
| | | <!-- <el-input v-model="formState.salaryQuota" type="number" :step="0.001" />--> |
| | | <!-- </el-form-item>--> |
| | | <el-form-item label="是否质检" prop="isQuality"> |
| | | <el-switch v-model="formState.isQuality" :active-value="true" inactive-value="false"/> |
| | | </el-form-item> |
| | |
| | | <el-option label="计件" :value="1" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="工资定额" prop="salaryQuota"> |
| | | <el-input v-model="formState.salaryQuota" type="number" :step="0.001"> |
| | | <template #append>元</template> |
| | | </el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="工资定额" prop="salaryQuota">--> |
| | | <!-- <el-input v-model="formState.salaryQuota" type="number" :step="0.001">--> |
| | | <!-- <template #append>元</template>--> |
| | | <!-- </el-input>--> |
| | | <!-- </el-form-item>--> |
| | | <el-form-item label="是否质检" prop="isQuality"> |
| | | <el-switch v-model="formState.isQuality" :active-value="true" inactive-value="false"/> |
| | | </el-form-item> |
| | |
| | | label: "工序机台", |
| | | prop: "deviceName", |
| | | }, |
| | | { |
| | | label: "工序类型", |
| | | prop: "typeText", |
| | | }, |
| | | { |
| | | label: "工资定额", |
| | | prop: "salaryQuota", |
| | | }, |
| | | // { |
| | | // label: "工资定额", |
| | | // prop: "salaryQuota", |
| | | // }, |
| | | // { |
| | | // label: "工序", |
| | | // prop: "process", |
| | |
| | | v-model="dialogVisible" |
| | | :title="computedTitle" |
| | | :operation-type="operationType" |
| | | :inspectType="inspectType" |
| | | width="520px" |
| | | @close="emit('close')" |
| | | @cancel="handleCancel" |
| | |
| | | const props = defineProps({ |
| | | modelValue: { type: Boolean, default: false }, |
| | | operationType: { type: String, default: 'add' }, // add | edit |
| | | form: { type: Object, required: true } |
| | | form: { type: Object, required: true }, |
| | | inspectType: { type: String, default: null }, |
| | | }) |
| | | |
| | | const emit = defineEmits(['update:modelValue', 'close', 'cancel', 'confirm']) |
| | |
| | | <el-form-item label="标准名称" prop="standardName"> |
| | | <el-input v-model="form.standardName" placeholder="请输入标准名称" /> |
| | | </el-form-item> |
| | | <el-form-item label="类别" prop="inspectType"> |
| | | <el-select v-model="form.inspectType" placeholder="请选择类别" style="width: 100%"> |
| | | <el-option label="原材料检验" value="0" /> |
| | | <el-option label="过程检验" value="1" /> |
| | | <el-option label="出厂检验" value="2" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="工序" prop="processId"> |
| | | <el-form-item v-if="needProcess" label="工序" prop="processId"> |
| | | <el-select v-model="form.processId" placeholder="请选择工序" style="width: 100%"> |
| | | <el-option |
| | | v-for="item in processOptions" |
| | |
| | | width: { |
| | | type: String, |
| | | default: '500px' |
| | | }, |
| | | inspectType:{ |
| | | type: String, |
| | | default: null |
| | | } |
| | | }) |
| | | |
| | |
| | | |
| | | const formRef = ref(null) |
| | | |
| | | const needProcess = computed(() => String(props.inspectType ?? '') === '1') |
| | | |
| | | const computedTitle = computed(() => { |
| | | if (props.operationType === 'edit') return '编辑检测标准' |
| | | if (props.operationType === 'copy') return '复制检测标准' |
| | |
| | | :operation-type="standardOperationType" |
| | | :form="standardForm" |
| | | :rules="standardRules" |
| | | :inspect-type="activeTab" |
| | | :process-options="processOptions" |
| | | @confirm="submitStandardForm" |
| | | @close="closeStandardDialog" |
| | |
| | | ref="paramFormDialogRef" |
| | | v-model="paramDialogVisible" |
| | | :operation-type="paramOperationType" |
| | | :inspectType="activeTab.value" |
| | | :form="paramForm" |
| | | @confirm="submitParamForm" |
| | | @close="closeParamDialog" |
| | |
| | | standardRules: { |
| | | standardNo: [{ required: true, message: '请输入标准编号', trigger: 'blur' }], |
| | | standardName: [{ required: true, message: '请输入标准名称', trigger: 'blur' }], |
| | | inspectType: [{ required: true, message: '请选择检测类型', trigger: 'change' }], |
| | | processId: [{ required: false, message: '请选择工序', trigger: 'change' }] |
| | | processId: [{ |
| | | validator: (_rule, value, callback) => { |
| | | const inspectType = String(standardForm.value.inspectType ?? activeTab.value ?? '') |
| | | if (inspectType === '1' && (value === '' || value === null || value === undefined)) { |
| | | callback(new Error('请选择工序')) |
| | | return |
| | | } |
| | | callback() |
| | | }, |
| | | trigger: 'change' |
| | | }] |
| | | } |
| | | }) |
| | | |
| | |
| | | standardName: '', |
| | | remark: '', |
| | | state: '0', |
| | | inspectType: '', |
| | | processId: '' |
| | | inspectType: activeTab.value, |
| | | processId: activeTab.value === '1' ? '' : null |
| | | }) |
| | | } else if (type === 'edit' && row) { |
| | | Object.assign(standardForm.value, { |
| | |
| | | inspectType: row.inspectType !== null && row.inspectType !== undefined ? String(row.inspectType) : '', |
| | | state: row.state !== null && row.state !== undefined ? String(row.state) : '0', |
| | | // 确保 processId 转换为字符串或数字(根据实际需要) |
| | | processId: row.processId !== null && row.processId !== undefined ? row.processId : '' |
| | | processId: String(row.inspectType) === '1' && row.processId !== null && row.processId !== undefined ? row.processId : null |
| | | }) |
| | | } else if (type === 'copy' && row) { |
| | | const { id, ...rest } = row |
| | |
| | | standardNo: '', |
| | | state: '0', |
| | | // 确保 inspectType 转换为字符串 |
| | | inspectType: rest.inspectType !== null && rest.inspectType !== undefined ? String(rest.inspectType) : '' |
| | | inspectType: activeTab.value, |
| | | processId: activeTab.value === '1' ? (rest.processId ?? '') : null |
| | | }) |
| | | } |
| | | standardDialogVisible.value = true |
| | |
| | | |
| | | const submitStandardForm = () => { |
| | | const payload = { ...standardForm.value } |
| | | payload.inspectType = activeTab.value |
| | | if (String(payload.inspectType) !== '1') { |
| | | payload.processId = null |
| | | } |
| | | const isEdit = standardOperationType.value === 'edit' |
| | | if (isEdit) { |
| | | qualityTestStandardUpdate(payload).then(() => { |
| | |
| | | width="200" |
| | | /> |
| | | <el-table-column |
| | | label="回款金额(元)" |
| | | prop="receiptPaymentAmount" |
| | | show-overflow-tooltip |
| | | :formatter="formattedNumber" |
| | | width="200" |
| | | /> |
| | | <el-table-column |
| | | label="应收金额(元)" |
| | | prop="unReceiptPaymentAmount" |
| | | show-overflow-tooltip |
| | |
| | | <el-table-column |
| | | label="合同金额(元)" |
| | | prop="invoiceTotal" |
| | | show-overflow-tooltip |
| | | :formatter="formattedNumber" |
| | | width="200" |
| | | /> |
| | | <el-table-column |
| | | label="回款金额(元)" |
| | | prop="receiptPaymentAmount" |
| | | show-overflow-tooltip |
| | | :formatter="formattedNumber" |
| | | width="200" |
| | |
| | | productOperationType.value = type; |
| | | productForm.value = { |
| | | taxRate: 0, |
| | | invoiceType: "增普票" |
| | | invoiceType: "" |
| | | }; |
| | | proxy.resetForm("productFormRef"); |
| | | if (type === "edit") { |