Merge branch 'release' into test

release
gaorl 2 years ago
commit b70bb85eea
  1. 2
      order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoEnum.java
  2. 2
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderCommonService.java
  3. 4
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderCommonServiceImpl.java
  4. 8
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderMergeServiceImpl.java

@ -1080,6 +1080,8 @@ public enum OrderInfoEnum {
*/ */
MERGE_COMMODITY_RULE_TYPE_0("0", "商品名称、规格型号、税率、单价、税收分类编码均一致"), MERGE_COMMODITY_RULE_TYPE_0("0", "商品名称、规格型号、税率、单价、税收分类编码均一致"),
MERGE_COMMODITY_RULE_TYPE_1("1", "商品名称、规格型号、税率、税收分类编码均一致"), MERGE_COMMODITY_RULE_TYPE_1("1", "商品名称、规格型号、税率、税收分类编码均一致"),
MERGE_COMMODITY_RULE_TYPE_2("2", "发票行性质、商品名称、物料编码、规格型号、单位、单价、税编、税率均一致"),
MERGE_COMMODITY_RULE_TYPE_3("3", "发票行性质、商品名称、物料编码、规格型号、单位、税编、税率均一致"),
/** /**
* 是否全电发票 * 是否全电发票

@ -184,6 +184,6 @@ public interface OrderCommonService {
List<OrderInfoEsc> insertOrderEsc, List<OrderInfoJdc> insertOrderJdc, List<String> shList); List<OrderInfoEsc> insertOrderEsc, List<OrderInfoJdc> insertOrderJdc, List<String> shList);
@Transactional @Transactional
void saveItemMergeOrderInfo(CommonOrderInfo commonOrderInfo); void saveItemMergeOrderInfo(CommonOrderInfo commonOrderInfo,List<String> deleteItem);
} }

@ -1558,12 +1558,12 @@ public class OrderCommonServiceImpl implements OrderCommonService {
} }
@Override @Override
public void saveItemMergeOrderInfo(CommonOrderInfo commonOrderInfo){ public void saveItemMergeOrderInfo(CommonOrderInfo commonOrderInfo,List<String> deleteItem){
List<OrderItemInfo> orderItemInfoList = commonOrderInfo.getOrderItemInfo(); List<OrderItemInfo> orderItemInfoList = commonOrderInfo.getOrderItemInfo();
OrderInfo orderInfo = commonOrderInfo.getOrderInfo(); OrderInfo orderInfo = commonOrderInfo.getOrderInfo();
OrderProcessInfo processInfo = commonOrderInfo.getProcessInfo(); OrderProcessInfo processInfo = commonOrderInfo.getProcessInfo();
if(!orderItemInfoList.isEmpty()){ if(!orderItemInfoList.isEmpty()){
orderItemInfoMapper.deleteItemByItemId(orderItemInfoList.stream().map(t->t.getId()).collect(Collectors.toList())); orderItemInfoMapper.deleteItemByItemId(deleteItem);
orderItemInfoMapper.insertOrderItemByList(orderItemInfoList); orderItemInfoMapper.insertOrderItemByList(orderItemInfoList);
} }

@ -913,7 +913,7 @@ public class OrderMergeServiceImpl implements OrderMergeService {
baseInfoQueryBO.setUserId(String.valueOf(userInfoService.getUser().getUserId())); baseInfoQueryBO.setUserId(String.valueOf(userInfoService.getUser().getUserId()));
List<SysBaseInfoEntity> sysBaseInfoEntityList = baseInfoService.queryInfoByCache(baseInfoQueryBO); List<SysBaseInfoEntity> sysBaseInfoEntityList = baseInfoService.queryInfoByCache(baseInfoQueryBO);
//合并同类商品规则类型,默认为 ‘商品名称、规格型号、税率、单价、税收分类编码均一致’ //合并同类商品规则类型,默认为 ‘商品名称、规格型号、税率、单价、税收分类编码均一致’
String mergeCommodityRuleType = OrderInfoEnum.MERGE_COMMODITY_RULE_TYPE_0.getKey(); String mergeCommodityRuleType = OrderInfoEnum.MERGE_COMMODITY_RULE_TYPE_2.getKey();
if(CollectionUtil.isNotEmpty(sysBaseInfoEntityList) && Objects.nonNull(sysBaseInfoEntityList.get(0))){ if(CollectionUtil.isNotEmpty(sysBaseInfoEntityList) && Objects.nonNull(sysBaseInfoEntityList.get(0))){
SysBaseInfoEntity sysBaseInfoEntity = sysBaseInfoEntityList.get(0); SysBaseInfoEntity sysBaseInfoEntity = sysBaseInfoEntityList.get(0);
String value = sysBaseInfoEntity.getValue(); String value = sysBaseInfoEntity.getValue();
@ -937,6 +937,8 @@ public class OrderMergeServiceImpl implements OrderMergeService {
List<OrderItemInfo> mergeOutItem = orderItemInfos.stream().filter(t -> !mergeInItem.contains(t)).collect(Collectors.toList()); List<OrderItemInfo> mergeOutItem = orderItemInfos.stream().filter(t -> !mergeInItem.contains(t)).collect(Collectors.toList());
String sksbCode = orderInfo.getSksbCode(); String sksbCode = orderInfo.getSksbCode();
boolean termType = OrderInfoEnum.TAX_EQUIPMENT_FGBW.equals(sksbCode) || OrderInfoEnum.TAX_EQUIPMENT_FGUKEY.equals(sksbCode); boolean termType = OrderInfoEnum.TAX_EQUIPMENT_FGBW.equals(sksbCode) || OrderInfoEnum.TAX_EQUIPMENT_FGUKEY.equals(sksbCode);
//获取合并规则
String mergeRuleType = queryMergeCommodityRuleType(orderInfo.getNsrsbh());
//根据配置去判断合并规则 //根据配置去判断合并规则
Map<String, List<OrderItemInfo>> collect1 = orderItemInfos.stream().map(t->{ Map<String, List<OrderItemInfo>> collect1 = orderItemInfos.stream().map(t->{
t.setXmmc(StringUtils.isBlank(t.getXmmc())?"":t.getXmmc()); t.setXmmc(StringUtils.isBlank(t.getXmmc())?"":t.getXmmc());
@ -944,7 +946,7 @@ public class OrderMergeServiceImpl implements OrderMergeService {
t.setGgxh(StringUtils.isBlank(t.getGgxh())?"":t.getGgxh()); t.setGgxh(StringUtils.isBlank(t.getGgxh())?"":t.getGgxh());
t.setZxbm(StringUtils.isBlank(t.getZxbm())?"":t.getZxbm()); t.setZxbm(StringUtils.isBlank(t.getZxbm())?"":t.getZxbm());
return t; return t;
}).collect(Collectors.groupingBy(t -> t.getFphxz() + t.getXmmc() + t.getXmdw() + t.getGgxh() + t.getSl() + t.getSpbm() + t.getZxbm())); }).collect(Collectors.groupingBy(t->OrderMergeUtil.getOrderItemInfoKey(t, mergeRuleType)));
List<OrderItemInfo> orderItemInfoList = new ArrayList<>(); List<OrderItemInfo> orderItemInfoList = new ArrayList<>();
List<String> deleteItem = new ArrayList<>(); List<String> deleteItem = new ArrayList<>();
log.debug("明细合并前明细数据,{}",JSONObject.toJSONString(orderItemInfos)); log.debug("明细合并前明细数据,{}",JSONObject.toJSONString(orderItemInfos));
@ -1024,7 +1026,7 @@ public class OrderMergeServiceImpl implements OrderMergeService {
commonOrderInfo.setOrderInfo(orderInfoNew); commonOrderInfo.setOrderInfo(orderInfoNew);
commonOrderInfo.setProcessInfo(orderProcessInfoNew); commonOrderInfo.setProcessInfo(orderProcessInfoNew);
try { try {
apiInvoiceCommonService.saveItemMergeOrderInfo(commonOrderInfo); apiInvoiceCommonService.saveItemMergeOrderInfo(commonOrderInfo,deleteItem);
} catch (Exception e) { } catch (Exception e) {
log.error("明细合并更新数据库出错{}",e); log.error("明细合并更新数据库出错{}",e);
return R.error(); return R.error();

Loading…
Cancel
Save