|
@@ -377,8 +377,8 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
|
|
amsSaleOrder.setSaleHistoricalOrderAmount(new BigDecimal(saleHistoricalOrderAmount));
|
|
amsSaleOrder.setSaleHistoricalOrderAmount(new BigDecimal(saleHistoricalOrderAmount));
|
|
}
|
|
}
|
|
amsSaleOrder.setSaleOrderStatus(new BigDecimal(orderStatus));
|
|
amsSaleOrder.setSaleOrderStatus(new BigDecimal(orderStatus));
|
|
- //获取销售订单下的分录id
|
|
|
|
- List<String> wuliuEasIds = amsSaleMaterialMapper.getMaterialEasList(saleNumber);
|
|
|
|
|
|
+ //获取销售订单下的分录id--获取物流分录id
|
|
|
|
+ List<String> wuliuStIds = amsSaleMaterialMapper.getMaterialEasList(saleNumber);
|
|
//查询该销售订单下的所有物资分录
|
|
//查询该销售订单下的所有物资分录
|
|
List<String> EasIds = new ArrayList<>();
|
|
List<String> EasIds = new ArrayList<>();
|
|
for (Map<String, Object> materialMap : mapList) {
|
|
for (Map<String, Object> materialMap : mapList) {
|
|
@@ -388,7 +388,6 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
|
|
String easPrimaryId = (String) materialMap.get("easPrimaryId");
|
|
String easPrimaryId = (String) materialMap.get("easPrimaryId");
|
|
Map<String,Object> resultMap = new HashMap<>();
|
|
Map<String,Object> resultMap = new HashMap<>();
|
|
resultMap.put("easPrimaryId",easPrimaryId);
|
|
resultMap.put("easPrimaryId",easPrimaryId);
|
|
- EasIds.add(easPrimaryId);
|
|
|
|
AmsSaleMaterial amsSaleMaterial;
|
|
AmsSaleMaterial amsSaleMaterial;
|
|
// 得到物资重量
|
|
// 得到物资重量
|
|
String materialWeight = (String) materialMap.get("materialNumber");
|
|
String materialWeight = (String) materialMap.get("materialNumber");
|
|
@@ -399,6 +398,7 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
|
|
amsSaleMaterial = amsSaleMaterialMapper.selectByPrimaryKey(new BigDecimal(saleMaterialId));
|
|
amsSaleMaterial = amsSaleMaterialMapper.selectByPrimaryKey(new BigDecimal(saleMaterialId));
|
|
Object meterWeight = materialMap.get("meterWeight");
|
|
Object meterWeight = materialMap.get("meterWeight");
|
|
Object forChangdu = materialMap.get("forChangdu");
|
|
Object forChangdu = materialMap.get("forChangdu");
|
|
|
|
+ EasIds.add(saleMaterialId);
|
|
if(forChangdu != null && !"".equals(forChangdu.toString())){
|
|
if(forChangdu != null && !"".equals(forChangdu.toString())){
|
|
amsSaleMaterial.setSteelMeter(DataChange.dataToBigDecimal(forChangdu));
|
|
amsSaleMaterial.setSteelMeter(DataChange.dataToBigDecimal(forChangdu));
|
|
}
|
|
}
|
|
@@ -443,11 +443,11 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
|
|
amsSaleMaterial.setInsertTime(new Date());
|
|
amsSaleMaterial.setInsertTime(new Date());
|
|
result += amsSaleMaterialMapper.updateByPrimaryKeySelective(amsSaleMaterial);
|
|
result += amsSaleMaterialMapper.updateByPrimaryKeySelective(amsSaleMaterial);
|
|
}
|
|
}
|
|
- if(EasIds.size() < wuliuEasIds.size()){
|
|
|
|
|
|
+ if(amsSaleOrder.getSaleType().intValue() == 1 && EasIds.size() < wuliuStIds.size()){
|
|
//只有当金蝶传过来的分录小于物流这边的金蝶分录时,才进行此处判断
|
|
//只有当金蝶传过来的分录小于物流这边的金蝶分录时,才进行此处判断
|
|
//遍历物流存在的数组,如果wuliu有的金蝶没有,那就将物流没有的给隐藏调
|
|
//遍历物流存在的数组,如果wuliu有的金蝶没有,那就将物流没有的给隐藏调
|
|
//将物流这边的金蝶分录集合变成set
|
|
//将物流这边的金蝶分录集合变成set
|
|
- Set<String> set = new HashSet<String>(wuliuEasIds);
|
|
|
|
|
|
+ Set<String> set = new HashSet<String>(wuliuStIds);
|
|
//遍历金蝶分录数组
|
|
//遍历金蝶分录数组
|
|
for(String easId:EasIds){
|
|
for(String easId:EasIds){
|
|
// 若是集合里有相同的就删掉,若是没有就将值添加到集合
|
|
// 若是集合里有相同的就删掉,若是没有就将值添加到集合
|
|
@@ -463,9 +463,8 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
|
|
//遍历数组将这里面的分录删掉
|
|
//遍历数组将这里面的分录删掉
|
|
for (String easId:chaEasIds){
|
|
for (String easId:chaEasIds){
|
|
//物理删除该分录
|
|
//物理删除该分录
|
|
- BigDecimal stId = amsSaleMaterialMapper.getSaleMaterialIdByEasId(easId);
|
|
|
|
result += amsSaleMaterialMapper.deleteSaleMaterialByEasId(easId);
|
|
result += amsSaleMaterialMapper.deleteSaleMaterialByEasId(easId);
|
|
- result += amsSaleMaterialMapper.deleteAstmBystId(stId);
|
|
|
|
|
|
+ result += amsSaleMaterialMapper.deleteAstmBystId(easId);
|
|
|
|
|
|
}
|
|
}
|
|
System.out.println(chaEasIds);
|
|
System.out.println(chaEasIds);
|