liusuyi
2023-07-26 4b838e2a64b4f441819f43fccd067c076eb422b9
修改用户关联报警类型
已重命名6个文件
已修改4个文件
248 ■■■■■ 文件已修改
ard-work/src/main/java/com/ruoyi/alarm/config/AsyncConfiguration.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/alarm/ArdAlarmTypeConfigMapper.xml 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/alarm/config/controller/ArdAlarmTypeConfigController.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/alarm/config/domain/ArdAlarmTypeConfig.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/alarm/config/mapper/ArdAlarmTypeConfigMapper.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/alarm/config/service/IArdAlarmTypeConfigService.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/alarm/config/service/impl/ArdAlarmTypeConfigServiceImpl.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/config/AsyncConfiguration.java
ÎļþÃû´Ó ard-work/src/main/java/com/ruoyi/config/AsyncConfiguration.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package com.ruoyi.config;
package com.ruoyi.alarm.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
ard-work/src/main/resources/mapper/alarm/ArdAlarmTypeConfigMapper.xml
@@ -5,16 +5,13 @@
<mapper namespace="com.ruoyi.alarm.config.mapper.ArdAlarmTypeConfigMapper">
    
    <resultMap type="ArdAlarmTypeConfig" id="ArdAlarmTypeConfigResult">
        <result property="id"    column="id"    />
        <result property="command"    column="command"    />
        <result property="alarmType"    column="alarm_type"    />
        <result property="createBy"    column="create_by"    />
        <result property="createTime"    column="create_time"    />
        <result property="userId"    column="user_id"    />
    </resultMap>
    <sql id="selectArdAlarmTypeConfigVo">
        select id, command, alarm_type, create_time, user_id from ard_alarm_type_user
        select command, alarm_type, user_id from ard_alarm_type_user
    </sql>
    <select id="selectArdAlarmTypeConfigList" parameterType="ArdAlarmTypeConfig" resultMap="ArdAlarmTypeConfigResult">
@@ -33,19 +30,13 @@
    <insert id="insertArdAlarmTypeConfig" parameterType="ArdAlarmTypeConfig">
        insert into ard_alarm_type_user
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
            <if test="command != null">command,</if>
            <if test="alarmType != null">alarm_type,</if>
            <if test="createBy != null">create_by,</if>
            <if test="createTime != null">create_time,</if>
            <if test="userId != null">user_id,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id},</if>
            <if test="command != null">#{command},</if>
            <if test="alarmType != null">#{alarmType},</if>
            <if test="createBy != null">#{createBy},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="userId != null">#{userId},</if>
         </trim>
    </insert>
@@ -55,8 +46,6 @@
        <trim prefix="SET" suffixOverrides=",">
            <if test="command != null">command = #{command},</if>
            <if test="alarmType != null">alarm_type = #{alarmType},</if>
            <if test="createBy != null">create_by = #{createBy},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="userId != null">user_id = #{userId},</if>
        </trim>
        where id = #{id}
@@ -67,12 +56,18 @@
    </delete>
    <delete id="deleteArdAlarmTypeConfigByIds" parameterType="String">
        delete from ard_alarm_type_user where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        delete from ard_alarm_type_user where user_id in
        <foreach item="userId" collection="array" open="(" separator="," close=")">
            #{userId}
        </foreach>
    </delete>
    <delete id="deleteArdAlarmTypeConfigByCurrentUserId">
    <delete id="deleteArdAlarmTypeConfigByUserId">
        delete from ard_alarm_type_user where user_id=#{userId}
    </delete>
    <insert id="batchAlarmTypeConfig">
        insert into ard_alarm_type_user(user_id,command,alarm_type) values
        <foreach item="item" index="index" collection="list" separator=",">
            (#{item.userId},#{item.command},#{item.alarmType})
        </foreach>
    </insert>
</mapper>
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
@@ -142,7 +142,7 @@
    /**
     * ä¿®æ”¹ç”¨æˆ·
     */
    @ApiOperation("修改用户")
    @PreAuthorize("@ss.hasPermi('system:user:edit')")
    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
    @PutMapping
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
@@ -140,11 +140,20 @@
     */
    private String rongCloudToken;
    private List<String> commands;
    public SysUser() {
    }
    public List<String> getCommands() {
        return commands;
    }
    public void setCommands(List<String> commands) {
        this.commands = commands;
    }
    public String getRongCloudToken() {
        return rongCloudToken;
    }
ruoyi-system/src/main/java/com/ruoyi/alarm/config/controller/ArdAlarmTypeConfigController.java
ÎļþÃû´Ó ard-work/src/main/java/com/ruoyi/alarm/config/controller/ArdAlarmTypeConfigController.java ÐÞ¸Ä
@@ -1,28 +1,22 @@
package com.ruoyi.alarm.config.controller;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
import com.ruoyi.alarm.config.service.IArdAlarmTypeConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
 * æŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”Controller
@@ -64,26 +58,6 @@
        util.exportExcel(response, list, "报警类型用户关联数据");
    }
    /**
     * èŽ·å–æŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”è¯¦ç»†ä¿¡æ¯
     */
    @ApiOperation("获取报警类型用户关联详细信息")
    @PreAuthorize("@ss.hasPermi('alarm:config:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id)
    {
        return success(ardAlarmTypeConfigService.selectArdAlarmTypeConfigById(id));
    }
    /**
     * æ‰¹é‡æ–°å¢žæŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”
     */
    @Log(title = "批量配置报警类型", businessType = BusinessType.INSERT)
    @PostMapping("/batchConfig")
    @ApiOperation("批量配置报警类型")
    public AjaxResult addBatch(@RequestBody Map<String,Object> map)
    {
        return AjaxResult.success(ardAlarmTypeConfigService.insertArdAlarmTypeConfig(map));
    }
    /**
     * æ–°å¢žæŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”
ruoyi-system/src/main/java/com/ruoyi/alarm/config/domain/ArdAlarmTypeConfig.java
ÎļþÃû´Ó ard-work/src/main/java/com/ruoyi/alarm/config/domain/ArdAlarmTypeConfig.java ÐÞ¸Ä
@@ -1,9 +1,9 @@
package com.ruoyi.alarm.config.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
 * æŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”对象 ard_alarm_type_user
@@ -16,35 +16,25 @@
{
    private static final long serialVersionUID = 1L;
    /** è®°å½•ID */
    private String id;
    /** ç”¨æˆ·ID */
    @Excel(name = "用户ID")
    private String userId;
    /** æŠ¥è­¦ä»£ç  */
    private Integer command;
    private String command;
    /** æŠ¥è­¦ç±»åž‹ */
    @Excel(name = "报警类型")
    private String alarmType;
    /** ç”¨æˆ·ID */
    @Excel(name = "用户ID")
    private String userId;
    public void setId(String id)
    {
        this.id = id;
    }
    public String getId()
    {
        return id;
    }
    public void setCommand(Integer command)
    public void setCommand(String command)
    {
        this.command = command;
    }
    public Integer getCommand()
    public String getCommand()
    {
        return command;
    }
@@ -67,15 +57,5 @@
        return userId;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("command", getCommand())
            .append("alarmType", getAlarmType())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("userId", getUserId())
            .toString();
    }
}
ruoyi-system/src/main/java/com/ruoyi/alarm/config/mapper/ArdAlarmTypeConfigMapper.java
ÎļþÃû´Ó ard-work/src/main/java/com/ruoyi/alarm/config/mapper/ArdAlarmTypeConfigMapper.java ÐÞ¸Ä
@@ -1,7 +1,9 @@
package com.ruoyi.alarm.config.mapper;
import java.util.List;
import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
import com.ruoyi.system.domain.SysUserRole;
import java.util.List;
/**
 * æŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”Mapper接口
@@ -64,6 +66,14 @@
     * @param userId å…³è”的用户id
     * @return ç»“æžœ
     */
    public int deleteArdAlarmTypeConfigByCurrentUserId(String userId);
    public int deleteArdAlarmTypeConfigByUserId(String userId);
    /**
     * æ‰¹é‡æ–°å¢žæŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”
     *
     * @param ardAlarmTypeConfigList æŠ¥è­¦ç±»åž‹ç”¨æˆ·åˆ—表
     * @return ç»“æžœ
     */
    public int batchAlarmTypeConfig(List<ArdAlarmTypeConfig> ardAlarmTypeConfigList);
}
ruoyi-system/src/main/java/com/ruoyi/alarm/config/service/IArdAlarmTypeConfigService.java
ÎļþÃû´Ó ard-work/src/main/java/com/ruoyi/alarm/config/service/IArdAlarmTypeConfigService.java ÐÞ¸Ä
@@ -1,9 +1,9 @@
package com.ruoyi.alarm.config.service;
import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
import java.util.List;
import java.util.Map;
import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
/**
@@ -62,12 +62,5 @@
     */
    public int deleteArdAlarmTypeConfigById(String id);
    /**
     * æ‰¹é‡æŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”
     *
     * @param configInfoMap æŠ¥è­¦ç±»åž‹åˆ—表
     * @return ç»“æžœ
     */
    public int insertArdAlarmTypeConfig(Map<String,Object> configInfoMap);
}
ruoyi-system/src/main/java/com/ruoyi/alarm/config/service/impl/ArdAlarmTypeConfigServiceImpl.java
ÎļþÃû´Ó ard-work/src/main/java/com/ruoyi/alarm/config/service/impl/ArdAlarmTypeConfigServiceImpl.java ÐÞ¸Ä
@@ -1,7 +1,6 @@
package com.ruoyi.alarm.config.service.impl;
import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
import com.ruoyi.alarm.config.mapper.ArdAlarmTypeConfigMapper;
import com.ruoyi.alarm.config.service.IArdAlarmTypeConfigService;
@@ -12,6 +11,8 @@
import com.ruoyi.system.mapper.SysDictDataMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -25,10 +26,8 @@
 */
@Service
public class ArdAlarmTypeConfigServiceImpl implements IArdAlarmTypeConfigService {
    @Autowired
    @Resource
    private ArdAlarmTypeConfigMapper ardAlarmTypeConfigMapper;
    @Autowired
    private SysDictDataMapper dictDataMapper;
    /**
     * æŸ¥è¯¢æŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”
     *
@@ -59,8 +58,6 @@
     */
    @Override
    public int insertArdAlarmTypeConfig(ArdAlarmTypeConfig ardAlarmTypeConfig) {
                ardAlarmTypeConfig.setCreateBy(SecurityUtils.getUsername());
                ardAlarmTypeConfig.setCreateTime(DateUtils.getNowDate());
                ardAlarmTypeConfig.setUserId(SecurityUtils.getUserId());
            return ardAlarmTypeConfigMapper.insertArdAlarmTypeConfig(ardAlarmTypeConfig);
    }
@@ -96,47 +93,5 @@
    @Override
    public int deleteArdAlarmTypeConfigById(String id) {
        return ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigById(id);
    }
    /**
     * æ‰¹é‡æŠ¥è­¦ç±»åž‹ç”¨æˆ·å…³è”
     *
     * @param configInfo æŠ¥è­¦ç±»åž‹åˆ—表
     * @return ç»“æžœ
     */
    @Override
    public int insertArdAlarmTypeConfig(Map<String,Object> configInfo) {
        String userId =(String) configInfo.get("userId");
        if(userId==null)
        {
            return 0;
        }
        ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigByCurrentUserId(userId);
        List<Integer> commands=(List<Integer>) configInfo.get("commands");
        if(commands==null)
        {
            return 0;
        }
        if(commands.size()==0)
        {
            return 0;
        }
        int resNum=0;
        for(Integer command :commands)
        {
            ArdAlarmTypeConfig config=new ArdAlarmTypeConfig();
            config.setId(IdUtils.simpleUUID());
            config.setCommand(command);
            List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType("alarm_type");
            SysDictData sysDictData = dictDatas.stream().filter(s -> Objects.equals(s.getDictValue(), command.toString())).findFirst().orElse(null);
            config.setAlarmType(sysDictData.getDictLabel());
            config.setUserId(userId);
            config.setCreateTime(DateUtils.getNowDate());
            int i = ardAlarmTypeConfigMapper.insertArdAlarmTypeConfig(config);
            if(i>0)
            {
                resNum++;
            }
        }
        return resNum;
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -3,13 +3,19 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import javax.validation.Validator;
import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
import com.ruoyi.alarm.config.mapper.ArdAlarmTypeConfigMapper;
import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -67,6 +73,8 @@
    protected Validator validator;
    @Resource
    private RedisCache redisCache;
    @Resource
    private ArdAlarmTypeConfigMapper ardAlarmTypeConfigMapper;
    /**
     * é¡¹ç›®å¯åŠ¨æ—¶ï¼Œåˆå§‹åŒ–å‚æ•°åˆ°ç¼“å­˜
@@ -306,6 +314,8 @@
        insertUserPost(user);
        // æ–°å¢žç”¨æˆ·ä¸Žè§’色管理
        insertUserRole(user);
        // æ–°å¢žç”¨æˆ·ä¸ŽæŠ¥è­¦ç±»åž‹å…³è”
        insertAlarmTypeConfig(user);
        return rows;
    }
@@ -330,6 +340,11 @@
    @Transactional
    public int updateUser(SysUser user) {
        String userId = user.getUserId();
        // åˆ é™¤ç”¨æˆ·ä¸ŽæŠ¥è­¦ç±»åž‹å…³è”
        ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigByUserId(userId);
        // æ–°å¢žç”¨æˆ·ä¸ŽæŠ¥è­¦ç±»åž‹å…³è”
        insertAlarmTypeConfig(user);
        // åˆ é™¤ç”¨æˆ·ä¸Žè§’色关联
        userRoleMapper.deleteUserRoleByUserId(userId);
        // æ–°å¢žç”¨æˆ·ä¸Žè§’色管理
@@ -429,7 +444,14 @@
    public void insertUserRole(SysUser user) {
        this.insertUserRole(user.getUserId(), user.getRoleIds());
    }
    /**
     * æ–°å¢žç”¨æˆ·æŠ¥è­¦ç±»åž‹ä¿¡æ¯
     *
     * @param user ç”¨æˆ·å¯¹è±¡
     */
    public void insertAlarmTypeConfig(SysUser user) {
        this.insertAlarmTypeConfig(user.getUserId(), user.getCommands());
    }
    /**
     * æ–°å¢žç”¨æˆ·å²—位信息
     *
@@ -469,7 +491,27 @@
            userRoleMapper.batchUserRole(list);
        }
    }
    /**
     * æ–°å¢žç”¨æˆ·æŠ¥è­¦ç±»åž‹
     *
     * @param userId  ç”¨æˆ·ID
     * @param commands æŠ¥è­¦ç±»åž‹ç»„
     */
    public void insertAlarmTypeConfig(String userId, List<String> commands) {
        if (StringUtils.isNotEmpty(commands)) {
            // æ–°å¢žç”¨æˆ·ä¸Žè§’色管理
            List<ArdAlarmTypeConfig> list = new ArrayList<ArdAlarmTypeConfig>(commands.size());
            for (String command : commands) {
                ArdAlarmTypeConfig ur = new ArdAlarmTypeConfig();
                ur.setUserId(userId);
                ur.setCommand(command);
                String alarm_type = DictUtils.getDictLabel("alarm_type", command);
                ur.setAlarmType(alarm_type);
                list.add(ur);
            }
            ardAlarmTypeConfigMapper.batchAlarmTypeConfig(list);
        }
    }
    /**
     * é€šè¿‡ç”¨æˆ·ID删除用户
     *
@@ -503,6 +545,8 @@
            checkUserAllowed(new SysUser(userId));
            checkUserDataScope(userId);
        }
        // åˆ é™¤ç”¨æˆ·ä¸ŽæŠ¥è­¦ç±»åž‹å…³è”
        ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigByIds(userIds);
        // åˆ é™¤ç”¨æˆ·ä¸Žè§’色关联
        userRoleMapper.deleteUserRole(userIds);
        // åˆ é™¤ç”¨æˆ·ä¸Žå²—位关联