From 030aea9a270d338a548e9eb1e5eabdf23786ffef Mon Sep 17 00:00:00 2001 From: xiaohanzi Date: Sat, 15 Aug 2020 23:24:50 +0800 Subject: [PATCH] update --- .../basic/WxMerchantController.java | 15 +++++ .../contract/WxRentContractController.java | 58 +++++++++++++++++-- .../com/iformall/mapper/WxMerchantMapper.java | 3 + .../iformall/service/WxMerchantService.java | 6 ++ .../service/WxRentContractService.java | 2 + .../service/impl/WxMerchantServiceImpl.java | 25 ++++++++ .../impl/WxRentContractServiceImpl.java | 5 ++ .../resources/mapper/WxMerchantMapper.xml | 6 ++ 8 files changed, 115 insertions(+), 5 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 05266ae2f..f55495cc2 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java @@ -12,6 +12,7 @@ import com.iformall.domain.po.WxProfitSharingReceiver; import com.iformall.domain.vo.WxMerchantTradeDetailVo; import com.iformall.domain.vo.WxMerchantTradeVo; import com.iformall.domain.vo.WxMerchantVo; +import com.iformall.enums.EnumMerchantStatus; import com.iformall.enums.EnumPayWay; import com.iformall.service.QrCodeService; import com.iformall.service.WxMerchantService; @@ -91,6 +92,20 @@ public class WxMerchantController extends BaseController { final PageInfo page = wxMerchantService.listAsPage(wxMerchant, pageNum, pageSize); return new ResultData(page); } + + @ApiOperation("获取商户ID,名称接口") + @GetMapping("IdAndNamelist") + @ApiImplicitParams({ + }) + @SystemControllerLog(description = "商户-列表") + public ResultData IdAndNamelist(@ModelAttribute WxMerchant wxMerchant, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxMerchantController::list"); + if (null == wxMerchant) wxMerchant = new WxMerchant(); + wxMerchant.updateTenantInfo(getTenantInfo()); + wxMerchant.setSortColumns(BaseEntity.SortField.TopTime_DESC); + wxMerchant.setStatus(EnumMerchantStatus.VALID.getCode()); + return new ResultData(wxMerchantService.queryIdAndNames(wxMerchant)); + } @ApiOperation("ETCP商户列表") diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java index a660711a6..c431bead6 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -32,6 +32,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -64,6 +65,9 @@ public class WxRentContractController extends WxContractBaseController { @Autowired private WxRentPropertyContractService wxRentPropertyContractService; + + @Autowired + private WxShopService wxShopService; @UserDataRuleAnnotation("rent_contract_list") @@ -79,11 +83,7 @@ public class WxRentContractController extends WxContractBaseController { } wxRentContract.updateTenantInfo(getTenantInfo()); //Map result = wxRentContractService.listAsPage(wxRentContract, pageNum, pageSize); - - Map result = new HashMap<>(); - //result.put("rentContractStatusInfo", ); - result.put("pageInfo", wxRentContractService.getRentContractList(wxRentContract, pageNum, pageSize)); - return new ResultData(); + return new ResultData(wxRentContractService.getRentContractList(wxRentContract, pageNum, pageSize)); } /** @@ -247,7 +247,55 @@ public class WxRentContractController extends WxContractBaseController { return wxRentContractService.endRentContract(id,status); } + @GetMapping("/merchantShops") + @ApiImplicitParams({ + @ApiImplicitParam(name = "merchantId", value = "merchantId", dataType = "Long", paramType = "query", required = true)}) + @SystemControllerLog(description = "租赁合同-终结合同") + public ResultData merchantShops(Long merchantId) { + logger.debug("[" + getIpAddr() + "] WxRentContractController::endRentContract"); + return new ResultData(wxMerchantService.getMerchantShopList(merchantId)); + } + @GetMapping("/merchantShopsRenewable") + @ApiImplicitParams({ + @ApiImplicitParam(name = "contractId", value = "contractId", dataType = "Long", paramType = "query", required = true), + @ApiImplicitParam(name = "merchantId", value = "merchantId", dataType = "Long", paramType = "query", required = true)}) + @SystemControllerLog(description = "租赁合同-终结合同") + public ResultData merchantShopsRenewable(Long merchantId,Long contractId) { + logger.debug("[" + getIpAddr() + "] WxRentContractController::endRentContract"); + List allist = new ArrayList(); + + List shopList = wxMerchantService.getMerchantShopList(merchantId); + if (null == shopList) { + return new ResultData(Result.ERROR,"商户未绑定店铺!"); + } + + WxRentContract rentContract = wxRentContractService.getSimpleDeatil(contractId); + if (null == rentContract) { + return new ResultData(Result.ERROR,"租金合同不存在!"); + } + + if (rentContract.getStatus().intValue() != EnumRentContractStatus.PAING.getCode() + && rentContract.getStatus().intValue() != EnumRentContractStatus.OUT_DATE.getCode()) { + return new ResultData(Result.ERROR,"租金合同状态为计租中或者正常到期才能续签。"); + } + + List shopIds = rentContract.shopIdsByRentInfo(); + if (null != shopIds) { + List contractShops = wxShopService.getByIds(shopIds); + //如果合同状态是计租中,则商铺不显示 + if (rentContract.getStatus().intValue() != EnumRentContractStatus.PAING.getCode()) { + if (null != contractShops) { + for (WxShop s:contractShops) { + if (shopList.contains(s)) { + shopList.remove(s); + } + } + } + } + } + return new ResultData(shopList); + } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java index b93f079e1..51006f137 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java @@ -14,6 +14,9 @@ import java.util.Map; public interface WxMerchantMapper extends CommonMapper { List findList(WxMerchant wxMerchant); + + List findIdNameList(WxMerchant wxMerchant); + List findListCVo(WxMerchantDto wxMerchantDto); WxMerchantVo getMerchantByCode(HashMap params); diff --git a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java index a0d60e996..d067bf279 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java @@ -6,6 +6,7 @@ import com.iformall.domain.dto.WxMerchantDto; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.WxProfitSharingReceiver; +import com.iformall.domain.po.WxShop; import com.iformall.domain.vo.WxMerchantSimpleVo; import com.iformall.domain.vo.WxMerchantTradeDetailVo; import com.iformall.domain.vo.WxMerchantTradeVo; @@ -63,6 +64,9 @@ public interface WxMerchantService { * @return */ PageInfo listAsPage(WxMerchant record, Integer pageIndex, Integer pageSize); + + List queryIdAndNames(WxMerchant record); + PageInfo listAsPageCVo(WxMerchantDto record, Integer pageIndex, Integer pageSize); /** * 根据code查询 @@ -150,4 +154,6 @@ public interface WxMerchantService { List getMerchantList(WxMerchant wxMerchant); void disableMerchat(Long id); + + List getMerchantShopList(Long merchantId); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java index 99aa4e656..c88adbec0 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java @@ -27,6 +27,8 @@ public interface WxRentContractService { */ //Map listAsPage(WxRentContract record, Integer pageIndex, Integer pageSize); + List findList(WxRentContract record); + /** * 根据Id获得实体 * 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 50d0216c3..410685a10 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -109,6 +109,12 @@ public class WxMerchantServiceImpl implements WxMerchantService { PageInfo pageInfo = new PageInfo<>(merchants); return pageInfo; } + + @Override + public List queryIdAndNames (WxMerchant record) { + return wxMerchantMapper.findIdNameList(record); + } + @Override @@ -855,4 +861,23 @@ public class WxMerchantServiceImpl implements WxMerchantService { } } } + + @Override + public List getMerchantShopList(Long merchantId) { + WxMerchantShop wxMerchantShop = new WxMerchantShop(); + wxMerchantShop.setMerchantId(merchantId); + wxMerchantShop.setIsDel(0); + List shopList = wxMerchantShopMapper.findList(wxMerchantShop); + if (null != shopList) { + List shopIds = new ArrayList(); + for (WxMerchantShop ws: shopList) { + shopIds.add(ws.getShopId()); + } + + WxShop shop = new WxShop(); + shop.setIds(shopIds); + return wxShopMapper.findList(shop); + } + return null; + } } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index 458d38342..bc0a63ff3 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -127,6 +127,11 @@ public class WxRentContractServiceImpl implements WxRentContractService { // return result; // } + @Override + public List findList(WxRentContract record){ + return wxRentContractMapper.findList(record); + } + @Override public Map getById(Long id) { Map result = new HashMap<>(); diff --git a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml index f8882b1bd..5c94e287f 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml @@ -170,6 +170,12 @@ order by ${sortColumns} + +