han\hanst 1 week ago
parent
commit
5538ad997b
  1. 7
      src/views/modules/recv/inspectionResults.vue
  2. 32
      src/views/modules/recv/unqualifiedProcess.vue

7
src/views/modules/recv/inspectionResults.vue

@ -240,6 +240,12 @@ export default {
// 选择处理项目 // 选择处理项目
selectProcessItem(item) { selectProcessItem(item) {
this.selectedItem = { ...item }; this.selectedItem = { ...item };
// 处理页扫描/确认必须带单据行工厂编码,不能回退到登录大site
const contract = item.contract || item.site;
if (!contract) {
this.$message.error('当前单据缺少站点信息,无法处理');
return;
}
// 跳转到统一的不合格处理页面,通过processType参数区分处理类型 // 跳转到统一的不合格处理页面,通过processType参数区分处理类型
this.$router.push({ this.$router.push({
@ -250,6 +256,7 @@ export default {
processType: item.processType, processType: item.processType,
partNo: item.partNo, partNo: item.partNo,
unqualifiedQty: item.unqualifiedQty, unqualifiedQty: item.unqualifiedQty,
contract: contract,
scannedItems: JSON.stringify(this.scannedItems) scannedItems: JSON.stringify(this.scannedItems)
} }
}); });

32
src/views/modules/recv/unqualifiedProcess.vue

@ -128,7 +128,8 @@ export default {
processInfo: {}, processInfo: {},
scannedItems: [], scannedItems: [],
isRemoveMode: false, // 默认为添加模式 isRemoveMode: false, // 默认为添加模式
processType: '' // RETURN/SCRAP/EXCHANGE
processType: '', // RETURN/SCRAP/EXCHANGE
site: '' // 选中单据行的IFS工厂编码(contract),不是登录大site
}; };
}, },
computed: { computed: {
@ -203,6 +204,11 @@ export default {
return `border: 1px solid ${this.processConfig.color}; background: white; color: ${this.processConfig.color};`; return `border: 1px solid ${this.processConfig.color}; background: white; color: ${this.processConfig.color};`;
}, },
// 处理页实际site来自检验结果选中行的contract
getProcessSite() {
return this.site || (this.processInfo && this.processInfo.contract) || '';
},
// 处理扫描 // 处理扫描
handleScan() { handleScan() {
if (!this.scanCode.trim()) { if (!this.scanCode.trim()) {
@ -219,9 +225,15 @@ export default {
// 验证标签并添加到列表 // 验证标签并添加到列表
validateAndAddLabel(unitId) { validateAndAddLabel(unitId) {
const processSite = this.getProcessSite();
if (!processSite) {
this.$message.error('缺少单据站点信息,请返回重新选择');
return;
}
const params = { const params = {
unitId: unitId, unitId: unitId,
site: localStorage.getItem('site'),
site: processSite
}; };
scanHandlingUnitLabel(params).then(({ data }) => { scanHandlingUnitLabel(params).then(({ data }) => {
@ -238,8 +250,8 @@ export default {
this.$message.error('HandlingUnit不是未入库状态,无法处理'); this.$message.error('HandlingUnit不是未入库状态,无法处理');
return; return;
} }
// 校验HU是否属于当前单据
if (huInfo.site !== localStorage.getItem('site')) {
// HU站点必须与选中单据行的contract一致,不能用登录大site比对
if (huInfo.site !== processSite) {
this.$message.error('HandlingUnit站点不匹配'); this.$message.error('HandlingUnit站点不匹配');
return; return;
} }
@ -340,10 +352,16 @@ export default {
// 提交确认处理 // 提交确认处理
submitConfirmProcess() { submitConfirmProcess() {
const processSite = this.getProcessSite();
if (!processSite) {
this.$message.error('缺少单据站点信息,请返回重新选择');
return;
}
const handlingUnitIds = this.scannedItems.map(item => item.unitId); const handlingUnitIds = this.scannedItems.map(item => item.unitId);
const params = { const params = {
site: localStorage.getItem('site'),
site: processSite,
transNo: this.processInfo.transNo, transNo: this.processInfo.transNo,
processType: this.processInfo.processType, processType: this.processInfo.processType,
handlingUnitIds: handlingUnitIds handlingUnitIds: handlingUnitIds
@ -385,12 +403,14 @@ export default {
// 获取路由参数 // 获取路由参数
const query = this.$route.query; const query = this.$route.query;
this.processType = query.processType || 'RETURN'; this.processType = query.processType || 'RETURN';
this.site = query.contract || '';
this.processInfo = { this.processInfo = {
transNo: query.transNo, transNo: query.transNo,
itemNo: query.itemNo, itemNo: query.itemNo,
processType: query.processType, processType: query.processType,
partNo: query.partNo, partNo: query.partNo,
unqualifiedQty: query.unqualifiedQty
unqualifiedQty: query.unqualifiedQty,
contract: query.contract
}; };
// 如果有传入的扫描项目,恢复它们 // 如果有传入的扫描项目,恢复它们

Loading…
Cancel
Save