| | |
| | | <el-table-column prop="parentName" label="产品定性" min-width="120" show-overflow-tooltip /> |
| | | <el-table-column prop="model" label="型号名称" min-width="200" /> |
| | | <el-table-column prop="thickness" label="厚度" min-width="160" :formatter="formatThicknessTo15" /> |
| | | <el-table-column prop="unit" label="单位" min-width="160" /> |
| | | </el-table> |
| | | |
| | | <div class="mt-3 flex justify-end"> |
| | |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | label="厚度(mm)" |
| | | prop="thickness" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | label="单位" |
| | | prop="unit" |
| | | show-overflow-tooltip |
| | |
| | | <el-table-column label="规格型号" |
| | | prop="model" |
| | | show-overflow-tooltip/> |
| | | <el-table-column label="厚度(mm)" |
| | | prop="thickness" |
| | | show-overflow-tooltip /> |
| | | <el-table-column label="单位" |
| | | prop="unit" |
| | | show-overflow-tooltip/> |
| | |
| | | </el-form-item> |
| | | |
| | | <el-form-item |
| | | label="厚度(mm)" |
| | | prop="thickness" |
| | | > |
| | | <el-input v-model="formState.thickness" disabled /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item |
| | | label="库存数量" |
| | | prop="qualitity" |
| | | > |
| | |
| | | productName: "", |
| | | productModelName: "", |
| | | unit: "", |
| | | thickness: "", |
| | | qualitity: 0, |
| | | warnNum: 0, |
| | | remark: '', |
| | |
| | | productModelId: undefined, |
| | | productName: "", |
| | | productModelName: "", |
| | | description: '', |
| | | unit: "", |
| | | thickness: "", |
| | | qualitity: 0, |
| | | warnNum: 0, |
| | | remark: '', |
| | | }; |
| | | isShow.value = false; |
| | | }; |
| | |
| | | formState.value.productModelName = product.model; |
| | | formState.value.productModelId = product.id; |
| | | formState.value.unit = product.unit; |
| | | formState.value.thickness = product.thickness ?? ""; |
| | | showProductSelectDialog.value = false; |
| | | // 触发表单验证更新 |
| | | proxy.$refs["formRef"]?.validateField('productModelId'); |
| | |
| | | <el-table-column align="center" label="序号" type="index" width="60" /> |
| | | <el-table-column label="产品大类" prop="productName" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="model" show-overflow-tooltip /> |
| | | <el-table-column label="厚度(mm)" prop="thickness" show-overflow-tooltip /> |
| | | <el-table-column label="单位" prop="unit" show-overflow-tooltip /> |
| | | <el-table-column label="库存数量" prop="qualitity" show-overflow-tooltip /> |
| | | <el-table-column label="冻结数量" prop="lockedQuantity" show-overflow-tooltip /> |
| | |
| | | <el-table-column align="center" label="序号" type="index" width="60" /> |
| | | <el-table-column label="产品大类" prop="productName" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="model" show-overflow-tooltip /> |
| | | <el-table-column label="厚度(mm)" prop="thickness" show-overflow-tooltip /> |
| | | <el-table-column label="单位" prop="unit" show-overflow-tooltip /> |
| | | <el-table-column label="库存数量" prop="qualitity" show-overflow-tooltip /> |
| | | <el-table-column label="冻结数量" prop="lockedQuantity" show-overflow-tooltip /> |
| | |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | label="厚度(mm)" |
| | | prop="thickness" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | label="单位" |
| | | prop="unit" |
| | | show-overflow-tooltip |
| | |
| | | prop: 'specificationModel', |
| | | }, |
| | | { |
| | | label: '厚度(mm)', |
| | | prop: 'thickness', |
| | | }, |
| | | { |
| | | label: '采购数量', |
| | | prop: 'purchaseNum', |
| | | width: 120, |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="厚度(mm):" prop="thickness"> |
| | | <el-input v-model="form.thickness" placeholder="请输入" disabled/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="30"> |
| | | <el-col :span="12"> |
| | |
| | | quantity: "", |
| | | checkCompany: "", |
| | | checkResult: "", |
| | | thickness:"" |
| | | }, |
| | | rules: { |
| | | checkTime: [{ required: true, message: "请输入", trigger: "blur" },], |
| | |
| | | if (selectedModel) { |
| | | form.value.model = selectedModel.model || ''; |
| | | form.value.unit = selectedModel.unit || ''; |
| | | form.value.thickness = selectedModel.thickness || '' |
| | | } |
| | | } |
| | | |
| | |
| | | const handleChangeModel = (value) => { |
| | | form.value.model = modelOptions.value.find(item => item.id == value)?.model || ''; |
| | | form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || ''; |
| | | form.value.thickness = modelOptions.value.find(item => item.id == value)?.thickness || ''; |
| | | } |
| | | |
| | | const findNodeById = (nodes, productId) => { |
| | |
| | | prop: "model", |
| | | }, |
| | | { |
| | | label: "厚度(mm)", |
| | | prop: "thickness", |
| | | }, |
| | | { |
| | | label: "单位", |
| | | prop: "unit", |
| | | }, |
| | |
| | | <el-row :gutter="30"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="单位:" prop="unit"> |
| | | <el-input v-model="form.unit" placeholder="请输入" clearable/> |
| | | <el-input v-model="form.unit" placeholder="自动带出" readonly class="readonly-display"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="厚度:" prop="thickness"> |
| | | <el-input v-model="form.thickness" placeholder="自动带出" readonly class="readonly-display"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="30"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="数量:" prop="quantity"> |
| | | <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="请输入" clearable :precision="2"/> |
| | |
| | | productId: "", |
| | | model: "", |
| | | unit: "", |
| | | thickness: "", |
| | | quantity: "", |
| | | checkCompany: "", |
| | | checkResult: "", |
| | |
| | | productId: [{ required: true, message: "请输入", trigger: "blur" }], |
| | | model: [{ required: true, message: "请输入", trigger: "blur" }], |
| | | unit: [{ required: false, message: "请输入", trigger: "blur" }], |
| | | thickness: [{ required: false, message: "请输入", trigger: "blur" }], |
| | | quantity: [{ required: true, message: "请输入", trigger: "blur" }], |
| | | checkCompany: [{ required: false, message: "请输入", trigger: "blur" }], |
| | | checkResult: [{ required: false, message: "请输入", trigger: "blur" }], |
| | |
| | | productId: '', |
| | | model: '', |
| | | unit: '', |
| | | thickness: '', |
| | | quantity: '', |
| | | productName: '', |
| | | }; |
| | |
| | | }; |
| | | const getModels = (value) => { |
| | | form.value.productName = findNodeById(productOptions.value, value); |
| | | form.value.model = ''; |
| | | form.value.unit = ''; |
| | | form.value.thickness = ''; |
| | | modelList({ id: value }).then((res) => { |
| | | modelOptions.value = res; |
| | | }) |
| | | }; |
| | | const handleChangeModel = (modelId) => { |
| | | const selectedModel = modelOptions.value.find(item => item.id === modelId); |
| | | if (!selectedModel) { |
| | | form.value.unit = ''; |
| | | form.value.thickness = ''; |
| | | return; |
| | | } |
| | | form.value.unit = selectedModel.unit || ''; |
| | | form.value.thickness = selectedModel.thickness ?? ''; |
| | | }; |
| | | const findNodeById = (nodes, productId) => { |
| | | for (let i = 0; i < nodes.length; i++) { |
| | |
| | | |
| | | <style scoped> |
| | | |
| | | :deep(.readonly-display .el-input__wrapper) { |
| | | background-color: var(--el-disabled-bg-color); |
| | | box-shadow: 0 0 0 1px var(--el-disabled-border-color) inset; |
| | | } |
| | | |
| | | :deep(.readonly-display .el-input__inner) { |
| | | color: var(--el-disabled-text-color); |
| | | -webkit-text-fill-color: var(--el-disabled-text-color); |
| | | cursor: not-allowed; |
| | | } |
| | | |
| | | </style> |
| | |
| | | prop: "model", |
| | | }, |
| | | { |
| | | label: "厚度(mm)", |
| | | prop: "thickness", |
| | | }, |
| | | { |
| | | label: "单位", |
| | | prop: "unit", |
| | | }, |
| | |
| | | <el-row :gutter="30"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="单位:" prop="unit"> |
| | | <el-input v-model="form.unit" placeholder="请输入" disabled/> |
| | | <el-input v-model="form.unit" placeholder="自动带出" readonly class="readonly-display"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="厚度:" prop="thickness"> |
| | | <el-input v-model="form.thickness" placeholder="自动带出" readonly class="readonly-display"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="30"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="数量:" prop="quantity"> |
| | | <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="请输入" clearable :precision="2" :disabled="processQuantityDisabled"/> |
| | |
| | | model: "", |
| | | testStandardId: "", |
| | | unit: "", |
| | | thickness: "", |
| | | quantity: "", |
| | | checkCompany: "", |
| | | checkResult: "", |
| | |
| | | productModelId: [{ required: true, message: "请选择", trigger: "change" }], |
| | | testStandardId: [{required: false, message: "请选择指标", trigger: "change"}], |
| | | unit: [{ required: false, message: "请输入", trigger: "blur" }], |
| | | thickness: [{ required: false, message: "请输入", trigger: "blur" }], |
| | | quantity: [{ required: true, message: "请输入", trigger: "blur" }], |
| | | checkCompany: [{ required: false, message: "请输入", trigger: "blur" }], |
| | | checkResult: [{ required: true, message: "请输入", trigger: "change" }], |
| | |
| | | model: "", |
| | | testStandardId: "", |
| | | unit: "", |
| | | thickness: "", |
| | | quantity: "", |
| | | checkCompany: "", |
| | | checkResult: "", |
| | |
| | | const getModels = (value) => { |
| | | form.value.productModelId = undefined; |
| | | form.value.unit = undefined; |
| | | form.value.thickness = undefined; |
| | | modelOptions.value = []; |
| | | currentProductId.value = value |
| | | form.value.productName = findNodeById(productOptions.value, value); |
| | |
| | | }; |
| | | |
| | | const handleChangeModel = (value) => { |
| | | form.value.model = modelOptions.value.find(item => item.id == value)?.model || ''; |
| | | form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || ''; |
| | | const selectedModel = modelOptions.value.find(item => item.id == value); |
| | | form.value.model = selectedModel?.model || ''; |
| | | form.value.unit = selectedModel?.unit || ''; |
| | | form.value.thickness = selectedModel?.thickness ?? ''; |
| | | } |
| | | |
| | | const findNodeById = (nodes, productId) => { |
| | |
| | | |
| | | <style scoped> |
| | | |
| | | :deep(.readonly-display .el-input__wrapper) { |
| | | background-color: var(--el-disabled-bg-color); |
| | | box-shadow: 0 0 0 1px var(--el-disabled-border-color) inset; |
| | | } |
| | | |
| | | :deep(.readonly-display .el-input__inner) { |
| | | color: var(--el-disabled-text-color); |
| | | -webkit-text-fill-color: var(--el-disabled-text-color); |
| | | cursor: not-allowed; |
| | | } |
| | | |
| | | </style> |
| | |
| | | prop: "model", |
| | | }, |
| | | { |
| | | label: "厚度(mm)", |
| | | prop: "thickness", |
| | | }, |
| | | { |
| | | label: "单位", |
| | | prop: "unit", |
| | | }, |
| | |
| | | <el-row :gutter="30"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="单位:" prop="unit"> |
| | | <el-input v-model="form.unit" disabled/> |
| | | <el-input v-model="form.unit" placeholder="自动带出" readonly class="readonly-display"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="厚度:" prop="thickness"> |
| | | <el-input v-model="form.thickness" placeholder="自动带出" readonly class="readonly-display"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="30"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="数量:" prop="quantity"> |
| | | <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="请输入" |
| | |
| | | model: "", |
| | | testStandardId: "", |
| | | unit: "", |
| | | thickness: "", |
| | | quantity: "", |
| | | checkCompany: "", |
| | | checkResult: "", |
| | |
| | | productModelId: [{required: true, message: "请选择产品型号", trigger: "change"}], |
| | | testStandardId: [{required: false, message: "请选择指标", trigger: "change"}], |
| | | unit: [{required: false, message: "请输入", trigger: "blur"}], |
| | | thickness: [{required: false, message: "请输入", trigger: "blur"}], |
| | | quantity: [{required: true, message: "请输入", trigger: "blur"}], |
| | | checkCompany: [{required: false, message: "请输入", trigger: "blur"}], |
| | | checkResult: [{required: true, message: "请选择检测结果", trigger: "change"}], |
| | |
| | | model: "", |
| | | testStandardId: "", |
| | | unit: "", |
| | | thickness: "", |
| | | quantity: "", |
| | | checkCompany: "", |
| | | checkResult: "", |
| | |
| | | const getModels = (value) => { |
| | | form.value.productModelId = undefined; |
| | | form.value.unit = undefined; |
| | | form.value.thickness = undefined; |
| | | modelOptions.value = []; |
| | | currentProductId.value = value |
| | | form.value.productName = findNodeById(productOptions.value, value); |
| | |
| | | }; |
| | | |
| | | const handleChangeModel = (value) => { |
| | | form.value.model = modelOptions.value.find(item => item.id == value)?.model || ''; |
| | | form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || ''; |
| | | const selectedModel = modelOptions.value.find(item => item.id == value); |
| | | form.value.model = selectedModel?.model || ''; |
| | | form.value.unit = selectedModel?.unit || ''; |
| | | form.value.thickness = selectedModel?.thickness ?? ''; |
| | | } |
| | | |
| | | const findNodeById = (nodes, productId) => { |
| | |
| | | |
| | | <style scoped> |
| | | |
| | | :deep(.readonly-display .el-input__wrapper) { |
| | | background-color: var(--el-disabled-bg-color); |
| | | box-shadow: 0 0 0 1px var(--el-disabled-border-color) inset; |
| | | } |
| | | |
| | | :deep(.readonly-display .el-input__inner) { |
| | | color: var(--el-disabled-text-color); |
| | | -webkit-text-fill-color: var(--el-disabled-text-color); |
| | | cursor: not-allowed; |
| | | } |
| | | |
| | | </style> |
| | |
| | | prop: "model", |
| | | }, |
| | | { |
| | | label: "厚度(mm)", |
| | | prop: "thickness", |
| | | }, |
| | | { |
| | | label: "单位", |
| | | prop: "unit", |
| | | }, |
| | |
| | | <el-table-column label="客户名称" prop="customerName" show-overflow-tooltip /> |
| | | <el-table-column label="产品名称" prop="productName" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="specificationModel" show-overflow-tooltip /> |
| | | <el-table-column label="厚度(mm)" prop="thickness" show-overflow-tooltip /> |
| | | <el-table-column label="发货时间" prop="shippingDate" show-overflow-tooltip /> |
| | | <el-table-column label="发货车牌号" prop="shippingCarNumber" show-overflow-tooltip /> |
| | | <el-table-column label="快递公司" prop="expressCompany" show-overflow-tooltip /> |