From 2532cbe2da9a9bd1592845046717714333f2166c Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 24 Jul 2019 12:01:05 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=95=86=E6=88=B7][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=88=97=E8=A1=A8=E4=BC=98=E5=8C=96]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/WxMerchantController.java | 17 +++ .../com/iformall/mapper/WxMerchantMapper.java | 4 +- .../iformall/service/WxMerchantService.java | 3 + .../service/impl/WxMerchantServiceImpl.java | 54 ++++----- .../resources/mapper/WxMerchantMapper.xml | 113 +++++++++++++++++- 5 files changed, 157 insertions(+), 34 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java index 35c231041..a170ce993 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java @@ -35,6 +35,23 @@ public class WxMerchantController extends BaseController { @Autowired private QrCodeService qrCodeService; + + @ApiOperation("分页列表接口") + @GetMapping("listVo") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + @SystemControllerLog(description = "商户-列表") + public ResultData listVo(@ModelAttribute WxMerchant wxMerchant, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxMerchantController::list"); + if (null == wxMerchant) wxMerchant = new WxMerchant(); + wxMerchant.setTenantId(getTenantId()); + wxMerchant.setSortColumns(WxMerchant.Field.TopTime_DESC); + final PageInfo page = wxMerchantService.listVoAsPage(wxMerchant, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("分页列表接口") @GetMapping("list") @ApiImplicitParams({ diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java index bd018be0a..987f33878 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java @@ -3,7 +3,6 @@ package com.iformall.mapper; import com.iformall.common.CommonMapper; import com.iformall.domain.po.WxMerchant; import com.iformall.domain.vo.WxMerchantVo; -import org.apache.ibatis.annotations.Param; import java.util.HashMap; import java.util.List; @@ -22,4 +21,7 @@ public interface WxMerchantMapper extends CommonMapper { List> findBusByFloorId(Map params); int hasMerchant(WxMerchant wxMerchant); + + List findListVo(WxMerchant record); + } diff --git a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java index 2b17e5ec1..90c326a6b 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java @@ -104,4 +104,7 @@ public interface WxMerchantService { boolean hasMerchant(WxMerchant wxMerchant); Optional findByName(String name); + + PageInfo listVoAsPage(WxMerchant wxMerchant, Integer pageNum, Integer pageSize); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java index b31fa32b7..60793f13e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -99,36 +99,8 @@ public class WxMerchantServiceImpl implements WxMerchantService { @Override public PageInfo listAsPage(WxMerchant record, Integer pageIndex, Integer pageSize) { - PageHelper.startPage(pageIndex, pageSize); List merchants = wxMerchantMapper.findList(record); - for (WxMerchant merchant : merchants) { - - WxRentContract wxRentContract = new WxRentContract(); - wxRentContract.setMerchantId(merchant.getId()); - List lrc = wxRentContractMapper.selectRentContractByMerchantId(wxRentContract); - if (!lrc.isEmpty()) { - merchant.setRentalStartDate(lrc.get(0).getRentalStartDate()); - merchant.setRentalEndDate(lrc.get(0).getRentalEndDate()); - } - - if (record.getRentShopType() != null) { - List> shops = new ArrayList<>(); - WxMerchantShop wxMerchantShop = new WxMerchantShop(); - wxMerchantShop.setMerchantId(merchant.getId()); - wxMerchantShop.setIsDel(EnumDelStatus.NOT_DEL.getCode()); - List wxMerchantShopList = wxMerchantShopMapper.findList(wxMerchantShop); - for (WxMerchantShop merchantShop : wxMerchantShopList) { - WxShop shop = new WxShop(); - shop.setId(merchantShop.getShopId()); - List> shoplist = wxShopMapper.findListMap(shop); - if (shoplist.size() > 0) { - shops.add(shoplist.get(0)); - } - } - merchant.setShoplist(shops); - } - } PageInfo pageInfo = new PageInfo<>(merchants); return pageInfo; } @@ -729,4 +701,30 @@ public class WxMerchantServiceImpl implements WxMerchantService { return Optional.of(merchantList.get(0)); return Optional.empty(); } + + @Override + public PageInfo listVoAsPage(WxMerchant record, Integer pageIndex, Integer pageSize) { + PageHelper.startPage(pageIndex, pageSize); + List merchants = wxMerchantMapper.findListVo(record); + for (WxMerchant merchant : merchants) { + if (record.getRentShopType() != null) { + List> shops = new ArrayList<>(); + WxMerchantShop wxMerchantShop = new WxMerchantShop(); + wxMerchantShop.setMerchantId(merchant.getId()); + wxMerchantShop.setIsDel(EnumDelStatus.NOT_DEL.getCode()); + List wxMerchantShopList = wxMerchantShopMapper.findList(wxMerchantShop); + for (WxMerchantShop merchantShop : wxMerchantShopList) { + WxShop shop = new WxShop(); + shop.setId(merchantShop.getShopId()); + List> shoplist = wxShopMapper.findListMap(shop); + if (shoplist.size() > 0) { + shops.add(shoplist.get(0)); + } + } + merchant.setShoplist(shops); + } + } + PageInfo pageInfo = new PageInfo<>(merchants); + return pageInfo; + } } diff --git a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml index e1dfc64b5..91c61ebdf 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml @@ -31,16 +31,23 @@ + + - + `id`,`tenant_id`,`img_url`,`name`,`link_phone`,`create_date`,`update_date`,`car_vendor_type`,`car_params`,`status`,`link_person`, `business_id`,`sub_business_id`,`shop_type`,`brand`,`type`,`is_public`,email,`title`,`cover_picture`,`is_admin`,`bill_setting`,`qr_code`, - `introduction`,`action_desc`,`is_del`, - `talk_user_main`,`talk_user_aux`,link_line_phone + `introduction`,`action_desc`,`is_del`,`talk_user_main`,`talk_user_aux`,link_line_phone - + + + m.`id`,m.`tenant_id`,m.`img_url`,m.`name`,m.`link_phone`,m.`create_date`,m.`update_date`,m.`car_vendor_type`,m.`car_params`,m.`status`,m.`link_person`, + m.`business_id`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`, + m.`introduction`,m.`action_desc`,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,r.rental_start_date,r.rental_end_date + + where is_del = 0 @@ -132,7 +139,103 @@ from wx_merchant - + + + + + where m.is_del = 0 + + + and m.`id` = #{id} + + + + and m.`tenant_id` = #{tenantId} + + + + and m.`img_url` like concat('%', #{imgUrl},'%') + + + + and m.`name` like concat('%', #{name},'%') + + + + and m.`link_phone` like concat('%', #{linkPhone},'%') + + + + and m.`create_date` = #{createDate} + + + + and m.`update_date` = #{updateDate} + + + + and m.`car_vendor_type` = #{carVendorType} + + + + and m.`business_id` = #{businessId} + + + + and m.`sub_business_id` = #{subBusinessId} + + + + and m.`car_params` like concat('%', #{carParams},'%') + + + and m.`status` = #{status} + + + and m.`link_person` = #{linkPerson} + + + and m.`type` = #{type} + + + and m.`is_public` = #{isPublic} + + + and m.`email` = #{email} + + + and m.`is_admin` = #{isAdmin} + + + and m.`is_del` = #{isDel} + + + and m.`brand` = #{brand} + + + and m.id not in( + select merchant_id from wx_rent_contract where tenant_id=#{tenantId} and rent_shop_type=1 and merchant_id is + not null and status in(1,2,3,4) + ) + + + and m.id in + + #{idItem} + + + order by ${sortColumns} + + + m.id,m.img_url,m.name,m.link_phone,m.status,m.business_id, m.is_public,m.email,m.title,m.cover_picture,m.sub_business_id,