From de91c84954157bb9f8b6d938cbe0b1b51fb6e65d Mon Sep 17 00:00:00 2001
From: CeDo <cedoogle@gmail.com>
Date: 星期五, 07 五月 2021 15:23:57 +0800
Subject: [PATCH] bugfixed:新增便民服务商家 报错
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java | 119 ++++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 92 insertions(+), 27 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java
index c0b8b88..692fef2 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java
@@ -3,11 +3,14 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.panzhihua.common.model.dtos.community.ExcelHouseDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.BatchhouseVO;
import com.panzhihua.common.model.vos.community.ComMngStructAreaVO;
import com.panzhihua.common.model.vos.community.ComMngStructHouseVO;
+import com.panzhihua.common.model.vos.user.CommunityUserInfoVO;
+import com.panzhihua.service_community.dao.ComMngStructAreaDAO;
import com.panzhihua.service_community.dao.ComMngStructHouseDAO;
import com.panzhihua.service_community.dao.ComMngStructHouseUserDAO;
import com.panzhihua.service_community.model.dos.ComMngStructAreaDO;
@@ -23,6 +26,7 @@
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -38,7 +42,8 @@
private ComMngStructHouseDAO comMngStructHouseDAO;
@Resource
private ComMngStructHouseUserDAO comMngStructHouseUserDAO;
-
+ @Resource
+ private ComMngStructAreaDAO comMngStructAreaDAO;
/**
* 房屋信息
*
@@ -48,16 +53,36 @@
@Override
public R detailHouse(Long userId) {
List<ComMngStructHouseVO> comMngStructHouseVOS = new ArrayList<>();
- List<ComMngStructHouseUserDO> comMngStructHouseUserDOS = comMngStructHouseUserDAO.selectList(new QueryWrapper<ComMngStructHouseUserDO>().lambda().eq(ComMngStructHouseUserDO::getUserId, userId));
- if (!ObjectUtils.isEmpty(comMngStructHouseUserDOS)) {
- comMngStructHouseUserDOS.forEach(comMngStructHouseUserDO -> {
- ComMngStructHouseDO comMngStructHouseDO = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, comMngStructHouseUserDO.getHouseCode()));
- ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO();
- BeanUtils.copyProperties(comMngStructHouseDO, comMngStructHouseVO);
- comMngStructHouseVO.setIdentity(comMngStructHouseUserDO.getIdentity());
- comMngStructHouseVOS.add(comMngStructHouseVO);
- });
- return R.ok(comMngStructHouseVOS);
+ if ( userId< 100000000l) {
+ List<ComMngStructHouseUserDO> comMngStructHouseUserDOS = comMngStructHouseUserDAO.selectList(new QueryWrapper<ComMngStructHouseUserDO>().lambda().eq(ComMngStructHouseUserDO::getUserId, userId));
+ if (!ObjectUtils.isEmpty(comMngStructHouseUserDOS)) {
+ String areaCode = comMngStructHouseUserDOS.get(0).getAreaCode();
+ ComMngStructHouseDO comMngStructHouseDO1 = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, areaCode));
+ String houseName = comMngStructHouseDO1.getHouseName();
+ comMngStructHouseUserDOS.forEach(comMngStructHouseUserDO -> {
+ ComMngStructHouseDO comMngStructHouseDO = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, comMngStructHouseUserDO.getHouseCode()));
+ ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO();
+ BeanUtils.copyProperties(comMngStructHouseDO, comMngStructHouseVO);
+ comMngStructHouseVO.setIdentity(comMngStructHouseUserDO.getIdentity());
+ comMngStructHouseVOS.add(comMngStructHouseVO);
+ });
+ return R.ok(comMngStructHouseVOS);
+ }
+ }else{
+ userId=userId-100000000l;
+// 查导入人员的房屋
+ Map<String,Object> map=comMngStructHouseUserDAO.selectHouseCode(userId);
+ String houseCode = map.get("house_code").toString();
+ String isRent = map.get("is_rent").toString();
+ ComMngStructHouseDO comMngStructHouseDO = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, houseCode));
+ ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO();
+ BeanUtils.copyProperties(comMngStructHouseDO, comMngStructHouseVO);
+ if (isRent.equals("1")) {
+ comMngStructHouseVO.setIdentity(1);
+ }else{
+ comMngStructHouseVO.setIdentity(2);
+ }
+ comMngStructHouseVOS.add(comMngStructHouseVO);
}
return R.ok(comMngStructHouseVOS);
}
@@ -83,7 +108,8 @@
* 批量添加地址功能提取出一个公共方法
* @param batchhouseVO 批量添加小区、同级(楼栋、单元、楼层、房间)
*/
- private void batchSaveHouse(BatchhouseVO batchhouseVO) {
+ @Transactional(rollbackFor = Exception.class)
+ void batchSaveHouse(BatchhouseVO batchhouseVO) {
String areaCode = batchhouseVO.getAreaCode();
ComMngStructHouseDO comMngStructHouseDO = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, areaCode));
String areaName = comMngStructHouseDO.getHouseName();//小区地址
@@ -118,6 +144,7 @@
comMngStructHouseDO1.setType(2);
comMngStructHouseDOList.add(comMngStructHouseDO1);
}
+
for (int m = unitBegin; m <= unitEnd; m++) {//单元
ComMngStructHouseDO comMngStructHouseDO2 = new ComMngStructHouseDO();
if (unitBegin==unitEnd&&null!=type&&type==4) {
@@ -130,6 +157,7 @@
comMngStructHouseDOList.add(comMngStructHouseDO2);
}
int num = 0;//门牌累加时使用
+
for (int k = floorBegin; k <= floorEnd; k++) {//楼层
ComMngStructHouseDO comMngStructHouseDO3 = new ComMngStructHouseDO();
if (floorBegin==floorEnd&&null!=type&&type==5) {
@@ -137,10 +165,11 @@
} else {
comMngStructHouseDO3.setType(4);
comMngStructHouseDO3.setParentCode(comMngStructHouseDO2.getHouseCode());
- comMngStructHouseDO3.setHouseName(comMngStructHouseDO2.getHouseName() + "层");
+ comMngStructHouseDO3.setHouseName(comMngStructHouseDO2.getHouseName() +k+ "层");
comMngStructHouseDO3.setHouseCode(comMngStructHouseDO2.getHouseCode() + (floorCode + k));
comMngStructHouseDOList.add(comMngStructHouseDO3);
}
+
for (int h = doorBegin; h <= doorEnd; h++) {//门牌
num++;
ComMngStructHouseDO comMngStructHouseDO4 = new ComMngStructHouseDO();
@@ -178,11 +207,11 @@
if (isAccumulation == 1) {//累加
doorName = "0" + num;
} else {
- doorName = "" + h;
+ doorName = "0" + h;
}
} else {
if (isAccumulation == 1) {//累加
- doorName = "0" + num;
+ doorName = "" + num;
} else {
doorName = "" + h;
}
@@ -215,12 +244,17 @@
comMngStructHouseDO4.setParentCode(comMngStructHouseDO3.getHouseCode());
comMngStructHouseDOList.add(comMngStructHouseDO4);
}
+
}
}
}
boolean b = this.saveBatch(comMngStructHouseDOList);
if (b) {
- log.info("批量新增房屋地址数量【{}】", comMngStructHouseDOList.size());
+ log.info("batchhouse----楼栋数一共【{}】",buildingEnd-buildingBegin+1);
+ log.info("batchhouse----单元数一共【{}】",(unitEnd-unitBegin+1)*(buildingEnd-buildingBegin+1));
+ log.info("batchhouse----楼层数一共【{}】",(unitEnd-unitBegin+1)*(buildingEnd-buildingBegin+1)*(floorEnd-floorBegin+1));
+ log.info("batchhouse----房间数量一共【{}】",(unitEnd-unitBegin+1)*(buildingEnd-buildingBegin+1)*(floorEnd-floorBegin+1)*(doorEnd-doorBegin+1));
+ log.info("batchhouse----批量新增房屋地址数量【{}】", comMngStructHouseDOList.size());
}
}
@@ -233,10 +267,18 @@
public R addHouseArea(ComMngStructAreaVO comMngStructAreaVO) {
ComMngStructHouseDO comMngStructHouseDO = new ComMngStructHouseDO();
comMngStructHouseDO.setHouseCode(comMngStructAreaVO.getAreaCode());
- comMngStructHouseDO.setHouseName(comMngStructAreaVO.getAreaName());
+ comMngStructHouseDO.setHouseName(comMngStructAreaVO.getAddressDetail());
comMngStructHouseDO.setType(1);
comMngStructHouseDO.setParentCode("0");
- int insert = comMngStructHouseDAO.insert(comMngStructHouseDO);
+ int insert = 0;
+ try {
+ insert = comMngStructHouseDAO.insert(comMngStructHouseDO);
+ } catch (Exception e) {
+ log.error("新增地址错误【{}】",e.getMessage());
+ if (e.getMessage().contains("unique_house_name")) {
+ return R.fail("小区已经存在");
+ }
+ }
if (insert > 0) {
return R.ok();
}
@@ -273,16 +315,16 @@
List<ComMngStructHouseVO> comMngStructHouseVOS = new ArrayList<>();
List<ComMngStructHouseDO> comMngStructHouseDOList = comMngStructHouseDAO.selectList(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getParentCode, houseCode));
if (!ObjectUtils.isEmpty(comMngStructHouseDOList)) {
- ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO();
comMngStructHouseDOList.forEach(comMngStructHouseDO -> {
+ ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO();
int type = comMngStructHouseDO.getType().intValue();
String houseCode1 = comMngStructHouseDO.getHouseCode();
BeanUtils.copyProperties(comMngStructHouseDO, comMngStructHouseVO);
if (type == 5) {
List<LoginUserInfoVO> loginUserInfoVOS = comMngStructHouseUserDAO.selectListHouseUser(houseCode1);
if (!ObjectUtils.isEmpty(loginUserInfoVOS)) {
- String names = loginUserInfoVOS.stream().map(loginUserInfoVO -> loginUserInfoVO.getName()).collect(Collectors.joining());
- String phones = loginUserInfoVOS.stream().map(loginUserInfoVO -> loginUserInfoVO.getPhone()).collect(Collectors.joining());
+ String names = loginUserInfoVOS.stream().map(loginUserInfoVO -> loginUserInfoVO.getName()).collect(Collectors.joining(","));
+ String phones = loginUserInfoVOS.stream().map(loginUserInfoVO -> loginUserInfoVO.getPhone()).collect(Collectors.joining(","));
comMngStructHouseVO.setNames(names);
comMngStructHouseVO.setPhones(phones);
}
@@ -303,6 +345,9 @@
*/
@Override
public R addHouse(BatchhouseVO batchhouseVO, ComMngStructAreaDO comMngStructAreaDO) {
+ String roleConnector = comMngStructAreaDO.getRoleConnector();
+ String roleDoor = comMngStructAreaDO.getRoleDoor();
+ String roleFloor = comMngStructAreaDO.getRoleFloor();
int type = batchhouseVO.getType().intValue();
String parentCode1 = batchhouseVO.getParentCode();
List<ComMngStructHouseDO> comMngStructHouseDOList = comMngStructHouseDAO.selectList(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getType, type).eq(ComMngStructHouseDO::getParentCode, parentCode1));
@@ -356,6 +401,9 @@
}
}
}
+ batchhouseVO.setRuleConnector(roleConnector);
+ batchhouseVO.setRuleDoor(roleDoor);
+ batchhouseVO.setRuleFloor(roleFloor);
this.batchSaveHouse(batchhouseVO);
return R.ok();
}
@@ -402,11 +450,14 @@
@Override
public R putVolunteerPhone(String parentCode) {
List<ComMngStructHouseVO> comMngStructHouseVOS = new ArrayList<>();
+ ComMngStructHouseDO comMngStructHouseDO1 = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, parentCode));
+ String houseName = comMngStructHouseDO1.getHouseName();
List<ComMngStructHouseDO> comMngStructHouseDOList = comMngStructHouseDAO.selectList(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getParentCode, parentCode));
if (!ObjectUtils.isEmpty(comMngStructHouseDOList)) {
- ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO();
comMngStructHouseDOList.forEach(comMngStructHouseDO -> {
+ ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO();
BeanUtils.copyProperties(comMngStructHouseDO, comMngStructHouseVO);
+ comMngStructHouseVO.setHouseShortName(comMngStructHouseVO.getHouseName().replaceAll(houseName,""));
comMngStructHouseVOS.add(comMngStructHouseVO);
});
}
@@ -423,12 +474,12 @@
@Transactional(rollbackFor = Exception.class)
public R addHouses(ComMngStructHouseVO comMngStructHouseVO) {
String houseCode = comMngStructHouseVO.getHouseCode();
- Integer states1 = comMngStructHouseVO.getStates();
+ Integer states1 = comMngStructHouseVO.getState();
ComMngStructHouseDO comMngStructHouseDO1 = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, houseCode));
if (ObjectUtils.isEmpty(comMngStructHouseDO1)) {
return R.fail("房屋不存在");
}
- Integer states = comMngStructHouseDO1.getStates();
+ Integer states = comMngStructHouseDO1.getState();
if (null != states && 0 != states.intValue()) {
if (states1.intValue() != states.intValue()) {
return R.fail("房屋已经被绑定了,请通过意见反馈联系后台处理");
@@ -436,17 +487,21 @@
}
ComMngStructHouseDO comMngStructHouseDO = new ComMngStructHouseDO();
comMngStructHouseDO.setSquare(comMngStructHouseVO.getSquare());
- comMngStructHouseDO.setStates(states1);
+ comMngStructHouseDO.setState(states1);
comMngStructHouseDO.setId(comMngStructHouseDO1.getId());
int update = comMngStructHouseDAO.updateById(comMngStructHouseDO);
if (update == 0) {
return R.fail("修改房屋面积、状态失败");
}
+ ComMngStructHouseUserDO comMngStructHouseUserDO1 = comMngStructHouseUserDAO.selectOne(new QueryWrapper<ComMngStructHouseUserDO>().lambda().eq(ComMngStructHouseUserDO::getUserId, comMngStructHouseVO.getUserId()).eq(ComMngStructHouseUserDO::getHouseCode, comMngStructHouseVO.getHouseCode()));
+ if (!ObjectUtils.isEmpty(comMngStructHouseUserDO1)) {
+ return R.ok();
+ }
ComMngStructHouseUserDO comMngStructHouseUserDO = new ComMngStructHouseUserDO();
comMngStructHouseUserDO.setUserId(comMngStructHouseVO.getUserId());
comMngStructHouseUserDO.setIdentity(comMngStructHouseVO.getIdentity());
- ComMngStructHouseDO comMngStructHouseDO2 = comMngStructHouseDAO.selectById(comMngStructHouseVO.getAreaId());
- comMngStructHouseUserDO.setAreaCode(comMngStructHouseDO2.getHouseCode());
+ comMngStructHouseUserDO.setAreaCode(comMngStructHouseVO.getAreaCode());
+ comMngStructHouseUserDO.setHouseCode(comMngStructHouseVO.getHouseCode());
int insert = comMngStructHouseUserDAO.insert(comMngStructHouseUserDO);
if (insert > 0) {
return R.ok();
@@ -454,5 +509,15 @@
throw new RuntimeException("绑定房屋和人员关系失败");
}
+ @Override
+ public R houseExport(Long areaId) {
+ ComMngStructAreaDO comMngStructAreaDO = comMngStructAreaDAO.selectById(areaId);
+ if (ObjectUtils.isEmpty(comMngStructAreaDO)) {
+ return R.fail("小区不存在");
+ }
+ List<ExcelHouseDTO> houseDTOS = comMngStructHouseDAO.houseExport(comMngStructAreaDO.getAreaCode());
+ return R.ok(houseDTOS);
+ }
+
}
--
Gitblit v1.7.1