|
|
|
@@ -2502,35 +2502,59 @@ public class WxRentContractServiceImpl implements WxRentContractService { |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void outDateContract(WxRentContract wxRentContract) { |
|
|
|
//只有计租中的合同状态才能正常到期 |
|
|
|
if (wxRentContract.getStatus().intValue()== EnumRentContractStatus.PAING.getCode().intValue()) { |
|
|
|
if (wxRentContract.getRentalEndDate().before(new Date())) { |
|
|
|
wxRentContract.setStatus(EnumRentContractStatus.OUT_DATE.getCode()); |
|
|
|
//wxRentContractMapper.updateRentContractEndStatus(wxRentContract); |
|
|
|
//TODO 11111111111111111111 |
|
|
|
public void outDateContract(WxMall wxMall) { |
|
|
|
//查询有计租合同的商户 |
|
|
|
WxRentContract wr = new WxRentContract(); |
|
|
|
List<Integer> statuss = new ArrayList<Integer>(); |
|
|
|
statuss.add(EnumRentContractStatus.PAING.getCode()); |
|
|
|
wr.setStatuss(statuss); |
|
|
|
List<Long> merchantIds = wxRentContractMapper.getMerchantIdsByStatuss(wr); |
|
|
|
for (Long mid: merchantIds) { |
|
|
|
try { |
|
|
|
//查询商户下计租到期的合同,更新合同状态 |
|
|
|
WxRentContract wrc = new WxRentContract(); |
|
|
|
wrc.setMerchantId(mid); |
|
|
|
wrc.setStatus(EnumRentContractStatus.PAING.getCode()); |
|
|
|
List<WxRentContract> contractList = wxRentContractMapper.findList(wrc); |
|
|
|
List<Long> shopIdList = new ArrayList<Long>(); |
|
|
|
for (WxRentContract contract:contractList) { |
|
|
|
if (contract.getRentalEndDate().before(new Date())) { |
|
|
|
contract.setStatus(EnumRentContractStatus.OUT_DATE.getCode()); |
|
|
|
wxRentContractMapper.updateById(contract); |
|
|
|
List<Long> shopIds = contract.shopIdsByRentInfo(); |
|
|
|
for (Long sid: shopIds) { |
|
|
|
if (!shopIdList.contains(sid)) { |
|
|
|
shopIdList.add(sid); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//到期合同中的店铺,如果存在有效合同,则不释放 |
|
|
|
if (shopIdList.size() > 0 ) { |
|
|
|
WxRentContract wrcq = new WxRentContract(); |
|
|
|
wrcq.setMerchantId(mid); |
|
|
|
wrcq.setStatus(EnumRentContractStatus.PAING.getCode()); |
|
|
|
List<WxRentContract> contractList0 = wxRentContractMapper.findList(wrc); |
|
|
|
for (WxRentContract w : contractList0) { |
|
|
|
List<Long> shopids0 = w.shopIdsByRentInfo(); |
|
|
|
if (null != shopids0) { |
|
|
|
shopIdList.removeAll(shopids0); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//释放店铺 |
|
|
|
if (null != shopIdList && shopIdList.size() > 0) { |
|
|
|
wxMerchantShopMapper.delShops(mid, shopIdList); |
|
|
|
} |
|
|
|
}catch(Exception e) { |
|
|
|
logger.error("merchantId["+mid+"] outDateContract error.",e); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void contractEnd(String tenantId) { |
|
|
|
//查询状态为合同正常到期的数据 |
|
|
|
WxRentContract wxRentContract = new WxRentContract(); |
|
|
|
wxRentContract.setTenantId(tenantId); |
|
|
|
wxRentContract.setStatus(EnumRentContractStatus.OUT_DATE.getCode()); |
|
|
|
// List<Map<String, Object>> rentContractData = wxRentContractMapper.queryRentContractData(wxRentContract); |
|
|
|
// for (int i = 0, size = rentContractData.size(); i < size; i++) { |
|
|
|
// Map<String, Object> contract = rentContractData.get(i); |
|
|
|
// Object merchantId = contract.get("merchantId"); |
|
|
|
// if (merchantId != null) { |
|
|
|
// WxMerchant merchant = wxMerchantMapper.selectById((Long) merchantId); |
|
|
|
// Integer status = merchant.getStatus(); |
|
|
|
// if (status.equals(EnumMerchantStatus.VALID.getCode())) { |
|
|
|
// wxMerchantService.disableMerchat((Long) merchantId); |
|
|
|
// } |
|
|
|
// } |
|
|
|
// } |
|
|
|
} |
|
|
|
@Override |
|
|
|
public WxRentContract getSimpleDeatil(Long id) { |
|
|
|
return wxRentContractMapper.selectById(id); |
|
|
|
|