Ver código fonte

推送调整

huxy 2 anos atrás
pai
commit
13c0f82ac2

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

@@ -1002,7 +1002,7 @@ public class SyPackingListFabricController {
 				 }
 			 }
 			 //if(message!=null&&message.length()>0&&(message.indexOf("接口")>-1||message.indexOf("账套")>-1)){
-			 if(message!=null&&message.length()>0){
+			 if(message!=null&&message.length()>0&&message.indexOf("接口")>-1){
 				 main.setPushState("2");//推送失败!
 				 result.setSuccess(false);
 				 result.setMessage(message);

+ 2 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splfi/mapper/SyPackingListFabricItemMapper.java

@@ -27,6 +27,8 @@ public interface SyPackingListFabricItemMapper extends BaseMapper<SyPackingListF
 
 	public List<SyPackingListFabricItem> selectByMainId2(String mainId);
 
+	public List<SyPackingListFabricItem> selectByMainId3(@Param("ids") String[] toArray);
+
 	//根据id获取发运明细数据
 	public List<SyPackingListFabricItem> getSyShippingDetailsData(String id);
 

+ 19 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/splfi/mapper/xml/SyPackingListFabricItemMapper.xml

@@ -116,9 +116,24 @@
 	</select>
 
 	<select id="selectByMainId2" parameterType="java.lang.String" resultType="org.jeecg.modules.splfi.entity.SyPackingListFabricItem">
+		SELECT a.create_time ,a.create_by ,a.garment_Factory,(Select declaration_Name
+		from sy_declaration_elements
+		where id=elements_Id
+		) declaration_Name,b.* FROM
+		sy_packing_list_fabric a LEFT JOIN
+		sy_packing_list_fabric_item b ON
+		a.id=b.sy_packing_list_fabric_id and a.del_flag=0
+		WHERE b.del_flag=0 and
+		sy_packing_list_fabric_id=#{value}
+		ORDER BY  b.declaration_Name,plan_Lot_Number
+	</select>
+
+	<select id="selectByMainId3" parameterType="java.lang.String" resultType="org.jeecg.modules.splfi.entity.SyPackingListFabricItem">
 		select *,
 			(select hs_code from sy_declaration_elements
 			where id=t.elements_Id) hs_code,
+			(select declaration_Name from sy_declaration_elements
+			where id=t.elements_Id) declaration_Name,
 			(select declaration_unit from sy_declaration_elements
 			where id=t.elements_Id) declaration_unit
 			from ( 	SELECT
@@ -128,7 +143,10 @@
 			left join sy_packing_list_fabric_item b
 			on a.id=b.sy_packing_list_fabric_id and a.del_flag=0
 			where  b.del_flag=0 and
-			sy_packing_list_fabric_id=#{value}
+			sy_packing_list_fabric_id in
+			<foreach collection="ids" item="value" index="index" open="(" separator="," close=")">
+				#{value}
+			</foreach>
 			ORDER BY  declaration_Name,plan_Lot_Number
 		) t
 	</select>

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

@@ -421,7 +421,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 		for (SyPackingListFabricItem page : items){
 			if(page!=null&&page.getComposition()!=null){
 				if(page.getComposition().indexOf(" ")>0){
-					page.setComposition(page.getComposition().substring(0,page.getComposition().indexOf(" ")));
+					page.setComposition(page.getComposition().substring(0,page.getComposition().lastIndexOf(" ")));
 				}
 			}
 		}
@@ -441,27 +441,41 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 	public List<SyPackingListFabric> selectByList(IPage<SyPackingListFabric> page,QueryWrapper<SyPackingListFabric> queryWrapper) {
 		 //传搜索条件
 		List <SyPackingListFabric> packingListFabrics =syPackingListFabricMapper.queryMain(page,queryWrapper).getRecords();//查询
+		List <String> strs=new ArrayList();//最终返回数据
+		for (SyPackingListFabric fabric : packingListFabrics){
+			strs.add(fabric.getId());
+		}
 		System.out.println("查询到"+packingListFabrics.size()+"条数据");
 		List <SyPackingListFabric> arrayLists=new ArrayList();//最终返回数据
-		Map<String,SyPackingListFabric> maps=new HashMap<>();
-		for (SyPackingListFabric main : packingListFabrics){//获取子表数据
-			List<SyPackingListFabricItem> items=syPackingListFabricItemMapper.selectByMainId2(main.getId());
+		SyPackingListFabric main =new SyPackingListFabric();
+		List<SyPackingListFabricItem> items=syPackingListFabricItemMapper.selectByMainId3(strs.toArray(new String[strs.size()]));
+		for(SyPackingListFabricItem item : items){
+			if(item!=null&&item.getComposition()!=null&&item.getComposition().indexOf(" ")>0){
+				item.setComposition(item.getComposition().substring(0,item.getComposition().indexOf(" ")));
+			}
+		}
+		main.setSyPackingListFabricItem(items);
+		arrayLists.add(main);
+		return arrayLists;
+		/*//Map<String,SyPackingListFabric> maps=new HashMap<>();
+		for (){//获取子表数据
+
 			if(items.size()>0){
 				main.setSyPackingListFabricItem(items);
-				/*for(SyPackingListFabricItem item : items){
+				*//*for(SyPackingListFabricItem item : items){
 					item.setCreateBy(main.getCreateBy());//获取制单人
 					item.setCreateTime(main.getCreateTime());//获取制单时间
 				}
 				System.out.println("createtime\t"+main.getCreateTime());
-				System.out.println("createby\t"+main.getCreateBy());*/
+				System.out.println("createby\t"+main.getCreateBy());*//*
 			}
-			/*if(main.getContainerNumber()==null){
+			*//*if(main.getContainerNumber()==null){
 				main.setContainerNumber("");
 			}
 			if(main.getExportInvoiceNo()==null){
 				main.setExportInvoiceNo("");
 			}
-			*/
+			*//*
 			if(maps.containsKey("test")){//有相同的外销发票号和集装箱号
 				SyPackingListFabric syPackingListFabric= maps.get("test");
 				items.addAll(syPackingListFabric.getSyPackingListFabricItem());
@@ -472,9 +486,8 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 		}
 		for (String key : maps.keySet()){
 			arrayLists.add(maps.get(key));
-		}
+		}*/
 
-		return arrayLists;
 	}
 
 	/**
@@ -1044,7 +1057,36 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				map5.put("CPAYCODE",orderData.get("cPayCode"));//付款条件编码(如果传空,取来源单据)
 			}
 			int num1=1;
+			Map<String,BigDecimal> bigDecimalMap=new HashMap<>();
+			Map<String,Boolean> booleanMap=new HashMap<>();
+			if(mapt.get("account").equals("901")){//901账套
+				for (SyPackingListFabricItem item : main.getSyPackingListFabricItem()){
+					if(item.getInventoryCcode().indexOf("04")>0||item.getInventoryCcode().indexOf("03")>0){
+						booleanMap.put(item.getOmpoIdItem(),false);
+						if(bigDecimalMap.containsKey(item.getOmpoIdItem())){//再次
+							if(item.getMasterMetering().equals("KG")){
+								bigDecimalMap.put(item.getOmpoIdItem(),item.getNetWeight().add(item.getNetWeight()));
+							}else{
+								bigDecimalMap.put(item.getOmpoIdItem(),item.getActualDeclaredQuantity().add(item.getActualDeclaredQuantity()));
+							}
+						}else{//初次
+							if(item.getMasterMetering().equals("KG")){
+								bigDecimalMap.put(item.getOmpoIdItem(),item.getNetWeight());
+							}else{
+								bigDecimalMap.put(item.getOmpoIdItem(),item.getActualDeclaredQuantity());
+							}
+						}
+					}
+				}
+			}
 			for (SyPackingListFabricItem item : main.getSyPackingListFabricItem()){
+				if(booleanMap.containsKey(item.getOmpoIdItem())){
+					if(booleanMap.get(item.getOmpoIdItem())){//为true就退出循环
+						continue;
+					}else{
+						booleanMap.put(item.getOmpoIdItem(),true);
+					}
+				}
 				JSONObject mapItem=new JSONObject();
 				JSONObject mapItem3=new JSONObject();
 				JSONObject mapItem4=new JSONObject();
@@ -1073,9 +1115,6 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				num1++;
 				Map<String,Object> orderDataItem=null;// inum
 				if(!mapt.get("account").equals("903")&&!mapt.get("account1").equals("901")){ //采购订单子表数据  顺序---2
-					System.out.println("mapt.get(\"orderNumber\")\n"+mapt.get("orderNumber"));
-					System.out.println("mapt.containsKey(\"itemSort\")\t"+mapt.containsKey("itemSort"));
-					System.out.println("item.getOmpoIdItem()\t"+item.getOmpoIdItem());
 					if(!mapt.containsKey("itemSort")){  //第一次进行循环
 						orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("PO_PoDetails", "ID='"+item.getOmpoIdItem()+"'","ID");
 					}else{
@@ -1168,6 +1207,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				//if(item.getSyOrderDataItemId()!=null){//销售发货单 ---查询销售订单子表数据  顺序---5
 				if(orderDataItem!=null&&orderDataItem.containsKey("iSOsID")&&orderDataItem.get("iSOsID")!=null){
 					Map<String,Object> orderDataItem2=syPackingListTailoringMapper.getSoMainItem(orderDataItem.get("iSOsID").toString());
+					System.out.println("销售订单\n"+orderDataItem2);
 					mapSort.put(item.getId(),orderDataItem2.get("irowno").toString());
 					mapItem3.put("ITAXUNITPRICE",orderDataItem2.get("iTaxUnitPrice"));//原币含税单价(如果传空,取来源单据)(以含税单价为准自动计算相关价格及金额)
 					mapItem3.put("ITAXRATE",orderDataItem2.get("iTaxRate"));//税率(如果传空,取来源单据,无来源单据,取存货档案对应的销项税率)
@@ -1217,10 +1257,15 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 					mapItem6.put("IQUANTITY",item.getActualDeclaredQuantity());//数量
 				}
 
-				mapItem.put("CINVCODE",item.getInventoryCode());//存货编码
+				if(mapt.get("account").equals("901")){
+					mapItem.put("IQUANTITY",bigDecimalMap.get(item.getOmpoIdItem()));//入库单数量
+					mapItem5.put("IQUANTITY",bigDecimalMap.get(item.getOmpoIdItem()));//采购单数量
+				}
+
 				//mapItem.put("INUM",orderDataItem.get("inum"));//明细ID(采购订单行ID/委外订单行ID)
 				//mapItem.put("cBatch","x");//批号
 
+				mapItem.put("CINVCODE",item.getInventoryCode());//存货编码
 				mapItem3.put("CINVCODE",item.getInventoryCode());//存货编码
 
 				mapItem4.put("CINVCODE",item.getInventoryCode());//存货编码
@@ -1264,6 +1309,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 				mapt.put("account","904");//账套号
 			}
 			mapt.put("itemSort",mapSort);
+			System.out.println("mapsort\n"+mapSort);
 		}
 
 		text(mapList,"采购入库单");
@@ -1312,6 +1358,9 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
 							return account+"账套推送成功!";
 						}
 					case "2":
+						if(account.equals("901")){
+							return account+"账套推送成功!";
+						}
 						JSONArray resturn3 = InterfaceConnUtils.doPost(mapList3,"consignment_import");//销售发货单
 						recording=result(main,resturn3,"销售发货单",((Map) mapList.get(0)).get("CACCID").toString(),"3");//销售发货单
 						maps.get(account).put("code",resturn3.getJSONObject(0).get("U8ReceiptNo").toString());

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

@@ -21,6 +21,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.JsonArray;
+import com.google.gson.JsonObject;
 import netscape.javascript.JSObject;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.hssf.util.HSSFColor;
@@ -1480,6 +1481,22 @@ public class SyPackingListTailoringController {
 		 return  result;
 	 }
 
+	 @AutoLog(value = "调试接口-采购入库2")
+	 @ApiOperation(value="调试接口-采购入库2", notes="调试接口-采购入库2")
+	 @RequestMapping(value = "/pushJson15", method = {RequestMethod.POST})
+	 public Result json15(@RequestBody JSONArray jsonArray){
+		 //JSONArray jsonArray2= InterfaceConnUtils.doPost(jsonArray,"purchasein_import");
+		 Result result=new Result();
+		 JSONArray jsonArray2=new JSONArray();
+		 System.out.println("jsonarray.size\t"+jsonArray.size());
+		 for(int i = 0; i < jsonArray.size(); i++){
+			 JSONObject jsonObject= jsonArray.getJSONObject(i);
+			 jsonArray2.add(jsonObject);
+		 }
+		 result.setResult(jsonArray2);
+		 return  result;
+	 }
+
 	 @AutoLog(value = "调试接口-材料出库单")
 	 @ApiOperation(value="调试接口-材料出库单", notes="调试接口-材料出库单")
 	 @RequestMapping(value = "/pushJson6", method = {RequestMethod.POST})