From cbc1f9db3d796683d88d6d30df3659984dfbeda3 Mon Sep 17 00:00:00 2001
From: webapp <webapp@home-server.attdns.com>
Date: 星期一, 30 九月 2019 22:56:12 +0800
Subject: [PATCH] 取消java110-common jar包,提升为CommonService服务,将之前的Java110-common内容变更为Java110-utils包

---
 WebService/src/main/java/com/java110/web/smo/impl/FloorServiceSMOImpl.java |  155 +++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 136 insertions(+), 19 deletions(-)

diff --git a/WebService/src/main/java/com/java110/web/smo/impl/FloorServiceSMOImpl.java b/WebService/src/main/java/com/java110/web/smo/impl/FloorServiceSMOImpl.java
index 22e8448..e37b599 100644
--- a/WebService/src/main/java/com/java110/web/smo/impl/FloorServiceSMOImpl.java
+++ b/WebService/src/main/java/com/java110/web/smo/impl/FloorServiceSMOImpl.java
@@ -1,12 +1,13 @@
 package com.java110.web.smo.impl;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.common.constant.PrivilegeCodeConstant;
-import com.java110.common.constant.ResponseConstant;
-import com.java110.common.constant.ServiceConstant;
-import com.java110.common.exception.SMOException;
-import com.java110.common.util.Assert;
+import com.java110.utils.constant.PrivilegeCodeConstant;
+import com.java110.utils.constant.ResponseConstant;
+import com.java110.utils.constant.ServiceConstant;
+import com.java110.utils.exception.SMOException;
+import com.java110.utils.util.Assert;
 import com.java110.core.context.IPageData;
+import com.java110.entity.component.ComponentValidateResult;
 import com.java110.web.core.BaseComponentSMO;
 import com.java110.web.smo.IFloorServiceSMO;
 import org.slf4j.Logger;
@@ -29,10 +30,30 @@
 
     private static Logger logger = LoggerFactory.getLogger(FloorServiceSMOImpl.class);
 
-    private static final int MAX_ROW = 50;
+
 
     @Autowired
     private RestTemplate restTemplate;
+
+    /**
+     * 鏌ヨ 妤兼爧
+     * @param pd 椤甸潰鏁版嵁灏佽瀵硅薄
+     * @return 杩斿洖 ResponseEntity瀵硅薄鍖呭惈 http鐘舵�� 淇℃伅 body淇℃伅
+     */
+    public ResponseEntity<String> getFloor(IPageData pd){
+        JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+        paramIn.put("page",1);
+        paramIn.put("row",1);
+        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_FLOOR);
+
+        ComponentValidateResult result = super.validateStoreStaffCommunityRelationship(pd, restTemplate);
+
+        ResponseEntity responseEntity = this.callCenterService(restTemplate, pd, "",
+                ServiceConstant.SERVICE_API_URL + "/api/floor.queryFloors" +  mapToUrlParam(paramIn),
+                HttpMethod.GET);
+
+        return responseEntity;
+    }
 
     /**
      * 鏌ヨ灏忓尯妤�
@@ -42,13 +63,18 @@
      */
     @Override
     public ResponseEntity<String> listFloor(IPageData pd) {
-
-        validateListFloor(pd);
-
         JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+        if(paramIn.containsKey("row")){
+            paramIn.put("rows",paramIn.getString("row"));
+        }
+        validateListFloor(pd,paramIn);
+
         int page = Integer.parseInt(paramIn.getString("page"));
         int rows = Integer.parseInt(paramIn.getString("rows"));
         String communityId = paramIn.getString("communityId");
+
+        //灏忓尯妤肩紪鍙�
+        String floorNum = paramIn.getString("floorNum");
 
 
         //鏍¢獙鐢ㄦ埛鏄惁鏈夋潈闄�
@@ -65,9 +91,10 @@
         String storeTypeCd = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeTypeCd");
         //鏁版嵁鏍¢獙鏄惁 鍟嗘埛鏄惁鍏ラ┗璇ュ皬鍖�
         super.checkStoreEnterCommunity(pd, storeId, storeTypeCd, communityId, restTemplate);
+        String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/floor.queryFloors" + mapToUrlParam(paramIn);
 
         responseEntity = this.callCenterService(restTemplate, pd, "",
-                ServiceConstant.SERVICE_API_URL + "/api/floor.queryFloors?row=" + rows + "&page=" + page + "&communityId=" + communityId,
+                apiUrl,
                 HttpMethod.GET);
 
         if (responseEntity.getStatusCode() != HttpStatus.OK) {
@@ -85,8 +112,11 @@
 
         validateSaveFloor(pd);
 
+        //鏍¢獙鍛樺伐鏄惁鏈夋潈闄愭搷浣�
+        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_FLOOR);
+
         JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
-        String communityId = paramIn.getString("paramIn");
+        String communityId = paramIn.getString("communityId");
         ResponseEntity responseEntity = super.getStoreInfo(pd, restTemplate);
         if (responseEntity.getStatusCode() != HttpStatus.OK) {
             return responseEntity;
@@ -107,15 +137,102 @@
     }
 
     /**
+     * 缂栬緫灏忓尯妤间俊鎭�
+     *
+     * @param pd 椤甸潰鏁版嵁灏佽瀵硅薄
+     * @return
+     */
+    @Override
+    public ResponseEntity<String> editFloor(IPageData pd) {
+
+        validateEditFloor(pd);
+
+        //鏍¢獙鍛樺伐鏄惁鏈夋潈闄愭搷浣�
+        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_FLOOR);
+
+        JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+        String communityId = paramIn.getString("communityId");
+        ResponseEntity responseEntity = super.getStoreInfo(pd, restTemplate);
+        if (responseEntity.getStatusCode() != HttpStatus.OK) {
+            return responseEntity;
+        }
+        Assert.jsonObjectHaveKey(responseEntity.getBody().toString(), "storeId", "鏍规嵁鐢ㄦ埛ID鏌ヨ鍟嗘埛ID澶辫触锛屾湭鍖呭惈storeId鑺傜偣");
+        Assert.jsonObjectHaveKey(responseEntity.getBody().toString(), "storeTypeCd", "鏍规嵁鐢ㄦ埛ID鏌ヨ鍟嗘埛绫诲瀷澶辫触锛屾湭鍖呭惈storeTypeCd鑺傜偣");
+
+        String storeId = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeId");
+        String storeTypeCd = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeTypeCd");
+        //鏁版嵁鏍¢獙鏄惁 鍟嗘埛鏄惁鍏ラ┗璇ュ皬鍖�
+        super.checkStoreEnterCommunity(pd, storeId, storeTypeCd, communityId, restTemplate);
+        paramIn.put("userId", pd.getUserId());
+        paramIn.put("name", paramIn.getString("floorName"));
+        responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(),
+                ServiceConstant.SERVICE_API_URL + "/api/floor.editFloor",
+                HttpMethod.POST);
+
+        return responseEntity;
+    }
+
+    @Override
+    public ResponseEntity<String> deleteFloor(IPageData pd) {
+        validateDeleteFloor(pd);
+        //鏍¢獙鍛樺伐鏄惁鏈夋潈闄愭搷浣�
+        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_FLOOR);
+        JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+        String communityId = paramIn.getString("communityId");
+        ResponseEntity responseEntity = super.getStoreInfo(pd, restTemplate);
+        if (responseEntity.getStatusCode() != HttpStatus.OK) {
+            return responseEntity;
+        }
+        Assert.jsonObjectHaveKey(responseEntity.getBody().toString(), "storeId", "鏍规嵁鐢ㄦ埛ID鏌ヨ鍟嗘埛ID澶辫触锛屾湭鍖呭惈storeId鑺傜偣");
+        Assert.jsonObjectHaveKey(responseEntity.getBody().toString(), "storeTypeCd", "鏍规嵁鐢ㄦ埛ID鏌ヨ鍟嗘埛绫诲瀷澶辫触锛屾湭鍖呭惈storeTypeCd鑺傜偣");
+
+        String storeId = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeId");
+        String storeTypeCd = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeTypeCd");
+        //鏁版嵁鏍¢獙鏄惁 鍟嗘埛鏄惁鍏ラ┗璇ュ皬鍖�
+        super.checkStoreEnterCommunity(pd, storeId, storeTypeCd, communityId, restTemplate);
+
+        responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(),
+                ServiceConstant.SERVICE_API_URL + "/api/floor.deleteFloor",
+                HttpMethod.POST);
+
+        return responseEntity;
+    }
+
+    /**
+     * 鍒犻櫎灏忓尯妤� 鏍¢獙
+     *
+     * @param pd 椤甸潰鏁版嵁灏佽
+     */
+    private void validateDeleteFloor(IPageData pd) {
+
+        Assert.jsonObjectHaveKey(pd.getReqData(), "communityId", "鏈寘鍚皬鍖篒D");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "floorId", "鏈寘鍚皬鍖烘ゼID");
+
+    }
+
+    /**
+     * 鏍¢獙淇濆瓨灏忓尯妤� 淇℃伅
+     *
+     * @param pd 椤甸潰鏁版嵁灏佽
+     */
+    private void validateEditFloor(IPageData pd) {
+        Assert.jsonObjectHaveKey(pd.getReqData(), "communityId", "鏈寘鍚皬鍖篒D");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "floorId", "鏈寘鍚皬鍖烘ゼID");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "floorName", "鏈寘鍚皬鍖烘ゼ鍚嶇О");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "floorNum", "鏈寘鍚皬鍖烘ゼ缂栫爜");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "remark", "鏈寘鍚皬鍖烘ゼ澶囨敞");
+    }
+
+    /**
      * 鏍¢獙淇濆瓨灏忓尯妤� 淇℃伅
      *
      * @param pd 椤甸潰鏁版嵁灏佽
      */
     private void validateSaveFloor(IPageData pd) {
         Assert.jsonObjectHaveKey(pd.getReqData(), "communityId", "鏈寘鍚皬鍖篒D");
-        Assert.jsonObjectHaveKey(pd.getReqData(), "name", "鏈寘鍚皬鍖哄悕绉�");
-        Assert.jsonObjectHaveKey(pd.getReqData(), "floorNum", "鏈寘鍚皬鍖虹紪鐮�");
-        Assert.jsonObjectHaveKey(pd.getReqData(), "remark", "鏈寘鍚皬鍖哄娉�");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "name", "鏈寘鍚皬鍖烘ゼ鍚嶇О");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "floorNum", "鏈寘鍚皬鍖烘ゼ缂栫爜");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "remark", "鏈寘鍚皬鍖烘ゼ澶囨敞");
     }
 
     /**
@@ -123,11 +240,11 @@
      *
      * @param pd 椤甸潰灏佽瀵硅薄
      */
-    private void validateListFloor(IPageData pd) {
-        Assert.jsonObjectHaveKey(pd.getReqData(), "page", "璇锋眰鎶ユ枃涓湭鍖呭惈page鑺傜偣");
-        Assert.jsonObjectHaveKey(pd.getReqData(), "rows", "璇锋眰鎶ユ枃涓湭鍖呭惈rows鑺傜偣");
-        Assert.jsonObjectHaveKey(pd.getReqData(), "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId鑺傜偣");
-        JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+    private void validateListFloor(IPageData pd, JSONObject paramIn) {
+        Assert.jsonObjectHaveKey(paramIn, "page", "璇锋眰鎶ユ枃涓湭鍖呭惈page鑺傜偣");
+        Assert.jsonObjectHaveKey(paramIn, "rows", "璇锋眰鎶ユ枃涓湭鍖呭惈rows鑺傜偣");
+        Assert.jsonObjectHaveKey(paramIn, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId鑺傜偣");
+        //JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
         Assert.isInteger(paramIn.getString("page"), "page涓嶆槸鏁板瓧");
         Assert.isInteger(paramIn.getString("rows"), "rows涓嶆槸鏁板瓧");
         Assert.hasLength(paramIn.getString("communityId"), "灏忓尯ID涓嶈兘涓虹┖");

--
Gitblit v1.8.0