From b3c6911c1e78563dc04998dd7bfb510130a9fcec Mon Sep 17 00:00:00 2001
From: huanghongfa <18228131219@163.com>
Date: 星期一, 01 二月 2021 16:37:52 +0800
Subject: [PATCH] auth

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java |   65 ++++++++++++++++++++++++--------
 1 files changed, 49 insertions(+), 16 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..694976f 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
@@ -50,6 +50,9 @@
         List<ComMngStructHouseVO> comMngStructHouseVOS = new ArrayList<>();
         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();
@@ -83,7 +86,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 +122,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 +135,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 +143,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 +185,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 +222,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 +245,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 +293,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 +323,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 +379,9 @@
                 }
             }
         }
+        batchhouseVO.setRuleConnector(roleConnector);
+        batchhouseVO.setRuleDoor(roleDoor);
+        batchhouseVO.setRuleFloor(roleFloor);
         this.batchSaveHouse(batchhouseVO);
         return R.ok();
     }
@@ -402,11 +428,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 +452,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 +465,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();

--
Gitblit v1.7.1