|
|
@@ -328,6 +328,51 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
return b;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void editInfo(SysAgencyLeaderDeptDto sysAgencyLeaderDeptDto) {
|
|
|
+ SysDept sysDept = sysAgencyLeaderDeptDto.getSysDept();
|
|
|
+ SysDept byId = sysDeptService.getById(sysDept.getId());
|
|
|
+ if (sysDept.getManagementSource() != null){
|
|
|
+ if (!sysDept.getManagementSource().equals(byId.getManagementSource())) {
|
|
|
+ throw new DescribeException("机构已被设置来源无法修改");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ sysDeptService.updateDept(sysDept);
|
|
|
+
|
|
|
+ //不修改负责人userId传null
|
|
|
+ String userId = sysAgencyLeaderDeptDto.getSysAgencyLeader().getUserId();
|
|
|
+ String loginId = BaseController.getUserId();
|
|
|
+ SysAgencyLeader sysAgencyLeader1 = sysAgencyLeaderMapper.selectById(sysAgencyLeaderDeptDto.getSysAgencyLeader().getId());
|
|
|
+ //修改管理员
|
|
|
+ List<SysAgencyLeader> sysAgencyLeaders = sysAgencyLeaderMapper.selectList(new QueryWrapper<SysAgencyLeader>().lambda().eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
+ List<String> userIdList = sysAgencyLeaders.stream().map(SysAgencyLeader::getUserId).collect(Collectors.toList());
|
|
|
+ if (userIdList.contains(userId)) {
|
|
|
+ throw new DescribeException(sysAgencyLeaderDeptDto.getSysAgencyLeader().getUserName() + "已是工作室管理员,不可重复配置");
|
|
|
+ }
|
|
|
+ List<SysPartner> sysPartners = sysPartnerMapper.selectList(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getDelFlag, 1));
|
|
|
+ if (sysPartners.size() > 0) {
|
|
|
+ List<String> list = sysPartners.stream().map(SysPartner::getUserId).collect(Collectors.toList());
|
|
|
+ if (list.contains(sysAgencyLeaderDeptDto.getSysAgencyLeader().getUserId())) {
|
|
|
+ throw new DescribeException(sysAgencyLeaderDeptDto.getSysAgencyLeader().getUserName() + "已是合伙人,不可设置为机构负责人");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //修改负责人时解除合伙人或者推荐人与机构负责人的关系
|
|
|
+ List<SysRelationPerson> sysRelationPeople = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
+ .eq(SysRelationPerson::getAgencyLeaderId, sysAgencyLeader1.getUserId())
|
|
|
+ .eq(SysRelationPerson::getDelFlag, 1)
|
|
|
+ .eq(SysRelationPerson::getType, 1));
|
|
|
+ if (sysRelationPeople.size() > 0) {
|
|
|
+ throw new DescribeException(sysAgencyLeader1.getUserName() + "有推荐关系,不允许修改");
|
|
|
+ }
|
|
|
+
|
|
|
+ SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDeptDto.getSysAgencyLeader(), SysAgencyLeader.class);
|
|
|
+ sysAgencyLeader.setUpdateTime(new Date());
|
|
|
+ sysAgencyLeader.setUpdateBy(loginId);
|
|
|
+ sysAgencyLeaderMapper.updateById(sysAgencyLeader);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public boolean delById(Integer id) {
|
|
|
@@ -1030,5 +1075,34 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public boolean editAll(List<SysAgencyLeaderDto> sysAgencyLeaderDto) {
|
|
|
+ String loginId = BaseController.getUserId();
|
|
|
+ if (CollectionUtil.isEmpty(sysAgencyLeaderDto)) {
|
|
|
+ throw new DescribeException( "批量修改参数不能为空");
|
|
|
+ }
|
|
|
+ for (SysAgencyLeaderDto agencyLeaderDto : sysAgencyLeaderDto) {
|
|
|
+ SysAgencyLeader sysAgencyLeader = new SysAgencyLeader();
|
|
|
+ sysAgencyLeader.setId(agencyLeaderDto.getId());
|
|
|
+ sysAgencyLeader.setProportional(agencyLeaderDto.getProportional());
|
|
|
+ sysAgencyLeader.setUpdateBy(loginId);
|
|
|
+ return sysAgencyLeaderMapper.updateById(sysAgencyLeader) > 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public SysAgencyLeaderDeptVo queryInfoById(Integer id) {
|
|
|
+ SysAgencyLeaderDeptVo sysAgencyLeaderDeptVo = new SysAgencyLeaderDeptVo();
|
|
|
+ SysAgencyLeader sysAgencyLeader = baseMapper.selectById(id);
|
|
|
+ sysAgencyLeaderDeptVo.setSysAgencyLeader(sysAgencyLeader);
|
|
|
+
|
|
|
+ SysDept sysDept = sysDeptMapper.selectById(sysAgencyLeader.getDeptId());
|
|
|
+ sysAgencyLeaderDeptVo.setSysDept(sysDept);
|
|
|
+
|
|
|
+ return sysAgencyLeaderDeptVo;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
}
|