zhengfangyuan 3 лет назад
Родитель
Сommit
8f9b6e55f1
2 измененных файлов: 47 добавлений и 3 удалений
  1. +21
    -2
      mallinkService/src/main/java/com/iformall/domain/po/WxBillRentManage.java
  2. +26
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java

+ 21
- 2
mallinkService/src/main/java/com/iformall/domain/po/WxBillRentManage.java Просмотреть файл

@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.iformall.common.SortColumn; import com.iformall.common.SortColumn;
import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.base.TenantEntity;
import com.iformall.enums.EnumDelStatus;

import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.ToString; import lombok.ToString;
@@ -187,8 +189,25 @@ public class WxBillRentManage extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="管理费类型,EnumRentContractManageFeeType",name="manageFeeType") @io.swagger.annotations.ApiModelProperty(value="管理费类型,EnumRentContractManageFeeType",name="manageFeeType")
private Integer manageFeeType; private Integer manageFeeType;
private void initByBillRent(WxBillRent billRent) {
public void initByBillRent(WxBillRent billRent) {
this.rentContractId = billRent.getRentContractId();
this.pay = billRent.getPay();
this.starttime = billRent.getStarttime();
this.endtime = billRent.getEndtime();
this.receiveDate = billRent.getReceiveDate();
//截止收租日在当前时间之前
Date date = new Date();
this.updateTenantInfo(billRent);
this.isDel = billRent.getIsDel();
this.merchantId = billRent.getMerchantId();
this.userId = billRent.getUserId();
this.shopId = billRent.getShopId();
this.createtime = billRent.getCreatetime();
this.updatetime = billRent.getUpdatetime();
this.rentShopType = billRent.getRentShopType();
this.period = billRent.getPeriod();
this.shopInfo = billRent.getShopInfo();
this.latePayRatio = billRent.getLatePayRatio();
} }


} }

+ 26
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java Просмотреть файл

@@ -1443,6 +1443,7 @@ public class WxRentContractServiceImpl implements WxRentContractService {
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
Map<String,Object> resultMap = new HashedMap(); Map<String,Object> resultMap = new HashedMap();
List<WxBillRent> resultList = new ArrayList<>(); List<WxBillRent> resultList = new ArrayList<>();
List<WxBillRentManage> manageList = new ArrayList<WxBillRentManage>();
final IdWorker idWorker = IdWorker.get(); final IdWorker idWorker = IdWorker.get();


Date endDate = null;//每年的截止日期 Date endDate = null;//每年的截止日期
@@ -1604,7 +1605,6 @@ public class WxRentContractServiceImpl implements WxRentContractService {
setExpiredDay(wxBillRent,dayType,receivePeriod); setExpiredDay(wxBillRent,dayType,receivePeriod);
wxBillRent.setRevenue(0L); wxBillRent.setRevenue(0L);
wxBillRent.updateTenantInfo(wxRentContract); wxBillRent.updateTenantInfo(wxRentContract);
wxBillRent.setIsDel(0);
wxBillRent.setMerchantId(wxRentContract.getMerchantId()); wxBillRent.setMerchantId(wxRentContract.getMerchantId());
wxBillRent.setUserId(userId); wxBillRent.setUserId(userId);
if (null != wxRentContract.shopIdsByRentInfo() && wxRentContract.shopIdsByRentInfo().size() == 1) { if (null != wxRentContract.shopIdsByRentInfo() && wxRentContract.shopIdsByRentInfo().size() == 1) {
@@ -1623,16 +1623,41 @@ public class WxRentContractServiceImpl implements WxRentContractService {
wxBillRent.setServiceChargePay(servicePay.intValue()); wxBillRent.setServiceChargePay(servicePay.intValue());
wxBillRent.setOwe(wxBillRent.getReceivePay() + wxBillRent.getServiceChargePay()); wxBillRent.setOwe(wxBillRent.getReceivePay() + wxBillRent.getServiceChargePay());
resultList.add(wxBillRent); resultList.add(wxBillRent);
//商业管理费账单
manageList.add(setManageRent(wxBillRent,EnumRentContractManageFeeType.RENT_BUSSINESS_MANAGE_FEE,bussinessManageFeeNeedpay,wxPayAccountBill.getServiceChargeRate(),dayType,receivePeriod));
//营业管理费账单
manageList.add(setManageRent(wxBillRent,EnumRentContractManageFeeType.RENT_OPERATING_MANAGE_FEE,operatingManageFeeNeedpay,wxPayAccountBill.getServiceChargeRate(),dayType,receivePeriod));
} }


//批量插入账单 //批量插入账单
if(saveDb) { if(saveDb) {
wxBillRentMapper.insertBills(resultList); wxBillRentMapper.insertBills(resultList);
wxBillRentManageMapper.insertBills(manageList);
} }
resultMap.put("billcount",billcount); resultMap.put("billcount",billcount);
resultMap.put("billList",resultList); resultMap.put("billList",resultList);
return resultMap; return resultMap;
} }
private WxBillRentManage setManageRent(WxBillRent wxBillRent,EnumRentContractManageFeeType feeType,Long needPay,Integer serviceChargeRate,int dayType,int receivePeriod) {
WxBillRentManage manage = new WxBillRentManage();
manage.initByBillRent(wxBillRent);
final IdWorker idWorker = IdWorker.get();
wxBillRent.setId(idWorker.nextId());
manage.setManageFeeType(feeType.getCode());
manage.setNeedPay(needPay);
manage.setReceivePay(needPay);
manage.setOwe(needPay);
setManageExpiredDay(manage,dayType,receivePeriod);
//计算手续费
BigDecimal servicePay = new BigDecimal(needPay).multiply(new BigDecimal(serviceChargeRate)).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP);
manage.setServiceChargePay(servicePay.intValue());
manage.setOwe(needPay + manage.getServiceChargePay());
return manage;
}


public void setExpiredDay(WxBillRent wxBillRent,int dayType, int receivePeriod){ public void setExpiredDay(WxBillRent wxBillRent,int dayType, int receivePeriod){
//截止收租日在当前时间之前 //截止收租日在当前时间之前


Загрузка…
Отмена
Сохранить