Explorar o código

接收云工厂接口调整

huxy %!s(int64=2) %!d(string=hai) anos
pai
achega
ac5928434e

+ 54 - 10
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splfi/service/impl/SyPackingListFabricServiceImpl.java

@@ -19,6 +19,7 @@ import org.jeecg.modules.documents.shippingDetails.entity.SyShippingDetails;
 import org.jeecg.modules.documents.shippingDetails.entity.SyShippingDetailsItem;
 import org.jeecg.modules.documents.shippingDetails.entity.VO.SyShippingDetailsVo;
 import org.jeecg.modules.documents.shippingDetails.mapper.SyShippingDetailsItemMapper;
+import org.jeecg.modules.documents.shippingDetails.mapper.SyShippingDetailsMapper;
 import org.jeecg.modules.documents.shippingDetails.service.impl.SyShippingDetailsItemServiceImpl;
 import org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrder;
 import org.jeecg.modules.openApi.entity.DxpDataPlan;
@@ -48,6 +49,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
+import javax.annotation.Resource;
 import java.io.FileWriter;
 import java.io.Serializable;
 import java.lang.reflect.Array;
@@ -70,6 +72,8 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 	@Autowired
 	private SyPackingListFabricItemMapper syPackingListFabricItemMapper;
 	@Autowired
+	private SyShippingDetailsMapper syShippingDetailsMapper;
+	@Autowired
 	private SyShippingDetailsItemMapper syShippingDetailsItemMapper;
 	@Autowired
 	private SyDeclarationElementsMapper syDeclarationElementsMapper;
@@ -132,6 +136,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			entity.setFactoryUnitPrice(detailsItem.getFactoryUnitPrice());//工厂单价
 			entity.setTotalPrice(entity.getActualDeclaredQuantity().multiply(entity.getPrice()));//实际报关数量*单价
 			if((entity.getInventoryCode().indexOf("03")!=-1&&!entity.getInventoryCode().equals("0399")) ||
+					(entity.getInventoryCcode().indexOf("02")!=-1&&!entity.getInventoryCcode().equals("0299"))||
 					(entity.getInventoryCode().indexOf("04")!=-1&&!entity.getInventoryCode().equals("0499"))){
 				if(entity.getMasterMetering()!=null&&entity.getMasterMetering().equals("KG")){//当单位为KG时
 					entity.setTotalPrice(entity.getNetWeight().multiply(entity.getPrice()));//净重*单价
@@ -173,6 +178,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				syShippingDetailsItemMapper.updateById(s1);*/
 				entity.setTotalPrice(entity.getActualDeclaredQuantity().multiply(entity.getPrice()));//实际报关数量*单价
 				if((entity.getInventoryCode().indexOf("03")!=-1&&!entity.getInventoryCode().equals("0399")) ||
+						(entity.getInventoryCcode().indexOf("02")!=-1&&!entity.getInventoryCcode().equals("0299"))||
 						(entity.getInventoryCode().indexOf("04")!=-1&&!entity.getInventoryCode().equals("0499"))){
 					if(entity!=null&&entity.getMasterMetering().equals("KG")){//当单位为KG时
 						entity.setTotalPrice(entity.getNetWeight().multiply(entity.getPrice()));//净重*单价
@@ -518,6 +524,8 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			syPackingListFabric.setStatus("0");
 			syPackingListFabric.setDelFlag("0");
 			syPackingListFabricMapper.insert(syPackingListFabric);
+			//客户名
+			//客户简称
 			for (SyPackingListFabricItem s1 : syPackingListFabric.getSyPackingListFabricItem()) {
 				s1.setId(null);
 				s1.setDelFlag("0");
@@ -526,28 +534,62 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				if(item!=null){
 					//规格型号	超发	发运明细剩余数量	业务部门		价格	总价(计算)
 					s1.setSalesDepartment(item.getSalesDepartment());//业务部门
+					syPackingListFabric.setGarmentFactory(item.getGarmentFactory());//主表的成衣
+					syPackingListFabric.setCustomerAbbreviation(item.getCustomerAbbreviation());//客户简称
 					s1.setPrice(item.getSalesUnitPrice());//销售单价
-					s1.setSpecificationAndModel(item.getSpecificationAndModel());//规格型号
-					s1.setExcessQuantity(s1.getActualDeclaredQuantity().subtract(item.getSurplusQuantity()));//超发数量
-					s1.setSurplusQuantity(item.getSurplusQuantity().subtract(s1.getActualDeclaredQuantity()).intValue());//剩余数量
-					item.setExcessQuantity(s1.getActualDeclaredQuantity().subtract(item.getSurplusQuantity()));
-					item.setSurplusQuantity(item.getSurplusQuantity().subtract(s1.getActualDeclaredQuantity()));
+					s1.setInventoryCcode(item.getInventoryCcode());//物料分类
 					s1.setMasterMetering(item.getMasterMetering());//单位
-					syShippingDetailsItemMapper.updateById(item);
+					syPackingListFabric.setSyDeclarationElementsId(item.getShippingDetailsId());//出运明细主表id
+					s1.setSpecificationAndModel(item.getSpecificationAndModel());//规格型号
 					if(s1.getActualDeclaredQuantity()!=null){
 						s1.setTotalPrice(s1.getActualDeclaredQuantity().multiply(s1.getPrice()));//实际报关数量*单价
 					}
-					if((s1.getInventoryCode().indexOf("03")!=-1&&!s1.getInventoryCode().equals("0399")) ||
-						(s1.getInventoryCode().indexOf("04")!=-1&&!s1.getInventoryCode().equals("0499"))){
+					if((s1.getInventoryCcode().indexOf("03")!=-1&&!s1.getInventoryCcode().equals("0399")) ||
+							(s1.getInventoryCcode().indexOf("02")!=-1&&!s1.getInventoryCcode().equals("0299"))||
+						(s1.getInventoryCcode().indexOf("04")!=-1&&!s1.getInventoryCcode().equals("0499"))){
 						if(s1.getMasterMetering()!=null&&s1.getMasterMetering().equals("KG")){//当单位为KG时
 							s1.setTotalPrice(s1.getNetWeight().multiply(s1.getPrice()));//净重*单价
+
+
+							s1.setActualDeclaredQuantity(s1.getNetWeight());//净重为报关数量
 						}else if(s1.getMasterMetering()!=null&&s1.getMasterMetering().equals("M")){
-							s1.setTotalPrice(s1.getMeter().multiply(s1.getPrice()));//米数*单价
+							if(s1.getMeter()!=null){
+								s1.setTotalPrice(s1.getMeter().multiply(s1.getPrice()));//米数*单价
+								s1.setActualDeclaredQuantity(s1.getNetWeight());//净重为报关数量
+							}
 						}
 					}
+					if(item.getInventoryCcode()!=null&&item.getInventoryCcode().indexOf("04")>-1
+							&&!item.getInventoryCcode().equals("0499")){
+						//满足条件
+						s1.setSupplierCodeDyeingPlant(item.getRSupplierCode());//染厂编码
+						s1.setSupplierCodePrintingPlant(item.getSupplierCode());//染厂
+						s1.setSupplierCodePrintingPlant(item.getSupplierCode());//印厂编码
+						s1.setSupplierPrintingPlant(item.getSupplier());//印厂
+					}
+					if(item.getInventoryCcode()!=null&&item.getInventoryCcode().indexOf("03")>-1
+							&&!item.getInventoryCcode().equals("0399")){
+						//满足条件
+						s1.setSupplierCodeDyeingPlant(item.getSupplierCode());//染厂编码
+						s1.setSupplierDyeingPlant(item.getSupplier());//染厂
+					}
+					s1.setSpecificationAndModel(item.getSpecificationAndModel());//规格型号
+					s1.setExcessQuantity(s1.getActualDeclaredQuantity().subtract(item.getSurplusQuantity()));//超发数量
+					s1.setSurplusQuantity(item.getSurplusQuantity().subtract(s1.getActualDeclaredQuantity()).intValue());//剩余数量
+					item.setExcessQuantity(s1.getActualDeclaredQuantity().subtract(item.getSurplusQuantity()));
+					item.setSurplusQuantity(item.getSurplusQuantity().subtract(s1.getActualDeclaredQuantity()));
+					syShippingDetailsItemMapper.updateById(item);
+				}else{
+					throw new JeecgBootException("出运明细未找到对应数据");
 				}
 				syPackingListFabricItemMapper.insert(s1);
 			}
+			if(syPackingListFabric.getSyDeclarationElementsId()!=null){
+				SyShippingDetails syShippingDetails=syShippingDetailsMapper.selectById(syPackingListFabric.getSyDeclarationElementsId());
+				if(syShippingDetails!=null){
+					syPackingListFabric.setCustomer(syShippingDetails.getCustomer());
+				}
+			}
 		}
 	}
 
@@ -575,7 +617,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				List<SyPackingListFabricItem> items=syPackingListFabric.getSyPackingListFabricItem();
 				for(SyPackingListFabricItem item :items){
 					SyShippingDetailsItem syShippingDetailsItem=syShippingDetailsItemMapper.selectById(item.getSyShippingDetailsItemId());//itemid
-					if(item==null){
+					if(syShippingDetailsItem==null){
 						throw new JeecgBootException("出运明细未找到对应数据");
 					}
 					if(item.getActualDeclaredQuantity()!=null){
@@ -583,6 +625,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 						item.setTotalPrice(item.getActualDeclaredQuantity().multiply(syShippingDetailsItem.getSalesUnitPrice()));//实际报关数量*单价
 					}
 					if((syShippingDetailsItem.getInventoryCode().indexOf("03")!=-1&&!syShippingDetailsItem.getInventoryCode().equals("0399")) ||
+							(syShippingDetailsItem.getInventoryCcode().indexOf("02")!=-1&&!syShippingDetailsItem.getInventoryCcode().equals("0299"))||
 							(syShippingDetailsItem.getInventoryCode().indexOf("04")!=-1&&!syShippingDetailsItem.getInventoryCode().equals("0499"))){
 						if( item.getMasterMetering().equals("KG")){//当单位为KG时
 							item.setTotalPrice(item.getNetWeight().multiply(syShippingDetailsItem.getSalesUnitPrice()));//净重*单价
@@ -652,6 +695,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					if(syOrderDataItem!=null){//不为null
 
 						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"))){//面料
 							//米数计算公式 净重/(门幅/100)/(克重/1000)
 							if(item.getNetWeight()!=null&&item.getGramWeight()!=null&&item.getWidth()!=null){

+ 4 - 14
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/service/impl/SyPackingListTailoringServiceImpl.java

@@ -199,7 +199,6 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 		syPackingListTailoring.setPushState("0");//推送状态默认为0
 		syPackingListTailoring.setStatus("0");//单据状态默认为0
 		syPackingListTailoring.setDocumentNo(randomStr());//获取单据号
-		System.out.println("单据号是\t"+syPackingListTailoring.getDocumentNo());
 		syPackingListTailoring.setId(null);
 		syPackingListTailoring.setCreateTime(null);
 		SyPreAssembledPackingList syPreAssembledPackingList=syPreAssembledPackingListMapper.selectById(syPackingListTailoring.getSyPreAssembledPackingListId());
@@ -217,11 +216,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 		syPackingListTailoring.setCustomerAbbreviation(syPreAssembledPackingList.getCustomerAbbreviation());//客户简称
 		syPackingListTailoringMapper.insert(syPackingListTailoring);//往主表添加数据
 		Map<String,String> mapId=new HashMap<>();//key为发运明细子表id,value为分组id
-		/*syPackingListTailoring.setTotal(new BigDecimal("0"));
 		syPackingListTailoring.setTotalBoxes(new BigDecimal("0"));
-		syPackingListTailoring.setTotalVolume(new BigDecimal("0"));
-		syPackingListTailoring.setTotalGrossWeight(new BigDecimal("0"));
-		syPackingListTailoring.setTotalGrossWeight(new BigDecimal("0"));*/
 		syPackingListTailoring.setTotalPrice(new BigDecimal("0"));
 		for(SyPackingListTailoringItem s1 : items){//调整面辅料云工厂接口,导入添加验证,改面辅料金额计算
 			SyPreAssembledPackingListItem syPreAssembledPackingListItem=syPreAssembledPackingListItemMapper.selectById(s1.getSyPreAssembledPackingListItemId());
@@ -230,7 +225,6 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 			}
 			s1.setId(null);
 			s1.setDelFlag("0");
-			System.out.println("actualPackingQty数量\t"+s1.getActualPackingQty());
 			BigDecimal total=s1.getTotal();
 			s1.setTotal(s1.getActualPackingQty().multiply(s1.getBoxNumber()));//各尺码数量
 			s1.setActualPackingQty(total);//合计
@@ -239,7 +233,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 
 			if(!mapId.containsKey(s1.getGroupId())){//如果这个发运明细id没有分组id,就生成一个新的分组id
 				mapId.put(s1.getGroupId(), org.jeecg.modules.system.util.oConvertUtils.getId());//分组id
-				syPackingListTailoring.setTotalBoxes(s1.getBoxNumber());//总箱数
+				syPackingListTailoring.setTotalBoxes(syPackingListTailoring.getTotalBoxes().add(s1.getBoxNumber()));//总箱数
 			}
 			s1.setGroupId(mapId.get(s1.getGroupId()));//获取id
 			s1.setUnitPrice(syPreAssembledPackingListItem.getUnitPrice());//单价
@@ -262,17 +256,13 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 			s1.setSupplierCode(syPreAssembledPackingListItem.getSupplierCode());
 			s1.setYmoney(syPreAssembledPackingListItem.getYmoney());//佣金
 			s1.setElementsId(syPackingListTailoring.getElementsId());//申报要素id
-			/*s1.getOmpoId(syPreAssembledPackingListItem.getOmpoId())//采购委外主表id
-			s1.setOmpoIdItem(syPreAssembledPackingListItem.getOmpoIdItem());//采购委外子表id*/
-			/*syPackingListTailoring.setTotalBoxes(s1.getBoxNumber());//总箱数
-			syPackingListTailoring.setTotal(syPackingListTailoring.getTotal().add(s1.getTotal()));//总件数
-			syPackingListTailoring.setTotalNetWeight(syPackingListTailoring.getTotalNetWeight().add(s1.getTotalNetWeight()));//总净重
-			syPackingListTailoring.setTotalGrossWeight(syPackingListTailoring.getTotalGrossWeight().add(s1.getTotalGrossWeight()));//总毛重
-			syPackingListTailoring.setTotalVolume(syPackingListTailoring.getTotalVolume().add(s1.getTotalVolume()));//总体积*/
+			s1.setOmpoId(syPreAssembledPackingListItem.getOmpoId());//采购委外主表id
+			s1.setOmpoIdItem(syPreAssembledPackingListItem.getOmpoIdItem());//采购委外子表id
 			syPackingListTailoring.setTotalPrice(syPackingListTailoring.getTotalPrice().add(s1.getTotalPrice()));//总价
 			syPackingListTailoring.setCreateTime(null);
 			syPackingListTailoringItemMapper.insert(s1);//新增子表数据
 		}
+		syPackingListTailoringMapper.updateById(syPackingListTailoring);
 		return syPackingListTailoring;
 	}
 	/**