From 5ac01c69708f910c2a12ced8650f7f0a3ecd5fce Mon Sep 17 00:00:00 2001 From: winter Date: Fri, 9 Aug 2024 15:31:33 +0800 Subject: [PATCH] fix --- .../contract/WxRentContractController.java | 174 ++++++++---------- .../db/migration/V202408000000003.sql | 16 ++ .../domain/po/WxRentContractRevenueSales.java | 47 +++++ .../WxRentContractRevenueSalesMapper.java | 17 ++ .../print/data/AbstractPrintDataParser.java | 31 ---- .../print/data/PrintBillDataHandler.java | 3 +- .../data/PrintFinanceReceiveDataHandler.java | 16 +- .../data/PrintMerchantSettleDataHandler.java | 3 +- .../impl/WxFinancePrintServiceImpl.java | 46 ++++- .../impl/WxRentContractServiceImpl.java | 4 + .../WxRentContractRevenueSalesMapper.xml | 57 ++++++ 11 files changed, 273 insertions(+), 141 deletions(-) create mode 100644 mallinkAdmin/src/main/resources/db/migration/V202408000000003.sql create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxRentContractRevenueSales.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxRentContractRevenueSalesMapper.java delete mode 100644 mallinkService/src/main/java/com/iformall/print/data/AbstractPrintDataParser.java create mode 100644 mallinkService/src/main/resources/mapper/WxRentContractRevenueSalesMapper.xml 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 e804992e8..4fb14d140 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -566,7 +566,6 @@ public class WxRentContractController extends WxContractBaseController { } @PostMapping("apply") - @SystemControllerLog(description = "租赁合同-提交审批") public ResultData apply(@RequestBody WxRentContract wxRentContract) { WxRentContract rentContract = wxRentContractMapper.selectById(wxRentContract.getId()); if (null == rentContract) { @@ -680,23 +679,6 @@ public class WxRentContractController extends WxContractBaseController { return new ResultData(map); } - - - - - - - - -// @GetMapping("/del") -// @ApiImplicitParam(name = "id", value = "id", dataType = "String", paramType = "query", required = true) -// @SystemControllerLog(description = "租赁合同-删除") -// public ResultData delete(String id) { -// logger.debug("[" + getIpAddr() + "] WxRentContractController::delete"); -// return wxRentContractService.deleteById(id); -// } - - @GetMapping("/hasRentStatus") public ResultData hasRentStatus(@ModelAttribute WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::hasRentStatus"); @@ -722,47 +704,25 @@ public class WxRentContractController extends WxContractBaseController { return new ResultData(Result.SUCCESS, "查询成功", wxMerchantService.getMerchantList(wxMerchant)); } -// @GetMapping("autolatePay") -// @SystemControllerLog(description = "autolatePay") -// public ResultData autolatePay(String startDate, String endDate) throws Exception{ -// try { -// logger.info("账单滞纳金更新开始"); -// wxBillRentMapper.insertBillAction(); -// wxBillPropertyMapper.insertBillAction(); +// /** +// * 预览账单展示,编辑账期,后端生成账单金额 +// * @param wxRentContract +// * @return +// */ +// @PostMapping("buildBillPriceList") +// public ResultData buildBillPriceList(@RequestBody WxRentContract wxRentContract) throws Exception{ +// logger.debug("[" + getIpAddr() + "] WxRentContractController::buildBillPriceList"); +// WxRentContract dbRent = wxRentContractMapper.selectById(wxRentContract.getId()); +// dbRent.setPreviewBillRentList(wxRentContract.getPreviewBillRentList()); // -// wxBillRentMapper.autoAddLatePayPrice(); -// wxBillPropertyMapper.autoAddLatePayPrice(); -// logger.info("账单滞纳金更新结束"); -// }catch (Exception e){ -// logger.error("LatePayBillActionSchedule error! message:{}",e.getMessage()); -// logger.error("LatePayBillActionSchedule error!",e); +// if(dbRent.getRentStartType()!=null && dbRent.getRentStartType().equals(EnumRentStartType.STARTTIME.getCode())){ +// dbRent.setRentalStartDate(dbRent.getStartDate()); // } -// return new ResultData(); +// List result = wxRentContractService.buildRent(getUser(),dbRent, EnumIsPreview.YES.getCode(), false); +// return new ResultData(result); // } - /** - * 预览账单展示,编辑账期,后端生成账单金额 - * @param wxRentContract - * @return - */ - @PostMapping("buildBillPriceList") - public ResultData buildBillPriceList(@RequestBody WxRentContract wxRentContract) throws Exception{ - logger.debug("[" + getIpAddr() + "] WxRentContractController::buildBillPriceList"); - WxRentContract dbRent = wxRentContractMapper.selectById(wxRentContract.getId()); - dbRent.setPreviewBillRentList(wxRentContract.getPreviewBillRentList()); - - if(dbRent.getRentStartType()!=null && dbRent.getRentStartType().equals(EnumRentStartType.STARTTIME.getCode())){ - dbRent.setRentalStartDate(dbRent.getStartDate()); - } - List result = wxRentContractService.buildRent(getUser(),dbRent, EnumIsPreview.YES.getCode(), false); - return new ResultData(result); - } - - - - @PostMapping("updateRentStartTime") - @SystemControllerLog(description = "租赁合同-更新租赁开始日期") public ResultData updateRentStartTime(@RequestBody WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::updateRentStartTime"); WxRentContract rentContract = wxRentContractMapper.selectById(wxRentContract.getId()); @@ -778,48 +738,7 @@ public class WxRentContractController extends WxContractBaseController { return wxRentContractService.update(rentContract, user,user.getName(), EnumFromType.SWITCH.getCode(),oldDate,false,false); } -// @GetMapping("exportContract") -// @ApiImplicitParams({ -// @ApiImplicitParam(name = "rentId", value = "rentId", dataType = "Long", paramType = "query", required = false), -// @ApiImplicitParam(name = "propertyId", value = "propertyId", dataType = "String", paramType = "query", required = false)}) -// @SystemControllerLog(description = "租赁合同-导出合同") -// public void exportContract(Long rentId,String propertyId,HttpServletRequest request, HttpServletResponse response){ -// Long pid = null; -// try { -// pid = Long.parseLong(propertyId); -// }catch(Exception e) { -// } -// wxRentContractService.exportContract(request,response,rentId,pid); -// } - - -// @GetMapping("/getRentContractStatusInfo") -// @SystemControllerLog(description = "租赁合同-获取合同状态信息") -// public ResultData getRentContractStatusInfo(@ModelAttribute WxRentContract wxRentContract) { -// logger.debug("[" + getIpAddr() + "] WxRentContractController::getRentContractStatusInfo"); -// wxRentContract.updateTenantInfo(getTenantInfo()); -// return new ResultData(Result.SUCCESS, "查询成功", wxRentContractService.getRentContractStatusInfo(wxRentContract)); -// } - - - -// @PostMapping("updateMerchant") -// @SystemControllerLog(description = "租赁合同-更新商户") -// public ResultData updateMerchant(@RequestBody WxRentContract wxRentContract) { -// logger.debug("[" + getIpAddr() + "] WxRentContractController::updateMerchant"); -// return wxRentContractService.updateMerchant(wxRentContract); -// } - - -// @PostMapping("updateRentContractStatus") -// @SystemControllerLog(description = "租赁合同-更新合同状态") -// public ResultData updateRentContractStatus(@RequestBody WxRentContract wxRentContract) { -// logger.debug("[" + getIpAddr() + "] WxRentContractController::updateRentContractStatus"); -// return wxRentContractService.updateRentContractStatus(wxRentContract.getId()); -// } - @PostMapping("savePayAccountInfo") - @SystemControllerLog(description = "租赁合同-保存甲方账户") public ResultData savePayAccountInfo(@RequestBody WxPayAccountBill payAccountBill) { logger.debug("[" + getIpAddr() + "] WxRentContractController::savePayAccountInfo"); if(StringUtils.isBlank(payAccountBill.getBankAccountName())) { @@ -841,7 +760,6 @@ public class WxRentContractController extends WxContractBaseController { } @GetMapping("/getMerchants") - @SystemControllerLog(description = "租赁合同-获取已签约租赁合同且未有物业的商户") public ResultData getMerchants(@ModelAttribute WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::getMerchants"); wxRentContract.updateTenantInfo(getTenantInfo()); @@ -850,7 +768,6 @@ public class WxRentContractController extends WxContractBaseController { @GetMapping("/getContractByContractNumber") - @SystemControllerLog(description = "租赁合同-通过合同编号查询信息") public ResultData getContractByContractNumber(@ModelAttribute WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::getContractByContractNumber"); wxRentContract.updateTenantInfo(getTenantInfo()); @@ -878,6 +795,69 @@ public class WxRentContractController extends WxContractBaseController { } return new ResultData(); } + + //查询联营扣点,联营取高的合同 + @GetMapping("getRevenueContractList") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData getRevenueContractList(@ModelAttribute WxRentContract wxRentContract, Integer pageNum, Integer pageSize) { + if (null == wxRentContract) wxRentContract = new WxRentContract(); + wxRentContract.updateTenantInfo(getTenantInfo()); + List typeList = new ArrayList(); + typeList.add(EnumRentContractType.RENT_BY_JOINT.getCode()); + typeList.add(EnumRentContractType.RENT_BY_AREA_AND_JOINT.getCode()); + wxRentContract.setTypeList(typeList); + List statusList = new ArrayList(); + statusList.add(EnumRentContractStatus.PAING.getCode()); + statusList.add(EnumRentContractStatus.READY_FOR_PAING.getCode()); + wxRentContract.setStatuss(statusList); + wxRentContract.setSortColumns(SortField.Createtime_DESC); + return new ResultData(wxRentContractService.getRentContractList(wxRentContract, pageNum, pageSize)); + } + + @PostMapping("setRevenueSales") + public ResultData setRevenueSales(@RequestBody WxRentContract wxRentContract) { + WxRentContract rentContract = wxRentContractMapper.selectById(wxRentContract.getId()); + if (null == rentContract) { + return new ResultData(Result.ERROR, "编号["+wxRentContract.getId()+"]未找到租金合同"); + } + MallUserInfo user = getUser(); + //查询是否有审批流程 + if(!rentContractHasWorkFlow(rentContract)) { + return new ResultData(ErrorCode.FLOW_FAIL.getCode(),"租赁合同不存在工作流,不能提交审批。"); + } + + try { + validConfilit(rentContract); + } catch (Exception e) { + return new ResultData(Result.ERROR,e.getMessage()); + } + + try { + validShop(rentContract); + } catch (Exception e) { + return new ResultData(Result.ERROR,e.getMessage()); + } + //如果是租金+物业合同,如果没有物业合同或者物业合同不是草稿状态,不能提交审核 + if (rentContract.getOperationType().intValue() == EnumContractOperationType.WHOLE.getCode().intValue()) { + if (null == wxRentContract.getPropertyId()) { + return new ResultData(Result.ERROR,"未创建物业合同,请先完善。"); + } + WxPropertyContract property = wxPropertyContractService.getSimpleDetail(wxRentContract.getPropertyId()); + if (null == property) { + return new ResultData(Result.ERROR,"未创建物业合同,请先完善。"); + } + if (property.getStatus().intValue() == EnumRentContractStatus.UNWRITE.getCode().intValue()) { + return new ResultData(Result.ERROR,"物业合同未完善,请先完善。"); + } + if (property.getStatus().intValue() != EnumRentContractStatus.DRAFT.getCode().intValue()) { + return new ResultData(Result.ERROR,"物业合同当前状态不能提交审批。"); + } + } + return wxRentContractService.apply(rentContract,user); + } + } diff --git a/mallinkAdmin/src/main/resources/db/migration/V202408000000003.sql b/mallinkAdmin/src/main/resources/db/migration/V202408000000003.sql new file mode 100644 index 000000000..bddfebb9f --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202408000000003.sql @@ -0,0 +1,16 @@ +CREATE TABLE `wx_rent_contract_revenue_sales` ( + `id` bigint(20) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', + `parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID', + `update_time` datetime DEFAULT NULL COMMENT '更新时间', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `rent_contract_id` bigint(20) NOT NULL COMMENT '合同编号', + `bill_id` bigint(20) NOT NULL COMMENT '账单编号', + `bill_money` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '账单应付金额', + `sale_money` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '销售金额', + `remark` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '备注', + `calcute_money` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '计算之后的金额', + PRIMARY KEY (`id`), + KEY `T_R_B` (`tenant_id`,`rent_contract_id`,`bill_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='租赁合同'; + diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContractRevenueSales.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContractRevenueSales.java new file mode 100644 index 000000000..9a285b396 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContractRevenueSales.java @@ -0,0 +1,47 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; +import java.util.Date; + +/** + */ +@TableName(value = "wx_rent_contract_revenue_sales") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxRentContractRevenueSales extends TenantEntity { + + private static final long serialVersionUID = 7009117540201976664L; + + @io.swagger.annotations.ApiModelProperty(value="id",name="id") + private Long id; + + @io.swagger.annotations.ApiModelProperty(value="createTime",name="createTime") + private Date createTime; + + @io.swagger.annotations.ApiModelProperty(value="updateTime",name="updateTime") + private Date updateTime; + + @io.swagger.annotations.ApiModelProperty(value = "合同编号", name = "rentContractId") + private Long rentContractId; + + @io.swagger.annotations.ApiModelProperty(value = "账单编号", name = "billId") + private Long billId; + + @io.swagger.annotations.ApiModelProperty(value="账单应付金额",name="minMoney") + private String billMoney; + + @io.swagger.annotations.ApiModelProperty(value="销售金额",name="maxMoney") + private String saleMoney; + + @io.swagger.annotations.ApiModelProperty(value="计算金额",name="rentMoney") + private String calcuteMoney; + + @io.swagger.annotations.ApiModelProperty(value="备注",name="remark") + private String remark; + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractRevenueSalesMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractRevenueSalesMapper.java new file mode 100644 index 000000000..4be9e0878 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractRevenueSalesMapper.java @@ -0,0 +1,17 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxRentContractRevenueSales; + +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxRentContractRevenueSalesMapper extends CommonMapper { + + List findList(WxRentContractRevenueSales wxBillRent); + + WxRentContractRevenueSales selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + +} diff --git a/mallinkService/src/main/java/com/iformall/print/data/AbstractPrintDataParser.java b/mallinkService/src/main/java/com/iformall/print/data/AbstractPrintDataParser.java deleted file mode 100644 index eb1fe2228..000000000 --- a/mallinkService/src/main/java/com/iformall/print/data/AbstractPrintDataParser.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.iformall.print.data; - -import java.util.Map; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils; -import com.iformall.domain.po.WxEnergyFees; -import com.iformall.domain.po.WxMerchant; - -public abstract class AbstractPrintDataParser { - - public JSONObject parse(String templateContent,Object re,Map merchantMap,Map feesMap) { - //把所有可能的组件里面需要的内容都解析出来 - if (StringUtils.isBlank(templateContent)) { - return null; - } - JSONObject o = JSON.parseObject(templateContent); - JSONArray items = o.getJSONArray("tempItems"); - if (null != items) { - for (int i = 0 ; i < items.size() ; i ++) { - JSONObject ov = items.getJSONObject(i); - ov.put("value", getObjectValue(ov.getString("name"),re,merchantMap,feesMap)); - } - } - return o; - } - - public abstract Object getObjectValue(String name, Object o,Map merchantMap,Map feesMap); -} diff --git a/mallinkService/src/main/java/com/iformall/print/data/PrintBillDataHandler.java b/mallinkService/src/main/java/com/iformall/print/data/PrintBillDataHandler.java index 93f344858..c1d5450ae 100644 --- a/mallinkService/src/main/java/com/iformall/print/data/PrintBillDataHandler.java +++ b/mallinkService/src/main/java/com/iformall/print/data/PrintBillDataHandler.java @@ -11,10 +11,9 @@ import com.iformall.domain.po.WxMerchant; import com.iformall.utils.DateUtils; @Service -public class PrintBillDataHandler extends AbstractPrintDataParser { +public class PrintBillDataHandler{ - @Override public Object getObjectValue(String name, Object o,Map merchantMap,Map feesMap) { WxAllBill receive = (WxAllBill) o; if (name.equals("id")) { diff --git a/mallinkService/src/main/java/com/iformall/print/data/PrintFinanceReceiveDataHandler.java b/mallinkService/src/main/java/com/iformall/print/data/PrintFinanceReceiveDataHandler.java index 86ed6ceb1..1635e8bb2 100644 --- a/mallinkService/src/main/java/com/iformall/print/data/PrintFinanceReceiveDataHandler.java +++ b/mallinkService/src/main/java/com/iformall/print/data/PrintFinanceReceiveDataHandler.java @@ -4,6 +4,7 @@ import java.util.Map; import org.springframework.stereotype.Service; +import com.alibaba.fastjson.JSONObject; import com.iformall.domain.po.WxEnergyFees; import com.iformall.domain.po.WxFinanceReceive; import com.iformall.domain.po.WxMerchant; @@ -17,10 +18,9 @@ import com.iformall.utils.DateUtils; * */ @Service -public class PrintFinanceReceiveDataHandler extends AbstractPrintDataParser { +public class PrintFinanceReceiveDataHandler { - @Override - public Object getObjectValue(String name, Object o,Map merchantMap,Map feesMap) { + public Object getObjectValue(String name, Object o,Map merchantMap,Map feesMap,Map shopNumber) { WxFinanceReceive receive = (WxFinanceReceive) o; if (name.equals("id")) { return receive.getId(); @@ -50,6 +50,16 @@ public class PrintFinanceReceiveDataHandler extends AbstractPrintDataParser { } } return ""; + }else if (name.equals("shopNumber")) { + if (null != shopNumber) { + return shopNumber.get(receive.getMerchantId()); + } + return ""; + }else if (name.equals("billList")) { + if (null != shopNumber) { + return shopNumber.get(receive.getMerchantId()); + } + return ""; } return null; } diff --git a/mallinkService/src/main/java/com/iformall/print/data/PrintMerchantSettleDataHandler.java b/mallinkService/src/main/java/com/iformall/print/data/PrintMerchantSettleDataHandler.java index 38deba13a..36269badb 100644 --- a/mallinkService/src/main/java/com/iformall/print/data/PrintMerchantSettleDataHandler.java +++ b/mallinkService/src/main/java/com/iformall/print/data/PrintMerchantSettleDataHandler.java @@ -12,10 +12,9 @@ import com.iformall.domain.vo.PrintMerchantSettleVo; import com.iformall.utils.DateUtils; @Service -public class PrintMerchantSettleDataHandler extends AbstractPrintDataParser { +public class PrintMerchantSettleDataHandler{ - @Override public Object getObjectValue(String name, Object o,Map merchantMap,Map feesMap) { PrintMerchantSettleVo receive = (PrintMerchantSettleVo) o; //根据科目来查询对应的信息 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java index 9d1028548..fc6fb79fa 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java @@ -7,6 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils; import com.iformall.common.ErrorCode; @@ -34,6 +35,7 @@ import com.iformall.service.WxEnergyService; import com.iformall.service.WxFinancePrintService; import com.iformall.service.WxFinanceService; import com.iformall.service.WxMerchantService; +import com.iformall.service.WxShopService; import java.util.ArrayList; import java.util.Date; @@ -77,6 +79,10 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { @Autowired WxMerchantService wxMerchantService; + @Lazy + @Autowired + WxShopService wxShopService; + @Override public List printDataList(WxFinancePrintData record) { return wxFinancePrintDataMapper.findList(record); @@ -103,8 +109,8 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { Map map = new HashMap(); map.put("width", 770); map.put("height", 500); - map.put("pageWidth", 215); - map.put("pageHeight", 140); + map.put("pageWidth", 325); + map.put("pageHeight", 275); map.put("tempItems", record.getTempItems()); map.put("id", String.valueOf(record.getId())); map.put("title", record.getName()); @@ -162,12 +168,21 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { wxFinancePrintTemplateMapper.updateById(record); } + @Override public List parseTemplateData(String tenantId, Long templateId, List dataIds,BaseEntity entity) { WxFinancePrintTemplate template = this.getTemplateById(templateId); if (null == template) { return null; } + if (StringUtils.isBlank(template.getContent())) { + return null; + } + JSONObject o = JSON.parseObject(template.getContent()); + if (null == o) { + return null; + } + JSONArray items = o.getJSONArray("tempItems"); EnumFinancePrintDataType printDatatype = EnumFinancePrintDataType.getEnum(template.getType()); WxMerchant mq = new WxMerchant(); mq.setTenantId(tenantId); @@ -175,7 +190,8 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { WxEnergyFees feq = new WxEnergyFees(); feq.setTenantId(tenantId); Map feesMap = wxEnergyService.getFeesMap(feq); - //付款单 + Map shopNumber = wxShopService.getMerchantShopNumberMap(mq, null, null); + //收付款单 if (printDatatype.getCode().intValue() == EnumFinancePrintDataType.FINANCE_RECEIVE.getCode()) { WxFinanceReceive receiveq = new WxFinanceReceive(); receiveq.setTenantId(tenantId); @@ -189,7 +205,13 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { WxFinanceReceive re = receiveList.get(i); PrintVo vo = new PrintVo(); vo.setDataId(templateId); - vo.setTemplate(printFinanceReceiveDataHandler.parse(template.getContent(), re,merchantMap,feesMap)); + if (null != items) { + for (int j = 0 ; j < items.size() ; j ++) { + JSONObject ov = items.getJSONObject(j); + ov.put("value", printFinanceReceiveDataHandler.getObjectValue(ov.getString("name"),re,merchantMap,feesMap,shopNumber)); + } + } + vo.setTemplate(o); voList.add(vo); } return voList; @@ -206,7 +228,13 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { WxAllBill re = billAllList.get(i); PrintVo vo = new PrintVo(); vo.setDataId(templateId); - vo.setTemplate(printBillDataHandler.parse(template.getContent(), re,merchantMap,feesMap)); + if (null != items) { + for (int j = 0 ; j < items.size() ; j ++) { + JSONObject ov = items.getJSONObject(j); + ov.put("value", printBillDataHandler.getObjectValue(ov.getString("name"),re,merchantMap,feesMap)); + } + } + vo.setTemplate(o); voList.add(vo); } return voList; @@ -223,7 +251,13 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { PrintVo vo = new PrintVo(); vo.setDataId(templateId); - vo.setTemplate(printMerchantSettleDataHandler.parse(template.getContent(), sv,merchantMap,feesMap)); + if (null != items) { + for (int j = 0 ; j < items.size() ; j ++) { + JSONObject ov = items.getJSONObject(j); + ov.put("value", printMerchantSettleDataHandler.getObjectValue(ov.getString("name"),sv,merchantMap,feesMap)); + } + } + vo.setTemplate(o); voList.add(vo); return voList; } 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 fd2cd467d..40d3aa41e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -60,6 +60,7 @@ import com.iformall.mapper.WxPropertyContractMapper; import com.iformall.mapper.WxRentContractFreePeriodMapper; import com.iformall.mapper.WxRentContractMapper; import com.iformall.mapper.WxRentContractRevenueJumpMapper; +import com.iformall.mapper.WxRentContractRevenueSalesMapper; import com.iformall.mapper.WxShopMapper; import com.iformall.service.WxEnergyService; import com.iformall.service.WxFlowRecordService; @@ -125,6 +126,9 @@ public class WxRentContractServiceImpl implements WxRentContractService { @Autowired WxRentContractRevenueJumpMapper wxRentContractRevenueJumpMapper; + + @Autowired + WxRentContractRevenueSalesMapper wxRentContractRevenueSalesMapper; @Autowired WxShopMapper wxShopMapper; diff --git a/mallinkService/src/main/resources/mapper/WxRentContractRevenueSalesMapper.xml b/mallinkService/src/main/resources/mapper/WxRentContractRevenueSalesMapper.xml new file mode 100644 index 000000000..af991e549 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxRentContractRevenueSalesMapper.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`rent_contract_id`,`bill_id`,`bill_money`, + `sale_money`,`calcute_money`,`remark` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `rent_contract_id` = #{rentContractId} + and `bill_id` = #{billId} + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + +