dingxin 5 年之前
父節點
當前提交
c630cb6af4

+ 7
- 0
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java 查看文件

@@ -473,4 +473,11 @@ public class TaUserController extends BaseController {
473 473
         }
474 474
         return responseBean;
475 475
     }
476
+
477
+    // 树形菜单
478
+    @RequestMapping(value="/center/taUser/city/tree",method= RequestMethod.GET)
479
+    public ResponseBean cityTree(){
480
+        ResponseBean taUser = iTaUserService.cityTree();
481
+        return taUser;
482
+    }
476 483
 }

+ 18
- 5
src/main/java/com/huiju/estateagents/center/taUser/entity/TaUser.java 查看文件

@@ -3,10 +3,7 @@ package com.huiju.estateagents.center.taUser.entity;
3 3
 import com.baomidou.mybatisplus.annotation.IdType;
4 4
 import com.baomidou.mybatisplus.annotation.TableField;
5 5
 import com.baomidou.mybatisplus.annotation.TableId;
6
-import com.huiju.estateagents.entity.SysButtonInMenu;
7
-import com.huiju.estateagents.entity.SysMenu;
8
-import com.huiju.estateagents.entity.TaMiniapp;
9
-import com.huiju.estateagents.entity.TaRole;
6
+import com.huiju.estateagents.entity.*;
10 7
 import lombok.Data;
11 8
 import lombok.EqualsAndHashCode;
12 9
 import lombok.experimental.Accessors;
@@ -166,6 +163,22 @@ public class TaUser implements Serializable {
166 163
     /**
167 164
      * ta_org/orgNum楼盘最大数
168 165
      */
169
-    @TableField(exist = false)
166
+  @TableField(exist = false)
170 167
     private int orgNum;
168
+
169
+    // 所有省份城市
170
+    @TableField(exist = false)
171
+    List<TdCity> tdCityList;
172
+
173
+    /**
174
+     * 前台传值城市
175
+     */
176
+    @TableField(exist = false)
177
+    private ArrayList<Integer> selectCityTree;
178
+
179
+    /**
180
+     * 城市ID
181
+     */
182
+    @TableField(exist = false)
183
+    private Integer cityId;
171 184
 }

+ 7
- 0
src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserService.java 查看文件

@@ -2,6 +2,7 @@ package com.huiju.estateagents.center.taUser.service;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.metadata.IPage;
4 4
 import com.baomidou.mybatisplus.extension.service.IService;
5
+import com.huiju.estateagents.base.ResponseBean;
5 6
 import com.huiju.estateagents.center.taUser.entity.TaTags;
6 7
 import com.huiju.estateagents.center.taUser.entity.TaUser;
7 8
 
@@ -35,4 +36,10 @@ public interface ITaUserService extends IService<TaUser> {
35 36
     TaUser addAdminUser(TaUser taUser) throws Exception;
36 37
     
37 38
     TaUser updateAdminUser(TaUser taUser) throws Exception;
39
+
40
+    /**
41
+     * 查询所有城市
42
+     * @return
43
+     */
44
+    ResponseBean cityTree();
38 45
 }

+ 64
- 3
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserServiceImpl.java 查看文件

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
+import com.huiju.estateagents.base.ResponseBean;
7 8
 import com.huiju.estateagents.center.taUser.entity.TaTagUser;
8 9
 import com.huiju.estateagents.center.taUser.entity.TaTags;
9 10
 import com.huiju.estateagents.center.taUser.entity.TaUser;
@@ -24,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
24 25
 import org.springframework.stereotype.Service;
25 26
 
26 27
 import java.time.LocalDateTime;
28
+import java.util.ArrayList;
27 29
 import java.util.List;
28 30
 import java.util.Map;
29 31
 import java.util.stream.Collectors;
@@ -71,6 +73,12 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
71 73
 
72 74
 	@Autowired
73 75
 	private ITaBuildingReportService iTaBuildingReportService;
76
+
77
+	@Autowired
78
+    private  TdCityMapper tdCityMapper;
79
+
80
+	@Autowired
81
+	private  TaOrgCityMapper taOrgCityMapper;
74 82
 	
75 83
 	@Override
76 84
 	public IPage<Map<String,Object>> getPageList(IPage pg) {
@@ -104,11 +112,15 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
104 112
 		taOrg.setName(taUser.getOrgName());
105 113
 		taOrg.setWaterMark(taUser.getWaterMark());
106 114
 		taOrg.setCreateDate(LocalDateTime.now());
107
-		taOrg.setOrgNum(taUser.getOrgNum());
115
+		taOrg.setBuildingNum(taUser.getOrgNum());
116
+		taOrg.setDefaultCityId(taUser.getCityId());
108 117
 		if (taOrgMapper.insert(taOrg) < 1) {
109 118
 			throw new Exception("生成用户公司信息失败");
110 119
 		}
111 120
 
121
+		// 维护当前城市所在城市
122
+		addAndupdate(taUser.getSelectCityTree(),false,taOrg.getOrgId());
123
+
112 124
 		// 插入积分, 默认全部 1 积分
113 125
 		List<TdPointsRules> pointsRules = tdPointsRulesMapper.getTPLRules();
114 126
 		if (pointsRules != null) {
@@ -151,6 +163,32 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
151 163
 		return taUser;
152 164
 	}
153 165
 
166
+	// 维护公司所在城市
167
+	public void addAndupdate(ArrayList<Integer> selectCityTree,boolean isA,Integer orgid){
168
+
169
+			QueryWrapper<TdCity> tdCityQuery= new QueryWrapper<>();
170
+			tdCityQuery.eq("leveltype",1);
171
+			 List<TdCity> tdCityList= tdCityMapper.selectList(tdCityQuery);
172
+
173
+		// isA=true删除所有城市重新添加
174
+		if (isA == true){
175
+			for(Integer city:selectCityTree) {
176
+				taOrgCityMapper.deleteById(city);
177
+			}
178
+		}
179
+			 // 对比现在的城市ID
180
+			 for(Integer city:selectCityTree){
181
+				for (TdCity tdCity : tdCityList){
182
+					if (city.equals(tdCity.getId())){
183
+						TaOrgCity  taOrgCity = new TaOrgCity();
184
+						taOrgCity.setId(city).setName(tdCity.getName()).setOrgId(orgid).setStatus(1).setParentid(tdCity.getParentid());
185
+					}
186
+
187
+				}
188
+			 }
189
+
190
+	}
191
+
154 192
 	@Override
155 193
 	public TaUser getInfoWithOrg(Integer id) {
156 194
 		TaUser taUser = this.getById(id);
@@ -162,7 +200,8 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
162 200
 		if (null != taOrg) {
163 201
 			taUser.setOrgName(taOrg.getName());
164 202
 			taUser.setWaterMark(taOrg.getWaterMark());
165
-			taUser.setOrgNum(taOrg.getOrgNum());
203
+			taUser.setOrgNum(taOrg.getBuildingNum());
204
+			taOrg.setDefaultCityId(taUser.getCityId());
166 205
 		}
167 206
 
168 207
 		QueryWrapper<TaMiniapp> wrapper = new QueryWrapper<>();
@@ -186,11 +225,13 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
186 225
 		if (null != taOrg) {
187 226
 			taOrg.setName(taUser.getOrgName());
188 227
 			taOrg.setWaterMark(taUser.getWaterMark());
189
-			taOrg.setOrgNum(taUser.getOrgNum());
228
+			taOrg.setBuildingNum(taUser.getOrgNum());
190 229
 
191 230
 			if (taOrgMapper.updateById(taOrg) < 1) {
192 231
 				throw new Exception("更新用户公司信息失败");
193 232
 			}
233
+
234
+			addAndupdate(taUser.getSelectCityTree(),true,taOrg.getOrgId());
194 235
 		}
195 236
 		
196 237
 		taUser.setLoginPassword(null);
@@ -367,4 +408,24 @@ public class TaUserServiceImpl extends ServiceImpl<TaUserMapper, TaUser> impleme
367 408
 		
368 409
 		return taUser;
369 410
 	}
411
+
412
+    @Override
413
+    public ResponseBean cityTree() {
414
+	   ResponseBean responseBean = new ResponseBean<>();
415
+	    // 省份
416
+        TaUser taUser = new TaUser();
417
+	    QueryWrapper<TdCity> tdCityQueryWrapper= new  QueryWrapper<>();
418
+        tdCityQueryWrapper.eq("leveltype",1);
419
+        List<TdCity> tdCityList= tdCityMapper.selectList(tdCityQueryWrapper);
420
+        taUser.setTdCityList(tdCityList);
421
+        for (TdCity tdCity: tdCityList){
422
+            // 根据parentid查询城市
423
+            QueryWrapper<TdCity> tdCityQuery= new  QueryWrapper<>();
424
+            tdCityQuery.eq("parentid",tdCity.getId());
425
+            List<TdCity> city= tdCityMapper.selectList(tdCityQuery);
426
+            tdCity.setChildren(city);
427
+        }
428
+        responseBean.addSuccess(taUser);
429
+        return responseBean;
430
+    }
370 431
 }

+ 6
- 1
src/main/java/com/huiju/estateagents/entity/TaOrg.java 查看文件

@@ -60,5 +60,10 @@ public class TaOrg implements Serializable {
60 60
     /**
61 61
      * 最大数
62 62
      */
63
-    private int orgNum;
63
+    private int buildingNum;
64
+
65
+    /**
66
+     * 默认城市
67
+     */
68
+    private Integer defaultCityId;
64 69
 }

+ 4
- 0
src/main/java/com/huiju/estateagents/entity/TdCity.java 查看文件

@@ -1,6 +1,7 @@
1 1
 package com.huiju.estateagents.entity;
2 2
 
3 3
 import java.io.Serializable;
4
+import java.util.List;
4 5
 
5 6
 import com.baomidou.mybatisplus.annotation.IdType;
6 7
 import com.baomidou.mybatisplus.annotation.TableField;
@@ -77,5 +78,8 @@ public class TdCity implements Serializable {
77 78
     @TableField(exist = false)
78 79
     private String initial;
79 80
 
81
+    // 父节点的子类
82
+    @TableField(exist = false)
83
+    private List<TdCity> children;
80 84
 
81 85
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java 查看文件

@@ -300,7 +300,7 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
300 300
         taBuildingQuery.eq("org_id",orgId);
301 301
         taBuildingQuery.gt("status",-1);
302 302
         int orgNum= taBuildingMapper.selectCount(taBuildingQuery);
303
-        if (orgNum >= taOrg.getOrgNum()){
303
+        if (orgNum >= taOrg.getBuildingNum()){
304 304
             return ResponseBean.error("楼盘已超过最大限制", ResponseBean.ERROR_UNAVAILABLE);
305 305
         }
306 306