| | |
| | | </div> |
| | | <!-- <div class="info-item"> |
| | | <span class="info-label">工单状态</span> |
| | | <span class="info-value">{{ |
| | | transferCardRowData.status === 1 ? '待确认' : |
| | | transferCardRowData.status === 2 ? '待生产' : |
| | | transferCardRowData.status === 3 ? '生产中' : |
| | | transferCardRowData.status === 4 ? '已生产' : |
| | | transferCardRowData.status |
| | | <span class="info-value">{{ |
| | | transferCardRowData.status === 1 ? '待确认' : |
| | | transferCardRowData.status === 2 ? '待生产' : |
| | | transferCardRowData.status === 3 ? '生产中' : |
| | | transferCardRowData.status === 4 ? '已生产' : |
| | | transferCardRowData.status |
| | | }}</span> |
| | | </div> --> |
| | | <div class="info-item"> |
| | |
| | | </div> |
| | | </el-dialog> |
| | | <el-dialog v-model="reportDialogVisible" |
| | | title="报工" |
| | | :title="`报工(机台:${currentReportRowData?.deviceName || '-'})`" |
| | | width="500px"> |
| | | <el-form ref="reportFormRef" |
| | | :model="reportForm" |
| | |
| | | placeholder="请输入本次生产数量" |
| | | @input="handleQuantityInput" /> |
| | | </el-form-item> |
| | | <el-form-item label="补产数量" |
| | | prop="replenishQty"> |
| | | <el-input v-model.number="reportForm.replenishQty" |
| | | type="number" |
| | | min="0" |
| | | step="1" |
| | | style="width: 300px" |
| | | placeholder="请输入补产数量" /> |
| | | </el-form-item> |
| | | <el-form-item label="报废数量" |
| | | prop="scrapQty"> |
| | | <el-input v-model.number="reportForm.scrapQty" |
| | |
| | | @input="handleScrapQtyInput" /> |
| | | </el-form-item> |
| | | <el-form-item label="班组信息"> |
| | | <el-select v-model="reportForm.userId" |
| | | style="width: 300px" |
| | | placeholder="请选择班组信息" |
| | | clearable |
| | | filterable |
| | | @change="handleUserChange"> |
| | | <el-option v-for="user in userOptions" |
| | | :key="user.userId" |
| | | :label="user.nickName" |
| | | :value="user.userId" /> |
| | | <el-select |
| | | v-model="reportForm.teamList" |
| | | multiple |
| | | filterable |
| | | clearable |
| | | collapse-tags |
| | | value-key="userId" |
| | | placeholder="请选择班组成员" |
| | | style="width: 300px" |
| | | > |
| | | <el-option |
| | | v-for="user in userOptions" |
| | | :key="user.userId" |
| | | :label="user.nickName" |
| | | :value="{ userId: user.userId, userName: user.nickName }" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="开始时间" |
| | | prop="startTime"> |
| | | <el-date-picker v-model="reportForm.startTime" |
| | | type="datetime" |
| | | value-format="YYYY-MM-DD HH:mm:ss" |
| | | format="YYYY-MM-DD HH:mm:ss" |
| | | style="width: 300px" |
| | | placeholder="请选择开始时间" |
| | | clearable /> |
| | | </el-form-item> |
| | | <el-form-item label="结束时间" |
| | | prop="endTime"> |
| | | <el-date-picker v-model="reportForm.endTime" |
| | | type="datetime" |
| | | value-format="YYYY-MM-DD HH:mm:ss" |
| | | format="YYYY-MM-DD HH:mm:ss" |
| | | style="width: 300px" |
| | | placeholder="请选择结束时间" |
| | | clearable /> |
| | | </el-form-item> |
| | | <el-form-item label="审核人" prop="auditUserId"> |
| | | <el-select v-model="reportForm.auditUserId" |
| | |
| | | prop: "processName", |
| | | }, |
| | | { |
| | | label: "机台名称", |
| | | prop: "deviceName", |
| | | }, |
| | | { |
| | | label: "需求数量", |
| | | prop: "planQuantity", |
| | | width: "140", |
| | |
| | | planQuantity: 0, |
| | | quantity: null, |
| | | scrapQty: null, |
| | | startTime: "", |
| | | endTime: "", |
| | | userName: "", |
| | | workOrderId: "", |
| | | reportWork: "", |
| | | productProcessRouteItemId: "", |
| | | userId: "", |
| | | productMainId: null, |
| | | teamList:[] |
| | | }); |
| | | |
| | | // 本次生产数量验证规则 |
| | |
| | | const reportFormRules = { |
| | | quantity: [{ required: true, validator: validateQuantity, trigger: "blur" }], |
| | | scrapQty: [{ validator: validateScrapQty, trigger: "blur" }], |
| | | startTime: [{ required: true, message: "请选择开始时间", trigger: "change" }], |
| | | endTime: [{ required: true, message: "请选择结束时间", trigger: "change" }], |
| | | auditUserId: [{ required: true, message: "请选择审核人", trigger: "change" }], |
| | | }; |
| | | |
| | |
| | | reportForm.workOrderId = row.id; |
| | | reportForm.reportWork = row.reportWork; |
| | | reportForm.productMainId = row.productMainId; |
| | | reportForm.scrapQty = |
| | | row.scrapQty !== undefined && row.scrapQty !== null ? row.scrapQty : null; |
| | | reportForm.startTime = ""; |
| | | reportForm.endTime = ""; |
| | | reportForm.replenishQty = 0; |
| | | reportForm.teamList = []; |
| | | reportForm.scrapQty = 0; |
| | | |
| | | nextTick(() => { |
| | | reportFormRef.value?.clearValidate(); |
| | | }); |
| | |
| | | return; |
| | | } |
| | | |
| | | if (!reportForm.startTime || !reportForm.endTime) { |
| | | ElMessageBox.alert("开始时间和结束时间不能为空", "提示", { |
| | | confirmButtonText: "确定", |
| | | }); |
| | | return; |
| | | } |
| | | |
| | | if (dayjs(reportForm.startTime).isSame(dayjs(reportForm.endTime)) || dayjs(reportForm.startTime).isAfter(dayjs(reportForm.endTime))) { |
| | | ElMessageBox.alert("开始时间必须小于结束时间", "提示", { |
| | | confirmButtonText: "确定", |
| | | }); |
| | | return; |
| | | } |
| | | |
| | | const submitData = { |
| | | ...reportForm, |
| | | quantity: quantity, |
| | |
| | | .then(res => { |
| | | if (res.code === 200) { |
| | | userOptions.value = res.data || []; |
| | | console.log(userOptions.value) |
| | | userOptions.value.unshift({ |
| | | nickName:"任意用户", |
| | | userId:"-1", |
| | | }) |
| | | } |
| | | }) |
| | | .catch(err => { |