‘liusuyi’
2023-08-30 2058f9a0686d1b2d5543d369fb768c9bd40e0e63
增加电子围栏关联用户
已添加1个文件
已修改5个文件
140 ■■■■■ 文件已修改
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/domain/ArdWall.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/domain/ArdWallUser.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/mapper/ArdWallMapper.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/service/impl/ArdWallServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/dispatch/service/impl/ArdDispatchPoliceServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/alarmpoints/ArdWallMapper.xml 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/domain/ArdWall.java
@@ -1,9 +1,12 @@
package com.ruoyi.alarmpoints.elecwall.domain;
import com.ruoyi.common.core.domain.entity.SysUser;
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 java.util.List;
/**
 * ç”µå­å›´æ ç®¡ç†å¯¹è±¡ ard_wall
@@ -41,6 +44,17 @@
    /** æ‰€å±žç”¨æˆ· */
    @Excel(name = "所属用户")
    private String userId;
    /** å…³è”用户列表 */
    @Excel(name = "关联用户列表")
    List<SysUser> sysUserList;
    public List<SysUser> getSysUserList() {
        return sysUserList;
    }
    public void setSysUserList(List<SysUser> sysUserList) {
        this.sysUserList = sysUserList;
    }
    public void setId(String id) 
    {
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/domain/ArdWallUser.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
package com.ruoyi.alarmpoints.elecwall.domain;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
/**
 * æ´¾è­¦å…³è”用户对象 ard_dispatch_police_user
 *
 * @author ard
 * @date 2023-08-21
 */
@Data
public class ArdWallUser
{
    private static final long serialVersionUID = 1L;
    /** å›´æ ID */
    @Excel(name = "围栏ID")
    private String wallId;
    /** å…³è”用户ID */
    @Excel(name = "关联用户ID")
    private String userId;
}
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/mapper/ArdWallMapper.java
@@ -2,6 +2,8 @@
import java.util.List;
import com.ruoyi.alarmpoints.elecwall.domain.ArdWall;
import com.ruoyi.alarmpoints.elecwall.domain.ArdWallUser;
import com.ruoyi.dispatch.domain.ArdDispatchPoliceUser;
/**
 * ç”µå­å›´æ ç®¡ç†Mapper接口
@@ -58,4 +60,29 @@
     * @return ç»“æžœ
     */
    public int deleteArdWallByIds(String[] ids);
    /**
     * æ‰¹é‡æ–°å¢žå›´æ å…³è”用户
     *
     * @param ardWallUserList å›´æ å…³è”用户列表
     * @return ç»“æžœ
     */
    public int batchArdWallUser(List<ArdWallUser> ardWallUserList);
    /**
     * é€šè¿‡å›´æ ç®¡ç†ä¸»é”®åˆ é™¤æ´¾è­¦å…³è”用户信息
     *
     * @param id å›´æ ç®¡ç†ID
     * @return ç»“æžœ
     */
    public int deleteArdWallUserByWallId(String id);
    /**
     * æ‰¹é‡åˆ é™¤å›´æ å…³è”用户
     *
     * @param ids éœ€è¦åˆ é™¤çš„æ•°æ®ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteArdWallUserByWallIds(String[] ids);
}
ard-work/src/main/java/com/ruoyi/alarmpoints/elecwall/service/impl/ArdWallServiceImpl.java
@@ -1,9 +1,16 @@
package com.ruoyi.alarmpoints.elecwall.service.impl;
import java.util.ArrayList;
import java.util.List;
import com.ruoyi.alarmpoints.elecwall.domain.ArdWallUser;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.dispatch.domain.ArdDispatchPolice;
import com.ruoyi.dispatch.domain.ArdDispatchPoliceUser;
import org.springframework.stereotype.Service;
import com.ruoyi.alarmpoints.elecwall.mapper.ArdWallMapper;
import com.ruoyi.alarmpoints.elecwall.domain.ArdWall;
@@ -55,7 +62,9 @@
        ardWall.setId(IdUtils.simpleUUID());
                ardWall.setCreateBy(SecurityUtils.getUsername());
                ardWall.setCreateTime(DateUtils.getNowDate());
            return ardWallMapper.insertArdWall(ardWall);
        int i = ardWallMapper.insertArdWall(ardWall);
        insertArdWallUser(ardWall);
        return i;
    }
    /**
@@ -68,6 +77,8 @@
    public int updateArdWall(ArdWall ardWall) {
                ardWall.setUpdateBy(SecurityUtils.getUsername());
                ardWall.setUpdateTime(DateUtils.getNowDate());
        ardWallMapper.deleteArdWallUserByWallId(ardWall.getId());
        insertArdWallUser(ardWall);
        return ardWallMapper.updateArdWall(ardWall);
    }
@@ -79,6 +90,7 @@
     */
    @Override
    public int deleteArdWallByIds(String[] ids) {
        ardWallMapper.deleteArdWallUserByWallIds(ids);
        return ardWallMapper.deleteArdWallByIds(ids);
    }
@@ -90,6 +102,29 @@
     */
    @Override
    public int deleteArdWallById(String id) {
        ardWallMapper.deleteArdWallUserByWallId(id);
        return ardWallMapper.deleteArdWallById(id);
    }
    /**
     * æ–°å¢žç”µå­å›´æ å…³è”用户信息
     *
     * @param ardWall ç”µå­å›´æ ç®¡ç†å¯¹è±¡
     */
    public void insertArdWallUser(ArdWall ardWall) {
        List<SysUser> sysUserList = ardWall.getSysUserList();
        String id = ardWall.getId();
        if (StringUtils.isNotNull(sysUserList)) {
            List<ArdWallUser> list = new ArrayList<ArdWallUser>();
            for (SysUser user : sysUserList) {
                ArdWallUser ardWallUser = new ArdWallUser();
                ardWallUser.setWallId(id);
                ardWallUser.setUserId(user.getUserId());
                list.add(ardWallUser);
            }
            if (list.size() > 0) {
                ardWallMapper.batchArdWallUser(list);
            }
        }
    }
}
ard-work/src/main/java/com/ruoyi/dispatch/service/impl/ArdDispatchPoliceServiceImpl.java
@@ -83,8 +83,7 @@
    public int updateArdDispatchPolice(ArdDispatchPolice ardDispatchPolice) {
        ardDispatchPolice.setUpdateBy(SecurityUtils.getUsername());
        ardDispatchPolice.setUpdateTime(DateUtils.getNowDate());
        ardDispatchPoliceMapper.deleteArdDispatchPoliceUserByDispatchId(ardDispatchPolice.getId())
        ;
        ardDispatchPoliceMapper.deleteArdDispatchPoliceUserByDispatchId(ardDispatchPolice.getId());
        insertArdDispatchPoliceUser(ardDispatchPolice);
        return ardDispatchPoliceMapper.updateArdDispatchPolice(ardDispatchPolice);
    }
@@ -115,11 +114,6 @@
        return ardDispatchPoliceMapper.deleteArdDispatchPoliceById(id);
    }
    /**
     * æ–°å¢žæ´¾è­¦å…³è”用户信息
     *
     * @param ardDispatchPolice æ´¾è­¦ç®¡ç†å¯¹è±¡
     */
    /**
     * æ–°å¢žæ´¾è­¦å…³è”用户信息
     *
ard-work/src/main/resources/mapper/alarmpoints/ArdWallMapper.xml
@@ -16,6 +16,19 @@
        <result property="createTime"    column="create_time"    />
        <result property="updateBy"    column="update_by"    />
        <result property="updateTime"    column="update_time"    />
        <!-- å­æŸ¥è¯¢ï¼Œå…³è” ard_dispatch_police_user è¡¨ -->
        <collection property="sysUserList" ofType="java.util.List" select="getSysUserListByMainTableId" column="id"/>
    </resultMap>
    <select id="getSysUserListByMainTableId" resultType="SysUser">
        SELECT u.*
        FROM ard_wall_user b
        left join sys_user u on b.user_id = u.user_id
        WHERE wall_id = #{id}
    </select>
    <resultMap type="SysUser" id="SysUserListResult">
        <result property="userId" column="sub_user_id"/>
        <result property="nickName" column="sub_nick_name"/>
        <result property="deptId" column="sub_dept_id"/>
    </resultMap>
    <sql id="selectArdWallVo">
@@ -96,4 +109,21 @@
            #{id}
        </foreach>
    </delete>
    <insert id="batchArdWallUser">
        insert into ard_wall_user( wall_id, user_id) values
        <foreach item="item" index="index" collection="list" separator=",">
            ( #{item.wallId}, #{item.userId})
        </foreach>
    </insert>
    <delete id="deleteArdWallUserByWallId" parameterType="String">
        delete
        from ard_wall_user
        where wall_id = #{wallId}
    </delete>
    <delete id="deleteArdWallUserByWallIds" parameterType="String">
        delete from ard_wall_user where wall_id in
        <foreach item="wallId" collection="array" open="(" separator="," close=")">
            #{wallId}
        </foreach>
    </delete>
</mapper>