diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java index f6ad75bdc..2294cb2d7 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBillRentMapper.java @@ -19,4 +19,6 @@ public interface WxBillRentMapper extends CommonMapper { void updateNotPaidStatus(Map params); + void updateWaitPayStatus(Map params); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java index ba95187bc..cfab2842e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java @@ -38,6 +38,8 @@ public class WxBillRentServiceImpl implements WxBillRentService { public PageInfo> listAsPage(WxBillRent record, Integer pageIndex, Integer pageSize) { //更新逾期天数及状态 updateNotPaidStatus(record); + //更新待缴的状态 + updateWaidPayStatus(record); PageHelper.startPage(pageIndex, pageSize); List> billRentList = wxBillRentMapper.queryBillRentList(record); PageInfo> pageInfo = new PageInfo<>(billRentList); @@ -45,18 +47,34 @@ public class WxBillRentServiceImpl implements WxBillRentService { //return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxBillRentMapper.findList(record)); } + @Transactional(rollbackFor = {Exception.class}) + public void updateWaidPayStatus(WxBillRent record) { + Map params = new HashMap<>(); + params.put("tenantId", record.getTenantId()); + params.put("waitPay", EnumBillRentStatus.WAIT_PAY.getCode()); + params.put("paid", EnumBillRentStatus.PAID.getCode()); + + try { + wxBillRentMapper.updateWaitPayStatus(params); + } catch (Exception e) { + logger.error("更新租赁待缴账单状态失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } + } + + @Transactional(rollbackFor = {Exception.class}) public void updateNotPaidStatus(WxBillRent record) { - Map params=new HashMap<>(); - params.put("tenantId",record.getTenantId()); - params.put("notPaid",EnumBillRentStatus.NOT_PAID); - params.put("paid",EnumBillRentStatus.PAID); - try{ + Map params = new HashMap<>(); + params.put("tenantId", record.getTenantId()); + params.put("notPaid", EnumBillRentStatus.NOT_PAID.getCode()); + params.put("paid", EnumBillRentStatus.PAID.getCode()); + try { wxBillRentMapper.updateNotPaidStatus(params); } catch (Exception e) { - logger.error("更新租赁账单失败,e:" + e.getMessage()); - throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); - } + logger.error("更新租赁欠缴账单状态失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } } @Override diff --git a/mallinkService/src/main/resources/mapper/WxBillRentMapper.xml b/mallinkService/src/main/resources/mapper/WxBillRentMapper.xml index 7125e5257..af213ec50 100644 --- a/mallinkService/src/main/resources/mapper/WxBillRentMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBillRentMapper.xml @@ -94,5 +94,13 @@ where tenant_id=#{tenantId} and status!=#{paid} and DATEDIFF(now(),receive_date)>0 + + update wx_bill_rent set STATUS=#{waitPay} where id in( + select br.id from (select br.id from wx_bill_rent br + left join wx_rent_contract rc on br.rent_contract_id=rc.id + where br.tenant_id=#{tenantId} and br.status!=#{notPaid} and now() < br.receive_date + and DATE_ADD(now(),INTERVAL rc.receive_period MONTH)>receive_date) br) + +