|
@@ -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());
|