From 9e29441646434d9f54a2c3e855a724633885d8a4 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 13 八月 2019 19:43:49 +0800
Subject: [PATCH] 缓存开发测试完成
---
WebService/src/main/java/com/java110/web/smo/impl/FloorServiceSMOImpl.java | 258 +++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 217 insertions(+), 41 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 45e6aff..9edd935 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,11 +1,14 @@
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.common.util.StringUtil;
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;
@@ -19,70 +22,243 @@
/**
* 灏忓尯妤煎疄鐜扮被
- *
+ * <p>
* add by wuxw 2019-04-22
*/
@Service("floorServiceSMOImpl")
public class FloorServiceSMOImpl extends BaseComponentSMO implements IFloorServiceSMO {
- private final static Logger logger = LoggerFactory.getLogger(FloorServiceSMOImpl.class);
+ private static Logger logger = LoggerFactory.getLogger(FloorServiceSMOImpl.class);
+
+
@Autowired
private RestTemplate restTemplate;
+
/**
- * 鏌ヨ灏忓尯妤�
+ * 鏌ヨ 妤兼爧
* @param pd 椤甸潰鏁版嵁灏佽瀵硅薄
- * @return
+ * @return 杩斿洖 ResponseEntity瀵硅薄鍖呭惈 http鐘舵�� 淇℃伅 body淇℃伅
*/
- @Override
- public ResponseEntity<String> listFloor(IPageData pd) {
-
- validateListFloor(pd);
-
+ public ResponseEntity<String> getFloor(IPageData pd){
JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
- int page = Integer.parseInt(paramIn.getString("page"));
- int rows = Integer.parseInt(paramIn.getString("rows"));
- String floorName = paramIn.getString("floorName");
- page = (page-1)*rows;
- ResponseEntity responseEntity = super.getStoreInfo(pd,restTemplate);
- if(responseEntity.getStatusCode() != HttpStatus.OK){
- return responseEntity;
- }
- Assert.jsonObjectHaveKey(responseEntity.getBody().toString(),"storeId","鏍规嵁鐢ㄦ埛ID鏌ヨ鍟嗘埛ID澶辫触锛屾湭鍖呭惈storeId鑺傜偣");
+ paramIn.put("page",1);
+ paramIn.put("row",1);
+ super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_FLOOR);
- String storeId = JSONObject.parseObject(responseEntity.getBody().toString()).getString("storeId");
- if(StringUtil.isEmpty(floorName)) {
- responseEntity = this.callCenterService(restTemplate, pd, "",
- ServiceConstant.SERVICE_API_URL + "/api/query.staff.infos?rows=" + rows + "&page=" + page + "&storeId=" + storeId, HttpMethod.GET);
- }else {
- responseEntity = this.callCenterService(restTemplate, pd, "",
- ServiceConstant.SERVICE_API_URL + "/api/query.staff.byName?rows=" + rows + "&page=" + page + "&storeId=" + storeId+"&name="+floorName, HttpMethod.GET);
- }
- if(responseEntity.getStatusCode() != HttpStatus.OK){
- return responseEntity;
- }
+ ComponentValidateResult result = super.validateStoreStaffCommunityRelationship(pd, restTemplate);
- JSONObject resultObjs = JSONObject.parseObject(responseEntity.getBody().toString());
- resultObjs.put("row",rows);
- resultObjs.put("page",page);
+ ResponseEntity responseEntity = this.callCenterService(restTemplate, pd, "",
+ ServiceConstant.SERVICE_API_URL + "/api/floor.queryFloors" + mapToUrlParam(paramIn),
+ HttpMethod.GET);
+
return responseEntity;
}
/**
- * 鏍¢獙鏌ヨ灏忓尯妤间俊鎭�
- * @param pd
+ * 鏌ヨ灏忓尯妤�
+ *
+ * @param pd 椤甸潰鏁版嵁灏佽瀵硅薄
+ * @return 杩斿洖 ResponseEntity瀵硅薄鍖呭惈 http鐘舵�� 淇℃伅 body淇℃伅
*/
- private void validateListFloor(IPageData pd){
- Assert.jsonObjectHaveKey(pd.getReqData(),"page","璇锋眰鎶ユ枃涓湭鍖呭惈page鑺傜偣");
- Assert.jsonObjectHaveKey(pd.getReqData(),"rows","璇锋眰鎶ユ枃涓湭鍖呭惈rows鑺傜偣");
+ @Override
+ public ResponseEntity<String> listFloor(IPageData pd) {
JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
- Assert.isInteger(paramIn.getString("page"),"page涓嶆槸鏁板瓧");
- Assert.isInteger(paramIn.getString("rows"),"rows涓嶆槸鏁板瓧");
+ 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");
+
+
+ //鏍¢獙鐢ㄦ埛鏄惁鏈夋潈闄�
+ super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.PRIVILEGE_FLOOR);
+
+ 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/floor.queryFloors?row=" + rows + "&page=" + page + "&communityId="
+ + communityId;
+
+ if (!StringUtil.isEmpty(floorNum)) {
+ apiUrl += "&floorNum=" + floorNum;
+ }
+
+ responseEntity = this.callCenterService(restTemplate, pd, "",
+ apiUrl,
+ HttpMethod.GET);
+
+ if (responseEntity.getStatusCode() != HttpStatus.OK) {
+ return responseEntity;
+ }
+
+ JSONObject resultObjs = JSONObject.parseObject(responseEntity.getBody().toString());
+ resultObjs.put("row", rows);
+ resultObjs.put("page", page);
+ return responseEntity;
+ }
+
+ @Override
+ public ResponseEntity<String> saveFloor(IPageData pd) {
+
+ validateSaveFloor(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());
+ responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(),
+ ServiceConstant.SERVICE_API_URL + "/api/floor.saveFloor",
+ HttpMethod.POST);
+
+ return responseEntity;
+ }
+
+ /**
+ * 缂栬緫灏忓尯妤间俊鎭�
+ *
+ * @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", "鏈寘鍚皬鍖烘ゼ澶囨敞");
+ }
+
+ /**
+ * 鏍¢獙鏌ヨ灏忓尯妤间俊鎭�
+ *
+ * @param pd 椤甸潰灏佽瀵硅薄
+ */
+ 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涓嶈兘涓虹┖");
int rows = Integer.parseInt(paramIn.getString("rows"));
- if(rows>50){
- throw new SMOException(1999,"rows 鏁伴噺涓嶈兘澶т簬50");
+
+ if (rows > MAX_ROW) {
+ throw new SMOException(ResponseConstant.RESULT_CODE_ERROR, "rows 鏁伴噺涓嶈兘澶т簬50");
}
}
--
Gitblit v1.8.0