From c95ed555fda7010621dd62bdb18be4e28a0bad24 Mon Sep 17 00:00:00 2001 From: winter Date: Tue, 23 Jul 2024 13:38:24 +0800 Subject: [PATCH] fix --- .../WxRentContractDepositTypeController.java | 29 ++-- .../controller/market/WxEnergyController.java | 14 +- .../market/WxFinanceController.java | 61 ++++++++ .../resources/db/migration/V202407018.sql | 138 ++++++++++++++++-- .../config/BaseMyBatisConfiguration.java | 7 + .../com/iformall/domain/po/WxEnergyFees.java | 20 +++ .../iformall/domain/po/WxRentContract.java | 4 +- .../domain/po/WxRentContractDepositType.java | 33 ----- .../com/iformall/enums/EnumBillAllType.java | 44 ++++-- .../WxRentContractDepositTypeMapper.java | 14 -- .../com/iformall/service/WxEnergyService.java | 1 + .../service/WxRentContractService.java | 5 - .../service/impl/WxEnergyServiceImpl.java | 34 +++++ .../impl/WxProjectConfigServiceImpl.java | 5 +- .../impl/WxRentContractServiceImpl.java | 46 +----- .../resources/mapper/WxEnergyFeesMapper.xml | 7 +- .../WxRentContractDepositTypeMapper.xml | 42 ------ 17 files changed, 326 insertions(+), 178 deletions(-) delete mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxRentContractDepositType.java delete mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxRentContractDepositTypeMapper.java delete mode 100644 mallinkService/src/main/resources/mapper/WxRentContractDepositTypeMapper.xml diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractDepositTypeController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractDepositTypeController.java index 55578ccf2..d9d1eb06c 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractDepositTypeController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractDepositTypeController.java @@ -1,17 +1,18 @@ package com.iformall.controller.contract; +import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; -import com.iformall.domain.po.*; -import com.iformall.enums.*; +import com.iformall.domain.po.WxEnergyFees; +import com.iformall.domain.po.base.BaseEntity; +import com.iformall.enums.EnumBillAllType; +import com.iformall.enums.EnumYesOrNo; import com.iformall.service.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.*; /** - * @author gongbiao */ @RestController @RequestMapping("wxRentContractDepositType") @@ -19,7 +20,7 @@ public class WxRentContractDepositTypeController extends WxContractBaseControlle private final Logger logger = LoggerFactory.getLogger(this.getClass()); @Autowired - private WxRentContractService wxRentContractService; + WxEnergyService wxEnergyService; /** * 押金类型 @@ -27,19 +28,17 @@ public class WxRentContractDepositTypeController extends WxContractBaseControlle */ @GetMapping("list") public ResultData billTypes() { - WxRentContractDepositType dt = new WxRentContractDepositType(); + WxEnergyFees dt = new WxEnergyFees(); dt.updateTenantInfo(getTenantInfo()); dt.setIsDel(EnumYesOrNo.NO.getCode()); - List types = wxRentContractService.findDepositTypes(dt); - return new ResultData(types); + dt.setBillType(EnumBillAllType.RENT_DEPOSIT.getCode()); + dt.setSortColumns(BaseEntity.SortField.CreateTime_DESC); + PageInfo page = wxEnergyService.feesListAsPage(dt, 1, 100); + if (null == page) { + return new ResultData(); + } + return new ResultData(page.getList()); } - - @PostMapping("save") - public ResultData add(@RequestBody WxRentContractDepositType wxRentContract) { - wxRentContract.updateTenantInfo(getTenantInfo()); - wxRentContractService.saveOrUpdateDepositType(wxRentContract); - return new ResultData(); - } } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java index e5ccadf0e..038243481 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java @@ -12,6 +12,7 @@ import com.iformall.domain.po.WxEnergyMeterReading; import com.iformall.domain.po.WxEnergyReadingCalcute; import com.iformall.domain.po.WxUserDataRule; import com.iformall.domain.po.base.BaseEntity; +import com.iformall.enums.EnumBillAllType; import com.iformall.enums.EnumEnergyMeterType; import com.iformall.enums.EnumEnergyPublicCalcuteRule; import com.iformall.enums.EnumYesOrNo; @@ -166,7 +167,7 @@ public class WxEnergyController extends BaseController { return new ResultData(); } - @ApiOperation("费用科目列表") + @ApiOperation("能源科目列表") @GetMapping("feesList") @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), @@ -175,6 +176,7 @@ public class WxEnergyController extends BaseController { public ResultData feesList(@ModelAttribute WxEnergyFees record, Integer pageNum, Integer pageSize) { record.updateTenantInfo(getTenantInfo()); record.setSortColumns(BaseEntity.SortField.CreateTime_DESC); + record.setBillType(EnumBillAllType.DAILY.getCode()); PageInfo page = wxEnergyService.feesListAsPage(record, pageNum, pageSize); return new ResultData(page); } @@ -183,6 +185,16 @@ public class WxEnergyController extends BaseController { @PostMapping("saveFees") public ResultData saveFees(@RequestBody WxEnergyFees record) { record.updateTenantInfo(getTenantInfo()); + record.setBillType(EnumBillAllType.DAILY.getCode()); + if (null == record.getType()) { + return new ResultData(Result.ERROR,"请选择能源表类型"); + } + if (null == record.getPublicCalcute()) { + return new ResultData(Result.ERROR,"请选择分摊计费规则"); + } + if (StringUtils.isNotBlank(record.getPrice())) { + return new ResultData(Result.ERROR,"单价不能为空"); + } wxEnergyService.saveOrUpdateFees(record); return new ResultData(); } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java index 31515a8f1..5d3587af3 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java @@ -6,9 +6,13 @@ import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; import com.iformall.domain.po.WxBillPayWay; +import com.iformall.domain.po.WxEnergyFees; import com.iformall.domain.po.WxFinanceAdvanceType; import com.iformall.domain.po.base.BaseEntity; +import com.iformall.enums.EnumBillAllType; import com.iformall.enums.EnumFinanceType; +import com.iformall.enums.EnumYesOrNo; +import com.iformall.service.WxEnergyService; import com.iformall.service.WxFinanceService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -35,6 +39,8 @@ public class WxFinanceController extends BaseController { @Autowired private WxFinanceService wxFinanceService; + @Autowired + WxEnergyService wxEnergyService; @ApiOperation("财务类型") @GetMapping("financeTypeList") @@ -46,6 +52,61 @@ public class WxFinanceController extends BaseController { return new ResultData(retMap); } + /** + * 账单类型(非能源) + * @return + */ + @GetMapping("billTypes") + public ResultData billTypes() { + Map tmap = new HashMap(); + for (EnumBillAllType t : EnumBillAllType.getFinanceTypes()) { + tmap.put(t.getCode(), t.getMessage()); + } + return new ResultData(tmap); + } + //可以管理的类型 + @GetMapping("operateBillTypes") + public ResultData operateBillTypes() { + Map tmap = new HashMap(); + for (EnumBillAllType t : EnumBillAllType.getFinanceOperateTypes()) { + tmap.put(t.getCode(), t.getMessage()); + } + return new ResultData(tmap); + } + + @ApiOperation("费用科目列表") + @GetMapping("feesList") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), + }) + public ResultData feesList(@ModelAttribute WxEnergyFees record, Integer pageNum, Integer pageSize) { + record.updateTenantInfo(getTenantInfo()); + record.setSortColumns(BaseEntity.SortField.CreateTime_DESC); + //查询非能源费用科目 + record.setNotEnergy(EnumYesOrNo.YES.getCode()); + PageInfo page = wxEnergyService.feesListAsPage(record, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("费用区间列表") + @PostMapping("saveFees") + public ResultData saveFees(@RequestBody WxEnergyFees record) { + record.updateTenantInfo(getTenantInfo()); + if (null == record.getBillType()) { + return new ResultData(Result.ERROR,"请选择绑定账单类型"); + } + wxEnergyService.saveOrUpdateFees(record); + return new ResultData(); + } + + @PostMapping("feesUpdateIsDel") + public ResultData feesUpdateIsDel(@RequestBody WxEnergyFees record) { + record.updateTenantInfo(getTenantInfo()); + wxEnergyService.setFeesIsDel(record); + return new ResultData(); + } + @ApiOperation("支付方式列表") @GetMapping("payWayList") diff --git a/mallinkAdmin/src/main/resources/db/migration/V202407018.sql b/mallinkAdmin/src/main/resources/db/migration/V202407018.sql index 49a25f51d..336795ed6 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202407018.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202407018.sql @@ -66,21 +66,6 @@ CREATE TABLE `wx_energy_fees_time` ( UNIQUE KEY `id_UNIQUE` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; -CREATE TABLE `wx_energy_fees` ( - `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', - `create_time` timestamp NULL DEFAULT NULL, - `update_time` timestamp NULL DEFAULT NULL, - `is_del` int(1) NOT NULL DEFAULT '0', - `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '名称', - `price` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '单价', - `public_calcute` int(1) NOT NULL COMMENT '公摊计费规则', - `type` int(1) NOT NULL COMMENT '表类型', - PRIMARY KEY (`id`), - UNIQUE KEY `id_UNIQUE` (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; - CREATE TABLE `wx_energy_reading_calcute` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', @@ -1482,6 +1467,126 @@ INSERT INTO wx_bill_pay_way_89 (id,tenant_id,parent_tenant_id,create_time,update VALUES (1,'789',NULL,NOW(),NOW(),0,'商户小程序',1), (2,'789',NULL,NOW(),NOW(),0,'系统自动结清',1); +CREATE TABLE `wx_energy_fees` ( + `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', + `create_time` timestamp NULL DEFAULT NULL, + `update_time` timestamp NULL DEFAULT NULL, + `is_del` int(1) NOT NULL DEFAULT '0', + `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '名称', + `price` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '单价', + `public_calcute` int(1) DEFAULT NULL COMMENT '公摊计费规则', + `type` int(1) DEFAULT NULL COMMENT '表类型', + `bill_type` int(11) NOT NULL COMMENT '所属账单类型', + `is_system` int(1) NOT NULL DEFAULT '0' COMMENT '是否系统内置', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + +create table wx_energy_fees_0 like wx_energy_fees; +create table wx_energy_fees_1 like wx_energy_fees; +create table wx_energy_fees_2 like wx_energy_fees; +create table wx_energy_fees_3 like wx_energy_fees; +create table wx_energy_fees_4 like wx_energy_fees; +create table wx_energy_fees_5 like wx_energy_fees; +create table wx_energy_fees_6 like wx_energy_fees; +create table wx_energy_fees_7 like wx_energy_fees; +create table wx_energy_fees_8 like wx_energy_fees; +create table wx_energy_fees_9 like wx_energy_fees; +create table wx_energy_fees_10 like wx_energy_fees; +create table wx_energy_fees_11 like wx_energy_fees; +create table wx_energy_fees_12 like wx_energy_fees; +create table wx_energy_fees_13 like wx_energy_fees; +create table wx_energy_fees_14 like wx_energy_fees; +create table wx_energy_fees_15 like wx_energy_fees; +create table wx_energy_fees_16 like wx_energy_fees; +create table wx_energy_fees_17 like wx_energy_fees; +create table wx_energy_fees_18 like wx_energy_fees; +create table wx_energy_fees_19 like wx_energy_fees; +create table wx_energy_fees_20 like wx_energy_fees; +create table wx_energy_fees_21 like wx_energy_fees; +create table wx_energy_fees_22 like wx_energy_fees; +create table wx_energy_fees_23 like wx_energy_fees; +create table wx_energy_fees_24 like wx_energy_fees; +create table wx_energy_fees_25 like wx_energy_fees; +create table wx_energy_fees_26 like wx_energy_fees; +create table wx_energy_fees_27 like wx_energy_fees; +create table wx_energy_fees_28 like wx_energy_fees; +create table wx_energy_fees_29 like wx_energy_fees; +create table wx_energy_fees_30 like wx_energy_fees; +create table wx_energy_fees_31 like wx_energy_fees; +create table wx_energy_fees_32 like wx_energy_fees; +create table wx_energy_fees_33 like wx_energy_fees; +create table wx_energy_fees_34 like wx_energy_fees; +create table wx_energy_fees_35 like wx_energy_fees; +create table wx_energy_fees_36 like wx_energy_fees; +create table wx_energy_fees_37 like wx_energy_fees; +create table wx_energy_fees_38 like wx_energy_fees; +create table wx_energy_fees_39 like wx_energy_fees; +create table wx_energy_fees_40 like wx_energy_fees; +create table wx_energy_fees_41 like wx_energy_fees; +create table wx_energy_fees_42 like wx_energy_fees; +create table wx_energy_fees_43 like wx_energy_fees; +create table wx_energy_fees_44 like wx_energy_fees; +create table wx_energy_fees_45 like wx_energy_fees; +create table wx_energy_fees_46 like wx_energy_fees; +create table wx_energy_fees_47 like wx_energy_fees; +create table wx_energy_fees_48 like wx_energy_fees; +create table wx_energy_fees_49 like wx_energy_fees; +create table wx_energy_fees_50 like wx_energy_fees; +create table wx_energy_fees_51 like wx_energy_fees; +create table wx_energy_fees_52 like wx_energy_fees; +create table wx_energy_fees_53 like wx_energy_fees; +create table wx_energy_fees_54 like wx_energy_fees; +create table wx_energy_fees_55 like wx_energy_fees; +create table wx_energy_fees_56 like wx_energy_fees; +create table wx_energy_fees_57 like wx_energy_fees; +create table wx_energy_fees_58 like wx_energy_fees; +create table wx_energy_fees_59 like wx_energy_fees; +create table wx_energy_fees_60 like wx_energy_fees; +create table wx_energy_fees_61 like wx_energy_fees; +create table wx_energy_fees_62 like wx_energy_fees; +create table wx_energy_fees_63 like wx_energy_fees; +create table wx_energy_fees_64 like wx_energy_fees; +create table wx_energy_fees_65 like wx_energy_fees; +create table wx_energy_fees_66 like wx_energy_fees; +create table wx_energy_fees_67 like wx_energy_fees; +create table wx_energy_fees_68 like wx_energy_fees; +create table wx_energy_fees_69 like wx_energy_fees; +create table wx_energy_fees_70 like wx_energy_fees; +create table wx_energy_fees_71 like wx_energy_fees; +create table wx_energy_fees_72 like wx_energy_fees; +create table wx_energy_fees_73 like wx_energy_fees; +create table wx_energy_fees_74 like wx_energy_fees; +create table wx_energy_fees_75 like wx_energy_fees; +create table wx_energy_fees_76 like wx_energy_fees; +create table wx_energy_fees_77 like wx_energy_fees; +create table wx_energy_fees_78 like wx_energy_fees; +create table wx_energy_fees_79 like wx_energy_fees; +create table wx_energy_fees_80 like wx_energy_fees; +create table wx_energy_fees_81 like wx_energy_fees; +create table wx_energy_fees_82 like wx_energy_fees; +create table wx_energy_fees_83 like wx_energy_fees; +create table wx_energy_fees_84 like wx_energy_fees; +create table wx_energy_fees_85 like wx_energy_fees; +create table wx_energy_fees_86 like wx_energy_fees; +create table wx_energy_fees_87 like wx_energy_fees; +create table wx_energy_fees_88 like wx_energy_fees; +create table wx_energy_fees_89 like wx_energy_fees; +create table wx_energy_fees_90 like wx_energy_fees; +create table wx_energy_fees_91 like wx_energy_fees; +create table wx_energy_fees_92 like wx_energy_fees; +create table wx_energy_fees_93 like wx_energy_fees; +create table wx_energy_fees_94 like wx_energy_fees; +create table wx_energy_fees_95 like wx_energy_fees; +create table wx_energy_fees_96 like wx_energy_fees; +create table wx_energy_fees_97 like wx_energy_fees; +create table wx_energy_fees_98 like wx_energy_fees; +create table wx_energy_fees_99 like wx_energy_fees; + +drop table wx_energy_fees; + CREATE TABLE `wx_finance_advance_type` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', @@ -1497,3 +1602,6 @@ CREATE TABLE `wx_finance_advance_type` ( ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + + + diff --git a/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java b/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java index 52bab084b..b4f075602 100644 --- a/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java +++ b/mallinkService/src/main/java/com/iformall/config/BaseMyBatisConfiguration.java @@ -442,6 +442,13 @@ public class BaseMyBatisConfiguration { wxBillPayWaySharding.setRule(EnumShardingRule.HASH.getCode()); shardingList.add(wxBillPayWaySharding); + ShardingSphere wxEnergyFeesSharding = new ShardingSphere(); + wxEnergyFeesSharding.setColumn("tenant_id"); + wxEnergyFeesSharding.setTableName("wx_energy_fees"); + wxEnergyFeesSharding.setCount(100); + wxEnergyFeesSharding.setRule(EnumShardingRule.HASH.getCode()); + shardingList.add(wxEnergyFeesSharding); + //初始化 shardingSpherePlugin.setShardingSpheres(shardingList); Properties properties = new Properties(); diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java index b957ff6fb..23e9831c7 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java @@ -1,7 +1,10 @@ package com.iformall.domain.po; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumBillAllType; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; @@ -41,4 +44,21 @@ public class WxEnergyFees extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value = "表类型EnumEnergyMeterType", name = "type") private Integer type; + @io.swagger.annotations.ApiModelProperty(value = "所属账单类型EnumBillAllType", name = "billType") + private Integer billType; + @TableField(exist = false) + private String billTypeName; + public String getBillTypeName() { + if (null != billType) { + return EnumBillAllType.getEnum(billType).getMessage(); + } + return null; + } + + @io.swagger.annotations.ApiModelProperty(value = "是否系统内置", name = "isSystem") + private Integer isSystem; + + @TableField(exist = false) + private Integer notEnergy; + } 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 dd0fb1d35..bb0bfd0a0 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java @@ -521,7 +521,7 @@ public class WxRentContract extends TenantEntity { return sb.toString(); } - public String getDepositDetail(Map typeMap) { + public String getDepositDetail(Map typeMap) { StringBuffer sb = new StringBuffer(""); String dsdstr = this.getCashtypeContentLsit(); if (!StringUtils.isBlank(dsdstr) && null != typeMap) { @@ -532,7 +532,7 @@ public class WxRentContract extends TenantEntity { String depositType = rentInfoObject.getString("value"); String deposit = rentInfoObject.getString("deposit"); Long dt = Long.parseLong(depositType); - WxRentContractDepositType dtt = typeMap.get(dt); + WxEnergyFees dtt = typeMap.get(dt); if (null != dtt) { sb.append(dtt.getName()).append(":").append(deposit).append(","); } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContractDepositType.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContractDepositType.java deleted file mode 100644 index f428f1d16..000000000 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContractDepositType.java +++ /dev/null @@ -1,33 +0,0 @@ -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; -/** - * @author gongbiao - */ -@TableName(value = "wx_rent_contract_deposit_type") -@Data -@ToString(callSuper = true) -@EqualsAndHashCode(callSuper = true) -public class WxRentContractDepositType extends TenantEntity { - - private static final long serialVersionUID = -2034956838395479510L; - - protected Long id; - - @io.swagger.annotations.ApiModelProperty(value = "是否删除1是0否", name = "isDel") - private Integer isDel; - @io.swagger.annotations.ApiModelProperty(value = "更新时间", name = "updatetime") - private Date updateTime; - @io.swagger.annotations.ApiModelProperty(value = "创建时间", name = "createtime") - private Date createTime; - @io.swagger.annotations.ApiModelProperty(value = "名称", name = "createtime") - private String name; - - -} - diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumBillAllType.java b/mallinkService/src/main/java/com/iformall/enums/EnumBillAllType.java index 3fe975def..fdb46b80d 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumBillAllType.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumBillAllType.java @@ -1,17 +1,16 @@ package com.iformall.enums; - public enum EnumBillAllType { - RENT(1,"租金"), - RENT_BUSSINESS_MANAGE(11,"商业管理费"), - RENT_OPERATION_MANAGE(12,"运营管理费"), - RENT_DEPOSIT(13,"租赁押金"), - PROPERTY(2,"物业费"), - PROPERTY_DEPOSIT(21,"物业押金"), - DAILY(3, "日常(水电空调)费"), - OTHER(4, "其他费用"), - OTHER_DEPOSIT(5, "其他押金") + RENT(1,"租金",1L), + RENT_BUSSINESS_MANAGE(11,"商业管理费",2L), + RENT_OPERATION_MANAGE(12,"运营管理费",3L), + RENT_DEPOSIT(13,"租赁押金",4L), + PROPERTY(2,"物业费",5L), + PROPERTY_DEPOSIT(21,"物业押金",6L), + DAILY(3, "日常(水电空调)费",null), + OTHER(4, "其他费用",null), + OTHER_DEPOSIT(5, "其他押金",null) ; public static EnumBillAllType getEnum(Integer code) { @@ -25,10 +24,12 @@ public enum EnumBillAllType { private Integer code; private String message; + private Long energyFeesId;//wx_energy_fees里的id,系统内置的有这个 - EnumBillAllType(Integer code, String message) { + EnumBillAllType(Integer code, String message,Long energyFeesId) { this.code = code; this.message = message; + this.energyFeesId = energyFeesId; } public Integer getCode() { @@ -38,4 +39,25 @@ public enum EnumBillAllType { public String getMessage() { return message; } + + public Long getEnergyFeesId() { + return energyFeesId; + } + + public static EnumBillAllType[] getSystemTypes() { + EnumBillAllType[] ret = new EnumBillAllType[] {RENT,RENT_BUSSINESS_MANAGE,RENT_OPERATION_MANAGE,RENT_DEPOSIT, + PROPERTY,PROPERTY_DEPOSIT}; + return ret; + } + + public static EnumBillAllType[] getFinanceTypes() { + EnumBillAllType[] ret = new EnumBillAllType[] {RENT,RENT_BUSSINESS_MANAGE,RENT_OPERATION_MANAGE,RENT_DEPOSIT, + PROPERTY,PROPERTY_DEPOSIT,OTHER,OTHER_DEPOSIT}; + return ret; + } + + public static EnumBillAllType[] getFinanceOperateTypes() { + EnumBillAllType[] ret = new EnumBillAllType[] {OTHER,OTHER_DEPOSIT}; + return ret; + } } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractDepositTypeMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxRentContractDepositTypeMapper.java deleted file mode 100644 index d13fd4485..000000000 --- a/mallinkService/src/main/java/com/iformall/mapper/WxRentContractDepositTypeMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.iformall.mapper; - -import com.iformall.common.CommonMapper; -import com.iformall.domain.po.WxRentContractDepositType; -import java.util.List; - -/** - * @author gongbiao - */ -public interface WxRentContractDepositTypeMapper extends CommonMapper { - - List findList(WxRentContractDepositType wxRentContract); - -} diff --git a/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java b/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java index e78ee5dc4..524e791f8 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java @@ -43,6 +43,7 @@ public interface WxEnergyService { WxEnergyFees getFeesById(WxEnergyFees record); void setFeesIsDel(WxEnergyFees record); Map getFeesMap(WxEnergyFees record); + void initEnergyFees(TenantEntity tenantEntity); //抄表数据 PageInfo readingListAsPage(WxEnergyMeterReading record, Integer pageIndex, Integer pageSize); diff --git a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java index 3a9c23d60..7b0033e8d 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java @@ -6,7 +6,6 @@ import com.iformall.domain.po.MallUserInfo; import com.iformall.domain.po.WxBillRent; import com.iformall.domain.po.WxMall; import com.iformall.domain.po.WxRentContract; -import com.iformall.domain.po.WxRentContractDepositType; import com.iformall.domain.po.base.TenantEntity; import javax.servlet.http.HttpServletRequest; @@ -146,8 +145,4 @@ public interface WxRentContractService { void calcuteByTradeDaily(WxRentContract wxRentContract); - List findDepositTypes(WxRentContractDepositType rentContract); - - void saveOrUpdateDepositType(WxRentContractDepositType rentContract); - } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java index f04b0007d..c8fec699d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java @@ -9,6 +9,7 @@ import com.iformall.common.IdWorker; import com.iformall.common.Result; import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumBillAllType; import com.iformall.enums.EnumEnergyPublicCalcuteRule; import com.iformall.enums.EnumYesOrNo; import com.iformall.exception.MallinkException; @@ -255,6 +256,7 @@ public class WxEnergyServiceImpl implements WxEnergyService { record.setId(idWorker.nextId()); record.setCreateTime(date); record.setUpdateTime(date); + record.setIsSystem(EnumYesOrNo.NO.getCode()); try { wxEnergyFeesMapper.insert(record); } catch (Exception e) { @@ -262,6 +264,13 @@ public class WxEnergyServiceImpl implements WxEnergyService { throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); } } else { + WxEnergyFees fees = this.getFeesById(record); + if (null == fees) { + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "记录未查询到"); + } + if (fees.getIsSystem().intValue() == EnumYesOrNo.YES.getCode().intValue()) { + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "系统内置不能修改"); + } record.setUpdateTime(date); wxEnergyFeesMapper.updateById(record); } @@ -274,6 +283,13 @@ public class WxEnergyServiceImpl implements WxEnergyService { @Override public void setFeesIsDel(WxEnergyFees record) { + WxEnergyFees fees = this.getFeesById(record); + if (null == fees) { + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "记录未查询到"); + } + if (fees.getIsSystem().intValue() == EnumYesOrNo.YES.getCode().intValue()) { + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "系统内置不能修改"); + } wxEnergyFeesMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel()); } @@ -290,6 +306,22 @@ public class WxEnergyServiceImpl implements WxEnergyService { } return null; } + + @Override + public void initEnergyFees(TenantEntity tenantEntity) { + for (EnumBillAllType t : EnumBillAllType.getSystemTypes()) { + WxEnergyFees fees = new WxEnergyFees(); + fees.setId(t.getEnergyFeesId()); + fees.setName(t.getMessage()); + fees.setIsSystem(EnumYesOrNo.YES.getCode()); + fees.setBillType(t.getCode()); + fees.setIsDel(EnumYesOrNo.NO.getCode()); + Date date = new Date(); + fees.setCreateTime(date); + fees.setUpdateTime(date); + wxEnergyFeesMapper.insert(fees); + } + } @Override @@ -875,4 +907,6 @@ public class WxEnergyServiceImpl implements WxEnergyService { } + + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxProjectConfigServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxProjectConfigServiceImpl.java index 7bdc7a97f..c07332163 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxProjectConfigServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxProjectConfigServiceImpl.java @@ -70,7 +70,8 @@ public class WxProjectConfigServiceImpl implements WxProjectConfigService { WxBusinessService wxBusinessService; @Autowired WxFinanceService wxFinanceService; - + @Autowired + WxEnergyService wxEnergyService; @Autowired @Qualifier("objectCommonRedisTemplate") RedisTemplate objectCommonRedisTemplate; @@ -163,6 +164,8 @@ public class WxProjectConfigServiceImpl implements WxProjectConfigService { wxPayAccountBillService.payAccountBillInit(wxMall.getTenantInfo()); //wx_bill_pay_way wxFinanceService.payWayInit(wxMall.getTenantInfo()); + //wx_energy_fees + wxEnergyService.initEnergyFees(wxMall.getTenantInfo()); } wxMallService.update(wxMall); } 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 38151f4d0..a9986b0ad 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -130,13 +130,14 @@ public class WxRentContractServiceImpl implements WxRentContractService { @Autowired WxMerchantTradeDailyMapper wxMerchantTradeDailyMapper; - @Autowired - WxRentContractDepositTypeMapper wxRentContractDepositTypeMapper; - @Lazy @Autowired WxBillAllHelper wxBillAllHelper; + @Lazy + @Autowired + WxEnergyService wxEnergyService; + // @Override // public Map listAsPage(WxRentContract record, Integer pageIndex, Integer pageSize) { // //Object rentContractStatusInfo = getRentContractStatusInfo(record); @@ -939,9 +940,10 @@ public class WxRentContractServiceImpl implements WxRentContractService { if (wxRentContract != null && StringUtils.isNotBlank(wxRentContract.getDeposit()) && new BigDecimal(wxRentContract.getDeposit()).compareTo(new BigDecimal(0)) > 0 ) { - WxRentContractDepositType dt = new WxRentContractDepositType(); - dt.updateTenantInfo(wxRentContract); - Map typeMap = findDepositTypesMap(dt); + WxEnergyFees fq = new WxEnergyFees(); + fq.updateTenantInfo(fq); + fq.setBillType(EnumBillAllType.RENT_DEPOSIT.getCode()); + Map typeMap = wxEnergyService.getFeesMap(fq); final IdWorker idWorker = IdWorker.get(); WxBillDeposit wxBillDeposit = new WxBillDeposit(); @@ -3446,36 +3448,4 @@ public class WxRentContractServiceImpl implements WxRentContractService { return new BigDecimal(sumMoney); } } - - @Override - public List findDepositTypes(WxRentContractDepositType rentContract) { - return wxRentContractDepositTypeMapper.findList(rentContract); - } - - private Map findDepositTypesMap(WxRentContractDepositType rentContract) { - List types = findDepositTypes(rentContract); - if (null != types && types.size() > 0 ) { - Map tmap = new HashMap(); - for (int i = 0 ; i < types.size(); i++ ) { - WxRentContractDepositType dt = types.get(i); - tmap.put(dt.getId(), dt); - } - return tmap; - } - return null; - } - - @Override - public void saveOrUpdateDepositType(WxRentContractDepositType rentContract) { - if (null == rentContract.getId()) { - final IdWorker idWorker = IdWorker.get(); - rentContract.setId(idWorker.nextId()); - rentContract.setCreateTime(new Date()); - rentContract.setUpdateTime(new Date()); - wxRentContractDepositTypeMapper.insert(rentContract); - }else { - rentContract.setUpdateTime(new Date()); - wxRentContractDepositTypeMapper.updateById(rentContract); - } - } } diff --git a/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml index af147c697..f230a1ce5 100644 --- a/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml @@ -12,10 +12,12 @@ + + - `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`price`,`public_calcute`,`type` + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`price`,`public_calcute`,`type`,`bill_type`,`is_system` @@ -30,6 +32,9 @@ and `is_del` = #{isDel} and `public_calcute` = #{publicCalcute} and `type` = #{type} + and `bill_type` = #{billType} + and `bill_type` != 3 + and `is_system` = #{isSystem} and name like concat('%', #{name},'%') and id in diff --git a/mallinkService/src/main/resources/mapper/WxRentContractDepositTypeMapper.xml b/mallinkService/src/main/resources/mapper/WxRentContractDepositTypeMapper.xml deleted file mode 100644 index 2f83aae1b..000000000 --- a/mallinkService/src/main/resources/mapper/WxRentContractDepositTypeMapper.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - `id`,`tenant_id`,`parent_tenant_id`,`is_del`,`name`,`update_time`,`create_time` - - - - - where 1 = 1 - and `id` = #{id} - and `tenant_id` = #{tenantId} - and `parent_tenant_id` = #{parentTenantId} - and `is_del` = #{isDel} - and `name` like concat('%', #{name},'%') - - and id in - - #{idItem} - - - order by ${sortColumns} - - - - -