| 
					
				 | 
			
			
				@@ -145,7 +145,14 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			entity.setPurOrSubOrder(detailsItem.getPurOrSubOrder());//采购委外订单号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			entity.setPrice(detailsItem.getSalesUnitPrice());//单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			entity.setFactoryUnitPrice(detailsItem.getFactoryUnitPrice());//工厂单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			updateQuantity(entity.getActualDeclaredQuantity(),entity.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(entity.getMasterMetering().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				updateQuantity(entity.getNetWeight(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				updateQuantity(entity.getActualDeclaredQuantity(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if((entity.getInventoryCcode().indexOf("03")!=-1&&!entity.getInventoryCcode().equals("0399")) || 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -180,19 +187,20 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	 * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	@Transactional 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	public void  updateQuantity(BigDecimal quantity,String syShippingDetailsItemId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public void  updateQuantity(BigDecimal quantity,String syShippingDetailsItemId,String master){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		QueryWrapper queryWrapper=new QueryWrapper(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		queryWrapper.eq("sy_shipping_details_item_id", syShippingDetailsItemId);//出运明细id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		queryWrapper.eq("del_flag", "0");//未删除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		queryWrapper.select("sum(actual_Declared_Quantity) as actualDeclaredQuantity");//获取实际报关数量合计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(master.equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			queryWrapper.select("sum(net_Weight) as actualDeclaredQuantity");//获取净重合计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			queryWrapper.select("sum(actual_Declared_Quantity) as actualDeclaredQuantity");//获取实际报关数量合计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		BigDecimal actualDeclaredQuantity=new BigDecimal("0"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(syPackingListFabricItemMapper.selectOne(queryWrapper)!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			actualDeclaredQuantity=syPackingListFabricItemMapper.selectOne(queryWrapper).getActualDeclaredQuantity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		System.out.println("本次数量\t"+quantity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		System.out.println("总数\t"+actualDeclaredQuantity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		actualDeclaredQuantity=actualDeclaredQuantity.add(quantity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		System.out.println("总数减后\t"+actualDeclaredQuantity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		SyShippingDetailsItem item=syShippingDetailsItemMapper.selectById(syShippingDetailsItemId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		BigDecimal shipmentQuantity=item.getShipmentQuantity();//获取发货数量 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -208,11 +216,11 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		item.setExcessQuantity(excessQuantity);//出运明细超发数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		syShippingDetailsItemMapper.updateById(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		/*UpdateWrapper updateWrapper=new UpdateWrapper(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		UpdateWrapper updateWrapper=new UpdateWrapper(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		updateWrapper.set("remaining_Quantity",remainingQuantity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		updateWrapper.set("excess_Quantity",excessQuantity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		updateWrapper.eq("sy_shipping_details_item_id",syShippingDetailsItemId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		return syPackingListFabricItemMapper.update(null,updateWrapper);*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		syPackingListFabricItemMapper.update(null,updateWrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	/** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -222,7 +230,6 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	public String getMasterMetering(String id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		SyOrderDataItem syOrderDataItem=syOrderDataItemMapper.selectById(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		System.out.println("单位\t"+syOrderDataItem.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return syOrderDataItem.getMasterMetering(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -265,35 +272,35 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			entity.setInventoryQuantity(entity.getActualDeclaredQuantity());//入库数量=实际报关数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if(entity.getIsAdd()>0){//大于1就是新增数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				//因为云工场得修改时得停止调用前面接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				/*SyShippingDetailsItem s1 =syShippingDetailsItemMapper.selectById(entity.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				//剩余数量-这次入库数量=新剩余数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				s1.setOrderRemainingQuantity(s1.getOrderRemainingQuantity().subtract(entity.getInventoryQuantity())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				//此次入库数量-剩余数量=超发数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				s1.setExcessQuantity(entity.getInventoryQuantity().subtract(s1.getOrderRemainingQuantity())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				syShippingDetailsItemMapper.updateById(s1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				entity.setTotalPrice(entity.getActualDeclaredQuantity().multiply(entity.getPrice()));//实际报关数量*单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				if((entity.getInventoryCcode().indexOf("03")!=-1&&!entity.getInventoryCcode().equals("0399")) || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						(entity.getInventoryCcode().indexOf("02")!=-1&&!entity.getInventoryCcode().equals("0299"))|| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						(entity.getInventoryCcode().indexOf("04")!=-1&&!entity.getInventoryCcode().equals("0499"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					if(entity!=null&&entity.getMasterMetering().equals("KG")){//当单位为KG时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						entity.setTotalPrice(entity.getNetWeight().multiply(entity.getPrice()));//净重*单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					else if(entity!=null&&entity.getMasterMetering().equals("M")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						entity.setTotalPrice(entity.getMeter().multiply(entity.getPrice()));//米数*单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				}*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				entity.setId(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				syPackingListFabricItemMapper.insert(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				updateQuantity(entity.getActualDeclaredQuantity(),entity.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(entity.getMasterMetering()==null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					throw new JeecgBootException("没有单位无法保存"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(entity.getMasterMetering().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					updateQuantity(entity.getNetWeight(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					updateQuantity(entity.getActualDeclaredQuantity(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				QueryWrapper queryWrapper=new QueryWrapper(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				queryWrapper.eq("id", entity.getId());//子表id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				queryWrapper.select("actual_Declared_Quantity as actualDeclaredQuantity");//获取实际报关数量合计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				BigDecimal actualDeclaredQuantity=syPackingListFabricItemMapper.selectOne(queryWrapper).getActualDeclaredQuantity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				actualDeclaredQuantity=actualDeclaredQuantity.subtract(entity.getActualDeclaredQuantity()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				syPackingListFabricItemMapper.updateById(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				updateQuantity(actualDeclaredQuantity.negate(),entity.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(entity.getMasterMetering().equals("KG")){//根据净重 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					QueryWrapper queryWrapper=new QueryWrapper(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					queryWrapper.eq("id", entity.getId());//子表id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					queryWrapper.select("net_Weight as netWeight");//获取实际报关数量合计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					BigDecimal netWeight=syPackingListFabricItemMapper.selectOne(queryWrapper).getNetWeight(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					netWeight=netWeight.subtract(entity.getNetWeight()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					syPackingListFabricItemMapper.updateById(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					updateQuantity(netWeight.negate(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else{//根据实际报关数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					QueryWrapper queryWrapper=new QueryWrapper(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					queryWrapper.eq("id", entity.getId());//子表id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					queryWrapper.select("actual_Declared_Quantity as actualDeclaredQuantity");//获取实际报关数量合计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					BigDecimal actualDeclaredQuantity=syPackingListFabricItemMapper.selectOne(queryWrapper).getActualDeclaredQuantity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					actualDeclaredQuantity=actualDeclaredQuantity.subtract(entity.getActualDeclaredQuantity()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					syPackingListFabricItemMapper.updateById(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					updateQuantity(actualDeclaredQuantity.negate(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return syPackingListFabric; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -310,7 +317,11 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		queryWrapper.eq("sy_packing_list_fabric_id",id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		List<SyPackingListFabricItem> syPackingListFabricItems=syPackingListFabricItemMapper.selectList(queryWrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		for(SyPackingListFabricItem item : syPackingListFabricItems){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			updateQuantity(item.getActualDeclaredQuantity().negate(),item.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(item.getNetWeight().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				updateQuantity(item.getNetWeight().negate(),item.getSyShippingDetailsItemId(),item.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				updateQuantity(item.getActualDeclaredQuantity().negate(),item.getSyShippingDetailsItemId(),item.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		syPackingListFabricItemMapper.deleteByMainId(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		syPackingListFabricMapper.deleteByMainId(id); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -328,7 +339,11 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			queryWrapper.eq("sy_packing_list_fabric_id",id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			List<SyPackingListFabricItem> syPackingListFabricItems=syPackingListFabricItemMapper.selectList(queryWrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			for(SyPackingListFabricItem item : syPackingListFabricItems){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				updateQuantity(item.getActualDeclaredQuantity().negate(),item.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(item.getNetWeight().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					updateQuantity(item.getNetWeight().negate(),item.getSyShippingDetailsItemId(),item.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					updateQuantity(item.getActualDeclaredQuantity().negate(),item.getSyShippingDetailsItemId(),item.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			syPackingListFabricItemMapper.deleteByMainId(id.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			syPackingListFabricMapper.deleteByMainId(id.toString()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -605,12 +620,17 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					s1.setSpecificationAndModel(item.getSpecificationAndModel());//规格型号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					if(s1.getActualDeclaredQuantity()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(s1.getActualDeclaredQuantity()==null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						//s1.setExcessQuantity(s1.getActualDeclaredQuantity().subtract(item.getOrderRemainingQuantity()));//超发数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						//s1.setRemainingQuantity(item.getOrderRemainingQuantity().subtract(s1.getActualDeclaredQuantity()));//剩余数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						/*item.setExcessQuantity(s1.getActualDeclaredQuantity().subtract(item.getOrderRemainingQuantity())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						item.setOrderRemainingQuantity(item.getOrderRemainingQuantity().subtract(s1.getActualDeclaredQuantity()));*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						updateQuantity(s1.getActualDeclaredQuantity(),s1.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						throw new JeecgBootException("实际报关数量不能为null"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(s1.getMasterMetering().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						updateQuantity(s1.getNetWeight(),s1.getSyShippingDetailsItemId(),s1.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						updateQuantity(s1.getActualDeclaredQuantity(),s1.getSyShippingDetailsItemId(),s1.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					item.setIsReference(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					syShippingDetailsItemMapper.updateById(item); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -669,7 +689,9 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					item.setSyOrderDataItemId(syShippingDetailsItem.getSyOrderDataItemId());//销售订单主表id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					item.setSyOrderDataId(syShippingDetailsItem.getSyOrderDataId());//销售订单子表id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					item.setGroupId(oConvertUtils.getId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					item.setMasterMetering(getMasterMetering(item.getSyOrderDataItemId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					SyOrderDataItem dataItem=syOrderDataItemMapper.selectById(syShippingDetailsItem.getSyOrderDataItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					item.setMasterMetering(dataItem.getMasterMetering());//计量单位 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					//item.setMasterMetering(getMasterMetering(item.getSyOrderDataItemId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					item.setPurOrSubOrder(syShippingDetailsItem.getPurOrSubOrder());//委外采购订单 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					item.setManualYarnUnitPrice(syShippingDetailsItem.getManualYarnUnitPrice());//手册纱单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					item.setManualYarnFlag(syShippingDetailsItem.getManualYarnFlag());//手册纱单价 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -722,7 +744,11 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						syShippingDetailsItem.setOrderRemainingQuantity(syShippingDetailsItem.getOrderRemainingQuantity().subtract(item.getActualDeclaredQuantity()));*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						syShippingDetailsItem.setIsReference(2);//回写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						syShippingDetailsItemMapper.updateById(syShippingDetailsItem); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						updateQuantity(item.getActualDeclaredQuantity(),item.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(item.getMasterMetering().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						updateQuantity(item.getNetWeight(),item.getSyShippingDetailsItemId(),item.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						updateQuantity(item.getActualDeclaredQuantity(),item.getSyShippingDetailsItemId(),item.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					syPackingListFabricItemMapper.insert(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				} 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -758,12 +784,20 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				SyShippingDetailsItem syShippingDetailsItem=syShippingDetailsItemMapper.selectById(item.getSyShippingDetailsItemId());//获取物料分类和其他数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				//物料分类 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				if(syShippingDetailsItem!=null){//不为null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					item.setInventoryCcode(syShippingDetailsItem.getInventoryCcode());//物料分类 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					item.setPrice(syShippingDetailsItem.getSalesUnitPrice());//价格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					if(syShippingDetailsItem.getMasterMetering()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						item.setMasterMetering(syShippingDetailsItem.getMasterMetering());//单位 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					SyOrderDataItem dataItem=syOrderDataItemMapper.selectById(syShippingDetailsItem.getSyOrderDataItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(dataItem.getMasterMetering().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						total3=total3.add(item.getNetWeight()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						total3=total3.add(item.getActualDeclaredQuantity()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					if((item.getInventoryCcode().indexOf("03")!=-1&&!item.getInventoryCcode().equals("0399")) || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					//item.setInventoryCcode(syShippingDetailsItem.getInventoryCcode());//物料分类 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					//item.setPrice(syShippingDetailsItem.getSalesUnitPrice());//价格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					/*if(syShippingDetailsItem.getMasterMetering()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						item.setMasterMetering(syShippingDetailsItem.getMasterMetering());//单位 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					/*if((item.getInventoryCcode().indexOf("03")!=-1&&!item.getInventoryCcode().equals("0399")) || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							(item.getInventoryCcode().indexOf("02")!=-1&&!item.getInventoryCcode().equals("0299"))|| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							(item.getInventoryCcode().indexOf("04")!=-1&&!item.getInventoryCcode().equals("0499"))){//面料计算米数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						if(item.getMeter()==null){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -772,8 +806,10 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							item.setActualDeclaredQuantity(item.getMeter()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					if(item.getMasterMetering().equals("KG")){//计算总价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}else{//辅料 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					/*if(item.getMasterMetering().equals("KG")){//计算总价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						if(item.getNetWeight()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							item.setTotalPrice(item.getNetWeight().multiply(item.getPrice()));//净重*单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						}else{ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -785,10 +821,9 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							//throw new JeecgBootException("单位不为kg的物料请填写实际报关数量,用于计算金额"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				//单位换算 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				total3=total3.add(item.getActualDeclaredQuantity()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				name=item.getPlanLotNumber()+"-"+item.getDeclarationName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				ids+=item.getSyShippingDetailsItemId()+",";//获取出运明细子表id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -807,16 +842,17 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				queryWrapper=new QueryWrapper(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				queryWrapper.in("sy_Shipping_Details_Item_Id", Arrays.asList(ids.split(","))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				queryWrapper.eq("del_flag","0"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				queryWrapper.select("sum(actual_Declared_Quantity) as actual_Declared_Quantity"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				queryWrapper.select("sum(actual_Declared_Quantity) as actual_Declared_Quantity,sum(net_Weight) as net_Weight,master_Metering"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				SyPackingListFabricItem syPackingListFabricItem=syPackingListFabricItemMapper.selectOne(queryWrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				if(syPackingListFabricItem!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					total2=syPackingListFabricItem.getActualDeclaredQuantity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(syPackingListFabricItem.getMasterMetering().equals("KG")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						total2=syPackingListFabricItem.getNetWeight(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						total2=syPackingListFabricItem.getActualDeclaredQuantity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			total1.setScale(2,BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			total2.setScale(2,BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			total3.setScale(2,BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			strs+=name+"的原单据数量"+total1+",已参照数量"+total2+",本次数量"+total3+";"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			strs+=name+"的原单据数量"+total1.setScale(2,BigDecimal.ROUND_HALF_UP)+",已参照数量"+total2.setScale(2,BigDecimal.ROUND_HALF_UP)+",本次数量"+total3.setScale(2,BigDecimal.ROUND_HALF_UP)+";"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			num++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return strs; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1118,29 +1154,38 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(item.getMasterMetering().equals("KG")){//获取净重 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem.put("IQUANTITY",item.getNetWeight());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem3.put("IQUANTITY",item.getNetWeight());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem4.put("IQUANTITY",item.getNetWeight());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem5.put("IQUANTITY",item.getNetWeight());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem6.put("IQUANTITY",item.getNetWeight());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else{//获取实际报关数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem3.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem4.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem5.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					mapItem6.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem.put("CINVCODE",item.getInventoryCode());//存货编码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				mapItem.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				//mapItem.put("INUM",orderDataItem.get("inum"));//明细ID(采购订单行ID/委外订单行ID) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				//mapItem.put("cBatch","x");//批号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem3.put("CINVCODE",item.getInventoryCode());//存货编码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				mapItem3.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem4.put("CINVCODE",item.getInventoryCode());//存货编码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				mapItem4.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem4.put("size",item.getSize());//根据尺码判断 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem4.put("SOAUTOIDCOL","IDLSID");//订单明细ID对应字段名(关联单据类型为发货单IDLSID) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				//mapItem4.put("AUTOID_SO","10300001");//关联明细ID 测试用先写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem5.put("CINVCODE",item.getInventoryCode());//存货编码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				mapItem5.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem6.put("CINVCODE",item.getInventoryCode());//存货编码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				mapItem6.put("IQUANTITY",item.getActualDeclaredQuantity());//数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mapItem6.put("size",item.getSize());//根据尺码判断 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1742,7 +1787,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							if(sy1.getMasterMetering().equals("KG")){//计算总价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-								if(sy1.getNetWeight()==null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								if(sy1.getNetWeight()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 									sy1.setTotalPrice(sy1.getNetWeight().multiply(sy1.getPrice()));//净重*单价 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 								} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							}else{ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1751,8 +1796,14 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 								} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-							if(sy1.getActualDeclaredQuantity()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-								updateQuantity(sy1.getActualDeclaredQuantity(),sy1.getSyShippingDetailsItemId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							/*if(sy1.getActualDeclaredQuantity()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								updateQuantity(sy1.getActualDeclaredQuantity(),sy1.getSyShippingDetailsItemId(),sy1.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							}*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							if(sy1.getMasterMetering().equals("KG")&&sy1.getNetWeight()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								updateQuantity(sy1.getNetWeight(),sy1.getSyShippingDetailsItemId(),sy1.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							}else if(sy1.getActualDeclaredQuantity()!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								updateQuantity(sy1.getActualDeclaredQuantity(),sy1.getSyShippingDetailsItemId(),sy1.getMasterMetering()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 							items.add(sy1); 
			 |