winter 1 год назад
Родитель
Сommit
338ccc946a
15 измененных файлов: 1391 добавлений и 486 удалений
  1. +55
    -17
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java
  2. +631
    -0
      mallinkAdmin/src/main/resources/db/migration/V202408000000005.sql
  3. +6
    -3
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesCalcute.java
  4. +81
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesCalcuteShop.java
  5. +52
    -77
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterReading.java
  6. +7
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyReadingCalcute.java
  7. +2
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesCalcuteMapper.java
  8. +19
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesCalcuteShopMapper.java
  9. +11
    -4
      mallinkService/src/main/java/com/iformall/service/WxEnergyService.java
  10. +79
    -0
      mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java
  11. +372
    -368
      mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java
  12. +8
    -3
      mallinkService/src/main/resources/mapper/WxEnergyFeesCalcuteMapper.xml
  13. +65
    -0
      mallinkService/src/main/resources/mapper/WxEnergyFeesCalcuteShopMapper.xml
  14. +1
    -13
      mallinkService/src/main/resources/mapper/WxEnergyMeterReadingMapper.xml
  15. +2
    -1
      mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteMapper.xml

+ 55
- 17
mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java Просмотреть файл

@@ -7,6 +7,7 @@ import com.iformall.controller.base.BaseController;
import com.iformall.domain.po.MallUserInfo;
import com.iformall.domain.po.WxEnergyFees;
import com.iformall.domain.po.WxEnergyFeesCalcute;
import com.iformall.domain.po.WxEnergyFeesCalcuteShop;
import com.iformall.domain.po.WxEnergyFeesTime;
import com.iformall.domain.po.WxEnergyMeter;
import com.iformall.domain.po.WxEnergyMeterChild;
@@ -347,7 +348,7 @@ public class WxEnergyController extends BaseController {
return new ResultData();
}
@ApiOperation("店铺费用列表")
@ApiOperation("计算标准列表")
@GetMapping("feesCalcuteList")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@@ -366,7 +367,7 @@ public class WxEnergyController extends BaseController {
record.setFeesIds(feesIdList);
}
}
PageInfo<WxEnergyFeesCalcute> list = wxEnergyService.shopFeesListAsPage(record,pageNum,pageSize);
PageInfo<WxEnergyFeesCalcute> list = wxEnergyService.feesCalcuteListAsPage(record,pageNum,pageSize);
return new ResultData(list);
}
@@ -374,29 +375,66 @@ public class WxEnergyController extends BaseController {
@GetMapping("feesCalcuteComponentList")
public ResultData shopFeesList(@ModelAttribute WxEnergyFeesCalcute record) {
record.updateTenantInfo(getTenantInfo());
record.setSortColumns(BaseEntity.SortField.CreateTime_DESC);
if (StringUtils.isNotBlank(record.getFeesIdsStr())) {
String[] fss = record.getFeesIdsStr().split(",");
if (null != fss && fss.length > 0 ) {
List<Long> feesIdList = new ArrayList<Long>();
for (int i = 0 ; i < fss.length ; i ++) {
feesIdList.add(Long.parseLong(fss[i]));
}
record.setFeesIds(feesIdList);
}
}
PageInfo<WxEnergyFeesCalcute> list = wxEnergyService.shopFeesListAsPage(record,pageNum,pageSize);
return new ResultData(list);
return new ResultData(wxEnergyService.getFeesCalcuteComponentList(record));
}
@ApiOperation("用户能源表新增修改")
@ApiOperation("计费标准新增修改")
@PostMapping("saveFeesCalcute")
public ResultData saveFeesCalcute(@RequestBody WxEnergyFeesCalcute record) {
record.updateTenantInfo(getTenantInfo());
wxEnergyService.createMeterAlias(record);
wxEnergyService.saveOrUpdateFeesCalcute(record);
return new ResultData();
}
@PostMapping("feesCalcuteUpdateIsDel")
public ResultData calcuteUpdateIsDel(@RequestBody WxEnergyFeesCalcute record) {
record.updateTenantInfo(getTenantInfo());
wxEnergyService.updateFeesCalcuteIsDel(record);
return new ResultData();
}
@ApiOperation("计费标准关联")
@PostMapping("aliasFeesCalcute")
public ResultData aliasCalcute(@RequestBody WxEnergyFeesCalcuteShop record) {
record.updateTenantInfo(getTenantInfo());
wxEnergyService.createFeesCalcuteAlias(record);
return new ResultData();
}
@ApiOperation("删除计费标准关联")
@PostMapping("deleteAliasFeesCalcute")
public ResultData deleteAliasFeesCalcute(@RequestBody WxEnergyFeesCalcuteShop record) {
wxEnergyService.deleteFeesCalcuteAlias(record);
return new ResultData();
}
@ApiOperation("店铺计费标准详情")
@GetMapping("shopfeesCalcuteDetail")
public ResultData shopfeesCalcuteDetail(@ModelAttribute WxEnergyFeesCalcuteShop record) {
record.updateTenantInfo(getTenantInfo());
return new ResultData(wxEnergyService.getShopFeesCalcute(record.getId(),record.getTenantId()));
}
@ApiOperation("店铺修改计费标准")
@PostMapping("updateShopFeesCalcute")
public ResultData updateShopFeesCalcute(@RequestBody WxEnergyFeesCalcuteShop record) {
wxEnergyService.saveOrUpdateShopFeesCalcute(record);
return new ResultData();
}
@ApiOperation("店铺费用列表")
@GetMapping("shopFeesCalcuteList")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true),
})
public ResultData shopFeesCalcuteList(@ModelAttribute WxEnergyFeesCalcuteShop record, Integer pageNum, Integer pageSize) {
record.updateTenantInfo(getTenantInfo());
record.setSortColumns(BaseEntity.SortField.CreateTime_ASC);
PageInfo<WxEnergyFeesCalcuteShop> list = wxEnergyService.shopFeesCalcuteListAsPage(record,pageNum,pageSize);
return new ResultData(list);
}
@ApiOperation("费用区间列表")
@GetMapping("timeList")


+ 631
- 0
mallinkAdmin/src/main/resources/db/migration/V202408000000005.sql Просмотреть файл

@@ -41,12 +41,643 @@ CREATE TABLE `wx_energy_fees_calcute` (
`price` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '价格',
`physics_type` int(1) NOT NULL COMMENT '用户表,公摊总表',
`formula` text COLLATE utf8mb4_unicode_ci COMMENT '计算公式',
`formula_content` text COLLATE utf8mb4_unicode_ci COMMENT '计算公式显示内容',
`is_del` int(1) NOT NULL DEFAULT '0' COMMENT '是否已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `id_UNIQUE` (`id`),
UNIQUE KEY `T_F` (`tenant_id`,`fees_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表';


CREATE TABLE `wx_energy_fees_calcute_shop` (
`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,
`calcute_id` bigint(20) NOT NULL COMMENT '计费标准Id',
`price` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '价格',
`physics_type` int(1) NOT NULL COMMENT '用户表,公摊总表',
`formula` text COLLATE utf8mb4_unicode_ci COMMENT '计算公式',
`formula_content` text COLLATE utf8mb4_unicode_ci COMMENT '计算公式显示内容',
`shop_id` bigint(20) NOT NULL COMMENT '店铺编号',
`fees_id` bigint(20) NOT NULL COMMENT '科目编号',
PRIMARY KEY (`id`),
UNIQUE KEY `id_UNIQUE` (`id`),
UNIQUE KEY `T_F` (`tenant_id`,`calcute_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表';


alter table wx_energy_meter_reading_0 drop column time_id;
alter table wx_energy_meter_reading_1 drop column time_id;
alter table wx_energy_meter_reading_2 drop column time_id;
alter table wx_energy_meter_reading_3 drop column time_id;
alter table wx_energy_meter_reading_4 drop column time_id;
alter table wx_energy_meter_reading_5 drop column time_id;
alter table wx_energy_meter_reading_6 drop column time_id;
alter table wx_energy_meter_reading_7 drop column time_id;
alter table wx_energy_meter_reading_8 drop column time_id;
alter table wx_energy_meter_reading_9 drop column time_id;
alter table wx_energy_meter_reading_10 drop column time_id;
alter table wx_energy_meter_reading_11 drop column time_id;
alter table wx_energy_meter_reading_12 drop column time_id;
alter table wx_energy_meter_reading_13 drop column time_id;
alter table wx_energy_meter_reading_14 drop column time_id;
alter table wx_energy_meter_reading_15 drop column time_id;
alter table wx_energy_meter_reading_16 drop column time_id;
alter table wx_energy_meter_reading_17 drop column time_id;
alter table wx_energy_meter_reading_18 drop column time_id;
alter table wx_energy_meter_reading_19 drop column time_id;
alter table wx_energy_meter_reading_20 drop column time_id;
alter table wx_energy_meter_reading_21 drop column time_id;
alter table wx_energy_meter_reading_22 drop column time_id;
alter table wx_energy_meter_reading_23 drop column time_id;
alter table wx_energy_meter_reading_24 drop column time_id;
alter table wx_energy_meter_reading_25 drop column time_id;
alter table wx_energy_meter_reading_26 drop column time_id;
alter table wx_energy_meter_reading_27 drop column time_id;
alter table wx_energy_meter_reading_28 drop column time_id;
alter table wx_energy_meter_reading_29 drop column time_id;
alter table wx_energy_meter_reading_30 drop column time_id;
alter table wx_energy_meter_reading_31 drop column time_id;
alter table wx_energy_meter_reading_32 drop column time_id;
alter table wx_energy_meter_reading_33 drop column time_id;
alter table wx_energy_meter_reading_34 drop column time_id;
alter table wx_energy_meter_reading_35 drop column time_id;
alter table wx_energy_meter_reading_36 drop column time_id;
alter table wx_energy_meter_reading_37 drop column time_id;
alter table wx_energy_meter_reading_38 drop column time_id;
alter table wx_energy_meter_reading_39 drop column time_id;
alter table wx_energy_meter_reading_40 drop column time_id;
alter table wx_energy_meter_reading_41 drop column time_id;
alter table wx_energy_meter_reading_42 drop column time_id;
alter table wx_energy_meter_reading_43 drop column time_id;
alter table wx_energy_meter_reading_44 drop column time_id;
alter table wx_energy_meter_reading_45 drop column time_id;
alter table wx_energy_meter_reading_46 drop column time_id;
alter table wx_energy_meter_reading_47 drop column time_id;
alter table wx_energy_meter_reading_48 drop column time_id;
alter table wx_energy_meter_reading_49 drop column time_id;
alter table wx_energy_meter_reading_50 drop column time_id;
alter table wx_energy_meter_reading_51 drop column time_id;
alter table wx_energy_meter_reading_52 drop column time_id;
alter table wx_energy_meter_reading_53 drop column time_id;
alter table wx_energy_meter_reading_54 drop column time_id;
alter table wx_energy_meter_reading_55 drop column time_id;
alter table wx_energy_meter_reading_56 drop column time_id;
alter table wx_energy_meter_reading_57 drop column time_id;
alter table wx_energy_meter_reading_58 drop column time_id;
alter table wx_energy_meter_reading_59 drop column time_id;
alter table wx_energy_meter_reading_60 drop column time_id;
alter table wx_energy_meter_reading_61 drop column time_id;
alter table wx_energy_meter_reading_62 drop column time_id;
alter table wx_energy_meter_reading_63 drop column time_id;
alter table wx_energy_meter_reading_64 drop column time_id;
alter table wx_energy_meter_reading_65 drop column time_id;
alter table wx_energy_meter_reading_66 drop column time_id;
alter table wx_energy_meter_reading_67 drop column time_id;
alter table wx_energy_meter_reading_68 drop column time_id;
alter table wx_energy_meter_reading_69 drop column time_id;
alter table wx_energy_meter_reading_70 drop column time_id;
alter table wx_energy_meter_reading_71 drop column time_id;
alter table wx_energy_meter_reading_72 drop column time_id;
alter table wx_energy_meter_reading_73 drop column time_id;
alter table wx_energy_meter_reading_74 drop column time_id;
alter table wx_energy_meter_reading_75 drop column time_id;
alter table wx_energy_meter_reading_76 drop column time_id;
alter table wx_energy_meter_reading_77 drop column time_id;
alter table wx_energy_meter_reading_78 drop column time_id;
alter table wx_energy_meter_reading_79 drop column time_id;
alter table wx_energy_meter_reading_80 drop column time_id;
alter table wx_energy_meter_reading_81 drop column time_id;
alter table wx_energy_meter_reading_82 drop column time_id;
alter table wx_energy_meter_reading_83 drop column time_id;
alter table wx_energy_meter_reading_84 drop column time_id;
alter table wx_energy_meter_reading_85 drop column time_id;
alter table wx_energy_meter_reading_86 drop column time_id;
alter table wx_energy_meter_reading_87 drop column time_id;
alter table wx_energy_meter_reading_88 drop column time_id;
alter table wx_energy_meter_reading_89 drop column time_id;
alter table wx_energy_meter_reading_90 drop column time_id;
alter table wx_energy_meter_reading_91 drop column time_id;
alter table wx_energy_meter_reading_92 drop column time_id;
alter table wx_energy_meter_reading_93 drop column time_id;
alter table wx_energy_meter_reading_94 drop column time_id;
alter table wx_energy_meter_reading_95 drop column time_id;
alter table wx_energy_meter_reading_96 drop column time_id;
alter table wx_energy_meter_reading_97 drop column time_id;
alter table wx_energy_meter_reading_98 drop column time_id;
alter table wx_energy_meter_reading_99 drop column time_id;

alter table wx_energy_meter_reading_0 drop column is_public;
alter table wx_energy_meter_reading_1 drop column is_public;
alter table wx_energy_meter_reading_2 drop column is_public;
alter table wx_energy_meter_reading_3 drop column is_public;
alter table wx_energy_meter_reading_4 drop column is_public;
alter table wx_energy_meter_reading_5 drop column is_public;
alter table wx_energy_meter_reading_6 drop column is_public;
alter table wx_energy_meter_reading_7 drop column is_public;
alter table wx_energy_meter_reading_8 drop column is_public;
alter table wx_energy_meter_reading_9 drop column is_public;
alter table wx_energy_meter_reading_10 drop column is_public;
alter table wx_energy_meter_reading_11 drop column is_public;
alter table wx_energy_meter_reading_12 drop column is_public;
alter table wx_energy_meter_reading_13 drop column is_public;
alter table wx_energy_meter_reading_14 drop column is_public;
alter table wx_energy_meter_reading_15 drop column is_public;
alter table wx_energy_meter_reading_16 drop column is_public;
alter table wx_energy_meter_reading_17 drop column is_public;
alter table wx_energy_meter_reading_18 drop column is_public;
alter table wx_energy_meter_reading_19 drop column is_public;
alter table wx_energy_meter_reading_20 drop column is_public;
alter table wx_energy_meter_reading_21 drop column is_public;
alter table wx_energy_meter_reading_22 drop column is_public;
alter table wx_energy_meter_reading_23 drop column is_public;
alter table wx_energy_meter_reading_24 drop column is_public;
alter table wx_energy_meter_reading_25 drop column is_public;
alter table wx_energy_meter_reading_26 drop column is_public;
alter table wx_energy_meter_reading_27 drop column is_public;
alter table wx_energy_meter_reading_28 drop column is_public;
alter table wx_energy_meter_reading_29 drop column is_public;
alter table wx_energy_meter_reading_30 drop column is_public;
alter table wx_energy_meter_reading_31 drop column is_public;
alter table wx_energy_meter_reading_32 drop column is_public;
alter table wx_energy_meter_reading_33 drop column is_public;
alter table wx_energy_meter_reading_34 drop column is_public;
alter table wx_energy_meter_reading_35 drop column is_public;
alter table wx_energy_meter_reading_36 drop column is_public;
alter table wx_energy_meter_reading_37 drop column is_public;
alter table wx_energy_meter_reading_38 drop column is_public;
alter table wx_energy_meter_reading_39 drop column is_public;
alter table wx_energy_meter_reading_40 drop column is_public;
alter table wx_energy_meter_reading_41 drop column is_public;
alter table wx_energy_meter_reading_42 drop column is_public;
alter table wx_energy_meter_reading_43 drop column is_public;
alter table wx_energy_meter_reading_44 drop column is_public;
alter table wx_energy_meter_reading_45 drop column is_public;
alter table wx_energy_meter_reading_46 drop column is_public;
alter table wx_energy_meter_reading_47 drop column is_public;
alter table wx_energy_meter_reading_48 drop column is_public;
alter table wx_energy_meter_reading_49 drop column is_public;
alter table wx_energy_meter_reading_50 drop column is_public;
alter table wx_energy_meter_reading_51 drop column is_public;
alter table wx_energy_meter_reading_52 drop column is_public;
alter table wx_energy_meter_reading_53 drop column is_public;
alter table wx_energy_meter_reading_54 drop column is_public;
alter table wx_energy_meter_reading_55 drop column is_public;
alter table wx_energy_meter_reading_56 drop column is_public;
alter table wx_energy_meter_reading_57 drop column is_public;
alter table wx_energy_meter_reading_58 drop column is_public;
alter table wx_energy_meter_reading_59 drop column is_public;
alter table wx_energy_meter_reading_60 drop column is_public;
alter table wx_energy_meter_reading_61 drop column is_public;
alter table wx_energy_meter_reading_62 drop column is_public;
alter table wx_energy_meter_reading_63 drop column is_public;
alter table wx_energy_meter_reading_64 drop column is_public;
alter table wx_energy_meter_reading_65 drop column is_public;
alter table wx_energy_meter_reading_66 drop column is_public;
alter table wx_energy_meter_reading_67 drop column is_public;
alter table wx_energy_meter_reading_68 drop column is_public;
alter table wx_energy_meter_reading_69 drop column is_public;
alter table wx_energy_meter_reading_70 drop column is_public;
alter table wx_energy_meter_reading_71 drop column is_public;
alter table wx_energy_meter_reading_72 drop column is_public;
alter table wx_energy_meter_reading_73 drop column is_public;
alter table wx_energy_meter_reading_74 drop column is_public;
alter table wx_energy_meter_reading_75 drop column is_public;
alter table wx_energy_meter_reading_76 drop column is_public;
alter table wx_energy_meter_reading_77 drop column is_public;
alter table wx_energy_meter_reading_78 drop column is_public;
alter table wx_energy_meter_reading_79 drop column is_public;
alter table wx_energy_meter_reading_80 drop column is_public;
alter table wx_energy_meter_reading_81 drop column is_public;
alter table wx_energy_meter_reading_82 drop column is_public;
alter table wx_energy_meter_reading_83 drop column is_public;
alter table wx_energy_meter_reading_84 drop column is_public;
alter table wx_energy_meter_reading_85 drop column is_public;
alter table wx_energy_meter_reading_86 drop column is_public;
alter table wx_energy_meter_reading_87 drop column is_public;
alter table wx_energy_meter_reading_88 drop column is_public;
alter table wx_energy_meter_reading_89 drop column is_public;
alter table wx_energy_meter_reading_90 drop column is_public;
alter table wx_energy_meter_reading_91 drop column is_public;
alter table wx_energy_meter_reading_92 drop column is_public;
alter table wx_energy_meter_reading_93 drop column is_public;
alter table wx_energy_meter_reading_94 drop column is_public;
alter table wx_energy_meter_reading_95 drop column is_public;
alter table wx_energy_meter_reading_96 drop column is_public;
alter table wx_energy_meter_reading_97 drop column is_public;
alter table wx_energy_meter_reading_98 drop column is_public;
alter table wx_energy_meter_reading_99 drop column is_public;

alter table wx_energy_meter_reading_0 drop column shop_number;
alter table wx_energy_meter_reading_1 drop column shop_number;
alter table wx_energy_meter_reading_2 drop column shop_number;
alter table wx_energy_meter_reading_3 drop column shop_number;
alter table wx_energy_meter_reading_4 drop column shop_number;
alter table wx_energy_meter_reading_5 drop column shop_number;
alter table wx_energy_meter_reading_6 drop column shop_number;
alter table wx_energy_meter_reading_7 drop column shop_number;
alter table wx_energy_meter_reading_8 drop column shop_number;
alter table wx_energy_meter_reading_9 drop column shop_number;
alter table wx_energy_meter_reading_10 drop column shop_number;
alter table wx_energy_meter_reading_11 drop column shop_number;
alter table wx_energy_meter_reading_12 drop column shop_number;
alter table wx_energy_meter_reading_13 drop column shop_number;
alter table wx_energy_meter_reading_14 drop column shop_number;
alter table wx_energy_meter_reading_15 drop column shop_number;
alter table wx_energy_meter_reading_16 drop column shop_number;
alter table wx_energy_meter_reading_17 drop column shop_number;
alter table wx_energy_meter_reading_18 drop column shop_number;
alter table wx_energy_meter_reading_19 drop column shop_number;
alter table wx_energy_meter_reading_20 drop column shop_number;
alter table wx_energy_meter_reading_21 drop column shop_number;
alter table wx_energy_meter_reading_22 drop column shop_number;
alter table wx_energy_meter_reading_23 drop column shop_number;
alter table wx_energy_meter_reading_24 drop column shop_number;
alter table wx_energy_meter_reading_25 drop column shop_number;
alter table wx_energy_meter_reading_26 drop column shop_number;
alter table wx_energy_meter_reading_27 drop column shop_number;
alter table wx_energy_meter_reading_28 drop column shop_number;
alter table wx_energy_meter_reading_29 drop column shop_number;
alter table wx_energy_meter_reading_30 drop column shop_number;
alter table wx_energy_meter_reading_31 drop column shop_number;
alter table wx_energy_meter_reading_32 drop column shop_number;
alter table wx_energy_meter_reading_33 drop column shop_number;
alter table wx_energy_meter_reading_34 drop column shop_number;
alter table wx_energy_meter_reading_35 drop column shop_number;
alter table wx_energy_meter_reading_36 drop column shop_number;
alter table wx_energy_meter_reading_37 drop column shop_number;
alter table wx_energy_meter_reading_38 drop column shop_number;
alter table wx_energy_meter_reading_39 drop column shop_number;
alter table wx_energy_meter_reading_40 drop column shop_number;
alter table wx_energy_meter_reading_41 drop column shop_number;
alter table wx_energy_meter_reading_42 drop column shop_number;
alter table wx_energy_meter_reading_43 drop column shop_number;
alter table wx_energy_meter_reading_44 drop column shop_number;
alter table wx_energy_meter_reading_45 drop column shop_number;
alter table wx_energy_meter_reading_46 drop column shop_number;
alter table wx_energy_meter_reading_47 drop column shop_number;
alter table wx_energy_meter_reading_48 drop column shop_number;
alter table wx_energy_meter_reading_49 drop column shop_number;
alter table wx_energy_meter_reading_50 drop column shop_number;
alter table wx_energy_meter_reading_51 drop column shop_number;
alter table wx_energy_meter_reading_52 drop column shop_number;
alter table wx_energy_meter_reading_53 drop column shop_number;
alter table wx_energy_meter_reading_54 drop column shop_number;
alter table wx_energy_meter_reading_55 drop column shop_number;
alter table wx_energy_meter_reading_56 drop column shop_number;
alter table wx_energy_meter_reading_57 drop column shop_number;
alter table wx_energy_meter_reading_58 drop column shop_number;
alter table wx_energy_meter_reading_59 drop column shop_number;
alter table wx_energy_meter_reading_60 drop column shop_number;
alter table wx_energy_meter_reading_61 drop column shop_number;
alter table wx_energy_meter_reading_62 drop column shop_number;
alter table wx_energy_meter_reading_63 drop column shop_number;
alter table wx_energy_meter_reading_64 drop column shop_number;
alter table wx_energy_meter_reading_65 drop column shop_number;
alter table wx_energy_meter_reading_66 drop column shop_number;
alter table wx_energy_meter_reading_67 drop column shop_number;
alter table wx_energy_meter_reading_68 drop column shop_number;
alter table wx_energy_meter_reading_69 drop column shop_number;
alter table wx_energy_meter_reading_70 drop column shop_number;
alter table wx_energy_meter_reading_71 drop column shop_number;
alter table wx_energy_meter_reading_72 drop column shop_number;
alter table wx_energy_meter_reading_73 drop column shop_number;
alter table wx_energy_meter_reading_74 drop column shop_number;
alter table wx_energy_meter_reading_75 drop column shop_number;
alter table wx_energy_meter_reading_76 drop column shop_number;
alter table wx_energy_meter_reading_77 drop column shop_number;
alter table wx_energy_meter_reading_78 drop column shop_number;
alter table wx_energy_meter_reading_79 drop column shop_number;
alter table wx_energy_meter_reading_80 drop column shop_number;
alter table wx_energy_meter_reading_81 drop column shop_number;
alter table wx_energy_meter_reading_82 drop column shop_number;
alter table wx_energy_meter_reading_83 drop column shop_number;
alter table wx_energy_meter_reading_84 drop column shop_number;
alter table wx_energy_meter_reading_85 drop column shop_number;
alter table wx_energy_meter_reading_86 drop column shop_number;
alter table wx_energy_meter_reading_87 drop column shop_number;
alter table wx_energy_meter_reading_88 drop column shop_number;
alter table wx_energy_meter_reading_89 drop column shop_number;
alter table wx_energy_meter_reading_90 drop column shop_number;
alter table wx_energy_meter_reading_91 drop column shop_number;
alter table wx_energy_meter_reading_92 drop column shop_number;
alter table wx_energy_meter_reading_93 drop column shop_number;
alter table wx_energy_meter_reading_94 drop column shop_number;
alter table wx_energy_meter_reading_95 drop column shop_number;
alter table wx_energy_meter_reading_96 drop column shop_number;
alter table wx_energy_meter_reading_97 drop column shop_number;
alter table wx_energy_meter_reading_98 drop column shop_number;
alter table wx_energy_meter_reading_99 drop column shop_number;

alter table wx_energy_meter_reading_0 drop column shop_id;
alter table wx_energy_meter_reading_1 drop column shop_id;
alter table wx_energy_meter_reading_2 drop column shop_id;
alter table wx_energy_meter_reading_3 drop column shop_id;
alter table wx_energy_meter_reading_4 drop column shop_id;
alter table wx_energy_meter_reading_5 drop column shop_id;
alter table wx_energy_meter_reading_6 drop column shop_id;
alter table wx_energy_meter_reading_7 drop column shop_id;
alter table wx_energy_meter_reading_8 drop column shop_id;
alter table wx_energy_meter_reading_9 drop column shop_id;
alter table wx_energy_meter_reading_10 drop column shop_id;
alter table wx_energy_meter_reading_11 drop column shop_id;
alter table wx_energy_meter_reading_12 drop column shop_id;
alter table wx_energy_meter_reading_13 drop column shop_id;
alter table wx_energy_meter_reading_14 drop column shop_id;
alter table wx_energy_meter_reading_15 drop column shop_id;
alter table wx_energy_meter_reading_16 drop column shop_id;
alter table wx_energy_meter_reading_17 drop column shop_id;
alter table wx_energy_meter_reading_18 drop column shop_id;
alter table wx_energy_meter_reading_19 drop column shop_id;
alter table wx_energy_meter_reading_20 drop column shop_id;
alter table wx_energy_meter_reading_21 drop column shop_id;
alter table wx_energy_meter_reading_22 drop column shop_id;
alter table wx_energy_meter_reading_23 drop column shop_id;
alter table wx_energy_meter_reading_24 drop column shop_id;
alter table wx_energy_meter_reading_25 drop column shop_id;
alter table wx_energy_meter_reading_26 drop column shop_id;
alter table wx_energy_meter_reading_27 drop column shop_id;
alter table wx_energy_meter_reading_28 drop column shop_id;
alter table wx_energy_meter_reading_29 drop column shop_id;
alter table wx_energy_meter_reading_30 drop column shop_id;
alter table wx_energy_meter_reading_31 drop column shop_id;
alter table wx_energy_meter_reading_32 drop column shop_id;
alter table wx_energy_meter_reading_33 drop column shop_id;
alter table wx_energy_meter_reading_34 drop column shop_id;
alter table wx_energy_meter_reading_35 drop column shop_id;
alter table wx_energy_meter_reading_36 drop column shop_id;
alter table wx_energy_meter_reading_37 drop column shop_id;
alter table wx_energy_meter_reading_38 drop column shop_id;
alter table wx_energy_meter_reading_39 drop column shop_id;
alter table wx_energy_meter_reading_40 drop column shop_id;
alter table wx_energy_meter_reading_41 drop column shop_id;
alter table wx_energy_meter_reading_42 drop column shop_id;
alter table wx_energy_meter_reading_43 drop column shop_id;
alter table wx_energy_meter_reading_44 drop column shop_id;
alter table wx_energy_meter_reading_45 drop column shop_id;
alter table wx_energy_meter_reading_46 drop column shop_id;
alter table wx_energy_meter_reading_47 drop column shop_id;
alter table wx_energy_meter_reading_48 drop column shop_id;
alter table wx_energy_meter_reading_49 drop column shop_id;
alter table wx_energy_meter_reading_50 drop column shop_id;
alter table wx_energy_meter_reading_51 drop column shop_id;
alter table wx_energy_meter_reading_52 drop column shop_id;
alter table wx_energy_meter_reading_53 drop column shop_id;
alter table wx_energy_meter_reading_54 drop column shop_id;
alter table wx_energy_meter_reading_55 drop column shop_id;
alter table wx_energy_meter_reading_56 drop column shop_id;
alter table wx_energy_meter_reading_57 drop column shop_id;
alter table wx_energy_meter_reading_58 drop column shop_id;
alter table wx_energy_meter_reading_59 drop column shop_id;
alter table wx_energy_meter_reading_60 drop column shop_id;
alter table wx_energy_meter_reading_61 drop column shop_id;
alter table wx_energy_meter_reading_62 drop column shop_id;
alter table wx_energy_meter_reading_63 drop column shop_id;
alter table wx_energy_meter_reading_64 drop column shop_id;
alter table wx_energy_meter_reading_65 drop column shop_id;
alter table wx_energy_meter_reading_66 drop column shop_id;
alter table wx_energy_meter_reading_67 drop column shop_id;
alter table wx_energy_meter_reading_68 drop column shop_id;
alter table wx_energy_meter_reading_69 drop column shop_id;
alter table wx_energy_meter_reading_70 drop column shop_id;
alter table wx_energy_meter_reading_71 drop column shop_id;
alter table wx_energy_meter_reading_72 drop column shop_id;
alter table wx_energy_meter_reading_73 drop column shop_id;
alter table wx_energy_meter_reading_74 drop column shop_id;
alter table wx_energy_meter_reading_75 drop column shop_id;
alter table wx_energy_meter_reading_76 drop column shop_id;
alter table wx_energy_meter_reading_77 drop column shop_id;
alter table wx_energy_meter_reading_78 drop column shop_id;
alter table wx_energy_meter_reading_79 drop column shop_id;
alter table wx_energy_meter_reading_80 drop column shop_id;
alter table wx_energy_meter_reading_81 drop column shop_id;
alter table wx_energy_meter_reading_82 drop column shop_id;
alter table wx_energy_meter_reading_83 drop column shop_id;
alter table wx_energy_meter_reading_84 drop column shop_id;
alter table wx_energy_meter_reading_85 drop column shop_id;
alter table wx_energy_meter_reading_86 drop column shop_id;
alter table wx_energy_meter_reading_87 drop column shop_id;
alter table wx_energy_meter_reading_88 drop column shop_id;
alter table wx_energy_meter_reading_89 drop column shop_id;
alter table wx_energy_meter_reading_90 drop column shop_id;
alter table wx_energy_meter_reading_91 drop column shop_id;
alter table wx_energy_meter_reading_92 drop column shop_id;
alter table wx_energy_meter_reading_93 drop column shop_id;
alter table wx_energy_meter_reading_94 drop column shop_id;
alter table wx_energy_meter_reading_95 drop column shop_id;
alter table wx_energy_meter_reading_96 drop column shop_id;
alter table wx_energy_meter_reading_97 drop column shop_id;
alter table wx_energy_meter_reading_98 drop column shop_id;
alter table wx_energy_meter_reading_99 drop column shop_id;

alter table wx_energy_meter_reading_0 drop column building_id;
alter table wx_energy_meter_reading_1 drop column building_id;
alter table wx_energy_meter_reading_2 drop column building_id;
alter table wx_energy_meter_reading_3 drop column building_id;
alter table wx_energy_meter_reading_4 drop column building_id;
alter table wx_energy_meter_reading_5 drop column building_id;
alter table wx_energy_meter_reading_6 drop column building_id;
alter table wx_energy_meter_reading_7 drop column building_id;
alter table wx_energy_meter_reading_8 drop column building_id;
alter table wx_energy_meter_reading_9 drop column building_id;
alter table wx_energy_meter_reading_10 drop column building_id;
alter table wx_energy_meter_reading_11 drop column building_id;
alter table wx_energy_meter_reading_12 drop column building_id;
alter table wx_energy_meter_reading_13 drop column building_id;
alter table wx_energy_meter_reading_14 drop column building_id;
alter table wx_energy_meter_reading_15 drop column building_id;
alter table wx_energy_meter_reading_16 drop column building_id;
alter table wx_energy_meter_reading_17 drop column building_id;
alter table wx_energy_meter_reading_18 drop column building_id;
alter table wx_energy_meter_reading_19 drop column building_id;
alter table wx_energy_meter_reading_20 drop column building_id;
alter table wx_energy_meter_reading_21 drop column building_id;
alter table wx_energy_meter_reading_22 drop column building_id;
alter table wx_energy_meter_reading_23 drop column building_id;
alter table wx_energy_meter_reading_24 drop column building_id;
alter table wx_energy_meter_reading_25 drop column building_id;
alter table wx_energy_meter_reading_26 drop column building_id;
alter table wx_energy_meter_reading_27 drop column building_id;
alter table wx_energy_meter_reading_28 drop column building_id;
alter table wx_energy_meter_reading_29 drop column building_id;
alter table wx_energy_meter_reading_30 drop column building_id;
alter table wx_energy_meter_reading_31 drop column building_id;
alter table wx_energy_meter_reading_32 drop column building_id;
alter table wx_energy_meter_reading_33 drop column building_id;
alter table wx_energy_meter_reading_34 drop column building_id;
alter table wx_energy_meter_reading_35 drop column building_id;
alter table wx_energy_meter_reading_36 drop column building_id;
alter table wx_energy_meter_reading_37 drop column building_id;
alter table wx_energy_meter_reading_38 drop column building_id;
alter table wx_energy_meter_reading_39 drop column building_id;
alter table wx_energy_meter_reading_40 drop column building_id;
alter table wx_energy_meter_reading_41 drop column building_id;
alter table wx_energy_meter_reading_42 drop column building_id;
alter table wx_energy_meter_reading_43 drop column building_id;
alter table wx_energy_meter_reading_44 drop column building_id;
alter table wx_energy_meter_reading_45 drop column building_id;
alter table wx_energy_meter_reading_46 drop column building_id;
alter table wx_energy_meter_reading_47 drop column building_id;
alter table wx_energy_meter_reading_48 drop column building_id;
alter table wx_energy_meter_reading_49 drop column building_id;
alter table wx_energy_meter_reading_50 drop column building_id;
alter table wx_energy_meter_reading_51 drop column building_id;
alter table wx_energy_meter_reading_52 drop column building_id;
alter table wx_energy_meter_reading_53 drop column building_id;
alter table wx_energy_meter_reading_54 drop column building_id;
alter table wx_energy_meter_reading_55 drop column building_id;
alter table wx_energy_meter_reading_56 drop column building_id;
alter table wx_energy_meter_reading_57 drop column building_id;
alter table wx_energy_meter_reading_58 drop column building_id;
alter table wx_energy_meter_reading_59 drop column building_id;
alter table wx_energy_meter_reading_60 drop column building_id;
alter table wx_energy_meter_reading_61 drop column building_id;
alter table wx_energy_meter_reading_62 drop column building_id;
alter table wx_energy_meter_reading_63 drop column building_id;
alter table wx_energy_meter_reading_64 drop column building_id;
alter table wx_energy_meter_reading_65 drop column building_id;
alter table wx_energy_meter_reading_66 drop column building_id;
alter table wx_energy_meter_reading_67 drop column building_id;
alter table wx_energy_meter_reading_68 drop column building_id;
alter table wx_energy_meter_reading_69 drop column building_id;
alter table wx_energy_meter_reading_70 drop column building_id;
alter table wx_energy_meter_reading_71 drop column building_id;
alter table wx_energy_meter_reading_72 drop column building_id;
alter table wx_energy_meter_reading_73 drop column building_id;
alter table wx_energy_meter_reading_74 drop column building_id;
alter table wx_energy_meter_reading_75 drop column building_id;
alter table wx_energy_meter_reading_76 drop column building_id;
alter table wx_energy_meter_reading_77 drop column building_id;
alter table wx_energy_meter_reading_78 drop column building_id;
alter table wx_energy_meter_reading_79 drop column building_id;
alter table wx_energy_meter_reading_80 drop column building_id;
alter table wx_energy_meter_reading_81 drop column building_id;
alter table wx_energy_meter_reading_82 drop column building_id;
alter table wx_energy_meter_reading_83 drop column building_id;
alter table wx_energy_meter_reading_84 drop column building_id;
alter table wx_energy_meter_reading_85 drop column building_id;
alter table wx_energy_meter_reading_86 drop column building_id;
alter table wx_energy_meter_reading_87 drop column building_id;
alter table wx_energy_meter_reading_88 drop column building_id;
alter table wx_energy_meter_reading_89 drop column building_id;
alter table wx_energy_meter_reading_90 drop column building_id;
alter table wx_energy_meter_reading_91 drop column building_id;
alter table wx_energy_meter_reading_92 drop column building_id;
alter table wx_energy_meter_reading_93 drop column building_id;
alter table wx_energy_meter_reading_94 drop column building_id;
alter table wx_energy_meter_reading_95 drop column building_id;
alter table wx_energy_meter_reading_96 drop column building_id;
alter table wx_energy_meter_reading_97 drop column building_id;
alter table wx_energy_meter_reading_98 drop column building_id;
alter table wx_energy_meter_reading_99 drop column building_id;

alter table wx_energy_meter_reading_0 drop column floor_id;
alter table wx_energy_meter_reading_1 drop column floor_id;
alter table wx_energy_meter_reading_2 drop column floor_id;
alter table wx_energy_meter_reading_3 drop column floor_id;
alter table wx_energy_meter_reading_4 drop column floor_id;
alter table wx_energy_meter_reading_5 drop column floor_id;
alter table wx_energy_meter_reading_6 drop column floor_id;
alter table wx_energy_meter_reading_7 drop column floor_id;
alter table wx_energy_meter_reading_8 drop column floor_id;
alter table wx_energy_meter_reading_9 drop column floor_id;
alter table wx_energy_meter_reading_10 drop column floor_id;
alter table wx_energy_meter_reading_11 drop column floor_id;
alter table wx_energy_meter_reading_12 drop column floor_id;
alter table wx_energy_meter_reading_13 drop column floor_id;
alter table wx_energy_meter_reading_14 drop column floor_id;
alter table wx_energy_meter_reading_15 drop column floor_id;
alter table wx_energy_meter_reading_16 drop column floor_id;
alter table wx_energy_meter_reading_17 drop column floor_id;
alter table wx_energy_meter_reading_18 drop column floor_id;
alter table wx_energy_meter_reading_19 drop column floor_id;
alter table wx_energy_meter_reading_20 drop column floor_id;
alter table wx_energy_meter_reading_21 drop column floor_id;
alter table wx_energy_meter_reading_22 drop column floor_id;
alter table wx_energy_meter_reading_23 drop column floor_id;
alter table wx_energy_meter_reading_24 drop column floor_id;
alter table wx_energy_meter_reading_25 drop column floor_id;
alter table wx_energy_meter_reading_26 drop column floor_id;
alter table wx_energy_meter_reading_27 drop column floor_id;
alter table wx_energy_meter_reading_28 drop column floor_id;
alter table wx_energy_meter_reading_29 drop column floor_id;
alter table wx_energy_meter_reading_30 drop column floor_id;
alter table wx_energy_meter_reading_31 drop column floor_id;
alter table wx_energy_meter_reading_32 drop column floor_id;
alter table wx_energy_meter_reading_33 drop column floor_id;
alter table wx_energy_meter_reading_34 drop column floor_id;
alter table wx_energy_meter_reading_35 drop column floor_id;
alter table wx_energy_meter_reading_36 drop column floor_id;
alter table wx_energy_meter_reading_37 drop column floor_id;
alter table wx_energy_meter_reading_38 drop column floor_id;
alter table wx_energy_meter_reading_39 drop column floor_id;
alter table wx_energy_meter_reading_40 drop column floor_id;
alter table wx_energy_meter_reading_41 drop column floor_id;
alter table wx_energy_meter_reading_42 drop column floor_id;
alter table wx_energy_meter_reading_43 drop column floor_id;
alter table wx_energy_meter_reading_44 drop column floor_id;
alter table wx_energy_meter_reading_45 drop column floor_id;
alter table wx_energy_meter_reading_46 drop column floor_id;
alter table wx_energy_meter_reading_47 drop column floor_id;
alter table wx_energy_meter_reading_48 drop column floor_id;
alter table wx_energy_meter_reading_49 drop column floor_id;
alter table wx_energy_meter_reading_50 drop column floor_id;
alter table wx_energy_meter_reading_51 drop column floor_id;
alter table wx_energy_meter_reading_52 drop column floor_id;
alter table wx_energy_meter_reading_53 drop column floor_id;
alter table wx_energy_meter_reading_54 drop column floor_id;
alter table wx_energy_meter_reading_55 drop column floor_id;
alter table wx_energy_meter_reading_56 drop column floor_id;
alter table wx_energy_meter_reading_57 drop column floor_id;
alter table wx_energy_meter_reading_58 drop column floor_id;
alter table wx_energy_meter_reading_59 drop column floor_id;
alter table wx_energy_meter_reading_60 drop column floor_id;
alter table wx_energy_meter_reading_61 drop column floor_id;
alter table wx_energy_meter_reading_62 drop column floor_id;
alter table wx_energy_meter_reading_63 drop column floor_id;
alter table wx_energy_meter_reading_64 drop column floor_id;
alter table wx_energy_meter_reading_65 drop column floor_id;
alter table wx_energy_meter_reading_66 drop column floor_id;
alter table wx_energy_meter_reading_67 drop column floor_id;
alter table wx_energy_meter_reading_68 drop column floor_id;
alter table wx_energy_meter_reading_69 drop column floor_id;
alter table wx_energy_meter_reading_70 drop column floor_id;
alter table wx_energy_meter_reading_71 drop column floor_id;
alter table wx_energy_meter_reading_72 drop column floor_id;
alter table wx_energy_meter_reading_73 drop column floor_id;
alter table wx_energy_meter_reading_74 drop column floor_id;
alter table wx_energy_meter_reading_75 drop column floor_id;
alter table wx_energy_meter_reading_76 drop column floor_id;
alter table wx_energy_meter_reading_77 drop column floor_id;
alter table wx_energy_meter_reading_78 drop column floor_id;
alter table wx_energy_meter_reading_79 drop column floor_id;
alter table wx_energy_meter_reading_80 drop column floor_id;
alter table wx_energy_meter_reading_81 drop column floor_id;
alter table wx_energy_meter_reading_82 drop column floor_id;
alter table wx_energy_meter_reading_83 drop column floor_id;
alter table wx_energy_meter_reading_84 drop column floor_id;
alter table wx_energy_meter_reading_85 drop column floor_id;
alter table wx_energy_meter_reading_86 drop column floor_id;
alter table wx_energy_meter_reading_87 drop column floor_id;
alter table wx_energy_meter_reading_88 drop column floor_id;
alter table wx_energy_meter_reading_89 drop column floor_id;
alter table wx_energy_meter_reading_90 drop column floor_id;
alter table wx_energy_meter_reading_91 drop column floor_id;
alter table wx_energy_meter_reading_92 drop column floor_id;
alter table wx_energy_meter_reading_93 drop column floor_id;
alter table wx_energy_meter_reading_94 drop column floor_id;
alter table wx_energy_meter_reading_95 drop column floor_id;
alter table wx_energy_meter_reading_96 drop column floor_id;
alter table wx_energy_meter_reading_97 drop column floor_id;
alter table wx_energy_meter_reading_98 drop column floor_id;
alter table wx_energy_meter_reading_99 drop column floor_id;

ALTER TABLE `wx_energy_reading_calcute` ADD COLUMN shop_size INT(6) NOT NULL DEFAULT 0 COMMENT '店铺数量';








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

@@ -32,6 +32,9 @@ public class WxEnergyFeesCalcute extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="updateTime",name="updateTime")
private Date updateTime;
@io.swagger.annotations.ApiModelProperty(value="是否已删除",name="isDel")
private Integer isDel;
@io.swagger.annotations.ApiModelProperty(value="科目编号",name="feesId")
private Long feesId;
@@ -49,12 +52,12 @@ public class WxEnergyFeesCalcute extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "单价", name = "price")
private String price;
@io.swagger.annotations.ApiModelProperty(value = "店铺编号", name = "shopId")
private Long shopId;
@io.swagger.annotations.ApiModelProperty(value = "公摊计算公司", name = "formula")
private String formula;
@io.swagger.annotations.ApiModelProperty(value = "公摊计算公司", name = "formulaContent")
private String formulaContent;
@TableField(exist = false)
private List<Long> shopIds;
@TableField(exist = false)


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

@@ -0,0 +1,81 @@
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.EnumEnergyMeterPhysicsType;
import com.iformall.enums.EnumEnergyMeterType;
import com.iformall.enums.EnumRentShopType;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.Date;
import java.util.List;

/**
*/
@TableName(value = "wx_energy_fees_calcute_shop")
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class WxEnergyFeesCalcuteShop 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="calcuteId")
private Long calcuteId;
@io.swagger.annotations.ApiModelProperty(value="科目编号",name="feesId")
private Long feesId;
@io.swagger.annotations.ApiModelProperty(value = "表分组EnumEnergyMeterPhysicsType", name = "physicsType")
private Integer physicsType;
@TableField(exist = false)
private String physicsTypeName;
public String getPhysicsTypeName() {
if (null != physicsType) {
return EnumEnergyMeterPhysicsType.getEnum(physicsType).getMessage();
}
return null;
}
@io.swagger.annotations.ApiModelProperty(value = "单价", name = "price")
private String price;
@io.swagger.annotations.ApiModelProperty(value = "店铺编号", name = "shopId")
private Long shopId;
@io.swagger.annotations.ApiModelProperty(value = "公摊计算公司", name = "formula")
private String formula;
@io.swagger.annotations.ApiModelProperty(value = "公摊计算公司", name = "formulaContent")
private String formulaContent;
@TableField(exist = false)
private String treeType="feesShop";
@TableField(exist = false)
private Long treeParentId;
public Long getTreeParentId() {
treeParentId = shopId;
return treeParentId;
}
@TableField(exist = false)
private String treeParentType="shop";
@TableField(exist = false)
private List<Long> shopIds;
@TableField(exist = false)
private List<Long> calcuteIds;
@TableField(exist = false)
private String feesName;
}

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

@@ -80,12 +80,6 @@ public class WxEnergyMeterReading extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="备注",name="remark")
private String remark;
@io.swagger.annotations.ApiModelProperty(value="区间ID",name="timeId")
private Long timeId;
@TableField(exist = false)
private String timeName;
@io.swagger.annotations.ApiModelProperty(value="表ID",name="meterId")
private Long meterId;
@@ -103,28 +97,9 @@ public class WxEnergyMeterReading extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="表倍率",name="meterRate")
private String meterRate;
@io.swagger.annotations.ApiModelProperty(value="是否总表",name="isPublic")
private Integer isPublic;
@io.swagger.annotations.ApiModelProperty(value="表名",name="meterName")
private String meterName;
@io.swagger.annotations.ApiModelProperty(value="店铺ID",name="shopId")
private Long shopId;
@io.swagger.annotations.ApiModelProperty(value="店铺号",name="shopNumber")
private String shopNumber;
@io.swagger.annotations.ApiModelProperty(value="楼座ID",name="buildingId")
private Long buildingId;
@TableField(exist = false)
private String buildingName;
@io.swagger.annotations.ApiModelProperty(value="楼层ID",name="floorId")
private Long floorId;
@TableField(exist = false)
private String floorName;
@io.swagger.annotations.ApiModelProperty(value="单价",name="price")
private String price;
@@ -161,63 +136,63 @@ public class WxEnergyMeterReading extends TenantEntity {
public Map<String,Object> generateExcelData(Map<Long, String> buildingMap,Map<Long, String> floorMap,WxEnergyFeesTime time,WxEnergyFees fees,WxEnergyReadingCalcute calcute) {
Map<String,Object> excelObject = new HashMap<String,Object>();
excelObject.put("calcuteId", calcute.getId());
excelObject.put("id", this.getId());
excelObject.put("timeId", time.getName());
excelObject.put("startTime", DateUtils.formatDateTime(this.getStartTime()));
excelObject.put("endTime", DateUtils.formatDateTime(this.getEndTime()));
excelObject.put("feesId", fees.getName());
String buildingName = buildingMap.get(this.getBuildingId());
excelObject.put("buildingId", buildingName);
String floorName = floorMap.get(this.getFloorId());
excelObject.put("floorId", floorName);
excelObject.put("shopId", this.getShopNumber());
excelObject.put("meterId", this.getMeterName());
if (null != this.isPublic && this.isPublic.intValue() == EnumYesOrNo.YES.getCode().intValue()) {
excelObject.put("isPublic", "总表");
}else {
excelObject.put("isPublic", "用户表");
}
excelObject.put("preNumber", this.getPreNumber());
excelObject.put("preTime", DateUtils.formatDateTime(this.getPreTime()));
excelObject.put("curNumber", this.getCurNumber());
if (calcute.getIsImported().intValue() == EnumYesOrNo.YES.getCode().intValue()) {
excelObject.put("price", this.getPrice());
}else {
excelObject.put("price", fees.getPrice());
}
// excelObject.put("calcuteId", calcute.getId());
// excelObject.put("id", this.getId());
// excelObject.put("timeId", time.getName());
// excelObject.put("startTime", DateUtils.formatDateTime(this.getStartTime()));
// excelObject.put("endTime", DateUtils.formatDateTime(this.getEndTime()));
// excelObject.put("feesId", fees.getName());
// String buildingName = buildingMap.get(this.getBuildingId());
// excelObject.put("buildingId", buildingName);
// String floorName = floorMap.get(this.getFloorId());
// excelObject.put("floorId", floorName);
// excelObject.put("shopId", this.getShopNumber());
// excelObject.put("meterId", this.getMeterName());
// if (null != this.isPublic && this.isPublic.intValue() == EnumYesOrNo.YES.getCode().intValue()) {
// excelObject.put("isPublic", "总表");
// }else {
// excelObject.put("isPublic", "用户表");
// }
// excelObject.put("preNumber", this.getPreNumber());
// excelObject.put("preTime", DateUtils.formatDateTime(this.getPreTime()));
// excelObject.put("curNumber", this.getCurNumber());
// if (calcute.getIsImported().intValue() == EnumYesOrNo.YES.getCode().intValue()) {
// excelObject.put("price", this.getPrice());
// }else {
// excelObject.put("price", fees.getPrice());
// }
return excelObject;
}
private WxAllBill generateBill(WxEnergyReadingCalcute calcute,WxMerchant merchant,MallUserInfo user,String needPay,String detail,String remark) {
WxAllBill daily = new WxAllBill();
final IdWorker idWorker = IdWorker.get();
daily.setId(idWorker.nextId());
daily.updateTenantInfo(this);
daily.setMerchantId(merchant.getId());
daily.setRentShopType(merchant.getType());
daily.setCreatetime(new Date());
daily.setCreateBy(user.getId());
daily.setCreateByName(user.getName());
daily.setUpdateBy(user.getId());
daily.setUpdateByName(user.getName());
daily.setUpdatetime(new Date());
daily.setReceivePay(needPay);
daily.setNeedPay(needPay);
daily.setPay("0");
daily.setStarttime(this.startTime);
daily.setEndtime(this.endTime);
daily.setOwe(needPay);
daily.setShopId(this.shopId);
daily.setShopNumber(this.shopNumber);
daily.setBillType(EnumBillAllType.DAILY.getCode());
daily.setEnergyFeesId(calcute.getFeesId());
daily.setPriceDetail(detail);
daily.setServiceChargePay("0");
daily.setBillRemark(remark);
daily.setIsPreview(EnumYesOrNo.NO.getCode());
daily.setEnergyReadingCalcuteId(calcute.getId());
daily.setEnergyReadingId(id);
// final IdWorker idWorker = IdWorker.get();
// daily.setId(idWorker.nextId());
// daily.updateTenantInfo(this);
// daily.setMerchantId(merchant.getId());
// daily.setRentShopType(merchant.getType());
// daily.setCreatetime(new Date());
// daily.setCreateBy(user.getId());
// daily.setCreateByName(user.getName());
// daily.setUpdateBy(user.getId());
// daily.setUpdateByName(user.getName());
// daily.setUpdatetime(new Date());
// daily.setReceivePay(needPay);
// daily.setNeedPay(needPay);
// daily.setPay("0");
// daily.setStarttime(this.startTime);
// daily.setEndtime(this.endTime);
// daily.setOwe(needPay);
// daily.setShopId(this.shopId);
// daily.setShopNumber(this.shopNumber);
// daily.setBillType(EnumBillAllType.DAILY.getCode());
// daily.setEnergyFeesId(calcute.getFeesId());
// daily.setPriceDetail(detail);
// daily.setServiceChargePay("0");
// daily.setBillRemark(remark);
// daily.setIsPreview(EnumYesOrNo.NO.getCode());
// daily.setEnergyReadingCalcuteId(calcute.getId());
// daily.setEnergyReadingId(id);
return daily;
}


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

@@ -12,6 +12,7 @@ import lombok.ToString;
import java.util.Date;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

/**
@@ -91,4 +92,10 @@ public class WxEnergyReadingCalcute extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "是否删除", name = "isDel")
private Integer isDel;
@io.swagger.annotations.ApiModelProperty(value = "店铺数", name = "shopSize")
private Integer shopSize;
@TableField(exist = false)
private List<Long> shopIds;
}

+ 2
- 0
mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesCalcuteMapper.java Просмотреть файл

@@ -14,6 +14,8 @@ public interface WxEnergyFeesCalcuteMapper extends CommonMapper<WxEnergyFeesCalc
List<Long> findFeesIdList(WxEnergyFeesCalcute wxBillRent);

WxEnergyFeesCalcute selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
void setIsDel(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("isDel")Integer isDel);

}

+ 19
- 0
mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesCalcuteShopMapper.java Просмотреть файл

@@ -0,0 +1,19 @@
package com.iformall.mapper;

import com.iformall.common.CommonMapper;
import com.iformall.domain.po.WxEnergyFeesCalcuteShop;

import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
*/
public interface WxEnergyFeesCalcuteShopMapper extends CommonMapper<WxEnergyFeesCalcuteShop, Long> {

List<WxEnergyFeesCalcuteShop> findList(WxEnergyFeesCalcuteShop wxBillRent);
List<Long> findFeesIdList(WxEnergyFeesCalcuteShop wxBillRent);

WxEnergyFeesCalcuteShop selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
}

+ 11
- 4
mallinkService/src/main/java/com/iformall/service/WxEnergyService.java Просмотреть файл

@@ -14,6 +14,7 @@ import com.iformall.domain.po.MallUserInfo;
import com.iformall.domain.po.WxEnergyFees;
import com.iformall.domain.po.WxEnergyFeesSetoff;
import com.iformall.domain.po.WxEnergyFeesCalcute;
import com.iformall.domain.po.WxEnergyFeesCalcuteShop;
import com.iformall.domain.po.WxEnergyFeesTime;
import com.iformall.domain.po.WxEnergyMeter;
import com.iformall.domain.po.WxEnergyMeterChild;
@@ -38,7 +39,6 @@ public interface WxEnergyService {
List<Long> getMeterIdList(WxEnergyMeterShopFloor record);
List<Long> getChildMeterIdList(WxEnergyMeterChild record);
//费用区间
PageInfo<WxEnergyFeesTime> timeListAsPage(WxEnergyFeesTime record, Integer pageIndex, Integer pageSize);
void saveOrUpdateTime(WxEnergyFeesTime record);
@@ -48,9 +48,6 @@ public interface WxEnergyService {
//费用科目
PageInfo<WxEnergyFees> feesListAsPage(WxEnergyFees record, Integer pageIndex, Integer pageSize,boolean isSetOff);
PageInfo<WxEnergyFeesCalcute> feesCalcuteListAsPage(WxEnergyFeesCalcute record, Integer pageIndex, Integer pageSize);
List<Map> getFeesCalcuteComponentList(WxEnergyFeesCalcute record);
void createShopFees(WxEnergyFeesCalcute record);
void saveOrUpdateFees(WxEnergyFees record);
WxEnergyFees getFeesById(WxEnergyFees record);
void setFeesIsDel(WxEnergyFees record);
@@ -59,6 +56,16 @@ public interface WxEnergyService {
List<Long> getAdvanceSetoffFeesids(WxEnergyFeesSetoff setoff);
List<Long> getFeesIdList(WxEnergyFees record);
//计算标砖
PageInfo<WxEnergyFeesCalcute> feesCalcuteListAsPage(WxEnergyFeesCalcute record, Integer pageIndex, Integer pageSize);
List<Map> getFeesCalcuteComponentList(WxEnergyFeesCalcute record);
void saveOrUpdateFeesCalcute(WxEnergyFeesCalcute record);
void updateFeesCalcuteIsDel(WxEnergyFeesCalcute record);
void createFeesCalcuteAlias(WxEnergyFeesCalcuteShop record);
void deleteFeesCalcuteAlias(WxEnergyFeesCalcuteShop record);
WxEnergyFeesCalcuteShop getShopFeesCalcute(Long id,String tenantId);
void saveOrUpdateShopFeesCalcute(WxEnergyFeesCalcuteShop record);
PageInfo<WxEnergyFeesCalcuteShop> shopFeesCalcuteListAsPage(WxEnergyFeesCalcuteShop record, Integer pageIndex, Integer pageSize);
//抄表数据
PageInfo<WxEnergyMeterReading> readingListAsPage(WxEnergyMeterReading record, Integer pageIndex, Integer pageSize);


+ 79
- 0
mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java Просмотреть файл

@@ -0,0 +1,79 @@
package com.iformall.service.helper;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.joda.time.Months;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.iformall.domain.dto.NeedPayDTO;
import com.iformall.domain.po.WxEnergyFees;
import com.iformall.domain.po.WxEnergyMeter;
import com.iformall.domain.po.WxPropertyContract;
import com.iformall.domain.po.WxRentContract;
import com.iformall.domain.vo.WxBillFeesStandardsListVo;
import com.iformall.enums.EnumContractReceivePeriodUnit;
import com.iformall.enums.EnumFeesStandardsCalcuteUnit;
import com.iformall.enums.EnumPriceUnit;
import com.iformall.enums.EnumRentContractAdjustPeriod;
import com.iformall.enums.EnumRentContractAdjustRatioWay;
import com.iformall.enums.EnumRentContractRentInputWay;
import com.iformall.enums.EnumRentContractType;
import com.iformall.enums.EnumRentDayPriceCalcute;
import com.iformall.enums.EnumYesOrNo;
import com.iformall.service.impl.WxRentContractServiceImpl;
import com.iformall.utils.Constant;
import com.iformall.utils.DateUtils;

public class WxEnergyHelper {

public static List<Map> generateCalcuteComponent() {
//公共表,公摊总表,当前楼栋面积,当前楼层面积,总面积,店铺公摊系数
List<Map> retList = new ArrayList<Map>();
Map currentBuildingArea = new HashMap();
currentBuildingArea.put("name", "店铺所属楼栋总计租面积");
currentBuildingArea.put("value", "{#currentBuildingArea#}");
retList.add(currentBuildingArea);
Map currentFloorArea = new HashMap();
currentFloorArea.put("name", "店铺所属楼层总计租面积");
currentFloorArea.put("value", "{#currentFloorArea#}");
retList.add(currentFloorArea);
Map totalArea = new HashMap();
totalArea.put("name", "商场总计租面积");
totalArea.put("value", "{#totalArea#}");
retList.add(totalArea);
Map calcuteRax = new HashMap();
calcuteRax.put("name", "公摊系数");
calcuteRax.put("value", "{#calcuteRax#}");
retList.add(calcuteRax);
return retList;
}
public static Map generateMeterComponent(WxEnergyMeter meter) {
Map m = new HashMap();
m.put("name", meter.getName());
m.put("value", "{#meter_"+meter.getId()+"#}");
return m;
}

}

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

@@ -7,6 +7,7 @@ import com.github.pagehelper.PageInfo;
import com.iformall.common.ErrorCode;
import com.iformall.common.IdWorker;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.domain.dto.FloorBuildingIdDTO;
import com.iformall.domain.po.*;
import com.iformall.domain.po.base.TenantEntity;
@@ -18,6 +19,8 @@ import com.iformall.enums.EnumYesOrNo;
import com.iformall.exception.MallinkException;
import com.iformall.mapper.*;
import com.iformall.service.*;
import com.iformall.service.helper.WxEnergyHelper;

import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
@@ -60,6 +63,8 @@ public class WxEnergyServiceImpl implements WxEnergyService {
@Autowired
WxEnergyFeesMapper wxEnergyFeesMapper;
@Autowired
WxEnergyFeesCalcuteShopMapper wxEnergyFeesCalcuteShopMapper;
@Autowired
WxEnergyFeesSetoffMapper wxEnergyFeesSetoffMapper;
@Autowired
WxEnergyReadingCalcuteMapper wxEnergyReadingCalcuteMapper;
@@ -328,93 +333,6 @@ public class WxEnergyServiceImpl implements WxEnergyService {
return page;
}
@Override
public PageInfo<WxEnergyFeesCalcute> feesCalcuteListAsPage(WxEnergyFeesCalcute record, Integer pageIndex, Integer pageSize) {
PageInfo<WxEnergyFeesCalcute> page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyFeesCalcuteMapper.findList(record));
if (null != page && null != page.getList() && page.getList().size() > 0 ) {
WxEnergyFees fq = new WxEnergyFees();
fq.updateTenantInfo(record);
fq.setIsDel(EnumYesOrNo.NO.getCode());
Map<Long, WxEnergyFees> feesMap = this.getFeesMap(fq);
for (int i = 0 ; i < page.getList().size() ; i++) {
WxEnergyFeesCalcute fs = page.getList().get(i);
if (null != feesMap && null != fs.getFeesId()) {
WxEnergyFees fee = feesMap.get(fs.getFeesId());
if (null != fee) {
fs.setFeesName(fee.getName());
fs.setFeesType(fee.getType());
fs.setFeesTypeName(fee.getTypeName());
fs.setFixedPriceName(fee.getFixedPriceName());
fs.setCalcuteUnitName(fee.getCalcuteUnitName());
fs.setTimeUnitName(fee.getTimeUnitName());
}
}
}
}
return page;
}
@Override
public List<Map> getFeesCalcuteComponentList(WxEnergyFeesCalcute record) {
PageInfo<WxEnergyFeesCalcute> page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyFeesCalcuteMapper.findList(record));
if (null != page && null != page.getList() && page.getList().size() > 0 ) {
WxEnergyFees fq = new WxEnergyFees();
fq.updateTenantInfo(record);
fq.setIsDel(EnumYesOrNo.NO.getCode());
Map<Long, WxEnergyFees> feesMap = this.getFeesMap(fq);
for (int i = 0 ; i < page.getList().size() ; i++) {
WxEnergyFeesCalcute fs = page.getList().get(i);
if (null != feesMap && null != fs.getFeesId()) {
WxEnergyFees fee = feesMap.get(fs.getFeesId());
if (null != fee) {
fs.setFeesName(fee.getName());
fs.setFeesType(fee.getType());
fs.setFeesTypeName(fee.getTypeName());
fs.setFixedPriceName(fee.getFixedPriceName());
fs.setCalcuteUnitName(fee.getCalcuteUnitName());
fs.setTimeUnitName(fee.getTimeUnitName());
}
}
}
}
return page;
}
@Override
public void createShopFees(WxEnergyFeesCalcute record) {
for (int i = 0 ; i < record.getShopIds().size(); i++) {
Long shopId = record.getShopIds().get(i);
for (int j = 0 ; j < record.getFeesIds().size() ; j++) {
Long feesId = record.getFeesIds().get(j);
WxEnergyFeesCalcute fs = new WxEnergyFeesCalcute();
fs.updateTenantInfo(record);
fs.setFeesId(feesId);
fs.setShopId(shopId);
}
}
List<WxEnergyFeesCalcute> shopFeesList = wxEnergyFeesCalcuteMapper.findList(record);
if (null != shopFeesList && shopFeesList.size() > 0 ) {
List<WxEnergyFees> retList = new ArrayList<WxEnergyFees>();
WxEnergyFees fq = new WxEnergyFees();
fq.updateTenantInfo(record);
fq.setIsDel(EnumYesOrNo.NO.getCode());
Map<Long, WxEnergyFees> feesMap = this.getFeesMap(fq);
for (int i = 0 ; i < shopFeesList.size() ; i++) {
WxEnergyFeesCalcute fs = shopFeesList.get(i);
WxEnergyFees fe = new WxEnergyFees();
fe.setId(fs.getFeesId());
if (null != feesMap && null != fs.getFeesId()) {
WxEnergyFees fee = feesMap.get(fs.getFeesId());
if (null != fee) {
fe.setName(fee.getName());
fe.setType(fee.getType());
retList.add(fe);
}
}
}
}
}

@Override
public void saveOrUpdateFees(WxEnergyFees record) {
Date date = new Date();
@@ -539,6 +457,146 @@ public class WxEnergyServiceImpl implements WxEnergyService {
}
}
@Override
public PageInfo<WxEnergyFeesCalcute> feesCalcuteListAsPage(WxEnergyFeesCalcute record, Integer pageIndex, Integer pageSize) {
PageInfo<WxEnergyFeesCalcute> page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyFeesCalcuteMapper.findList(record));
if (null != page && null != page.getList() && page.getList().size() > 0 ) {
WxEnergyFees fq = new WxEnergyFees();
fq.updateTenantInfo(record);
fq.setIsDel(EnumYesOrNo.NO.getCode());
Map<Long, WxEnergyFees> feesMap = this.getFeesMap(fq);
for (int i = 0 ; i < page.getList().size() ; i++) {
WxEnergyFeesCalcute fs = page.getList().get(i);
if (null != feesMap && null != fs.getFeesId()) {
WxEnergyFees fee = feesMap.get(fs.getFeesId());
if (null != fee) {
fs.setFeesName(fee.getName());
fs.setFeesType(fee.getType());
fs.setFeesTypeName(fee.getTypeName());
fs.setFixedPriceName(fee.getFixedPriceName());
fs.setCalcuteUnitName(fee.getCalcuteUnitName());
fs.setTimeUnitName(fee.getTimeUnitName());
}
}
}
}
return page;
}
@Override
public List<Map> getFeesCalcuteComponentList(WxEnergyFeesCalcute record) {
List<Map> retList = WxEnergyHelper.generateCalcuteComponent();
//公共表,公摊总表,当前楼栋面积,当前楼层面积,总面积,店铺公摊系数
WxEnergyMeter mq = new WxEnergyMeter();
mq.updateTenantInfo(record);
List<Integer> ptylist = new ArrayList<Integer>();
ptylist.add(EnumEnergyMeterPhysicsType.PUBLIC.getCode());
ptylist.add(EnumEnergyMeterPhysicsType.SUMMARY.getCode());
mq.setPhysicsTypeList(ptylist);
PageInfo<WxEnergyMeter> page = this.meterListAsPage(mq,1,1000);
if (null != page && null != page.getList() ) {
for (int i = 0 ; i < page.getList().size() ; i ++) {
WxEnergyMeter meter = page.getList().get(i);
retList.add(WxEnergyHelper.generateMeterComponent(meter));
}
}
return retList;
}
@Override
public void saveOrUpdateFeesCalcute(WxEnergyFeesCalcute record) {
Date date = new Date();
final IdWorker idWorker = IdWorker.get();
if (record.getId() == null) {
record.setId(idWorker.nextId());
record.setCreateTime(date);
record.setUpdateTime(date);
wxEnergyFeesCalcuteMapper.insert(record);
}else {
record.setUpdateTime(date);
wxEnergyFeesCalcuteMapper.updateById(record);
}
}
@Override
public void updateFeesCalcuteIsDel(WxEnergyFeesCalcute record) {
wxEnergyFeesCalcuteMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel());
}
@Override
public void createFeesCalcuteAlias(WxEnergyFeesCalcuteShop record) {
//新增关联
final IdWorker idWorker = IdWorker.get();
Date date = new Date();
for (int i = 0 ; i < record.getShopIds().size(); i ++) {
Long shopId = record.getShopIds().get(i);
for (int j = 0 ; j < record.getCalcuteIds().size(); j ++) {
Long calcuteId = record.getCalcuteIds().get(j);
WxEnergyFeesCalcuteShop msf = new WxEnergyFeesCalcuteShop();
msf.updateTenantInfo(record);
msf.setId(idWorker.nextId());
msf.setCreateTime(date);
msf.setUpdateTime(date);
msf.setCalcuteId(calcuteId);
msf.setShopId(shopId);
WxEnergyFeesCalcute calcute = wxEnergyFeesCalcuteMapper.selectById(calcuteId, record.getTenantId());
msf.setPhysicsType(calcute.getPhysicsType());
msf.setFeesId(calcute.getFeesId());
msf.setPrice(calcute.getPrice());
msf.setFormula(calcute.getFormula());
msf.setFormulaContent(calcute.getFormulaContent());
wxEnergyFeesCalcuteShopMapper.insert(msf);
}
}
}
@Override
public void deleteFeesCalcuteAlias(WxEnergyFeesCalcuteShop record) {
wxEnergyFeesCalcuteShopMapper.deleteById(record.getId());
}
@Override
public WxEnergyFeesCalcuteShop getShopFeesCalcute(Long id,String tenantId) {
return wxEnergyFeesCalcuteShopMapper.selectById(id,tenantId);
}
@Override
public void saveOrUpdateShopFeesCalcute(WxEnergyFeesCalcuteShop record) {
Date date = new Date();
final IdWorker idWorker = IdWorker.get();
if (record.getId() == null) {
record.setId(idWorker.nextId());
record.setCreateTime(date);
record.setUpdateTime(date);
wxEnergyFeesCalcuteShopMapper.insert(record);
}else {
record.setUpdateTime(date);
wxEnergyFeesCalcuteShopMapper.updateById(record);
}
}
@Override
public PageInfo<WxEnergyFeesCalcuteShop> shopFeesCalcuteListAsPage(WxEnergyFeesCalcuteShop record, Integer pageIndex, Integer pageSize) {
PageInfo<WxEnergyFeesCalcuteShop> page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyFeesCalcuteShopMapper.findList(record));
if (null != page && null != page.getList() && page.getList().size() > 0 ) {
WxEnergyFees fq = new WxEnergyFees();
fq.updateTenantInfo(record);
fq.setIsDel(EnumYesOrNo.NO.getCode());
Map<Long, WxEnergyFees> feesMap = this.getFeesMap(fq);
for (int i = 0 ; i < page.getList().size() ; i++) {
WxEnergyFeesCalcuteShop fs = page.getList().get(i);
if (null != feesMap && null != fs.getFeesId()) {
WxEnergyFees fee = feesMap.get(fs.getFeesId());
if (null != fee) {
fs.setFeesName(fee.getName());
}
}
}
}
return page;
}
@Override
public List<Long> getAdvanceSetoffFeesids(WxEnergyFeesSetoff setoff) {
return wxEnergyFeesSetoffMapper.findFeesIdList(setoff);
@@ -560,21 +618,21 @@ public class WxEnergyServiceImpl implements WxEnergyService {
Map<Long, String> buildingMap = wxMallBuildingService.getBuildingMap(record);
Map<Long, String> floorMap = wxMallFloorService.getFloorMap(record);
for (int i = 0 ; i < page.getList().size() ; i ++) {
WxEnergyMeterReading m = page.getList().get(i);
if (null != timeMap) {
WxEnergyFeesTime time = timeMap.get(m.getTimeId());
if (null != time) {
m.setTimeName(time.getName());
}
}
if (null != buildingMap && null != m.getBuildingId()) {
String buildingName = buildingMap.get(m.getBuildingId());
m.setBuildingName(buildingName);
}
if (null != floorMap && null != m.getFloorId()) {
String floorName = floorMap.get(m.getFloorId());
m.setFloorName(floorName);
}
// WxEnergyMeterReading m = page.getList().get(i);
// if (null != timeMap) {
// WxEnergyFeesTime time = timeMap.get(m.getTimeId());
// if (null != time) {
// m.setTimeName(time.getName());
// }
// }
// if (null != buildingMap && null != m.getBuildingId()) {
// String buildingName = buildingMap.get(m.getBuildingId());
// m.setBuildingName(buildingName);
// }
// if (null != floorMap && null != m.getFloorId()) {
// String floorName = floorMap.get(m.getFloorId());
// m.setFloorName(floorName);
// }
}
}
return page;
@@ -614,51 +672,14 @@ public class WxEnergyServiceImpl implements WxEnergyService {
@Override
public void updateReading(WxEnergyMeterReading record, MallUserInfo userInfo) {
WxEnergyFeesTime tq= new WxEnergyFeesTime();
tq.updateTenantInfo(record);
tq.setId(record.getTimeId());
WxEnergyFeesTime time = this.getFeesTimeById(tq);
if (null == time ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"区间未查询到");
}
// record.setStartTime(time.getStartTime());
// record.setEndTime(time.getEndTime());
WxEnergyMeter meter = this.getMeterById(record, record.getMeterId());
if (null == meter ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"能源表未查询到");
}
if (time.getType().intValue() != meter.getType().intValue()) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"选择的表类型和区间不匹配");
}
// record.setMeterType(meter.getType());
// record.setMeterName(meter.getName());
// record.setMeterRate(meter.getRate());
// record.setIsPublic(meter.getIsPublic());
// record.setShopId(meter.getShopId());
// record.setBuildingId(meter.getBuildingId());
// record.setFloorId(meter.getFloorId());
//可以保存null值
wxEnergyMeterReadingMapper.update(record, new UpdateWrapper<WxEnergyMeterReading>().lambda()
.eq(WxEnergyMeterReading::getId, record.getId())
.eq(WxEnergyMeterReading::getTenantId, record.getTenantId())
.set(WxEnergyMeterReading::getCurNumber, record.getCurNumber())
.set(WxEnergyMeterReading::getTimeId, record.getTimeId())
.set(WxEnergyMeterReading::getMeterId, record.getMeterId())
.set(WxEnergyMeterReading::getStartTime, time.getStartTime())
.set(WxEnergyMeterReading::getEndTime, time.getEndTime())
.set(WxEnergyMeterReading::getMeterType, meter.getType())
.set(WxEnergyMeterReading::getMeterName, meter.getName())
.set(WxEnergyMeterReading::getMeterRate, meter.getRate())
.set(WxEnergyMeterReading::getIsPublic, meter.getIsPublic())
.set(WxEnergyMeterReading::getShopId, meter.getShopId())
.set(WxEnergyMeterReading::getBuildingId, meter.getBuildingId())
.set(WxEnergyMeterReading::getFloorId, meter.getFloorId())
.set(WxEnergyMeterReading::getUpdateTime, new Date())
.set(WxEnergyMeterReading::getUpdateBy, userInfo.getId())
.set(WxEnergyMeterReading::getUpdateByName, userInfo.getName())
.set(WxEnergyMeterReading::getRemark, record.getRemark()));
record.setMeterType(meter.getType());
record.setMeterName(meter.getName());
record.setMeterRate(meter.getRate());
wxEnergyMeterReadingMapper.updateById(record);
}
private WxEnergyMeterReading findPre(WxEnergyMeterReading record) {
@@ -673,24 +694,9 @@ public class WxEnergyServiceImpl implements WxEnergyService {
@Override
public void commitReading(WxEnergyMeterReading record, MallUserInfo userInfo) {
if (null != record.getMeterReadingList()) {
WxShop sq = new WxShop();
sq.updateTenantInfo(record);
Map<Long, WxShop> shopMap = wxShopService.findShopMap(sq);
List<WxEnergyMeterReading> recordList = new ArrayList<WxEnergyMeterReading>();
for (int i = 0 ; i < record.getMeterReadingList().size(); i++) {
WxEnergyMeterReading _mr = record.getMeterReadingList().get(i);
WxEnergyMeterReading r = new WxEnergyMeterReading();
r.updateTenantInfo(record);
r.setCurNumber(_mr.getCurNumber());
r.setTimeId(record.getTimeId());
r.setMeterId(_mr.getMeterId());
recordList.add(r);
}
if (recordList.size() > 0 ) {
for (int i = 0 ; i < recordList.size(); i ++) {
WxEnergyMeterReading r = recordList.get(i);
if (null != record.getMeterReadingList() && record.getMeterReadingList().size() > 0) {
for (int i = 0 ; i < record.getMeterReadingList().size(); i ++) {
WxEnergyMeterReading r = record.getMeterReadingList().get(i);
//获取上一次的数据
WxEnergyMeterReading pre = findPre(r);
if (null != pre) {
@@ -701,24 +707,13 @@ public class WxEnergyServiceImpl implements WxEnergyService {
}else {
r.setPreNumber("0");
}
//根据时间id获取时间周期
WxEnergyFeesTime time = wxEnergyFeesTimeMapper.selectById(r.getTimeId(), record.getTenantId());
r.setStartTime(time.getStartTime());
r.setEndTime(time.getEndTime());
//根据表id获取表名
WxEnergyMeter meter = wxEnergyMeterMapper.selectById(r.getMeterId(), record.getTenantId());
r.setMeterName(meter.getName());
r.setIsPublic(meter.getIsPublic());
r.setMeterType(meter.getType());
r.setMeterRate(meter.getRate());
r.setBuildingId(meter.getBuildingId());
r.setFloorId(meter.getFloorId());
r.setShopId(meter.getShopId());
WxShop shop = shopMap.get(meter.getShopId());
r.setShopNumber(shop.getShopNumber());
createReading(r, userInfo);
}
}
}
}
@@ -773,6 +768,9 @@ public class WxEnergyServiceImpl implements WxEnergyService {
public void saveOrUpdateReadingCalcute(WxEnergyReadingCalcute record, MallUserInfo userInfo) {
Date date = new Date();
if (record.getId() == null) {
if (null == record.getShopIds() || record.getShopIds().size() <= 0 ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"请选择店铺");
}
final IdWorker idWorker = IdWorker.get();
record.setId(idWorker.nextId());
record.setCreateTime(date);
@@ -781,8 +779,14 @@ public class WxEnergyServiceImpl implements WxEnergyService {
record.setUpdateTime(date);
record.setUpdateBy(userInfo.getId());
record.setUpdateByName(userInfo.getName());
record.setShopSize(record.getShopIds().size());
try {
wxEnergyReadingCalcuteMapper.insert(record);
for (int i = 0 ; i < record.getShopIds().size() ; i ++) {
Long shopId = record.getShopIds().get(i);
//111111
}
} catch (Exception e) {
logger.error("保存租赁账单失败,e:" + e.getMessage());
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage());
@@ -824,7 +828,7 @@ public class WxEnergyServiceImpl implements WxEnergyService {
List<Map<String,Object>> execlList = new ArrayList<Map<String,Object>>();
WxEnergyMeterReading rq = new WxEnergyMeterReading();
rq.updateTenantInfo(record);
rq.setTimeId(tq.getId());
//rq.setTimeId(tq.getId());
PageInfo<WxEnergyMeterReading> page = this.readingListAsPage(rq, 1, 10000);
if (null != page && null != page.getList()) {
for (int i = 0 ; i < page.getList().size(); i++) {
@@ -1008,201 +1012,201 @@ public class WxEnergyServiceImpl implements WxEnergyService {
@Override
public Integer calcuteReading(WxEnergyReadingCalcute record, MallUserInfo user) {
//根据科目,区间,计算生成账单。
WxEnergyMeterReading reading = new WxEnergyMeterReading();
reading.updateTenantInfo(record);
reading.setTimeId(record.getTimeId());
reading.setIsDel(EnumYesOrNo.NO.getCode());
reading.setIsPublic(EnumYesOrNo.NO.getCode());
WxEnergyFees fq = new WxEnergyFees();
fq.updateTenantInfo(record);
fq.setIsDel(EnumYesOrNo.NO.getCode());
fq.setId(record.getFeesId());
WxEnergyFees fees = this.getFeesById(fq);
if (null == fees) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"科目未查询到。");
}
WxEnergyFeesTime tq = new WxEnergyFeesTime();
tq.updateTenantInfo(record);
tq.setId(record.getTimeId());
WxEnergyFeesTime time = this.getFeesTimeById(tq);
if (null == time) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"区间未查询到。");
}
if (fees.getType().intValue() != time.getType().intValue()) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"科目和区间的表类型不匹配。");
}
reading.setMeterType(time.getType());
//用户表列表
List<WxEnergyMeterReading> readingList = wxEnergyMeterReadingMapper.findList(reading);
if (null != readingList && readingList.size() > 0 ) {
WxShop sq = new WxShop();
sq.updateTenantInfo(record);
Map<Long, WxMerchant> shopMerchantMap = wxMerchantService.getShopMerchantMap(sq);
Map<Long, WxShop> shopMap = wxShopService.findShopMap(sq);
WxEnergyMeter mq = new WxEnergyMeter();
mq.updateTenantInfo(record);
mq.setIsDel(EnumYesOrNo.NO.getCode());
Map<Long, WxEnergyMeter> meterMap = this.getMeterMap(mq);
if (null == meterMap) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"能源表未查询到。");
}
String publicTotalArea = "0";
BigDecimal publicTotalMoney = new BigDecimal(0);
BigDecimal b0 = new BigDecimal(0);
Map<Long,String> buildingFloorMoney = null;
Map<Long,String> buildingFloorArea = null;
if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.ALL.getCode().intValue()) {
//全部就查询所有公共表的费用
reading.setIsPublic(EnumYesOrNo.YES.getCode());
String publicMoney = wxEnergyMeterReadingMapper.findAllSumMoney(reading);
if (StringUtils.isNotBlank(publicMoney)) {
publicTotalMoney = new BigDecimal(publicMoney);
}
//公摊总面积
WxMallFloor mf = new WxMallFloor();
mf.updateTenantInfo(record);
publicTotalArea = wxMallFloorService.getAllPublicAreaSum(mf);
if (StringUtils.isBlank(publicTotalArea)) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
}
BigDecimal areaDecimal = new BigDecimal(publicTotalArea);
if (areaDecimal.compareTo(new BigDecimal(0)) <= 0 ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
}
}else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.BUILDING.getCode().intValue()) {
//如果是按楼栋计算,则要把每个楼栋的金额都要算出来
reading.setIsPublic(EnumYesOrNo.YES.getCode());
buildingFloorMoney = getFloorBuildingMoney(reading,false);
//各楼座总面积
WxMallFloor mf = new WxMallFloor();
mf.updateTenantInfo(record);
buildingFloorArea = wxMallFloorService.getBuildingPublicAreaSum(mf);
if (null == buildingFloorArea) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
}
}else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.FLOOR.getCode().intValue()) {
//查询各楼层的费用
reading.setIsPublic(EnumYesOrNo.YES.getCode());
buildingFloorMoney = getFloorBuildingMoney(reading,true);
//各楼层面积
//各楼座总面积
WxMallFloor mf = new WxMallFloor();
mf.updateTenantInfo(record);
buildingFloorArea = wxMallFloorService.getFloorPublicAreaSum(mf);
if (null == buildingFloorArea) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
}
}
List<WxAllBill> billList = new ArrayList<WxAllBill>();
for (int i = 0 ; i< readingList.size() ; i ++) {
WxEnergyMeterReading mr = readingList.get(i);
//用户表账单
WxMerchant merchant = shopMerchantMap.get(mr.getShopId());
if (null == merchant) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"铺位["+mr.getShopNumber()+"]未找到出租商户");
}
WxEnergyMeter meter = meterMap.get(mr.getMeterId());
if (null == meter) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"表["+mr.getMeterName()+"]不存在");
}
WxShop shop = shopMap.get(mr.getShopId());
WxAllBill userBill = mr.generateUserBill(record, merchant, user, meter);
userBill.setEnergyFeesId(fees.getId());
if (null != userBill) {
billList.add(userBill);
}
/*
* 总表(分摊账单)
* 如果科目是根据总面积公摊,则根据总面积计算
* 如果科目是根据楼栋公摊,则根据当前记录的楼栋面积计算
* 如果科目是根据楼层公摊,则根据当前记录的楼层面积计算
*/
WxAllBill publicBill = null;
if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.ALL.getCode().intValue()) {
if (publicTotalMoney.compareTo(b0) > 0 ) {
String needPay = publicTotalMoney.multiply(new BigDecimal(shop.getRentArea())).divide(new BigDecimal(publicTotalArea)).setScale(2,RoundingMode.HALF_UP).toPlainString();
publicBill = mr.generatePublicBill(record, merchant, user, needPay);
}
}else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.BUILDING.getCode().intValue()) {
String buildingArea = buildingFloorArea.get(mr.getBuildingId());
if (StringUtils.isBlank(buildingArea) || new BigDecimal(buildingArea).compareTo(new BigDecimal(0)) <= 0 ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置完全。");
}
BigDecimal buildingMoney = new BigDecimal(0);
if (null != buildingFloorMoney ) {
String bMoney = buildingFloorMoney.get(mr.getBuildingId());
if (StringUtils.isNotBlank(bMoney)) {
buildingMoney = new BigDecimal(bMoney);
}
}
if (buildingMoney.compareTo(b0) > 0 ) {
String needPay = buildingMoney.multiply(new BigDecimal(shop.getRentArea())).divide(new BigDecimal(buildingArea)).setScale(2,RoundingMode.HALF_UP).toPlainString();
publicBill = mr.generatePublicBill(record, merchant, user, needPay);
}
}else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.FLOOR.getCode().intValue()) {
String floorArea = buildingFloorArea.get(mr.getFloorId());
if (StringUtils.isBlank(floorArea) || new BigDecimal(floorArea).compareTo(new BigDecimal(0)) <= 0 ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置完全。");
}
BigDecimal floorMoney = new BigDecimal(0);
if (null != buildingFloorMoney ) {
String fMoney = buildingFloorMoney.get(mr.getFloorId());
if (StringUtils.isNotBlank(fMoney)) {
floorMoney = new BigDecimal(fMoney);
}
}
if (floorMoney.compareTo(b0) > 0 ) {
String needPay = floorMoney.multiply(new BigDecimal(shop.getRentArea())).divide(new BigDecimal(floorArea)).setScale(2,RoundingMode.HALF_UP).toPlainString();
publicBill = mr.generatePublicBill(record, merchant, user, needPay);
}
}
if (null != publicBill) {
publicBill.setEnergyFeesId(fees.getId());
billList.add(publicBill);
}
}
boolean allSuccess = true;
if (billList.size() > 0 ) {
try {
//先把之前的未付的账单全部删除掉,已支付的账单先不处理
WxAllBill delDaily = new WxAllBill();
delDaily.updateTenantInfo(record);
delDaily.setEnergyReadingCalcuteId(record.getId());
wxAllBillService.deleteEnergyReadingBills(delDaily);
wxAllBillService.insertBills(record.getTenantId(), billList);
}catch(Exception e) {
logger.error("insert bills error.",e);
allSuccess = false;
}
WxEnergyReadingCalcute c = new WxEnergyReadingCalcute();
c.updateTenantInfo(record);
c.setId(record.getId());
c.setIsCalcuted(EnumYesOrNo.YES.getCode());
c.setUpdateTime(new Date());
c.setUpdateBy(user.getId());
c.setUpdateByName(user.getName());
c.setRemark(record.getRemark());
if (allSuccess) {
c.setCalcuteSuccess(EnumYesOrNo.YES.getCode());
}else {
c.setCalcuteSuccess(EnumYesOrNo.NO.getCode());
}
wxEnergyReadingCalcuteMapper.updateById(c);
return billList.size();
}
}
// //根据科目,区间,计算生成账单。
// WxEnergyMeterReading reading = new WxEnergyMeterReading();
// reading.updateTenantInfo(record);
// reading.setTimeId(record.getTimeId());
// reading.setIsDel(EnumYesOrNo.NO.getCode());
// reading.setIsPublic(EnumYesOrNo.NO.getCode());
//
// WxEnergyFees fq = new WxEnergyFees();
// fq.updateTenantInfo(record);
// fq.setIsDel(EnumYesOrNo.NO.getCode());
// fq.setId(record.getFeesId());
// WxEnergyFees fees = this.getFeesById(fq);
// if (null == fees) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"科目未查询到。");
// }
//
// WxEnergyFeesTime tq = new WxEnergyFeesTime();
// tq.updateTenantInfo(record);
// tq.setId(record.getTimeId());
// WxEnergyFeesTime time = this.getFeesTimeById(tq);
// if (null == time) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"区间未查询到。");
// }
//
// if (fees.getType().intValue() != time.getType().intValue()) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"科目和区间的表类型不匹配。");
// }
//
// reading.setMeterType(time.getType());
//
// //用户表列表
// List<WxEnergyMeterReading> readingList = wxEnergyMeterReadingMapper.findList(reading);
// if (null != readingList && readingList.size() > 0 ) {
//
// WxShop sq = new WxShop();
// sq.updateTenantInfo(record);
// Map<Long, WxMerchant> shopMerchantMap = wxMerchantService.getShopMerchantMap(sq);
// Map<Long, WxShop> shopMap = wxShopService.findShopMap(sq);
//
// WxEnergyMeter mq = new WxEnergyMeter();
// mq.updateTenantInfo(record);
// mq.setIsDel(EnumYesOrNo.NO.getCode());
// Map<Long, WxEnergyMeter> meterMap = this.getMeterMap(mq);
// if (null == meterMap) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"能源表未查询到。");
// }
//
// String publicTotalArea = "0";
// BigDecimal publicTotalMoney = new BigDecimal(0);
// BigDecimal b0 = new BigDecimal(0);
// Map<Long,String> buildingFloorMoney = null;
// Map<Long,String> buildingFloorArea = null;
// if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.ALL.getCode().intValue()) {
// //全部就查询所有公共表的费用
// reading.setIsPublic(EnumYesOrNo.YES.getCode());
// String publicMoney = wxEnergyMeterReadingMapper.findAllSumMoney(reading);
// if (StringUtils.isNotBlank(publicMoney)) {
// publicTotalMoney = new BigDecimal(publicMoney);
// }
// //公摊总面积
// WxMallFloor mf = new WxMallFloor();
// mf.updateTenantInfo(record);
// publicTotalArea = wxMallFloorService.getAllPublicAreaSum(mf);
// if (StringUtils.isBlank(publicTotalArea)) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
// }
// BigDecimal areaDecimal = new BigDecimal(publicTotalArea);
// if (areaDecimal.compareTo(new BigDecimal(0)) <= 0 ) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
// }
// }else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.BUILDING.getCode().intValue()) {
// //如果是按楼栋计算,则要把每个楼栋的金额都要算出来
// reading.setIsPublic(EnumYesOrNo.YES.getCode());
// buildingFloorMoney = getFloorBuildingMoney(reading,false);
// //各楼座总面积
// WxMallFloor mf = new WxMallFloor();
// mf.updateTenantInfo(record);
// buildingFloorArea = wxMallFloorService.getBuildingPublicAreaSum(mf);
// if (null == buildingFloorArea) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
// }
// }else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.FLOOR.getCode().intValue()) {
// //查询各楼层的费用
// reading.setIsPublic(EnumYesOrNo.YES.getCode());
// buildingFloorMoney = getFloorBuildingMoney(reading,true);
// //各楼层面积
// //各楼座总面积
// WxMallFloor mf = new WxMallFloor();
// mf.updateTenantInfo(record);
// buildingFloorArea = wxMallFloorService.getFloorPublicAreaSum(mf);
// if (null == buildingFloorArea) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置。");
// }
// }
//
// List<WxAllBill> billList = new ArrayList<WxAllBill>();
// for (int i = 0 ; i< readingList.size() ; i ++) {
// WxEnergyMeterReading mr = readingList.get(i);
// //用户表账单
// WxMerchant merchant = shopMerchantMap.get(mr.getShopId());
// if (null == merchant) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"铺位["+mr.getShopNumber()+"]未找到出租商户");
// }
// WxEnergyMeter meter = meterMap.get(mr.getMeterId());
// if (null == meter) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"表["+mr.getMeterName()+"]不存在");
// }
// WxShop shop = shopMap.get(mr.getShopId());
// WxAllBill userBill = mr.generateUserBill(record, merchant, user, meter);
// userBill.setEnergyFeesId(fees.getId());
// if (null != userBill) {
// billList.add(userBill);
// }
// /*
// * 总表(分摊账单)
// * 如果科目是根据总面积公摊,则根据总面积计算
// * 如果科目是根据楼栋公摊,则根据当前记录的楼栋面积计算
// * 如果科目是根据楼层公摊,则根据当前记录的楼层面积计算
// */
// WxAllBill publicBill = null;
// if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.ALL.getCode().intValue()) {
// if (publicTotalMoney.compareTo(b0) > 0 ) {
// String needPay = publicTotalMoney.multiply(new BigDecimal(shop.getRentArea())).divide(new BigDecimal(publicTotalArea)).setScale(2,RoundingMode.HALF_UP).toPlainString();
// publicBill = mr.generatePublicBill(record, merchant, user, needPay);
// }
// }else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.BUILDING.getCode().intValue()) {
// String buildingArea = buildingFloorArea.get(mr.getBuildingId());
// if (StringUtils.isBlank(buildingArea) || new BigDecimal(buildingArea).compareTo(new BigDecimal(0)) <= 0 ) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置完全。");
// }
// BigDecimal buildingMoney = new BigDecimal(0);
// if (null != buildingFloorMoney ) {
// String bMoney = buildingFloorMoney.get(mr.getBuildingId());
// if (StringUtils.isNotBlank(bMoney)) {
// buildingMoney = new BigDecimal(bMoney);
// }
// }
// if (buildingMoney.compareTo(b0) > 0 ) {
// String needPay = buildingMoney.multiply(new BigDecimal(shop.getRentArea())).divide(new BigDecimal(buildingArea)).setScale(2,RoundingMode.HALF_UP).toPlainString();
// publicBill = mr.generatePublicBill(record, merchant, user, needPay);
// }
// }else if (fees.getPublicCalcute().intValue() == EnumEnergyPublicCalcuteRule.FLOOR.getCode().intValue()) {
// String floorArea = buildingFloorArea.get(mr.getFloorId());
// if (StringUtils.isBlank(floorArea) || new BigDecimal(floorArea).compareTo(new BigDecimal(0)) <= 0 ) {
// throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"楼层可用面积未配置完全。");
// }
//
// BigDecimal floorMoney = new BigDecimal(0);
// if (null != buildingFloorMoney ) {
// String fMoney = buildingFloorMoney.get(mr.getFloorId());
// if (StringUtils.isNotBlank(fMoney)) {
// floorMoney = new BigDecimal(fMoney);
// }
// }
// if (floorMoney.compareTo(b0) > 0 ) {
// String needPay = floorMoney.multiply(new BigDecimal(shop.getRentArea())).divide(new BigDecimal(floorArea)).setScale(2,RoundingMode.HALF_UP).toPlainString();
// publicBill = mr.generatePublicBill(record, merchant, user, needPay);
// }
// }
//
// if (null != publicBill) {
// publicBill.setEnergyFeesId(fees.getId());
// billList.add(publicBill);
// }
// }
// boolean allSuccess = true;
// if (billList.size() > 0 ) {
// try {
// //先把之前的未付的账单全部删除掉,已支付的账单先不处理
// WxAllBill delDaily = new WxAllBill();
// delDaily.updateTenantInfo(record);
// delDaily.setEnergyReadingCalcuteId(record.getId());
// wxAllBillService.deleteEnergyReadingBills(delDaily);
// wxAllBillService.insertBills(record.getTenantId(), billList);
// }catch(Exception e) {
// logger.error("insert bills error.",e);
// allSuccess = false;
// }
// WxEnergyReadingCalcute c = new WxEnergyReadingCalcute();
// c.updateTenantInfo(record);
// c.setId(record.getId());
// c.setIsCalcuted(EnumYesOrNo.YES.getCode());
// c.setUpdateTime(new Date());
// c.setUpdateBy(user.getId());
// c.setUpdateByName(user.getName());
// c.setRemark(record.getRemark());
// if (allSuccess) {
// c.setCalcuteSuccess(EnumYesOrNo.YES.getCode());
// }else {
// c.setCalcuteSuccess(EnumYesOrNo.NO.getCode());
// }
// wxEnergyReadingCalcuteMapper.updateById(c);
// return billList.size();
// }
// }
return 0;
}



mallinkService/src/main/resources/mapper/WxEnergyFeesShopMapper.xml → mallinkService/src/main/resources/mapper/WxEnergyFeesCalcuteMapper.xml Просмотреть файл

@@ -7,15 +7,16 @@
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="is_del" jdbcType="INTEGER" property="isDel"/>
<result column="fees_id" jdbcType="BIGINT" property="feesId"/>
<result column="price" jdbcType="VARCHAR" property="price"/>
<result column="physics_type" jdbcType="INTEGER" property="physicsType"/>
<result column="shop_id" jdbcType="BIGINT" property="shopId"/>
<result column="formula" jdbcType="VARCHAR" property="formula"/>
<result column="formula_content" jdbcType="VARCHAR" property="formulaContent"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`fees_id`,`price`,`physics_type`,`shop_id`,`formula`
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`fees_id`,`price`,`physics_type`,`formula`,`formula_content`
</sql>

<sql id="dynamicWhereConditions">
@@ -27,8 +28,8 @@
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != isDel ">and `is_del` = #{isDel}</if>
<if test=" null != feesId ">and `fees_id` = #{feesId}</if>
<if test=" null != shopId ">and `shop_id` = #{shopId}</if>
<if test=" null != physicsType ">and `physics_type` = #{physicsType}</if>
<if test=" null != feesIds ">
and fees_id in
@@ -64,5 +65,9 @@
<include refid="dynamicWhereConditions"/>
</select>
<update id = "setIsDel" parameterType="HashMap">
update wx_energy_fees_calcute set is_del = #{isDel} where id = #{id} and `tenant_id` = #{tenantId}
</update>
</mapper>


+ 65
- 0
mallinkService/src/main/resources/mapper/WxEnergyFeesCalcuteShopMapper.xml Просмотреть файл

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.iformall.mapper.WxEnergyFeesCalcuteShopMapper">
<resultMap id="BaseResultMap" type="com.iformall.domain.po.WxEnergyFeesCalcuteShop">
<id column="id" jdbcType="BIGINT" property="id"/>
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId"/>
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="calcute_id" jdbcType="BIGINT" property="calcuteId"/>
<result column="price" jdbcType="VARCHAR" property="price"/>
<result column="physics_type" jdbcType="INTEGER" property="physicsType"/>
<result column="formula" jdbcType="VARCHAR" property="formula"/>
<result column="formula_content" jdbcType="VARCHAR" property="formulaContent"/>
<result column="shop_id" jdbcType="BIGINT" property="shopId"/>
<result column="fees_id" jdbcType="BIGINT" property="feesId"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`calcute_id`,`price`,`physics_type`,`formula`,`formula_content`,`shop_id`,`fees_id`
</sql>

<sql id="dynamicWhereConditions">
where 1=1
<if test=" null != id ">and `id` = #{id}</if>
<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != calcuteId ">and `calcute_id` = #{calcuteId}</if>
<if test=" null != feesId ">and `fees_id` = #{feesId}</if>
<if test=" null != shopId ">and `shop_id` = #{shopId}</if>
<if test=" null != physicsType ">and `physics_type` = #{physicsType}</if>
<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
#{idItem}
</foreach>
</if>
<if test=" null != sortColumns">order by ${sortColumns}</if>
</sql>

<select id="findList" parameterType="com.iformall.domain.po.WxEnergyFeesCalcuteShop" resultMap="BaseResultMap">
select
<include refid="allColumns"/>
from wx_energy_fees_calcute_shop
<include refid="dynamicWhereConditions"/>
</select>
<select id="selectById" parameterType="HashMap" resultMap="BaseResultMap">
select
<include refid="allColumns"/>
from wx_energy_fees_calcute_shop where id = #{id} and `tenant_id` = #{tenantId}
</select>
<select id="findFeesIdList" parameterType="com.iformall.domain.po.WxEnergyFeesCalcuteShop" resultType="Long">
select distinct fees_id
from wx_energy_fees_calcute_shop
<include refid="dynamicWhereConditions"/>
</select>
</mapper>


+ 1
- 13
mallinkService/src/main/resources/mapper/WxEnergyMeterReadingMapper.xml Просмотреть файл

@@ -19,23 +19,17 @@
<result column="update_by" jdbcType="BIGINT" property="updateBy"/>
<result column="update_by_name" jdbcType="VARCHAR" property="updateByName"/>
<result column="remark" jdbcType="VARCHAR" property="remark"/>
<result column="time_id" jdbcType="BIGINT" property="timeId"/>
<result column="meter_id" jdbcType="BIGINT" property="meterId"/>
<result column="meter_type" jdbcType="INTEGER" property="meterType"/>
<result column="meter_rate" jdbcType="VARCHAR" property="meterRate"/>
<result column="is_public" jdbcType="INTEGER" property="isPublic"/>
<result column="meter_name" jdbcType="VARCHAR" property="meterName"/>
<result column="shop_id" jdbcType="BIGINT" property="shopId"/>
<result column="shop_number" jdbcType="VARCHAR" property="shopNumber"/>
<result column="building_id" jdbcType="BIGINT" property="buildingId"/>
<result column="floor_id" jdbcType="BIGINT" property="floorId"/>
<result column="price" jdbcType="VARCHAR" property="price"/>
<result column="is_del" jdbcType="INTEGER" property="isDel"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`cur_number`,`pre_number`,`pre_time`,`pre_by`,`pre_by_name`,`start_time`,`end_time`,`create_by`,`create_by_name`,
`update_by`,`update_by_name`,`remark`,`time_id`,`meter_id`,`meter_type`,`meter_rate`,`is_public`,`meter_name`,`shop_id`,`shop_number`,`building_id`,`floor_id`,`price`,`is_del`
`update_by`,`update_by_name`,`remark`,`meter_id`,`meter_type`,`meter_rate`,`meter_name`,`price`,`is_del`
</sql>

<sql id="dynamicWhereConditions">
@@ -48,15 +42,9 @@
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != createBy ">and `create_by` = #{createBy}</if>
<if test=" null != timeId ">and `time_id` = #{timeId}</if>
<if test=" null != meterId ">and `meter_id` = #{meterId}</if>
<if test=" null != meterType ">and `meter_type` = #{meterType}</if>
<if test=" null != isPublic ">and `is_public` = #{isPublic}</if>
<if test=" null != meterName and '' != meterName ">and meter_name like concat('%', #{meterName},'%')</if>
<if test=" null != shopId ">and `shop_id` = #{shopId}</if>
<if test=" null != shopNumber and '' != shopNumber ">and shop_number like concat('%', #{shopNumber},'%')</if>
<if test=" null != buildingId ">and `building_id` = #{buildingId}</if>
<if test=" null != floorId ">and `floor_id` = #{floorId}</if>
<if test=" null != isDel ">and `is_del` = #{isDel}</if>
<if test=" null != createByName and '' != createByName ">and create_by_name like concat('%', #{createByName},'%')</if>
<if test=" null != shopIds ">


+ 2
- 1
mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteMapper.xml Просмотреть файл

@@ -19,11 +19,12 @@
<result column="import_success" jdbcType="INTEGER" property="importSuccess"/>
<result column="calcute_success" jdbcType="INTEGER" property="calcuteSuccess"/>
<result column="is_del" jdbcType="INTEGER" property="isDel"/>
<result column="shop_size" jdbcType="INTEGER" property="shopSize"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`create_by`,`create_by_name`,
`update_by`,`update_by_name`,`remark`,`time_id`,`fees_id`,`is_calcuted`,`is_imported`,`import_success`,`calcute_success`,`is_del`
`update_by`,`update_by_name`,`remark`,`time_id`,`fees_id`,`is_calcuted`,`is_imported`,`import_success`,`calcute_success`,`is_del`,`shop_size`
</sql>

<sql id="dynamicWhereConditions">


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