解决未能同步开票组织管理

release
路明慧 2 years ago
parent 203f4922ea
commit 3d4f9a5c5c
  1. 28
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/thirdservice/user/controller/UserController.java

@ -1,7 +1,9 @@
package com.dxhy.order.baseservice.module.thirdservice.user.controller;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.dxhy.order.constant.ConfigureConstant;
import com.dxhy.order.constant.OrderInfoEnum;
import com.dxhy.order.constant.OrderManagementConstant;
@ -25,9 +27,11 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* 用户信息控制层
@ -92,7 +96,7 @@ public class UserController {
String kpzzglKey = String.format(RedisConstant.REDIS_GROUP_MANAGEMENT_MESSAGE, key);
String groupManagementResult = redisService.get(kpzzglKey);
if(StringUtils.isNotBlank(groupManagementResult)){
log.debug("同步开票组织管理---redis不为空");
log.debug("同步开票组织管理---redis不为空:{}", JSONObject.toJSONString(groupManagementResult));
GroupManagementEntity groupManagementEntity = JSON.parseObject(groupManagementResult, GroupManagementEntity.class);
if(!StringUtils.equals(taxPlayerCodeDept.getName(), groupManagementEntity.getGroupName())
|| !StringUtils.equals(taxPlayerCodeDept.getTaxpayerCode(), groupManagementEntity.getXhfNsrsbh())
@ -154,7 +158,7 @@ public class UserController {
GroupManagementEntity groupManagementEntity = new GroupManagementEntity();
groupManagementEntity.setId(DistributedKeyMaker.generateShotKey());
groupManagementEntity.setGroupId(taxPlayerCodeDept.getDeptId());
String name = taxPlayerCodeDept.getName();
String repl = "(" + taxPlayerCodeDept.getEnterpriseNumbers() + ")";
String replace = taxPlayerCodeDept.getName().replace(repl, "");
taxPlayerCodeDept.setName(replace);
@ -178,10 +182,26 @@ public class UserController {
groupManagementEntity.setUpdateTime(new Date());
int count = groupManagementService.insertGroup(groupManagementEntity);
if (count == 0) {
log.debug("同步开票组织管理---未执行插入补偿");
groupManagementService.updateGroupByKey(groupManagementEntity);
List<GroupManagementEntity> groupManagementEntities = groupManagementEntityList.stream().filter(groupManagementEntity1 -> StringUtils.equals(groupManagementEntity1.getGroupId(), groupManagementEntity.getGroupId())
&& StringUtils.equals(groupManagementEntity1.getXhfNsrsbh(), groupManagementEntity.getXhfNsrsbh())
&& StringUtils.equals(groupManagementEntity1.getXhfDz(), groupManagementEntity.getXhfDz())
&& StringUtils.equals(groupManagementEntity1.getXhfDh(), groupManagementEntity.getXhfDh())
&& StringUtils.equals(groupManagementEntity1.getXhfYh(), groupManagementEntity.getXhfYh())
&& StringUtils.equals(groupManagementEntity1.getXhfZh(), groupManagementEntity.getXhfZh())
&& StringUtils.equals(groupManagementEntity1.getEntId(), groupManagementEntity.getEntId())
&& StringUtils.equals(groupManagementEntity1.getGroupName(), groupManagementEntity.getGroupName())
&& StringUtils.equals(groupManagementEntity1.getXhfMc(), groupManagementEntity.getXhfMc()))
.collect(Collectors.toList());
log.debug("同步开票组织管理---未变更信息组织{}",groupManagementEntityList.size());
if (CollectionUtil.isEmpty(groupManagementEntities)){
log.debug("同步开票组织管理---未执行插入补偿");
groupManagementService.updateGroupByKey(groupManagementEntity);
}
}
//新增redis缓存
groupManagementEntity.setGroupName(name);
groupManagementEntity.setXhfMc(name);
String groupManagementStr = JSON.toJSONString(groupManagementEntity);
redisService.set(kpzzglKey, groupManagementStr, RedisConstant.REDIS_EXPIRE_TIME_7DAYS);
}

Loading…
Cancel
Save