|
|
@@ -155,7 +155,7 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return saveOrUpdateAttn;
|
|
|
}
|
|
|
- if ("1".equals(corpsDesc.getBillType())){
|
|
|
+ if ("1".equals(corpsDesc.getBillType())) {
|
|
|
User user = new User();
|
|
|
user.setTenantId(AuthUtil.getTenantId());
|
|
|
user.setUserType(1);
|
|
|
@@ -172,21 +172,21 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
user.setPostId(AuthUtil.getPostId());
|
|
|
|
|
|
LambdaQueryWrapper<CorpsAttn> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper.eq(CorpsAttn::getTenantId,AuthUtil.getTenantId())
|
|
|
- .eq(CorpsAttn::getIsDeleted,0)
|
|
|
- .eq(CorpsAttn::getTel,corpsDesc.getTel())
|
|
|
- .eq(CorpsAttn::getPid,corpsDesc.getId());
|
|
|
+ lambdaQueryWrapper.eq(CorpsAttn::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(CorpsAttn::getIsDeleted, 0)
|
|
|
+ .eq(CorpsAttn::getTel, corpsDesc.getTel())
|
|
|
+ .eq(CorpsAttn::getPid, corpsDesc.getId());
|
|
|
CorpsAttn attn = corpsAttnService.getOne(lambdaQueryWrapper);
|
|
|
- if (ObjectUtils.isNotNull(attn)){
|
|
|
+ if (ObjectUtils.isNotNull(attn)) {
|
|
|
R<User> userR = userClient.userInfoById(attn.getUserId());
|
|
|
- if (ObjectUtil.isNotEmpty(userR.getData())){
|
|
|
+ if (ObjectUtil.isNotEmpty(userR.getData())) {
|
|
|
user.setId(attn.getUserId());
|
|
|
R<Boolean> result = userClient.updateUser(user);
|
|
|
|
|
|
if (!result.isSuccess()) {
|
|
|
throw new ServiceException(result.getMsg());
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
user.setPassword(LandConstant.USER_PASSWORD);
|
|
|
R<Boolean> result = userClient.saveUser(user);
|
|
|
if (!result.isSuccess()) {
|
|
|
@@ -199,7 +199,7 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
attn.setUserId(userTemp.getData().getId());
|
|
|
corpsAttnService.updateById(attn);
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
user.setPassword(LandConstant.USER_PASSWORD);
|
|
|
R<Boolean> result = userClient.saveUser(user);
|
|
|
if (!result.isSuccess()) {
|
|
|
@@ -743,7 +743,7 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
/**
|
|
|
* 根据code模糊查询客户
|
|
|
*
|
|
|
- * @param code 编码
|
|
|
+ * @param code 编码
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
@@ -756,6 +756,122 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ public R saveCorpsDesc(CorpsDesc corpsDesc) {
|
|
|
+ Long userId = SecureUtil.getUserId();
|
|
|
+ Date date = new Date();
|
|
|
+ if (null == corpsDesc.getInitials() || "" == corpsDesc.getInitials()) {//首字母为空
|
|
|
+ //获得名称首字母
|
|
|
+ String initials = getSpells(corpsDesc.getCname());
|
|
|
+ corpsDesc.setInitials(initials.substring(0, 1));
|
|
|
+ }
|
|
|
+ //保存客户信息
|
|
|
+ corpsDesc.setCode(corpsDesc.getCname());
|
|
|
+ corpsDesc.setCorpType("KH");
|
|
|
+ if (corpsDesc.getId() == null) {
|
|
|
+ if (StringUtils.isBlank(corpsDesc.getCname())) {
|
|
|
+ return R.data(200, "error", "客户名称不能为空");
|
|
|
+ }
|
|
|
+ CorpsDesc corpsDesc1 = baseMapper.selectCorpsDescCname(corpsDesc.getCname(), AuthUtil.getTenantId());
|
|
|
+ if (ObjectUtils.isNotNull(corpsDesc1)) {
|
|
|
+ if (!AuthUtil.getUserRole().equals("操作员")) {
|
|
|
+ corpsDesc1.setAddr(corpsDesc.getAddr());
|
|
|
+ corpsDesc1.setAttn(corpsDesc.getAttn());
|
|
|
+ corpsDesc1.setCname(corpsDesc.getCname());
|
|
|
+ }
|
|
|
+ CorpsAttn corpsAttn = corpsAttnService.getOne(new LambdaQueryWrapper<CorpsAttn>().eq(CorpsAttn::getIsDeleted, 0)
|
|
|
+ .eq(CorpsAttn::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(CorpsAttn::getPid, corpsDesc1.getId())
|
|
|
+ .eq(CorpsAttn::getTel, corpsDesc.getTel()));
|
|
|
+ if (ObjectUtils.isNotNull(corpsAttn)) {
|
|
|
+ corpsAttn.setAddr(corpsDesc.getAddr());
|
|
|
+ corpsAttn.setAttn(corpsDesc.getAttn());
|
|
|
+ corpsAttnService.updateById(corpsAttn);
|
|
|
+ }
|
|
|
+ CorpsAddr corpsAddr = corpsAddrService.getOne(new LambdaQueryWrapper<CorpsAddr>().eq(CorpsAddr::getIsDeleted, 0)
|
|
|
+ .eq(CorpsAddr::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(CorpsAddr::getPid, corpsDesc1.getId())
|
|
|
+ .eq(CorpsAddr::getTel, corpsDesc.getTel()));
|
|
|
+ if (ObjectUtils.isNotNull(corpsAddr)) {
|
|
|
+ corpsAddr.setAddr(corpsDesc.getAddr());
|
|
|
+ corpsAddr.setDetailedAddress(corpsDesc.getAddr());
|
|
|
+ corpsAddr.setAttn(corpsDesc.getAttn());
|
|
|
+ corpsAddrService.updateById(corpsAddr);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ corpsDesc.setTenantId(SecureUtil.getTenantId());
|
|
|
+ corpsDesc.setCreateDept(Long.valueOf(SecureUtil.getDeptId()));
|
|
|
+ corpsDesc.setCreateTime(date);
|
|
|
+ corpsDesc.setCreateUser(userId);
|
|
|
+ baseMapper.insert(corpsDesc);
|
|
|
+ Long pId = corpsDesc.getId();
|
|
|
+ String tenantId = corpsDesc.getTenantId();
|
|
|
+ //保护客户联系人信息
|
|
|
+ CorpsAttn corpsAttn = new CorpsAttn();
|
|
|
+ User user = userClient.loginByAccount("", corpsDesc.getTel(), "4", AuthUtil.getTenantId());
|
|
|
+ if (ObjectUtils.isNotNull(user)) {
|
|
|
+ corpsAttn.setUserId(user.getId());
|
|
|
+ }
|
|
|
+ corpsAttn.setCode(corpsDesc.getCname());
|
|
|
+ corpsAttn.setCname(corpsDesc.getCname());
|
|
|
+ corpsAttn.setAttn(corpsDesc.getAttn());
|
|
|
+ corpsAttn.setTel(corpsDesc.getTel());
|
|
|
+ corpsAttn.setTenantId(AuthUtil.getTenantId());
|
|
|
+ corpsAttn.setPid(corpsDesc.getId());
|
|
|
+ corpsAttn.setCreateTime(new Date());
|
|
|
+ corpsAttn.setTenantId(AuthUtil.getTenantId());
|
|
|
+ corpsAttn.setCreateUser(AuthUtil.getUserId());
|
|
|
+ corpsAttnService.save(corpsAttn);
|
|
|
+ //保存客户地址信息
|
|
|
+ CorpsAddr corpsAddr = new CorpsAddr();
|
|
|
+ corpsAddr.setAddr(corpsDesc.getAddr());
|
|
|
+ corpsAddr.setDetailedAddress(corpsDesc.getAddr());
|
|
|
+ corpsAddr.setAttn(corpsDesc.getAttn());
|
|
|
+ corpsAddr.setTel(corpsDesc.getTel());
|
|
|
+ corpsAddr.setTenantId(AuthUtil.getTenantId());
|
|
|
+ corpsAddr.setPid(corpsDesc.getId());
|
|
|
+ corpsAddr.setCreateTime(new Date());
|
|
|
+ corpsAddr.setTenantId(AuthUtil.getTenantId());
|
|
|
+ corpsAddr.setCreateUser(AuthUtil.getUserId());
|
|
|
+ corpsAddrService.save(corpsAddr);
|
|
|
+ //保存客户与类别对应关系
|
|
|
+ this.saveOrUpdateTypeDesc(corpsDesc, userId, pId, date, tenantId);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ corpsDesc.setTenantId(SecureUtil.getTenantId());
|
|
|
+ corpsDesc.setUpdateTime(date);
|
|
|
+ corpsDesc.setCreateDept(Long.valueOf(SecureUtil.getDeptId()));
|
|
|
+ corpsDesc.setUpdateUser(userId);
|
|
|
+ baseMapper.updateById(corpsDesc);
|
|
|
+ }
|
|
|
+
|
|
|
+ return R.data(corpsDesc);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R getDetails() {
|
|
|
+ CorpsAttn corpsAttn = corpsAttnService.getOne(new LambdaQueryWrapper<CorpsAttn>().eq(CorpsAttn::getIsDeleted, 0)
|
|
|
+ .eq(CorpsAttn::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(CorpsAttn::getUserId, AuthUtil.getUserId()));
|
|
|
+ if (ObjectUtils.isNotNull(corpsAttn)) {
|
|
|
+ CorpsDesc corpsDesc = baseMapper.getCorpId(corpsAttn.getPid());
|
|
|
+ if (ObjectUtils.isNotNull(corpsDesc)) {
|
|
|
+ if (AuthUtil.getUserRole().equals("操作员")) {
|
|
|
+ corpsDesc.setAttn(corpsAttn.getAttn());
|
|
|
+ corpsDesc.setAddr(corpsAttn.getAddr());
|
|
|
+ corpsDesc.setTel(corpsAttn.getTel());
|
|
|
+ return R.data(corpsDesc);
|
|
|
+ } else {
|
|
|
+ return R.data(corpsDesc);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return R.data(new CorpsDesc());
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return R.data(new CorpsDesc());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public IPage<CorpsDescDto> selectPartsCorpsDescPage(IPage<CorpsDescDto> page, CorpsDescDto corpsDescDto) {
|
|
|
//获取客户子类别
|
|
|
if (StringUtils.isNotBlank(corpsDescDto.getCorpsTypeId())) {
|
|
|
@@ -879,7 +995,8 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
corpsDescDto.setCorpsFiles(corpsFilesService.list(new QueryWrapper<CorpsFiles>().eq("pid", corpsDesc.getId()).eq("is_deleted", 0).eq("status", 0)));
|
|
|
//获取客户地址
|
|
|
corpsDescDto.setCorpsAddrList(corpsAddrService.list(new QueryWrapper<CorpsAddr>().eq("pid", corpsDesc.getId()).eq("is_deleted", 0).eq("status", 0)));
|
|
|
-
|
|
|
+ //客户联系人
|
|
|
+ corpsDescDto.setCorpsAttnList(corpsAttnService.list(new QueryWrapper<CorpsAttn>().eq("pid", corpsDesc.getId()).eq("is_deleted", 0).eq("status", 0)));
|
|
|
//获取客户类别
|
|
|
List<String> longs = corpsTypeDescMapper.selectTypeId(corpsDesc.getId());
|
|
|
corpsDescDto.setCorpsTypeId(String.join(",", longs));
|