Просмотр исходного кода

代理商添加小区,开发未完成暂存

吴学文 лет назад: 6
Родитель
Сommit
9050c644fc
22 измененных файлов с 1008 добавлено и 5 удалено
  1. 9 0
      Api/src/main/java/com/java110/api/listener/AbstractServiceApiDataFlowListener.java
  2. 73 0
      Api/src/main/java/com/java110/api/listener/AbstractServiceApiListener.java
  3. 88 0
      Api/src/main/java/com/java110/api/listener/community/ListCommunitysListener.java
  4. 19 0
      CommunityService/src/main/java/com/java110/community/dao/ICommunityServiceDao.java
  5. 32 0
      CommunityService/src/main/java/com/java110/community/dao/impl/CommunityServiceDaoImpl.java
  6. 31 0
      CommunityService/src/main/java/com/java110/community/smo/impl/CommunityInnerServiceSMOImpl.java
  7. 40 0
      WebService/src/main/java/com/java110/web/components/community/CommunityManageComponent.java
  8. 47 0
      WebService/src/main/java/com/java110/web/core/AbstractComponentSMO.java
  9. 27 5
      WebService/src/main/java/com/java110/web/core/BaseComponentSMO.java
  10. 21 0
      WebService/src/main/java/com/java110/web/smo/community/ICommunityManageSMO.java
  11. 67 0
      WebService/src/main/java/com/java110/web/smo/community/impl/ListCommunitysSMOImpl.java
  12. 75 0
      WebService/src/main/resources/components/community-manage/communityManage.html
  13. 68 0
      WebService/src/main/resources/components/community-manage/communityManage.js
  14. 33 0
      WebService/src/main/resources/views/communityManageFlow.html
  15. 91 0
      java110-bean/src/main/java/com/java110/dto/community/CommunityDto.java
  16. 84 0
      java110-bean/src/main/java/com/java110/vo/api/community/ApiCommunityDataVo.java
  17. 19 0
      java110-bean/src/main/java/com/java110/vo/api/community/ApiCommunityVo.java
  18. 82 0
      java110-code-generator/src/main/java/com/java110/CommunityGeneratorApplication.java
  19. 3 0
      java110-common/src/main/java/com/java110/common/constant/PrivilegeCodeConstant.java
  20. 5 0
      java110-common/src/main/java/com/java110/common/constant/ServiceCodeConstant.java
  21. 19 0
      java110-core/src/main/java/com/java110/core/smo/community/ICommunityInnerServiceSMO.java
  22. 75 0
      java110-db/src/main/resources/mapper/community/CommunityServiceDaoImplMapper.xml

+ 9 - 0
Api/src/main/java/com/java110/api/listener/AbstractServiceApiDataFlowListener.java

@@ -367,6 +367,15 @@ public abstract class AbstractServiceApiDataFlowListener implements ServiceDataF
         }
     }
 
+    /**
+     * 分页信息校验
+     * @param reqJson
+     */
+    protected void validatePageInfo(JSONObject reqJson){
+        Assert.jsonObjectHaveKey(reqJson, "feeTypeCd", "请求中未包含feeTypeCd信息");
+        Assert.jsonObjectHaveKey(reqJson, "roomId", "请求中未包含roomId信息");
+    }
+
 
     public RestTemplate getRestTemplate() {
         return restTemplate;

+ 73 - 0
Api/src/main/java/com/java110/api/listener/AbstractServiceApiListener.java

@@ -0,0 +1,73 @@
+package com.java110.api.listener;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.common.constant.*;
+import com.java110.common.exception.ListenerExecuteException;
+import com.java110.common.util.Assert;
+import com.java110.common.util.StringUtil;
+import com.java110.core.context.DataFlowContext;
+import com.java110.core.factory.DataFlowFactory;
+import com.java110.core.smo.community.ICommunityInnerServiceSMO;
+import com.java110.dto.CommunityMemberDto;
+import com.java110.entity.center.AppService;
+import com.java110.event.service.api.ServiceDataFlowEvent;
+import com.java110.event.service.api.ServiceDataFlowListener;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.*;
+import org.springframework.web.client.HttpStatusCodeException;
+import org.springframework.web.client.RestTemplate;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 主要目的将soService 方法拆分为校验部分 和业务处理部分
+ * Created by wuxw on 2018/11/15.
+ */
+public abstract class AbstractServiceApiListener extends AbstractServiceApiDataFlowListener {
+
+    private static Logger logger = LoggerFactory.getLogger(AbstractServiceApiListener.class);
+
+
+    /**
+     * 业务处理
+     * @param event
+     */
+    public final void soService(ServiceDataFlowEvent event) {
+
+        DataFlowContext dataFlowContext = event.getDataFlowContext();
+        //获取请求数据
+        JSONObject reqJson = dataFlowContext.getReqJson();
+
+        logger.debug("API服务 --- 请求参数为:{}", reqJson.toJSONString());
+
+        validate(event, reqJson);
+
+
+        doSoService(event, dataFlowContext, reqJson);
+
+        logger.debug("API服务 --- 返回报文信息:{}", dataFlowContext.getResponseEntity());
+
+    }
+
+    /**
+     * 数据格式校验方法
+     * @param event 事件对象
+     * @param reqJson 请求报文数据
+     */
+    protected abstract void validate(ServiceDataFlowEvent event, JSONObject reqJson);
+
+
+    /**
+     * 业务处理类
+     * @param event  事件对象
+     * @param context 数据上文对象
+     * @param reqJson 请求报文
+     */
+    protected abstract void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson);
+
+
+}

+ 88 - 0
Api/src/main/java/com/java110/api/listener/community/ListCommunitysListener.java

@@ -0,0 +1,88 @@
+package com.java110.api.listener.community;
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.api.listener.AbstractServiceApiListener;
+import com.java110.common.constant.ServiceCodeConstant;
+import com.java110.common.util.BeanConvertUtil;
+import com.java110.core.annotation.Java110Listener;
+import com.java110.core.context.DataFlowContext;
+import com.java110.core.smo.community.ICommunityInnerServiceSMO;
+import com.java110.dto.community.CommunityDto;
+import com.java110.event.service.api.ServiceDataFlowEvent;
+import com.java110.vo.api.community.ApiCommunityDataVo;
+import com.java110.vo.api.community.ApiCommunityVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * 查询小区侦听类
+ */
+@Java110Listener("listCommunitysListener")
+public class ListCommunitysListener extends AbstractServiceApiListener {
+
+    @Autowired
+    private ICommunityInnerServiceSMO communityInnerServiceSMOImpl;
+
+    @Override
+    public String getServiceCode() {
+        return ServiceCodeConstant.SERVICE_CODE_LIST_COMMUNITYS;
+    }
+
+    @Override
+    public HttpMethod getHttpMethod() {
+        return HttpMethod.GET;
+    }
+
+
+    @Override
+    public int getOrder() {
+        return DEFAULT_ORDER;
+    }
+
+
+    public ICommunityInnerServiceSMO getCommunityInnerServiceSMOImpl() {
+        return communityInnerServiceSMOImpl;
+    }
+
+    public void setCommunityInnerServiceSMOImpl(ICommunityInnerServiceSMO communityInnerServiceSMOImpl) {
+        this.communityInnerServiceSMOImpl = communityInnerServiceSMOImpl;
+    }
+
+    @Override
+    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
+        super.validatePageInfo(reqJson);
+    }
+
+    @Override
+    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
+
+        CommunityDto communityDto = BeanConvertUtil.covertBean(reqJson, CommunityDto.class);
+
+        int count = communityInnerServiceSMOImpl.queryCommunitysCount(communityDto);
+
+        List<ApiCommunityDataVo> communitys = null;
+
+        if (count > 0) {
+            communitys = BeanConvertUtil.covertBeanList(communityInnerServiceSMOImpl.queryCommunitys(communityDto), ApiCommunityDataVo.class);
+        } else {
+            communitys = new ArrayList<>();
+        }
+
+        ApiCommunityVo apiCommunityVo = new ApiCommunityVo();
+
+        apiCommunityVo.setTotal(count);
+        apiCommunityVo.setRecords((int) Math.ceil((double) count / (double) reqJson.getInteger("row")));
+        apiCommunityVo.setCommunitys(communitys);
+
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiCommunityVo), HttpStatus.OK);
+
+        context.setResponseEntity(responseEntity);
+
+    }
+}

+ 19 - 0
CommunityService/src/main/java/com/java110/community/dao/ICommunityServiceDao.java

@@ -219,4 +219,23 @@ public interface ICommunityServiceDao {
      */
      int getCommunityMemberCount(Map info);
 
+    /**
+     * 查询小区信息(instance过程)
+     * 根据bId 查询小区信息
+     * @param info bId 信息
+     * @return 小区信息
+     * @throws DAOException DAO异常
+     */
+    List<Map> getCommunityInfoNew(Map info) throws DAOException;
+
+
+
+    /**
+     * 查询小区总数
+     *
+     * @param info 小区信息
+     * @return 小区数量
+     */
+    int queryCommunitysCount(Map info);
+
 }

+ 32 - 0
CommunityService/src/main/java/com/java110/community/dao/impl/CommunityServiceDaoImpl.java

@@ -433,4 +433,36 @@ public class CommunityServiceDaoImpl extends BaseServiceDao implements ICommunit
 
         return Integer.parseInt(memberCommunitys.get(0).get("count").toString());
     }
+
+    /**
+     * 查询小区信息(instance)
+     * @param info bId 信息
+     * @return List<Map>
+     * @throws DAOException DAO异常
+     */
+    @Override
+    public List<Map> getCommunityInfoNew(Map info) throws DAOException {
+        logger.debug("查询小区信息 入参 info : {}",info);
+
+        List<Map> businessCommunityInfos = sqlSessionTemplate.selectList("communityServiceDaoImpl.getCommunityInfoNew",info);
+
+        return businessCommunityInfos;
+    }
+
+    /**
+     * 查询小区数量
+     * @param info 小区信息
+     * @return 小区数量
+     */
+    @Override
+    public int queryCommunitysCount(Map info) {
+        logger.debug("查询小区数据 入参 info : {}",info);
+
+        List<Map> businessCommunityInfos = sqlSessionTemplate.selectList("communityServiceDaoImpl.queryCommunitysCount", info);
+        if (businessCommunityInfos.size() < 1) {
+            return 0;
+        }
+
+        return Integer.parseInt(businessCommunityInfos.get(0).get("count").toString());
+    }
 }

+ 31 - 0
CommunityService/src/main/java/com/java110/community/smo/impl/CommunityInnerServiceSMOImpl.java

@@ -7,12 +7,15 @@ import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.core.smo.community.ICommunityInnerServiceSMO;
 import com.java110.dto.CommunityMemberDto;
 import com.java110.dto.PageDto;
+import com.java110.dto.UserDto;
+import com.java110.dto.community.CommunityDto;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
@@ -53,6 +56,34 @@ public class CommunityInnerServiceSMOImpl extends BaseServiceSMO implements ICom
         return communityServiceDaoImpl.getCommunityMemberCount(BeanConvertUtil.beanCovertMap(communityMemberDto));
     }
 
+    @Override
+    public List<CommunityDto> queryCommunitys(@RequestBody  CommunityDto communityDto) {
+
+        //校验是否传了 分页信息
+
+        int page = communityDto.getPage();
+
+        if (page != PageDto.DEFAULT_PAGE) {
+            communityDto.setPage((page - 1) * communityDto.getRow());
+            communityDto.setRow(page * communityDto.getRow());
+        }
+
+        List<CommunityDto> communitys = BeanConvertUtil.covertBeanList(communityServiceDaoImpl.getCommunityInfoNew(BeanConvertUtil.beanCovertMap(communityDto)), CommunityDto.class);
+
+
+
+        return communitys;
+    }
+
+
+
+
+
+    @Override
+    public int queryCommunitysCount(@RequestBody CommunityDto communityDto) {
+        return communityServiceDaoImpl.queryCommunitysCount(BeanConvertUtil.beanCovertMap(communityDto));
+    }
+
     public ICommunityServiceDao getCommunityServiceDaoImpl() {
         return communityServiceDaoImpl;
     }

+ 40 - 0
WebService/src/main/java/com/java110/web/components/community/CommunityManageComponent.java

@@ -0,0 +1,40 @@
+package com.java110.web.components.community;
+
+
+import com.java110.core.context.IPageData;
+import com.java110.web.smo.community.ICommunityManageSMO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Component;
+
+
+/**
+ * 小区组件管理类
+ *
+ * add by wuxw
+ *
+ * 2019-06-29
+ */
+@Component("communityManage")
+public class CommunityManageComponent {
+
+    @Autowired
+    private ICommunityManageSMO communityManageSMOImpl;
+
+    /**
+     * 查询小区列表
+     * @param pd 页面数据封装
+     * @return 返回 ResponseEntity 对象
+     */
+    public ResponseEntity<String> list(IPageData pd){
+        return communityManageSMOImpl.listCommunitys(pd);
+    }
+
+    public ICommunityManageSMO getCommunityManageSMOImpl() {
+        return communityManageSMOImpl;
+    }
+
+    public void setCommunityManageSMOImpl(ICommunityManageSMO communityManageSMOImpl) {
+        this.communityManageSMOImpl = communityManageSMOImpl;
+    }
+}

+ 47 - 0
WebService/src/main/java/com/java110/web/core/AbstractComponentSMO.java

@@ -0,0 +1,47 @@
+package com.java110.web.core;
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.context.IPageData;
+import org.springframework.http.ResponseEntity;
+
+/**
+ * 组件抽象类
+ *
+ * add by wuxw 2019-06-19
+ */
+public abstract class AbstractComponentSMO extends BaseComponentSMO{
+
+    /**
+     * 统一业务处理类
+     * @param pd 页面数据封装
+     * @return ResponseEntity对象
+     */
+    protected final ResponseEntity<String> businessProcess(IPageData pd){
+
+        JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+
+
+        //业务数据校验
+        validate(pd, paramIn);
+
+        ResponseEntity<String> businessResult = doBusinessProcess(pd, paramIn);
+
+        return businessResult;
+
+    }
+
+    /**
+     * 页面数据校验 方法
+     * @param pd 页面数据封装
+     * @param paramIn 前台数据对象
+     */
+    protected abstract void validate(IPageData pd, JSONObject paramIn);
+
+    /**
+     * 业务数据处理类
+     * @param pd 页面数据封装
+     * @param paramIn 前台数据对象
+     */
+    protected abstract ResponseEntity<String> doBusinessProcess(IPageData pd, JSONObject paramIn);
+}

+ 27 - 5
WebService/src/main/java/com/java110/web/core/BaseComponentSMO.java

@@ -147,13 +147,21 @@ public class BaseComponentSMO extends BaseServiceSMO {
      *
      * @param pd
      * @param restTemplate
-     * @param privilegeCode
+     * @param privilegeCodes
      */
-    protected void checkUserHasPrivilege(IPageData pd, RestTemplate restTemplate, String privilegeCode) {
+    protected void checkUserHasPrivilege(IPageData pd, RestTemplate restTemplate, String ...privilegeCodes) {
         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(ResponseConstant.RESULT_CODE_ERROR, "用户没有权限操作权限" + privilegeCode);
+        for(String privilegeCode : privilegeCodes) {
+            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(ResponseConstant.RESULT_CODE_ERROR, "用户没有权限操作权限" + privilegeCodes);
+                break;
+            }
+        }
+
+        if (responseEntity.getStatusCode() != HttpStatus.OK){
+            throw new SMOException(ResponseConstant.RESULT_CODE_ERROR, "用户没有权限操作权限" + privilegeCodes);
         }
     }
 
@@ -217,4 +225,18 @@ public class BaseComponentSMO extends BaseServiceSMO {
         }
         return new ComponentValidateResult(storeId, storeTypeCd, communityId, pd.getUserId());
     }
+
+    /**
+     * 分页信息校验
+     * @param pd 页面数据封装
+     */
+    protected void validatePageInfo(IPageData pd){
+
+        Assert.jsonObjectHaveKey(pd.getReqData(), "row", "请求报文中未包含row节点");
+        Assert.jsonObjectHaveKey(pd.getReqData(), "page", "请求报文中未包含page节点");
+
+        JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+        Assert.isInteger(paramIn.getString("row"), "row必须为数字");
+        Assert.isInteger(paramIn.getString("page"), "page必须为数字");
+    }
 }

+ 21 - 0
WebService/src/main/java/com/java110/web/smo/community/ICommunityManageSMO.java

@@ -0,0 +1,21 @@
+package com.java110.web.smo.community;
+
+import com.java110.common.exception.SMOException;
+import com.java110.core.context.IPageData;
+import org.springframework.http.ResponseEntity;
+
+/**
+ * 小区管理服务接口类
+ *
+ * add by wuxw 2019-06-29
+ */
+public interface ICommunityManageSMO {
+
+    /**
+     * 查询小区信息
+     * @param pd 页面数据封装
+     * @return ResponseEntity 对象数据
+     * @throws SMOException 业务代码层
+     */
+    ResponseEntity<String> listCommunitys(IPageData pd) throws SMOException;
+}

+ 67 - 0
WebService/src/main/java/com/java110/web/smo/community/impl/ListCommunitysSMOImpl.java

@@ -0,0 +1,67 @@
+package com.java110.web.smo.community.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.common.constant.PrivilegeCodeConstant;
+import com.java110.common.constant.ServiceConstant;
+import com.java110.common.exception.SMOException;
+import com.java110.common.util.Assert;
+import com.java110.common.util.BeanConvertUtil;
+import com.java110.core.client.RestTemplate;
+import com.java110.core.context.IPageData;
+import com.java110.entity.component.ComponentValidateResult;
+import com.java110.web.core.AbstractComponentSMO;
+import com.java110.web.smo.community.ICommunityManageSMO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+/**
+ * 查询小区服务类
+ */
+@Service("listCommunitysSMOImpl")
+public class ListCommunitysSMOImpl extends AbstractComponentSMO implements ICommunityManageSMO {
+
+    @Autowired
+    private RestTemplate restTemplate;
+
+    @Override
+    public ResponseEntity<String> listCommunitys(IPageData pd) throws SMOException {
+        return businessProcess(pd);
+    }
+
+    @Override
+    protected void validate(IPageData pd, JSONObject paramIn) {
+
+        super.validatePageInfo(pd);
+
+        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.AGENT_HAS_LIST_COMMUNITY);
+    }
+
+    @Override
+    protected ResponseEntity<String> doBusinessProcess(IPageData pd, JSONObject paramIn) {
+        ComponentValidateResult result = super.validateStoreStaffCommunityRelationship(pd, restTemplate);
+
+        Map paramMap = BeanConvertUtil.beanCovertMap(result);
+        paramIn.putAll(paramMap);
+
+        String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/community.listCommunitys" + mapToUrlParam(paramIn);
+
+
+        ResponseEntity<String> responseEntity = this.callCenterService(restTemplate, pd, "",
+                apiUrl,
+                HttpMethod.GET);
+
+        return responseEntity;
+    }
+
+    public RestTemplate getRestTemplate() {
+        return restTemplate;
+    }
+
+    public void setRestTemplate(RestTemplate restTemplate) {
+        this.restTemplate = restTemplate;
+    }
+}

+ 75 - 0
WebService/src/main/resources/components/community-manage/communityManage.html

@@ -0,0 +1,75 @@
+<div id="component" class="wrapper wrapper-content animated fadeInRight ecommerce">
+    <div class="row">
+        <div class="col-lg-12">
+            <div class="ibox">
+                <div class="ibox-title">
+                    <h5>小区信息</h5>
+                    <div class="ibox-tools" style="top:10px;">
+                        <button type="button" class="btn btn-primary btn-sm" v-on:click="_openAddCommunityModal()">
+                            <i class="glyphicon glyphicon-plus"></i>
+                            添加小区
+                        </button>
+                    </div>
+                </div>
+                <div class="ibox-content">
+
+                    <table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
+                        <thead>
+                        <tr>
+                            <th>小区ID</th>
+                            <th data-hide="phone">名称</th>
+                            <th data-hide="phone">联系方式</th>
+                            <th data-hide="phone">地址</th>
+                            <th data-hide="phone">地标</th>
+                            <th data-hide="phone,tablet" >城市编码</th>
+                            <th data-hide="phone">状态</th>
+                            <th class="text-right">操作</th>
+
+                        </tr>
+                        </thead>
+                        <tbody>
+                        <tr v-for="community in communityManageInfo.communitys">
+                            <td>
+                                {{community.communityId}}
+                            </td>
+                            <td>
+                                {{community.name}}
+                            </td>
+                            <td>
+                                {{community.tel}}
+                            </td>
+                            <td>
+                                {{community.address}}
+                            </td>
+                            <td>
+                                {{community.nearbyLandmarks}}
+                            </td>
+                            <td>
+                                {{community.cityCode}}
+                            </td>
+                            <td>
+                                {{_showCommunityStatus(community.auditStatusCd)}}
+                            </td>
+                            <td class="text-right">
+                                <div class="btn-group" v-if="community.auditStatusCd == '0000'">
+                                    <button class="btn-white btn btn-xs" v-on:click="_openExitCommunityModel(community)">申请退出</button>
+                                </div>
+                            </td>
+                        </tr>
+                        </tbody>
+                        <tfoot>
+                        <tr>
+                            <td colspan="7">
+                                <ul class="pagination float-right"></ul>
+                            </td>
+                        </tr>
+                        </tfoot>
+                    </table>
+                    <!-- 分页 -->
+                    <vc:create name="pagination"></vc:create>
+                </div>
+            </div>
+        </div>
+    </div>
+
+</div>

+ 68 - 0
WebService/src/main/resources/components/community-manage/communityManage.js

@@ -0,0 +1,68 @@
+/**
+    入驻小区
+**/
+(function(vc){
+    var DEFAULT_PAGE = 1;
+    var DEFAULT_ROWS = 10;
+    vc.extends({
+        data:{
+            communityManageInfo:{
+                communitys:[],
+                total:0,
+                records:1
+            }
+        },
+        _initMethod:function(){
+            vc.component.listMyCommunity(DEFAULT_PAGE, DEFAULT_ROWS);
+        },
+        _initEvent:function(){
+            vc.on('communityManage','listMyCommunity',function(_param){
+                  vc.component._listCommunitys();
+            });
+             vc.on('pagination','page_event',function(_currentPage){
+                vc.component._listCommunitys(_currentPage,DEFAULT_ROWS);
+            });
+        },
+        methods:{
+            _listCommunitys:function(_page, _rows){
+                var param = {
+                    params:{
+                        page:_page,
+                        row:_rows
+                    }
+
+               }
+               //发送get请求
+               vc.http.get('communityManage',
+                            'list',
+                             param,
+                             function(json,res){
+                                var _communityManageInfo=JSON.parse(json);
+                                vc.component.communityManageInfo.total = _communityManageInfo.total;
+                                vc.component.communityManageInfo.records = _communityManageInfo.records;
+                                vc.component.communityManageInfo.communitys = _communityManageInfo.communitys;
+                             },function(errInfo,error){
+                                console.log('请求失败处理');
+                             }
+                           );
+            },
+            _openEnterCommunityModal:function(){
+                vc.emit('storeEnterCommunity','openStoreEnterCommunity',{});
+            },
+            _openExitCommunityModel:function(_community){
+                vc.emit('storeExitCommunity','openStoreExitCommunityModal',_community);
+            },
+            _showCommunityStatus(_statusCd){
+                if(_statusCd == '1000'){
+                    return "入驻审核";
+                }else if(_statusCd == '1001'){
+                    return "退出审核";
+                }else if(_statusCd == '0000'){
+                    return "入驻成功";
+                }
+
+                return "未知";
+            }
+        }
+    });
+})(window.vc);

+ 33 - 0
WebService/src/main/resources/views/communityManageFlow.html

@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html lang="en"
+      xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:th="http://www.thymeleaf.org"
+      xmlns:vc="http://www.thymeleaf.org">
+<head>
+    <meta charset="UTF-8"/>
+    <title>添加小区|java110</title>
+    <vc:create name="commonTop"></vc:create>
+</head>
+<body>
+<vc:create name="loading"></vc:create>
+<div id="wrapper">
+    <vc:create name="menu"></vc:create>
+
+
+    <div id="page-wrapper" class="gray-bg dashbard-1">
+        <div class="row border-bottom">
+            <vc:create name="nav"></vc:create>
+        </div>
+        <!-- id="component" -->
+        <div id="component" class="wrapper wrapper-content animated fadeInRight">
+            <vc:create name="communityManage"></vc:create>
+        </div>
+
+        <vc:create name="copyright"></vc:create>
+
+    </div>
+</div>
+
+<vc:create name="commonBottom"></vc:create>
+</body>
+</html>

+ 91 - 0
java110-bean/src/main/java/com/java110/dto/community/CommunityDto.java

@@ -0,0 +1,91 @@
+package com.java110.dto.community;
+
+import com.java110.dto.PageDto;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @ClassName FloorDto
+ * @Description 小区数据层封装
+ * @Author wuxw
+ * @Date 2019/4/24 8:52
+ * @Version 1.0
+ * add by wuxw 2019/4/24
+ **/
+public class CommunityDto extends PageDto implements Serializable {
+
+    private String address;
+private String nearbyLandmarks;
+private String cityCode;
+private String name;
+private String communityId;
+private String mapY;
+private String mapX;
+
+
+    private Date createTime;
+
+    private String statusCd = "0";
+
+
+    public String getAddress() {
+        return address;
+    }
+public void setAddress(String address) {
+        this.address = address;
+    }
+public String getNearbyLandmarks() {
+        return nearbyLandmarks;
+    }
+public void setNearbyLandmarks(String nearbyLandmarks) {
+        this.nearbyLandmarks = nearbyLandmarks;
+    }
+public String getCityCode() {
+        return cityCode;
+    }
+public void setCityCode(String cityCode) {
+        this.cityCode = cityCode;
+    }
+public String getName() {
+        return name;
+    }
+public void setName(String name) {
+        this.name = name;
+    }
+public String getCommunityId() {
+        return communityId;
+    }
+public void setCommunityId(String communityId) {
+        this.communityId = communityId;
+    }
+public String getMapY() {
+        return mapY;
+    }
+public void setMapY(String mapY) {
+        this.mapY = mapY;
+    }
+public String getMapX() {
+        return mapX;
+    }
+public void setMapX(String mapX) {
+        this.mapX = mapX;
+    }
+
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getStatusCd() {
+        return statusCd;
+    }
+
+    public void setStatusCd(String statusCd) {
+        this.statusCd = statusCd;
+    }
+}

+ 84 - 0
java110-bean/src/main/java/com/java110/vo/api/community/ApiCommunityDataVo.java

@@ -0,0 +1,84 @@
+package com.java110.vo.api.community;
+
+import com.java110.vo.MorePageVo;
+
+import java.io.Serializable;
+import java.util.Date;
+
+public class ApiCommunityDataVo implements Serializable {
+
+    private String address;
+    private String nearbyLandmarks;
+    private String cityCode;
+    private String name;
+    private String communityId;
+    private String mapY;
+    private String mapX;
+
+
+    private Date createTime;
+
+    public String getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+
+    public String getNearbyLandmarks() {
+        return nearbyLandmarks;
+    }
+
+    public void setNearbyLandmarks(String nearbyLandmarks) {
+        this.nearbyLandmarks = nearbyLandmarks;
+    }
+
+    public String getCityCode() {
+        return cityCode;
+    }
+
+    public void setCityCode(String cityCode) {
+        this.cityCode = cityCode;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getCommunityId() {
+        return communityId;
+    }
+
+    public void setCommunityId(String communityId) {
+        this.communityId = communityId;
+    }
+
+    public String getMapY() {
+        return mapY;
+    }
+
+    public void setMapY(String mapY) {
+        this.mapY = mapY;
+    }
+
+    public String getMapX() {
+        return mapX;
+    }
+
+    public void setMapX(String mapX) {
+        this.mapX = mapX;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+}

+ 19 - 0
java110-bean/src/main/java/com/java110/vo/api/community/ApiCommunityVo.java

@@ -0,0 +1,19 @@
+package com.java110.vo.api.community;
+
+import com.java110.vo.MorePageVo;
+
+import java.io.Serializable;
+import java.util.List;
+
+public class ApiCommunityVo extends MorePageVo implements Serializable {
+    List<ApiCommunityDataVo> communitys;
+
+
+    public List<ApiCommunityDataVo> getCommunitys() {
+        return communitys;
+    }
+
+    public void setCommunitys(List<ApiCommunityDataVo> communitys) {
+        this.communitys = communitys;
+    }
+}

+ 82 - 0
java110-code-generator/src/main/java/com/java110/CommunityGeneratorApplication.java

@@ -0,0 +1,82 @@
+package com.java110;
+
+
+import com.java110.code.*;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Hello world!
+ */
+public class CommunityGeneratorApplication {
+
+    protected CommunityGeneratorApplication() {
+        // prevents calls from subclass
+        throw new UnsupportedOperationException();
+    }
+
+    /**
+     * 代码生成器 入口方法
+     *
+     * @param args 参数
+     */
+    public static void main(String[] args) {
+        Data data = new Data();
+        data.setId("communityId");
+        data.setName("community");
+        data.setDesc("小区");
+        data.setShareParam("communityId");
+        data.setShareColumn("community_id");
+        data.setNewBusinessTypeCd("BUSINESS_TYPE_SAVE_FEE_INFO");
+        data.setUpdateBusinessTypeCd("BUSINESS_TYPE_UPDATE_FEE_INFO");
+        data.setDeleteBusinessTypeCd("BUSINESS_TYPE_DELETE_FEE_INFO");
+        data.setNewBusinessTypeCdValue("600100030001");
+        data.setUpdateBusinessTypeCdValue("600100040001");
+        data.setDeleteBusinessTypeCdValue("600100050001");
+        data.setBusinessTableName("business_community");
+        data.setTableName("s_community");
+        Map<String, String> param = new HashMap<String, String>();
+        param.put("communityId", "community_id");
+        param.put("bId", "b_id");
+        param.put("name", "name");
+        param.put("address", "address");
+        param.put("nearbyLandmarks", "nearby_landmarks");
+        param.put("cityCode", "city_code");
+        param.put("mapX", "map_x");
+        param.put("mapY", "map_y");
+        param.put("statusCd", "status_cd");
+        param.put("operate", "operate");
+        data.setParams(param);
+        GeneratorSaveInfoListener generatorSaveInfoListener = new GeneratorSaveInfoListener();
+        generatorSaveInfoListener.generator(data);
+
+        GeneratorAbstractBussiness generatorAbstractBussiness = new GeneratorAbstractBussiness();
+        generatorAbstractBussiness.generator(data);
+
+        GeneratorIServiceDaoListener generatorIServiceDaoListener = new GeneratorIServiceDaoListener();
+        generatorIServiceDaoListener.generator(data);
+
+        GeneratorServiceDaoImplListener generatorServiceDaoImplListener = new GeneratorServiceDaoImplListener();
+        generatorServiceDaoImplListener.generator(data);
+
+        GeneratorServiceDaoImplMapperListener generatorServiceDaoImplMapperListener = null;
+        generatorServiceDaoImplMapperListener = new GeneratorServiceDaoImplMapperListener();
+        generatorServiceDaoImplMapperListener.generator(data);
+
+        GeneratorUpdateInfoListener generatorUpdateInfoListener = new GeneratorUpdateInfoListener();
+        generatorUpdateInfoListener.generator(data);
+
+        GeneratorDeleteInfoListener generatorDeleteInfoListener = new GeneratorDeleteInfoListener();
+        generatorDeleteInfoListener.generator(data);
+
+        GeneratorInnerServiceSMOImpl generatorInnerServiceSMOImpl = new GeneratorInnerServiceSMOImpl();
+        generatorInnerServiceSMOImpl.generator(data);
+
+        GeneratorDtoBean generatorDtoBean = new GeneratorDtoBean();
+        generatorDtoBean.generator(data);
+
+        GeneratorIInnerServiceSMO generatorIInnerServiceSMO = new GeneratorIInnerServiceSMO();
+        generatorIInnerServiceSMO.generator(data);
+    }
+}

+ 3 - 0
java110-common/src/main/java/com/java110/common/constant/PrivilegeCodeConstant.java

@@ -57,4 +57,7 @@ public final class PrivilegeCodeConstant {
 
     // demo 权限编码
     public static final String PRIVILEGE_DEMO = "500201906023";
+
+
+    public static final String AGENT_HAS_LIST_COMMUNITY = "500201906025";
 }

+ 5 - 0
java110-common/src/main/java/com/java110/common/constant/ServiceCodeConstant.java

@@ -481,4 +481,9 @@ public class ServiceCodeConstant {
     //保存用例配置
     public static final String SERVICE_CODE_SAVE_DEMO_CONFIG = "demo.saveDemoConfig";
 
+    /**
+     * 查询小区信息
+     */
+    public static final String SERVICE_CODE_LIST_COMMUNITYS = "community.listCommunitys";
+
 }

+ 19 - 0
java110-core/src/main/java/com/java110/core/smo/community/ICommunityInnerServiceSMO.java

@@ -3,6 +3,7 @@ package com.java110.core.smo.community;
 
 import com.java110.core.feign.FeignConfiguration;
 import com.java110.dto.CommunityMemberDto;
+import com.java110.dto.community.CommunityDto;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -23,6 +24,24 @@ import java.util.List;
 public interface ICommunityInnerServiceSMO {
 
 
+    /**
+     * <p>查询小区楼信息</p>
+     *
+     *
+     * @param communityDto 数据对象分享
+     * @return CommunityDto 对象数据
+     */
+    @RequestMapping(value = "/queryCommunitys", method = RequestMethod.POST)
+    List<CommunityDto> queryCommunitys(@RequestBody CommunityDto communityDto);
+
+    /**
+     * 查询<p>小区楼</p>总记录数
+     *
+     * @param communityDto 数据对象分享
+     * @return 小区下的小区楼记录数
+     */
+    @RequestMapping(value = "/queryCommunitysCount", method = RequestMethod.POST)
+    int queryCommunitysCount(@RequestBody CommunityDto communityDto);
 
     /**
      * 查询小区成员表

+ 75 - 0
java110-db/src/main/resources/mapper/community/CommunityServiceDaoImplMapper.xml

@@ -356,4 +356,79 @@
         </if>
     </select>
 
+    <!-- 查询小区信息 add by wuxw 2018-07-03 -->
+    <select id="getCommunityInfoNew" parameterType="Map" resultType="Map">
+        select  t.address,t.nearby_landmarks,t.nearby_landmarks nearbyLandmarks,t.city_code,t.city_code cityCode,t.name,t.status_cd,t.status_cd statusCd,t.community_id,t.community_id communityId,t.b_id,t.b_id bId,t.map_y,t.map_y mapY,t.map_x,t.map_x mapX
+        from s_community t
+        where 1 =1
+        <if test="address !=null and address != ''">
+            and t.address= #{address}
+        </if>
+        <if test="nearbyLandmarks !=null and nearbyLandmarks != ''">
+            and t.nearby_landmarks= #{nearbyLandmarks}
+        </if>
+        <if test="cityCode !=null and cityCode != ''">
+            and t.city_code= #{cityCode}
+        </if>
+        <if test="name !=null and name != ''">
+            and t.name= #{name}
+        </if>
+        <if test="statusCd !=null and statusCd != ''">
+            and t.status_cd= #{statusCd}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
+        <if test="mapY !=null and mapY != ''">
+            and t.map_y= #{mapY}
+        </if>
+        <if test="mapX !=null and mapX != ''">
+            and t.map_x= #{mapX}
+        </if>
+        <if test="page != -1 and page != null ">
+            limit #{page}, #{row}
+        </if>
+
+    </select>
+
+
+
+    <!-- 查询小区数量 add by wuxw 2018-07-03 -->
+    <select id="queryCommunitysCount" parameterType="Map" resultType="Map">
+        select  count(1) count
+        from s_community t
+        where 1 =1
+        <if test="address !=null and address != ''">
+            and t.address= #{address}
+        </if>
+        <if test="nearbyLandmarks !=null and nearbyLandmarks != ''">
+            and t.nearby_landmarks= #{nearbyLandmarks}
+        </if>
+        <if test="cityCode !=null and cityCode != ''">
+            and t.city_code= #{cityCode}
+        </if>
+        <if test="name !=null and name != ''">
+            and t.name= #{name}
+        </if>
+        <if test="statusCd !=null and statusCd != ''">
+            and t.status_cd= #{statusCd}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
+        <if test="mapY !=null and mapY != ''">
+            and t.map_y= #{mapY}
+        </if>
+        <if test="mapX !=null and mapX != ''">
+            and t.map_x= #{mapX}
+        </if>
+
+
+    </select>
 </mapper>