From 0777e5af3daa970d295e896ac42bf37fe7edcbf0 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Wed, 2 Jul 2025 22:11:33 +0800 Subject: [PATCH] fix --- .../contract/WxAgileContractController.java | 21 +++++++++++++++++++ .../contract/WxRentContractController.java | 16 ++++++++++++++ .../iformall/domain/po/WxRentContract.java | 2 ++ .../iformall/mapper/WxRentContractMapper.java | 2 ++ .../service/WxAgileContractService.java | 2 ++ .../impl/WxAgileContractServiceImpl.java | 7 ++++++- .../impl/WxRentContractServiceImpl.java | 20 +++++++++++------- .../resources/mapper/WxRentContractMapper.xml | 8 ++++++- 8 files changed, 68 insertions(+), 10 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java index 9858e0360..027175e68 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java @@ -666,6 +666,27 @@ public class WxAgileContractController extends WxContractBaseController { return new ResultData(); } + /** + * 设置合同跳点汇算是否按照实际天数来算 + */ + @PostMapping("setRevenueJumpByRealDays") + public ResultData setRevenueJumpByRealDays(@RequestBody WxRentContract rentContract) { + if (null == rentContract.getId() || null == rentContract.getRevenueJumpByRealDays()) { + return new ResultData(Result.ERROR,"参数错误"); + } + rentContract.updateTenantInfo(getTenantInfo()); + WxRentContract rc = wxAgileContractService.selectById(rentContract.getId()); + if (null == rc) { + return new ResultData(Result.ERROR,"合同未查询到"); + } + try { + wxAgileContractService.updateRevenueJumpByRealDays(rentContract); + }catch(Exception e) { + return new ResultData(Result.ERROR,"保存信息失败:"+e.getMessage()); + } + return new ResultData(); + } + @ApiOperation("分页列表接口") @GetMapping("billList") diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java index dcbbb2b8e..224dacaf9 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -413,6 +413,22 @@ public class WxRentContractController extends WxContractBaseController { return new ResultData(wxRentContractService.setRevenueSales(this.getUser(),rentContract,wxRentContract.getSalesMoney(),wxRentContract.getSalesStartTime(),wxRentContract.getSalesEndTime())); } + //查询合同年度汇算账单列表 + @GetMapping("getRevenueSalesBills") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData getRevenueSalesBills(@ModelAttribute WxRentContract wxRentContract, Integer pageNum, Integer pageSize) { + if (null == wxRentContract) wxRentContract = new WxRentContract(); + WxRentContract rentContract = wxRentContractMapper.selectById(wxRentContract.getId()); + WxAllBill billd = new WxAllBill(); + billd.updateTenantInfo(rentContract); + billd.setRentContractId(rentContract.getId()); + billd.setExtraCreateFrom(EnumBillExtraCreateFrom.RNET_REVENUE_SALES.getCode()); + billd.setStarttimeEqual(wxRentContract.getSalesStartTime()); + return new ResultData(wxAllBillService.listAsPage(billd,pageNum,pageSize)); + } + //查询合同年限 @GetMapping("getContractYears") public ResultData getContractYears(@ModelAttribute WxRentContract wxRentContract) { diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java index faedce664..fe6fc7eb0 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java @@ -123,6 +123,8 @@ public class WxRentContract extends TenantEntity { private String remark; @io.swagger.annotations.ApiModelProperty(value = "来源ID,用于履约中合同修改影子数据", name = "orginId") private Long orginId; + @io.swagger.annotations.ApiModelProperty(value = "跳点汇算是否按照实际天数来计算EnumYesOrNo", name = "revenueJumpByRealDays") + private Integer revenueJumpByRealDays; public List shopIdsByRentInfo() { List shopList = Lists.newArrayList(); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java index 0ed075ac1..fbc8305e9 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java @@ -42,4 +42,6 @@ public interface WxRentContractMapper extends CommonMapper List findToEndContractList(WxRentContract rentContract); void setOrgIdNull(@Param("tenantId") String tenantId,@Param("id") Long id,@Param("orgId") Long orgId); + + void setRevenueJumpByRealDays(WxRentContract rentContract); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxAgileContractService.java b/mallinkService/src/main/java/com/iformall/service/WxAgileContractService.java index 798f10af5..583622608 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxAgileContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxAgileContractService.java @@ -92,4 +92,6 @@ public interface WxAgileContractService { void deleteContract(Long id,TenantEntity tenantEntity); void deleteContractFees(Long id,TenantEntity tenantEntity); + + void updateRevenueJumpByRealDays(WxRentContract rentContract); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java index 1d9e7e743..d50420f2a 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java @@ -1333,7 +1333,7 @@ public class WxAgileContractServiceImpl implements WxAgileContractService { ari.setRentContractId(newContractId); ari.setRenevueId(renevueId); ari.setBeginTime(rentContract.getRentalStartDate()); - ari.setBeginTime(rentContract.getRentalEndDate()); + ari.setEndTime(rentContract.getRentalEndDate()); ari.setRate("0"); ari.setIsFree(EnumYesOrNo.NO.getCode()); ari.setIsFather(EnumYesOrNo.YES.getCode()); @@ -1518,4 +1518,9 @@ public class WxAgileContractServiceImpl implements WxAgileContractService { brDel.setIsPreview(EnumYesOrNo.YES.getCode()); wxAllBillMapper.deletePreviewBill(brDel); } + + @Override + public void updateRevenueJumpByRealDays(WxRentContract rentContract) { + wxRentContractMapper.setRevenueJumpByRealDays(rentContract); + } } 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 7a406050d..63139b593 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -1284,18 +1284,22 @@ public class WxRentContractServiceImpl implements WxRentContractService { BigDecimal jumpRevenuePay = jumppays[0]; //BigDecimal jumpRentPay = jumppays[1]; - //销售收入不满足一年怎么算。 - int yearDays = DateUtils.daysBetween(rentcontract.getYearsBegin(), rentcontract.getYearsEnd())+1; - //闰年是366 - if (yearDays >= 365) { - }else { - if (rentcontract.getDayPriceCalcute().intValue() == EnumRentDayPriceCalcute.AVERAGE_DAYS.getCode()) { - jumpRevenuePay = jumpRevenuePay.multiply(new BigDecimal(yearDays)).divide(new BigDecimal(12*rentcontract.getMonthAverageDays()),rentcontract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); + + if (null != rentcontract.getRevenueJumpByRealDays() && rentcontract.getRevenueJumpByRealDays().intValue() == EnumYesOrNo.YES.getCode()) { + //销售收入不满足一年怎么算。 + int yearDays = DateUtils.daysBetween(rentcontract.getYearsBegin(), rentcontract.getYearsEnd())+1; + //闰年是366 + if (yearDays >= 365) { }else { - jumpRevenuePay = jumpRevenuePay.multiply(new BigDecimal(yearDays)).divide(new BigDecimal(365),rentcontract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); + if (rentcontract.getDayPriceCalcute().intValue() == EnumRentDayPriceCalcute.AVERAGE_DAYS.getCode()) { + jumpRevenuePay = jumpRevenuePay.multiply(new BigDecimal(yearDays)).divide(new BigDecimal(12*rentcontract.getMonthAverageDays()),rentcontract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); + }else { + jumpRevenuePay = jumpRevenuePay.multiply(new BigDecimal(yearDays)).divide(new BigDecimal(365),rentcontract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); + } } } + //查询未删除的参与扣点计算的非押金账单或者录入销售额生成的账单之和 BigDecimal receivepay = getAllRenevueBillsReceivePayTotal(rentcontract,rentcontract.getYearsBegin(),rentcontract.getYearsEnd()); if (null == receivepay ){ diff --git a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml index eb3594685..6d8d85f46 100644 --- a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml @@ -37,6 +37,7 @@ + @@ -51,7 +52,7 @@ `apply_status`,`create_by_name`,`update_by_name`, `rent_info`, `file_names`, shop_id_str, - design_file,remark,orgin_id + design_file,remark,orgin_id,revenue_jump_by_real_days @@ -60,6 +61,7 @@ and `id` = #{id} and `from_id` = #{fromId} and `orgin_id` = #{orginId} + and `revenue_jump_by_real_days` = #{revenueJumpByRealDays} and `customers_id` = #{customersId} and `rental_start_date` = #{rentalStartDate} and `rental_end_date` = #{rentalEndDate} @@ -247,5 +249,9 @@ update wx_rent_contract set orgin_id = null,remark=concat('来自',#{orgId},'编辑') where id = #{id} and `tenant_id` = #{tenantId} + + update wx_rent_contract set revenue_jump_by_real_days = #{revenueJumpByRealDays} where id = #{id} and `tenant_id` = #{tenantId} + +