zhongrj
2023-12-29 5a7b9382114d37b7533026c62bf99b9dc4ef3a3d
场所数据操作去除任务绑定,新增初始数据处理,住户查询修改
12 files modified
346 ■■■■ changed files
src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml 11 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/house/vo/HouseholdVO.java 50 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/controller/PlaceController.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/entity/PlaceExtEntity.java 31 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml 11 ●●●●● 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 12 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/IPlaceService.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/impl/PlaceExtServiceImpl.java 70 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java 117 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java 16 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/vo/PlaceVO.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
@@ -252,8 +252,15 @@
            jh.go_out_addr,jh.go_out_where,jh.go_out_time,jh.go_out_reason,
            jh.marital_status,jh.card_number,jh.other_contact,
            if(jda.id is not null,jda.address_name,jh.current_address) as current_address,
            jh.disability_cert,jh.party_ember,jh.create_user,jh.create_time,jh.update_user,jh.update_time,jh.remark,jh.is_deleted,
            jh.disability_cert,jh.party_ember,jh.remark,
            jh.confirm_flag,jh.housing_rental_id,
            if(jda.id is not null,substring(jda.town_street_code,1,9),jh.home_adcode) as home_adcode,
            br1.name as residentAdName,
            br1.province_code as residentProvinceAdCode,br1.province_name as residentProvinceAdName,
            br1.city_code as residentCityAdCode,br1.city_name as residentCityAdName,
            br2.name as nativePlaceAdName,
            br2.province_code as nativePlaceProvinceAdCode,br2.province_name as nativePlaceProvinceAdName,
            br2.city_code as nativePlaceCityAdCode,br2.city_name as nativePlaceCityAdName,
            jhs.source,
            jhl.id as cid,
            jhl.house_code houseCodes,
@@ -268,6 +275,8 @@
        left join jczz_user_house_label jhl on jh.id = jhl.household_id
        left join jczz_doorplate_address jda on jda.address_code = jh.house_code
        left join jczz_house jhs on jhs.house_code = jh.house_code
        left join blade_region br1 on br1.code = jh.resident_adcode
        left join blade_region br2 on br2.code = jh.native_place_adcode
        where 1=1 and jh.is_deleted = 0
        and jh.id = #{household.id}
    </select>
src/main/java/org/springblade/modules/house/vo/HouseholdVO.java
@@ -88,4 +88,54 @@
     */
    private Integer source;
    /**
     * 户籍地行政区划区县名称
     */
    private String residentAdName;
    /**
     * 户籍地行政区划省名称
     */
    private String residentProvinceAdName;
    /**
     * 户籍地行政区划省编号
     */
    private String residentProvinceAdCode;
    /**
     * 户籍地行政区划市名称
     */
    private String residentCityAdName;
    /**
     * 户籍地行政区划市编号
     */
    private String residentCityAdCode;
    /**
     * 籍贯地行政区划区县名称
     */
    private String nativePlaceAdName;
    /**
     * 籍贯地行政区划省名称
     */
    private String nativePlaceProvinceAdName;
    /**
     * 籍贯地行政区划省编号
     */
    private String nativePlaceProvinceAdCode;
    /**
     * 籍贯地行政区划市名称
     */
    private String nativePlaceCityAdName;
    /**
     * 籍贯地行政区划市编号
     */
    private String nativePlaceCityAdCode;
}
src/main/java/org/springblade/modules/place/controller/PlaceController.java
@@ -182,6 +182,16 @@
        return R.data(placeService.historyPlaceLabelHandle(place));
    }
    /**
     * 历史场所详情数据处理
     * @param place
     * @return
     */
    @GetMapping("/historyPlaceExtHandle")
    public R historyPlaceExtHandle(PlaceVO place) {
        return R.data(placeService.historyPlaceExtHandle(place));
    }
    /**
     * 场所表 自定义详情查询
src/main/java/org/springblade/modules/place/entity/PlaceExtEntity.java
@@ -20,13 +20,15 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
import org.springframework.format.annotation.DateTimeFormat;
/**
 * 场所详情表 实体类
@@ -47,12 +49,12 @@
    @ApiModelProperty("主键id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 任务id
     */
    @ApiModelProperty(value = "任务id")
    private Long taskId;
//
//    /**
//     * 任务id
//     */
//    @ApiModelProperty(value = "任务id")
//    private Long taskId;
    /**
     * 场所ID
@@ -64,11 +66,7 @@
     */
    @ApiModelProperty(value = "营业执照图片URLS")
    private String imageUrls;
    /**
     * 场所位置
     */
    @ApiModelProperty(value = "场所位置")
    private String location;
    /**
     * 法人信息
     */
@@ -99,9 +97,9 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date confirmTime;
    /**
     * 确认标记 1:待审核  2:审核通过  3:审核不通过
     * 确认标记 1:待审核  2:审核通过  3:审核不通过 4:待完善(地址表数据,无场所负责人)
     */
    @ApiModelProperty(value = "确认标记 0:待完善 1:待审核  2:审核通过  3:审核不通过")
    @ApiModelProperty(value = "确认标记 1:待审核  2:审核通过  3:审核不通过 4:待完善")
    private Integer confirmFlag;
    /**
     * 确认意见
@@ -114,6 +112,7 @@
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty("创建人")
    @TableField(fill = FieldFill.INSERT)
    private Long createUser;
    /**
@@ -130,6 +129,7 @@
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty("更新人")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long updateUser;
    /**
@@ -138,6 +138,7 @@
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;
    /**
src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml
@@ -89,11 +89,14 @@
    </select>
    <select id="getDetail" resultType="org.springblade.modules.place.vo.PlaceExtVO">
        select jpe.*, jp.place_name as placeName
        select jpe.*,
        jp.place_name as placeName,
        jp.lng,
        jp.lat,
        jp.location
        from jczz_place_ext jpe
                 left join jczz_place jp on jpe.place_id = jp.id and jp.is_deleted = 0
        where jpe.is_deleted = 0
          and jpe.place_id = #{placeExt.placeId}
        left join jczz_place jp on jpe.place_id = jp.id and jp.is_deleted = 0
        where jpe.is_deleted = 0 and jpe.place_id = #{placeExt.placeId}
    </select>
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java
@@ -96,4 +96,10 @@
     * @return
     */
    List<PlaceEntity> getHasUserIdPlaceList();
    /**
     * 查询所有的场所数据(除去详情表已有的)
     * @return
     */
    List<PlaceEntity> getPlaceListByNoExt();
}
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -15,6 +15,7 @@
    <select id="selectPlacePage" resultType="org.springblade.modules.place.vo.PlaceVO">
        select
        jp.*,
        jpe.id as placeExtId,
        bu.real_name as username,bu.phone as phone,
        bx.real_name as createUserName,
        br.town_name as townStreetName,br.name as neiName,
@@ -96,7 +97,7 @@
        <if test="place.regionCode != null and place.regionCode !='' ">
            and jg.community_code like concat('%',#{place.regionCode},'%')
        </if>
        order by jpe.create_time desc
        order by jp.create_time desc,jp.id desc
    </select>
    <!--查询场所集合信息-->
@@ -189,4 +190,13 @@
        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>
    <!--查询所有的场所数据(除去详情表已有的)-->
    <select id="getPlaceListByNoExt" resultType="org.springblade.modules.place.entity.PlaceEntity">
        select
        jp.*
        from jczz_place jp
        LEFT JOIN jczz_place_ext jpe on jpe.place_id=jp.id and jpe.is_deleted = 0
        where jp.is_deleted = 0 and jpe.id is null
    </select>
</mapper>
src/main/java/org/springblade/modules/place/service/IPlaceService.java
@@ -108,4 +108,11 @@
     * 场所标签数据处理
     */
    Object placeLabelHandle();
    /**
     * 历史场所详情数据处理
     * @param place
     * @return
     */
    Object historyPlaceExtHandle(PlaceVO place);
}
src/main/java/org/springblade/modules/place/service/impl/PlaceExtServiceImpl.java
@@ -18,6 +18,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.logging.log4j.util.Strings;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.modules.grid.service.IGridService;
import org.springblade.modules.house.entity.HouseTenantEntity;
@@ -102,6 +103,8 @@
        boolean removeFlag = true;
        //更新自身
        boolean update = updateById(placeExt);
        // 更新场所place 表信息
        updatePlaceInfo(placeExt);
        // 查询对应已存在的从业人员
        QueryWrapper<PlacePractitionerEntity> wrapper = new QueryWrapper<>();
        wrapper.eq("place_id",placeExt.getPlaceId());
@@ -153,6 +156,27 @@
    }
    /**
     * 更新场所表信息
     * @param placeExt
     */
    public void updatePlaceInfo(PlaceExtVO placeExt) {
        PlaceEntity placeEntity = new PlaceEntity();
        placeEntity.setId(placeExt.getPlaceId());
        placeEntity.setPlaceName(placeExt.getPlaceName());
        if (!Strings.isBlank(placeExt.getLng())) {
            placeEntity.setLng(placeExt.getLng());
        }
        if (!Strings.isBlank(placeExt.getLat())) {
            placeEntity.setLat(placeExt.getLat());
        }
        if (!Strings.isBlank(placeExt.getLocation())) {
            placeEntity.setLocation(placeExt.getLocation());
        }
        // 更新
        placeService.updateById(placeEntity);
    }
    /**
     * 场所详情表 审核
     * @param placeExt
     * @return
@@ -165,15 +189,15 @@
        placeExt.setConfirmTime(new Date());
        placeExt.setConfirmUserId(AuthUtil.getUserId());
        // 更新数据
        boolean b = updateById(placeExt);
        if (b) {
            PlaceExtEntity entity = getById(placeExt.getId());
            // 更新任务表状态
            TaskEntity taskEntity = new TaskEntity();
            taskEntity.setId(entity.getTaskId());
            taskEntity.setStatus(placeExt.getConfirmFlag());
            flag = taskService.updateById(taskEntity);
        }
        flag = updateById(placeExt);
//        if (b) {
//            PlaceExtEntity entity = getById(placeExt.getId());
//            // 更新任务表状态
//            TaskEntity taskEntity = new TaskEntity();
//            taskEntity.setId(entity.getTaskId());
//            taskEntity.setStatus(placeExt.getConfirmFlag());
//            flag = taskService.updateById(taskEntity);
//        }
        // 返回
        return flag;
    }
@@ -185,26 +209,26 @@
     */
    @Override
    public boolean savePlaceExt(PlaceExtEntity placeExt) {
        PlaceEntity placeEntity = placeService.getById(placeExt.getPlaceId());
        TaskEntity taskEntity = new TaskEntity();
        taskEntity.setId(placeExt.getTaskId());
        taskEntity.setStatus(placeExt.getConfirmFlag());
        taskEntity.setType(1);
        taskEntity.setFrequency(1);
        taskEntity.setName(placeEntity.getPlaceName() + "信息完善");
        // 新增任务
        boolean save = taskService.save(taskEntity);
        if (save){
            placeExt.setTaskId(taskEntity.getId());
//        PlaceEntity placeEntity = placeService.getById(placeExt.getPlaceId());
//        TaskEntity taskEntity = new TaskEntity();
//        taskEntity.setId(placeExt.getTaskId());
//        taskEntity.setStatus(placeExt.getConfirmFlag());
//        taskEntity.setType(1);
//        taskEntity.setFrequency(1);
//        taskEntity.setName(placeEntity.getPlaceName() + "信息完善");
//        // 新增任务
//        boolean save = taskService.save(taskEntity);
//        if (save){
//            placeExt.setTaskId(taskEntity.getId());
            placeExt.setConfirmFlag(1);
            placeExt.setCreateTime(new Date());
            placeExt.setUpdateTime(new Date());
            placeExt.setCreateUser(AuthUtil.getUserId());
            placeExt.setUpdateUser(AuthUtil.getUserId());
            // 新增场所详情
            save(placeExt);
        }
        return false;
            boolean save = save(placeExt);
//        }
        return save;
    }
    /**
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -17,7 +17,7 @@
package org.springblade.modules.place.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.logging.log4j.util.Strings;
import org.springblade.common.node.TreeStringNode;
@@ -26,35 +26,32 @@
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity;
import org.springblade.modules.doorplateAddress.service.IDoorplateAddressService;
import org.springblade.modules.grid.entity.GridEntity;
import org.springblade.modules.grid.entity.GridRangeEntity;
import org.springblade.modules.grid.mapper.GridMapper;
import org.springblade.modules.grid.service.IGridRangeService;
import org.springblade.modules.grid.service.IGridService;
import org.springblade.modules.grid.service.IGridmanService;
import org.springblade.modules.grid.vo.GridVO;
import org.springblade.modules.place.entity.PlaceEntity;
import org.springblade.modules.place.entity.PlaceExtEntity;
import org.springblade.modules.place.entity.PlacePoiLabel;
import org.springblade.modules.place.entity.PlaceRelEntity;
import org.springblade.modules.place.entity.*;
import org.springblade.modules.place.excel.PlaceAndRelExcel;
import org.springblade.modules.place.excel.PlaceExcel;
import org.springblade.modules.place.mapper.PlaceMapper;
import org.springblade.modules.place.service.IPlaceExtService;
import org.springblade.modules.place.service.IPlacePoiLabelService;
import org.springblade.modules.place.service.IPlaceRelService;
import org.springblade.modules.place.service.IPlaceService;
import org.springblade.modules.place.vo.PlaceVO;
import org.springblade.modules.place.mapper.PlaceMapper;
import org.springblade.modules.place.service.IPlaceService;
import org.springblade.modules.system.entity.Dept;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.service.IDeptService;
import org.springblade.modules.system.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.*;
/**
 * 场所表 服务实现类
@@ -90,6 +87,9 @@
    @Autowired
    private IDeptService deptService;
    @Autowired
    private GridMapper gridMapper;
    /**
     * 自定义列表查询
@@ -219,20 +219,74 @@
                gridRangeService.updateById(one);
            }
        }else {
            // 判断角色,如果是网格员则直接使用网格员的网格id,如果是民警则采用点落面的方式进行获取网格的id
            if (!Strings.isBlank(placeVO.getRoleName())) {
                // 网格员角色位置绑定
                gridmanPositionHandle(placeVO);
                // 民警角色位置绑定
                policePositionHandle(placeVO);
            }
        }
    }
    /**
     * 网格员角色位置绑定
     * @param placeVO
     */
    private void gridmanPositionHandle(PlaceVO placeVO) {
        if (placeVO.getRoleName().equals("网格员")) {
            // 判断网格员,查询对应网格人对应的网格id
            Integer gridId = gridmanService.getGridIdByUserId(AuthUtil.getUserId());
            if (null!=gridId){
            if (null != gridId) {
                // 判断关联关系表是否存在
                QueryWrapper<GridRangeEntity> wrapper = new QueryWrapper<>();
                wrapper.eq("grid_id",gridId).eq("house_code",placeVO.getHouseCode());
                wrapper.eq("grid_id", gridId).eq("house_code", placeVO.getHouseCode());
                GridRangeEntity one = gridRangeService.getOne(wrapper);
                if (null==one){
                if (null == one) {
                    // 新增
                    GridRangeEntity gridRangeEntity = new GridRangeEntity();
                    gridRangeEntity.setHouseCode(placeVO.getHouseCode());
                    gridRangeEntity.setGridId(gridId);
                    // 插入
                    gridRangeService.save(gridRangeEntity);
                }else {
                    // 修改绑定
                    one.setGridId(placeVO.getGridId());
                    // 修改
                    gridRangeService.updateById(one);
                }
            }
        }
    }
    /**
     * 民警角色位置绑定
     * @param placeVO
     */
    private void policePositionHandle(PlaceVO placeVO) {
        // 是民警且位置信息存在
        if (placeVO.getRoleName().equals("民警") && !Strings.isBlank(placeVO.getLng())) {
            //点坐标解析
            String point = "'POINT(" + placeVO.getLng() + " " + placeVO.getLat() +")'";
//            String point = "'POINT(" + villageInfoExcel.getLatitude() + " " + villageInfoExcel.getLongitude() +")'";
            GridEntity gridEntity = gridMapper.spatialAnalysis(point);
            if (null != gridEntity) {
                // 判断关联关系表是否存在
                QueryWrapper<GridRangeEntity> wrapper = new QueryWrapper<>();
                wrapper.eq("grid_id", gridEntity.getId()).eq("house_code", placeVO.getHouseCode());
                GridRangeEntity one = gridRangeService.getOne(wrapper);
                if (null == one) {
                    // 新增
                    GridRangeEntity gridRangeEntity = new GridRangeEntity();
                    gridRangeEntity.setHouseCode(placeVO.getHouseCode());
                    gridRangeEntity.setGridId(gridEntity.getId());
                    // 插入
                    gridRangeService.save(gridRangeEntity);
                }else {
                    // 修改绑定
                    one.setGridId(placeVO.getGridId());
                    // 修改
                    gridRangeService.updateById(one);
                }
            }
        }
@@ -393,9 +447,6 @@
        PlaceExtEntity one = placeExtService.getOne(wrapper);
        if (null == one) {
            placeExtEntity.setPlaceId(placeVO.getId());
            placeExtEntity.setLocation(placeVO.getLocation());
            // TODO 后面需要把新增的参所设置为待完善
            // placeExtEntity.setConfirmFlag(0);
            //新增
            placeExtService.savePlaceExt(placeExtEntity);
        }
@@ -724,4 +775,36 @@
        }
        return null;
    }
    /**
     * 历史场所详情数据处理
     * @param place
     * @return
     */
    @Override
    public Object historyPlaceExtHandle(PlaceVO place) {
        // 查询所有的场所数据(除去详情表已有的)
        List<PlaceEntity> list = baseMapper.getPlaceListByNoExt();
        // 遍历更新
        for (PlaceEntity placeEntity : list) {
            QueryWrapper<PlaceExtEntity> queryWrapper = new QueryWrapper<>();
            queryWrapper.eq("place_id",placeEntity.getId()).eq("is_deleted",0);
            PlaceExtEntity one = placeExtService.getOne(queryWrapper);
            if (null==one){
                // 新增
                PlaceExtEntity placeExtEntity = new PlaceExtEntity();
                if (null!=placeEntity.getPrincipalUserId()){
                    // 待审核
                    placeExtEntity.setConfirmFlag(1);
                }else {
                    // 待完善
                    placeExtEntity.setConfirmFlag(4);
                }
                placeExtEntity.setPlaceId(placeEntity.getId());
                // 插入
                placeExtService.save(placeExtEntity);
            }
        }
        return null;
    }
}
src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java
@@ -43,6 +43,22 @@
    private String placeName;
    /**
     * 场所位置
     */
    @ApiModelProperty(value = "场所位置")
    private String location;
    /**
     * 经度
     */
    private String lng;
    /**
     * 纬度
     */
    private String lat;
    /**
     * 地址编码
     */
    private String houseCode;
src/main/java/org/springblade/modules/place/vo/PlaceVO.java
@@ -107,4 +107,9 @@
     * 区域编号
     */
    private String regionCode;
    /**
     * 详情id(维护)
     */
    private Long placeExtId;
}