wuxw лет назад: 6
Родитель
Сommit
9f9836688f
16 измененных файлов с 707 добавлено и 21 удалено
  1. 130 0
      Api/src/main/java/com/java110/api/listener/store/ListStoresListener.java
  2. 3 0
      Api/src/main/java/com/java110/api/listener/user/AddStaffServiceListener.java
  3. 2 0
      StoreService/src/main/java/com/java110/store/dao/IStoreServiceDao.java
  4. 8 0
      StoreService/src/main/java/com/java110/store/dao/impl/StoreServiceDaoImpl.java
  5. 13 0
      StoreService/src/main/java/com/java110/store/smo/impl/StoreInnerServiceSMOImpl.java
  6. 42 0
      WebService/src/main/java/com/java110/web/components/store/ListStoreManageComponent.java
  7. 21 0
      WebService/src/main/java/com/java110/web/smo/store/IListStoreSMO.java
  8. 70 0
      WebService/src/main/java/com/java110/web/smo/store/impl/ListStoreSMOImpl.java
  9. 102 0
      WebService/src/main/resources/components/storePackage/listStoreManage/listStoreManage.html
  10. 77 0
      WebService/src/main/resources/components/storePackage/listStoreManage/listStoreManage.js
  11. 40 0
      WebService/src/main/resources/views/listStoresFlow.html
  12. 85 0
      java110-bean/src/main/java/com/java110/dto/store/StoreAttrDto.java
  13. 27 0
      java110-bean/src/main/java/com/java110/vo/api/store/ApiStoreDataVo.java
  14. 7 0
      java110-core/src/main/java/com/java110/core/smo/store/IStoreInnerServiceSMO.java
  15. 75 21
      java110-db/src/main/resources/mapper/store/StoreServiceDaoImplMapper.xml
  16. 5 0
      java110-utils/src/main/java/com/java110/utils/constant/ServiceCodeConstant.java

+ 130 - 0
Api/src/main/java/com/java110/api/listener/store/ListStoresListener.java

@@ -0,0 +1,130 @@
+package com.java110.api.listener.store;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.api.listener.AbstractServiceApiDataFlowListener;
+import com.java110.api.listener.AbstractServiceApiListener;
+import com.java110.core.annotation.Java110Listener;
+import com.java110.core.context.DataFlowContext;
+import com.java110.core.factory.DataFlowFactory;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.smo.community.ICommunityInnerServiceSMO;
+import com.java110.core.smo.store.IStoreInnerServiceSMO;
+import com.java110.dto.CommunityMemberDto;
+import com.java110.dto.store.StoreAttrDto;
+import com.java110.dto.store.StoreDto;
+import com.java110.entity.center.AppService;
+import com.java110.event.service.api.ServiceDataFlowEvent;
+import com.java110.utils.cache.MappingCache;
+import com.java110.utils.constant.*;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.vo.api.advert.ApiAdvertDataVo;
+import com.java110.vo.api.advert.ApiAdvertVo;
+import com.java110.vo.api.store.ApiStoreDataVo;
+import com.java110.vo.api.store.ApiStoreVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.*;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 保存商户信息
+ * Created by Administrator on 2019/3/29.
+ */
+@Java110Listener("listStoresListener")
+public class ListStoresListener extends AbstractServiceApiListener {
+
+    @Autowired
+    private IStoreInnerServiceSMO storeInnerServiceSMOImpl;
+
+
+    @Override
+    public int getOrder() {
+        return 0;
+    }
+
+    @Override
+    public String getServiceCode() {
+        return ServiceCodeConstant.SERVICE_CODE_LIST_STORES;
+    }
+
+    @Override
+    public HttpMethod getHttpMethod() {
+        return HttpMethod.GET;
+    }
+
+    @Override
+    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
+        super.validatePageInfo(reqJson);
+        Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区信息");
+
+    }
+
+    @Override
+    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
+
+
+        StoreDto storeDto = BeanConvertUtil.covertBean(reqJson, StoreDto.class);
+        int storeCount = storeInnerServiceSMOImpl.getStoreCount(storeDto);
+        List<StoreDto> storeDtos = null;
+        List<ApiStoreDataVo> stores = null;
+        if (storeCount > 0) {
+            storeDtos = storeInnerServiceSMOImpl.getStores(storeDto);
+            stores = BeanConvertUtil.covertBeanList(storeDtos, ApiStoreDataVo.class);
+            refreshStoreAttr(stores);
+        } else {
+            stores = new ArrayList<>();
+        }
+
+        ApiStoreVo apiStoreVo = new ApiStoreVo();
+
+        apiStoreVo.setTotal(storeCount);
+        apiStoreVo.setRecords((int) Math.ceil((double) storeCount / (double) reqJson.getInteger("row")));
+        apiStoreVo.setStores(stores);
+
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiStoreVo), HttpStatus.OK);
+
+        context.setResponseEntity(responseEntity);
+
+    }
+
+    private void refreshStoreAttr(List<ApiStoreDataVo> stores) {
+        StoreAttrDto storeAttrDto = new StoreAttrDto();
+        storeAttrDto.setStoreIds(getStoreIds(stores));
+        List<StoreAttrDto> storeAttrDtos = storeInnerServiceSMOImpl.getStoreAttrs(storeAttrDto);
+
+        for(ApiStoreDataVo storeDataVo : stores){
+            for(StoreAttrDto tmpStoreAttrDto: storeAttrDtos){
+                if(!storeDataVo.getStoreId().equals(tmpStoreAttrDto.getStoreId())){
+                    continue;
+                }
+                if("100201903001".equals(tmpStoreAttrDto.getSpecCd())){
+                    storeDataVo.setArtificialPerson(tmpStoreAttrDto.getValue());
+                }else if("100201903003".equals(tmpStoreAttrDto.getSpecCd())){
+                    storeDataVo.setEstablishment(tmpStoreAttrDto.getValue());
+                }else if("100201903005".equals(tmpStoreAttrDto.getSpecCd())){
+                    storeDataVo.setBusinessScope(tmpStoreAttrDto.getValue());
+                }
+            }
+        }
+    }
+
+    /**
+     * 查询商户ID
+     *
+     * @param apiStoreDataVos
+     * @return
+     */
+    private String[] getStoreIds(List<ApiStoreDataVo> apiStoreDataVos) {
+        List<String> storeIds = new ArrayList<>();
+        for (ApiStoreDataVo storeDataVo : apiStoreDataVos) {
+            storeIds.add(storeDataVo.getStoreId());
+        }
+
+        return storeIds.toArray(new String[storeIds.size()]);
+    }
+
+
+}

+ 3 - 0
Api/src/main/java/com/java110/api/listener/user/AddStaffServiceListener.java

@@ -76,6 +76,7 @@ public class AddStaffServiceListener extends AbstractServiceApiDataFlowListener{
             //添加用户
             JSONObject business = addUser(paramInJson,dataFlowContext);
             businesses.add(business);
+
         }
 
         paramInJson.put("userId",userId);
@@ -184,6 +185,8 @@ public class AddStaffServiceListener extends AbstractServiceApiDataFlowListener{
         return business;
     }
 
+
+
     /**
      * 对请求报文处理
      * @param paramObj

+ 2 - 0
StoreService/src/main/java/com/java110/store/dao/IStoreServiceDao.java

@@ -270,4 +270,6 @@ public interface IStoreServiceDao {
      */
     public List<Map> getStores(Map info) throws DAOException;
 
+    public int getStoreCount(Map info) throws DAOException;
+
 }

+ 8 - 0
StoreService/src/main/java/com/java110/store/dao/impl/StoreServiceDaoImpl.java

@@ -508,4 +508,12 @@ public class StoreServiceDaoImpl extends BaseServiceDao implements IStoreService
 
         return propertyUsers;
     }
+
+    public int getStoreCount(Map info) throws DAOException{
+        List<Map> stores = sqlSessionTemplate.selectList("storeServiceDaoImpl.getStoreCount", info);
+        if (stores.size() < 1) {
+            return 0;
+        }
+        return Integer.parseInt(stores.get(0).get("count").toString());
+    }
 }

+ 13 - 0
StoreService/src/main/java/com/java110/store/smo/impl/StoreInnerServiceSMOImpl.java

@@ -1,5 +1,6 @@
 package com.java110.store.smo.impl;
 
+import com.java110.dto.store.StoreAttrDto;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.core.smo.store.IStoreInnerServiceSMO;
@@ -8,6 +9,8 @@ import com.java110.dto.store.StoreDto;
 import com.java110.store.dao.IStoreServiceDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
@@ -52,6 +55,16 @@ public class StoreInnerServiceSMOImpl  extends BaseServiceSMO implements IStoreI
         return storeDtos;
     }
 
+    public List<StoreAttrDto> getStoreAttrs(@RequestBody StoreAttrDto storeAttrDto){
+        List<StoreAttrDto> storeAttrDtos = BeanConvertUtil.covertBeanList(storeServiceDaoImpl.getStoreAttrs(BeanConvertUtil.beanCovertMap(storeAttrDto)), StoreAttrDto.class);
+        return storeAttrDtos;
+    }
+
+
+    public int getStoreCount(@RequestBody StoreDto storeDto){
+        return storeServiceDaoImpl.getStoreCount(BeanConvertUtil.beanCovertMap(storeDto));
+    }
+
 
     public IStoreServiceDao getStoreServiceDaoImpl() {
         return storeServiceDaoImpl;

+ 42 - 0
WebService/src/main/java/com/java110/web/components/store/ListStoreManageComponent.java

@@ -0,0 +1,42 @@
+package com.java110.web.components.store;
+
+
+import com.java110.core.context.IPageData;
+import com.java110.web.smo.applicationKey.IListApplicationKeysSMO;
+import com.java110.web.smo.store.IListStoreSMO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Component;
+
+
+/**
+ * 钥匙申请组件管理类
+ * <p>
+ * add by wuxw
+ * <p>
+ * 2019-06-29
+ */
+@Component("listStoreManageManage")
+public class ListStoreManageComponent {
+
+    @Autowired
+    private IListStoreSMO listStoreSMOImpl;
+
+    /**
+     * 查询钥匙申请列表
+     *
+     * @param pd 页面数据封装
+     * @return 返回 ResponseEntity 对象
+     */
+    public ResponseEntity<String> list(IPageData pd) {
+        return listStoreSMOImpl.listStores(pd);
+    }
+
+    public IListStoreSMO getListStoreSMOImpl() {
+        return listStoreSMOImpl;
+    }
+
+    public void setListStoreSMOImpl(IListStoreSMO listStoreSMOImpl) {
+        this.listStoreSMOImpl = listStoreSMOImpl;
+    }
+}

+ 21 - 0
WebService/src/main/java/com/java110/web/smo/store/IListStoreSMO.java

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

+ 70 - 0
WebService/src/main/java/com/java110/web/smo/store/impl/ListStoreSMOImpl.java

@@ -0,0 +1,70 @@
+package com.java110.web.smo.store.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.component.AbstractComponentSMO;
+import com.java110.core.context.IPageData;
+import com.java110.entity.component.ComponentValidateResult;
+import com.java110.utils.constant.ServiceConstant;
+import com.java110.utils.exception.SMOException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.web.smo.store.IListStoreSMO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Service;
+import org.springframework.web.client.RestTemplate;
+
+import java.util.Map;
+
+/**
+ * 查询carInout服务类
+ */
+@Service("listStoreSMOImpl")
+public class ListStoreSMOImpl extends AbstractComponentSMO implements IListStoreSMO {
+
+    @Autowired
+    private RestTemplate restTemplate;
+
+    @Override
+    public ResponseEntity<String> listStores(IPageData pd) throws SMOException {
+        return businessProcess(pd);
+    }
+
+    @Override
+    protected void validate(IPageData pd, JSONObject paramIn) {
+        //Assert.hasKeyAndValue(paramIn, "communityId", "必填,请填写小区信息");
+        super.validatePageInfo(pd);
+
+        //super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.AGENT_HAS_LIST_CARINOUT);
+    }
+
+    @Override
+    protected ResponseEntity<String> doBusinessProcess(IPageData pd, JSONObject paramIn) {
+        ComponentValidateResult result = super.validateStoreStaffCommunityRelationship(pd, restTemplate);
+        //只有管理员才能查询,这里以防权限控制不住在控制一层
+        if (!"800900000001".equals(result.getStoreTypeCd())) {
+            throw new IllegalArgumentException("您当前没有权限访问");
+        }
+
+        Map paramMap = BeanConvertUtil.beanCovertMap(result);
+        paramIn.putAll(paramMap);
+
+        String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/store.listStores" + 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;
+    }
+}

+ 102 - 0
WebService/src/main/resources/components/storePackage/listStoreManage/listStoreManage.html

@@ -0,0 +1,102 @@
+<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-link btn-sm" style="margin-right:10px;"
+                                v-on:click="_moreCondition()">{{listStoreManageInfo.moreCondition ==
+                            true?'隐藏':'更多'}}
+                        </button>
+                    </div>
+                </div>
+                <div class="ibox-content">
+                    <div class="row">
+                        <div class="col-sm-4">
+                            <div class="form-group">
+                                <input type="text" placeholder="请输入商户名称"
+                                       v-model="listStoreManageInfo.conditions.name" class=" form-control">
+                            </div>
+                        </div>
+                        <div class="col-sm-4">
+                            <select class="custom-select" v-model="listStoreManageInfo.conditions.storeTypeCd">
+                                <option selected value="">请选择商户类型</option>
+                                <option value="800900000003">物业公司</option>
+                                <option value="800900000002">代理商</option>
+                            </select></div>
+                        <div class="col-sm-3">
+                            <div class="form-group">
+                                <input type="text" placeholder="请输入联系电话"
+                                       v-model="listStoreManageInfo.conditions.tel" class=" form-control">
+                            </div>
+                        </div>
+                        <div class="col-sm-1">
+                            <button type="button" class="btn btn-primary btn-sm"
+                                    v-on:click="_queryListStoreMethod()">
+                                <i class="glyphicon glyphicon-search"></i> 查询
+                            </button>
+                        </div>
+                    </div>
+
+                </div>
+            </div>
+        </div>
+    </div>
+    <div class="row">
+        <div class="col-lg-12">
+            <div class="ibox">
+                <div class="ibox-title">
+                    <h5>商户信息</h5>
+                    <div class="ibox-tools" style="top:10px;">
+
+                    </div>
+                </div>
+                <div class="ibox-content">
+                    <table class="footable table table-stripped toggle-arrow-tiny"
+                           data-page-size="15"
+                    >
+                        <thead>
+                        <tr>
+                            <th class="text-center">商户名称</th>
+                            <th class="text-center">商户地址</th>
+                            <th class="text-center">联系电话</th>
+                            <th class="text-center">商户类型</th>
+                            <th class="text-center">企业法人</th>
+                            <th class="text-center">成立日期</th>
+                            <th class="text-right">操作</th>
+                        </tr>
+                        </thead>
+                        <tbody>
+                        <tr v-for="listStore in listStoreManageInfo.listStores">
+                            <td class="text-center">{{listStore.name}}</td>
+                            <td class="text-center">{{listStore.address}}</td>
+                            <td class="text-center">{{listStore.tel}}</td>
+                            <td class="text-center">{{listStore.storeTypeName}}</td>
+                            <td class="text-center">{{listStore.artificialPerson}}</td>
+                            <td class="text-center">{{listStore.establishment}}</td>
+                            <td class="text-right">
+                                <div class="btn-group">
+                                    <button class="btn-white btn btn-xs"
+                                            v-on:click="_openEditListStoreModel(listStore)">隶属小区
+                                    </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>

+ 77 - 0
WebService/src/main/resources/components/storePackage/listStoreManage/listStoreManage.js

@@ -0,0 +1,77 @@
+/**
+ 入驻小区
+ **/
+(function (vc) {
+    var DEFAULT_PAGE = 1;
+    var DEFAULT_ROWS = 10;
+    vc.extends({
+        data: {
+            listStoreManageInfo: {
+                listStores: [],
+                total: 0,
+                records: 1,
+                moreCondition: false,
+                conditions: {
+                    name: '',
+                    storeTypeCd: '',
+                    tel: ''
+                }
+            }
+        },
+        _initMethod: function () {
+            vc.component._listListStores(DEFAULT_PAGE, DEFAULT_ROWS);
+        },
+        _initEvent: function () {
+
+            vc.on('listStoreManage', 'listListStore', function (_param) {
+                vc.component._listListStores(DEFAULT_PAGE, DEFAULT_ROWS);
+            });
+            vc.on('pagination', 'page_event', function (_currentPage) {
+                vc.component._listListStores(_currentPage, DEFAULT_ROWS);
+            });
+        },
+        methods: {
+            _listListStores: function (_page, _rows) {
+                vc.component.listStoreManageInfo.conditions.page = _page;
+                vc.component.listStoreManageInfo.conditions.row = _rows;
+                var param = {
+                    params: vc.component.listStoreManageInfo.conditions
+                };
+
+                //发送get请求
+                vc.http.get('listStoreManage',
+                    'list',
+                    param,
+                    function (json, res) {
+                        var _listStoreManageInfo = JSON.parse(json);
+                        vc.component.listStoreManageInfo.total = _listStoreManageInfo.total;
+                        vc.component.listStoreManageInfo.records = _listStoreManageInfo.records;
+                        vc.component.listStoreManageInfo.listStores = _listStoreManageInfo.listStores;
+                        vc.emit('pagination', 'init', {
+                            total: vc.component.listStoreManageInfo.records,
+                            currentPage: _page
+                        });
+                    }, function (errInfo, error) {
+                        console.log('请求失败处理');
+                    }
+                );
+            },
+            _openDeleteListStoreModel: function (_listStore) {
+                vc.emit('deleteListStore', 'openDeleteListStoreModal', _listStore);
+            },
+            _queryListStoreMethod: function () {
+                vc.component._listListStores(DEFAULT_PAGE, DEFAULT_ROWS);
+
+            },
+            _moreCondition: function () {
+                if (vc.component.listStoreManageInfo.moreCondition) {
+                    vc.component.listStoreManageInfo.moreCondition = false;
+                } else {
+                    vc.component.listStoreManageInfo.moreCondition = true;
+                }
+            }
+
+
+        }
+    });
+})(window.vc);

+ 40 - 0
WebService/src/main/resources/views/listStoresFlow.html

@@ -0,0 +1,40 @@
+<!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>
+    <link href="/css/plugins/summernote/summernote-bs4.min.css" rel="stylesheet">
+    <script src="/js/plugins/summernote/summernote-bs4.min.js"></script>
+    <script src="/js/plugins/summernote/summernote-zh-CN.min.js"></script>
+    <script src="/js/plugins/xss/xss.min.js"></script>
+</head>
+<body>
+<vc:create name="bodyTop"></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>
+        <div class="wrapper wrapper-content" style="padding-bottom: 0px;">
+            <vc:create name="breadcrumb"></vc:create>
+        </div>
+        <!-- id="component" -->
+        <div class="wrapper wrapper-content animated fadeInRight">
+            <vc:create name="listStoreManage"></vc:create>
+        </div>
+
+        <vc:create name="copyright"></vc:create>
+
+    </div>
+</div>
+
+<vc:create name="commonBottom"></vc:create>
+</body>
+</html>

+ 85 - 0
java110-bean/src/main/java/com/java110/dto/store/StoreAttrDto.java

@@ -0,0 +1,85 @@
+package com.java110.dto.store;
+
+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 StoreAttrDto extends PageDto implements Serializable {
+
+
+    private String storeId;
+    private String[] storeIds;
+    private String attrId;
+    private String specCd;
+    private String value;
+
+
+    private Date createTime;
+
+    private String statusCd = "0";
+
+    public String getStoreId() {
+        return storeId;
+    }
+
+    public void setStoreId(String storeId) {
+        this.storeId = storeId;
+    }
+
+    public String[] getStoreIds() {
+        return storeIds;
+    }
+
+    public void setStoreIds(String[] storeIds) {
+        this.storeIds = storeIds;
+    }
+
+    public String getAttrId() {
+        return attrId;
+    }
+
+    public void setAttrId(String attrId) {
+        this.attrId = attrId;
+    }
+
+    public String getSpecCd() {
+        return specCd;
+    }
+
+    public void setSpecCd(String specCd) {
+        this.specCd = specCd;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    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;
+    }
+}

+ 27 - 0
java110-bean/src/main/java/com/java110/vo/api/store/ApiStoreDataVo.java

@@ -13,6 +13,9 @@ public class ApiStoreDataVo implements Serializable {
     private String nearByLandmarks;
     private String mapX;
     private String mapY;
+    private String artificialPerson;
+    private String establishment;
+    private String businessScope;
     private String storeName;
     private String storeTypeName;
     private String createTime;
@@ -112,4 +115,28 @@ public class ApiStoreDataVo implements Serializable {
     public void setCreateTime(String createTime) {
         this.createTime = createTime;
     }
+
+    public String getArtificialPerson() {
+        return artificialPerson;
+    }
+
+    public void setArtificialPerson(String artificialPerson) {
+        this.artificialPerson = artificialPerson;
+    }
+
+    public String getEstablishment() {
+        return establishment;
+    }
+
+    public void setEstablishment(String establishment) {
+        this.establishment = establishment;
+    }
+
+    public String getBusinessScope() {
+        return businessScope;
+    }
+
+    public void setBusinessScope(String businessScope) {
+        this.businessScope = businessScope;
+    }
 }

+ 7 - 0
java110-core/src/main/java/com/java110/core/smo/store/IStoreInnerServiceSMO.java

@@ -1,6 +1,7 @@
 package com.java110.core.smo.store;
 
 import com.java110.core.feign.FeignConfiguration;
+import com.java110.dto.store.StoreAttrDto;
 import com.java110.dto.store.StoreDto;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -19,4 +20,10 @@ public interface IStoreInnerServiceSMO {
 
     @RequestMapping(value = "/getStores", method = RequestMethod.POST)
     public List<StoreDto> getStores(@RequestBody StoreDto storeDto);
+
+    @RequestMapping(value = "/getStoreAttrs", method = RequestMethod.POST)
+    public List<StoreAttrDto> getStoreAttrs(@RequestBody StoreAttrDto storeAttrDto);
+
+    @RequestMapping(value = "/getStoreCount", method = RequestMethod.POST)
+    public int getStoreCount(@RequestBody StoreDto storeDto);
 }

+ 75 - 21
java110-db/src/main/resources/mapper/store/StoreServiceDaoImplMapper.xml

@@ -3,10 +3,11 @@
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="storeServiceDaoImpl">
-    
+
     <!-- 保存商户信息 add by wuxw 2018-07-03 -->
     <insert id="saveBusinessStoreInfo" parameterType="Map">
-        insert into business_store(store_id,b_id,user_id,name,address,tel,store_type_cd,nearby_landmarks,map_x,map_y,month,operate)
+        insert into
+        business_store(store_id,b_id,user_id,name,address,tel,store_type_cd,nearby_landmarks,map_x,map_y,month,operate)
         values(#{storeId},#{bId},#{userId},#{name},#{address},#{tel},#{storeTypeCd},#{nearbyLandmarks},#{mapX},#{mapY},#{month},#{operate})
     </insert>
     <!-- 保存商户属性信息  add by wuxw 2018-07-03 -->
@@ -21,13 +22,15 @@
     </insert>
     <!-- 保存商户证件信息 add by wuxw 2018-07-03 -->
     <insert id="saveBusinessStoreCerdentials" parameterType="Map">
-        insert into business_store_cerdentials(store_cerdentials_id,b_id,store_id,credentials_cd,value,validity_period,positive_photo,negative_photo,month,operate)
+        insert into
+        business_store_cerdentials(store_cerdentials_id,b_id,store_id,credentials_cd,value,validity_period,positive_photo,negative_photo,month,operate)
         values(#{storeCerdentialsId},#{bId},#{storeId},#{credentialsCd},#{value},#{validityPeriod},#{positivePhoto},#{negativePhoto},#{month},#{operate})
     </insert>
 
     <!-- 查询商户信息(Business) add by wuxw 2018-07-03 -->
     <select id="getBusinessStoreInfo" parameterType="Map" resultType="Map">
-        select s.store_id,s.b_id,s.user_id,s.name,s.address,s.tel,s.store_type_cd,s.nearby_landmarks,s.map_x,s.map_y,s.operate
+        select
+        s.store_id,s.b_id,s.user_id,s.name,s.address,s.tel,s.store_type_cd,s.nearby_landmarks,s.map_x,s.map_y,s.operate
         from business_store s where 1 = 1
         <if test="operate != null and operate != ''">
             and s.operate = #{operate}
@@ -76,7 +79,8 @@
 
     <!-- 查询商户 证件信息 add by wuxw 2018-07-03 -->
     <select id="getBusinessStoreCerdentials" parameterType="Map" resultType="Map">
-        select sc.store_cerdentials_id,sc.b_id,sc.store_id,sc.credentials_cd,sc.value,sc.validity_period,sc.positive_photo,sc.negative_photo,sc.operate
+        select
+        sc.store_cerdentials_id,sc.b_id,sc.store_id,sc.credentials_cd,sc.value,sc.validity_period,sc.positive_photo,sc.negative_photo,sc.operate
         from business_store_cerdentials sc where 1 = 1
         <if test="bId != null and bId !=''">
             and sc.b_id = #{bId}
@@ -93,7 +97,7 @@
     <insert id="saveStoreInfoInstance" parameterType="Map">
         insert into s_store(store_id,b_id,user_id,name,address,tel,store_type_cd,nearby_landmarks,map_x,map_y,status_cd)
         select s.store_id,s.b_id,s.user_id,s.name,s.address,s.tel,s.store_type_cd,s.nearby_landmarks,s.map_x,s.map_y,'0'
-        from business_store s where 
+        from business_store s where
         s.operate = 'ADD' and s.b_id=#{bId}
     </insert>
 
@@ -104,18 +108,20 @@
         from business_store_attr sa
         where sa.operate = 'ADD' and sa.b_id=#{bId}
     </insert>
-    
+
     <!-- 保存 商户照片信息 instance add by wuxw 2018-07-03 -->
     <insert id="saveStorePhotoInstance" parameterType="Map">
         insert into s_store_photo(store_photo_id,b_id,store_id,store_photo_type_cd,photo,status_cd)
         select sp.store_photo_id,sp.b_id,sp.store_id,sp.store_photo_type_cd,sp.photo,'0'
         from business_store_photo sp
-        where  sp.operate = 'ADD' and sp.b_id=#{bId}
+        where sp.operate = 'ADD' and sp.b_id=#{bId}
     </insert>
     <!-- 保存 商户证件信息 instance add by wuxw 2018-07-03 -->
     <insert id="saveStoreCerdentialsInstance" parameterType="Map">
-        insert into s_store_cerdentials(store_cerdentials_id,b_id,store_id,credentials_cd,value,validity_period,positive_photo,negative_photo,status_cd)
-        select sc.store_cerdentials_id,sc.b_id,sc.store_id,sc.credentials_cd,sc.value,sc.validity_period,sc.positive_photo,sc.negative_photo,'0'
+        insert into
+        s_store_cerdentials(store_cerdentials_id,b_id,store_id,credentials_cd,value,validity_period,positive_photo,negative_photo,status_cd)
+        select
+        sc.store_cerdentials_id,sc.b_id,sc.store_id,sc.credentials_cd,sc.value,sc.validity_period,sc.positive_photo,sc.negative_photo,'0'
         from business_store_cerdentials sc
         where sc.operate = 'ADD' and sc.b_id=#{bId}
     </insert>
@@ -123,15 +129,15 @@
     <!-- 查询商户信息 add by wuxw 2018-07-03 -->
     <select id="getStoreInfo" parameterType="Map" resultType="Map">
         select s.store_id,s.store_id storeId,
-            s.b_id,
-            s.user_id,
-            s.name,
-            s.address,
-            s.tel,
-            s.store_type_cd,
-            s.nearby_landmarks,
-            s.map_x,s.map_y,
-            s.status_cd
+        s.b_id,
+        s.user_id,
+        s.name,
+        s.address,
+        s.tel,
+        s.store_type_cd,
+        s.nearby_landmarks,
+        s.map_x,s.map_y,
+        s.status_cd
         from s_store s
         where 1=1
         <if test="statusCd != null and statusCd != ''">
@@ -148,7 +154,8 @@
 
     <!-- 查询商户属性信息 add by wuxw 2018-07-03 -->
     <select id="getStoreAttrs" parameterType="Map" resultType="Map">
-        select sa.b_id,sa.attr_id,sa.store_id,sa.spec_cd,sa.value,sa.status_cd
+        select sa.b_id,sa.attr_id,sa.attr_id attrId,sa.store_id, sa.store_id storeId,sa.spec_cd,sa.spec_cd
+        specCd,sa.value,sa.status_cd
         from s_store_attr sa
         where
         1=1
@@ -161,6 +168,16 @@
         <if test="storeId != null and storeId !=''">
             and sa.store_id = #{storeId}
         </if>
+        <if test="storeIds != null">
+            and sa.store_id in
+            <foreach collection="storeIds" open="(" close=")"
+                     separator="," item="item">
+                #{item}
+            </foreach>
+        </if>
+        <if test="specCd != null and specCd !=''">
+            and sa.spec_cd = #{specCd}
+        </if>
         <if test="attrId != null and attrId != ''">
             and sa.attr_id = #{attrId}
         </if>
@@ -184,7 +201,8 @@
 
     <!-- 查询商户证件信息 add by wuxw 2018-07-03 -->
     <select id="getStoreCerdentials" parameterType="Map" resultType="Map">
-        select sc.store_cerdentials_id,sc.b_id,sc.store_id,sc.credentials_cd,sc.value,sc.validity_period,sc.positive_photo,sc.negative_photo,sc.status_cd
+        select
+        sc.store_cerdentials_id,sc.b_id,sc.store_id,sc.credentials_cd,sc.value,sc.validity_period,sc.positive_photo,sc.negative_photo,sc.status_cd
         from s_store_cerdentials sc
         where 1=1
         <if test="statusCd != null and statusCd != ''">
@@ -494,4 +512,40 @@
         </if>
     </select>
 
+    <!-- 查询商户 -->
+    <select id="getStoreCount" parameterType="Map" resultType="Map">
+        select count(1) count
+        from s_store s,store_type st
+        where s.status_cd = '0'
+        and s.store_type_cd = st.store_type_cd
+        <if test="userId != null and userId != ''">
+            and s.user_id = #{userId}
+        </if>
+        <if test="name != null and name !=''">
+            and s.name like concat('%',#{name},'%')
+        </if>
+        <if test="address != null and address != ''">
+            and s.address like concat('%',#{address},'%')
+        </if>
+        <if test="tel != null and tel != ''">
+            and s.tel = #{tel}
+        </if>
+        <if test="storeTypeCd != null and storeTypeCd != ''">
+            and s.store_type_cd = #{storeTypeCd}
+        </if>
+        <if test="nearbyLandmarks != null and nearbyLandmarks != ''">
+            and s.nearby_landmarks = #{nearbyLandmarks}
+        </if>
+        <if test="storeId != null and storeId !=''">
+            and s.store_id = #{storeId}
+        </if>
+        <if test="storeIds !=null">
+            and s.store_id in
+            <foreach collection="storeIds" open="(" close=")"
+                     separator="," item="item">
+                #{item}
+            </foreach>
+        </if>
+    </select>
+
 </mapper>

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

@@ -137,6 +137,11 @@ public class ServiceCodeConstant {
      */
     public static final String SERVICE_CODE_LIST_STORES_BY_COMMUNITY = "store.listStoresByCommunity";
 
+    /**
+     * 查询 商户
+     */
+    public static final String SERVICE_CODE_LIST_STORES = "store.listStores";
+
     /**
      * 修改商户信息
      */