Browse Source

feature(主客体属性功能开发): 主客体属性功能开发

主客体属性功能开发
mazq 4 years ago
parent
commit
67a19ee779

+ 75 - 0
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/attr/controller/AttrController.java

@@ -0,0 +1,75 @@
+package com.dragoninfo.dcuc.authweb.restcontroller.attr.controller;
+
+import com.dragoninfo.dcuc.auth.auth.dto.attr.AttrAcceptDTO;
+import com.dragoninfo.dcuc.auth.auth.facade.attr.IAttrFacade;
+import com.dragoninfo.dcuc.authweb.restcontroller.attr.vo.AttrAcceptVo;
+import com.dragoninfo.dcuc.authweb.util.VersionUtils;
+import com.dragoninfo.duceap.core.response.Result;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 主客体属性管理controller
+ * @author mazq
+ * @date 2021/5/20
+ */
+@Slf4j
+@Api(tags = {"主客体授权-属性管理接口"})
+@RestController
+@RequestMapping(value = "/attrsvr/"+ VersionUtils.VERSION_UID)
+public class AttrController {
+
+
+    @Autowired
+    private IAttrFacade attrFacade;
+
+    @ApiOperation(value = "添加主客体属性")
+    @ApiImplicitParam(name = "AttrAcceptVo", value = "主体属性新增Vo")
+    @PostMapping(value = "attrAdds")
+    public Result attrAdds(@RequestBody AttrAcceptVo vo){
+        AttrAcceptDTO dto = new AttrAcceptDTO();
+        BeanUtils.copyProperties(vo,dto);
+        Boolean b = attrFacade.attrSave(dto);
+        if (b) {
+            return Result.success();
+        } else {
+            return Result.fail();
+        }
+    }
+
+    @ApiOperation(value = "根据父级id,删除主客体属性")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "parentId", value = "parentId属性父类id"),
+            @ApiImplicitParam(name = "attrType", value = "属性类别  SUB:主体属性 OBJ:客体属性")
+    })
+    @PostMapping(value = "deleteByParentId")
+    public Result deleteByParentId(@RequestParam("parentId") String parentId, @RequestParam("attrType") String attrType) {
+        Boolean b = attrFacade.deleteByParentId(parentId,attrType);
+        if (b) {
+            return Result.success();
+        } else {
+            return Result.fail();
+        }
+    }
+
+    @ApiOperation(value = "根据属性所属类别获取属性列表,返回树结构")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "attrBelongType", value = "parentId属性父类id"),
+            @ApiImplicitParam(name = "attrType", value = "属性类别  SUB:主体属性 OBJ:客体属性")
+    })
+    @PostMapping(value = "getAttrTreeList")
+    public Result getAttrTreeList(@RequestParam("attrBelongType") String attrBelongType, @RequestParam("attrType") String attrType) {
+         List<AttrAcceptDTO> list = attrFacade.getAttrTreeList(attrBelongType,attrType);
+         return Result.success(list);
+    }
+
+
+}

+ 43 - 0
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/attr/vo/AttrAcceptVo.java

@@ -0,0 +1,43 @@
+package com.dragoninfo.dcuc.authweb.restcontroller.attr.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author mazq
+ * @date 2021/5/20
+ */
+@Data
+@ApiModel(value = "主客体属性新增Vo")
+public class AttrAcceptVo {
+
+    @ApiModelProperty(value = "id 主键id")
+    private String id;
+
+    @ApiModelProperty(value = "父级id")
+    private String pid;
+
+    @ApiModelProperty(value = "属性类别  SUB:主体属性 OBJ:客体属性")
+    private String attrType;
+
+    @ApiModelProperty(value = "属性所属的主客体类别  USER:人员 ORG:机构 APP:应用")
+    private String attrBelongType;
+
+    @ApiModelProperty(value = "属性名称")
+    private String name;
+
+    @ApiModelProperty(value = "属性值")
+    private String code;
+
+    @ApiModelProperty(value = "说明")
+    private String mark;
+
+    @ApiModelProperty(value = "是否删除")
+    private String deleted;
+
+    @ApiModelProperty(value = "子类集合")
+    private List<AttrAcceptVo> child;
+}

+ 1 - 1
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/auth/AppFunInfoController.java

@@ -173,7 +173,7 @@ public class AppFunInfoController {
 
     @ApiOperation(value = "功能资源删除")
     @ApiImplicitParam(name = "功能资源删除", value = "功能资源删除")
-    @DeleteMapping(value = "/id")
+    @DeleteMapping(value = "/{id}")
     public Result deleteAppFunInfo(@PathVariable("id") String id) {
         ResponseStatus responseStatus = iAppFunInfoFacade.deleteById(id);
         if (!responseStatus.getStatusCode().equals("200")){