Bladeren bron

* 新需求

顾绍勇 5 jaren geleden
bovenliggende
commit
cd9292662a

+ 1
- 1
src/main/java/com/huiju/estateagents/controller/TaBuildingController.java Bestand weergeven

368
             return ResponseBean.error("当前账户信息异常, 清除缓存重试", ResponseBean.ERROR_UNAVAILABLE);
368
             return ResponseBean.error("当前账户信息异常, 清除缓存重试", ResponseBean.ERROR_UNAVAILABLE);
369
         }
369
         }
370
         TaPerson person = persons.get(0);
370
         TaPerson person = persons.get(0);
371
-        return taBuildingService.buildingAllSelectId(id, person.getPersonId(), orgId);
371
+        return taBuildingService.buildingAllSelectId(id, person, orgId);
372
     }
372
     }
373
 
373
 
374
     /**
374
     /**

+ 8
- 19
src/main/java/com/huiju/estateagents/controller/TaRaiseController.java Bestand weergeven

154
             taRaise.setStatus(taSalesBatch.getStatus());
154
             taRaise.setStatus(taSalesBatch.getStatus());
155
             taRaise.setCreateDate(LocalDateTime.now());
155
             taRaise.setCreateDate(LocalDateTime.now());
156
             if (iTaRaiseService.save(taRaise)) {
156
             if (iTaRaiseService.save(taRaise)) {
157
-
158
                 // 为邀请制,添加认筹被邀请清单
157
                 // 为邀请制,添加认筹被邀请清单
159
                 if (CommConstant.STATUS_NORMAL == taRaise.getIsInvite()) {
158
                 if (CommConstant.STATUS_NORMAL == taRaise.getIsInvite()) {
160
-                    TaRaiseInvite taRaiseInvite = new TaRaiseInvite();
161
-                    taRaiseInvite.setOrgId(orgId);
162
-                    taRaiseInvite.setRaiseId(taRaise.getRaiseId());
163
-                    taRaiseInvite.setBuildingId(taRaise.getBuildingId());
164
-                    taRaiseInvite.setSalesBatchId(taSalesBatch.getSalesBatchId());
165
-                    taRaiseInvite.setCreateDate(LocalDateTime.now());
166
-                    List<TaRaiseInvite> taRaiseInviteList = new ArrayList<>();
167
-                    String[] inviteTelArr = StringUtils.isEmpty(taRaise.getInviteTel()) ?
168
-                            new String[]{} : taRaise.getInviteTel().replace(",", ",").split(",");
169
-                    for (String inviteTel : inviteTelArr) {
170
-                        taRaiseInvite.setInviteTel(inviteTel);
171
-                        taRaiseInviteList.add(taRaiseInvite);
172
-                    }
173
-                    iTaRaiseInviteService.saveBatch(taRaiseInviteList);
159
+                    iTaRaiseService.saveOrUpdateInvite(taRaise, getOrgId(request), true);
174
                 }
160
                 }
175
-
176
                 responseBean.addSuccess(taRaise);
161
                 responseBean.addSuccess(taRaise);
177
             } else {
162
             } else {
178
                 responseBean.addError("fail");
163
                 responseBean.addError("fail");
179
             }
164
             }
180
         } catch (Exception e) {
165
         } catch (Exception e) {
181
-            e.printStackTrace();
182
-            logger.error("taRaiseAdd -=- {}", e.toString());
166
+            logger.error("taRaiseAdd -=- {}", e);
183
             responseBean.addError(e.getMessage());
167
             responseBean.addError(e.getMessage());
184
         }
168
         }
185
         return responseBean;
169
         return responseBean;
240
      */
224
      */
241
     @RequestMapping(value = "/admin/taRaise/{id}", method = RequestMethod.PUT)
225
     @RequestMapping(value = "/admin/taRaise/{id}", method = RequestMethod.PUT)
242
     public ResponseBean taRaiseUpdate(@PathVariable Integer id,
226
     public ResponseBean taRaiseUpdate(@PathVariable Integer id,
243
-                                      @RequestBody TaRaise taRaise) {
227
+                                      @RequestBody TaRaise taRaise,
228
+                                      HttpServletRequest request) {
244
         ResponseBean responseBean = new ResponseBean();
229
         ResponseBean responseBean = new ResponseBean();
245
         try {
230
         try {
246
             Integer raisePrice = taRaise.getRaisePrice();
231
             Integer raisePrice = taRaise.getRaisePrice();
252
             taRaise.setRaiseId(id);
237
             taRaise.setRaiseId(id);
253
             taRaise.setRaisePrice(taRaise.getRaisePrice() != null ? taRaise.getRaisePrice() : null);
238
             taRaise.setRaisePrice(taRaise.getRaisePrice() != null ? taRaise.getRaisePrice() : null);
254
             if (iTaRaiseService.updateById(taRaise)) {
239
             if (iTaRaiseService.updateById(taRaise)) {
240
+                // 为邀请制,添加认筹被邀请清单
241
+                if (CommConstant.STATUS_NORMAL == taRaise.getIsInvite()) {
242
+                    iTaRaiseService.saveOrUpdateInvite(taRaise, getOrgId(request), false);
243
+                }
255
                 responseBean.addSuccess(taRaise);
244
                 responseBean.addSuccess(taRaise);
256
             } else {
245
             } else {
257
                 responseBean.addError("fail");
246
                 responseBean.addError("fail");

+ 2
- 1
src/main/java/com/huiju/estateagents/service/ITaBuildingService.java Bestand weergeven

3
 import com.huiju.estateagents.base.ResponseBean;
3
 import com.huiju.estateagents.base.ResponseBean;
4
 import com.huiju.estateagents.entity.TaBuilding;
4
 import com.huiju.estateagents.entity.TaBuilding;
5
 import com.baomidou.mybatisplus.extension.service.IService;
5
 import com.baomidou.mybatisplus.extension.service.IService;
6
+import com.huiju.estateagents.entity.TaPerson;
6
 import com.huiju.estateagents.entity.TaPersonBuilding;
7
 import com.huiju.estateagents.entity.TaPersonBuilding;
7
 
8
 
8
 import java.time.LocalDateTime;
9
 import java.time.LocalDateTime;
46
      * @param id
47
      * @param id
47
      * @return
48
      * @return
48
      */
49
      */
49
-    ResponseBean buildingAllSelectId(String id,String personId, Integer orgId);
50
+    ResponseBean buildingAllSelectId(String id, TaPerson person, Integer orgId);
50
 
51
 
51
 
52
 
52
     /**
53
     /**

+ 10
- 2
src/main/java/com/huiju/estateagents/service/ITaRaiseService.java Bestand weergeven

5
 import com.huiju.estateagents.entity.TaPersonBuilding;
5
 import com.huiju.estateagents.entity.TaPersonBuilding;
6
 import com.huiju.estateagents.entity.TaRaise;
6
 import com.huiju.estateagents.entity.TaRaise;
7
 
7
 
8
-import javax.servlet.http.HttpServletRequest;
9
 import java.util.List;
8
 import java.util.List;
10
 
9
 
11
 /**
10
 /**
49
     ResponseBean getRaiseById(Integer id, Integer orgId);
48
     ResponseBean getRaiseById(Integer id, Integer orgId);
50
 
49
 
51
     /**
50
     /**
52
-     *
53
      * @param raiseId
51
      * @param raiseId
54
      * @param raiseRecordId
52
      * @param raiseRecordId
55
      * @param salesBatchId
53
      * @param salesBatchId
56
      * @return
54
      * @return
57
      */
55
      */
58
     TaRaise getRaiseProfile(Integer raiseId, Integer raiseRecordId, Integer salesBatchId);
56
     TaRaise getRaiseProfile(Integer raiseId, Integer raiseRecordId, Integer salesBatchId);
57
+
58
+    /**
59
+     * 新增或添加被邀请人表
60
+     *
61
+     * @param taRaise
62
+     * @param orgId
63
+     * @param isAdd   是否新增 1是 0否,为新增则直接保存 不用校验是否已经添加过该邀请手机号
64
+     * @return
65
+     */
66
+    Boolean saveOrUpdateInvite(TaRaise taRaise, Integer orgId, Boolean isAdd);
59
 }
67
 }

+ 34
- 4
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java Bestand weergeven

117
     @Autowired
117
     @Autowired
118
     private TaPersonBuildingMapper taPersonBuildingMapper;
118
     private TaPersonBuildingMapper taPersonBuildingMapper;
119
 
119
 
120
+    @Autowired
121
+    private ITaRaiseInviteService iTaRaiseInviteService;
122
+
123
+    @Autowired
124
+    private ITaPersonService iTaPersonService;
125
+
120
     @Override
126
     @Override
121
     public ResponseBean buildingList(Integer pageNum, Integer pageSize, String name, String code, LocalDateTime startDate, String buildingStatus, String marketStatus, Integer cityId, Integer isMain, Integer orgId, List<TaPersonBuilding> taPersonBuildingList) {
127
     public ResponseBean buildingList(Integer pageNum, Integer pageSize, String name, String code, LocalDateTime startDate, String buildingStatus, String marketStatus, Integer cityId, Integer isMain, Integer orgId, List<TaPersonBuilding> taPersonBuildingList) {
122
         Page<TaBuilding> page = new Page<>();
128
         Page<TaBuilding> page = new Page<>();
221
     }
227
     }
222
 
228
 
223
     @Override
229
     @Override
224
-    public ResponseBean buildingAllSelectId(String id, String personId, Integer orgId) {
230
+    public ResponseBean buildingAllSelectId(String id, TaPerson person, Integer orgId) {
225
         // 查询基础信息
231
         // 查询基础信息
226
         QueryWrapper<TaBuilding> buildingtWrapper = new QueryWrapper<>();
232
         QueryWrapper<TaBuilding> buildingtWrapper = new QueryWrapper<>();
227
         buildingtWrapper.lambda().gt(TaBuilding::getStatus, -1);
233
         buildingtWrapper.lambda().gt(TaBuilding::getStatus, -1);
271
         getBuildingAttaches(building);
277
         getBuildingAttaches(building);
272
         QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
278
         QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
273
         saveQueryWrapper.eq("tagert_type", CommConstant.FAVOR_PROJECT);
279
         saveQueryWrapper.eq("tagert_type", CommConstant.FAVOR_PROJECT);
274
-        saveQueryWrapper.eq("person_id", personId);
280
+        saveQueryWrapper.eq("person_id", person.getPersonId());
275
         saveQueryWrapper.eq("saved_target", building.getBuildingId());
281
         saveQueryWrapper.eq("saved_target", building.getBuildingId());
276
         Integer num = taSaveMapper.selectCount(saveQueryWrapper);
282
         Integer num = taSaveMapper.selectCount(saveQueryWrapper);
277
         if (num > 0) {
283
         if (num > 0) {
308
         List<TaShareActivity> shareActivityList = taShareActivityMapper.selectList(shareActivityQueryWrapper);
314
         List<TaShareActivity> shareActivityList = taShareActivityMapper.selectList(shareActivityQueryWrapper);
309
         building.setShareActivityList(shareActivityList);
315
         building.setShareActivityList(shareActivityList);
310
 
316
 
311
-        // TODO 直播活动
317
+        // 直播活动
312
         QueryWrapper<TaLiveActivity> liveActivityQueryWrapper = new QueryWrapper<>();
318
         QueryWrapper<TaLiveActivity> liveActivityQueryWrapper = new QueryWrapper<>();
313
         liveActivityQueryWrapper.eq("building_id", id);
319
         liveActivityQueryWrapper.eq("building_id", id);
314
         liveActivityQueryWrapper.eq("status", 1);
320
         liveActivityQueryWrapper.eq("status", 1);
336
         salesBatchQueryWrapper.lambda().eq(TaSalesBatch::getBuildingId, id);
342
         salesBatchQueryWrapper.lambda().eq(TaSalesBatch::getBuildingId, id);
337
         salesBatchQueryWrapper.lambda().eq(TaSalesBatch::getStatus, CommConstant.STATUS_NORMAL);
343
         salesBatchQueryWrapper.lambda().eq(TaSalesBatch::getStatus, CommConstant.STATUS_NORMAL);
338
         List<TaSalesBatch> taSalesBatch = iTaSalesBatchService.list(salesBatchQueryWrapper);
344
         List<TaSalesBatch> taSalesBatch = iTaSalesBatchService.list(salesBatchQueryWrapper);
339
-        building.setSalesBatch(taSalesBatch);
340
 
345
 
346
+        List<TaSalesBatch> resultSalesBatchList = new ArrayList<>();
347
+        taSalesBatch.stream().forEach(record -> {
348
+            // 查询批次下认筹是否开启邀请制
349
+            QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
350
+            taRaiseInviteQueryWrapper.eq("org_id", orgId);
351
+            taRaiseInviteQueryWrapper.eq("sales_batch_id", record.getSalesBatchId());
352
+            TaRaiseInvite taRaiseInvite = iTaRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
353
+            if (taRaiseInvite == null) {
354
+                resultSalesBatchList.add(record);
355
+                return;
356
+            }
357
+
358
+            // 若开启邀请制,校验该用户是否在邀请列表中
359
+            taRaiseInviteQueryWrapper = new QueryWrapper<>();
360
+            taRaiseInviteQueryWrapper.eq("org_id", orgId);
361
+            taRaiseInviteQueryWrapper.eq("invite_tel", person.getTel());
362
+            taRaiseInviteQueryWrapper.eq("sales_batch_id", record.getSalesBatchId());
363
+            TaRaiseInvite taRaiseInvite2 = iTaRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
364
+            if(taRaiseInvite2 != null){
365
+                resultSalesBatchList.add(record);
366
+                return;
367
+            }
368
+        });
369
+
370
+        building.setSalesBatch(resultSalesBatchList);
341
         return ResponseBean.success(building);
371
         return ResponseBean.success(building);
342
     }
372
     }
343
 
373
 

+ 58
- 3
src/main/java/com/huiju/estateagents/service/impl/TaRaiseServiceImpl.java Bestand weergeven

9
 import com.huiju.estateagents.common.CommConstant;
9
 import com.huiju.estateagents.common.CommConstant;
10
 import com.huiju.estateagents.common.StringUtils;
10
 import com.huiju.estateagents.common.StringUtils;
11
 import com.huiju.estateagents.entity.*;
11
 import com.huiju.estateagents.entity.*;
12
-import com.huiju.estateagents.mapper.TaHousingResourcesMapper;
13
 import com.huiju.estateagents.mapper.TaRaiseHouseMapper;
12
 import com.huiju.estateagents.mapper.TaRaiseHouseMapper;
14
 import com.huiju.estateagents.mapper.TaRaiseMapper;
13
 import com.huiju.estateagents.mapper.TaRaiseMapper;
15
 import com.huiju.estateagents.mapper.TaRaiseRecordMapper;
14
 import com.huiju.estateagents.mapper.TaRaiseRecordMapper;
16
 import com.huiju.estateagents.service.ITaHousingResourcesService;
15
 import com.huiju.estateagents.service.ITaHousingResourcesService;
16
+import com.huiju.estateagents.service.ITaRaiseInviteService;
17
 import com.huiju.estateagents.service.ITaRaiseService;
17
 import com.huiju.estateagents.service.ITaRaiseService;
18
 import org.apache.commons.collections.CollectionUtils;
18
 import org.apache.commons.collections.CollectionUtils;
19
-import org.apache.commons.collections4.QueueUtils;
20
 import org.slf4j.Logger;
19
 import org.slf4j.Logger;
21
 import org.slf4j.LoggerFactory;
20
 import org.slf4j.LoggerFactory;
22
 import org.springframework.beans.factory.annotation.Autowired;
21
 import org.springframework.beans.factory.annotation.Autowired;
23
 import org.springframework.stereotype.Service;
22
 import org.springframework.stereotype.Service;
24
 
23
 
25
-import javax.servlet.http.HttpServletRequest;
24
+import java.lang.reflect.Array;
25
+import java.time.LocalDateTime;
26
+import java.util.ArrayList;
27
+import java.util.Arrays;
26
 import java.util.List;
28
 import java.util.List;
27
 import java.util.stream.Collectors;
29
 import java.util.stream.Collectors;
28
 
30
 
51
     @Autowired
53
     @Autowired
52
     private ITaHousingResourcesService taHousingResourcesService;
54
     private ITaHousingResourcesService taHousingResourcesService;
53
 
55
 
56
+    @Autowired
57
+    private ITaRaiseInviteService taRaiseInviteService;
58
+
54
     @Override
59
     @Override
55
     public ResponseBean listRaiseByCondition(Integer pageSize, Integer pageNum, String salesBatchName, String buildingId, Integer orgId, Integer status, List<TaPersonBuilding> taPersonBuildingListByUserId) {
60
     public ResponseBean listRaiseByCondition(Integer pageSize, Integer pageNum, String salesBatchName, String buildingId, Integer orgId, Integer status, List<TaPersonBuilding> taPersonBuildingListByUserId) {
56
         logger.info("listSalesBatchForRaise 接收参数:pageSize:{},pageNum:{},salesBatchName:{},buildilgId:{},orgId:{},status:{},taPersonBuildingListByUserId:{}",
61
         logger.info("listSalesBatchForRaise 接收参数:pageSize:{},pageNum:{},salesBatchName:{},buildilgId:{},orgId:{},status:{},taPersonBuildingListByUserId:{}",
109
             return responseBean;
114
             return responseBean;
110
         }
115
         }
111
 
116
 
117
+        // 获取邀请人数据
118
+        QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
119
+        taRaiseInviteQueryWrapper.eq("org_id", orgId);
120
+        taRaiseInviteQueryWrapper.eq("raise_id", taRaise.getRaiseId());
121
+        taRaiseInviteQueryWrapper.orderByAsc("create_date");
122
+        List<TaRaiseInvite> taRaiseInviteList = taRaiseInviteService.list(taRaiseInviteQueryWrapper);
123
+        StringBuilder inviteTelSb = new StringBuilder();
124
+        taRaiseInviteList.stream().forEach(record -> {
125
+            inviteTelSb.append(record.getInviteTel() + "\n");
126
+        });
127
+
128
+        if (CollectionUtils.isEmpty(taRaiseInviteList)) {
129
+            taRaise.setIsInvite(CommConstant.STATUS_UNACCALIMED);
130
+        } else {
131
+            taRaise.setIsInvite(CommConstant.STATUS_NORMAL);
132
+            taRaise.setInviteTel(inviteTelSb.toString());
133
+        }
112
         taRaise.setRaisePrice(taRaise.getRaisePrice() == null ? null : taRaise.getRaisePrice());
134
         taRaise.setRaisePrice(taRaise.getRaisePrice() == null ? null : taRaise.getRaisePrice());
113
         responseBean.addSuccess(taRaise);
135
         responseBean.addSuccess(taRaise);
114
         return responseBean;
136
         return responseBean;
160
 
182
 
161
         return taRaise;
183
         return taRaise;
162
     }
184
     }
185
+
186
+    @Override
187
+    public Boolean saveOrUpdateInvite(TaRaise taRaise, Integer orgId, Boolean isAdd) {
188
+        List<TaRaiseInvite> taRaiseInviteList = new ArrayList<>();
189
+        String[] inviteTelArr = StringUtils.isEmpty(taRaise.getInviteTel()) ?
190
+                new String[]{} : taRaise.getInviteTel().split("\n");
191
+
192
+        Arrays.asList(inviteTelArr).stream().forEach(record -> {
193
+            TaRaiseInvite taRaiseInvite = new TaRaiseInvite();
194
+            taRaiseInvite.setOrgId(orgId);
195
+            taRaiseInvite.setRaiseId(taRaise.getRaiseId());
196
+            taRaiseInvite.setBuildingId(taRaise.getBuildingId());
197
+            taRaiseInvite.setSalesBatchId(taRaise.getSalesBatchId());
198
+            taRaiseInvite.setCreateDate(LocalDateTime.now());
199
+
200
+            // 为新增 直接增加,跳过重复添加数据校验
201
+            if (isAdd) {
202
+                taRaiseInvite.setInviteTel(record);
203
+                taRaiseInviteList.add(taRaiseInvite);
204
+            } else {
205
+                QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
206
+                taRaiseInviteQueryWrapper.eq("org_id", orgId);
207
+                taRaiseInviteQueryWrapper.eq("org_id", taRaise.getRaiseId());
208
+                taRaiseInviteQueryWrapper.eq("invite_tel", record);
209
+                TaRaiseInvite queryResult = taRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
210
+                if (queryResult == null) {
211
+                    taRaiseInvite.setInviteTel(record);
212
+                    taRaiseInviteList.add(taRaiseInvite);
213
+                }
214
+            }
215
+        });
216
+        return taRaiseInviteService.saveBatch(taRaiseInviteList);
217
+    }
163
 }
218
 }

+ 1
- 0
src/main/resources/mapper/eContract/TaCompanyOrgMapper.xml Bestand weergeven

6
         SELECT
6
         SELECT
7
             t.*,
7
             t.*,
8
             t2.company_name,
8
             t2.company_name,
9
+            t2.company_code,
9
             t2.certified_status,
10
             t2.certified_status,
10
             t3.`name` orgName,
11
             t3.`name` orgName,
11
             t4.`name` miniAppName
12
             t4.`name` miniAppName

+ 3
- 3
src/main/resources/mapper/eContract/TaContractMapper.xml Bestand weergeven

37
                 <otherwise></otherwise>
37
                 <otherwise></otherwise>
38
             </choose>
38
             </choose>
39
             <choose>
39
             <choose>
40
-                <when test="signatoryStatus == 0">
40
+                <when test="customerStatus == 0">
41
                     AND t.customer_time = NULL
41
                     AND t.customer_time = NULL
42
                 </when>
42
                 </when>
43
-                <when test="signatoryStatus == 1">
43
+                <when test="customerStatus == 1">
44
                     AND t.customer_time &lt;&gt; NULL
44
                     AND t.customer_time &lt;&gt; NULL
45
                 </when>
45
                 </when>
46
                 <otherwise></otherwise>
46
                 <otherwise></otherwise>
99
                 AND t.settlement_time &gt;= #{bo.settlementStartTime}
99
                 AND t.settlement_time &gt;= #{bo.settlementStartTime}
100
             </if>
100
             </if>
101
             <if test=" bo.settlementEndTime != null">
101
             <if test=" bo.settlementEndTime != null">
102
-                AND t.settlement_time &lt;= #{bo.settlementEndTime.}
102
+                AND t.settlement_time &lt;= #{bo.settlementEndTime}
103
             </if>
103
             </if>
104
         </where>
104
         </where>
105
         ORDER BY
105
         ORDER BY