Przeglądaj źródła

修改新增/修改家族树

Alex 4 lat temu
rodzic
commit
0b952350e7

+ 16 - 3
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbFamilyMemberController.java

@@ -82,6 +82,16 @@ public class TbFamilyMemberController extends BaseController {
         List<AppMemberVo> list = iTbFamilyMemberService.selectMemberNotTree(memberVo);
         return AjaxResult.success(list);
     }
+    /**
+     * 查询已在家族树的成员列表
+     */
+    @ApiOperation("查询已在家族树的成员列表")
+    @PreAuthorize("@ss.hasPermi('system:member:list')")
+    @GetMapping("/inTreeList")
+    public AjaxResult inTreeList(AppMemberVo memberVo) {
+        List<AppMemberVo> list = iTbFamilyMemberService.selectMemberInTree(memberVo);
+        return AjaxResult.success(list);
+    }
 
     @ApiOperation("查询家族树 列表")
     @PreAuthorize("@ss.hasPermi('system:member:list')")
@@ -97,9 +107,9 @@ public class TbFamilyMemberController extends BaseController {
      */
     @ApiOperation("获取家族成员详细信息")
     @PreAuthorize("@ss.hasPermi('system:member:query')" )
-    @GetMapping(value = "/get/{id}" )
-    public AjaxResult getInfo(@PathVariable("id" ) String id) {
-        AppMemberVo memberVo = userService.getMember("member",id,null);
+    @GetMapping(value = "/get/{familyId}/{id}" )
+    public AjaxResult getInfo(@PathVariable("familyId" ) String familyId,@PathVariable("id" ) String id) {
+        AppMemberVo memberVo = iTbFamilyMemberService.getMemberDetail(Long.parseLong(familyId),Long.parseLong(id));
         return AjaxResult.success(memberVo);
     }
 
@@ -167,6 +177,9 @@ public class TbFamilyMemberController extends BaseController {
         if (member.getMemberId()==null) {
             return AjaxResult.error("姓名不能为空");
         }
+        if (member.getMemberId().equals(member.getParentId())) {
+            return AjaxResult.error("不能设置自己为父辈");
+        }
 
         if(!iTbFamilyMemberService.saveFamilyTree(member)){
             return AjaxResult.error("添加失败");

+ 3 - 0
ruoyi-app/src/main/java/com/ruoyi/app/controller/FamilyMemberController.java

@@ -99,6 +99,9 @@ public class FamilyMemberController extends AppBaseController {
         if (member.getMemberId()==null) {
             return AjaxResult.error("姓名不能为空");
         }
+        if (member.getMemberId().equals(member.getParentId())) {
+            return AjaxResult.error("不能设置自己为父辈");
+        }
         if(!memberService.saveFamilyTree(member)){
             return AjaxResult.error("添加失败");
         }

+ 1 - 0
ruoyi-system/src/main/java/com/ruoyi/app/service/ITbFamilyMemberService.java

@@ -25,6 +25,7 @@ public interface ITbFamilyMemberService extends IService<TbFamilyMember> {
     List<AppMemberVo> selectFamilyMember(AppMemberVo memberVo);
     List<AppMemberVo> selectFamilyTree(AppMemberVo memberVo);
     List<AppMemberVo> selectMemberNotTree(AppMemberVo memberVo);
+    List<AppMemberVo> selectMemberInTree(AppMemberVo memberVo);
     TbMemberMiddle getFamilyTree(Long familyId);
     boolean saveFamilyTree(TbMemberMiddle member);
     AjaxResult delMember(String familyId, Long[] ids);

+ 18 - 0
ruoyi-system/src/main/java/com/ruoyi/app/service/impl/TbFamilyMemberServiceImpl.java

@@ -239,6 +239,24 @@ public class TbFamilyMemberServiceImpl extends ServiceImpl<TbFamilyMemberMapper,
         }
         return baseMapper.selectFamilyMember(lqw);
     }
+    @Override
+    public List<AppMemberVo> selectMemberInTree(AppMemberVo memberVo) {
+        TableInfoHelper.initTableInfo(new MapperBuilderAssistant(new MybatisConfiguration(), ""), AppMemberVo.class);
+
+        LambdaQueryWrapper<AppMemberVo> lqw = new LambdaQueryWrapper<>();
+        if (memberVo.getFamilyId() == null) {
+            return new ArrayList<>();
+        }
+        lqw.eq(AppMemberVo::getFamilyId, memberVo.getFamilyId());
+        lqw.isNotNull(AppMemberVo::getParentId);
+        if (StringUtils.isNotBlank(memberVo.getSearchValue())) {
+            lqw.and(
+                    i -> i.like(AppMemberVo::getName,memberVo.getSearchValue()).or()
+                            .like(AppMemberVo::getMobile,memberVo.getSearchValue())
+            );
+        }
+        return baseMapper.selectFamilyMember(lqw);
+    }
 
     @Override
     public TbMemberMiddle getFamilyTree(Long familyId){