Kaynağa Gözat

系统管理-参数管理功能开发

zhaoyan 3 yıl önce
ebeveyn
işleme
1049469d22

+ 12 - 0
api-common/src/main/java/api/common/pojo/param/system/ParameterParam.java

@@ -0,0 +1,12 @@
+package api.common.pojo.param.system;
+
+import api.common.pojo.common.PageVO;
+import lombok.Data;
+
+@Data
+public class ParameterParam extends PageVO {
+
+    //账户名
+    private String userName;
+
+}

+ 16 - 0
api-common/src/main/java/api/common/pojo/po/system/ParameterPO.java

@@ -0,0 +1,16 @@
+package api.common.pojo.po.system;
+
+import api.common.pojo.common.CommonPO;
+import lombok.Data;
+
+@Data
+public class ParameterPO extends CommonPO {
+
+    private String id;              // 用户主键(唯一)
+    private String userName;        // 账户名称
+    private String userId;        // 账户id
+    private int numCreateUser;        // 可创建子账户数量
+    private int numCreateScenePackage;           // 最多可创建场景测试包数量
+    private int numScenePerPackage;           // 场景测试包最大场景数量
+
+}

+ 18 - 0
api-common/src/main/java/api/common/pojo/vo/system/ParameterVO.java

@@ -0,0 +1,18 @@
+package api.common.pojo.vo.system;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class ParameterVO {
+
+    private String id;              // 用户主键(唯一)
+    private String userName;        // 账户名称
+    private String userId;        // 账户id
+    private int numCreateUser;        // 可创建子账户数量
+    private int numCreateScenePackage;       // 最多可创建场景测试包数量
+    private int numScenePerPackage;        // 场景测试包最大场景数量
+    private Date modifyTime;        // 创建时间
+
+}

+ 101 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/system/ctrl/ParameterCtrl.java

@@ -0,0 +1,101 @@
+package com.css.simulation.resource.system.ctrl;
+
+import api.common.pojo.common.ResponseBodyVO;
+import api.common.pojo.constants.DictConstants;
+import api.common.pojo.param.system.ParameterParam;
+import api.common.pojo.param.system.UserParam;
+import api.common.pojo.po.system.ParameterPO;
+import api.common.pojo.vo.system.ParameterVO;
+import api.common.pojo.vo.system.UserVO;
+import api.common.util.ObjectUtil;
+import com.css.simulation.resource.system.service.ParameterService;
+import com.github.pagehelper.PageInfo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import java.util.List;
+
+
+@Controller()
+@RequestMapping("/parameter")
+public class ParameterCtrl {
+
+    @Autowired
+    ParameterService parameterService;
+
+
+    /**
+     * 查询参数列表
+     */
+    @RequestMapping("/getParameterList")
+    @ResponseBody
+    public ResponseBodyVO<PageInfo<ParameterVO>> getParameterList(@RequestBody ParameterParam pageParam){
+        ResponseBodyVO<PageInfo<ParameterVO>> response = new ResponseBodyVO<PageInfo<ParameterVO>>(ResponseBodyVO.Response.SUCCESS);
+        response.setInfo(parameterService.getParameterList(pageParam));
+        return response;
+    }
+
+    /**
+     * 新增、修改
+     */
+    @RequestMapping("/saveParameter")
+    @ResponseBody
+    public ResponseBodyVO<ParameterPO> saveParameter(@RequestBody ParameterPO parameterPO) throws Exception {
+        if(ObjectUtil.isNull(parameterPO)){
+            return new ResponseBodyVO(false, 400, "参数必传!",null);
+        }
+        ResponseBodyVO<ParameterPO> response = new ResponseBodyVO<ParameterPO>(ResponseBodyVO.Response.SUCCESS);
+        parameterPO = parameterService.saveParameter(parameterPO);
+        if(ObjectUtil.isNull(parameterPO.getId())){
+            return new ResponseBodyVO(false, 400, "该账户名已存在一条参数配置信息,无法创建!",null);
+        }
+        response.setInfo(parameterPO);
+        return response;
+    }
+
+
+    /**
+     * 查看参数配置详情
+     */
+    @RequestMapping("/getParamInfoById")
+    @ResponseBody
+    public ResponseBodyVO getParamInfoById(@RequestBody ParameterPO parameterPO) {
+        ResponseBodyVO<ParameterVO> response = new ResponseBodyVO<ParameterVO>(ResponseBodyVO.Response.SUCCESS);
+        response.setInfo(parameterService.getParamInfoById(parameterPO));
+        return response;
+    }
+
+    /**
+     * 删除算法
+     * @return
+     */
+    @RequestMapping("deleteById")
+    @ResponseBody
+    public ResponseBodyVO deleteById(@RequestBody ParameterPO parameterPO){
+        parameterPO.setIsDeleted(DictConstants.YES);
+        int i = parameterService.deleteById(parameterPO);
+        if(i>0){
+            return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
+        }else{
+            return new ResponseBodyVO(false, 500, "删除失败!",null);
+        }
+    }
+
+
+    /**
+     * 模糊查询普通账户
+     */
+    @RequestMapping("/getUserInfo")
+    @ResponseBody
+    public ResponseBodyVO<List<UserVO>> getUserInfo(@RequestBody UserParam userParam){
+        userParam.setRoleCode(DictConstants.ROLE_CODE_UESR);
+        ResponseBodyVO<List<UserVO>> response = new ResponseBodyVO<List<UserVO>>(ResponseBodyVO.Response.SUCCESS);
+        response.setInfo(parameterService.getUserInfo(userParam));
+        return response;
+    }
+
+
+}

+ 32 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/system/mapper/ParameterMapper.java

@@ -0,0 +1,32 @@
+package com.css.simulation.resource.system.mapper;
+
+import api.common.pojo.param.system.ParameterParam;
+import api.common.pojo.param.system.UserParam;
+import api.common.pojo.po.system.ParameterPO;
+import api.common.pojo.vo.system.ParameterVO;
+import api.common.pojo.vo.system.UserVO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Mapper
+@Repository
+public interface ParameterMapper {
+
+    List<ParameterVO> getParameterList(ParameterParam pageParam);
+
+    ParameterVO getParamInfoById(@Param("paramId") String paramId);
+
+    void insert(ParameterPO parameterPO);
+
+    void update(ParameterPO parameterPO);
+
+    List<ParameterPO> checkUsername(ParameterPO parameterPO);
+
+    int deleteById(ParameterPO parameterPO);
+
+    List<UserVO> getUserInfo(UserParam userParam);
+
+}

+ 80 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/system/service/ParameterService.java

@@ -0,0 +1,80 @@
+package com.css.simulation.resource.system.service;
+
+import api.common.pojo.constants.DictConstants;
+import api.common.pojo.param.system.ParameterParam;
+import api.common.pojo.param.system.UserParam;
+import api.common.pojo.po.system.ParameterPO;
+import api.common.pojo.vo.system.ParameterVO;
+import api.common.pojo.vo.system.UserVO;
+import api.common.util.EncryptUtil;
+import api.common.util.ObjectUtil;
+import api.common.util.StringUtil;
+import api.common.util.TimeUtil;
+import com.css.simulation.resource.common.oauth.OauthParameter;
+import com.css.simulation.resource.common.utils.AuthUtil;
+import com.css.simulation.resource.common.utils.PageUtil;
+import com.css.simulation.resource.common.utils.PoUtil;
+import com.css.simulation.resource.system.mapper.ParameterMapper;
+import com.github.pagehelper.PageInfo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.security.NoSuchAlgorithmException;
+import java.util.List;
+
+
+@Service
+public class ParameterService {
+
+    @Autowired
+    ParameterMapper parameterMapper;
+
+
+    public PageInfo<ParameterVO> getParameterList(ParameterParam pageParam) {
+        PageUtil.setPageInfo(pageParam);
+        List<ParameterVO> list = parameterMapper.getParameterList(pageParam);
+        return new PageInfo<>(list);
+    }
+
+
+    public ParameterVO getParamInfoById(ParameterPO paramPO) {
+        String paramId = paramPO.getId();
+        ParameterVO parameterVO = parameterMapper.getParamInfoById(paramId);
+        return parameterVO;
+    }
+
+    public ParameterPO saveParameter(ParameterPO paramPO) {
+        //重名校验param
+        List<ParameterPO> list = parameterMapper.checkUsername(paramPO);
+        if(ObjectUtil.isNotNull(list)){
+            paramPO.setId(null);
+            return paramPO;
+        }
+        String id = paramPO.getId();
+        if(ObjectUtil.isNull(id)){//新增
+            PoUtil.initAddPo(paramPO);
+            paramPO.setId(StringUtil.getRandomUUID());
+            parameterMapper.insert(paramPO);
+        }else{ //更新
+            PoUtil.initUpdatePo(paramPO);
+            parameterMapper.update(paramPO);
+        }
+        return paramPO;
+    }
+
+
+    public int deleteById(ParameterPO parameterPO) {
+        parameterPO.setIsDeleted(DictConstants.YES);
+        parameterPO.setModifyUserId(AuthUtil.getCurrentUserId());
+        parameterPO.setModifyTime(TimeUtil.getNowForMysql());
+        int i = parameterMapper.deleteById(parameterPO);
+        return i;
+    }
+
+
+    public List<UserVO> getUserInfo(UserParam userParam) {
+        List<UserVO> list = parameterMapper.getUserInfo(userParam);
+        return list;
+    }
+
+}

+ 114 - 0
simulation-resource-server/src/main/resources/mapper/system/ParameterMapper.xml

@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.css.simulation.resource.system.mapper.ParameterMapper" >
+
+
+    <!--查询参数列表-->
+    <select id="getParameterList" parameterType="api.common.pojo.param.system.ParameterParam" resultType="api.common.pojo.vo.system.ParameterVO">
+        select id, user_name, user_id, num_create_user, num_create_scene_package, num_scene_per_package, modify_time from system_parameter
+        <where>
+            is_deleted = '0'
+        </where>
+        <if test="userName != null and userName != ''">
+            and user_name like CONCAT('%',#{userName,jdbcType=VARCHAR},'%')
+        </if>
+        order by modify_time desc, create_time desc
+    </select>
+
+    <!--    查询参数配置详情-->
+    <select id="getParamInfoById" parameterType="java.lang.String" resultType="api.common.pojo.vo.system.ParameterVO">
+        SELECT
+            id,
+            user_name,
+            user_id,
+            num_create_user,
+            num_create_scene_package,
+            num_scene_per_package,
+            modify_time
+        FROM system_parameter WHERE id = #{paramId,jdbcType=VARCHAR}
+    </select>
+
+    <!--    检查该账户名是否已存在参数配置信息-->
+    <select id="checkUsername" parameterType="api.common.pojo.po.system.ParameterPO" resultType="api.common.pojo.po.system.ParameterPO">
+        select
+        id
+        from system_parameter
+        where is_deleted = '0'
+        and user_name = #{userName,jdbcType=VARCHAR}
+        and user_id = #{userId,jdbcType=VARCHAR}
+        <if test="id != null and id != ''">
+            and id &lt;&gt; #{id,jdbcType=VARCHAR}
+        </if>
+    </select>
+
+    <!--    新增参数配置信息-->
+    <insert id="insert" parameterType="api.common.pojo.po.system.ParameterPO">
+        INSERT INTO system_parameter(
+            id,
+            user_name,
+            user_id,
+            num_create_user,
+            num_create_scene_package,
+            num_scene_per_package,
+            create_time,
+            modify_time,
+            create_user_id,
+            modify_user_id,
+            is_deleted
+        )
+        VALUES(
+            #{id,jdbcType=VARCHAR},
+            #{userName,jdbcType=VARCHAR},
+            #{userId,jdbcType=VARCHAR},
+            #{numCreateUser,jdbcType=INTEGER},
+            #{numCreateScenePackage,jdbcType=INTEGER},
+            #{numScenePerPackage,jdbcType=INTEGER},
+            #{createTime,jdbcType=TIMESTAMP},
+            #{modifyTime,jdbcType=TIMESTAMP},
+            #{createUserId,jdbcType=VARCHAR},
+            #{modifyUserId,jdbcType=VARCHAR},
+            #{isDeleted,jdbcType=VARCHAR}
+        )
+    </insert>
+
+    <!--    修改参数配置信息-->
+    <update id="update" parameterType="api.common.pojo.po.system.ParameterPO">
+        update system_parameter set
+            user_name = #{userName,jdbcType=VARCHAR},
+            user_id = #{userId,jdbcType=VARCHAR},
+            num_create_user = #{numCreateUser,jdbcType=INTEGER},
+            num_create_scene_package = #{numCreateScenePackage,jdbcType=INTEGER},
+            num_scene_per_package = #{numScenePerPackage,jdbcType=INTEGER},
+
+            modify_time = #{modifyTime,jdbcType=TIMESTAMP},
+            modify_user_id = #{modifyUserId,jdbcType=VARCHAR}
+        where id = #{id,jdbcType=VARCHAR}
+    </update>
+
+
+    <update id="deleteById" parameterType="api.common.pojo.po.system.ParameterPO">
+        update system_parameter set
+          modify_time = #{modifyTime,jdbcType=TIMESTAMP},
+          modify_user_id = #{modifyUserId,jdbcType=VARCHAR},
+          is_deleted = #{isDeleted,jdbcType=VARCHAR}
+        where id = #{id,jdbcType=VARCHAR}
+    </update>
+
+
+    <!--查询普通账户-->
+    <select id="getUserInfo" parameterType="api.common.pojo.param.system.UserParam" resultType="api.common.pojo.vo.system.UserVO">
+        select id, username from system_user
+        <where>
+            is_deleted = '0'
+        </where>
+        <if test="username != null and username != ''">
+            and username like CONCAT('%',#{username,jdbcType=VARCHAR},'%')
+        </if>
+        <if test="roleCode != null and roleCode != ''">
+            and role_code = #{roleCode,jdbcType=VARCHAR}
+        </if>
+        order by modify_time desc, create_time desc
+    </select>
+
+
+</mapper>