Browse Source

Merge branch 'dev' of http://git.ycjcjy.com/zhiyuxing/estateagents into dev

魏超 5 years ago
parent
commit
8dc60f923f

+ 8
- 0
src/main/java/com/huiju/estateagents/controller/TaRaiseRecordController.java View File

@@ -189,6 +189,10 @@ public class TaRaiseRecordController extends BaseController {
189 189
                 record.setInvalidReason(raiseRecord.getInvalidReason());
190 190
                 record.setUpdateDate(LocalDateTime.now());
191 191
                 record.setStatus(0);
192
+
193
+                // 更新房源认筹热度
194
+                iTaRaiseRecordService.updateForSubtractRaiseHeat(record.getRaiseRecordId());
195
+
192 196
                 //发送订阅消息
193 197
                 iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(),record.getRaiseId(),"在线选房认筹通知","认筹单已作废","点击详情查看认筹单","具体原因查看详情",false);
194 198
             });
@@ -232,6 +236,10 @@ public class TaRaiseRecordController extends BaseController {
232 236
                 }
233 237
                 record.setStatus(CommConstant.STATUS_DELETE);
234 238
                 record.setUpdateDate(LocalDateTime.now());
239
+
240
+                // 更新房源认筹热度
241
+                iTaRaiseRecordService.updateForSubtractRaiseHeat(record.getRaiseRecordId());
242
+
235 243
                 //发送订阅消息
236 244
                 iTaRaiseRecordService.sendRaiseMsg(record.getRaiseRecordId(),record.getRaiseId(),"在线选房认筹通知","认筹单已作废","点击详情查看认筹单","具体原因查看详情",false);
237 245
             });

+ 2
- 2
src/main/java/com/huiju/estateagents/mapper/TaHousingResourcesMapper.java View File

@@ -84,10 +84,10 @@ public interface TaHousingResourcesMapper extends BaseMapper<TaHousingResources>
84 84
 
85 85
     /**
86 86
      * 减少认筹热度值
87
-     * @param houseId
87
+     * @param raiseRecordId
88 88
      * @return
89 89
      */
90
-    Boolean updateForSubtractRaiseHeat(@Param("houseId") Integer houseId);
90
+    Boolean updateForSubtractRaiseHeat(@Param("raiseRecordId") Integer raiseRecordId);
91 91
 
92 92
     /**
93 93
      * 根据房源ID获取房源详情

+ 0
- 2
src/main/java/com/huiju/estateagents/service/ITaPreselectionRecordService.java View File

@@ -59,6 +59,4 @@ public interface ITaPreselectionRecordService extends IService<TaPreselectionRec
59 59
      */
60 60
     ResponseBean batchDeletePreselectRecord(List<TaPreselectionRecord> preselectionRecordList, Integer orgId, Integer userId);
61 61
 
62
-    Boolean updateForSubtractRaiseHeat(Integer houseId);
63
-
64 62
 }

+ 2
- 0
src/main/java/com/huiju/estateagents/service/ITaRaiseRecordService.java View File

@@ -85,4 +85,6 @@ public interface ITaRaiseRecordService extends IService<TaRaiseRecord> {
85 85
      * 发送认筹消息
86 86
      */
87 87
     void sendRaiseMsg(Integer raiseRecordId, String personId, String title, String result, String reason,String remark, Boolean isSuccess);
88
+
89
+    Boolean updateForSubtractRaiseHeat(Integer raiseRecordId);
88 90
 }

+ 28
- 24
src/main/java/com/huiju/estateagents/service/impl/TaHousingResourcesServiceImpl.java View File

@@ -278,7 +278,7 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
278 278
             resourcesPO.setRaiseBtn(false);
279 279
         } else {
280 280
             //有认筹表的情况下判断是否认筹过这个房源
281
-            boolean raiseBtnStatus = checkRaiseBtn(taRaise,salesBatchId,personId,houseId,orgId);
281
+            boolean raiseBtnStatus = checkRaiseBtn(taRaise, salesBatchId, personId, houseId, orgId);
282 282
             resourcesPO.setTaRaise(taRaise);
283 283
         }
284 284
 
@@ -287,6 +287,7 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
287 287
 
288 288
     /**
289 289
      * 校验认筹状态的按钮
290
+     *
290 291
      * @param taRaise
291 292
      * @param salesBatchId
292 293
      * @param personId
@@ -295,19 +296,19 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
295 296
      * @return
296 297
      */
297 298
     private boolean checkRaiseBtn(TaRaise taRaise, Integer salesBatchId, String personId, Integer houseId, Integer orgId) {
298
-        if (taRaise.getStatus() != CommConstant.STATUS_NORMAL){
299
+        if (taRaise.getStatus() != CommConstant.STATUS_NORMAL) {
299 300
             return false;
300 301
         }
301
-        if (taRaise.getNeedPreselection()){
302
+        if (taRaise.getNeedPreselection()) {
302 303
             //查看是否有当前房源的预选记录
303 304
             QueryWrapper<TaPreselectionRecord> preselectionRecordQueryWrapper = new QueryWrapper<>();
304
-            preselectionRecordQueryWrapper.eq("sales_batch_id",salesBatchId);
305
-            preselectionRecordQueryWrapper.eq("building_id",taRaise.getBuildingId());
306
-            preselectionRecordQueryWrapper.eq("org_id",orgId);
307
-            preselectionRecordQueryWrapper.eq("house_id",houseId);
308
-            preselectionRecordQueryWrapper.eq("person_id",personId);
305
+            preselectionRecordQueryWrapper.eq("sales_batch_id", salesBatchId);
306
+            preselectionRecordQueryWrapper.eq("building_id", taRaise.getBuildingId());
307
+            preselectionRecordQueryWrapper.eq("org_id", orgId);
308
+            preselectionRecordQueryWrapper.eq("house_id", houseId);
309
+            preselectionRecordQueryWrapper.eq("person_id", personId);
309 310
             TaPreselectionRecord taPreselectionRecord = taPreselectionRecordMapper.selectOne(preselectionRecordQueryWrapper);
310
-            if (null == taPreselectionRecord){
311
+            if (null == taPreselectionRecord) {
311 312
                 return false;
312 313
             }
313 314
         }
@@ -316,28 +317,28 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
316 317
         LocalDateTime raiseStartTime = taRaise.getRaiseStartTime();
317 318
         LocalDateTime raiseEndTime = taRaise.getRaiseEndTime();
318 319
         LocalDateTime now = LocalDateTime.now();
319
-        if (now.isBefore(raiseStartTime) || now.isAfter(raiseEndTime)){
320
+        if (now.isBefore(raiseStartTime) || now.isAfter(raiseEndTime)) {
320 321
             return false;
321 322
         }
322 323
         //销售批次校验
323 324
         TaSalesBatch taSalesBatch = taSalesBatchMapper.selectById(salesBatchId);
324
-        if (taSalesBatch.getStatus() != CommConstant.STATUS_NORMAL){
325
+        if (taSalesBatch.getStatus() != CommConstant.STATUS_NORMAL) {
325 326
             return false;
326 327
         }
327 328
 
328 329
         //房源信息
329 330
         TaHousingResources taHousingResources = taHousingResourcesMapper.selectById(houseId);
330
-        if (taHousingResources.getStatus() != CommConstant.STATUS_NORMAL || CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(taHousingResources.getHouseLockingStatus())){
331
+        if (taHousingResources.getStatus() != CommConstant.STATUS_NORMAL || CommConstant.HOUSE_LOCKING_STATUS_LOCKED.equals(taHousingResources.getHouseLockingStatus())) {
331 332
             return false;
332 333
         }
333 334
 
334 335
         //查询我的认筹记录表
335 336
         QueryWrapper<TaRaiseHouse> taRaiseHouseQueryWrapper = new QueryWrapper<>();
336
-        taRaiseHouseQueryWrapper.eq("org_id",orgId);
337
-        taRaiseHouseQueryWrapper.eq("house_id",houseId);
338
-        taRaiseHouseQueryWrapper.eq("person_id",personId);
337
+        taRaiseHouseQueryWrapper.eq("org_id", orgId);
338
+        taRaiseHouseQueryWrapper.eq("house_id", houseId);
339
+        taRaiseHouseQueryWrapper.eq("person_id", personId);
339 340
         List<TaRaiseHouse> list = taRaiseHouseService.list(taRaiseHouseQueryWrapper);
340
-        if (list.size() > 0){
341
+        if (list.size() > 0) {
341 342
             return false;
342 343
         }
343 344
 
@@ -421,7 +422,7 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
421 422
         }
422 423
 
423 424
         // 更新销售批次里的房源数
424
-        taSalesBatchMapper.addSalesNumberById(taHousingResources.getSalesBatchId(),taHousingResources.getOrgId());
425
+        taSalesBatchMapper.addSalesNumberById(taHousingResources.getSalesBatchId(), taHousingResources.getOrgId());
425 426
 
426 427
         // 获取楼盘名称
427 428
         TaBuilding taBuilding = taBuildingMapper.selectById(taHousingResources.getBuildingId());
@@ -724,19 +725,21 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
724 725
         personQueryWrapper.eq("person_id", personId);
725 726
         TaPerson person = taPersonService.getOne(personQueryWrapper);
726 727
         if (person == null) {
727
-            responseBean.addError("权限不足");
728
+            logger.info("updateLockingStatus 用户未找到");
729
+            responseBean.addError("fail");
728 730
             return responseBean;
729 731
         }
730 732
 
731 733
         // 更新为锁定状态
732 734
         if ("lock".equals(type)) {
733 735
 
734
-            // 校验当前用户是否有修改权限
735
-            if (StringUtils.isEmpty(po.getLockingPersonId()) && !"locked".equals(po.getHouseLockingStatus())) {
736
+            // 校验当前房源状态
737
+            if (!"locked".equals(po.getHouseLockingStatus())) {
736 738
                 // 更行房源表状态
737 739
                 TaHousingResources housingResources = new TaHousingResources();
738 740
                 housingResources.setHouseId(po.getHouseId());
739 741
                 housingResources.setHouseLockingStatus("locked");
742
+                housingResources.setHouseLockingPerson(personId);
740 743
                 housingResources.setUpdateUser(person.getUserId());
741 744
                 housingResources.setUpdateDate(LocalDateTime.now());
742 745
                 updateById(housingResources);
@@ -750,19 +753,20 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
750 753
                 responseBean.addSuccess(taRaiseHouseService.updateById(raiseHouse));
751 754
                 return responseBean;
752 755
             }
753
-            responseBean.addError("权限不足");
756
+            responseBean.addError("当前房源已为锁定状态");
754 757
             return responseBean;
755 758
         }
756 759
 
757 760
         // 更新为解锁状态
758 761
         if ("unlock".equals(type)) {
759 762
 
760
-            // 校验当前用户是否有修改权限
761
-            if (personId.equals(po.getLockingPersonId()) && "locked".equals(po.getHouseLockingStatus())) {
763
+            // 校验当前房源状态
764
+            if ("locked".equals(po.getHouseLockingStatus())) {
762 765
                 // 更新房源表状态
763 766
                 TaHousingResources housingResources = new TaHousingResources();
764 767
                 housingResources.setHouseId(po.getHouseId());
765 768
                 housingResources.setHouseLockingStatus("unlocked");
769
+                housingResources.setHouseLockingPerson("");
766 770
                 housingResources.setUpdateUser(person.getUserId());
767 771
                 housingResources.setUpdateDate(LocalDateTime.now());
768 772
                 updateById(housingResources);
@@ -776,7 +780,7 @@ public class TaHousingResourcesServiceImpl extends ServiceImpl<TaHousingResource
776 780
                 responseBean.addSuccess(taRaiseHouseService.updateById(raiseHouse));
777 781
                 return responseBean;
778 782
             }
779
-            responseBean.addError("权限不足");
783
+            responseBean.addError("当前房源已为解锁状态");
780 784
             return responseBean;
781 785
         }
782 786
         responseBean.addError("fail");

+ 0
- 5
src/main/java/com/huiju/estateagents/service/impl/TaPreselectionRecordServiceImpl.java View File

@@ -250,11 +250,6 @@ public class TaPreselectionRecordServiceImpl extends ServiceImpl<TaPreselectionR
250 250
         return responseBean;
251 251
     }
252 252
 
253
-    @Override
254
-    public Boolean updateForSubtractRaiseHeat(Integer houseId) {
255
-        return taHousingResourcesMapper.updateForSubtractRaiseHeat(houseId);
256
-    }
257
-
258 253
     /**
259 254
      * 发送订阅消息
260 255
      *

+ 5
- 0
src/main/java/com/huiju/estateagents/service/impl/TaRaiseRecordServiceImpl.java View File

@@ -311,4 +311,9 @@ public class TaRaiseRecordServiceImpl extends ServiceImpl<TaRaiseRecordMapper, T
311 311
             logger.info("sendSubscribeMsg 结束");
312 312
         });
313 313
     }
314
+
315
+    @Override
316
+    public Boolean updateForSubtractRaiseHeat(Integer raiseRecordId) {
317
+        return taHousingResourcesMapper.updateForSubtractRaiseHeat(raiseRecordId);
318
+    }
314 319
 }

+ 2
- 2
src/main/resources/mapper/TaHousingResourcesMapper.xml View File

@@ -232,9 +232,9 @@
232 232
 
233 233
     <update id="updateForSubtractRaiseHeat" parameterType="java.lang.Integer">
234 234
         UPDATE ta_housing_resources t
235
-        SET t.raise_real_heat = IFNULL(t.raise_real_heat, 0) - 1
235
+        SET t.raise_real_heat = IFNULL( t.raise_real_heat, 0 ) - 1
236 236
         WHERE
237
-            t.house_id = #{houseId}
237
+            t.house_id IN ( SELECT tr.house_id FROM ta_raise_house tr WHERE tr.raise_record_id = #{raiseRecordId})
238 238
             AND t.raise_real_heat > 0
239 239
     </update>
240 240
 

+ 29
- 41
src/main/resources/mapper/TaPreselectionRecordMapper.xml View File

@@ -3,12 +3,6 @@
3 3
 <mapper namespace="com.huiju.estateagents.mapper.TaPreselectionRecordMapper">
4 4
 
5 5
     <select id="listPreselectionRecord" resultType="com.huiju.estateagents.po.TaPreselectionRecordPO">
6
-        SELECT
7
-            t3.*,
8
-            t4.building_name,
9
-            t5.`status` saleBatchStatus
10
-        FROM
11
-            (
12 6
         SELECT
13 7
             t.*,
14 8
             t2.term_name,
@@ -20,45 +14,39 @@
20 14
             t2.apartment_id,
21 15
             t2.building_id buildingId,
22 16
             t2.`status` housingStatus,
23
-            t2.sales_batch_id saleBatchId
17
+            t3.`status` saleBatchStatus
24 18
         FROM
25
-            ta_preselection_record t,
26
-            ta_housing_resources t2
19
+            ta_preselection_record t
20
+        LEFT JOIN ta_housing_resources t2 ON t.house_id = t2.house_id
21
+        LEFT JOIN ta_sales_batch t3 ON t.sales_batch_id = t3.sales_batch_id
27 22
         WHERE
28 23
             t.person_id = #{personId}
29 24
             AND t.org_id = #{orgId}
30
-            AND t.house_id = t2.house_id
31
-            <if test="buildingId != null and buildingId != ''">
32
-                AND t2.building_id = #{buildingId}
33
-            </if>
34
-            <if test="salesBatchId != null and salesBatchId != ''">
35
-                AND t2.sales_batch_id = #{salesBatchId}
36
-            </if>
37
-            <if test="apartmentId != null and apartmentId != ''">
38
-                AND t2.apartment_id = #{apartmentId}
39
-            </if>
40
-            <if test="houseLockingStatus == 'locked'">
41
-                AND t2.house_locking_status = 'locked'
42
-            </if>
43
-            <if test="houseLockingStatus == 'unlocked'">
44
-                AND ( t2.house_locking_status != 'locked' OR t2.house_locking_status IS NULL )
45
-            </if>
46
-            ) t3
47
-            LEFT JOIN ta_building t4 ON t3.buildingId = t4.building_id
48
-            LEFT JOIN ta_sales_batch t5 ON t3.saleBatchId = t5.sales_batch_id
49
-            left join ta_raise_house t6 on t3.house_id = t6.house_id
50
-        where 1=1
51
-            <if test="customerLocked == 'mine'">
52
-                AND t6.person_id = #{personId}
53
-            </if>
54
-            <if test="customerLocked == 'other'">
55
-                AND t6.person_id != #{personId}
56
-            </if>
57
-          GROUP BY
58
-            t3.preselection_record_id
59
-         ORDER BY
60
-            t3.create_date DESC
61
-
25
+        <if test="customerLocked == 'mine'">
26
+            AND t2.house_locking_person = #{personId}
27
+        </if>
28
+        <if test="customerLocked == 'other'">
29
+            AND t2.house_locking_person != #{personId}
30
+        </if>
31
+        <if test="buildingId != null and buildingId != ''">
32
+            AND t2.building_id = #{buildingId}
33
+        </if>
34
+        <if test="salesBatchId != null and salesBatchId != ''">
35
+            AND t2.sales_batch_id = #{salesBatchId}
36
+        </if>
37
+        <if test="apartmentId != null and apartmentId != ''">
38
+            AND t2.apartment_id = #{apartmentId}
39
+        </if>
40
+        <if test="houseLockingStatus == 'locked'">
41
+            AND t2.house_locking_status = 'locked'
42
+        </if>
43
+        <if test="houseLockingStatus == 'unlocked'">
44
+            AND ( t2.house_locking_status != 'locked' OR t2.house_locking_status IS NULL )
45
+        </if>
46
+        GROUP BY
47
+         t.preselection_record_id
48
+        ORDER BY
49
+          t.create_date DESC
62 50
     </select>
63 51
 
64 52
     <select id="getRecordByPersonIdAndHouseId" resultType="com.huiju.estateagents.entity.TaPreselectionRecord">