魏超 před 5 roky
rodič
revize
6adb331de6

+ 11
- 4
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java Zobrazit soubor

@@ -290,7 +290,7 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
290 290
 
291 291
         TaBuilding building = object.toJavaObject(TaBuilding.class);
292 292
 
293
-        boolean isMainMoreThanTenFlag = publishCountIsMainBuilding(building, orgId, null);
293
+        boolean isMainMoreThanTenFlag = publishCountIsMainBuilding(building, orgId, null, "update");
294 294
         if (!isMainMoreThanTenFlag){
295 295
             responseBean.addError("每个城市只能推荐10个楼盘到首页,请先将已推荐楼盘取消推荐后再推荐当前楼盘。");
296 296
             return responseBean;
@@ -500,7 +500,7 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
500 500
         building.setBuildingId(id);
501 501
         building.setStatus(status);
502 502
 
503
-        boolean isMainMoreThanTenFlag = publishCountIsMainBuilding(taBuildingMapper.selectOne(buildingIdQueryWrapper), orgId, status);
503
+        boolean isMainMoreThanTenFlag = publishCountIsMainBuilding(taBuildingMapper.selectOne(buildingIdQueryWrapper), orgId, status, "updateStatus");
504 504
         if (!isMainMoreThanTenFlag){
505 505
             responseBean.addError("每个城市只能推荐10个楼盘到首页,请先将已推荐楼盘取消推荐后再推荐当前楼盘。");
506 506
             return responseBean;
@@ -843,8 +843,15 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
843 843
      * @param taBuilding
844 844
      * @return
845 845
      */
846
-    public boolean publishCountIsMainBuilding(TaBuilding taBuilding, Integer orgId, Integer status) {
847
-        if ((status != null && status == 2) || (taBuilding.getIsMain() != null && taBuilding.getIsMain() != 1)){
846
+    public boolean publishCountIsMainBuilding(TaBuilding taBuilding, Integer orgId, Integer status, String operte) {
847
+        QueryWrapper<TaBuilding> queryWrapper = new QueryWrapper<>();
848
+        queryWrapper.eq("building_id", taBuilding.getBuildingId());
849
+        queryWrapper.eq("org_id", orgId);
850
+        TaBuilding info = taBuildingMapper.selectOne(queryWrapper);
851
+        if (operte.equals("update") && (taBuilding.getIsMain() != 1 || info.getStatus() == 2)){
852
+            return true;
853
+        }
854
+        if (operte.equals("updateStatus") && status == 2){
848 855
             return true;
849 856
         }
850 857
         QueryWrapper<TaBuilding> taBuildingQueryWrapper = new QueryWrapper<>();