|
@@ -13,11 +13,13 @@ import com.huiju.estateagents.center.taUser.entity.TaUser;
|
13
|
13
|
import com.huiju.estateagents.center.taUser.service.impl.TaUserServiceImpl;
|
14
|
14
|
import com.huiju.estateagents.common.CommConstant;
|
15
|
15
|
import com.huiju.estateagents.common.SMSUtils;
|
|
16
|
+import com.huiju.estateagents.eContract.entity.TaContract;
|
|
17
|
+import com.huiju.estateagents.eContract.entity.TaContractBusiness;
|
|
18
|
+import com.huiju.estateagents.eContract.service.ITaContractBusinessService;
|
|
19
|
+import com.huiju.estateagents.eContract.service.ITaContractService;
|
16
|
20
|
import com.huiju.estateagents.entity.*;
|
17
|
21
|
import com.huiju.estateagents.mapper.*;
|
18
|
|
-import com.huiju.estateagents.po.TaHousingResourcesPO;
|
19
|
|
-import com.huiju.estateagents.service.ITaRaiseRecordService;
|
20
|
|
-import com.huiju.estateagents.service.ITaUvService;
|
|
22
|
+import com.huiju.estateagents.service.*;
|
21
|
23
|
import jodd.util.StringUtil;
|
22
|
24
|
import org.apache.commons.lang3.StringUtils;
|
23
|
25
|
import org.slf4j.Logger;
|
|
@@ -26,9 +28,13 @@ import org.springframework.beans.factory.annotation.Autowired;
|
26
|
28
|
import org.springframework.stereotype.Service;
|
27
|
29
|
|
28
|
30
|
import java.time.LocalDateTime;
|
|
31
|
+import java.util.ArrayList;
|
|
32
|
+import java.util.HashMap;
|
29
|
33
|
import java.util.List;
|
|
34
|
+import java.util.Map;
|
30
|
35
|
import java.util.concurrent.ExecutorService;
|
31
|
36
|
import java.util.concurrent.Executors;
|
|
37
|
+import java.util.stream.Collectors;
|
32
|
38
|
|
33
|
39
|
/**
|
34
|
40
|
* <p>
|
|
@@ -76,6 +82,30 @@ public class TaRaiseRecordServiceImpl extends ServiceImpl<TaRaiseRecordMapper, T
|
76
|
82
|
@Autowired
|
77
|
83
|
SMSUtils smsUtils;
|
78
|
84
|
|
|
85
|
+ @Autowired
|
|
86
|
+ private ITaRaiseService taRaiseService;
|
|
87
|
+
|
|
88
|
+ @Autowired
|
|
89
|
+ private ITaOrderService taOrderService;
|
|
90
|
+
|
|
91
|
+ @Autowired
|
|
92
|
+ private ITaBuildingImgService taBuildingImgService;
|
|
93
|
+
|
|
94
|
+ @Autowired
|
|
95
|
+ private ITaRaiseHouseService taRaiseHouseService;
|
|
96
|
+
|
|
97
|
+ @Autowired
|
|
98
|
+ private ITaHousingResourcesService taHousingResourcesService;
|
|
99
|
+
|
|
100
|
+ @Autowired
|
|
101
|
+ private ITaBuildingApartmentService taBuildingApartmentService;
|
|
102
|
+
|
|
103
|
+ @Autowired
|
|
104
|
+ private ITaContractService iTaContractService;
|
|
105
|
+
|
|
106
|
+ @Autowired
|
|
107
|
+ private ITaContractBusinessService iTaContractBusinessService;
|
|
108
|
+
|
79
|
109
|
@Override
|
80
|
110
|
public ResponseBean listHousingRaiseByCondition(HousingRaiseRequestBO requestBO, Integer pageNumber, Integer pageSize) {
|
81
|
111
|
logger.info("TaRaiseRecordServiceImpl.listRaiseRecordByCondition 接收参数:bo:{},pageNumber:{},pageSize:{}", JSONObject.toJSONString(requestBO), pageNumber, pageSize);
|
|
@@ -320,4 +350,107 @@ public class TaRaiseRecordServiceImpl extends ServiceImpl<TaRaiseRecordMapper, T
|
320
|
350
|
logger.info("TaRaiseRecordServiceImpl.updateHouseLockingStatus 接收参数:raiseRecordId:{},houseLockingStatus:{}", raiseRecordId, houseLockingStatus);
|
321
|
351
|
return taHousingResourcesMapper.updateHouseLockingStatus(raiseRecordId, houseLockingStatus, personId);
|
322
|
352
|
}
|
|
353
|
+
|
|
354
|
+ @Override
|
|
355
|
+ public ResponseBean wxGetRaiseRecordById(Integer raiseRecordId, String personId, Integer orgId) {
|
|
356
|
+ ResponseBean responseBean = new ResponseBean();
|
|
357
|
+
|
|
358
|
+ //获取认筹单信息
|
|
359
|
+ TaRaiseRecord taRaiseRecord = getById(raiseRecordId);
|
|
360
|
+
|
|
361
|
+ //认筹表数据
|
|
362
|
+ TaRaise taRaise = taRaiseService.getById(taRaiseRecord.getRaiseId());
|
|
363
|
+ taRaise.setRaisePrice(taRaise.getRaisePrice());
|
|
364
|
+ //置业顾问信息
|
|
365
|
+ TaUser consultantInfo = taUserService.getById(taRaiseRecord.getUserId());
|
|
366
|
+ if (null != consultantInfo) {
|
|
367
|
+ //职业顾问信息
|
|
368
|
+ TaPerson consultantPerson = taPersonService.getOne(new QueryWrapper<TaPerson>().eq("user_id", taRaiseRecord.getUserId()));
|
|
369
|
+ if (null != consultantPerson) {
|
|
370
|
+ consultantInfo.setConsultantPersonId(consultantPerson.getPersonId());
|
|
371
|
+ }
|
|
372
|
+ }
|
|
373
|
+
|
|
374
|
+ taRaiseRecord.setConsultantInfo(consultantInfo);
|
|
375
|
+ //房源与认筹单关系图
|
|
376
|
+ List<TaRaiseHouse> taRaiseHouseList = taRaiseHouseService.list(new QueryWrapper<TaRaiseHouse>().eq("raise_record_id", taRaiseRecord.getRaiseRecordId()));
|
|
377
|
+
|
|
378
|
+ //房源信息
|
|
379
|
+ List<TaHousingResources> houseList = (List<TaHousingResources>) taHousingResourcesService.listByIds(taRaiseHouseList.stream().map(TaRaiseHouse::getHouseId).collect(Collectors.toList()));
|
|
380
|
+
|
|
381
|
+ //我的认筹和锁定
|
|
382
|
+ houseList.forEach(e -> {
|
|
383
|
+ taRaiseHouseList.forEach(r -> {
|
|
384
|
+ //我的认筹
|
|
385
|
+ if (e.getHouseId().equals(r.getHouseId()) && CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(e.getHouseLockingStatus()) && personId.equals(e.getHouseLockingPerson())) {
|
|
386
|
+ e.setMineLocked("mine");
|
|
387
|
+ }
|
|
388
|
+ });
|
|
389
|
+
|
|
390
|
+ //塞入户型信息
|
|
391
|
+ if (!StringUtils.isEmpty(e.getApartmentId())) {
|
|
392
|
+ TaBuildingApartment buildingApartment = taBuildingApartmentService.getById(e.getApartmentId());
|
|
393
|
+ e.setApartmentName(buildingApartment.getApartmentName());
|
|
394
|
+ e.setInsideArea(buildingApartment.getInsideArea());
|
|
395
|
+ e.setBuildingArea(buildingApartment.getBuildingArea());
|
|
396
|
+ //塞入户型图信息
|
|
397
|
+ List<String> apartMentIds = new ArrayList<>();
|
|
398
|
+ apartMentIds.add(e.getApartmentId());
|
|
399
|
+ List<TaBuildingImg> apartMentList = taBuildingImgService.getAparemnetList(apartMentIds);
|
|
400
|
+ e.setApartmentImgList(apartMentList);
|
|
401
|
+ }
|
|
402
|
+ });
|
|
403
|
+
|
|
404
|
+ Map<String, Object> map = new HashMap<>();
|
|
405
|
+ map.put("refundOrder", null);
|
|
406
|
+ //订单信息
|
|
407
|
+ TaOrder taOrder = taOrderService.getById(taRaiseRecord.getOrderId());
|
|
408
|
+ if (null != taOrder) {
|
|
409
|
+ //退费信息
|
|
410
|
+ TaOrder refundOrder = taOrderService.getOne(new QueryWrapper<TaOrder>().eq("parent_order_id", taOrder.getOrderId()));
|
|
411
|
+ map.put("refundOrder", refundOrder);
|
|
412
|
+ }
|
|
413
|
+
|
|
414
|
+ // 是否展示签署合同入口
|
|
415
|
+ if (CommConstant.STATUS_NORMAL == taRaiseRecord.getStatus() || CommConstant.PAY_STATUS_PAID == taRaiseRecord.getPayStatus()) {
|
|
416
|
+ // 是否有认筹业务合同配置
|
|
417
|
+ QueryWrapper<TaContractBusiness> taContractBusinessQueryWrapper = new QueryWrapper<>();
|
|
418
|
+ taContractBusinessQueryWrapper.eq("target_id", raiseRecordId);
|
|
419
|
+ taContractBusinessQueryWrapper.eq("org_id", orgId);
|
|
420
|
+ taContractBusinessQueryWrapper.eq("status", CommConstant.STATUS_NORMAL);
|
|
421
|
+ TaContractBusiness taContractBusiness = iTaContractBusinessService.getOne(taContractBusinessQueryWrapper);
|
|
422
|
+ if (taContractBusiness != null) {
|
|
423
|
+ // 是否有有关联的认筹合同
|
|
424
|
+ QueryWrapper<TaContract> taContractQueryWrapper = new QueryWrapper<>();
|
|
425
|
+ taContractQueryWrapper.eq("org_id", orgId);
|
|
426
|
+ taContractQueryWrapper.eq("company_id", taContractBusiness.getCompanyId());
|
|
427
|
+ taContractQueryWrapper.eq("target_id", taRaiseRecord.getRaiseId());
|
|
428
|
+ taContractQueryWrapper.eq("person_id", personId);
|
|
429
|
+ TaContract taContract = iTaContractService.getOne(taContractQueryWrapper);
|
|
430
|
+ if (taContract != null) {
|
|
431
|
+ if (taContract.getCustomerTime() == null) {
|
|
432
|
+ taRaiseRecord.setShowContract(1);
|
|
433
|
+ } else {
|
|
434
|
+ taRaiseRecord.setShowContract(0);
|
|
435
|
+ map.put("taContract", taContract);
|
|
436
|
+ }
|
|
437
|
+ } else {
|
|
438
|
+ taRaiseRecord.setShowContract(0);
|
|
439
|
+ }
|
|
440
|
+ } else {
|
|
441
|
+ taRaiseRecord.setShowContract(0);
|
|
442
|
+ }
|
|
443
|
+ } else {
|
|
444
|
+ taRaiseRecord.setShowContract(0);
|
|
445
|
+ }
|
|
446
|
+
|
|
447
|
+ map.put("taRaiseRecord", taRaiseRecord);
|
|
448
|
+ map.put("taRaiseHouseList", taRaiseHouseList);
|
|
449
|
+ map.put("houseList", houseList);
|
|
450
|
+ map.put("taOrder", taOrder);
|
|
451
|
+
|
|
452
|
+ map.put("taRaise", taRaise);
|
|
453
|
+ responseBean.addSuccess(map);
|
|
454
|
+ return responseBean;
|
|
455
|
+ }
|
323
|
456
|
}
|