Sfoglia il codice sorgente

2021/7/29 zhangyan
1.安全信息分类树控件数据绑定

QuietShadow 3 anni fa
parent
commit
5cb51951a2

+ 1 - 1
src/main/java/com/steerinfo/ems/trmproduct/mapper/TRmProductMapper.xml

@@ -369,7 +369,7 @@
 
     <!--查询最大值-->
     <select id="getMaxId" resultType="string">
-    select MAX(to_number(SUBSTR(ID,3))) from T_RM_PRODUCT
+    select NVL(MAX(to_number(SUBSTR(ID,3))),'0') from T_RM_PRODUCT
   </select>
 
     <!--查询最大序列-->

+ 69 - 4
src/main/java/com/steerinfo/ftp/securitytype/controller/SecurityTypeController.java

@@ -1,5 +1,7 @@
 package com.steerinfo.ftp.securitytype.controller;
 
+import com.steerinfo.auth.utils.JwtUtil;
+import com.steerinfo.ems.Utils.TreeUtils;
 import com.steerinfo.framework.controller.BaseRESTfulController;
 import com.steerinfo.framework.controller.RESTfulResult;
 import com.steerinfo.framework.service.pagehelper.PageList;
@@ -9,16 +11,13 @@ import com.steerinfo.ftp.securitytype.service.ISecurityTypeService;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.Arrays;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
-import java.util.ArrayList;
-import java.math.BigDecimal;
 
 /**
  * SecurityType RESTful接口:
@@ -69,6 +68,21 @@ public class SecurityTypeController extends BaseRESTfulController {
     //@RequiresPermissions("securitytype:create")
     @PostMapping(value = "/")
     public RESTfulResult add(@ModelAttribute SecurityType model){
+
+        if(model.getSecurityName() == null || "".equals(model.getSecurityName())){
+            return failed(null, "名称不能为空");
+        }
+        else if (model.getSeqno()==0||model.getSeqno()==null){
+            Long seqno = new Long(securityTypeService.getMaxSeqNo()+1);
+            model.setSeqno(seqno);
+        }
+        String url = "";
+        if(model.getSecurityParentid() != null && !"".equals(model.getSecurityParentid())){
+            url=securityTypeService.getURL(model.getParentId());
+        }
+        model.setCreateMan(JwtUtil.getUseridByToken());
+        model.setCreateTime(new Date());
+        model.setSecurityUploadUrl(url+"/"+model.getSecurityName());
         SecurityType securityType = securityTypeService.add(model);
         return success(securityType);
     }
@@ -94,6 +108,28 @@ public class SecurityTypeController extends BaseRESTfulController {
         SecurityType securityType = securityTypeService.modify(model);
         return success(securityType);
     }
+    @PutMapping(value = "/batchupdate", produces  = "application/json;charset=UTF-8")
+    public RESTfulResult batchupdate(@RequestBody SecurityType[] models) {
+        String userId = JwtUtil.getUseridByToken();
+        for (int i = 0; i < models.length; i++) {
+            SecurityType model = models[i];
+            if (model.getId() == null || model.getId().equals("")) {
+                return failed(null, "id为空");
+            }
+            if (model.getSecurityName() == null || model.getSecurityName().equals("")) {
+                return failed(null, "名称为空");
+            }
+            String url = "";
+            if(model.getSecurityParentid() != null && !"".equals(model.getSecurityParentid())){
+                url=securityTypeService.getURL(model.getParentId());
+            }
+            model.setSecurityUploadUrl(url+"/"+model.getSecurityName());
+            model.setUpdateMan(userId);
+            model.setUpdateTime(new Date());
+            securityTypeService.modify(model);
+        }
+        return success();
+    }
 
     @ApiOperation(value="删除", notes="根据url的id来指定删除对象")
     @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String")
@@ -107,4 +143,33 @@ public class SecurityTypeController extends BaseRESTfulController {
     	}
       return success();
     }
+
+    @ApiOperation(value="获取上层节点", notes="查询上层节点名字和id")
+    @GetMapping(value = "/getparent/", produces  = "application/json;charset=UTF-8")
+    public RESTfulResult getParent(){
+        List<SecurityType> tRmWorkproc = securityTypeService.getParent();
+        return success(tRmWorkproc);
+    }
+
+    @ApiOperation(value="获取树状数据", notes="获取TRmWorkproc的树形数据")
+    @GetMapping(value = "/gettree/")
+    public RESTfulResult getTree(@RequestParam HashMap parameters){
+        TreeUtils treeUtils = new TreeUtils();
+        List<SecurityType> list = securityTypeService.getTree(parameters);
+        return success(treeUtils.getTreeData(list));
+    }
+
+    @ApiOperation(value = "查询下拉框的值",notes = "根据 namd 和 id 来显示,可传参数ISSETTLE(列入结算),ISREAL(列入实绩),ISPLAN(列入计划),ISBALANCE(列入平衡表),HASPRODUCT(是否产出)")
+    @GetMapping("/getIdAndName")
+    public RESTfulResult getIdAndName(@RequestParam HashMap<String, Object> parmas){
+        if(parmas.get("id") != null && !parmas.get("id").toString().isEmpty()){
+            String id = parmas.get("id").toString();
+            if(!id.startsWith("'")){
+                id = "'" + id.replaceAll(",", "','").replaceAll(",", "','") + "'";
+            }
+            parmas.put("id", id);
+        }
+        List<SecurityType> idAndName = securityTypeService.getIdAndName(parmas);
+        return  success(idAndName);
+    }
 }

+ 12 - 1
src/main/java/com/steerinfo/ftp/securitytype/mapper/SecurityTypeMapper.java

@@ -2,9 +2,20 @@ package com.steerinfo.ftp.securitytype.mapper;
 
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.ftp.securitytype.model.SecurityType;
-import java.math.*;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+import java.util.Map;
+
 @Mapper
 public interface SecurityTypeMapper extends IBaseMapper<SecurityType, String> {
+    List<SecurityType> getTree(Map<String, Object> parameters);
+
+    List<SecurityType> getParent();
+
+    List<SecurityType> getIdAndName(Map<String, Object> parameters);
+
+    Integer getMaxSeqNo();
+
+    String getURL(String parentId);
 }

+ 31 - 5
src/main/java/com/steerinfo/ftp/securitytype/mapper/SecurityTypeMapper.xml

@@ -307,23 +307,24 @@
   <select id="selectLikeByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
     <include refid="select"/>
     <include refid="whereLike"/>
+    ORDER BY SEQNO
   </select>
   <insert id="batchInsert" parameterType="java.util.List">
-    insert into SECURITY_TYPE 
+    insert into SECURITY_TYPE 
       (ID, 
       SECURITY_TYPE, SECURITY_NAME, SECURITY_INFO, 
       SEQNO, SECURITY_PARENTID, SECURITY_NODE, 
       SECURITY_UPLOAD_URL, CREATE_MAN, 
       CREATE_TIME, UPDATE_MAN, UPDATE_TIME
       )
-    ( <foreach collection="list" item="item" separator="union all"> 
-   select  
+    ( <foreach collection="list" item="item" separator="union all"> 
+   select  
       #{item.id,jdbcType=VARCHAR}, 
       #{item.securityType,jdbcType=VARCHAR}, #{item.securityName,jdbcType=VARCHAR}, #{item.securityInfo,jdbcType=VARCHAR}, 
       #{item.seqno,jdbcType=DECIMAL}, #{item.securityParentid,jdbcType=VARCHAR}, #{item.securityNode,jdbcType=VARCHAR}, 
       #{item.securityUploadUrl,jdbcType=VARCHAR}, #{item.createMan,jdbcType=VARCHAR}, 
       #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateMan,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=VARCHAR}
-       from dual  
+       from dual  
    </foreach> )
   </insert>
   <update id="batchUpdate" parameterType="java.util.List">
@@ -391,5 +392,30 @@
   </delete>
   <!-- 友情提示!!!-->
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
-  
+  <select id="getTree" resultMap="BaseResultMap">
+    select ID, SECURITY_NAME, SECURITY_PARENTID, SECURITY_NODE from SECURITY_TYPE
+    WHERE 1=1
+    order by SEQNO
+  </select>
+
+  <select id="getParent" resultMap="BaseResultMap">
+    select ID, SECURITY_NAME, SECURITY_NODE from SECURITY_TYPE
+    where ID in (select distinct PARENTID from T_RM_WORKPROC)
+    order by SEQNO
+  </select>
+
+  <!--查询下拉框的值-->
+  <select id="getIdAndName" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    SELECT ID, SECURITY_NAME, SECURITY_NODE FROM SECURITY_TYPE
+    where 1=1
+    ORDER BY SECURITY_NAME
+  </select>
+
+  <select id="getMaxSeqNo" resultType="java.lang.Integer">
+    SELECT nvl(MAX(SEQNO),'0') FROM SECURITY_TYPE
+  </select>
+  <!--组装路径-->
+  <select id="getURL" resultType="java.lang.String" parameterType="java.lang.String">
+    SELECT SECURITY_UPLOAD_URL FROM SECURITY_TYPE where ID=#{parentId}
+  </select>
 </mapper>

+ 37 - 8
src/main/java/com/steerinfo/ftp/securitytype/model/SecurityType.java

@@ -1,12 +1,15 @@
 package com.steerinfo.ftp.securitytype.model;
 
+import com.steerinfo.ems.Utils.TreePO;
 import com.steerinfo.framework.model.IBasePO;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+
 import java.util.Date;
+import java.util.List;
 
 @ApiModel(value="安全信息类别表")
-public class SecurityType implements IBasePO<String> {
+public class SecurityType implements IBasePO<String>, TreePO<String, String, SecurityType> {
     /**
      * 主键(ID,VARCHAR,200)
      */
@@ -77,14 +80,44 @@ public class SecurityType implements IBasePO<String> {
      * 修改时间(UPDATE_TIME,VARCHAR,100)
      */
     @ApiModelProperty(value="修改时间",required=false)
-    private String updateTime;
+    private Date updateTime;
 
     private static final long serialVersionUID = 1L;
 
+    private List<SecurityType> Children;
+
+    @Override
+    public List<SecurityType> getChildren() {
+        return Children;
+    }
+
+    @Override
+    public void setChildren(List<SecurityType> children) {
+        this.Children = children;
+    }
+
+    @Override
+    public String getCode(){return id;}
+
+    @Override
+    public void  setCode(String id){this.id = id == null ? null : id.trim();}
+
+    @Override
+    public String getParentId() {
+        return securityParentid;
+    }
+
+    @Override
+    public void setParentId(String securityParentid) {
+        this.securityParentid = securityParentid == null ? null : securityParentid.trim();
+    }
+
+    @Override
     public String getId() {
         return id;
     }
 
+    @Override
     public void setId(String id) {
         this.id = id == null ? null : id.trim();
     }
@@ -169,13 +202,9 @@ public class SecurityType implements IBasePO<String> {
         this.updateMan = updateMan == null ? null : updateMan.trim();
     }
 
-    public String getUpdateTime() {
-        return updateTime;
-    }
+    public Date getUpdateTime() { return updateTime; }
 
-    public void setUpdateTime(String updateTime) {
-        this.updateTime = updateTime == null ? null : updateTime.trim();
-    }
+    public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; }
 
     @Override
     public String toString() {

+ 11 - 2
src/main/java/com/steerinfo/ftp/securitytype/service/ISecurityTypeService.java

@@ -2,8 +2,9 @@ package com.steerinfo.ftp.securitytype.service;
 
 import com.steerinfo.framework.service.IBaseService;
 import com.steerinfo.ftp.securitytype.model.SecurityType;
-import java.util.Date;
-import java.math.BigDecimal;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * SecurityType服务接口:
@@ -19,5 +20,13 @@ import java.math.BigDecimal;
  * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  */
 public interface ISecurityTypeService extends IBaseService<SecurityType, String>{
+    List<SecurityType> getTree(Map<String, Object> parameters);
+
+    List<SecurityType> getParent();
+
+    List<SecurityType> getIdAndName(Map<String, Object> parameters);
+
+    Integer getMaxSeqNo();
 
+    String getURL(String parentId);
 }

+ 31 - 3
src/main/java/com/steerinfo/ftp/securitytype/service/impl/SecurityTypeServiceImpl.java

@@ -2,13 +2,14 @@ package com.steerinfo.ftp.securitytype.service.impl;
 
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
-import com.steerinfo.ftp.securitytype.model.SecurityType;
 import com.steerinfo.ftp.securitytype.mapper.SecurityTypeMapper;
+import com.steerinfo.ftp.securitytype.model.SecurityType;
 import com.steerinfo.ftp.securitytype.service.ISecurityTypeService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import java.util.Date;
-import java.math.BigDecimal;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * SecurityType服务实现:
@@ -33,4 +34,31 @@ public class SecurityTypeServiceImpl extends BaseServiceImpl<SecurityType, Strin
     protected IBaseMapper<SecurityType, String> getMapper() {
         return securityTypeMapper;
     }
+
+    @Override
+    public List<SecurityType> getTree(Map<String, Object> parameters){
+        List<SecurityType> rows = securityTypeMapper.getTree(parameters);
+        return rows;
+    }
+
+    @Override
+    public List<SecurityType> getParent(){
+        List<SecurityType> rows = securityTypeMapper.getParent();
+        return rows;
+    }
+
+    @Override
+    public List<SecurityType> getIdAndName(Map<String, Object> parameters) {
+        return securityTypeMapper.getIdAndName(parameters);
+    }
+
+    @Override
+    public Integer getMaxSeqNo() {
+        return securityTypeMapper.getMaxSeqNo();
+    }
+
+    @Override
+    public String getURL(String parentId) {
+        return securityTypeMapper.getURL(parentId);
+    }
 }