Просмотр исходного кода

Merge branch 'release_toaliyun_real' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real_legion_activity

release_toaliyun_real
xiaohu 1 год назад
Родитель
Сommit
db86b7a941
22 измененных файлов: 353 добавлений и 71 удалений
  1. +6
    -2
      mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java
  2. +43
    -5
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java
  3. +2
    -0
      mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java
  4. +60
    -16
      mallinkBApi/src/main/java/com/iformall/controller/WxMallAdminController.java
  5. +2
    -2
      mallinkService/src/main/java/com/iformall/domain/po/WxAllBill.java
  6. +8
    -1
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTime.java
  7. +6
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTimeShop.java
  8. +4
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeter.java
  9. +5
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterReading.java
  10. +0
    -1
      mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesTimeMapper.java
  11. +4
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesTimeShopMapper.java
  12. +2
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterReadingMapper.java
  13. +4
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxEnergyReadingCalcuteResultMapper.java
  14. +6
    -2
      mallinkService/src/main/java/com/iformall/service/ExcelService.java
  15. +4
    -0
      mallinkService/src/main/java/com/iformall/service/WxEnergyService.java
  16. +18
    -9
      mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java
  17. +133
    -28
      mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java
  18. +6
    -2
      mallinkService/src/main/resources/mapper/WxEnergyFeesTimeMapper.xml
  19. +11
    -1
      mallinkService/src/main/resources/mapper/WxEnergyFeesTimeShopMapper.xml
  20. +1
    -0
      mallinkService/src/main/resources/mapper/WxEnergyMeterMapper.xml
  21. +12
    -2
      mallinkService/src/main/resources/mapper/WxEnergyMeterReadingMapper.xml
  22. +16
    -0
      mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteResultMapper.xml

+ 6
- 2
mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java Просмотреть файл

@@ -923,10 +923,12 @@ public class WxRentContractController extends WxContractBaseController {
}
//查询合同年限已输入销售额情况
@GetMapping("getContractYearsSales")
public ResultData getContractYearsSales(@ModelAttribute WxRentContract wxRentContract) {
@PostMapping("getContractYearsSales")
public ResultData getContractYearsSales(@RequestBody WxRentContract wxRentContract) {
if (null == wxRentContract) wxRentContract = new WxRentContract();
WxRentContract rentContract = wxRentContractMapper.selectById(wxRentContract.getId());
rentContract.setYearsBegin(wxRentContract.getYearsBegin());
rentContract.setYearsEnd(wxRentContract.getYearsEnd());
return new ResultData(wxRentContractService.getContractSales(rentContract));
}
@@ -936,6 +938,8 @@ public class WxRentContractController extends WxContractBaseController {
if (null == rentContract) {
return new ResultData(Result.ERROR, "编号["+wxRentContract.getId()+"]未找到租金合同");
}
rentContract.setYearsBegin(wxRentContract.getYearsBegin());
rentContract.setYearsEnd(wxRentContract.getYearsEnd());
wxRentContractService.setContractSalesConfirm(rentContract);
return new ResultData();
}


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

@@ -462,11 +462,31 @@ public class WxEnergyController extends BaseController {
}
@ApiOperation("费用区间自动时间")
@GetMapping("periodAutoTimes")
public ResultData periodAutoTimes(@ModelAttribute WxEnergyFeesTime record) {
@PostMapping("periodAutoTimes")
public ResultData periodAutoTimes(@RequestBody WxEnergyFeesTime record) {
List<Date> dateList = wxEnergyService.findLastTimeEndGroup(record);
if (null != dateList && dateList.size() > 1 ) {
return new ResultData(Result.ERROR,"所选店铺表类型最近一次结束时间不相同,不能一起增加");
}
Date start = null;
if (null == dateList || dateList.size() <= 0 ) {
//之前没有的话,就从年月第一天开始
start = DateUtils.stringToDate(record.getPeriod()+"01", DateUtils.DATE_PATTERN_NOSPACE);
}else {
Date _d = dateList.get(0);
if (null != _d) {
//开始时间取接受时间后的一天
start = DateUtils.getTimeAfterDays(1, _d);
start = DateUtils.getDayBegin(start);
}else {
start = DateUtils.stringToDate(record.getPeriod()+"01", DateUtils.DATE_PATTERN_NOSPACE);
}
}
Date end = DateUtils.getTimeAfterMonths(1, start);
end = DateUtils.getSecondsTimeAfter(-1, end);
Map retMap = new HashMap();
retMap.put("startTime", new Date());
retMap.put("endTime", new Date());
retMap.put("startTime", start);
retMap.put("endTime", end);
return new ResultData(retMap);
}
@@ -640,6 +660,13 @@ public class WxEnergyController extends BaseController {
return new ResultData();
}
@PostMapping("readingConfirm")
public ResultData readingConfirm(@RequestBody WxEnergyMeterReading record) {
record.updateTenantInfo(getTenantInfo());
wxEnergyService.setReadingConfirm(record);
return new ResultData();
}
@ApiOperation("新建科目抄表计算数据")
@PostMapping("createReadingCalcute")
public ResultData createReadingCalcute(@RequestBody WxEnergyReadingCalcute record) {
@@ -686,7 +713,11 @@ public class WxEnergyController extends BaseController {
@GetMapping("readingCalcuteShopList")
public ResultData readingCalcuteShopList(@ModelAttribute WxEnergyReadingCalcute record) {
record.updateTenantInfo(getTenantInfo());
return new ResultData(wxEnergyService.getReadingCalcuteShopNumber(record));
List<String> slist = wxEnergyService.getReadingCalcuteShopNumber(record);
if (null == slist) {
slist = new ArrayList<String>();
}
return new ResultData(slist);
}
@ApiOperation("科目抄表计算数据分页列表接口")
@@ -712,6 +743,13 @@ public class WxEnergyController extends BaseController {
return new ResultData(page);
}
@PostMapping("readingCalcuteResultDel")
public ResultData readingCalcuteResultDel(@RequestBody WxEnergyReadingCalcuteResult record) {
record.updateTenantInfo(getTenantInfo());
wxEnergyService.deleteReadingCalcuteResult(record.getId(),record);
return new ResultData();
}
@ApiOperation("科目抄表计算记录导出")
@GetMapping("readingCalcuteResultExport")
public void readingCalcuteResultExport(@ModelAttribute WxEnergyReadingCalcuteResult record, HttpServletRequest request, HttpServletResponse response) {


+ 2
- 0
mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java Просмотреть файл

@@ -193,6 +193,8 @@ public class TenantInfoImpl implements TenantInfo {
return true;
if ("com.iformall.mapper.WxRentContractFreePeriodMapper.inertPeriods".equals(ms.getId()))
return true;
if ("com.iformall.mapper.WxEnergyReadingCalcuteResultMapper.insertResults".equals(ms.getId()))
return true;
if ("com.iformall.mapper.WxRentContractRevenueJumpMapper.inertJumps".equals(ms.getId()))
return true;
if ("com.iformall.mapper.WxActivityJoinMapper.updateSendMsg".equals(ms.getId()))


+ 60
- 16
mallinkBApi/src/main/java/com/iformall/controller/WxMallAdminController.java Просмотреть файл

@@ -62,6 +62,7 @@ import com.iformall.service.WxShopService;
import com.iformall.service.WxUserDataRuleService;
import com.iformall.service.helper.WxBillAllHelper;
import com.iformall.utils.Constant;
import com.iformall.utils.DateUtils;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -75,6 +76,7 @@ import org.springframework.web.bind.annotation.*;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -384,33 +386,75 @@ public class WxMallAdminController extends BaseController {
@ApiOperation("抄表数据分页列表接口")
@GetMapping("shopMeterList")
public ResultData shopMeterList(@ModelAttribute WxEnergyMeter record) {
if (StringUtils.isBlank(record.getSearchKey())) {
return new ResultData();
}
record.setIsDel(EnumYesOrNo.NO.getCode());
setQueryDataRule(record);
WxEnergyMeterShopFloor sfq = new WxEnergyMeterShopFloor();
sfq.updateTenantInfo(record);
sfq.setType(EnumEnergyMeterShopFloorType.SHOP.getCode());
if (StringUtils.isNotBlank(record.getShopNumber())) {
if (StringUtils.isNotBlank(record.getSearchKey())) {
WxEnergyMeterShopFloor sfq = new WxEnergyMeterShopFloor();
sfq.updateTenantInfo(record);
sfq.setType(EnumEnergyMeterShopFloorType.SHOP.getCode());
WxShop sq = new WxShop();
sq.updateTenantInfo(record);
sq.setShopNumber(record.getShopNumber());
sq.setShopNumber(record.getSearchKey());
List<Long> sids = wxShopService.getShopIds(sq);
if (null == sids || sids.size() <= 0 ) {
return new ResultData();
}
sfq.setAliseIdList(sids);
}
sfq.setAliseId(record.getShopId());
List<Long> mids = wxEnergyService.getMeterIdList(sfq);
if (null == mids || mids.size() <= 0 ) {
return new ResultData();
if (null != sids && sids.size() > 0 ) {
sfq.setAliseIdList(sids);
List<Long> mids = wxEnergyService.getMeterIdList(sfq);
if (null != mids && mids.size() > 0 ) {
record.setIds(mids);
}
}
record.setOrName(record.getSearchKey());
}
record.setIds(mids);
record.setSortColumns(BaseEntity.SortField.CreateTime_DESC);
PageInfo<WxEnergyMeter> page = wxEnergyService.meterListAsPage(record, 1, 1000);
return new ResultData(page);
}
@ApiOperation("费用区间所属年月")
@GetMapping("periodList")
public ResultData periodList() {
String[] peroids = new String[3];
String date_pattern_month = "yyyyMM";
Date start1 = DateUtils.getTimeAfterMonths(-2, new Date());
start1 = DateUtils.getFirstDayForCurrMonth(start1);
peroids[0] = DateUtils.date2String(start1,date_pattern_month);
Date start2 = DateUtils.getTimeAfterMonths(1, start1);
peroids[1] = DateUtils.date2String(start2,date_pattern_month);
Date start3 = DateUtils.getTimeAfterMonths(1, start2);
peroids[2] = DateUtils.date2String(start3,date_pattern_month);
return new ResultData(peroids);
}
@ApiOperation("费用区间自动时间")
@PostMapping("periodAutoTimes")
public ResultData periodAutoTimes(@RequestBody WxEnergyFeesTime record) {
//
List<Date> dateList = wxEnergyService.findLastTimeEndGroup(record);
if (null != dateList && dateList.size() > 1 ) {
return new ResultData(Result.ERROR,"所选店铺表类型最近一次结束时间不相同,不能一起增加");
}
Date start = null;
if (null == dateList || dateList.size() <= 0 ) {
//之前没有的话,就从年月第一天开始
start = DateUtils.stringToDate(record.getPeriod()+"01", DateUtils.DATE_PATTERN_NOSPACE);
}else {
//开始时间取接受时间后的一天
start = DateUtils.getTimeAfterDays(1, dateList.get(0));
start = DateUtils.getDayBegin(start);
}
Date end = DateUtils.getTimeAfterMonths(1, start);
Map retMap = new HashMap();
retMap.put("startTime", start);
retMap.put("endTime", end);
return new ResultData(retMap);
}
@ApiOperation("抄表数据分页列表接口")
@GetMapping("preShopReadingList")
public ResultData readingList(@ModelAttribute WxEnergyMeterReading record) {


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

@@ -53,7 +53,7 @@ public class WxAllBill extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="创建用户编码",name="createBy")
public Long createBy;
@Excel(name = "制单用户", format = "yyyy-MM-dd HH:mm:ss", width = 20, orderNum = "14")
@Excel(name = "制单用户", width = 20, orderNum = "14")
@io.swagger.annotations.ApiModelProperty(value="创建用户名称",name="createBy")
public String createByName;
@@ -64,7 +64,7 @@ public class WxAllBill extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="创建用户编码",name="createBy")
public Long updateBy;
@Excel(name = "最后修改用户", format = "yyyy-MM-dd HH:mm:ss", width = 20, orderNum = "16")
@Excel(name = "最后修改用户", width = 20, orderNum = "16")
@io.swagger.annotations.ApiModelProperty(value="创建用户名称",name="createBy")
public String updateByName;


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

@@ -24,6 +24,9 @@ public class WxEnergyFeesTime extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="id",name="id")
private Long id;

@io.swagger.annotations.ApiModelProperty(value = "名称", name = "name")
private String name;
@io.swagger.annotations.ApiModelProperty(value="createTime",name="createTime")
private Date createTime;
@@ -54,6 +57,10 @@ public class WxEnergyFeesTime extends TenantEntity {
private Date endTime;
@TableField(exist = false)
List<Long> shopIds;
private List<Long> shopIds;
@TableField(exist = false)
private String shopName;
@TableField(exist = false)
private List<Long> meterIds;
}

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

@@ -47,6 +47,12 @@ public class WxEnergyFeesTimeShop extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "时间区间编号", name = "timeId")
private Long timeId;
@io.swagger.annotations.ApiModelProperty(value="startTime",name="startTime")
private Date startTime;
@io.swagger.annotations.ApiModelProperty(value="endTime",name="endTime")
private Date endTime;
@io.swagger.annotations.ApiModelProperty(value="店铺编号",name="shopId")
private Long shopId;


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

@@ -106,5 +106,9 @@ public class WxEnergyMeter extends TenantEntity {
private Integer isValid;
@TableField(exist = false)
private Integer hasShop;
@TableField(exist = false)
private String searchKey;
@TableField(exist = false)
private String orName;
}

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

@@ -100,6 +100,9 @@ public class WxEnergyMeterReading extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="表名",name="meterName")
private String meterName;
@io.swagger.annotations.ApiModelProperty(value="是否确认",name="isConfirm")
private Integer isConfirm;
@io.swagger.annotations.ApiModelProperty(value="是否删除",name="isDel")
private Integer isDel;
@@ -136,6 +139,7 @@ public class WxEnergyMeterReading extends TenantEntity {
excelTitle.put("meterType", "表类型");
excelTitle.put("preNumber", "上次抄表数");
excelTitle.put("preTime", "上次抄表时间");
excelTitle.put("preByName", "上次抄表人");
excelTitle.put("curNumber", "本次抄表数");
return excelTitle;
}
@@ -152,6 +156,7 @@ public class WxEnergyMeterReading extends TenantEntity {
excelObject.put("meterType", this.getMeterTypeName());
excelObject.put("preNumber", this.getPreNumber());
excelObject.put("preTime", DateUtils.formatDateTime(this.getPreTime()));
excelObject.put("preTime", this.getPreByName());
excelObject.put("curNumber", this.getCurNumber());
return excelObject;
}


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

@@ -14,5 +14,4 @@ public interface WxEnergyFeesTimeMapper extends CommonMapper<WxEnergyFeesTime, L
WxEnergyFeesTime selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
void setIsDel(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("isDel")Integer isDel);

}

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

@@ -4,6 +4,8 @@ import com.iformall.common.CommonMapper;
import com.iformall.domain.po.WxEnergyFeesTimeShop;

import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
@@ -21,5 +23,7 @@ public interface WxEnergyFeesTimeShopMapper extends CommonMapper<WxEnergyFeesTim
List<Long> findShopIdList(WxEnergyFeesTimeShop wxBillRent);
List<Long> findTimeIdList(WxEnergyFeesTimeShop wxBillRent);
List<Date> findLastTimeEndGroup(WxEnergyFeesTimeShop wxBillRent);
}

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

@@ -19,5 +19,7 @@ public interface WxEnergyMeterReadingMapper extends CommonMapper<WxEnergyMeterRe
void setIsDel(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("isDel")Integer isDel);
void setConfirm(WxEnergyMeterReading wxBillRent);
BigDecimal findNumberSum(WxEnergyMeterReading wxBillRent);
}

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

@@ -13,9 +13,13 @@ public interface WxEnergyReadingCalcuteResultMapper extends CommonMapper<WxEnerg
List<WxEnergyReadingCalcuteResult> findList(WxEnergyReadingCalcuteResult wxBillRent);
List<Long> findShopIdList(WxEnergyReadingCalcuteResult wxBillRent);
List<Long> findCalcuteIdList(WxEnergyReadingCalcuteResult wxBillRent);

WxEnergyReadingCalcuteResult selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
void insertResults(@Param("tenantId")String tenantId, @Param("list")List<WxEnergyReadingCalcuteResult> resultList);
void deleteByCondition(WxEnergyReadingCalcuteResult wxBillRent);
}

+ 6
- 2
mallinkService/src/main/java/com/iformall/service/ExcelService.java Просмотреть файл

@@ -34,6 +34,10 @@ public class ExcelService {
private final Logger logger = LoggerFactory.getLogger(this.getClass());

public void exportExcel(Map<String,String> titleMap,List<Map<String, Object>> list, String fileName,String sheetName, HttpServletResponse response) {
exportExcel(titleMap,list,fileName,sheetName,20,10,response);
}
public void exportExcel(Map<String,String> titleMap,List<Map<String, Object>> list, String fileName,String sheetName, int width, int height,HttpServletResponse response) {
//defaultExport(list, fileName, response);
List<ExcelExportEntity> modelList = new ArrayList<ExcelExportEntity>();
ExcelExportEntity excelentity = null;
@@ -41,8 +45,8 @@ public class ExcelService {
String titleKey = it.next();
String title = titleMap.get(titleKey);
excelentity = new ExcelExportEntity(title, titleKey);
excelentity.setWidth(20);
excelentity.setHeight(10);
excelentity.setWidth(width);
excelentity.setHeight(height);
modelList.add(excelentity);
}
exportExcel(modelList,list,null,sheetName,fileName,true,response);


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

@@ -1,6 +1,7 @@
package com.iformall.service;

import java.io.File;
import java.util.Date;
import java.util.List;
import java.util.Map;

@@ -46,6 +47,7 @@ public interface WxEnergyService {
Map<Long,WxEnergyFeesTime> getTimeMap(WxEnergyFeesTime record);
void timeDel(WxEnergyFeesTime record);
List<String> getTimeShopNumber(WxEnergyFeesTime record);
List<Date> findLastTimeEndGroup(WxEnergyFeesTime record);
//费用科目
PageInfo<WxEnergyFees> feesListAsPage(WxEnergyFees record, Integer pageIndex, Integer pageSize,boolean isSetOff);
@@ -74,6 +76,7 @@ public interface WxEnergyService {
void commitReading(WxEnergyMeterReading record,MallUserInfo userInfo);
WxEnergyMeterReading getReadingById(WxEnergyMeterReading record);
void setReadingIsDel(WxEnergyMeterReading record);
void setReadingConfirm(WxEnergyMeterReading record);
void exportReading(WxEnergyMeterReading record,HttpServletRequest request, HttpServletResponse response);
void importReading(MultipartFile mFile, MallUserInfo user, HttpServletRequest request, HttpServletResponse response);
@@ -86,6 +89,7 @@ public interface WxEnergyService {
void createBill(WxEnergyReadingCalcute record, MallUserInfo user);
void setReadingCalcuteIsDel(WxEnergyReadingCalcute record);
List<String> getReadingCalcuteShopNumber(WxEnergyReadingCalcute record);
void deleteReadingCalcuteResult(Long id,TenantEntity tenantEntity);
}

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

@@ -91,15 +91,18 @@ public class WxEnergyHelper {
List<String> floorAreaList = PlaceholderExtractorWithPrefixAndSuffix.extractPlaceholders(formula, "#floorArea_", "#");
List<String> meterList = PlaceholderExtractorWithPrefixAndSuffix.extractPlaceholders(formula, "#meter_", "#");
formula = formula.replaceAll("\\{.*?\\}", "");
formula = formula.replaceAll("\\{", "").replaceAll("\\}", "");
if (null != buildingAreaMap && null != buildingAreaList && buildingAreaList.size() > 0 ) {
for (int i = 0 ; i < buildingAreaList.size(); i ++) {
String buildArea = buildingAreaList.get(i);
String[] bs = buildArea.split("_");
if (null != bs && bs.length > 1) {
BigDecimal buildingArea = buildingAreaMap.get(Long.parseLong(bs[1]));
String b1 = bs[1].replace("#}", "");
BigDecimal buildingArea = buildingAreaMap.get(Long.parseLong(b1));
if (null != buildingArea) {
formula = formula.replaceAll("#buildingArea_"+Long.parseLong(bs[1])+"#", buildingArea.toPlainString());
formula = formula.replaceAll("#buildingArea_"+Long.parseLong(b1)+"#", buildingArea.toPlainString());
}else {
formula = formula.replaceAll("#buildingArea_"+Long.parseLong(b1)+"#", "0");
}
}
}
@@ -110,9 +113,12 @@ public class WxEnergyHelper {
String floorArea = floorAreaList.get(i);
String[] bs = floorArea.split("_");
if (null != bs && bs.length > 1) {
BigDecimal floorarea = floorAreaMap.get(Long.parseLong(bs[1]));
String b1 = bs[1].replace("#}", "");
BigDecimal floorarea = floorAreaMap.get(Long.parseLong(b1));
if (null != floorarea) {
formula = formula.replaceAll("#floorArea_"+Long.parseLong(bs[1])+"#", floorarea.toPlainString());
formula = formula.replaceAll("#floorArea_"+Long.parseLong(b1)+"#", floorarea.toPlainString());
}else {
formula = formula.replaceAll("#floorArea_"+Long.parseLong(b1)+"#", "0");
}
}
@@ -124,9 +130,12 @@ public class WxEnergyHelper {
String meter = meterList.get(i);
String[] bs = meter.split("_");
if (null != bs && bs.length > 1) {
BigDecimal mu = meterNumberMap.get(Long.parseLong(bs[1]));
String b1 = bs[1].replace("#}", "");
BigDecimal mu = meterNumberMap.get(Long.parseLong(b1));
if (null != mu ) {
formula = formula.replaceAll("#meter_"+Long.parseLong(bs[1])+"#", mu.toPlainString());
formula = formula.replaceAll("#meter_"+Long.parseLong(b1)+"#", mu.toPlainString());
}else {
formula = formula.replaceAll("#meter_"+Long.parseLong(b1)+"#", "0");
}
}
}
@@ -145,11 +154,11 @@ public class WxEnergyHelper {
return ;
}
List<String> buildingAreaList = PlaceholderExtractorWithPrefixAndSuffix.extractPlaceholders(formula, "#", "#");
formula = formula.replaceAll("\\{.*?\\}", "");
formula = formula.replaceAll("\\{", "").replaceAll("\\}", "");
if (null != buildingAreaList && buildingAreaList.size() > 0 ) {
for (int i = 0 ; i < buildingAreaList.size(); i ++) {
String floorArea = buildingAreaList.get(i);
String relpaceFloorArea = floorArea.replaceAll("\\{.*?\\}", "");
String relpaceFloorArea = floorArea.replaceAll("\\{", "").replaceAll("\\}", "");
formula = formula.replaceAll(relpaceFloorArea, "1");
}
}


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

@@ -291,6 +291,26 @@ public class WxEnergyServiceImpl implements WxEnergyService {
@Override
public PageInfo<WxEnergyFeesTime> timeListAsPage(WxEnergyFeesTime record, Integer pageIndex, Integer pageSize) {
if (StringUtils.isNotBlank(record.getShopName())) {
WxShop sq = new WxShop();
sq.updateTenantInfo(record);
sq.setShopNumber(record.getShopName());
List<Long> shopIds = wxShopService.getShopIds(sq);
if (null == shopIds || shopIds.size() <= 0 ) {
record.setId(-1L);
}else {
WxEnergyFeesTimeShop tsq = new WxEnergyFeesTimeShop();
tsq.updateTenantInfo(record);
tsq.setShopIds(shopIds);
List<Long> tids = wxEnergyFeesTimeShopMapper.findTimeIdList(tsq);
if (null == tids || tids.size() <= 0 ) {
record.setId(-1L);
}else {
record.setIds(tids);
}
}
}
return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyFeesTimeMapper.findList(record));
}
@@ -302,9 +322,9 @@ public class WxEnergyServiceImpl implements WxEnergyService {
}
Date date = new Date();
if (record.getId() == null) {
//查询是不是已经有了
WxEnergyFeesTimeShop tsq = new WxEnergyFeesTimeShop();
tsq.updateTenantInfo(record);
tsq.setPeriod(record.getPeriod());
tsq.setShopIds(record.getShopIds());
tsq.setType(record.getType());
@@ -312,7 +332,13 @@ public class WxEnergyServiceImpl implements WxEnergyService {
if (null != scount && scount > 0 ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"所选店铺已存在该年月的"+record.getTypeName()+"区间");
}
//检查最近一次的是不是属于同一周期
tsq.setPeriod(null);
List<Date> list = wxEnergyFeesTimeShopMapper.findLastTimeEndGroup(tsq);
if (null != list && list.size() > 1) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"所选店铺最近一次的"+record.getTypeName()+"区间截止时间不一致");
}
final IdWorker idWorker = IdWorker.get();
record.setId(idWorker.nextId());
record.setCreateTime(date);
@@ -328,6 +354,10 @@ public class WxEnergyServiceImpl implements WxEnergyService {
ts.setShopId(shopId);
ts.setPeriod(record.getPeriod());
ts.setType(record.getType());
ts.setCreateTime(new Date());
ts.setUpdateTime(new Date());
ts.setStartTime(record.getStartTime());
ts.setEndTime(record.getEndTime());
wxEnergyFeesTimeShopMapper.insert(ts);
}
@@ -335,10 +365,7 @@ public class WxEnergyServiceImpl implements WxEnergyService {
logger.error("保存租赁账单失败,e:" + e.getMessage());
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage());
}
} else {
record.setUpdateTime(date);
wxEnergyFeesTimeMapper.updateById(record);
}
}
}
@Override
@@ -383,6 +410,16 @@ public class WxEnergyServiceImpl implements WxEnergyService {
return wxShopService.getShopNumberList(sq);
}
@Override
public List<Date> findLastTimeEndGroup(WxEnergyFeesTime record) {
WxEnergyFeesTimeShop tsq = new WxEnergyFeesTimeShop();
tsq.updateTenantInfo(record);
tsq.setShopIds(record.getShopIds());
tsq.setType(record.getType());
List<Date> list = wxEnergyFeesTimeShopMapper.findLastTimeEndGroup(tsq);
return list;
}
@Override
public PageInfo<WxEnergyFees> feesListAsPage(WxEnergyFees record, Integer pageIndex, Integer pageSize,boolean isSetOff) {
@@ -807,10 +844,19 @@ public class WxEnergyServiceImpl implements WxEnergyService {
r.setPreTime(pre.getCreateTime());
r.setPreBy(pre.getCreateBy());
r.setPreByName(pre.getCreateByName());
if (null != pre.getEndTime()) {
//有可能撤铺的时候中间抄了一次,这一次抄表又是统一时间抄表,所以比较结束时间
if (pre.getEndTime().after(record.getEndTime())) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"当前时间小于最近一次抄表周期时间,请重新选择时间");
}
r.setStartTime(DateUtils.getDayBegin(DateUtils.getTimeAfterDays(1, pre.getEndTime())));
}
}else {
r.setPreNumber("0");
}
r.setStartTime(record.getStartTime());
if (null == r.getStartTime()) {
r.setStartTime(record.getStartTime());
}
r.setEndTime(record.getEndTime());
//根据表id获取表名
WxEnergyMeter meter = wxEnergyMeterMapper.selectById(r.getMeterId(), record.getTenantId());
@@ -874,6 +920,11 @@ public class WxEnergyServiceImpl implements WxEnergyService {
wxEnergyMeterReadingMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel());
}
@Override
public void setReadingConfirm(WxEnergyMeterReading record) {
wxEnergyMeterReadingMapper.setConfirm(record);
}
@Override
public void exportReading(WxEnergyMeterReading record, HttpServletRequest request, HttpServletResponse response) {
List<Map<String,Object>> execlList = new ArrayList<Map<String,Object>>();
@@ -887,7 +938,7 @@ public class WxEnergyServiceImpl implements WxEnergyService {
execlList.add(r.generateExcelData());
}
}
excelService.exportExcel(WxEnergyMeterReading.generateExcelTitle(),execlList, "抄表数据.xlsx","sheet1", response);
excelService.exportExcel(WxEnergyMeterReading.generateExcelTitle(),execlList, "抄表数据.xlsx","sheet1",10,5, response);
}
@Override
@@ -958,6 +1009,17 @@ public class WxEnergyServiceImpl implements WxEnergyService {
@Override
public List<WxEnergyReadingCalcute> findCalcuteList(WxEnergyReadingCalcute record) {
if (null != record.getShopIds() && record.getShopIds().size() > 0 ) {
WxEnergyReadingCalcuteResult crq = new WxEnergyReadingCalcuteResult();
crq.updateTenantInfo(record);
crq.setShopIds(record.getShopIds());
List<Long> calIds = wxEnergyReadingCalcuteResultMapper.findCalcuteIdList(crq);
if (null == calIds || calIds.size() <= 0 ) {
record.setId(-1L);
}else {
record.setIds(calIds);
}
}
return wxEnergyReadingCalcuteMapper.findList(record);
}

@@ -1027,13 +1089,6 @@ public class WxEnergyServiceImpl implements WxEnergyService {
}
}
}
//用户表
WxEnergyMeter mq = new WxEnergyMeter();
mq.updateTenantInfo(record);
mq.setType(fees.getType());
mq.setPhysicsType(EnumEnergyMeterPhysicsType.USER.getCode());
mq.setHasFee(EnumYesOrNo.YES.getCode());
List<Long> meterList = wxEnergyMeterMapper.findIdList(mq);
//查询公摊表
Map<Long,List<Long>> summaryMeterMap = null;
if (fees.getIsPublic() == EnumYesOrNo.YES.getCode()) {
@@ -1041,10 +1096,10 @@ public class WxEnergyServiceImpl implements WxEnergyService {
sumq.updateTenantInfo(record);
sumq.setType(fees.getType());
sumq.setPhysicsType(EnumEnergyMeterPhysicsType.SUMMARY.getCode());
List<WxEnergyMeter> sumeterList = wxEnergyMeterMapper.findList(mq);
List<WxEnergyMeter> sumeterList = wxEnergyMeterMapper.findList(sumq);
if (null != sumeterList && sumeterList.size() > 0 ) {
summaryMeterMap = new HashMap<Long,List<Long>>();
for (int i = 0 ; i < meterList.size(); i ++) {
for (int i = 0 ; i < sumeterList.size(); i ++) {
WxEnergyMeter summaryMeter = sumeterList.get(i);
//查询总表下的子表
WxEnergyMeterChild mcq = new WxEnergyMeterChild();
@@ -1062,13 +1117,32 @@ public class WxEnergyServiceImpl implements WxEnergyService {
for (int i = 0 ; i < shopIds.size(); i ++) {
Long shopId= shopIds.get(i);
WxShop shop = shopMap.get(shopId);
//查询用户表
WxEnergyMeterShopFloor sfq = new WxEnergyMeterShopFloor();
sfq.updateTenantInfo(record);
sfq.setType(EnumEnergyMeterShopFloorType.SHOP.getCode());
sfq.setAliseId(shopId);
List<Long> meterList = wxEnergyMeterShopFloorMapper.findMeterIdList(sfq);
//如果店铺已经存在了计算,则不允许重复
WxEnergyReadingCalcuteResult crq = new WxEnergyReadingCalcuteResult();
crq.updateTenantInfo(record);
crq.setShopId(shopId);
crq.setPeriod(record.getPeriod());
crq.setFeesId(record.getFeesId());
List<WxEnergyReadingCalcuteResult> list = wxEnergyReadingCalcuteResultMapper.findList(crq);
if (null != list && list.size() > 0 ) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"店铺"+shop.getShopNumber()+"科目["+fees.getName()+"]该年月已存在计算记录,不能重复计算");
}
//根据店铺,所属年月去查询时间区间.根据店铺,时间区间去查对应的抄表数据,根据表来计算总和
WxEnergyFeesTimeShop sq = new WxEnergyFeesTimeShop();
sq.updateTenantInfo(record);
sq.setShopId(shopId);
List<Long> timeIds = wxEnergyFeesTimeShopMapper.findTimeIdList(sq);
if (null == timeIds || timeIds.size() <= 0 ) {
return;
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"店铺"+shop.getShopNumber()+"未设置抄表区间");
}
//一个年月,一个店铺应该只有一个周期
WxEnergyFeesTime tq = new WxEnergyFeesTime();
@@ -1077,17 +1151,18 @@ public class WxEnergyServiceImpl implements WxEnergyService {
tq.setPeriod(record.getPeriod());
List<WxEnergyFeesTime> timelist = wxEnergyFeesTimeMapper.findList(tq);
if (null == timelist || timelist.size() <= 0 ) {
return;
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"店铺"+shop.getShopNumber()+"未设置抄表区间");
}
WxEnergyFeesTime time = timelist.get(0);
//根据店铺查询绑定的科目
WxEnergyFeesShop csq = new WxEnergyFeesShop();
csq.updateTenantInfo(record);
csq.setFeesId(fees.getId());
csq.setShopId(shopId);
List<WxEnergyFeesShop> shopFeesList = wxEnergyFeesShopMapper.findList(csq);
if (null == shopFeesList || shopFeesList.size() <= 0 ) {
return;
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"店铺"+shop.getShopNumber()+"未设置该科目费用标准");
}
//循环店铺科目,
@@ -1106,7 +1181,7 @@ public class WxEnergyServiceImpl implements WxEnergyService {
StringBuffer sb = new StringBuffer();
cs.setMoney(wxEnergyHelper.calcuteMoney(sb,totalArea,shop,time, fees, shopfee,meterList,summaryMeterMap,buildingAreaMap,floorAreaMap));
cs.setPeriod(record.getPeriod());
cs.setMoney(sb.toString());
cs.setMoneyDeail(sb.toString());
resultList.add(cs);
}
}
@@ -1115,9 +1190,24 @@ public class WxEnergyServiceImpl implements WxEnergyService {
}
}
private void initReadingCalcuteResultQueryParam(WxEnergyReadingCalcuteResult record) {
if (StringUtils.isNotBlank(record.getShopName())) {
WxShop sq = new WxShop();
sq.updateTenantInfo(record);
sq.setShopNumber(record.getShopName());
List<Long> shopIds = wxShopService.getShopIds(sq);
if (null == shopIds || shopIds.size() <= 0 ) {
record.setId(-1L);
}else {
record.setShopIds(shopIds);
}
}
}
@Override
public PageInfo<WxEnergyReadingCalcuteResult> readingCalcuteResultListAsPage(WxEnergyReadingCalcuteResult record, Integer pageIndex,
Integer pageSize) {
initReadingCalcuteResultQueryParam(record);
PageInfo<WxEnergyReadingCalcuteResult> page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyReadingCalcuteResultMapper.findList(record));
if (null != page && null != page.getList()) {
WxEnergyFees fq = new WxEnergyFees();
@@ -1166,7 +1256,11 @@ public class WxEnergyServiceImpl implements WxEnergyService {
@Override
public void exportReadingCalcuteResult(WxEnergyReadingCalcuteResult record, HttpServletRequest request, HttpServletResponse response) {
PageInfo<WxEnergyReadingCalcuteResult> page = readingCalcuteResultListAsPage(record, 1, 10000);
excelService.exportExcel(page.getList(), null, "能源计算结果", WxEnergyReadingCalcuteResult.class, "能源计算结果.xlsx", response, false);
List<WxEnergyReadingCalcuteResult> list = new ArrayList<WxEnergyReadingCalcuteResult>();
if (null != page && null != page.getList() && page.getList().size() > 0 ) {
list = page.getList();
}
excelService.exportExcel(list, null, "能源计算结果", WxEnergyReadingCalcuteResult.class, "能源计算结果.xlsx", response, false);
}
private File handlerImportFile(MultipartFile mFile,String fileNamePre) {
@@ -1262,7 +1356,6 @@ public class WxEnergyServiceImpl implements WxEnergyService {
public void createBill(WxEnergyReadingCalcute record, MallUserInfo user) {
WxEnergyReadingCalcute calcute = wxEnergyReadingCalcuteMapper.selectById(record.getId(), record.getTenantId());
WxEnergyReadingCalcuteResult crq = new WxEnergyReadingCalcuteResult();
crq.updateTenantInfo(record);
crq.setCalcuteId(calcute.getId());
@@ -1318,11 +1411,18 @@ public class WxEnergyServiceImpl implements WxEnergyService {

@Override
public void setReadingCalcuteIsDel(WxEnergyReadingCalcute record) {
// WxEnergyReadingCalcute calcute = this.getReadingCalcuteById(record);
// if (null == calcute) {
// throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "记录未查询到");
// }
// wxEnergyReadingCalcuteMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel());
WxEnergyReadingCalcute calcute = wxEnergyReadingCalcuteMapper.selectById(record.getId(), record.getTenantId());
if (null == calcute) {
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "记录未查询到");
}
if (calcute.getIsCalcuted() == EnumYesOrNo.YES.getCode()) {
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "已生成账单,不允许删除");
}
WxEnergyReadingCalcuteResult crq = new WxEnergyReadingCalcuteResult();
crq.updateTenantInfo(crq);
crq.setCalcuteId(record.getId());
wxEnergyReadingCalcuteResultMapper.deleteByCondition(crq);
wxEnergyReadingCalcuteMapper.deleteById(record.getId());
}

@Override
@@ -1343,4 +1443,9 @@ public class WxEnergyServiceImpl implements WxEnergyService {
return null;
}

@Override
public void deleteReadingCalcuteResult(Long id, TenantEntity tenantEntity) {
wxEnergyReadingCalcuteResultMapper.deleteById(id);
}

}

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

@@ -7,6 +7,7 @@
<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="name" jdbcType="VARCHAR" property="name"/>
<result column="type" jdbcType="INTEGER" property="type"/>
<result column="start_time" jdbcType="TIMESTAMP" property="startTime"/>
<result column="end_time" jdbcType="TIMESTAMP" property="endTime"/>
@@ -15,7 +16,7 @@
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`type`,`start_time`,`end_time`,`period`,`shop_size`
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`name`,`type`,`start_time`,`end_time`,`period`,`shop_size`
</sql>

<sql id="dynamicWhereConditions">
@@ -30,6 +31,9 @@
<if test=" null != period and '' != period">
and `period` = #{period}
</if>
<if test=" null != name and '' != name">
and `name` like concat('%', #{name},'%')
</if>
<if test=" null != type ">and `type` = #{type}</if>
<if test=" null != ids ">
and id in
@@ -56,6 +60,6 @@
<update id = "setIsDel" parameterType="HashMap">
update wx_energy_fees_time set is_del = #{isDel} where id = #{id} and `tenant_id` = #{tenantId}
</update>
</mapper>


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

@@ -9,12 +9,14 @@
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="period" jdbcType="VARCHAR" property="period"/>
<result column="time_id" jdbcType="BIGINT" property="timeId"/>
<result column="start_time" jdbcType="TIMESTAMP" property="startTime"/>
<result column="end_time" jdbcType="TIMESTAMP" property="endTime"/>
<result column="shop_id" jdbcType="BIGINT" property="shopId"/>
<result column="type" jdbcType="INTEGER" property="type"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`period`,`time_id`,`shop_id`,`type`
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`period`,`time_id`,`start_time`,`end_time`,`shop_id`,`type`
</sql>

<sql id="dynamicWhereConditions">
@@ -82,5 +84,13 @@
<include refid="dynamicWhereConditions"/>
</select>
<select id="findLastTimeEndGroup" parameterType="com.iformall.domain.po.WxEnergyFeesTimeShop" resultType="Date">
SELECT end_time FROM (
SELECT shop_id,MAX(end_time) AS end_time FROM wx_energy_fees_time_shop
<include refid="dynamicWhereConditions"/>
GROUP BY shop_id
) AS temp GROUP BY temp.end_time
</select>
</mapper>


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

@@ -34,6 +34,7 @@
<if test=" null != physicsType ">and `physics_type` = #{physicsType}</if>
<if test=" null != shopType ">and `shop_type` = #{shopType}</if>
<if test=" null != name and '' != name ">and name like concat('%', #{name},'%')</if>
<if test=" null != orName and '' != orName ">or name like concat('%', #{orName},'%')</if>
<if test=" null != isRealMeter ">and `physics_type` in (1,2) </if>
<if test=" null != hasFee ">and `has_fee` = #{hasFee}</if>
<if test=" null != physicsTypeList ">


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

@@ -24,6 +24,7 @@
<result column="meter_rate" jdbcType="VARCHAR" property="meterRate"/>
<result column="meter_name" jdbcType="VARCHAR" property="meterName"/>
<result column="is_del" jdbcType="INTEGER" property="isDel"/>
<result column="is_confirm" jdbcType="INTEGER" property="isConfirm"/>
<result column="building_name" jdbcType="VARCHAR" property="buildingName"/>
<result column="floor_name" jdbcType="VARCHAR" property="floorName"/>
<result column="shop_name" jdbcType="VARCHAR" property="shopName"/>
@@ -31,7 +32,7 @@

<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`,`meter_id`,`meter_type`,`meter_rate`,`meter_name`,`is_del`,`building_name`,`floor_name`,`shop_name`
`update_by`,`update_by_name`,`remark`,`meter_id`,`meter_type`,`meter_rate`,`meter_name`,`is_del`,`is_confirm`,`building_name`,`floor_name`,`shop_name`
</sql>

<sql id="dynamicWhereConditions">
@@ -48,6 +49,7 @@
<if test=" null != meterType ">and `meter_type` = #{meterType}</if>
<if test=" null != meterName and '' != meterName ">and meter_name like concat('%', #{meterName},'%')</if>
<if test=" null != isDel ">and `is_del` = #{isDel}</if>
<if test=" null != isConfirm ">and `is_confirm` = #{isConfirm}</if>
<if test=" null != createByName and '' != createByName ">and create_by_name like concat('%', #{createByName},'%')</if>
<if test=" null != meterIds ">
and meter_id in
@@ -88,10 +90,18 @@
</update>
<select id="findNumberSum" parameterType="com.iformall.domain.po.WxEnergyMeterReading" resultType="decimal">
select sum(CAST(ifnull(cur_number,'0') AS DECIMAL(20,4)) - CAST(ifnull(pre_number,'0') AS DECIMAL(20,4))) total_number
select sum((CAST(ifnull(cur_number,'0') AS DECIMAL(20,4)) - CAST(ifnull(pre_number,'0') AS DECIMAL(20,4)))/CAST(ifnull(meter_rate,'1') AS DECIMAL(20,4))) total_number
from wx_energy_meter_reading
<include refid="dynamicWhereConditions"/>
</select>
<update id = "setConfirm" parameterType="HashMap">
update wx_energy_meter_reading set is_confirm = 1
where id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
#{idItem}
</foreach>
</update>

</mapper>


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

@@ -37,6 +37,12 @@
<if test=" null != shopId ">and `shop_id` = #{shopId}</if>
<if test=" null != feesId ">and `fees_id` = #{feesId}</if>
<if test=" null != feesShopId ">and `fees_shop_id` = #{feesShopId}</if>
<if test=" null != shopIds ">
and shop_id in
<foreach collection="shopIds" index="index" item="sidItem" open="(" separator="," close=")">
#{sidItem}
</foreach>
</if>
<if test=" null != feesIds ">
and fees_id in
<foreach collection="feesIds" index="index" item="feidItem" open="(" separator="," close=")">
@@ -71,6 +77,12 @@
<include refid="dynamicWhereConditions"/>
</select>
<select id="findCalcuteIdList" parameterType="com.iformall.domain.po.WxEnergyReadingCalcuteResult" resultType="Long">
select distinct calcute_id
from wx_energy_reading_calcute_result
<include refid="dynamicWhereConditions"/>
</select>
<insert id="insertResults" parameterType="HashMap">
INSERT INTO wx_energy_reading_calcute_result (
<include refid="allColumns"/>
@@ -84,5 +96,9 @@
</foreach>
</insert>
<delete id="deleteByCondition" parameterType="com.iformall.domain.po.WxEnergyReadingCalcuteResult">
delete from wx_energy_reading_calcute_result where `calcute_id` = #{calcuteId}
</delete>
</mapper>


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