邱宇豪
2023-11-07 26d0470f278de9b7094dc0569ce0d741567f2c8c
20231107_qiuyh_隐患举报
已添加7个文件
611 ■■■■■ 文件已修改
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/controller/HiddenDangerController.java 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/entity/HiddenDangerEntity.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/entity/HiddenDangerImgEntity.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/mapper/HiddenDangerMapper.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/service/HiddenDangerService.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/service/impl/HiddenDangerServiceImpl.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/secure/src/main/resources/mapping/HiddenDangerMapper.xml 215 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/controller/HiddenDangerController.java
对比新文件
@@ -0,0 +1,92 @@
package com.thhy.secure.modules.biz.hiddenDanger.controller;
import com.thhy.general.common.BasicResult;
import com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerEntity;
import com.thhy.secure.modules.biz.hiddenDanger.service.HiddenDangerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
/**
 * @Author QiuYuHao
 * @CreateDate 2023-11-07 14:26:39
 * 隐患举报控制层
 */
@RestController
@RequestMapping(value = "hiddendanger")
public class HiddenDangerController {
    @Autowired
    private HiddenDangerService hiddenDangerService;
    /**
     * 新增
     * @param hiddenDangerEntity
     * @return
     */
    @PostMapping(value = "insert")
    BasicResult insert(@RequestBody HiddenDangerEntity hiddenDangerEntity){
        return hiddenDangerService.insert(hiddenDangerEntity);
    }
    /**
     * 修改接口
     * @param hiddenDangerEntity
     * @return
     */
    @PostMapping(value = "update")
    BasicResult update(@RequestBody HiddenDangerEntity hiddenDangerEntity){
        return hiddenDangerService.update(hiddenDangerEntity);
    }
    /**
     * 删除
     * @param id
     * @return
     */
    @GetMapping(value = "delete")
    BasicResult delete(@RequestParam String id){
        return hiddenDangerService.delete(id);
    }
    /**
     * web端列表
     * @param map
     * @return
     */
    @PostMapping(value = "selectPageList")
    BasicResult selectPageList(@RequestBody Map<String,Object> map){
        return hiddenDangerService.selectPageList(map);
    }
    /**
     * 小程序
     * @param map
     * @return
     */
    @PostMapping(value = "selectNoPageList")
    BasicResult selectNoPageList(@RequestBody Map<String,Object> map){
        return hiddenDangerService.selectNoPageList(map);
    }
    /**
     * web、小程序详情
     * @param id
     * @return
     */
    @GetMapping(value = "selectInfo")
    BasicResult selectInfo(@RequestParam String id){
        return hiddenDangerService.selectInfo(id);
    }
    /**
     * web审核接口
     * @param hiddenDangerEntity
     * @return
     */
    @PostMapping(value = "examine")
    BasicResult examine(@RequestBody HiddenDangerEntity hiddenDangerEntity){
        return hiddenDangerService.examine(hiddenDangerEntity);
    }
}
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/entity/HiddenDangerEntity.java
对比新文件
@@ -0,0 +1,81 @@
package com.thhy.secure.modules.biz.hiddenDanger.entity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * @Author QiuYuHao
 * @CreateDate 2023-11-07 14:27:33
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class HiddenDangerEntity implements Serializable {
    private String id;
    /**
     * 隐患地点
     */
    private String dangerLocation;
    /**
     * 隐患标题
     */
    private String title;
    /**
     * 隐患时间
     */
    private Date createTime;
    /**
     * 隐患审核状态 审核状态 0未审核 1审核通过 2审核失败
     */
    private Integer auditStatus;
    private String auditStatusName;
    public String getAuditStatusName() {
        String name = "";
        switch (auditStatus){
            case 0:
                name = "未审核";
                break;
            case 1:
                name = "已审核";
                break;
            case 2:
                name = "审核失败";
                break;
        }
        return name;
    }
    /**
     * 1Y0N
     */
    private Integer isUse;
    private String createUser;
    private String updateUser;
    private Date updateTime;
    private String companyId;
    /**
     * 积分
     */
    private Double integral;
    /**
     * 图片集合
     */
    private List<HiddenDangerImgEntity> imgEntities;
}
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/entity/HiddenDangerImgEntity.java
对比新文件
@@ -0,0 +1,37 @@
package com.thhy.secure.modules.biz.hiddenDanger.entity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
 * @Author QiuYuHao
 * @CreateDate 2023-11-07 14:56:00
 * 隐患图片实体
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class HiddenDangerImgEntity implements Serializable {
    private String id;
    /**
     * 隐患id
     */
    private String hiddenDangerId;
    /**
     * 图片名称
     */
    private String imgName;
    /**
     * 图片地址
     */
    private String imgPath;
}
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/mapper/HiddenDangerMapper.java
对比新文件
@@ -0,0 +1,35 @@
package com.thhy.secure.modules.biz.hiddenDanger.mapper;
import com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerEntity;
import com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerImgEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
/**
 * @Author QiuYuHao
 * @CreateDate 2023-11-07 14:31:40
 * 隐患mapper
 */
@Mapper
public interface HiddenDangerMapper {
    void insert(HiddenDangerEntity hiddenDangerEntity);
    void update(HiddenDangerEntity hiddenDangerEntity);
    void delete(String id);
    List<HiddenDangerEntity> selectPageList(Map<String,Object> map);
    HiddenDangerEntity selectInfo(String id);
    List<HiddenDangerImgEntity> selectImgList(String hiddenDangerId);
    void deleteImg(String hiddenDangerId);
    void insertImg(HiddenDangerImgEntity hiddenDangerImgEntity);
}
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/service/HiddenDangerService.java
对比新文件
@@ -0,0 +1,31 @@
package com.thhy.secure.modules.biz.hiddenDanger.service;
import com.thhy.general.common.BasicResult;
import com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerEntity;
import java.util.List;
import java.util.Map;
/**
 * @Author QiuYuHao
 * @CreateDate 2023-11-07 14:32:02
 * 隐患接口
 */
public interface HiddenDangerService {
    BasicResult insert(HiddenDangerEntity hiddenDangerEntity);
    BasicResult update(HiddenDangerEntity hiddenDangerEntity);
    BasicResult delete(String id);
    BasicResult selectPageList(Map<String,Object> map);
    BasicResult selectNoPageList(Map<String,Object> map);
    BasicResult selectInfo(String id);
    BasicResult examine(HiddenDangerEntity hiddenDangerEntity);
}
hd/pipe/secure/src/main/java/com/thhy/secure/modules/biz/hiddenDanger/service/impl/HiddenDangerServiceImpl.java
对比新文件
@@ -0,0 +1,120 @@
package com.thhy.secure.modules.biz.hiddenDanger.service.impl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.thhy.general.common.BasicResult;
import com.thhy.general.config.SysUserInfo;
import com.thhy.general.utils.UUIDUtils;
import com.thhy.general.utils.UserInfoUtils;
import com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerEntity;
import com.thhy.secure.modules.biz.hiddenDanger.mapper.HiddenDangerMapper;
import com.thhy.secure.modules.biz.hiddenDanger.service.HiddenDangerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
 * @Author QiuYuHao
 * @CreateDate 2023-11-07 14:32:29
 * 隐患逻辑
 */
@Service
public class HiddenDangerServiceImpl implements HiddenDangerService {
    @Autowired
    private HiddenDangerMapper hiddenDangerMapper;
    private static final Object Lock = new Object();
    @Override
    @Transactional(rollbackFor = Exception.class)
    public BasicResult insert(HiddenDangerEntity hiddenDangerEntity) {
        SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo();
        String hiddenDangerId = UUIDUtils.create();
        hiddenDangerEntity.setId(hiddenDangerId);
        hiddenDangerEntity.setCreateUser(sysUserInfo.getUserId());
        hiddenDangerEntity.setCompanyId(sysUserInfo.getCompanyId());
        synchronized (Lock){
            hiddenDangerMapper.insert(hiddenDangerEntity);
            //图片
            hiddenDangerEntity.getImgEntities().forEach(obj->{
                obj.setId(UUIDUtils.create());
                obj.setHiddenDangerId(hiddenDangerId);
                hiddenDangerMapper.insertImg(obj);
            });
        }
        return BasicResult.success();
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public BasicResult update(HiddenDangerEntity hiddenDangerEntity) {
        SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo();
        String userId = sysUserInfo.getUserId();
        hiddenDangerEntity.setUpdateUser(userId);
        hiddenDangerEntity.setUpdateTime(new Date());
        synchronized (Lock){
            hiddenDangerMapper.update(hiddenDangerEntity);
            //删除图片
            hiddenDangerMapper.deleteImg(hiddenDangerEntity.getId());
            //图片
            hiddenDangerEntity.getImgEntities().forEach(obj->{
                obj.setId(UUIDUtils.create());
                obj.setHiddenDangerId(hiddenDangerEntity.getId());
                hiddenDangerMapper.insertImg(obj);
            });
        }
        return BasicResult.success();
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public BasicResult delete(String id) {
        synchronized (Lock) {
            hiddenDangerMapper.delete(id);
            hiddenDangerMapper.deleteImg(id);
        }
        return BasicResult.success();
    }
    @Override
    public BasicResult selectPageList(Map<String, Object> map) {
        SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo();
        map.put("companyId",sysUserInfo.getCompanyId());
        int pageNum = (int) map.get("pageNum");
        int pageSize = (int) map.get("pageSize");
        PageHelper.startPage(pageNum,pageSize);
        List<HiddenDangerEntity> hiddenDangerEntities = hiddenDangerMapper.selectPageList(map);
        hiddenDangerEntities.forEach(obj ->{
            String id = obj.getId();
            obj.setImgEntities(hiddenDangerMapper.selectImgList(id));
        });
        return BasicResult.success(new PageInfo<>(hiddenDangerEntities));
    }
    @Override
    public BasicResult selectNoPageList(Map<String, Object> map) {
        SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo();
        map.put("companyId",sysUserInfo.getCompanyId());
        List<HiddenDangerEntity> hiddenDangerEntities = hiddenDangerMapper.selectPageList(map);
        hiddenDangerEntities.forEach(obj ->{
            String id = obj.getId();
            obj.setImgEntities(hiddenDangerMapper.selectImgList(id));
        });
        return BasicResult.success(hiddenDangerEntities);
    }
    @Override
    public BasicResult selectInfo(String id) {
        return BasicResult.success(hiddenDangerMapper.selectInfo(id));
    }
    @Override
    public BasicResult examine(HiddenDangerEntity hiddenDangerEntity) {
        hiddenDangerMapper.update(hiddenDangerEntity);
        return BasicResult.success();
    }
}
hd/pipe/secure/src/main/resources/mapping/HiddenDangerMapper.xml
对比新文件
@@ -0,0 +1,215 @@
<?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.thhy.secure.modules.biz.hiddenDanger.mapper.HiddenDangerMapper">
    <!--插入操作-->
    <insert id="insert">
        insert into t_hidden_danger
        <trim prefix="(" suffix=")" suffixOverrides="," >
            <if test="id != null">
                id,
            </if>
            <if test="dangerLocation != null">
                dangerLocation,
            </if>
            <if test="title != null">
                title,
            </if>
            <if test="createTime != null">
                createTime,
            </if>
            <if test="auditStatus != null">
                auditStatus,
            </if>
            <if test="isUse != null">
                isUse,
            </if>
            <if test="createUser != null">
                createUser,
            </if>
            <if test="updateUser != null">
                updateUser,
            </if>
            <if test="updateTime != null">
                updateTime,
            </if>
            <if test="companyId != null">
                companyId,
            </if>
            <if test="integral != null">
                integral,
            </if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides="," >
            <if test="id != null">
                #{id,jdbcType=VARCHAR},
            </if>
            <if test="dangerLocation != null">
                #{dangerLocation,jdbcType=VARCHAR},
            </if>
            <if test="title != null">
                #{title,jdbcType=VARCHAR},
            </if>
            <if test="createTime != null">
                #{createTime,jdbcType=TIMESTAMP},
            </if>
            <if test="auditStatus != null">
                #{auditStatus,jdbcType=INTEGER},
            </if>
            <if test="isUse != null">
                #{isUse,jdbcType=INTEGER},
            </if>
            <if test="createUser != null">
                #{createUser,jdbcType=VARCHAR},
            </if>
            <if test="updateUser != null">
                #{updateUser,jdbcType=VARCHAR},
            </if>
            <if test="updateTime != null">
                #{updateTime,jdbcType=TIMESTAMP},
            </if>
            <if test="companyId != null">
                #{companyId,jdbcType=TIMESTAMP},
            </if>
            <if test="integral != null">
                #{integral,jdbcType=DOUBLE},
            </if>
        </trim>
    </insert>
    <!--更新操作-->
    <update id="update">
        update t_hidden_danger
        <set>
            <if test="dangerLocation != null">
                dangerLocation = #{dangerLocation,jdbcType=VARCHAR},
            </if>
            <if test="title != null">
                title = #{title,jdbcType=VARCHAR},
            </if>
            <if test="createTime != null">
                createTime = #{createTime,jdbcType=TIMESTAMP},
            </if>
            <if test="auditStatus != null">
                auditStatus = #{auditStatus,jdbcType=INTEGER},
            </if>
            <if test="isUse != null">
                isUse = #{isUse,jdbcType=INTEGER},
            </if>
            <if test="createUser != null">
                createUser = #{createUser,jdbcType=VARCHAR},
            </if>
            <if test="updateUser != null">
                updateUser = #{updateUser,jdbcType=VARCHAR},
            </if>
            <if test="updateTime != null">
                updateTime = #{updateTime,jdbcType=TIMESTAMP},
            </if>
            <if test="companyId != null">
                companyId = #{companyId,jdbcType=VARCHAR},
            </if>
            <if test="integral != null">
                integral = #{integral,jdbcType=DOUBLE},
            </if>
        </set>
        where id=#{id,jdbcType=VARCHAR}
    </update>
    <!--逻辑删除-->
    <update id="delete">
        update t_hidden_danger
        SET isUse = 0
        where id=#{id}
    </update>
    <select id="selectInfo" resultType="com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerEntity">
        select
                t.id,
                t.dangerLocation,
                t.title,
                t.createTime,
                t.auditStatus,
                t.isUse,
                t.createUser,
                t.updateUser,
                t.updateTime,
                t.companyId
        from t_hidden_danger t
        where t.id=#{id}
    </select>
    <!--查询列表-->
    <select id="selectPageList" resultType="com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerEntity">
        SELECT
                t.id,
                t.dangerLocation,
                t.title,
                t.createTime,
                t.auditStatus,
                t.isUse,
                t.createUser,
                t.updateUser,
                t.updateTime,
                t.companyId
         from t_hidden_danger t
         LEFT JOIN sys_users su ON su.user_id = t.createUser
         LEFT JOIN sys_users su1 ON su1.user_id = t.updateUser
        WHERE
            t.isUse = 1
            and t.companyId = #{companyId}
            <if test="startTime!= null and endTime!=null and startTime != '' and endTime !=''">
                and t.createTime BETWEEN #{startTime} and #{endTime}
            </if>
        order by t.createUser desc
    </select>
    <!--根据ID删除-->
    <delete id="deleteImg">
        delete from t_hidden_danger_img
        where hiddenDangerId=#{hiddenDangerId}
    </delete>
    <select id="selectImgList" resultType="com.thhy.secure.modules.biz.hiddenDanger.entity.HiddenDangerImgEntity">
        SELECT
                id,
                hiddenDangerId,
                imgName,
                imgPath
        FROM t_hidden_danger_img
        WHERE hiddenDangerId = #{hiddenDangerId}
    </select>
    <insert id="insertImg">
        insert into t_hidden_danger_img
        <trim prefix="(" suffix=")" suffixOverrides="," >
            <if test="id != null">
                id,
            </if>
            <if test="hiddenDangerId != null">
                hiddenDangerId,
            </if>
            <if test="imgName != null">
                imgName,
            </if>
            <if test="imgPath != null">
                imgPath,
            </if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides="," >
            <if test="id != null">
                #{id,jdbcType=VARCHAR},
            </if>
            <if test="hiddenDangerId != null">
                #{hiddenDangerId,jdbcType=VARCHAR},
            </if>
            <if test="imgName != null">
                #{imgName,jdbcType=VARCHAR},
            </if>
            <if test="imgPath != null">
                #{imgPath,jdbcType=VARCHAR},
            </if>
        </trim>
    </insert>
</mapper>