| | |
| | | @select="onItemChange"></superwei-combox> |
| | | </view> |
| | | <view class="info-block"> |
| | | <view class="info-label">工单编号:</view> |
| | | <view v-if="!isUpdate" class="info-value">{{ formData.daa001 }}</view> |
| | | <picker v-else :range="DAA001List" class="picker info-value-input" name="selector" |
| | | @change="onDaa001Change"> |
| | | <view>{{ DAA001List[DAA001Index] }}</view> |
| | | </picker> |
| | | </view> |
| | | <view class="info-block"> |
| | | <view class="info-label">产品名称:</view> |
| | | <view class="info-value">{{ formData.daa003 }}</view> |
| | | </view> |
| | |
| | | <view class="info-value">{{ formData.daa004 }}</view> |
| | | </view> |
| | | <view class="info-block"> |
| | | <view class="info-label">工单编号:</view> |
| | | <view v-if="!isUpdate" class="info-value">{{ formData.daa001 }}</view> |
| | | <picker v-else :range="DAA001List" class="picker info-value-input" name="selector" |
| | | @change="onDaa001Change"> |
| | | <view>{{ DAA001List[DAA001Index] }}</view> |
| | | </picker> |
| | | <view class="info-label">项目:</view> |
| | | <view class="info-value">{{ formData.projecT_CODE }}</view> |
| | | <view class="info-label">工单数量:</view> |
| | | <view class="info-value highlight">{{ formData.daa008 }}</view> |
| | | </view> |
| | | <view class="info-block"> |
| | | <view class="info-label">工单数量:</view> |
| | | <view class="info-value highlight">{{ formData.daa008 }}</view> |
| | | </view> |
| | | <view v-if="formData.remarks" class="info-block"> |
| | | <view v-if="formData.remarks && current" class="info-block"> |
| | | <view class="info-label">备注:</view> |
| | | <view class="info-value">{{ formData.remarks }}</view> |
| | | </view> |
| | |
| | | <td> |
| | | <button v-if="item.isCheck < item.levelNum" class="record-btn record-btn-fill" |
| | | @click="toDetail(item, index)"> |
| | | 填写 ({{ item.isCheck }}/{{ item.levelNum }}) |
| | | 填写 <!--({{ item.isCheck }}/{{ item.levelNum }})--> |
| | | </button> |
| | | <button v-else class="record-btn record-btn-view" @click="toDetail(item, index)"> |
| | | 查看 ({{ item.isCheck }}/{{ item.levelNum }}) |
| | | 查看<!--({{ item.isCheck }}/{{ item.levelNum }})--> |
| | | </button> |
| | | </td> |
| | | </tr> |
| | |
| | | statusUser: "", |
| | | itemId: "", |
| | | fSubmit: 0, |
| | | yzxChecked: false, // 添加一致性核对状态字段 |
| | | }, |
| | | |
| | | DAA020List: [], |
| | |
| | | }, |
| | | |
| | | submit() { |
| | | // 检查是否需要一致性核对 |
| | | if (this.current && !this.formData.yzxChecked) { |
| | | // 先检查该物料是否维护了一致性核对项目 |
| | | this.$post({ |
| | | url: "/SJ/getYzxItem", |
| | | data: { |
| | | id: this.formData.id |
| | | } |
| | | }).then(res => { |
| | | // 如果维护了一致性核对项目(components.length > 0),则要求完成核对 |
| | | if (res.data && res.data.length > 0) { |
| | | uni.showModal({ |
| | | title: "提示", |
| | | content: "请先完成一致性核对后再提交检验", |
| | | confirmText: "去核对", |
| | | cancelText: "取消", |
| | | success: (modalRes) => { |
| | | if (modalRes.confirm) { |
| | | this.toYzxSubmitFrom(this.formData.billNo); |
| | | } |
| | | } |
| | | }); |
| | | } else { |
| | | // 未维护一致性核对项目,允许直接提交 |
| | | this.submitInspection(); |
| | | } |
| | | }).catch(() => { |
| | | // 接口异常,允许提交 |
| | | this.submitInspection(); |
| | | }); |
| | | return; |
| | | } |
| | | |
| | | // 已完成一致性核对或不需要核对,直接提交 |
| | | this.submitInspection(); |
| | | }, |
| | | |
| | | submitInspection() { |
| | | this.$post({ |
| | | url: "/SJ/SJQaSubmit", |
| | | data: { |
| | |
| | | if (res.statusCode === 200 || res.status === 0 || res.data === true || res.data.tbBillList === true) { |
| | | |
| | | this.$showMessage("成功提交检验"); |
| | | // 提交成功后跳转到列表页面 |
| | | // 提交成功后刷新页面数据 |
| | | this.init(); |
| | | // 1.5秒后跳转到列表页面 |
| | | setTimeout(() => { |
| | | uni.navigateTo({ |
| | | url: '/pages/QC/SJ/List' |
| | | }); |
| | | }, 1500); // 1.5秒后跳转,让用户看到成功提示 |
| | | }, 1500); |
| | | } else { |
| | | this.$showMessage(res.data.message || res.message || "提交失败"); |
| | | } |
| | | }).catch(err => { |
| | | console.log("提交出错:", err); |
| | | this.$showMessage("提交失败,请重试"); |
| | | this.$showMessage("提交失败,请重试"); |
| | | }) |
| | | }, |
| | | |
| | |
| | | }).then(res => { |
| | | let tbBillListElement = res.data.tbBillList[0]; |
| | | if (tbBillListElement) { |
| | | // 保存当前的yzxChecked状态 |
| | | const currentYzxChecked = this.formData.yzxChecked; |
| | | this.formData = tbBillListElement; |
| | | // 恢复yzxChecked状态,避免被服务器数据覆盖 |
| | | this.formData.yzxChecked = currentYzxChecked; |
| | | this.$post({ |
| | | url: "/SJ/getQSItems", |
| | | data: { |
| | |
| | | // 查看所有图片的逻辑 |
| | | console.log('点击了查看所有图片按钮,billNo:', this.formData.billNo); |
| | | uni.navigateTo({ |
| | | url: 'ImageItemALL?id=' + this.formData.billNo |
| | | url: 'ImageItemALL?id=' + this.formData.id |
| | | }); |
| | | }, |
| | | addDefectDescription() { |
| | | // 查看所有不良描述的逻辑 |
| | | console.log('点击了查看不良描述按钮,billNo:', this.formData.billNo); |
| | | uni.navigateTo({ |
| | | url: 'Blms?id=' + this.formData.billNo |
| | | url: 'Blms?id=' + this.formData.id |
| | | }); |
| | | } |
| | | }, |
| | | onShow() { |
| | | //每次进入页面都会执行的方法 |
| | | this.init(); |
| | | // 每次进入页面都会执行的方法 |
| | | // 注释掉init()调用,避免覆盖一致性核对状态 |
| | | // this.init(); |
| | | } |
| | | }; |
| | | </script> |