企业信息同步

This commit is contained in:
baozhipeng
2022-02-12 17:22:34 +08:00
parent 0200f6f5b6
commit b73539de9f
3 changed files with 97 additions and 6 deletions
@@ -901,16 +901,28 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
return Result.OK("文件导入成功!");
}
/**
* 会员系统同步数据
* 会员系统同步数据,注册。如果来款这边已存在那会员系统走新增,来款系统走编辑
*
* @param payCompanyAndContactsManagement 会员系统同步数据
* @return
*/
@ApiOperation(value="企业管理-会员系统同步数据", notes="企业管理-会员系统同步数据")
@ApiOperation(value="企业管理-会员系统同步数据,注册。", notes="企业管理-会员系统同步数据,注册。")
@PostMapping(value = "/saveOrEdit")
public Result<?> saveOrEdit(@RequestBody PayCompanyAndContactsManagement payCompanyAndContactsManagement) {
payCompanyManagementService.saveOrEdit(payCompanyAndContactsManagement);
return Result.OK("同步成功!");
}
/**
* 会员系统同步数据
*
* @param payCompanyAndContactsManagement 会员系统同步数据
* @return
*/
@ApiOperation(value="企业管理-会员系统同步数据,编辑", notes="企业管理-会员系统同步数据,编辑")
@PostMapping(value = "/memberEdit")
public Result<?> memberEdit(@RequestBody PayCompanyAndContactsManagement payCompanyAndContactsManagement) {
payCompanyManagementService.edit(payCompanyAndContactsManagement);
return Result.OK("同步成功!");
}
}
@@ -105,8 +105,12 @@ public interface IPayCompanyManagementService extends IService<PayCompanyManagem
void audit(String id);
/**
* 会员系统同步数据
* 会员系统同步数据,注册。如果来款这边已存在那会员系统走新增,来款系统走编辑
*/
void saveOrEdit(PayCompanyAndContactsManagement payCompanyAndContactsManagement);
/**
* 会员系统同步数据,编辑
*/
void edit(PayCompanyAndContactsManagement payCompanyAndContactsManagement);
}
@@ -455,6 +455,10 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
updateBatchData(payCompanyManagement);
}
/**
* 注册。如果来款这边已存在那会员系统走新增,来款系统走编辑
* @param payCompanyAndContactsManagement
*/
@Override
@Transactional(rollbackFor = JeroBootException.class)
public void saveOrEdit(PayCompanyAndContactsManagement payCompanyAndContactsManagement) {
@@ -467,8 +471,6 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
if(Objects.isNull(payCompanyManagement) || Objects.isNull(payContactsManagement)){
throw new JeroBootException("数据为空!");
}
//校验企业名称和信用代码是否匹配
checkCompanyNameDutyCode(payCompanyManagement);
payCompanyManagement.setPostalCode(null);
LambdaQueryWrapper<PayCompanyManagement> queryPayCompanyManagement = new LambdaQueryWrapper<>();
@@ -488,6 +490,8 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
payContactsManagement.setRoleCode(PayContactsManagementCommon.ROLE_CODE2);
// 新增
if(CollectionUtils.isEmpty(listPayCompanyManagement)){
//校验企业名称和信用代码是否匹配
checkCompanyNameDutyCode(payCompanyManagement);
// 新增,如果存在用户,返回异常
if(!CollectionUtils.isEmpty(listPayContactsManagement)){
throw new JeroBootException("此用户已在其他企业下");
@@ -510,7 +514,7 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
List<PayContactsManagement> listPayContactsManagementNew = payContactsManagementService.list(queryPayContactsManagementNew);
// 已经存在会员用户,变更会员用户
if(!CollectionUtils.isEmpty(listPayContactsManagementNew)
&& !Objects.equals(listPayContactsManagementNew.get(0).getPhone(),PasswordUtil.encrypt(payCompanyManagement.getCompanyPhone()))){
&& !Objects.equals(listPayContactsManagementNew.get(0).getPhone(),PasswordUtil.encrypt(payCompanyManagement.getCompanyPhone()))){
LambdaUpdateWrapper<PayContactsManagement> updatePayContactsManagement = new LambdaUpdateWrapper<>();
updatePayContactsManagement.eq(PayContactsManagement::getId,listPayContactsManagementNew.get(0).getId());
updatePayContactsManagement.set(PayContactsManagement::getRoleCode,PayContactsManagementCommon.ROLE_CODE1);
@@ -528,6 +532,77 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
}
}
/**
* 编辑
* @param payCompanyAndContactsManagement
*/
@Override
@Transactional(rollbackFor = JeroBootException.class)
public void edit(PayCompanyAndContactsManagement payCompanyAndContactsManagement) {
if(Objects.isNull(payCompanyAndContactsManagement)){
throw new JeroBootException("数据为空!");
}
String info = JSON.toJSONString(payCompanyAndContactsManagement);
PayCompanyManagement payCompanyManagement = JSONObject.parseObject(info,PayCompanyManagement.class);
PayContactsManagement payContactsManagement = JSONObject.parseObject(info,PayContactsManagement.class);
if(Objects.isNull(payCompanyManagement) || Objects.isNull(payContactsManagement)){
throw new JeroBootException("数据为空!");
}
LambdaQueryWrapper<PayCompanyManagement> queryDutyCode = new LambdaQueryWrapper<>();
queryDutyCode.ne(PayCompanyManagement::getCompanyName,payCompanyManagement.getCompanyName());
queryDutyCode.eq(PayCompanyManagement::getDutyCode,payCompanyManagement.getDutyCode());
List<PayCompanyManagement> queryDutyCodeList = payCompanyManagementService.list(queryDutyCode);
if(CollectionUtils.isNotEmpty(queryDutyCodeList)){
throw new JeroBootException("信用代码已存在!");
}
payCompanyManagement.setPostalCode(null);
LambdaQueryWrapper<PayCompanyManagement> queryPayCompanyManagement = new LambdaQueryWrapper<>();
queryPayCompanyManagement.eq(PayCompanyManagement::getCompanyName,payCompanyManagement.getCompanyName());
queryPayCompanyManagement.last("limit 1");
List<PayCompanyManagement> listPayCompanyManagement = payCompanyManagementService.list(queryPayCompanyManagement);
String phone = PasswordUtil.encrypt(payContactsManagement.getPhone());
LambdaQueryWrapper<PayContactsManagement> queryPayContactsManagement = new LambdaQueryWrapper<>();
queryPayContactsManagement.eq(PayContactsManagement::getPhone,phone);
queryPayContactsManagement.last("limit 1");
List<PayContactsManagement> listPayContactsManagement = payContactsManagementService.list(queryPayContactsManagement);
payCompanyManagement.setFlagStatus(PayCompanyManagementCommon.FLAG_STATUS);
payContactsManagement.setFlagStatus(PayContactsManagementCommon.FLAG_STATUS);
payCompanyManagement.setRoleCode(PayCompanyManagementCommon.ROLE_CODE2);
payContactsManagement.setRoleCode(PayContactsManagementCommon.ROLE_CODE2);
payContactsManagement.setCompanyId(listPayCompanyManagement.get(0).getId());
// 如果存在用户
if(!CollectionUtils.isEmpty(listPayContactsManagement)){
// 企业不同,返回异常
if(!Objects.equals(listPayContactsManagement.get(0).getCompanyId(),listPayCompanyManagement.get(0).getId())){
throw new JeroBootException("此用户已在其他企业下");
}else{
LambdaQueryWrapper<PayContactsManagement> queryPayContactsManagementNew = new LambdaQueryWrapper<>();
queryPayContactsManagementNew.eq(PayContactsManagement::getCompanyId,listPayCompanyManagement.get(0).getId());
queryPayContactsManagementNew.eq(PayContactsManagement::getRoleCode,PayCompanyManagementCommon.ROLE_CODE2);
List<PayContactsManagement> listPayContactsManagementNew = payContactsManagementService.list(queryPayContactsManagementNew);
// 已经存在会员用户,变更会员用户
if(!CollectionUtils.isEmpty(listPayContactsManagementNew)
&& !Objects.equals(listPayContactsManagementNew.get(0).getPhone(),PasswordUtil.encrypt(payCompanyManagement.getCompanyPhone()))){
LambdaUpdateWrapper<PayContactsManagement> updatePayContactsManagement = new LambdaUpdateWrapper<>();
updatePayContactsManagement.eq(PayContactsManagement::getId,listPayContactsManagementNew.get(0).getId());
updatePayContactsManagement.set(PayContactsManagement::getRoleCode,PayContactsManagementCommon.ROLE_CODE1);
payContactsManagementService.update(updatePayContactsManagement);
}
payContactsManagement.setId(listPayContactsManagement.get(0).getId());
payContactsManagementService.contactsEditMember(payContactsManagement);
}
}else{
payContactsManagement.setDelFlag(PayContactsManagementCommon.DEL_FLAG1);
payContactsManagementService.addMeeting(payContactsManagement);
}
payCompanyManagement.setId(listPayCompanyManagement.get(0).getId());
companyEditMember(payCompanyManagement);
}
/**
* 校验企业名称和信用代码是否匹配
* @param payCompanyManagement