helixiao 2 лет назад
Родитель
Сommit
0dcf020769

+ 79 - 33
src/main/java/com/ydtech/modules/admin/service/impl/SysAgencyLeaderServiceImpl.java

@@ -177,8 +177,11 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
     public boolean edit(SysAgencyLeaderDto sysAgencyLeaderDto) {
         //不修改负责人userId传null
         String userId = sysAgencyLeaderDto.getUserId();
+        String loginId = BaseController.getUserId();
+        boolean b = false;
         SysAgencyLeader sysAgencyLeader1 = sysAgencyLeaderMapper.selectById(sysAgencyLeaderDto.getId());
-        if (StringUtils.isNotEmpty(userId) && !sysAgencyLeader1.getUserId().equals(userId)) {
+        if (!sysAgencyLeader1.getUserId().equals(userId)) {
+            //修改管理员
             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(sysAgencyLeaderDto.getUserId())) {
@@ -201,40 +204,83 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
                 throw new DescribeException(sysAgencyLeaderDto.getUserName() + "有推荐关系,不允许修改");
             }
 
-        }
-        if (sysAgencyLeader1.getSuggestId() != null) {
-            throw new DescribeException(sysAgencyLeaderDto.getUserName() + "有推荐人,不允许修改");
-        }
-        SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDto, SysAgencyLeader.class);
-        sysAgencyLeader.setUpdateTime(new Date());
-        SysUser user = BaseController.getUser();
-        sysAgencyLeader.setUpdateBy(user.getId());
-        sysAgencyLeaderMapper.updateById(sysAgencyLeader);
+            SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDto, SysAgencyLeader.class);
+            sysAgencyLeader.setUpdateTime(new Date());
+            sysAgencyLeader.setUpdateBy(loginId);
+            sysAgencyLeaderMapper.updateById(sysAgencyLeader);
+            if (!sysAgencyLeaderDto.getSuggestId().isEmpty()){
+                //sysRelationPerson1为空是无上级
+                SysRelationPerson sysRelationPerson = new SysRelationPerson();
+                sysRelationPerson.setAgencyLeaderId(sysAgencyLeader.getUserId());
+                sysRelationPerson.setCreateBy(loginId);
+                sysRelationPerson.setCreateTime(new Date());
+                sysRelationPerson.setSuggestId(sysAgencyLeaderDto.getSuggestId());
+                sysRelationPerson.setSource(0);
+                sysRelationPerson.setType(1);
+                b = sysRelationPersonMapper.insert(sysRelationPerson) > 0;
+                //查询推荐人是否有上级 :满足合伙人有多层关系
+                List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
+                        .eq(SysRelationPerson::getAgencyLeaderId, sysAgencyLeaderDto.getSuggestId())
+                        .eq(SysRelationPerson::getType, 0));
+
+                if (sysRelationPersonList.size() > 0) {
+                    for (SysRelationPerson sysRelation : sysRelationPersonList) {
+                        SysRelationPerson sysRelationPerson1 = new SysRelationPerson();
+                        sysRelationPerson1.setAgencyLeaderId(sysAgencyLeader.getUserId());
+                        sysRelationPerson1.setCreateBy(loginId);
+                        sysRelationPerson1.setCreateTime(new Date());
+                        sysRelationPerson1.setSuggestId(sysRelation.getSuggestId());
+                        sysRelationPerson1.setSource(1);
+                        sysRelationPerson1.setType(1);
+                        b = sysRelationPersonMapper.insert(sysRelationPerson1)>0;
+                    }
 
-        //sysRelationPerson1为空是无上级
-        SysRelationPerson sysRelationPerson = new SysRelationPerson();
-        sysRelationPerson.setAgencyLeaderId(sysAgencyLeader.getUserId());
-        sysRelationPerson.setCreateBy(user.getId());
-        sysRelationPerson.setCreateTime(new Date());
-        sysRelationPerson.setSuggestId(sysAgencyLeaderDto.getSuggestId());
-        sysRelationPerson.setSource(0);
-        sysRelationPerson.setType(1);
-        boolean b = sysRelationPersonMapper.insert(sysRelationPerson) > 0;
-        //查询推荐人是否有上级 :满足合伙人有多层关系
-        List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
-                .eq(SysRelationPerson::getAgencyLeaderId, sysAgencyLeaderDto.getSuggestId())
-                .eq(SysRelationPerson::getType, 0));
+                }
+            }
 
-        if (sysRelationPersonList.size() > 0) {
-            for (SysRelationPerson sysRelation : sysRelationPersonList) {
-                SysRelationPerson sysRelationPerson1 = new SysRelationPerson();
-                sysRelationPerson1.setAgencyLeaderId(sysAgencyLeader.getUserId());
-                sysRelationPerson1.setCreateBy(user.getId());
-                sysRelationPerson1.setCreateTime(new Date());
-                sysRelationPerson1.setSuggestId(sysRelation.getSuggestId());
-                sysRelationPerson1.setSource(1);
-                sysRelationPerson1.setType(1);
-                sysRelationPersonMapper.insert(sysRelationPerson1);
+
+        }else {
+            if (sysAgencyLeader1.getSuggestId() == null && !sysAgencyLeaderDto.getSuggestId().isEmpty()) {
+                //之前推荐人为空。可以修改
+                SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDto, SysAgencyLeader.class);
+                sysAgencyLeader.setUpdateBy(loginId);
+                b = sysAgencyLeaderMapper.updateById(sysAgencyLeader)>0;
+
+                //sysRelationPerson1为空是无上级
+                SysRelationPerson sysRelationPerson = new SysRelationPerson();
+                sysRelationPerson.setAgencyLeaderId(sysAgencyLeader.getUserId());
+                sysRelationPerson.setCreateBy(loginId);
+                sysRelationPerson.setCreateTime(new Date());
+                sysRelationPerson.setSuggestId(sysAgencyLeaderDto.getSuggestId());
+                sysRelationPerson.setSource(0);
+                sysRelationPerson.setType(1);
+                b = sysRelationPersonMapper.insert(sysRelationPerson) > 0;
+                //查询推荐人是否有上级 :满足合伙人有多层关系
+                List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
+                        .eq(SysRelationPerson::getAgencyLeaderId, sysAgencyLeaderDto.getSuggestId())
+                        .eq(SysRelationPerson::getType, 0));
+
+                if (sysRelationPersonList.size() > 0) {
+                    for (SysRelationPerson sysRelation : sysRelationPersonList) {
+                        SysRelationPerson sysRelationPerson1 = new SysRelationPerson();
+                        sysRelationPerson1.setAgencyLeaderId(sysAgencyLeader.getUserId());
+                        sysRelationPerson1.setCreateBy(loginId);
+                        sysRelationPerson1.setCreateTime(new Date());
+                        sysRelationPerson1.setSuggestId(sysRelation.getSuggestId());
+                        sysRelationPerson1.setSource(1);
+                        sysRelationPerson1.setType(1);
+                        b = sysRelationPersonMapper.insert(sysRelationPerson1)>0;
+                    }
+
+                }
+
+            }else {
+
+                SysAgencyLeader sysAgencyLeader = new SysAgencyLeader();
+                sysAgencyLeader.setId(sysAgencyLeaderDto.getId());
+                sysAgencyLeader.setProportional(sysAgencyLeaderDto.getProportional());
+                sysAgencyLeader.setUpdateBy(loginId);
+                b = sysAgencyLeaderMapper.updateById(sysAgencyLeader)>0;
             }
 
         }

+ 47 - 6
src/main/java/com/ydtech/modules/admin/service/impl/SysPartnerServiceImpl.java

@@ -436,16 +436,57 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public boolean edit(SysPartnerDto sysPartnerDto) {
+        boolean b;
         SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>()
                 .eq(SysPartner::getDelFlag, 1).eq(SysPartner::getUserId, sysPartnerDto.getUserId()));
-        if (sysPartner == null) {
-            throw new DescribeException("此合伙人不存在!");
+        if (sysPartner == null) throw new DescribeException("系统错误,请联系管理员!");
+
+        if (sysPartner.getSuggestId() == null && !sysPartnerDto.getSuggestId().isEmpty()) {
+            SysPartner partner = new SysPartner();
+            partner.setId(sysPartner.getId());
+            partner.setProportional(sysPartnerDto.getProportional());
+            partner.setSuggestId(sysPartnerDto.getSuggestId());
+            partner.setSuggestName(sysPartnerDto.getSuggestName());
+            b = sysPartnerMapper.updateById(partner) > 0;
+
+            SysRelationPerson sysRelationPerson = new SysRelationPerson();
+            sysRelationPerson.setAgencyLeaderId(sysPartnerDto.getUserId());
+            sysRelationPerson.setSuggestId(sysPartnerDto.getSuggestId());
+            //'推荐等级(0:直接推荐;1:间接推荐)
+            sysRelationPerson.setSource(0);
+            //推荐类型(0:合伙人  1:机构负责人)
+            sysRelationPerson.setType(0);
+            sysRelationPerson.setCreateBy(BaseController.getUser().getId());
+            sysRelationPerson.setCreateTime(new Date());
+            b = sysRelationPersonMapper.insert(sysRelationPerson) > 0;
+            //查询合伙人的推荐人是否有上级
+            List<SysRelationPerson> sysRelationPeople = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
+                    .eq(SysRelationPerson::getAgencyLeaderId, sysPartnerDto.getSuggestId())
+                    .eq(SysRelationPerson::getType, 0));
+            if (sysRelationPeople.size() > 0) {
+                for (SysRelationPerson relationPerson : sysRelationPeople) {
+                    SysRelationPerson sysRelationPerson1 = new SysRelationPerson();
+                    sysRelationPerson1.setAgencyLeaderId(sysPartnerDto.getUserId());
+                    sysRelationPerson1.setSuggestId(relationPerson.getSuggestId());
+                    sysRelationPerson1.setSource(1);
+                    //推荐类型(0:合伙人  1:机构负责人)
+                    sysRelationPerson1.setType(0);
+                    sysRelationPerson1.setCreateBy(BaseController.getUser().getId());
+                    sysRelationPerson1.setCreateTime(new Date());
+                    sysRelationPersonMapper.insert(sysRelationPerson1);
+                }
+            }
+        }else {
+            SysPartner partner = new SysPartner();
+            partner.setId(sysPartner.getId());
+            partner.setProportional(sysPartnerDto.getProportional());
+            b = sysPartnerMapper.updateById(partner) > 0;
         }
-        SysPartner partner = new SysPartner();
-        partner.setId(sysPartner.getId());
-        partner.setProportional(sysPartnerDto.getProportional());
-        return sysPartnerMapper.updateById(partner) > 0;
+
+
+        return b;
     }