This commit is contained in:
linfso 2025-05-11 12:34:38 +08:00
parent 38a642610c
commit beb213a53b
3 changed files with 74 additions and 10 deletions

View File

@ -13,6 +13,8 @@ package com.xdadan.erp.emis.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xdadan.erp.emis.domain.EmisWaybillProblemInfo;
import org.apache.ibatis.annotations.Param;
/**
* @ClassName EmisWaybillProblemInfoMapper
* @Description <p> 问题件 Mapper 接口 </p>
@ -36,6 +38,9 @@ public interface EmisWaybillProblemInfoMapper extends BaseMapper<EmisWaybillProb
*/
public int checkUnique(EmisWaybillProblemInfo emisWaybillProblemInfo);
//bug:1371: 出口虚拟单/返货虚拟单/面单删除,若登记了以上三种类型任意问题件 都不允许再做扫描和签收了
public int checkIsNoNeedScanBill(@Param("billCode") String billCode);
/**
* 查询列表
*

View File

@ -629,6 +629,27 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
return itemList;
}
// bug:1371 问题件类型:出口虚拟单/返货虚拟单/面单删除,若登记了以上三种类型任意问题件 都不允许再做扫描和签收了
int rnt=emisWaybillProblemInfoMapper.checkIsNoNeedScanBill(mainBillCode);
if (rnt>0) {
scanResultItem.setResult("fail");
scanResultItem.setMessage(scanBillCode + "此单号是虚拟单,不允许扫描");
scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode);
itemList.add(scanResultItem);
return itemList;
}
// 返货虚拟面单、出口虚拟面单;不允许做 派件扫描和签收扫描
// if("1".equals(emisWaybill.getBlIsQuestion()) && (scanType.equals(ScanType.SENT.opCode) || scanType.equals(ScanType.SIGNED.opCode) )){
// if(emisWaybill.getProblemType() == 173 || emisWaybill.getProblemType() == 170){
// scanResultItem.setResult("fail");
// scanResultItem.setMessage(scanBillCode + "此单号是虚拟单,不允许扫描");
// scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode);
// itemList.add(scanResultItem);
// return itemList;
// }
// }
// 已签收不允许扫描
boolean isSign = checkWaybillIsSign(mainBillCode);
if (isSign) {
@ -658,16 +679,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
// 获取订单数据
EmisWaybill emisWaybill = getWaybillByBillCode(mainBillCode);
// 返货虚拟面单、出口虚拟面单;不允许做 派件扫描和签收扫描
if("1".equals(emisWaybill.getBlIsQuestion()) && (scanType.equals(ScanType.SENT.opCode) || scanType.equals(ScanType.SIGNED.opCode) )){
if(emisWaybill.getProblemType() == 173 || emisWaybill.getProblemType() == 170){
scanResultItem.setResult("fail");
scanResultItem.setMessage(scanBillCode + "此单号是虚拟单,不允许扫描");
scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode);
itemList.add(scanResultItem);
return itemList;
}
}
// 填充运单基础数据
emisTmsScanRecord.setMainBillCode(emisWaybill.getBillCode());
@ -769,6 +781,16 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
return itemList;
}
// bug:1371 问题件类型:出口虚拟单/返货虚拟单/面单删除,若登记了以上三种类型任意问题件 都不允许再做扫描和签收了
int rnt=emisWaybillProblemInfoMapper.checkIsNoNeedScanBill(mainBillCode);
if (rnt>0) {
scanResultItem.setResult("fail");
scanResultItem.setMessage(scanBillCode + "此单号是虚拟单,不允许扫描");
scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode);
itemList.add(scanResultItem);
return itemList;
}
// 已签收不允许扫描
boolean isSign = checkWaybillIsSign(mainBillCode);
if (isSign) {
@ -1052,6 +1074,16 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
return itemList;
}
// bug:1371 问题件类型:出口虚拟单/返货虚拟单/面单删除,若登记了以上三种类型任意问题件 都不允许再做扫描和签收了
int rnt=emisWaybillProblemInfoMapper.checkIsNoNeedScanBill(mainBillCode);
if (rnt>0) {
scanResultItem.setResult("fail");
scanResultItem.setMessage(scanBillCode + "此单号是虚拟单,不允许扫描");
scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode);
itemList.add(scanResultItem);
return itemList;
}
// 已签收不允许扫描
boolean isSign = checkWaybillIsSign(mainBillCode);
if (isSign) {
@ -1281,6 +1313,16 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
return itemList;
}
// bug:1371 问题件类型:出口虚拟单/返货虚拟单/面单删除,若登记了以上三种类型任意问题件 都不允许再做扫描和签收了
int rnt=emisWaybillProblemInfoMapper.checkIsNoNeedScanBill(mainBillCode);
if (rnt>0) {
scanResultItem.setResult("fail");
scanResultItem.setMessage(scanBillCode + "此单号是虚拟单,不允许扫描");
scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode);
itemList.add(scanResultItem);
return itemList;
}
// 已签收不允许扫描
boolean isSign = checkWaybillIsSign(mainBillCode);
if (isSign) {
@ -1422,6 +1464,16 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
return itemList;
}
// bug:1371 问题件类型:出口虚拟单/返货虚拟单/面单删除,若登记了以上三种类型任意问题件 都不允许再做扫描和签收了
int rnt=emisWaybillProblemInfoMapper.checkIsNoNeedScanBill(mainBillCode);
if (rnt>0) {
scanResultItem.setResult("fail");
scanResultItem.setMessage(scanBillCode + "此单号是虚拟单,不允许扫描");
scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode);
itemList.add(scanResultItem);
return itemList;
}
// 已签收不允许扫描
boolean isSign = checkWaybillIsSign(mainBillCode);
if (isSign) {

View File

@ -114,6 +114,13 @@
limit 1
</select>
<select id="checkIsNoNeedScanBill" parameterType="String" resultType="int">
select count(1) from emis_waybill_problem_info
where del_flag='0' and problem_type in(173,170,151) and main_bill_code = #{billCode}
limit 1
</select>
<select id="selectEmisWaybillProblemInfoById" parameterType="Long" resultMap="EmisWaybillProblemInfoResult">
select id, bill_code, main_bill_code, bl_sub_bill, problem_type, problem_title, problem_cause, send_site, send_site_code, register_man_code, register_man_dept, register_site_code, register_date, register_save_date, data_from, status, is_send_site_register, bl_reversion, reversion_str, reversion_man, reversion_man_code, reversion_site_code, reversion_date, bl_checkok, deal_result, bl_see, file_path, del_flag, create_by, create_time, update_by, update_time, remark, create_site, update_site
from emis_waybill_problem_info a