Browse Source

推送调整

huxy 2 years ago
parent
commit
5d72bd932c

+ 11 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splfi/controller/SyPackingListFabricController.java

@@ -981,14 +981,22 @@ public class SyPackingListFabricController {
 					 result.setMessage("请先提交托书再推送");
 					 return result;
 				 }
-				 if(mapdate.containsKey("e1")&&mapdate.get("e3")!=null){
+				 if(mapdate.containsKey("e1")&&mapdate.get("e1")!=null){
 					 main.setTheFinalShippingDate(mapdate.get("e1").toString());
+				 }else{
+					 result.setSuccess(false);
+					 result.setMessage("请先维护最终船期再推送");
+					 return result;
 				 }
-				 if(mapdate.containsKey("e2")&&mapdate.get("e3")!=null){
-					 main.setTheFinalShippingDate(mapdate.get("e2").toString());
+				 if(mapdate.containsKey("e2")&&mapdate.get("e2")!=null){
+					 main.setTheFinalShippingDate2(mapdate.get("e2").toString());
 				 }
 				 if(mapdate.containsKey("e3")&&mapdate.get("e3")!=null){
 					 main.setLatestDateOfShipment2(mapdate.get("e3").toString());
+				 }else{
+					 result.setSuccess(false);
+					 result.setMessage("请先维护装运期限再推送");
+					 return result;
 				 }
 			 }
 			 QueryWrapper queryWrapper=new QueryWrapper();

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

@@ -23,6 +23,7 @@ import org.jeecg.modules.documents.shippingDetails.mapper.SyShippingDetailsItemM
 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.documents.syShippingOrder.mapper.SyShippingOrderMapper;
 import org.jeecg.modules.openApi.entity.DxpDataPlan;
 import org.jeecg.modules.openApi.mapper.PurchaseWarehousingMapper;
 import org.jeecg.modules.openApi.service.IDxpDataPlanService;
@@ -138,6 +139,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			entity.setOmpoAccount(detailsItem.getOmpoAccount());
 			entity.setAccount(detailsItem.getAccount());
 			entity.setOmpoIdItem(detailsItem.getOmpoIdItem());
+			entity.setElementsId(detailsItem.getElementsId());
 			entity.setSyOrderDataItemId(detailsItem.getSyOrderDataItemId());
 			entity.setSyOrderDataId(detailsItem.getSyOrderDataId());
 			entity.setOmpoId(detailsItem.getOmpoId());
@@ -279,9 +281,9 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					throw new JeecgBootException("没有单位无法保存");
 				}
 				if(entity.getMasterMetering().equals("KG")){
-					updateQuantity(entity.getNetWeight(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
+					//updateQuantity(entity.getNetWeight(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
 				}else{
-					updateQuantity(entity.getActualDeclaredQuantity(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
+					//updateQuantity(entity.getActualDeclaredQuantity(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
 				}
 			}else{
 				if(entity.getMasterMetering().equals("KG")){//根据净重
@@ -291,7 +293,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					BigDecimal netWeight=syPackingListFabricItemMapper.selectOne(queryWrapper).getNetWeight();
 					netWeight=netWeight.subtract(entity.getNetWeight());
 					syPackingListFabricItemMapper.updateById(entity);
-					updateQuantity(netWeight.negate(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
+					//updateQuantity(netWeight.negate(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
 				}else{//根据实际报关数量
 					QueryWrapper queryWrapper=new QueryWrapper();
 					queryWrapper.eq("id", entity.getId());//子表id
@@ -299,7 +301,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					BigDecimal actualDeclaredQuantity=syPackingListFabricItemMapper.selectOne(queryWrapper).getActualDeclaredQuantity();
 					actualDeclaredQuantity=actualDeclaredQuantity.subtract(entity.getActualDeclaredQuantity());
 					syPackingListFabricItemMapper.updateById(entity);
-					updateQuantity(actualDeclaredQuantity.negate(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
+					//updateQuantity(actualDeclaredQuantity.negate(),entity.getSyShippingDetailsItemId(),entity.getMasterMetering());
 				}
 
 			}
@@ -603,6 +605,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					syPackingListFabric.setSyDeclarationElementsId(item.getShippingDetailsId());//出运明细主表id
 					s1.setSpecificationAndModel(item.getSpecificationAndModel());//规格型号
 					s1.setAccount(item.getAccount());//账套号
+					s1.setElementsId(item.getElementsId());
 					s1.setPurOrSubOrder(item.getPurOrSubOrder());//委外采购订单
 					s1.setOrderNumber(item.getOrderNumber());//订单号
 					s1.setFactoryUnitPrice(item.getFactoryUnitPrice());//工厂单价
@@ -704,6 +707,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					}
 					syPackingListFabric.setAccount(syShippingDetailsItem.getAccount());//获取账套号
 					item.setPrice(syShippingDetailsItem.getSalesUnitPrice());//单价
+					item.setElementsId(syShippingDetailsItem.getElementsId());
 					item.setInventoryCcode(syShippingDetailsItem.getInventoryCcode());//物料分类
 					item.setInventoryCode(syShippingDetailsItem.getInventoryCode());//物料编码
 					item.setOmpoId(syShippingDetailsItem.getOmpoId());//采购/委外订单主表id
@@ -926,6 +930,10 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 	}
 
 
+
+	@Autowired
+	private SyShippingOrderMapper syShippingOrderMapper;//托书主表
+
 	/**
 	 * 推送u8
 	 * @param main
@@ -954,7 +962,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			//String createDate=main.getCreateTime().toString();
 			String createDate=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(main.getCreateTime());//转化日期类型
 			JSONObject map=new JSONObject();//采购(委外)入库单
-			map.put("CVOUCHCODE", org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cCode","RdRecord01","cCode")));//获取单据号
+			map.put("CVOUCHCODE", org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cCode","RdRecord01","dnmaketime")));//获取单据号
 			//map.put("CVOUCHCODE", main.getId());//获取单据号
 			map.put("DDATE",createDate);//日期(格式2015-01-01)
 			map.put("CMAKER",createBy);//制单人
@@ -965,7 +973,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			JSONObject map2=new JSONObject();//材料出库单
 			map2.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cCode","rdrecord11","dnmaketime")));//单号
 			map2.put("DDATE",createDate);//日期(格式2015-01-01)
-			//map2.put("CHANDLER",createBy);//审核人
+			map2.put("CHANDLER",createBy);//审核人
 			map2.put("CGLTYPE","委外订单");//出库类别
 			map2.put("CRDCODE","22");//暂时设置成默认 Rd_Style有相关数据
 			map2.put("CMAKER",createBy);//制单人
@@ -1045,6 +1053,10 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				map6.put("CDEFINE12",venName);//供应商(打印)全称
 			}
 
+			if(mapt.get("account").equals("901")){
+				map5.put("CDEFINE4",main.getLatestDateOfShipment2());//最终船期
+			}
+
 			if(mapt.get("account").equals("903")){//查询委外订单主表数据	顺序---1
 				orderData=syPackingListTailoringMapper.getOmOrPo("om_momain","cCode='"+mapt.get("mpOrder")+"'","moid");
 				map.put("CRDCODE","12");//入库类别(采购入库/委外入库)
@@ -1076,8 +1088,15 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			if(orderData!=null){
 				map.put("CVENCODE",orderData.get("cvencode"));//供应商编码
 				mapt.put("CVENCODE",orderData.get("cvencode"));//供应商编码
-				map5.put("IEXCHRATE",orderData.get("nflat"));//汇率(如果传空,接口默认1)cPayCode
+				//map5.put("IEXCHRATE",orderData.get("nflat"));//汇率(如果传空,接口默认1)cPayCode
 				map5.put("CPAYCODE",orderData.get("cPayCode"));//付款条件编码(如果传空,取来源单据)
+				//map5.put("IEXCHRATE",orderData.get("iExchRate"));//IEXCHRATE 汇率
+				map5.put("CEXCH_NAME",orderData.get("cexch_name"));//CEXCH_NAME 币种名称
+				SimpleDateFormat sf1 = new SimpleDateFormat("yyyy-M-dd");
+				String dd = sf1.format(new Date());
+				String rateSplit[] = dd.split("-");
+				Map<String, Object> rate= syShippingOrderMapper.queryU8Rate(rateSplit[0], rateSplit[1]);
+				map5.put("IEXCHRATE",rate.get("nflat").toString());//汇率(如果传空,接口默认1)cPayCode
 			}
 			int num1=1;
 			Map<String,BigDecimal> bigDecimalMap=new HashMap<>();
@@ -1256,20 +1275,24 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					if(order!=null){//销售订单主表
 						//cPersonCode,cDepCode,cBusType,cPayCode,cexch_name,nflat
 						map2.put("CDEPCODE",order.get("cDepCode"));//部门编码(如果传空,取来源单据)
-						map2.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,接口默认人民币)
 						map2.put("CPERSONCODE",order.get("cPersonCode"));//业务员编码(如果传空,取来源单据)
 						map.put("cOrderCode",order.get("cSOCode"));//销售订单号
 						map2.put("cOrderCode",order.get("cSOCode"));//销售订单号
 						map3.put("CBUSTYPE",order.get("cBusType"));//业务类型(普通销售、分期付款)(如果传空,取来源单据)
-						map4.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,传来源单据;无来源单据,默认人民币)
 						map6.put("CBUSTYPE",order.get("cBusType"));//业务类型
 						map6.put("CCUSCODE",order.get("cCusCode"));//客户编码
 						map6.put("CDEPCODE",order.get("cDepCode"));//部门编码(如果传空,取来源单据)
 						map6.put("SALETPYECODE",order.get("cSTCode"));//销售类型编码
 						map6.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
-						map3.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
+						map.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						map2.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						map3.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						map4.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						map.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,接口默认人民币)
+						map2.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,接口默认人民币)
+						map3.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,传来源单据;无来源单据,默认人民币)
+						map4.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
 						map6.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
-						map5.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
 					}
 				}
 
@@ -1349,6 +1372,8 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 			text(mapList2,"材料出库单");
 			text(mapList7,"印厂采购入库单");
 		}
+		text(mapList3,"销售发货单");
+		text(mapList5,"采购发票单");
 		String isSucceed=null;
 		if(mapList2!=null&&mapList2.size()>0&&main.getIsSucceed()!=null&&main.getIsSucceed().indexOf("-7-")>0){//印花
 			JSONArray resturn2 = InterfaceConnUtils.doPost(mapList2,"materialout_import");//采购入库单
@@ -1398,8 +1423,6 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 								System.out.println("mapItems4\t"+mapItems5);
 							}
 						}
-						text(mapList3,"销售发货单");
-						text(mapList5,"采购发票单");
 						if(!((Map) mapList.get(0)).get("CACCID").toString().equals("903")){
 							JSONArray resturn5 = InterfaceConnUtils.doPost(mapList5,"purinvoice_import");//采购发票单
 							recording=result(main,resturn5,"采购发票单",((Map) mapList.get(0)).get("CACCID").toString(),"2");//采购发票单

+ 12 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splt/controller/SyPackingListTailoringController.java

@@ -1294,16 +1294,25 @@ public class SyPackingListTailoringController {
 					result.setMessage("请先提交托书再推送");
 					return result;
 				}
-				if(mapdate.containsKey("e1")&&mapdate.get("e3")!=null){
+				if(mapdate.containsKey("e1")&&mapdate.get("e1")!=null){
 					main.setTheFinalShippingDate(mapdate.get("e1").toString());
+				}else{
+					result.setSuccess(false);
+					result.setMessage("请先维护最终船期再推送");
+					return result;
 				}
-				if(mapdate.containsKey("e2")&&mapdate.get("e3")!=null){
-					main.setTheFinalShippingDate(mapdate.get("e2").toString());
+				if(mapdate.containsKey("e2")&&mapdate.get("e2")!=null){
+					main.setTheFinalShippingDate2(mapdate.get("e2").toString());
 				}
 				if(mapdate.containsKey("e3")&&mapdate.get("e3")!=null){
 					main.setLatestDateOfShipment2(mapdate.get("e3").toString());
+				}else{
+					result.setSuccess(false);
+					result.setMessage("请先维护装运期限再推送");
+					return result;
 				}
 			}
+			System.out.println("main\n"+main);
 			/*QueryWrapper queryWrapper=new QueryWrapper();
 			queryWrapper.eq("sy_packing_list_tailoring_id",main.getId());
 			queryWrapper.eq("del_flag","0");*/

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

@@ -812,7 +812,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 			map.put("cVouchType",1);//传1
 
 			map.put("CDEFINE4",main.getTheFinalShippingDate());//最终船期
-			map.put("CDEFINE6",main.getTheFinalShippingDate());//合同日期
+			map.put("CDEFINE6",main.getTheFinalShippingDate2());//合同日期
 
 			JSONObject map3=new JSONObject();//销售发货单
 			map3.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cDLCode","DispatchList","dcreatesystime")));//发货单号
@@ -836,7 +836,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 			map5.put("CHANDLER",createBy);//审核人
 
 			map5.put("CDEFINE4",main.getTheFinalShippingDate());//最终船期
-			map5.put("CDEFINE6",main.getTheFinalShippingDate());//合同日期
+			map5.put("CDEFINE6",main.getTheFinalShippingDate2());//合同日期
 
 			JSONObject map6=new JSONObject();//销售发票
 			map6.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cSBVCode","SaleBillVouch","dcreatesystime")));//发票号
@@ -875,6 +875,10 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 				System.out.println("供应商全称\t"+venName);
 			}
 
+			if(mapt.get("account").equals("901")){
+				map5.put("CDEFINE4",main.getLatestDateOfShipment2());//最终船期
+			}
+
 			if(mapt.get("account").equals("903")){//查询委外订单主表数据	顺序---1
 				orderData=syPackingListTailoringMapper.getOmOrPo("om_momain","cCode='"+mapt.get("mpOrder")+"'","moid");
 				map.put("CRDCODE","12");//入库类别(采购入库/委外入库)
@@ -906,8 +910,15 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 			if(orderData!=null){
 				map.put("CVENCODE",orderData.get("cvencode"));//供应商编码
 				mapt.put("CVENCODE",orderData.get("cvencode"));//供应商编码
-				map5.put("IEXCHRATE",orderData.get("nflat"));//汇率(如果传空,接口默认1)cPayCode
 				map5.put("CPAYCODE",orderData.get("cPayCode"));//付款条件编码(如果传空,取来源单据)
+				map5.put("CEXCH_NAME",orderData.get("cexch_name"));//CEXCH_NAME 币种名称
+
+				SimpleDateFormat sf1 = new SimpleDateFormat("yyyy-M-dd");
+				String dd = sf1.format(new Date());
+				String rateSplit[] = dd.split("-");
+				Map<String, Object> rate= syShippingOrderMapper.queryU8Rate(rateSplit[0], rateSplit[1]);
+				map5.put("IEXCHRATE",rate.get("nflat").toString());//汇率(如果传空,接口默认1)cPayCode
+
 			}
 			for (SyPackingListTailoringItem item : main.getSyPackingListTailoringItemList()){
 
@@ -1008,15 +1019,26 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
 					if(order!=null){//销售订单主表
 						map.put("cOrderCode",order.get("cSOCode"));//销售订单号
 						map3.put("CBUSTYPE",order.get("cBusType"));//业务类型(普通销售、分期付款)(如果传空,取来源单据)
-						map6.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
+						/*map6.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
 						map5.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
 						map4.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,传来源单据;无来源单据,默认人民币)
-						map3.put("CEXCH_NAME",order.get("cexch_name"));//币种名称
+						map3.put("CEXCH_NAME",order.get("cexch_name"));//币种名称*/
 						map6.put("CBUSTYPE",order.get("cBusType"));//业务类型
 						map6.put("CCUSCODE",order.get("cCusCode"));//客户编码
 						map6.put("CDEPCODE",order.get("cDepCode"));//部门编码(如果传空,取来源单据)
 						map6.put("SALETPYECODE",order.get("cSTCode"));//销售类型编码
+						//map6.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+
+						map.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
 						map6.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						map3.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						map4.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						//map5.put("IEXCHRATE",order.get("iExchRate"));//IEXCHRATE 汇率
+						map.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,接口默认人民币)
+						map3.put("CEXCH_NAME",order.get("cexch_name"));//币种名称(如果传空,传来源单据;无来源单据,默认人民币)
+						map4.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
+						//map5.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
+						map6.put("CEXCH_NAME",order.get("cexch_name"));//CEXCH_NAME 币种名称
 					}
 				}