Forráskód Böngészése

预装箱单编辑

huxy 2 éve
szülő
commit
1f786caa83

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/controller/SyPreAssembledPackingListController.java

@@ -801,6 +801,7 @@ public class SyPreAssembledPackingListController extends JeecgController<SyPreAs
     @ApiOperation(value="预装箱单主表-通过id查询", notes="预装箱单主表-通过id查询")
     @GetMapping(value = "/queryById")
     public Result<SyPreAssembledPackingList> queryById(@RequestParam(name="id",required=true) String id) {
+        long startTime = System.currentTimeMillis();
         Result<SyPreAssembledPackingList> result=new Result<>();
         if(oConvertUtils.isEmpty(id)){
             result.setSuccess(false);
@@ -821,6 +822,8 @@ public class SyPreAssembledPackingListController extends JeecgController<SyPreAs
         result.setMessage("查询成功!");
         result.setSuccess(true);
         result.setResult(preAssembledPackingList);
+        long endTime2 = System.currentTimeMillis();
+        System.out.println("子表查询时间:" + (endTime2 - startTime) + "ms");
         return result;
     }
 

+ 2 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/mapper/SyPreAssembledPackingListItemMapper.java

@@ -45,12 +45,12 @@ public interface SyPreAssembledPackingListItemMapper extends BaseMapper<SyPreAss
 
 	public List<SizeTable> querySize3(@Param("list")String[] ids);
 
-	public List<SyPreAssembledPackingListItem> selectByMainIds(@Param("list")String[] ids);
+	public List<SyPreAssembledPackingListItem> selectByMainIds(@Param("list")String... ids);
 
 	@InterceptorIgnore(tenantLine = "true")
 	public Integer insertBatch(@Param("list") List<SyPreAssembledPackingListItem> item);
 
-	public List<SizeTable> queryAllSizes(@Param("list")String []ids);
+	public List<SizeTable> queryAllSizes(@Param("list")String... ids);
 
 	public List<SizeTable> queryAllSizes2(@Param("list")String []ids);
 

+ 2 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/mapper/xml/SyPreAssembledPackingListItemMapper.xml

@@ -158,6 +158,7 @@
 		sy_pre_assembled_packing_list_item.size,
 		sy_pre_assembled_packing_list_id as id,
 		id as itemId,
+		sy_order_data_item_id,
 		total quantity,
 		total/box_number proportion,
 		group_id
@@ -226,6 +227,7 @@
 		alias,
 		total quantity,
 		box_Number,
+		sy_order_data_item_id,
 		total/box_number proportion,
 		sy_pre_assembled_packing_list_item.id itemId,
 		group_id

+ 14 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/service/impl/SyPreAssembledPackingListItemServiceImpl.java

@@ -29,16 +29,27 @@ public class SyPreAssembledPackingListItemServiceImpl extends ServiceImpl<SyPreA
 	@Override
 	public List<SyPreAssembledPackingListItem> selectByMainId(String mainId) {
 		List<SyPreAssembledPackingListItem> list= syPreAssembledPackingListItemMapper.selectByMainId(mainId);
+		List<SizeTable> sizes=syPreAssembledPackingListItemMapper.queryAllSizes(mainId);
+		Map<String,List<SizeTable>> mapItemSizes=new HashMap<>();//子表尺码
+		for (SizeTable size : sizes){//子表尺码
+			if(mapItemSizes.containsKey(size.getGroupId())){//有
+				mapItemSizes.get(size.getGroupId()).add(size);
+			}else{
+				List<SizeTable> items=new ArrayList<>();
+				items.add(size);
+				mapItemSizes.put(size.getGroupId(),items);
+			}
+		}
 		for(SyPreAssembledPackingListItem spapl_item : list){
-			List<SizeTable> sizes=syPreAssembledPackingListItemMapper.querySize2(spapl_item.getGroupId(),spapl_item.getSyPreAssembledPackingListId());
-			sizes=sort(sizes);
+			spapl_item.setSizeTables(mapItemSizes.get(spapl_item.getGroupId()));
+			//sizes=sort(sizes);
 			/*String planSize="";
 			for (SizeTable size : sizes){
 				planSize=planSize+size.getSize()+":"+size.getQuantity().intValue()+"+";
 			}
 			planSize=planSize.substring(0,planSize.length()-1);
 			spapl_item.setPlanSize(planSize);*/
-			spapl_item.setSizeTables(sizes);
+			//spapl_item.setSizeTables(sizes);
 		}
 		return list;
 	}

+ 22 - 15
jeecg-boot-module-system/src/main/java/org/jeecg/modules/spapl/service/impl/SyPreAssembledPackingListServiceImpl.java

@@ -135,6 +135,7 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 
 	BigDecimal update(List<SyPreAssembledPackingListItem> items,String pid){
 		BigDecimal box=new BigDecimal(0);//获取总箱数
+		long startTime = System.currentTimeMillis();
 		for (SyPreAssembledPackingListItem item : items){
 			List<SizeTable> sizes=item.getSizeTables();//获取尺码表信息
 			BigDecimal boxNumber1=item.getBoxNumber();//获取箱数
@@ -150,9 +151,12 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 				item1.setSize(size.getSize());//获取尺码信息
 				BigDecimal boxNumber=boxNumber1.multiply(new BigDecimal(size.getProportion()));//获取该尺码件数
 				item1.setTotal(boxNumber);//该尺码件数
-
-				//item1.setRemainingQuantity(boxNumber);//该尺码的剩余数量
 				item1.setTotalPrice(boxNumber.multiply(item1.getUnitPrice()));//获取总价		箱数*单价-->件数*单价
+				item1.setId(size.getItemId());//从尺码表中获取到id
+				if(size.getProportion()==0){
+					item1.setTotal(null);//该尺码件数
+				}
+				//item1.setRemainingQuantity(boxNumber);//该尺码的剩余数量
 				//item1.setBoxNumber(boxNumber);//获取箱数
 				//boxNumber=boxNumber.divide(item.getPiecesBox(),6,BigDecimal.ROUND_HALF_UP);
 
@@ -165,16 +169,13 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 				//item1.setTotalVolume(volume.divide(new BigDecimal(1000000)));//获取总体积	长*宽*高*箱数
 
 				//item.setSyDeclarationElementsItemId(size.getItemId());//获取到发运明细子表id
-				item1.setId(size.getItemId());//从尺码表中获取到id
 				// 获取到发运明细子表id
-				String syDeclarationElementsItemId=syPreAssembledPackingListItemMapper.selectById(item1.getId()).getSyDeclarationElementsItemId();
-				item1.setSyDeclarationElementsItemId(syDeclarationElementsItemId);
 				//获取发育明细数据
-				SyShippingDetailsItem syItem=syShippingDetailsItemMapper.selectById(item1.getSyDeclarationElementsItemId());
-				if(size.getProportion()==0){
-					item1.setTotal(null);//该尺码件数
-				}
 				if(item.getIsAdd()>0){//如果为0就添加数据
+					String syDeclarationElementsItemId=syPreAssembledPackingListItemMapper.selectById(item1.getId()).getSyDeclarationElementsItemId();
+					item1.setSyDeclarationElementsItemId(syDeclarationElementsItemId);
+					SyShippingDetailsItem syItem=syShippingDetailsItemMapper.selectById(item1.getSyDeclarationElementsItemId());
+
 					if(syItem!=null){
 						//获取委外/采购订单子表Id
 						item1.setOmpoIdItem(syItem.getOmpoIdItem());
@@ -191,11 +192,15 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 					syPreAssembledPackingListItemMapper.insert(item1);
 					//updateQuantity(item1.getTotal(),item1.getSyDeclarationElementsItemId());
 				}else{
-					QueryWrapper queryWrapper=new QueryWrapper();
+					/*QueryWrapper queryWrapper=new QueryWrapper();
 					queryWrapper.eq("id", item1.getId());//子表id
 					queryWrapper.select("total as total");//获取实际报关数量合计
-					BigDecimal total=syPreAssembledPackingListItemMapper.selectOne(queryWrapper).getTotal();
-					total=total.subtract(item.getTotal());
+					BigDecimal total=new BigDecimal("0");
+					if(syPreAssembledPackingListItemMapper.selectOne(queryWrapper)!=null){
+						total=syPreAssembledPackingListItemMapper.selectOne(queryWrapper).getTotal().subtract(item.getTotal());
+						//total=total.subtract(item.getTotal());
+					}*/
+
 					syPreAssembledPackingListItemMapper.updateById(item1);//如果没修改成功就是新增数据
 					//updateQuantity(total.negate(),item1.getSyDeclarationElementsItemId());
 				}
@@ -217,6 +222,8 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 				typeConversion(item1);//修改预托书数量
 			}
 		}
+		long endTime = System.currentTimeMillis();
+		System.out.println("保存的时间:" + (endTime - startTime) + "ms");
 		return box;
 	}
 
@@ -880,7 +887,7 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 			if(bigDecimalMaps.containsKey(item.getGroupName())){
 				SyPreAssembledPackingList list=bigDecimalMaps.get(item.getGroupName());
 				list.setTotal(list.getTotal().add(item.getTotal()));
-				list.setPrice(list.getPrice().add(list.getPrice()));
+				//list.setPrice(list.getPrice().add(list.getPrice()));
 				list.setTotalNetWeight(list.getTotalNetWeight().add(item.getTotalNetWeight()));
 				list.setTotalGrossWeight(list.getTotalGrossWeight().add(item.getTotalGrossWeight()));
 				list.setTotalPrice(list.getTotalPrice().add(item.getTotalPrice()));
@@ -890,7 +897,7 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 			}else{
 				SyPreAssembledPackingList list=new SyPreAssembledPackingList();
 				list.setTotal(item.getTotal());
-				list.setPrice(item.getUnitPrice());
+				//list.setPrice(item.getUnitPrice());
 				list.setTotalVolume(item.getTotalVolume());
 				list.setTotalNetWeight(item.getTotalNetWeight());
 				list.setTotalGrossWeight(item.getTotalGrossWeight());
@@ -912,7 +919,7 @@ public class SyPreAssembledPackingListServiceImpl extends ServiceImpl<SyPreAssem
 		for (SyPreAssembledPackingList entity : lists){//主表获取子表数据
 			SyPreAssembledPackingList list=bigDecimalMaps.get(entity.getGroupName());
 			entity.setTotal(list.getTotal());
-			entity.setPrice(list.getPrice());
+			//entity.setPrice(list.getPrice());
 			entity.setTotalVolume(list.getTotalVolume());
 			entity.setTotalNetWeight(list.getTotalNetWeight());
 			entity.setTotalGrossWeight(list.getTotalGrossWeight());