zhongrj
2023-12-05 45a94c19067757d410fdb30836bffa123ef2d27b
住户导出修改,场所新增修改将负责人,电话写入
9 files modified
95 ■■■■■ changed files
src/main/java/org/springblade/modules/house/excel/HouseHoldExcel.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/controller/PlaceController.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/entity/PlaceEntity.java 20 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml 9 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/IPlaceService.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java 34 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/house/excel/HouseHoldExcel.java
@@ -5,6 +5,7 @@
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.common.excel.ExcelDictConverter;
import org.springblade.common.excel.ExcelDictItem;
@@ -25,6 +26,13 @@
public class HouseHoldExcel implements Serializable {
    private static final long serialVersionUID = 2L;
    /**
     * 门牌地址编码
     */
    @ColumnWidth(25)
    @ExcelProperty( "门牌地址编码")
    private String houseCode;
    /** 姓名 */
    @ColumnWidth(15)
@@ -150,7 +158,7 @@
    @ColumnWidth(15)
    @ExcelProperty( value = "是否党员",converter = ExcelDictConverter.class)
    @ExcelDictItem(type = "partyEmberType")
    private Integer partyEmber;
    private String partyEmber;
    /** 备注 */
    @ColumnWidth(15)
src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.java
@@ -71,7 +71,7 @@
     * @param household
     * @return
     */
    List<HouseHoldExcel> export(HouseholdVO household);
    List<HouseHoldExcel> export(@Param("household") HouseholdVO household);
    Integer statistics(Long userId);
src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
@@ -156,6 +156,7 @@
    <!--导出数据-->
    <select id="export" resultType="org.springblade.modules.house.excel.HouseHoldExcel">
        select
        jh.house_code houseCode,
        jh.name,jh.phone_number phoneNumber,jh.role_type roleType,jh.relationship relationship,
        jh.is_primary_contact isPrimaryContact,jh.residential_status residentialStatus,jh.gender,
        jh.birthday,jh.id_card idCard,jh.hkmt_pass hkmtPass,jh.passport,jh.ethnicity,jh.education,
src/main/java/org/springblade/modules/place/controller/PlaceController.java
@@ -186,4 +186,12 @@
        ExcelUtil.save(file, placeImporter, PlaceAndRelExcel.class);
        return R.success("操作成功");
    }
    /**
     * 场所数据处理-用户信息(场所负责人信息写入到场所表)
     */
    @GetMapping("/placeUserHandle")
    public R placeUserHandle() {
        return R.data(placeService.placeUserHandle());
    }
}
src/main/java/org/springblade/modules/place/entity/PlaceEntity.java
@@ -62,12 +62,28 @@
     */
    @ApiModelProperty(value = "楼栋编码")
    private String buildingCode;
    /**
     * 场所负责人(关联用户表信息)
     * 场所负责人(关联用户表信息user_id)
     */
    @ApiModelProperty(value = "场所负责人(关联用户表信息)")
    @ApiModelProperty(value = "场所负责人(关联用户表信息user_id)")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long principalUserId;
    /**
     * 场所负责人
     */
    @ApiModelProperty(value = "场所负责人")
    @JsonSerialize(using = ToStringSerializer.class)
    private String principal;
    /**
     * 场所负责人联系电话
     */
    @ApiModelProperty(value = "场所负责人联系电话")
    @JsonSerialize(using = ToStringSerializer.class)
    private String principalPhone;
    /**
     * 场所名称
     */
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java
@@ -90,4 +90,10 @@
     * @return
     */
    PlaceEntity getPlaceAndRelInfo(@Param("place") PlaceAndRelExcel placeExcel);
    /**
     * 查询出有用户id 的场所
     * @return
     */
    List<PlaceEntity> getHasUserIdPlaceList();
}
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -145,4 +145,13 @@
        </if>
        limit 1
    </select>
    <!--查询出有用户id 的场所-->
    <select id="getHasUserIdPlaceList" resultType="org.springblade.modules.place.entity.PlaceEntity">
        select
        jp.*
        from jczz_place jp
        left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0
        where jp.is_deleted = 0 and jp.principal_user_id is not null
    </select>
</mapper>
src/main/java/org/springblade/modules/place/service/IPlaceService.java
@@ -91,4 +91,9 @@
     * @param isCovered
     */
    void importAndRelPlace(List<PlaceAndRelExcel> data, Boolean isCovered);
    /**
     * 场所数据处理-用户信息(场所负责人信息写入到场所表)
     */
    Object placeUserHandle();
}
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -153,6 +153,8 @@
    public User bindUserHandle(PlaceVO placeVO) {
        User newUser = new User();
        if (null!=placeVO.getPhone() && !placeVO.getPhone().equals("")) {
            placeVO.setPrincipal(placeVO.getUsername());
            placeVO.setPrincipalPhone(placeVO.getPhone());
            //根据手机号查询库里的数据
            User userParams = new User();
            userParams.setPhone(placeVO.getPhone());
@@ -319,6 +321,8 @@
                PlaceEntity placeEntity = new PlaceEntity();
                placeEntity.setHouseCode(placeExcel.getHouseCode());
                placeEntity.setPrincipalUserId(userId);
                placeEntity.setPrincipal(placeExcel.getName());
                placeEntity.setPrincipalPhone(placeExcel.getPhoneNumber());
                placeEntity.setCreateTime(new Date());
                placeEntity.setCreateUser(AuthUtil.getUserId());
                placeEntity.setUpdateTime(new Date());
@@ -384,6 +388,9 @@
                placeEntity.setPlaceName(placeExcel.getPlaceName());
                placeEntity.setLocaltion(placeExcel.getAddress());
                placeEntity.setPrincipalUserId(userId);
                placeEntity.setPrincipal(placeExcel.getName());
                placeEntity.setPrincipalPhone(placeExcel.getPhoneNumber());
                placeEntity.setPrincipalUserId(userId);
                placeEntity.setCreateTime(new Date());
                placeEntity.setCreateUser(AuthUtil.getUserId());
                placeEntity.setUpdateTime(new Date());
@@ -439,4 +446,31 @@
            placeLabelBind(placeVO);
        }
    }
    /**
     * 场所数据处理-用户信息(场所负责人信息写入到场所表)
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Object placeUserHandle() {
        // 查询出有用户id 的场所
        List<PlaceEntity> list = baseMapper.getHasUserIdPlaceList();
        // 遍历
        for (PlaceEntity placeEntity : list) {
            // 查询对应的用户信息
            User user = userService.getById(placeEntity.getPrincipalUserId());
            if (null!=user) {
                // 设置场所负责人,手机号
                if (null != user.getRealName() && !user.getRealName().equals("")) {
                    placeEntity.setPrincipal(user.getRealName());
                }
                if (null != user.getPhone() && !user.getPhone().equals("")) {
                    placeEntity.setPrincipalPhone(user.getPhone());
                }
                // 更新场所信息
                updateById(placeEntity);
            }
        }
        return null;
    }
}