From 841666eff6175a947110a949379e4bf2b0fcae74 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 3 Apr 2019 18:53:48 +0800 Subject: [PATCH] =?UTF-8?q?[=E7=A7=9F=E8=B5=81=E5=90=88=E5=90=8C][?= =?UTF-8?q?=E4=BF=AE=E6=94=B9][=E5=88=A4=E6=96=AD=E5=95=86=E9=93=BA?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E5=B7=B2=E7=AD=BE=E7=BA=A6=E5=90=88=E5=90=8C?= =?UTF-8?q?]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/mapper/WxRentContractMapper.java | 4 ++- .../impl/WxRentContractServiceImpl.java | 27 ++++++++++++------- .../resources/mapper/WxRentContractMapper.xml | 4 +++ 3 files changed, 25 insertions(+), 10 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java index ed8154972..e848b0f5f 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java @@ -9,7 +9,7 @@ import java.util.Map; /** * @author gongbiao */ -public interface WxRentContractMapper extends CommonMapper { +public interface WxRentContractMapper extends CommonMapper { List findList(WxRentContract wxRentContract); @@ -47,4 +47,6 @@ public interface WxRentContractMapper extends CommonMapper getMerchants(WxRentContract wxRentContract); + int selectRentContractCountByShopId(WxRentContract wxRentContract); + } 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 fbae7c59b..9d4f6b432 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -205,19 +205,28 @@ public class WxRentContractServiceImpl implements WxRentContractService { Date date = new Date(); record.setCreatetime(date); record.setUpdatetime(date); - try { + + String rentInfo = record.getRentInfo(); + JSONArray rentInfoArray = JSONArray.parseArray(rentInfo); + int size = rentInfoArray.size(); + if (size == 0) { + return new ResultData(ErrorCode.SHOP_NOT_SELECTED); + } + + //查询rent_info 包括 shopId + for (int i = 0; i < size; i++) { + JSONObject rentInfoObject = rentInfoArray.getJSONObject(i); WxRentContract wxRentContract = new WxRentContract(); wxRentContract.setTenantId(record.getTenantId()); - wxRentContract.setShopId(record.getShopId()); - long count = wxRentContractMapper.queryRentContractData(wxRentContract).stream(). - filter(rc -> !rc.get("status").equals(EnumRentContractStatus.CONTRACT_TERMINATE.getCode()) - && !rc.get("status").equals(EnumRentContractStatus.WAIT_SIGN.getCode()) - && !rc.get("status").equals(EnumRentContractStatus.INVALID.getCode()) - && !rc.get("status").equals(EnumRentContractStatus.CONTRACT_END.getCode()) - && !rc.get("status").equals(EnumRentContractStatus.INTENTION.getCode())).count(); + wxRentContract.setShopId(rentInfoObject.getLong("shopId")); + int count = wxRentContractMapper.selectRentContractCountByShopId(wxRentContract); if (count > 0) { - return new ResultData(ErrorCode.RENT_CONTRACT_WITH_SHOP_IS_FOUND); + String shopNumber = rentInfoObject.getString("shopNumber"); + return new ResultData(ErrorCode.SHOP_IS_RENT.getCode(), "店铺 " + shopNumber + " 已出租"); } + } + + try { record.setApplyStatus(EnumRentContractAppStatus.DEFAULT.getCode()); wxRentContractMapper.insertSelective(record); } catch (Exception e) { diff --git a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml index b03d2808d..6c450ee10 100644 --- a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml @@ -223,5 +223,9 @@ and merchant_id not in(select merchant_id from wx_property_contract where status in(2,3,4)) and rent_shop_type = #{rentShopType} + +