Browse Source

Merge remote-tracking branch 'origin/dev_ic_diaodong' into develop

dev
zxc 4 years ago
parent
commit
093bcf986e
  1. 4
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  2. 5
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java
  3. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java
  4. 35
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/IcHouseRedis.java
  5. 10
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java
  6. 24
      epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml
  7. 96
      epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.23__ic_user_transfer_and_change.sql

4
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java

@ -636,4 +636,8 @@ public class RedisKeys {
public static String getOrgTreeCacheKey(String agencyId) {
return rootPrefix.concat("org:temp:orgtree").concat(agencyId);
}
public static String getHouseInfoCacheKey(String houseId){
return rootPrefix.concat("house:").concat(houseId);
}
}

5
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java

@ -71,4 +71,9 @@ public class HouseInfoDTO implements Serializable {
* 楼的纬度
*/
private String buildingLatitude;
/**
* 小区名+楼栋名+单元名+房屋名
*/
private String allName;
}

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java

@ -59,6 +59,8 @@ public interface IcHouseDao extends BaseDao<IcHouseEntity> {
List<HouseInfoDTO> queryHouseInfo(@Param("houseIdList") Set<String> houseIdList);
HouseInfoDTO queryHouseInfoByHouseId(@Param("houseId") String houseId);
/**
* @Description 查询房屋信息
* @param idCard

35
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/IcHouseRedis.java

@ -17,9 +17,17 @@
package com.epmet.redis;
import cn.hutool.core.bean.BeanUtil;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.IcHouseDao;
import com.epmet.dto.result.HouseInfoDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.util.Map;
/**
* 房屋信息
@ -32,6 +40,9 @@ public class IcHouseRedis {
@Autowired
private RedisUtils redisUtils;
@Autowired
private IcHouseDao icHouseDao;
public void delete(Object[] ids) {
}
@ -44,4 +55,28 @@ public class IcHouseRedis {
return null;
}
/**
* @Description 往缓存放房屋信息
* @param houseId
* @param map
* @author zxc
* @date 2022/1/18 3:55 下午
*/
public void setHouseInfo(String houseId, Map<String, Object> map){
String key = RedisKeys.getHouseInfoCacheKey(houseId);
redisUtils.hMSet(key, map);
}
public HouseInfoDTO getHouseInfo(String houseId){
String key = RedisKeys.getHouseInfoCacheKey(houseId);
Map<String, Object> map = redisUtils.hGetAll(key);
if (!CollectionUtils.isEmpty(map)){
return ConvertUtils.mapToEntity(map,HouseInfoDTO.class);
}
HouseInfoDTO houseInfo = icHouseDao.queryHouseInfoByHouseId(houseId);
Map<String, Object> result = BeanUtil.beanToMap(houseInfo, false, true);
setHouseInfo(houseId,result);
return houseInfo;
}
}

10
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java

@ -1,6 +1,7 @@
package com.epmet.service.impl;
import cn.afterturn.easypoi.excel.entity.TemplateExportParams;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.epmet.commons.tools.constant.NumConstant;
@ -31,6 +32,7 @@ import com.epmet.enums.HouseRentFlagEnums;
import com.epmet.enums.HouseTypeEnums;
import com.epmet.excel.IcHouseExcel;
import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.redis.IcHouseRedis;
import com.epmet.service.HouseService;
import com.epmet.service.IcBuildingService;
import com.epmet.service.IcBuildingUnitService;
@ -69,6 +71,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver {
private IcHouseDao icHouseDao;
@Autowired
private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Autowired
private IcHouseRedis icHouseRedis;
@Override
@Transactional(rollbackFor = Exception.class)
@ -313,6 +317,10 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver {
if(org.apache.commons.collections4.CollectionUtils.isEmpty(houseIdList)){
return new ArrayList<>();
}
return icHouseDao.queryHouseInfo(houseIdList);
List<HouseInfoDTO> result = new ArrayList<>();
houseIdList.forEach(h -> {
result.add(icHouseRedis.getHouseInfo(h));
});
return result;
}
}

24
epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml

@ -300,4 +300,28 @@
and ih.id !=#{houseId}
</if>
</select>
<select id="queryHouseInfoByHouseId" resultType="com.epmet.dto.result.HouseInfoDTO">
SELECT
ih.ID as homeId,
IFNULL(n.ADDRESS,'') as neighborAddress,
ih.NEIGHBOR_HOOD_ID as neighborHoodId,
IFNULL(n.NEIGHBOR_HOOD_NAME,'') as neighborHoodName,
ih.BUILDING_ID as buildingId,
IFNULL(ib.BUILDING_NAME,'') as buildingName,
ih.BUILDING_UNIT_ID as buildingUnitId,
IFNULL(u.UNIT_NAME,'') as unitName,
IFNULL(ih.DOOR_NAME,'') as doorName,
ih.house_type,
IFNULL(ih.HOUSE_NAME,'') as HOUSE_NAME,
IFNULL(ib.LONGITUDE,'') as buildingLongitude,
IFNULL(ib.LATITUDE,'') as buildingLatitude,
concat(IFNULL(n.NEIGHBOR_HOOD_NAME,''),IFNULL(ib.BUILDING_NAME,''),IFNULL(u.UNIT_NAME,''),IFNULL(ih.HOUSE_NAME,'')) AS allName
FROM ic_house ih
left JOIN ic_neighbor_hood n ON ( ih.NEIGHBOR_HOOD_ID = n.id )
left JOIN ic_building ib ON ( ih.BUILDING_ID = ib.id )
left JOIN ic_building_unit u ON ( ih.BUILDING_UNIT_ID = u.ID )
WHERE
ih.DEL_FLAG = '0'
AND ih.ID = #{houseId}
</select>
</mapper>

96
epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.23__ic_user_transfer_and_change.sql

@ -0,0 +1,96 @@
ALTER TABLE `ic_resi_user`
ADD COLUMN `STATUS` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '用户状态【0:正常 1:转出】' AFTER `JTXX_REMAKES`;
ALTER TABLE `ic_resi_user`
DROP INDEX `customer_idcard_unique`;
CREATE TABLE `ic_user_transfer_record` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`IC_USER_ID` varchar(64) NOT NULL COMMENT '被调动人Id【ic_resi_user表id】',
`OPERATOR_ID` varchar(64) NOT NULL COMMENT '调动(工作)人员Id【customer_staff表userId】',
`IC_USER_NAME` varchar(64) NOT NULL COMMENT '被调动人名称【ic_resi_user表name】',
`OPERATOR_NAME` varchar(64) NOT NULL COMMENT '调动(工作)人员名称【customer_staff表real_name】',
`OLD_CUSTOMER_ID` varchar(64) NOT NULL COMMENT '调动前客户Id',
`NEW_CUSTOMER_ID` varchar(64) DEFAULT NULL COMMENT '调动后客户Id',
`OLD_AGENCY_ID` varchar(64) DEFAULT NULL COMMENT '调动前组织Id',
`NEW_AGENCY_ID` varchar(64) DEFAULT NULL COMMENT '调动后组织Id',
`OLD_AGENCY_NAME` varchar(64) DEFAULT NULL COMMENT '调动前组织名称',
`NEW_AGENCY_NAME` varchar(255) DEFAULT NULL COMMENT '调动后组织名称',
`OLD_GRID_ID` varchar(64) DEFAULT NULL COMMENT '调动前网格Id',
`NEW_GRID_ID` varchar(64) DEFAULT NULL COMMENT '调动后网格Id',
`OLD_GRID_NAME` varchar(255) DEFAULT NULL COMMENT '调动前网格名称',
`NEW_GRID_NAME` varchar(255) DEFAULT NULL COMMENT '调动后网格名称',
`OLD_NEIGHBOR_HOOD_ID` varchar(64) DEFAULT NULL COMMENT '调动前小区Id',
`NEW_NEIGHBOR_HOOD_ID` varchar(64) DEFAULT NULL COMMENT '调动后小区Id',
`OLD_NEIGHBOR_HOOD_NAME` varchar(255) DEFAULT NULL COMMENT '调动前小区名称',
`NEW_NEIGHBOR_HOOD_NAME` varchar(255) DEFAULT NULL COMMENT '调动后小区名称',
`OLD_BUILDING_ID` varchar(64) DEFAULT NULL COMMENT '调动前楼栋Id',
`NEW_BUILDING_ID` varchar(64) DEFAULT NULL COMMENT '调动后楼栋Id',
`OLD_BUILDING_NAME` varchar(255) DEFAULT NULL COMMENT '调动前楼栋名称',
`NEW_BUILDING_NAME` varchar(255) DEFAULT NULL COMMENT '调动后楼栋名称',
`OLD_BUILDING_UNIT_ID` varchar(64) DEFAULT NULL COMMENT '调动前单元Id',
`NEW_BUILDING_UNIT_ID` varchar(64) DEFAULT NULL COMMENT '调动后单元Id',
`OLD_BUILDING_UNIT_NAME` varchar(255) DEFAULT NULL COMMENT '调动前单元名称',
`NEW_BUILDING_UNIT_NAME` varchar(255) DEFAULT NULL COMMENT '调动后单元名称',
`OLD_HOUSE_ID` varchar(64) DEFAULT NULL COMMENT '调动前房屋Id',
`NEW_HOUSE_ID` varchar(64) DEFAULT NULL COMMENT '调动后房屋Id',
`OLD_HOUSE_NAME` varchar(255) DEFAULT NULL COMMENT '调动前房屋名称',
`NEW_HOUSE_NAME` varchar(255) DEFAULT NULL COMMENT '调动后房屋名称',
`TRANSFER_TIME` datetime NOT NULL COMMENT '调动时间',
`REMARK` varchar(512) DEFAULT NULL COMMENT '备注说明',
`DEL_FLAG` varchar(1) NOT NULL COMMENT '删除标识',
`REVISION` int(10) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='居民调动记录表';
CREATE TABLE `ic_user_change_record` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`IC_USER_TRANSFER_RECORD_ID` varchar(64) DEFAULT NULL COMMENT '调动表Id【只有调动记录此列才有值】',
`CUSTOMER_ID` varchar(64) DEFAULT NULL COMMENT '当前所属客户Id[迁出客户的此列没值]',
`OPERATOR_ID` varchar(64) NOT NULL COMMENT '操作人Id【customer_staff表userId】',
`IC_USER_ID` varchar(64) NOT NULL COMMENT '被操作人Id【ic_resi_user表id】',
`OPERATOR_NAME` varchar(64) NOT NULL COMMENT '操作人名称【customer_staff表real_name】',
`IC_USER_NAME` varchar(64) NOT NULL COMMENT '被操作人名称【ic_resi_user表name】',
`TYPE` varchar(64) NOT NULL COMMENT '操作类型【add:新增 category:类别 transfer:调动】',
`TYPE_NAME` varchar(64) NOT NULL COMMENT '操作类型名称【add:新增 category:类别 transfer:调动】',
`BEFORE_CHANGE_NAME` varchar(512) DEFAULT NULL COMMENT '变更前文字描述',
`AFTER_CHANGE_NAME` varchar(512) DEFAULT NULL COMMENT '变更后文字描述',
`CHANGE_TIME` datetime NOT NULL COMMENT '调整时间',
`REMARK` varchar(512) DEFAULT NULL COMMENT '备注说明',
`DEL_FLAG` varchar(1) NOT NULL COMMENT '删除标识',
`REVISION` int(10) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='居民变更记录表';
CREATE TABLE `ic_user_change_detailed` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id',
`IC_USER_CHANGE_RECORD_ID` varchar(64) NOT NULL COMMENT '变更记录表主键【ic_user_change_record.id】',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '组织Id',
`GRID_ID` varchar(64) NOT NULL COMMENT '网格Id',
`NEIGHBOR_HOOD_ID` varchar(64) NOT NULL COMMENT '小区Id',
`BUILDING_ID` varchar(64) NOT NULL COMMENT '楼栋Id',
`BUILDING_UNIT_ID` varchar(64) NOT NULL COMMENT '单元Id',
`HOUSE_ID` varchar(64) NOT NULL COMMENT '房屋Id',
`IC_USER_ID` varchar(64) NOT NULL COMMENT '变更人Id',
`TYPE` varchar(255) NOT NULL COMMENT '操作类型【add:新增 category:类别 in:迁入 out:迁出】',
`TYPE_NAME` varchar(255) NOT NULL COMMENT '操作类型名称【add:新增 category:类别 in:迁入 out:迁出】',
`FIELD_NAME` varchar(64) NOT NULL COMMENT '字段名【18类对应的ic_resi_user表字段名】',
`VALUE` int(3) NOT NULL COMMENT '当前类别的值',
`DEL_FLAG` varchar(1) NOT NULL COMMENT '删除标识',
`REVISION` int(10) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='变更明细表\r\n[一条变更记录对应多条人员类别数据]';
Loading…
Cancel
Save