From 79d396f96e4da4734d940343f5cf0e179c35cb4b Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期五, 03 五月 2019 18:41:39 +0800
Subject: [PATCH] 小区单元修改开发完成

---
 WebService/src/main/java/com/java110/web/smo/impl/UnitServiceSMOImpl.java |  107 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 107 insertions(+), 0 deletions(-)

diff --git a/WebService/src/main/java/com/java110/web/smo/impl/UnitServiceSMOImpl.java b/WebService/src/main/java/com/java110/web/smo/impl/UnitServiceSMOImpl.java
index 62c6166..d189d9e 100644
--- a/WebService/src/main/java/com/java110/web/smo/impl/UnitServiceSMOImpl.java
+++ b/WebService/src/main/java/com/java110/web/smo/impl/UnitServiceSMOImpl.java
@@ -70,6 +70,113 @@
     }
 
     /**
+     * 淇濆瓨灏忓尯鍗曞厓淇℃伅
+     *
+     * @param pd 椤甸潰鏁版嵁灏佽
+     * @return ResponseEntity瀵硅薄
+     */
+    @Override
+    public ResponseEntity<String> saveUnit(IPageData pd) {
+
+        //鏍¢獙鍏ュ弬
+        validateSaveUnit(pd);
+
+        //鏍¢獙鐢ㄦ埛鏄惁鏈夋潈闄�
+        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_UNIT);
+
+        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);
+
+        String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/unit.saveUnit";
+
+        responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(),
+                apiUrl,
+                HttpMethod.POST);
+        return responseEntity;
+    }
+
+    @Override
+    public ResponseEntity<String> updateUnit(IPageData pd) {
+        //鏍¢獙鍏ュ弬
+        validateUpdateUnit(pd);
+
+        //鏍¢獙鐢ㄦ埛鏄惁鏈夋潈闄�
+        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_UNIT);
+
+        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);
+
+        String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/unit.updateUnit";
+
+        responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(),
+                apiUrl,
+                HttpMethod.POST);
+        return responseEntity;
+    }
+
+    /**
+     * 鏍¢獙 淇濆瓨灏忓尯鍗曞厓鍙傛暟淇℃伅
+     *
+     * @param pd 椤甸潰鏁版嵁灏佽
+     */
+    private void validateSaveUnit(IPageData pd) {
+        Assert.jsonObjectHaveKey(pd.getReqData(), "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "floorId", "璇锋眰鎶ユ枃涓湭鍖呭惈floorId鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "unitNum", "璇锋眰鎶ユ枃涓湭鍖呭惈unitNum鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "layerCount", "璇锋眰鎶ユ枃涓湭鍖呭惈layerCount鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "lift", "璇锋眰鎶ユ枃涓湭鍖呭惈lift鑺傜偣");
+        JSONObject reqJson = JSONObject.parseObject(pd.getReqData());
+        Assert.isInteger(reqJson.getString("layerCount"), "鍗曞厓鎬诲眰鏁版嵁涓嶆槸鏈夋晥鏁板瓧");
+
+        if (!"1010".equals(reqJson.getString("lift")) && !"2020".equals(reqJson.getString("lift"))) {
+            throw new IllegalArgumentException("鏄惁鏈夌數姊� 浼犲叆鏁版嵁閿欒");
+        }
+    }
+
+    /**
+     * 鏍¢獙 淇敼灏忓尯鍗曞厓鍙傛暟淇℃伅
+     *
+     * @param pd 椤甸潰鏁版嵁灏佽
+     */
+    private void validateUpdateUnit(IPageData pd) {
+        Assert.jsonObjectHaveKey(pd.getReqData(), "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "floorId", "璇锋眰鎶ユ枃涓湭鍖呭惈floorId鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "unitNum", "璇锋眰鎶ユ枃涓湭鍖呭惈unitNum鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "layerCount", "璇锋眰鎶ユ枃涓湭鍖呭惈layerCount鑺傜偣");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "lift", "璇锋眰鎶ユ枃涓湭鍖呭惈lift鑺傜偣");
+        JSONObject reqJson = JSONObject.parseObject(pd.getReqData());
+        Assert.isInteger(reqJson.getString("layerCount"), "鍗曞厓鎬诲眰鏁版嵁涓嶆槸鏈夋晥鏁板瓧");
+
+        if (!"1010".equals(reqJson.getString("lift")) && !"2020".equals(reqJson.getString("lift"))) {
+            throw new IllegalArgumentException("鏄惁鏈夌數姊� 浼犲叆鏁版嵁閿欒");
+        }
+    }
+
+    /**
      * 灏忓尯鍗曞厓鏌ヨ鏁版嵁鏍¢獙
      *
      * @param pd 椤甸潰鏁版嵁灏佽瀵硅薄

--
Gitblit v1.8.0