吴学文
2019-06-04 e460dff7a88747dcb66d08b2ed9d7280f94294ee
WebService/src/main/java/com/java110/web/core/BaseComponentSMO.java
@@ -3,15 +3,15 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.common.cache.MappingCache;
import com.java110.common.constant.CommonConstant;
import com.java110.common.constant.MappingConstant;
import com.java110.common.constant.ResponseConstant;
import com.java110.common.constant.ServiceConstant;
import com.java110.common.exception.SMOException;
import com.java110.common.factory.ApplicationContextFactory;
import com.java110.common.util.Assert;
import com.java110.core.base.smo.BaseServiceSMO;
import com.java110.core.context.IPageData;
import com.java110.web.smo.impl.LoginServiceSMOImpl;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpMethod;
@@ -20,6 +20,7 @@
import org.springframework.web.client.RestTemplate;
import java.lang.reflect.Method;
import java.util.Map;
/**
 * Created by wuxw on 2019/3/22.
@@ -27,6 +28,8 @@
public class BaseComponentSMO extends BaseServiceSMO {
    private static Logger logger = LoggerFactory.getLogger(BaseComponentSMO.class);
    protected static final int MAX_ROW = 50;
    /**
     * 调用组件
@@ -105,9 +108,9 @@
        ResponseEntity<String> responseEntity = null;
        responseEntity = this.callCenterService(restTemplate, pd, "",
                ServiceConstant.SERVICE_API_URL + "/api/query.myCommunity.byMember?memberId=" + storeId + "&memberTypeCd="
                        + MappingCache.getValue(MappingConstant.DOMAIN_STORE_TYPE_2_COMMUNITY_MEMBER_TYPE,storeTypeCd), HttpMethod.GET);
                        + MappingCache.getValue(MappingConstant.DOMAIN_STORE_TYPE_2_COMMUNITY_MEMBER_TYPE, storeTypeCd), HttpMethod.GET);
        if (responseEntity.getStatusCode() != HttpStatus.OK) {
            throw new SMOException(1999, "还未入驻小区,请先入驻小区");
            throw new SMOException(ResponseConstant.RESULT_CODE_ERROR, "还未入驻小区,请先入驻小区");
        }
        Assert.jsonObjectHaveKey(responseEntity.getBody().toString(), "communitys", "还未入驻小区,请先入驻小区");
@@ -117,20 +120,20 @@
        JSONArray communitys = community.getJSONArray("communitys");
        if (communitys == null || communitys.size() == 0) {
            throw new SMOException(1999, "还未入驻小区,请先入驻小区");
            throw new SMOException(ResponseConstant.RESULT_CODE_ERROR, "还未入驻小区,请先入驻小区");
        }
        JSONObject currentCommunity = getCurrentCommunity(communitys,communityId);
        JSONObject currentCommunity = getCurrentCommunity(communitys, communityId);
        if(currentCommunity == null){
            throw new SMOException(1999, "传入小区ID非法,请正常操作");
        if (currentCommunity == null) {
            throw new SMOException(ResponseConstant.RESULT_CODE_ERROR, "传入小区ID非法,请正常操作");
        }
    }
    private JSONObject getCurrentCommunity(JSONArray communitys,String communityId){
    private JSONObject getCurrentCommunity(JSONArray communitys, String communityId) {
        for (int communityIndex = 0; communityIndex < communitys.size(); communityIndex++) {
            if(communityId.equals(communitys.getJSONObject(communityIndex).getString("communityId"))){
            if (communityId.equals(communitys.getJSONObject(communityIndex).getString("communityId"))) {
                return communitys.getJSONObject(communityIndex);
            }
        }
@@ -149,7 +152,34 @@
        ResponseEntity<String> responseEntity = null;
        responseEntity = this.callCenterService(restTemplate, pd, "", ServiceConstant.SERVICE_API_URL + "/api/check.user.hasPrivilege?userId=" + pd.getUserId() + "&pId=" + privilegeCode, HttpMethod.GET);
        if (responseEntity.getStatusCode() != HttpStatus.OK) {
            throw new SMOException(1999, "用户没有权限操作权限" + privilegeCode);
            throw new SMOException(ResponseConstant.RESULT_CODE_ERROR, "用户没有权限操作权限" + privilegeCode);
        }
    }
    /**
     * map 参数转 url get 参数 非空值转为get参数 空值忽略
     *
     * @param info map数据
     * @return url get 参数 带?
     */
    protected String mapToUrlParam(Map info) {
        String urlParam = "";
        if (info == null || info.isEmpty()) {
            return urlParam;
        }
        urlParam += "?";
        for (Object key : info.keySet()) {
            if (StringUtils.isEmpty(info.get(key) + "")) {
                continue;
            }
            urlParam += (key + "=" + info.get(key) + "&");
        }
        urlParam = urlParam.endsWith("&") ? urlParam.substring(0, urlParam.length() - 1) : urlParam;
        return urlParam;
    }
}