Bladeren bron

修改家族树

Alex 4 jaren geleden
bovenliggende
commit
4de790844c

+ 37 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbFamilyMemberController.java

@@ -6,6 +6,7 @@ import java.util.List;
 import java.util.Arrays;
 
 import com.ruoyi.app.domain.TbAppUser;
+import com.ruoyi.app.domain.TbMemberMiddle;
 import com.ruoyi.app.domain.vo.AppMemberVo;
 import com.ruoyi.app.service.ITbAppUserService;
 import com.ruoyi.app.service.ITbMemberMiddleService;
@@ -154,4 +155,40 @@ public class TbFamilyMemberController extends BaseController {
         }
         return iTbFamilyMemberService.delMember(familyId,ids);
     }
+
+
+    @ApiOperation("添加/修改成员-家族树")
+    @PreAuthorize("@ss.hasPermi('system:member:add')" )
+    @PostMapping("/saveToTree")
+    public AjaxResult saveToTree(@RequestBody TbMemberMiddle member){
+        if (member == null) {
+            return AjaxResult.error("数据为空");
+        }
+        if (member.getFamilyId()==null) {
+            return AjaxResult.error("家族id不能为空");
+        }
+        if (member.getParentId()==null) {
+            return AjaxResult.error("父辈不能为空");
+        }
+        if (member.getMemberId()==null) {
+            return AjaxResult.error("姓名不能为空");
+        }
+
+        if(!iTbFamilyMemberService.saveFamilyTree(member)){
+            return AjaxResult.error("添加失败");
+        }
+
+        return AjaxResult.success("添加成功");
+    }
+
+
+    @ApiOperation(value = "逻辑删除家族树的成员", notes = "逻辑删除家族树的成员(去掉parentId),相当于这一支人将从家族树中删除")
+    @PreAuthorize("@ss.hasPermi('system:member:remove')" )
+    @DeleteMapping("/delToTree/{familyId}/{memberId}")
+    public AjaxResult delToTree(@PathVariable Long memberId, @PathVariable Long familyId) {
+        if (memberId == null || familyId ==null) {
+            return AjaxResult.error("参数不能为空");
+        }
+        return iTbFamilyMemberService.delToTree(memberId,familyId);
+    }
 }

+ 6 - 22
ruoyi-app/src/main/java/com/ruoyi/app/controller/FamilyMemberController.java

@@ -92,8 +92,8 @@ public class FamilyMemberController extends AppBaseController {
         return null;
     }
 
-    @ApiOperation("添加成员-家族树")
-    @PostMapping("/addToTree")
+    @ApiOperation("添加/修改成员-家族树")
+    @PostMapping("/saveToTree")
     public AjaxResult addToTree(@RequestBody TbMemberMiddle member){
         if (member == null) {
             return AjaxResult.error("数据为空");
@@ -107,7 +107,7 @@ public class FamilyMemberController extends AppBaseController {
         if (member.getMemberId()==null) {
             return AjaxResult.error("姓名不能为空");
         }
-        if(!memberService.addFamilyTree(member)){
+        if(!memberService.saveFamilyTree(member)){
             return AjaxResult.error("添加失败");
         }
 
@@ -115,28 +115,12 @@ public class FamilyMemberController extends AppBaseController {
     }
 
     @ApiOperation(value = "逻辑删除家族树的成员", notes = "逻辑删除家族树的成员(去掉parentId),相当于这一支人将从家族树中删除")
-    @PostMapping("/delToTree")
-    public AjaxResult delToTree(Long memberId, Long familyId) {
+    @DeleteMapping("/delToTree/{familyId}/{memberId}")
+    public AjaxResult delToTree(@PathVariable Long memberId, @PathVariable Long familyId) {
         if (memberId == null || familyId ==null) {
             return AjaxResult.error("参数不能为空");
         }
-        TbMemberMiddle middle = middleService.getOne(new LambdaQueryWrapper<TbMemberMiddle>()
-                .eq(TbMemberMiddle::getFamilyId,familyId)
-                .eq(TbMemberMiddle::getMemberId,memberId)
-                .last("limit 1")
-        );
-        if (middle == null) {
-            return AjaxResult.error("删除失败");
-        }
-        if (middle.getParentId() == null) {
-            return AjaxResult.error("该成员没有在家族树中");
-        }
-        // 设置parentId为空
-        middle.setParentId(null);
-        if(!middleService.updateById(middle)){
-            return AjaxResult.error("删除失败");
-        }
-        return AjaxResult.success("删除成功");
+        return memberService.delToTree(memberId,familyId);
     }
 
     @ApiOperation("编辑成员")

+ 3 - 4
ruoyi-system/src/main/java/com/ruoyi/app/domain/TbMemberMiddle.java

@@ -1,6 +1,6 @@
 package com.ruoyi.app.domain;
 
-import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.*;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import com.fasterxml.jackson.annotation.JsonFormat;
@@ -10,9 +10,7 @@ import lombok.NoArgsConstructor;
 import lombok.ToString;
 import lombok.experimental.Accessors;
 import com.ruoyi.common.annotation.Excel;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.annotation.IdType;
+
 import java.io.Serializable;
 import java.util.Date;
 import java.math.BigDecimal;
@@ -61,6 +59,7 @@ public class TbMemberMiddle implements Serializable {
     /** 父成员id */
     @ApiModelProperty(value="父成员id(第一辈为0)")
     @Excel(name = "父成员id")
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long parentId;
 
     /** 申请状态 1申请 2同意 3拒绝 */

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

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

+ 24 - 1
ruoyi-system/src/main/java/com/ruoyi/app/service/impl/TbFamilyMemberServiceImpl.java

@@ -92,7 +92,7 @@ public class TbFamilyMemberServiceImpl extends ServiceImpl<TbFamilyMemberMapper,
      * @return
      */
     @Override
-    public boolean addFamilyTree(TbMemberMiddle member){
+    public boolean saveFamilyTree(TbMemberMiddle member){
         TbMemberMiddle middle = memberMiddleService.getOne(new LambdaQueryWrapper<TbMemberMiddle>()
                 .eq(TbMemberMiddle::getFamilyId,member.getFamilyId())
                 .eq(TbMemberMiddle::getMemberId,member.getMemberId())
@@ -242,4 +242,27 @@ public class TbFamilyMemberServiceImpl extends ServiceImpl<TbFamilyMemberMapper,
         return middle;
     }
 
+    @Override
+    public AjaxResult delToTree(Long memberId, Long familyId) {
+        if (memberId == null || familyId ==null) {
+            return AjaxResult.error("参数不能为空");
+        }
+        TbMemberMiddle middle = memberMiddleService.getOne(new LambdaQueryWrapper<TbMemberMiddle>()
+                .eq(TbMemberMiddle::getFamilyId,familyId)
+                .eq(TbMemberMiddle::getMemberId,memberId)
+                .last("limit 1")
+        );
+        if (middle == null) {
+            return AjaxResult.error("删除失败");
+        }
+        if (middle.getParentId() == null) {
+            return AjaxResult.error("该成员没有在家族树中");
+        }
+        // 设置parentId为空
+        middle.setParentId(null);
+        if(!memberMiddleService.updateById(middle)){
+            return AjaxResult.error("删除失败");
+        }
+        return AjaxResult.success("删除成功");
+    }
 }