|
|
|
@@ -2622,12 +2622,42 @@ public class WxRentContractServiceImpl implements WxRentContractService { |
|
|
|
WxRentContractRevenueSales rsq = new WxRentContractRevenueSales();
|
|
|
|
rsq.updateTenantInfo(rentcontract);
|
|
|
|
rsq.setRentContractId(rentcontract.getId());
|
|
|
|
BigDecimal sum = wxRentContractRevenueSalesMapper.findSumSalesMoney(rsq);
|
|
|
|
//BigDecimal sum = wxRentContractRevenueSalesMapper.findSumSalesMoney(rsq);
|
|
|
|
List<Long> billIdList = wxRentContractRevenueSalesMapper.findBillId(rsq);
|
|
|
|
Date realStartTime = null;
|
|
|
|
Date realEndTime = null;
|
|
|
|
if (null != billIdList || billIdList.size() > 0 ) {
|
|
|
|
WxAllBill abq = new WxAllBill();
|
|
|
|
abq.updateTenantInfo(rentcontract);
|
|
|
|
abq.setIds(billIdList);
|
|
|
|
abq.setStarttimeEqual(rentcontract.getYearsBegin());
|
|
|
|
abq.setStarttimeEqual(rentcontract.getYearsEnd());
|
|
|
|
abq.setSortColumn(" starttime asc");
|
|
|
|
List<WxAllBill> billList = wxAllBillMapper.findList(abq);
|
|
|
|
if (null == billList || billList.size() <= 0 ){
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
realStartTime = billList.get(0).getStarttime();
|
|
|
|
realEndTime = billList.get(billList.size()-1).getEndtime();
|
|
|
|
}
|
|
|
|
BigDecimal sum = new BigDecimal(0);
|
|
|
|
//计算跳点。
|
|
|
|
BigDecimal[] jumppays = calcuteReveneuJump(sum, rentcontract,rentcontract.getYearsBegin(), rentcontract.getYearsEnd(),null);
|
|
|
|
BigDecimal jumpRevenuePay = jumppays[0];
|
|
|
|
//BigDecimal jumpRentPay = jumppays[1];
|
|
|
|
|
|
|
|
//销售收入不满足一年怎么算。
|
|
|
|
if (realStartTime.equals(rentcontract.getYearsBegin()) && realEndTime.equals(rentcontract.getYearsEnd())) {
|
|
|
|
}else {
|
|
|
|
int days = DateUtils.daysBetween(realStartTime, realEndTime)+1;
|
|
|
|
if (rentcontract.getDayPriceCalcute().intValue() == EnumRentDayPriceCalcute.AVERAGE_DAYS.getCode()) {
|
|
|
|
jumpRevenuePay = jumpRevenuePay.multiply(new BigDecimal(days)).divide(new BigDecimal(12*rentcontract.getMonthAverageDays()),Constant.default_long_decimal_size,BigDecimal.ROUND_HALF_UP);
|
|
|
|
}else {
|
|
|
|
|
|
|
|
jumpRevenuePay = jumpRevenuePay.multiply(new BigDecimal(days)).divide(new BigDecimal(365),Constant.default_long_decimal_size,BigDecimal.ROUND_HALF_UP);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
BigDecimal receivepay = new BigDecimal(0);
|
|
|
|
//查询所有租金和物业账单的信息
|
|
|
|
WxAllBill rentBillq = new WxAllBill();
|
|
|
|
|