|  |  | @ -135,6 +135,11 @@ public class MesBoxingErrorProofingService implements IMesBoxingErrorProofingSer | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |             return ResultBean.success("箱条码扫描成功,请扫零件条码!").setResultObject(mesPackage); |  |  |  |             return ResultBean.success("箱条码扫描成功,请扫零件条码!").setResultObject(mesPackage); | 
			
		
	
		
		
			
				
					
					|  |  |  |         } else { |  |  |  |         } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             /** | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |              * 2024-12-23 修复bug 44242 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |              * 已经关箱的箱条码,如果重复扫描,不需要重置,可以扫描下一个需要装箱的条码。 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |              * | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |              */ | 
			
		
	
		
		
			
				
					
					|  |  |  |             checkNotNull(mesPackageDetail); |  |  |  |             checkNotNull(mesPackageDetail); | 
			
		
	
		
		
			
				
					
					|  |  |  |             //校验零件条码是否存在
 |  |  |  |             //校验零件条码是否存在
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (StringUtils.isEmpty(mesPackageDetail.getSerialNumber())) { |  |  |  |             if (StringUtils.isEmpty(mesPackageDetail.getSerialNumber())) { | 
			
		
	
	
		
		
			
				
					|  |  | @ -143,8 +148,18 @@ public class MesBoxingErrorProofingService implements IMesBoxingErrorProofingSer | 
			
		
	
		
		
			
				
					
					|  |  |  |             //校验包装条码信息
 |  |  |  |             //校验包装条码信息
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             MesPackage mesPackage = getMesPackageAndCheck(mesPackageDetail.getPackageNo(), mesPackageDetail.getOrganizeCode()); |  |  |  |             MesPackage mesPackage = getMesPackageAndCheck(mesPackageDetail.getPackageNo(), mesPackageDetail.getOrganizeCode()); | 
			
		
	
		
		
			
				
					
					|  |  |  |             //校验是否已关闭
 |  |  |  |             //校验是否已关闭
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == mesPackage.getIsSealed()) { |  |  |  |             if (CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == mesPackage.getIsSealed() ) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                 MesPcnException.throwMesBusiException("箱条码已封箱,不允许扫描零件条码,请检查数据!"); |  |  |  |                 List<MesProduceSn> produceSnList = mesProduceSnExtService.getProduceSnList(mesPackageDetail.getOrganizeCode(), mesPackageDetail.getSerialNumber()); | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 //1.查询包装明细是否包含此零件
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 List<MesPackingDefineDetails> defineDetails = getMesPackingDefineDetailsNew(mesPackageDetail.getOrganizeCode(), mesPackage.getPackageSn(), mesPackage.getPartNo()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 //确保是自制件和外协件
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 if ((produceSnList != null && !produceSnList.isEmpty())|| (defineDetails != null && !defineDetails.isEmpty() && StringUtils.isEmpty(defineDetails.get(0).getPackageBarcodeRule()))) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     MesPcnException.throwMesBusiException("箱条码已封箱,不允许扫描零件条码,请检查数据!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 }else { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     //扫描的是箱条码
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     mesPackageDetail.setIsScanPackage(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     this.doScan(mesPackageDetail); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |             //校验条码规则
 |  |  |  |             //校验条码规则
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             MesPart mesPart = getMesPartNew(mesPackageDetail, mesPackage, packingDefine); |  |  |  |             MesPart mesPart = getMesPartNew(mesPackageDetail, mesPackage, packingDefine); | 
			
		
	
	
		
		
			
				
					|  |  | 
 |