src/main/java/org/springblade/modules/grid/mapper/GridMapper.java
@@ -152,4 +152,12 @@ */ List<GridVO> getGridListByComAndList(@Param("communityCode")String communityCode, @Param("gridCodeList") List<String> gridCodeList); /** * 根据社区名称和网格名称查询对应的网格信息 * @param communityName * @param gridName * @return */ GridEntity getGridInfoByParam(@Param("communityName")String communityName,@Param("gridName") String gridName); } src/main/java/org/springblade/modules/grid/mapper/GridMapper.xml
@@ -257,4 +257,15 @@ </choose> </select> <!--根据社区名称和网格名称查询对应的网格信息--> <select id="getGridInfoByParam" resultType="org.springblade.modules.grid.entity.GridEntity"> select jg.* from jczz_grid jg left join blade_region br on jg.community_code = br.code where jg.is_deleted = 0 and jg.grid_name = #{gridName} and br.name = #{communityName} </select> </mapper> src/main/java/org/springblade/modules/grid/service/IGridService.java
@@ -160,4 +160,12 @@ * @return */ List<GridVO> getGridListByComAndList(String communityCode, List<String> gridCodeList); /** * 根据社区名称和网格名称查询对应的网格信息 * @param communityName * @param gridName * @return */ GridEntity getGridInfoByParam(String communityName, String gridName); } src/main/java/org/springblade/modules/grid/service/impl/GridServiceImpl.java
@@ -387,4 +387,15 @@ public List<GridVO> getGridListByComAndList(String communityCode, List<String> gridCodeList) { return baseMapper.getGridListByComAndList(communityCode,gridCodeList); } /** * 根据社区名称和网格名称查询对应的网格信息 * @param communityName * @param gridName * @return */ @Override public GridEntity getGridInfoByParam(String communityName, String gridName) { return baseMapper.getGridInfoByParam(communityName,gridName); } } src/main/java/org/springblade/modules/house/service/impl/HouseServiceImpl.java
@@ -17,6 +17,7 @@ package org.springblade.modules.house.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -49,6 +50,8 @@ import org.springblade.modules.label.entity.LabelEntity; import org.springblade.modules.label.service.ILabelService; import org.springblade.modules.label.vo.LabelVO; import org.springblade.modules.place.excel.PlaceExcel; import org.springblade.modules.place.vo.PlaceVO; import org.springblade.modules.police.entity.PoliceAffairsGridEntity; import org.springblade.modules.police.service.IPoliceAffairsGridService; import org.springblade.modules.system.entity.Region; @@ -285,6 +288,8 @@ houseEntity.setHouseCode(IdUtils.getIdBy36()); houseEntity.setSource(2); } // 网格处理 importGridHandle(houseAndHoldExcel,houseEntity); // 新增 save(houseEntity); }else { @@ -300,6 +305,8 @@ one.setBuilding(houseAndHoldExcel.getBuilding()); one.setArea(houseAndHoldExcel.getArea()); one.setPropertyPrice(houseAndHoldExcel.getPropertyPrice()); // 网格处理 importGridHandle(houseAndHoldExcel,one); // 更新 updateById(one); } @@ -551,6 +558,33 @@ } } /** * 导入是网格数据绑定处理 * @param houseAndHoldExcel * @param houseEntity */ public void importGridHandle(HouseAndHoldExcel houseAndHoldExcel, HouseEntity houseEntity) { if (!Strings.isBlank(houseAndHoldExcel.getCommunityName()) && !Strings.isBlank(houseAndHoldExcel.getGridName())){ // 查询对应的网格信息 GridEntity gridEntity = gridService.getGridInfoByParam(houseAndHoldExcel.getCommunityName(),houseAndHoldExcel.getGridName()); if (null!=gridEntity){ // 设置场所范围 houseEntity.setGridId(gridEntity.getId()); houseEntity.setGridCode(gridEntity.getGridCode()); // 更新网格范围绑定 GridRangeEntity gridRangeEntity = new GridRangeEntity(); gridRangeEntity.setGridId(gridEntity.getId()); gridRangeEntity.setGridCode(gridEntity.getGridCode()); gridRangeEntity.setHouseCode(houseEntity.getHouseCode()); UpdateWrapper<GridRangeEntity> updateWrapper = new UpdateWrapper<>(); updateWrapper.eq("house_code",houseEntity.getHouseCode()); gridRangeService.update(gridRangeEntity,updateWrapper); } } } /** * 住户标签处理 * @param houseAndHoldExcel src/main/java/org/springblade/modules/place/entity/PlaceEntity.java
@@ -160,7 +160,7 @@ /** 创建人 */ @ApiModelProperty(value = "创建人", example = "") @TableField("create_user") @TableField(value = "create_user",fill = FieldFill.INSERT) private Long createUser; /** 创建时间 */ @@ -171,7 +171,7 @@ /** 更新人 */ @ApiModelProperty(value = "更新人", example = "") @TableField("update_user") @TableField(value = "update_user",fill = FieldFill.UPDATE) private Long updateUser; /** 更新时间 */ src/main/java/org/springblade/modules/place/excel/PlaceExcel.java
@@ -5,6 +5,8 @@ import com.alibaba.excel.annotation.write.style.ContentRowHeight; import com.alibaba.excel.annotation.write.style.HeadRowHeight; import lombok.Data; import org.springblade.common.excel.ExcelDictConverter; import org.springblade.common.excel.ExcelDictItemLabel; import java.io.Serializable; @@ -33,23 +35,37 @@ @ExcelProperty( "社区名称") private String communityName; /** 所属网格 */ @ExcelProperty( "所属网格") /** 网格名称 */ @ExcelProperty( "网格名称") private String gridName; /** 房屋名称 */ @ExcelProperty( "详细地址") private String houseName; /** 姓名 */ /** 经营者 */ @ColumnWidth(15) @ExcelProperty( "姓名") @ExcelProperty( "经营者") private String name; /** 手机号 */ /** 联系电话 */ @ColumnWidth(15) @ExcelProperty( "手机号") @ExcelProperty( "联系电话") private String phoneNumber; /** 企业(店铺)名称 */ @ColumnWidth(25) @ExcelProperty( "企业(店铺)名称") private String placeName; /** 九小场所类型 */ @ExcelProperty( value = "九小场所类型",converter = ExcelDictConverter.class) @ExcelDictItemLabel(type = "nineType") private String nineType; /** 标签分类代码 */ @ExcelProperty( "标签分类代码") private String labelCode; /** 备注 */ @ExcelProperty( "备注") private String remark; } src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import liquibase.pro.packaged.P; import liquibase.pro.packaged.W; import liquibase.repackaged.org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.util.Strings; @@ -962,8 +963,10 @@ if (null == one) { Long userId = updateUser(placeExcel); // 插入场所 PlaceEntity placeEntity = new PlaceEntity(); placeEntity.setHouseCode(placeExcel.getHouseCode()); PlaceVO placeEntity = new PlaceVO(); String[] split = placeExcel.getHouseCode().split(","); placeEntity.setHouseCode(split[0]); placeEntity.setHouseCodeBinds(placeExcel.getHouseCode()); placeEntity.setPrincipalUserId(userId); placeEntity.setPrincipal(placeExcel.getName()); placeEntity.setPrincipalPhone(placeExcel.getPhoneNumber()); @@ -971,8 +974,103 @@ placeEntity.setCreateUser(AuthUtil.getUserId()); placeEntity.setUpdateTime(new Date()); placeEntity.setUpdateUser(AuthUtil.getUserId()); //一个一个插入,防止同一个表中有相同的数据 // 默认为未完善 placeEntity.setStatus(1); // 是否现场采集 1:是 2:否 placeEntity.setIsScene(1); // 来源 1:地址总表 2:国控采集 3:商超 if (!Strings.isBlank(placeExcel.getHouseCode())) { placeEntity.setSource(1); }else { placeEntity.setSource(2); // 并生成36位的houseCode placeEntity.setHouseCode(IdUtils.getIdBy36()); } // 九小场所类型处理 if (!Strings.isBlank(placeExcel.getNineType())) { placeEntity.setIsNine(1); placeEntity.setNineType(Integer.parseInt(placeExcel.getNineType())); } // 网格绑定处理 importGridHandle(placeExcel,placeEntity); // 新增 save(placeEntity); // 保存详情 savePlaceExtAndTaskInfo(placeEntity); // 场所标签信息处理 if (!Strings.isBlank(placeExcel.getLabelCode())) { PlaceVO placeVO = new PlaceVO(); placeVO.setId(placeEntity.getId()); placeVO.setLabel(placeExcel.getLabelCode()); // 处理 placeLabelBind(placeVO); } // 房屋编号绑定处理 houseCodeBindHandle(placeEntity); }else { // 更新 Long userId = updateUser(placeExcel); // 插入场所 PlaceVO placeEntity = new PlaceVO(); placeEntity.setId(one.getId()); placeEntity.setHouseCode(placeExcel.getHouseCode()); placeEntity.setHouseCodeBinds(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()); placeEntity.setUpdateUser(AuthUtil.getUserId()); // 默认为未完善 placeEntity.setStatus(1); // 是否现场采集 1:是 2:否 placeEntity.setIsScene(1); // 来源 1:地址总表 2:国控采集 3:商超 placeEntity.setSource(1); // 九小场所类型处理 if (!Strings.isBlank(placeExcel.getNineType())) { placeEntity.setIsNine(1); placeEntity.setNineType(Integer.parseInt(placeExcel.getNineType())); } // 网格绑定处理 importGridHandle(placeExcel,placeEntity); // 更新 updateById(placeEntity); // 场所标签信息处理 if (!Strings.isBlank(placeExcel.getLabelCode())) { PlaceVO placeVO = new PlaceVO(); placeVO.setId(placeEntity.getId()); placeVO.setLabel(placeExcel.getLabelCode()); // 处理 placeLabelBind(placeVO); } } } } /** * 导入是网格数据绑定处理 * @param placeExcel * @param placeEntity */ private void importGridHandle(PlaceExcel placeExcel, PlaceVO placeEntity) { if (!Strings.isBlank(placeExcel.getCommunityName()) && !Strings.isBlank(placeExcel.getGridName())){ // 查询对应的网格信息 GridEntity gridEntity = gridService.getGridInfoByParam(placeExcel.getCommunityName(),placeExcel.getGridName()); if (null!=gridEntity){ // 设置场所范围 placeEntity.setGridId(gridEntity.getId()); placeEntity.setGridCode(gridEntity.getGridCode()); // 更新网格范围绑定 GridRangeEntity gridRangeEntity = new GridRangeEntity(); gridRangeEntity.setGridId(gridEntity.getId()); gridRangeEntity.setGridCode(gridEntity.getGridCode()); gridRangeEntity.setHouseCode(placeEntity.getHouseCode()); UpdateWrapper<GridRangeEntity> updateWrapper = new UpdateWrapper<>(); updateWrapper.eq("house_code",placeEntity.getHouseCode()); gridRangeService.update(gridRangeEntity,updateWrapper); } } } @@ -987,8 +1085,8 @@ if (!Strings.isBlank(placeExcel.getPhoneNumber()) && !Strings.isBlank(placeExcel.getName())) { PlaceVO placeVO = new PlaceVO(); placeVO.setPhone(placeExcel.getPhoneNumber()); placeVO.setUsername(placeExcel.getName()); placeVO.setPrincipal(placeExcel.getPhoneNumber()); placeVO.setPrincipalPhone(placeExcel.getName()); // 更新场所负责人 User user = bindUserHandle(placeVO); // 返回