Pārlūkot izejas kodu

fix 新增人员信息确认按钮和一键确认功能

tjf 3 gadi atpakaļ
vecāks
revīzija
bf88a189f9

+ 14 - 0
boman-api/boman-domain/src/main/java/com/boman/domain/Czrk.java

@@ -4,6 +4,7 @@ import com.boman.domain.annotation.Excel;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.*;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -212,6 +213,19 @@ public class Czrk extends BaseEntity{
      * 网格名称
      */
     private String gridName;
+    /**
+     * 是否确认
+     */
+    private String isConfirm;
+    /**
+     * 最后一次确认人
+     */
+    private String confirmInfoUser;
+    /**
+     * 最后一次确认时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date confirmInfoUserTime;
 
     /**
      * 是否删除 默认为 "N"

+ 15 - 1
boman-web-core/src/main/java/com/boman/web/core/controller/RyrlController.java

@@ -1,6 +1,9 @@
 package com.boman.web.core.controller;
 
 import com.boman.common.core.web.controller.BaseController;
+import com.boman.common.log.annotation.Log;
+import com.boman.common.log.enums.BusinessType;
+import com.boman.common.security.annotation.PreAuthorize;
 import com.boman.domain.TableDataInfo;
 import com.boman.domain.Czrk;
 import com.boman.domain.dto.AjaxResult;
@@ -77,5 +80,16 @@ public class RyrlController extends BaseController {
         return AjaxResult.success("成功", czrkService.stsByApplet(provinceId, cityId, regionId, townId, villageId, userName, queryType, houseType));
     }
 
-
+    /**
+     * 一键确认家庭成员
+     */
+    @Log(title = "一键确认家庭成员", businessType = BusinessType.UPDATE)
+    @GetMapping("/confirmInfo/{ids}")
+    public AjaxResult confirmInfo(@PathVariable Long[] ids)
+    {
+        if (ids == null || ids.length < 1){
+            return AjaxResult.error("未获取到家庭成员信息");
+        }
+        return czrkService.confirmInfoByIds(ids);
+    }
 }

+ 59 - 0
boman-web-core/src/main/java/com/boman/web/core/domain/ConfirmInfoUser.java

@@ -0,0 +1,59 @@
+package com.boman.web.core.domain;
+
+import com.boman.domain.BaseEntity;
+
+/**
+ * @author tjf
+ * @Date: 2022/03/16/18:10
+ */
+public class ConfirmInfoUser extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /** 编号 */
+    private Long id;
+    /**
+     * 确认人
+     */
+    private String confirmInfoUser;
+    /**
+     * 人口信息的主键id
+     */
+    private Long czrkId;
+
+    /**
+     * 是否删除
+     */
+    private String isDel;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getConfirmInfoUser() {
+        return confirmInfoUser;
+    }
+
+    public void setConfirmInfoUser(String confirmInfoUser) {
+        this.confirmInfoUser = confirmInfoUser;
+    }
+
+    public Long getCzrkId() {
+        return czrkId;
+    }
+
+    public void setCzrkId(Long czrkId) {
+        this.czrkId = czrkId;
+    }
+
+    public String getIsDel() {
+        return isDel;
+    }
+
+    public void setIsDel(String isDel) {
+        this.isDel = isDel;
+    }
+}

+ 10 - 0
boman-web-core/src/main/java/com/boman/web/core/mapper/CzrkMapper.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.boman.domain.Czrk;
 import com.boman.domain.SysDept;
 import com.boman.domain.VaccineInfoOperation;
+import com.boman.web.core.domain.ConfirmInfoUser;
 import org.apache.ibatis.annotations.Param;
 import org.checkerframework.checker.units.qual.C;
 
@@ -136,4 +137,13 @@ public interface CzrkMapper {
     Czrk getHzByCode(String code);
 
     JSONObject getColumnNamesByIdCard(@Param("columnNames") String columnNames, @Param("idCard") String idCard);
+
+    /**
+     * 一键确认家庭成员
+     * @param ids
+     * @return
+     */
+    int confirmInfoByIds(@Param("ids") Long[] ids, @Param("userName") String userName);
+
+    int insertConfirmInfoUser(ConfirmInfoUser confirmInfoUser);
 }

+ 49 - 1
boman-web-core/src/main/java/com/boman/web/core/service/czrk/CzrkServiceImpl.java

@@ -12,10 +12,13 @@ import com.boman.common.core.utils.sql.SqlUtil;
 import com.boman.common.core.web.page.PageDomain;
 import com.boman.common.core.web.page.TableSupport;
 import com.boman.common.redis.service.RedisService;
+import com.boman.common.security.service.TokenService;
 import com.boman.domain.*;
 import com.boman.domain.dto.AjaxResult;
 import com.boman.domain.utils.ThreadPoolService;
 import com.boman.system.api.RemoteDeptService;
+import com.boman.system.api.model.LoginUser;
+import com.boman.web.core.domain.ConfirmInfoUser;
 import com.boman.web.core.domain.GridInfo;
 import com.boman.web.core.domain.JsonRequest;
 import com.boman.web.core.mapper.CzrkMapper;
@@ -79,6 +82,9 @@ public class CzrkServiceImpl implements ICzrkService {
     @Resource
     private IpTimesService ipTimesService;
 
+    @Autowired
+    private TokenService tokenService;
+
     /**
      * 功能描述: 市领导查询,deptId不起作用,具体到村,需要czrk的villageId有值就可以,只是villageId起作用
      * 镇及以下,查询,villageId和deptIdList同时起作用
@@ -496,7 +502,9 @@ public class CzrkServiceImpl implements ICzrkService {
 
     @Override
     public AjaxResult editRlry(Czrk czrk) {
-        String username = SecurityUtils.getUsername();
+        LoginUser loginUser = tokenService.getLoginUser();
+        // 获取当前的用户名称
+        String username = loginUser.getUsername();
         String isRl = czrk.getIsRl();
         if ("否".equals(isRl)) {
             if (isNotEmpty(czrk.getVillageTowns())) {
@@ -510,8 +518,20 @@ public class CzrkServiceImpl implements ICzrkService {
         }
 
         czrk.setUpdateBy(username);
+        //判断是否确认
+        String isConfirm = czrk.getIsConfirm();
+        if (StringUtils.isNotBlank(isConfirm) && "Y".equals(isConfirm)){
+            czrk.setConfirmInfoUser(username);
+            czrk.setConfirmInfoUserTime(DateUtils.getNowDate());
+        }
         int count = czrkMapper.updateCzrk(czrk);
         if (count <= 0) return AjaxResult.error();
+        //往confirm_info_user表中差数据
+        ConfirmInfoUser confirmInfoUser = new ConfirmInfoUser();
+        confirmInfoUser.setCzrkId(czrk.getId());
+        confirmInfoUser.setConfirmInfoUser(username);
+        czrkMapper.insertConfirmInfoUser(confirmInfoUser);
+
 
         List<CzrkJzdz> czrkJzdzList = czrk.getCzrkJzdzList();
         if (isEmpty(czrkJzdzList)) return AjaxResult.error("该人员常住地址未添加");
@@ -1174,6 +1194,34 @@ public class CzrkServiceImpl implements ICzrkService {
         return AjaxResult.success(czrk);
     }
 
+    /**
+     * 一键确认家庭成员
+     * @param ids
+     * @return
+     */
+    @Override
+    public AjaxResult confirmInfoByIds(Long[] ids) {
+        LoginUser loginUser = tokenService.getLoginUser();
+        // 获取当前的用户名称
+        String username = loginUser.getUsername();
+        if (StringUtils.isBlank(username)){
+            return AjaxResult.error("未查询到确认人员名称");
+        }
+        for (Long id : ids) {
+            ConfirmInfoUser confirmInfoUser = new ConfirmInfoUser();
+            confirmInfoUser.setConfirmInfoUser(username);
+            confirmInfoUser.setCzrkId(id);
+            czrkMapper.insertConfirmInfoUser(confirmInfoUser);
+            Czrk czrk = new Czrk();
+            czrk.setId(id);
+            czrk.setIsConfirm("Y");
+            czrk.setConfirmInfoUser(username);
+            czrk.setConfirmInfoUserTime(DateUtils.getNowDate());
+            czrkMapper.updateCzrk(czrk);
+        }
+        return AjaxResult.error("未查询到对应成员");
+    }
+
     private String packRedisKey(String deptId) {
         return STS_CZRK_ + deptId + ":" + DateUtils.getDate();
     }

+ 7 - 0
boman-web-core/src/main/java/com/boman/web/core/service/czrk/ICzrkService.java

@@ -92,4 +92,11 @@ public interface ICzrkService {
 
     AjaxResult getInfo(String appKey, String appSecret, String idCard);
     AjaxResult getInfoJson(JsonRequest jsonRequest);
+
+    /**
+     * 一键确认家庭成员
+     * @param ids
+     * @return
+     */
+    AjaxResult confirmInfoByIds(Long ids[]);
 }

+ 46 - 2
boman-web-core/src/main/resources/mapper/CzrkMapper.xml

@@ -37,6 +37,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="remark"    column="remark"    />
         <result property="gridId"    column="grid_id"    />
         <result property="status"    column="status"    />
+        <result property="isConfirm"    column="is_confirm"    />
+        <result property="confirmInfoUser"    column="confirm_info_user"    />
+        <result property="confirmInfoUserTime"    column="confirm_info_user_time"    />
         <result property="createBy"    column="create_by"    />
         <result property="createTime"    column="create_time"    />
         <result property="updateBy"    column="update_by"    />
@@ -80,16 +83,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="updateTime" column="update_time" />
     </resultMap>
 
+    <resultMap type="com.boman.web.core.domain.ConfirmInfoUser" id="ConfrimInforUserResult">
+        <result property="confirmInfoUser"    column="confirm_info_user"    />
+        <result property="czrkId"    column="czrk_id"    />
+    </resultMap>
     <sql id="selectCzrkVo">
         select id, user_name, gender, age, birthday,dept_id, id_card, phone_num, code, house_type, rlr, rl_time, yhzgx
              , work_unit, province_id, province, city_id, city, region_id, region, village_towns_id, village_towns
-             , village_id, village, villager_group_id, villager_group, now_in, remark,grid_id, status, create_by, create_time
+             , village_id, village, villager_group_id, villager_group, now_in, remark,grid_id, status,is_confirm,confirm_info_user,confirm_info_user_time, create_by, create_time
              , update_by, update_time, is_del, delete_reason, dept_id, is_rl, key_industries from czrk
     </sql>
 
     <select id="listByRlry"  resultMap="CzrkResult">
         select id, user_name, phone_num,dept_id, id_card, gender, province, city, region, village_towns, village, villager_group, grid_id
-        , house_type, update_by, code, rlr, update_time, delete_reason, now_in
+        , house_type, update_by, code, rlr, update_time, delete_reason, now_in,is_confirm,confirm_info_user,confirm_info_user_time
         from czrk
         <where>
             <!-- 已认领 -->
@@ -125,6 +132,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="villagerGroup != null  and villagerGroup != ''"> and villager_group = #{villagerGroup}</if>-->
             <if test="nowIn != null  and nowIn != ''"> and now_in = #{nowIn}</if>
             <if test="status != null  and status != ''"> and status = #{status}</if>
+            <if test="isConfirm != null  and isConfirm != ''"> and is_confirm = #{isConfirm}</if>
             <if test="isDel != null  and isDel != ''"> and is_del = #{isDel}</if>
             <if test="deleteReason != null  and deleteReason != ''"> and delete_reason = #{deleteReason}</if>
             <if test="gridId != null  and gridId != ''"> and grid_id = #{gridId}</if>
@@ -607,6 +615,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="remark != null">remark,</if>
             <if test="gridId != null">grid_id,</if>
             <if test="status != null">status,</if>
+            <if test="isConfirm != null">is_confirm,</if>
+            <if test="confirmInfoUser != null and confirmInfoUser != ''">confirm_info_user,</if>
+            <if test="confirmInfoUserTime != null ">confirm_info_user_time,</if>
             <if test="createBy != null">create_by,</if>
             <if test="updateBy != null">update_by,</if>
             <if test="isDel != null and isDel != ''">is_del,</if>
@@ -645,6 +656,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="remark != null">#{remark},</if>
             <if test="gridId != null">#{gridId},</if>
             <if test="status != null">#{status},</if>
+            <if test="isConfirm != null">#{isConfirm},</if>
+            <if test="confirmInfoUser != null and confirmInfoUser != ''">#{confirmInfoUser},</if>
+            <if test="confirmInfoUserTime != null ">#{confirmInfoUserTime},</if>
             <if test="createBy != null">#{createBy},</if>
             <if test="updateBy != null">#{updateBy},</if>
             <if test="isDel != null and isDel != ''">#{isDel},</if>
@@ -686,6 +700,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="remark != null">remark = #{remark},</if>
             <if test="gridId != null">grid_id = #{gridId},</if>
             <if test="status != null">status = #{status},</if>
+            <if test="isConfirm != null and isConfirm != ''">is_confirm = #{isConfirm},</if>
+            <if test="confirmInfoUser != null and confirmInfoUser != ''">confirm_info_user = #{confirmInfoUser},</if>
+            <if test="confirmInfoUserTime != null ">confirm_info_user_time = #{confirmInfoUserTime},</if>
             <if test="createBy != null">create_by = #{createBy},</if>
             <if test="createTime != null">create_time = #{createTime},</if>
             <if test="updateBy != null">update_by = #{updateBy},</if>
@@ -884,4 +901,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="selectDeptNameById" parameterType="Long" resultMap="SysDeptResult">
         select *  from sys_dept where id = #{id} limit 1;
     </select>
+
+    <update id="confirmInfoByIds">
+        update czrk
+        <trim prefix="SET" suffixOverrides=",">
+        is_confirm = 'Y',
+        <if test="userName != null and userName !=''">  confirm_info_user = #{userName},</if>
+        confirm_info_user_time = sysdate()
+        </trim>
+        where id in
+        <foreach collection="ids" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </update>
+
+    <insert id="insertConfirmInfoUser"  useGeneratedKeys="true" keyProperty="id">
+        insert into confim_info_user
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="confirmInfoUser != null">confirm_info_user,</if>
+            <if test="czrkId != null">czrk_id,</if>
+            create_time
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="confirmInfoUser != null">#{confirmInfoUser},</if>
+            <if test="czrkId != null">#{czrkId},</if>
+            sysdate()
+        </trim>
+    </insert>
 </mapper>