|
|
@@ -23,6 +23,7 @@ import com.ydtech.modules.admin.constants.QuMarks;
|
|
|
import com.ydtech.modules.admin.constants.RoleConstants;
|
|
|
import com.ydtech.modules.admin.constants.UserWorkStatus;
|
|
|
import com.ydtech.modules.admin.dao.SysDeptMapper;
|
|
|
+import com.ydtech.modules.admin.dao.SysPartnerMapper;
|
|
|
import com.ydtech.modules.admin.dao.SysUserLinkAreaMapper;
|
|
|
import com.ydtech.modules.admin.dao.SysUserMapper;
|
|
|
import com.ydtech.modules.admin.model.*;
|
|
|
@@ -125,7 +126,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
private SysAgencyLeaderService sysAgencyLeaderService;
|
|
|
|
|
|
@Resource
|
|
|
- private SysUserService sysUserService;
|
|
|
+ private SysPartnerMapper sysPartnerMapper;
|
|
|
|
|
|
@Value("${httpUrl}")
|
|
|
private String httpUrl;
|
|
|
@@ -984,7 +985,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
throw new SystemException("角色id不能为空");
|
|
|
}
|
|
|
//获取机构层级
|
|
|
- int deptLevel = sysUserService.getDeptLevel1(sysDeptVo.getId());
|
|
|
+ int deptLevel = this.getDeptLevel1(sysDeptVo.getId());
|
|
|
if (!StringUtils.isNullOrEmpty(sysUser.getRoleId())) {
|
|
|
if (RoleConstants.R21.getCode().equals(sysUser.getRoleId())
|
|
|
|| RoleConstants.R20.getCode().equals(sysUser.getRoleId())
|
|
|
@@ -995,7 +996,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
}
|
|
|
//如果为团队长,判断是否已经存在团队长,存在不允许添加 add by hxl 2024-05-07 ============begin
|
|
|
if (RoleConstants.R21.getCode().equals(sysUser.getRoleId())) {
|
|
|
- int count = sysUserService.getCountByDeptAndRoleId(sysUser);
|
|
|
+ int count = this.getCountByDeptAndRoleId(sysUser);
|
|
|
if (count > 0) {
|
|
|
throw new SystemException("该机构已存在团队长,不允许再添加!!");
|
|
|
}
|
|
|
@@ -2360,4 +2361,64 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
buildUserTree(topUsers, users);
|
|
|
return topUsers;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public boolean addInfo(SysUser sysUser) {
|
|
|
+ SysUserTrack sysUserTrack = new SysUserTrack(sysUser);
|
|
|
+
|
|
|
+ sysUserTrackService.save(sysUserTrack);
|
|
|
+ Integer type = sysUser.getType();
|
|
|
+ if (type == 1) {
|
|
|
+ SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getUserId, sysUser.getId()));
|
|
|
+ if (sysPartner == null) {
|
|
|
+ //保存合伙人信息
|
|
|
+ SysPartnerDto sysPartnerDto = new SysPartnerDto();
|
|
|
+ sysPartnerDto.setUserId(sysUser.getId());
|
|
|
+ sysPartnerDto.setUserName(sysUser.getName());
|
|
|
+ if (sysUser.getLevel() != 1) {
|
|
|
+ sysPartnerDto.setSuggestId(sysUser.getReferrerId());
|
|
|
+ }
|
|
|
+ sysPartnerDto.setLevel(sysUser.getLevel());
|
|
|
+ sysPartnerService.insert(sysPartnerDto);
|
|
|
+ }
|
|
|
+ } else if (type == 2){
|
|
|
+ SysDept sysDept = sysDeptService.getById(sysUser.getDeptId());
|
|
|
+ SysDept sysDeptParent = sysDeptService.getById(sysDept.getParentId());
|
|
|
+ SysUser sysUserReferrerId = this.getById(sysUser.getReferrerId());
|
|
|
+ SysDeptVo sysDeptVo = new SysDeptVo();
|
|
|
+ sysDeptVo.setComlevel("5"); // 默认机构等级为5级
|
|
|
+ sysDeptVo.setComtype(sysUser.getDeptType());
|
|
|
+ sysDeptVo.setName(sysUser.getName() + "工作室"); // 以人名设置工作室名称
|
|
|
+ sysDeptVo.setDeptType("C"); // 默认为子公司
|
|
|
+ sysDeptVo.setParentId(sysDept.getParentId());
|
|
|
+ sysDeptVo.setManagementSource(sysUser.getDeptSource()); //机构来源默认为加盟
|
|
|
+ sysDeptVo.setWorkerId(sysUser.getId()); // 工作室命名人id
|
|
|
+ sysDeptVo.setOrderNum(0);
|
|
|
+ sysDeptVo.setComattribute("procar"); //机构性质 车险
|
|
|
+ sysDeptVo.setProvince(sysDeptParent.getProvince()); // 默认省与负责人所在机构一样
|
|
|
+ sysDeptVo.setCity(sysDeptParent.getCity()); // 默认市与负责人所在机构一样
|
|
|
+ sysDeptVo.setArea(sysDeptParent.getArea()); // 默认区县与负责人所在机构一样
|
|
|
+ sysDeptVo.setCreateTime(new Date());
|
|
|
+ sysDeptVo.setAddress(""); // 工作室地址
|
|
|
+ sysDeptService.addDept(sysDeptVo);
|
|
|
+ SysAgencyLeaderDto sysAgencyLeaderDto = new SysAgencyLeaderDto();
|
|
|
+ sysAgencyLeaderDto.setUserId(sysUser.getId());
|
|
|
+ sysAgencyLeaderDto.setUserName(sysUser.getName());
|
|
|
+ sysAgencyLeaderDto.setDeptId(sysDeptVo.getId());
|
|
|
+ sysAgencyLeaderDto.setDeptName(sysDeptVo.getName());
|
|
|
+ sysAgencyLeaderDto.setSource(sysUser.getDeptSource());
|
|
|
+ sysAgencyLeaderDto.setComlevel(sysDeptVo.getComlevel());
|
|
|
+ sysAgencyLeaderDto.setSuggestId(sysUser.getReferrerId());
|
|
|
+ sysAgencyLeaderDto.setSuggestName(sysUser.getSuggestName());
|
|
|
+ sysAgencyLeaderDto.setSuggestLevel(sysUserReferrerId.getLevel());
|
|
|
+
|
|
|
+ sysAgencyLeaderService.insert(sysAgencyLeaderDto);
|
|
|
+ }
|
|
|
+
|
|
|
+ return this.updateById(sysUser);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|