Merge remote-tracking branch 'origin/FI871' into release

# Conflicts:
#	order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/groupmanagement/service/impl/GroupManagementServiceImpl.java
release
wangrangrang 2 years ago
commit e8b272b4de
  1. 2
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/groupmanagement/dao/GroupManagementMapper.java
  2. 2
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/groupmanagement/service/GroupManagementService.java
  3. 7
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/groupmanagement/service/impl/GroupManagementServiceImpl.java
  4. 89
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/thirdservice/user/controller/UserController.java
  5. 33
      order-management-base-service/src/main/resources/mybatis/mapper/GroupManagementMapper.xml

@ -46,4 +46,6 @@ public interface GroupManagementMapper {
int countEntIdNumByXfnsrsbh(@Param("xfnsrsbh") String xfnsrsbh); int countEntIdNumByXfnsrsbh(@Param("xfnsrsbh") String xfnsrsbh);
List<GroupManagementEntityVO> findAllGroupInfo(); List<GroupManagementEntityVO> findAllGroupInfo();
int updateGroupByKey(@Param(value = "groupManagementEntity") GroupManagementEntity groupManagementEntity);
} }

@ -55,4 +55,6 @@ public interface GroupManagementService {
* 查询所有组织信息 * 查询所有组织信息
*/ */
List<GroupManagementEntityVO> findAllGroupInfo(); List<GroupManagementEntityVO> findAllGroupInfo();
int updateGroupByKey(GroupManagementEntity groupManagementEntity);
} }

@ -208,6 +208,13 @@ public class GroupManagementServiceImpl implements GroupManagementService {
public List<GroupManagementEntityVO> findAllGroupInfo() { public List<GroupManagementEntityVO> findAllGroupInfo() {
return groupManagementMapper.findAllGroupInfo(); return groupManagementMapper.findAllGroupInfo();
} }
@Override
public int updateGroupByKey(GroupManagementEntity groupManagementEntity) {
return groupManagementMapper.updateGroupByKey(groupManagementEntity);
}
/** /**
* 构建组织树集合 * 构建组织树集合
*/ */

@ -1,7 +1,9 @@
package com.dxhy.order.baseservice.module.thirdservice.user.controller; package com.dxhy.order.baseservice.module.thirdservice.user.controller;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.dxhy.order.constant.ConfigureConstant; import com.dxhy.order.constant.ConfigureConstant;
import com.dxhy.order.constant.OrderInfoEnum; import com.dxhy.order.constant.OrderInfoEnum;
import com.dxhy.order.constant.OrderManagementConstant; 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 org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.stream.Collectors;
/** /**
* 用户信息控制层 * 用户信息控制层
@ -81,6 +85,7 @@ public class UserController {
*/ */
private void syncPhysicalGroupManagement(List<TaxPlayerCodeDept> taxplayercodeDeptList) { private void syncPhysicalGroupManagement(List<TaxPlayerCodeDept> taxplayercodeDeptList) {
taxplayercodeDeptList.forEach(taxPlayerCodeDept -> { taxplayercodeDeptList.forEach(taxPlayerCodeDept -> {
log.debug("同步开票组织管理信息组织编码为:{}",taxPlayerCodeDept.getEnterpriseNumbers());
//查找出deptType不等于5 并且税号不为空(实体组织) 的数据 //查找出deptType不等于5 并且税号不为空(实体组织) 的数据
if (!ConfigureConstant.STRING_5.equals(Integer.toString(taxPlayerCodeDept.getDeptType())) if (!ConfigureConstant.STRING_5.equals(Integer.toString(taxPlayerCodeDept.getDeptType()))
&& StringUtils.isNotBlank(taxPlayerCodeDept.getTaxpayerCode())) { && StringUtils.isNotBlank(taxPlayerCodeDept.getTaxpayerCode())) {
@ -91,6 +96,7 @@ public class UserController {
String kpzzglKey = String.format(RedisConstant.REDIS_GROUP_MANAGEMENT_MESSAGE, key); String kpzzglKey = String.format(RedisConstant.REDIS_GROUP_MANAGEMENT_MESSAGE, key);
String groupManagementResult = redisService.get(kpzzglKey); String groupManagementResult = redisService.get(kpzzglKey);
if(StringUtils.isNotBlank(groupManagementResult)){ if(StringUtils.isNotBlank(groupManagementResult)){
log.debug("同步开票组织管理---redis不为空:{}", JSONObject.toJSONString(groupManagementResult));
GroupManagementEntity groupManagementEntity = JSON.parseObject(groupManagementResult, GroupManagementEntity.class); GroupManagementEntity groupManagementEntity = JSON.parseObject(groupManagementResult, GroupManagementEntity.class);
if(!StringUtils.equals(taxPlayerCodeDept.getName(), groupManagementEntity.getGroupName()) if(!StringUtils.equals(taxPlayerCodeDept.getName(), groupManagementEntity.getGroupName())
|| !StringUtils.equals(taxPlayerCodeDept.getTaxpayerCode(), groupManagementEntity.getXhfNsrsbh()) || !StringUtils.equals(taxPlayerCodeDept.getTaxpayerCode(), groupManagementEntity.getXhfNsrsbh())
@ -115,12 +121,22 @@ public class UserController {
groupManagementEntity.setEntId(taxPlayerCodeDept.getDeptId()); groupManagementEntity.setEntId(taxPlayerCodeDept.getDeptId());
groupManagementEntity.setUsingEntId(taxPlayerCodeDept.getDeptId()); groupManagementEntity.setUsingEntId(taxPlayerCodeDept.getDeptId());
groupManagementEntity.setUpdateTime(new Date()); groupManagementEntity.setUpdateTime(new Date());
groupManagementService.updateGroup(groupManagementEntity); int count = groupManagementService.updateGroup(groupManagementEntity);
if (count == 0) {
log.debug("同步开票组织管理---id is not find");
groupManagementService.updateGroupByKey(groupManagementEntity);
}
//更新redis缓存 //更新redis缓存
redisService.del(kpzzglKey); redisService.del(kpzzglKey);
} }
String repl = "(" + taxPlayerCodeDept.getEnterpriseNumbers() + ")";
String replace = taxPlayerCodeDept.getName().replace(repl, "");
taxPlayerCodeDept.setName(replace);
} else { } else {
log.debug("同步开票组织管理---redis is null");
//查询数据库 //查询数据库
GroupManagementQuery groupManagementQuery = new GroupManagementQuery(); GroupManagementQuery groupManagementQuery = new GroupManagementQuery();
groupManagementQuery.setGroupId(taxPlayerCodeDept.getDeptId()); groupManagementQuery.setGroupId(taxPlayerCodeDept.getDeptId());
@ -135,14 +151,24 @@ public class UserController {
if(groupManagementEntityOptional.isPresent()){ if(groupManagementEntityOptional.isPresent()){
GroupManagementEntity groupManagementEntity = groupManagementEntityOptional.get(); GroupManagementEntity groupManagementEntity = groupManagementEntityOptional.get();
boolean changed = isChanged(taxPlayerCodeDept, groupManagementEntity);
String repl = "(" + taxPlayerCodeDept.getEnterpriseNumbers() + ")";
String replace = taxPlayerCodeDept.getName().replace(repl, "");
if (changed) {
updateGroup(taxPlayerCodeDept,groupManagementEntity);
}
//新增redis缓存 //新增redis缓存
String groupManagementStr = JSON.toJSONString(groupManagementEntity); String groupManagementStr = JSON.toJSONString(groupManagementEntity);
redisService.set(kpzzglKey, groupManagementStr, RedisConstant.REDIS_EXPIRE_TIME_7DAYS); redisService.set(kpzzglKey, groupManagementStr, RedisConstant.REDIS_EXPIRE_TIME_7DAYS);
taxPlayerCodeDept.setName(replace);
} else { } else {
log.debug("同步开票组织管理---database is null");
GroupManagementEntity groupManagementEntity = new GroupManagementEntity(); GroupManagementEntity groupManagementEntity = new GroupManagementEntity();
groupManagementEntity.setId(DistributedKeyMaker.generateShotKey()); groupManagementEntity.setId(DistributedKeyMaker.generateShotKey());
groupManagementEntity.setGroupId(taxPlayerCodeDept.getDeptId()); groupManagementEntity.setGroupId(taxPlayerCodeDept.getDeptId());
String name = taxPlayerCodeDept.getName();
String repl = "(" + taxPlayerCodeDept.getEnterpriseNumbers() + ")"; String repl = "(" + taxPlayerCodeDept.getEnterpriseNumbers() + ")";
String replace = taxPlayerCodeDept.getName().replace(repl, ""); String replace = taxPlayerCodeDept.getName().replace(repl, "");
taxPlayerCodeDept.setName(replace); taxPlayerCodeDept.setName(replace);
@ -164,14 +190,69 @@ public class UserController {
groupManagementEntity.setUsingEntId(taxPlayerCodeDept.getDeptId()); groupManagementEntity.setUsingEntId(taxPlayerCodeDept.getDeptId());
groupManagementEntity.setCreateTime(new Date()); groupManagementEntity.setCreateTime(new Date());
groupManagementEntity.setUpdateTime(new Date()); groupManagementEntity.setUpdateTime(new Date());
groupManagementService.insertGroup(groupManagementEntity); int count = groupManagementService.insertGroup(groupManagementEntity);
if (count == 0) {
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缓存 //新增redis缓存
groupManagementEntity.setGroupName(name);
groupManagementEntity.setXhfMc(name);
String groupManagementStr = JSON.toJSONString(groupManagementEntity); String groupManagementStr = JSON.toJSONString(groupManagementEntity);
redisService.set(kpzzglKey, groupManagementStr, RedisConstant.REDIS_EXPIRE_TIME_7DAYS); redisService.set(kpzzglKey, groupManagementStr, RedisConstant.REDIS_EXPIRE_TIME_7DAYS);
taxPlayerCodeDept.setName(replace);
} }
} }
} }
}); });
} }
public boolean isChanged(TaxPlayerCodeDept taxPlayerCodeDept,GroupManagementEntity groupManagementEntity){
if(!StringUtils.equals(taxPlayerCodeDept.getName(), groupManagementEntity.getGroupName())
|| !StringUtils.equals(taxPlayerCodeDept.getTaxpayerCode(), groupManagementEntity.getXhfNsrsbh())
|| !StringUtils.equals(taxPlayerCodeDept.getName(), groupManagementEntity.getXhfMc())
|| !StringUtils.equals(taxPlayerCodeDept.getTaxpayerAddress(), groupManagementEntity.getXhfDz())
|| !StringUtils.equals(taxPlayerCodeDept.getTaxpayerPhone(), groupManagementEntity.getXhfDh())
|| !StringUtils.equals(taxPlayerCodeDept.getTaxpayerBank(), groupManagementEntity.getXhfYh())
|| !StringUtils.equals(taxPlayerCodeDept.getTaxpayerAccount(), groupManagementEntity.getXhfZh())
|| !StringUtils.equals(taxPlayerCodeDept.getDeptId(), groupManagementEntity.getEntId())) {
return true;
}
return false;
}
public void updateGroup(TaxPlayerCodeDept taxPlayerCodeDept,GroupManagementEntity groupManagementEntity){
String name = taxPlayerCodeDept.getName();
String repl = "(" + taxPlayerCodeDept.getEnterpriseNumbers() + ")";
String replace = taxPlayerCodeDept.getName().replace(repl, "");
taxPlayerCodeDept.setName(replace);
groupManagementEntity.setGroupName(taxPlayerCodeDept.getName());
groupManagementEntity.setXhfNsrsbh(taxPlayerCodeDept.getTaxpayerCode());
groupManagementEntity.setXhfMc(taxPlayerCodeDept.getName());
groupManagementEntity.setXhfDz(taxPlayerCodeDept.getTaxpayerAddress());
groupManagementEntity.setXhfDh(taxPlayerCodeDept.getTaxpayerPhone());
groupManagementEntity.setXhfYh(taxPlayerCodeDept.getTaxpayerBank());
groupManagementEntity.setXhfZh(taxPlayerCodeDept.getTaxpayerAccount());
groupManagementEntity.setEntId(taxPlayerCodeDept.getDeptId());
groupManagementEntity.setUsingEntId(taxPlayerCodeDept.getDeptId());
groupManagementEntity.setUpdateTime(new Date());
groupManagementService.updateGroup(groupManagementEntity);
groupManagementEntity.setGroupName(name);
groupManagementEntity.setXhfMc(name);
}
} }

@ -291,4 +291,37 @@
and del_flag='0' and del_flag='0'
group by group_id group by group_id
</select> </select>
<update id="updateGroupByKey" parameterType="com.dxhy.order.baseservice.module.groupmanagement.model.GroupManagementEntity">
UPDATE
sys_group_management
<set>
<if test="groupManagementEntity.groupName != null">
group_name = #{groupManagementEntity.groupName,jdbcType=VARCHAR},
</if>
<if test="groupManagementEntity.xhfMc != null">
xhf_mc = #{groupManagementEntity.xhfMc,jdbcType=VARCHAR},
</if>
<!-- <if test="groupManagementEntity.xhfDz != null">-->
<!-- xhf_dz = #{groupManagementEntity.xhfDz,jdbcType=VARCHAR},-->
<!-- </if>-->
<!-- <if test="groupManagementEntity.xhfDh != null">-->
<!-- xhf_dh = #{groupManagementEntity.xhfDh,jdbcType=VARCHAR},-->
<!-- </if>-->
<!-- <if test="groupManagementEntity.xhfYh != null">-->
<!-- xhf_yh = #{groupManagementEntity.xhfYh,jdbcType=VARCHAR},-->
<!-- </if>-->
<!-- <if test="groupManagementEntity.xhfZh != null">-->
<!-- xhf_zh = #{groupManagementEntity.xhfZh,jdbcType=VARCHAR},-->
<!-- </if>-->
<if test="groupManagementEntity.updateTime != null">
update_time = #{groupManagementEntity.updateTime,jdbcType=TIMESTAMP},
</if>
</set>
WHERE
xhf_nsrsbh = #{groupManagementEntity.xhfNsrsbh,jdbcType=VARCHAR}
and ent_id = #{groupManagementEntity.entId,jdbcType=VARCHAR}
and del_flag = '0'
</update>
</mapper> </mapper>

Loading…
Cancel
Save