diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java index 9671ca442..e0086ef88 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java @@ -7,9 +7,13 @@ import com.iformall.common.ResultData; import com.iformall.domain.po.WxBillRent; import com.iformall.domain.po.WxPayAccountBill; import com.iformall.domain.po.WxRentContract; +import com.iformall.domain.po.WxShop; +import com.iformall.enums.EnumRentShopType; +import com.iformall.enums.EnumShopType; import com.iformall.service.WxBillRentService; import com.iformall.service.WxPayAccountBillService; import com.iformall.service.WxRentContractService; +import com.iformall.service.WxShopService; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import org.apache.commons.lang3.StringUtils; @@ -35,9 +39,10 @@ public class WxRentContractController extends BaseController { private WxRentContractService wxRentContractService; @Autowired private WxBillRentService wxBillRentService; - @Autowired private WxPayAccountBillService payAccountBillService; + @Autowired + private WxShopService wxShopService; @GetMapping("list") @ApiImplicitParams({ @@ -59,7 +64,11 @@ public class WxRentContractController extends BaseController { public ResultData add(@RequestBody WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::add"); wxRentContract.setTenantId(getTenantId()); - if(wxRentContract.getMonthHandleType() != null){ + + //目前只有多经点位租赁合同 + WxShop wxShop = wxShopService.getById(wxRentContract.getShopId()); + if(wxRentContract.getMonthHandleType() != null && wxRentContract.getMonthHandleType().intValue()==3 + && EnumRentShopType.POINT.getCode().equals(wxShop.getType())){ wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType()); } return wxRentContractService.save(wxRentContract, getUser().getId(),getUser().getName()); @@ -70,7 +79,10 @@ public class WxRentContractController extends BaseController { public ResultData update(@RequestBody WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::update"); wxRentContract.setTenantId(getTenantId()); - if(wxRentContract.getMonthHandleType() != null){ + //目前只有多经点位租赁合同 + WxShop wxShop = wxShopService.getById(wxRentContract.getShopId()); + if(wxRentContract.getMonthHandleType() != null && wxRentContract.getMonthHandleType().intValue()==3 + && EnumRentShopType.POINT.getCode().equals(wxShop.getType())){ wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType()); } return wxRentContractService.update(wxRentContract, getUser().getId(),getUser().getName()); @@ -81,7 +93,10 @@ public class WxRentContractController extends BaseController { public ResultData updateMoney(@RequestBody WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::updateMoney"); wxRentContract.setTenantId(getTenantId()); - if(wxRentContract.getMonthHandleType() != null){ + //目前只有多经点位租赁合同 + WxShop wxShop = wxShopService.getById(wxRentContract.getShopId()); + if(wxRentContract.getMonthHandleType() != null && wxRentContract.getMonthHandleType().intValue()==3 + && EnumRentShopType.POINT.getCode().equals(wxShop.getType())){ wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType()); } return wxRentContractService.update(wxRentContract, getUser().getId(),getUser().getName()); @@ -92,7 +107,10 @@ public class WxRentContractController extends BaseController { public ResultData updateFile(@RequestBody WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::updateFile"); wxRentContract.setTenantId(getTenantId()); - if(wxRentContract.getMonthHandleType() != null){ + //目前只有多经点位租赁合同 + WxShop wxShop = wxShopService.getById(wxRentContract.getShopId()); + if(wxRentContract.getMonthHandleType() != null && wxRentContract.getMonthHandleType().intValue()==3 + && EnumRentShopType.POINT.getCode().equals(wxShop.getType())){ wxRentContract.setAdjustPeriod(wxRentContract.getMonthHandleType()); } return wxRentContractService.updateFile(wxRentContract, getUser().getId(),getUser().getName()); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java index 2772d041b..709a3d5d4 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java @@ -57,4 +57,6 @@ public interface WxRentContractMapper extends CommonMapper int hasContractNumber(WxRentContract wxRentContract); + Integer getShopType(WxRentContract wxRentContract); + } diff --git a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java index ed547746b..4f8145a37 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java @@ -83,4 +83,5 @@ public interface WxRentContractService { ResultData hasContractNumber(WxRentContract wxRentContract); + Integer getShopType(WxRentContract wxRentContract); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/PushLimitServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/PushLimitServiceImpl.java index 7718be070..0536af391 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/PushLimitServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/PushLimitServiceImpl.java @@ -137,13 +137,15 @@ public class PushLimitServiceImpl implements PushLimitService { throw new MallinkException(ErrorCode.PUSH_LIMIT_UP_TO_1DAYLIMIT.getCode(), errMsg); } // 4. check 每人多少天内不会重复收到一张券 - params.put("couponId", couponId); - params.put("dayNum", pushLimit.getCouponDay()-1); - int countForUserCoupon = wxCouponActionLogMapper.getCountByUserAndCoupon(params); - if (countForUserCoupon >= 1) { - String errMsg = "每人" + pushLimit.getCouponDay() + "天领一张券已到疲劳度上限"; - logger.error(errMsg); - throw new MallinkException(ErrorCode.PUSH_LIMIT_UP_TO_COUPONLIMIT.getCode(), errMsg); + if (pushLimit.getCouponDay() > 0) { + params.put("couponId", couponId); + params.put("dayNum", pushLimit.getCouponDay()-1); + int countForUserCoupon = wxCouponActionLogMapper.getCountByUserAndCoupon(params); + if (countForUserCoupon >= 1) { + String errMsg = "每人" + pushLimit.getCouponDay() + "天领一张券已到疲劳度上限"; + logger.error(errMsg); + throw new MallinkException(ErrorCode.PUSH_LIMIT_UP_TO_COUPONLIMIT.getCode(), errMsg); + } } return true; diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java index f5b52d197..c65587309 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -309,7 +309,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService wxPropertyContract.setDeposit(record.getDeposit()); wxPropertyContract.setReceivePeriod(record.getReceivePeriod()); wxPropertyContract.setPayAccount(record.getPayAccount()); - billList = buildProperty(new WxMerchant(),userId,wxPropertyContract,EnumIsPreview.YES.getCode()); + billList = buildProperty(new WxMerchant(),userId,record,EnumIsPreview.YES.getCode()); record.setPreviewBillRentList(billList); } } 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 76f201643..ce3c11178 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -13,10 +13,7 @@ import com.iformall.domain.po.*; import com.iformall.enums.*; import com.iformall.exception.MallinkException; import com.iformall.mapper.*; -import com.iformall.service.WxFlowRecordService; -import com.iformall.service.WxFlowService; -import com.iformall.service.WxMerchantService; -import com.iformall.service.WxRentContractService; +import com.iformall.service.*; import com.iformall.utils.Constant; import com.iformall.utils.DateUtils; import org.apache.commons.collections.map.HashedMap; @@ -98,6 +95,8 @@ public class WxRentContractServiceImpl implements WxRentContractService { @Autowired WxMerchantShopMapper wxMerchantShopMapper; + @Autowired + WxShopService wxShopService; @Override public Map listAsPage(WxRentContract record, Integer pageIndex, Integer pageSize) { @@ -127,17 +126,23 @@ public class WxRentContractServiceImpl implements WxRentContractService { } wxRentContract.setPrice(wxRentContract.getPrice() != null ? wxRentContract.getPrice() : 0); wxRentContract.setDeposit(wxRentContract.getDeposit() != null ? wxRentContract.getDeposit() : 0); - //handle adjustPeriod 1日 2月 monthHandleType 2按账单周期 3按自然月 - if(wxRentContract.getAdjustPeriod().intValue() == 1){ - wxRentContract.setAdjustPeriod(1); - wxRentContract.setMonthHandleType(null); - }else if(wxRentContract.getAdjustPeriod().intValue() == 2){ - wxRentContract.setAdjustPeriod(2); - wxRentContract.setMonthHandleType(2); - }else if(wxRentContract.getAdjustPeriod().intValue() == 3){ - wxRentContract.setAdjustPeriod(2); - wxRentContract.setMonthHandleType(3); + + //目前只有多经点位租赁合同 + WxShop wxShop = wxShopService.getById(wxRentContract.getShopId()); + if(EnumRentShopType.POINT.getCode().equals(wxShop.getType())){ + //handle adjustPeriod 1日 2月 monthHandleType 2按账单周期 3按自然月 + if(wxRentContract.getAdjustPeriod().intValue() == 1){ + wxRentContract.setAdjustPeriod(1); + wxRentContract.setMonthHandleType(null); + }else if(wxRentContract.getAdjustPeriod().intValue() == 2){ + wxRentContract.setAdjustPeriod(2); + wxRentContract.setMonthHandleType(2); + }else if(wxRentContract.getAdjustPeriod().intValue() == 3){ + wxRentContract.setAdjustPeriod(2); + wxRentContract.setMonthHandleType(3); + } } + result.put("wxRentContract", wxRentContract); //关联的商户 if (wxRentContract.getMerchantId() != null) { @@ -2032,6 +2037,10 @@ public class WxRentContractServiceImpl implements WxRentContractService { wxRentContractMapper.updateApplyStatus(wxRentContract); } + @Override + public Integer getShopType(WxRentContract wxRentContract) { + return wxRentContractMapper.getShopType(wxRentContract); + } } diff --git a/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml index f4e1e8ac5..ed6e2d3a4 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponSendMapper.xml @@ -28,7 +28,7 @@ (case when (select count(*) from wx_coupon_merchant xcm where xcm.product_id = cs.coupon_id and xcm.status = 0)=1 then - (select m.name from wx_merchant m, wx_coupon_merchant cm where m.id = cm.merchant_id and cm.product_id=cs.coupon_id) + (select m.name from wx_merchant m, wx_coupon_merchant cm where m.id = cm.merchant_id and cm.product_id=cs.coupon_id and cm.status = 0) else '[多商户通用]' end) as merchant_name, diff --git a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml index 3387e44a7..ce7328f3e 100644 --- a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml @@ -271,5 +271,10 @@ + +