diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMallBuildingController.java b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMallBuildingController.java index e28aab0df..4bbe434e5 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMallBuildingController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMallBuildingController.java @@ -45,6 +45,19 @@ public class WxMallBuildingController extends BaseController { } return wxMallBuildingService.getBuildingFloorList(wxMallBuilding,this.getUser()); } + + @ApiOperation("获取楼层楼座数据") + @GetMapping("getbuildinglist") + public ResultData getbuildinglist(WxMallBuilding wxMallBuilding) { + wxMallBuilding.updateTenantInfo(getTenantInfo()); + WxUserDataRule dataRule = this.getCurrentDataFloors(); + if (null != dataRule) { + wxMallBuilding.setFloorForRule(dataRule.getFloorIds()); + wxMallBuilding.setBusinessForRule(dataRule.getBussinessIds()); + wxMallBuilding.setShopTypeForRule(dataRule.getShopTypes()); + } + return wxMallBuildingService.getBuildingList(wxMallBuilding,this.getUser()); + } @ApiOperation("保存楼层楼座地图") @PostMapping("saveFloorImg") diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java index 49ec7506f..4a6c65de4 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java @@ -232,6 +232,7 @@ public class WxCouponController extends BaseController { CouponCacheUtils.removeOnlyCouponCache(redisTemplate, wxCoupon.getId()); CouponCacheUtils.removeOldDetailCache(redisTemplate); CouponCacheUtils.removeOldDetailHtmlCache(redisTemplate); + CouponCacheUtils.removeOldCouponOrderHtmlCache(redisTemplate); return new ResultData(); } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java index 49eef52c1..e787c13b8 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxEnergyController.java @@ -6,20 +6,30 @@ import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; import com.iformall.domain.po.MallUserInfo; import com.iformall.domain.po.WxEnergyFees; +import com.iformall.domain.po.WxEnergyFeesShop; import com.iformall.domain.po.WxEnergyFeesTime; import com.iformall.domain.po.WxEnergyMeter; +import com.iformall.domain.po.WxEnergyMeterChild; import com.iformall.domain.po.WxEnergyMeterReading; +import com.iformall.domain.po.WxEnergyMeterShopFloor; import com.iformall.domain.po.WxEnergyReadingCalcute; +import com.iformall.domain.po.WxMallFloor; +import com.iformall.domain.po.WxShop; import com.iformall.domain.po.WxUserDataRule; import com.iformall.domain.po.base.BaseEntity; import com.iformall.enums.EnumBillAllType; +import com.iformall.enums.EnumEnergyMeterPhysicsType; +import com.iformall.enums.EnumEnergyMeterShopFloorType; import com.iformall.enums.EnumEnergyMeterType; -import com.iformall.enums.EnumEnergyPublicCalcuteRule; import com.iformall.enums.EnumFeesStandardsCalcuteUnit; import com.iformall.enums.EnumFeesStandardsTimeUnit; import com.iformall.enums.EnumYesOrNo; import com.iformall.exception.MallinkException; import com.iformall.service.WxEnergyService; +import com.iformall.service.WxMallFloorService; +import com.iformall.service.WxShopService; +import com.iformall.utils.DateUtils; + import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -39,6 +49,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Calendar; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -52,6 +63,12 @@ public class WxEnergyController extends BaseController { @Autowired private WxEnergyService wxEnergyService; + @Autowired + private WxMallFloorService wxMallFloorService; + + @Autowired + private WxShopService wxShopService; + @ApiOperation("表类型") @GetMapping("meterTypeList") public ResultData meterTypeList() { @@ -62,16 +79,30 @@ public class WxEnergyController extends BaseController { return new ResultData(retMap); } - @ApiOperation("公摊计费规则") - @GetMapping("publicCalcuteRules") - public ResultData publicCalcuteRules() { + @ApiOperation("表分组") + @GetMapping("meterPhysicsTypeTypeList") + public ResultData meterPhysicsTypeTypeList() { Map retMap = new HashMap(); - for (EnumEnergyPublicCalcuteRule mem : EnumEnergyPublicCalcuteRule.values()) { - retMap.put(mem.getCode(), mem.getMessage()); + for (EnumEnergyMeterPhysicsType mem : EnumEnergyMeterPhysicsType.values()) { + if (mem != EnumEnergyMeterPhysicsType.SUMMARY) { + retMap.put(mem.getCode(), mem.getMessage()); + } + } + return new ResultData(retMap); + } + + @ApiOperation("计算费用的表分组") + @GetMapping("meterFeesPhysicsTypeTypeList") + public ResultData meterFeesPhysicsTypeTypeList() { + Map retMap = new HashMap(); + for (EnumEnergyMeterPhysicsType mem : EnumEnergyMeterPhysicsType.values()) { + if (mem != EnumEnergyMeterPhysicsType.PUBLIC) { + retMap.put(mem.getCode(), mem.getMessage()); + } } return new ResultData(retMap); } - + @ApiOperation("能源表列表") @GetMapping("meterList") @ApiImplicitParams({ @@ -79,19 +110,179 @@ public class WxEnergyController extends BaseController { @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), }) public ResultData meterList(@ModelAttribute WxEnergyMeter record, Integer pageNum, Integer pageSize) { - WxUserDataRule dataRule = this.getCurrentDataFloors(); - if (null != dataRule) { - record.setFloorForRule(dataRule.getFloorIds()); - record.setBusinessForRule(dataRule.getBussinessIds()); - record.setShopTypeForRule(dataRule.getShopTypes()); - } record.updateTenantInfo(getTenantInfo()); record.setSortColumns(BaseEntity.SortField.CreateTime_DESC); PageInfo page = wxEnergyService.meterListAsPage(record, pageNum, pageSize); return new ResultData(page); } - @ApiOperation("能源表新增修改") + @ApiOperation("根据楼座查询楼层和能源表") + @GetMapping("floorAndMeterList") + public ResultData floorAndMeterList(@ModelAttribute WxEnergyMeter record) { + record.updateTenantInfo(getTenantInfo()); + List retList = new ArrayList(); + //根据楼座查询楼层 + WxMallFloor mfq = new WxMallFloor(); + mfq.updateTenantInfo(record); + mfq.setBuildingId(record.getBuilding()); + PageInfo floorPage = wxMallFloorService.listAsPage(mfq, 1,1000); + if (null != floorPage && null != floorPage.getList() && floorPage.getList().size() > 0 ) { + retList.addAll(floorPage.getList()); + } + //根据楼错查询关联的公共表 + WxEnergyMeterShopFloor msf = new WxEnergyMeterShopFloor(); + msf.updateTenantInfo(record); + msf.setType(EnumEnergyMeterShopFloorType.BUILDING.getCode()); + msf.setAliseId(record.getBuilding()); + List meterids = wxEnergyService.getMeterIdList(msf); + if (null != meterids && meterids.size() > 0 ) { + WxEnergyMeter mq = new WxEnergyMeter(); + mq.updateTenantInfo(record); + mq.setIds(meterids); + List ptylist = new ArrayList(); + if (null != record.getIsRealMeter() && EnumYesOrNo.YES.getCode() == record.getIsRealMeter()) { + ptylist.add(EnumEnergyMeterPhysicsType.PUBLIC.getCode()); + ptylist.add(EnumEnergyMeterPhysicsType.USER.getCode()); + }else { + ptylist.add(EnumEnergyMeterPhysicsType.SUMMARY.getCode()); + } + mq.setPhysicsTypeList(ptylist); + PageInfo page = wxEnergyService.meterListAsPage(mq,1,1000); + if (null != page && null != page.getList()) { + for (int i = 0 ; i < page.getList().size() ; i ++) { + WxEnergyMeter m = page.getList().get(i); + WxMallFloor f = new WxMallFloor(); + f.setId(m.getId()); + f.setBuildingId(record.getBuilding()); + f.setFloorName(m.getName()); + f.setTreeType(m.getTreeType()); + retList.add(f); + } + } + } + return new ResultData(retList); + } + + @ApiOperation("根据楼层查询能源表和店铺") + @GetMapping("floorMeterList") + public ResultData shopAndMeterList(@ModelAttribute WxEnergyMeter record) { + record.updateTenantInfo(getTenantInfo()); + List retList = new ArrayList(); + if (null != record.getHasShop() && record.getHasShop() == EnumYesOrNo.YES.getCode()) { + //根据楼座查询楼层 + WxShop mfq = new WxShop(); + mfq.updateTenantInfo(record); + mfq.setFloor(record.getFloor()); + PageInfo floorPage = wxShopService.listAsPage(mfq, 1,1000); + if (null != floorPage && null != floorPage.getList() && floorPage.getList().size() > 0 ) { + retList.addAll(floorPage.getList()); + } + } + //根据楼错查询关联的公共表 + WxEnergyMeterShopFloor msf = new WxEnergyMeterShopFloor(); + msf.updateTenantInfo(record); + msf.setType(EnumEnergyMeterShopFloorType.FLOOR.getCode()); + msf.setAliseId(record.getFloor()); + List meterids = wxEnergyService.getMeterIdList(msf); + if (null != meterids && meterids.size() > 0 ) { + WxEnergyMeter mq = new WxEnergyMeter(); + mq.updateTenantInfo(record); + mq.setIds(meterids); + List ptylist = new ArrayList(); + if (null != record.getIsRealMeter() && EnumYesOrNo.YES.getCode() == record.getIsRealMeter()) { + ptylist.add(EnumEnergyMeterPhysicsType.PUBLIC.getCode()); + ptylist.add(EnumEnergyMeterPhysicsType.USER.getCode()); + }else { + ptylist.add(EnumEnergyMeterPhysicsType.SUMMARY.getCode()); + } + mq.setPhysicsTypeList(ptylist); + PageInfo page = wxEnergyService.meterListAsPage(mq,1,1000); + if (null == page || null == page.getList() ) { + return new ResultData(); + } + List list = page.getList(); + for (int i = 0 ; i < list.size() ; i ++) { + WxEnergyMeter meter = list.get(i); + WxShop s = new WxShop(); + s.setId(meter.getId()); + s.setShopNumber(meter.getName()); + s.setTreeParentId(record.getFloor()); + s.setTreeParentType("floor"); + retList.add(s); + } + return new ResultData(retList); + } + return new ResultData(retList); + } + + @ApiOperation("根据店铺查询能源表") + @GetMapping("shopMeterList") + public ResultData shopMeterList(@ModelAttribute WxEnergyMeter record) { + record.updateTenantInfo(getTenantInfo()); + List retList = new ArrayList(); + //根据楼错查询关联的公共表 + WxEnergyMeterShopFloor msf = new WxEnergyMeterShopFloor(); + msf.updateTenantInfo(record); + msf.setType(EnumEnergyMeterShopFloorType.SHOP.getCode()); + msf.setAliseId(record.getShopId()); + List meterids = wxEnergyService.getMeterIdList(msf); + if (null != meterids && meterids.size() > 0 ) { + WxEnergyMeter mq = new WxEnergyMeter(); + mq.updateTenantInfo(record); + mq.setIds(meterids); + List ptylist = new ArrayList(); + if (null != record.getIsRealMeter() && EnumYesOrNo.YES.getCode() == record.getIsRealMeter()) { + ptylist.add(EnumEnergyMeterPhysicsType.PUBLIC.getCode()); + ptylist.add(EnumEnergyMeterPhysicsType.USER.getCode()); + }else { + ptylist.add(EnumEnergyMeterPhysicsType.SUMMARY.getCode()); + } + mq.setPhysicsTypeList(ptylist); + PageInfo page = wxEnergyService.meterListAsPage(mq,1,1000); + if (null == page || null == page.getList() ) { + return new ResultData(); + } + List list = page.getList(); + for (int i = 0 ; i < list.size() ; i ++) { + WxEnergyMeter meter = list.get(i); + WxShop s = new WxShop(); + s.setId(meter.getId()); + s.setShopNumber(meter.getName()); + s.setTreeType(meter.getTreeType()); + s.setTreeParentId(record.getShopId()); + s.setTreeParentType("shop"); + retList.add(s); + } + return new ResultData(retList); + } + return new ResultData(retList); + } + + @ApiOperation("根据子表") + @GetMapping("childMeterList") + public ResultData childMeterList(@ModelAttribute WxEnergyMeterChild record) { + record.updateTenantInfo(getTenantInfo()); + List meterids = wxEnergyService.getChildMeterIdList(record); + if (null != meterids && meterids.size() > 0 ) { + WxEnergyMeter mq = new WxEnergyMeter(); + mq.updateTenantInfo(record); + mq.setIds(meterids); + PageInfo page = wxEnergyService.meterListAsPage(mq,1,1000); + if (null == page || null == page.getList() ) { + return new ResultData(); + } + List list = page.getList(); + for (int i = 0 ; i < list.size() ; i ++) { + WxEnergyMeter meter = list.get(i); + meter.setTreeParentId(record.getParentMeterId()); + meter.setTreeParentType("meter"); + } + return new ResultData(list); + } + return new ResultData(); + } + + @ApiOperation("用户能源表新增修改") @PostMapping("saveMeter") public ResultData saveMeter(@RequestBody WxEnergyMeter record) { record.updateTenantInfo(getTenantInfo()); @@ -99,49 +290,128 @@ public class WxEnergyController extends BaseController { return new ResultData(); } - @PostMapping("meterUpdateIsDel") - public ResultData meterUpdateIsDel(@RequestBody WxEnergyMeter record) { + @ApiOperation("用户能源表新增修改") + @PostMapping("aliasMeter") + public ResultData aliasMeter(@RequestBody WxEnergyMeterShopFloor record) { record.updateTenantInfo(getTenantInfo()); - wxEnergyService.updateMeterIsDel(record); + wxEnergyService.createMeterAlias(record); return new ResultData(); } - @ApiOperation("能源表关联店铺") - @PostMapping("setMeterShop") - public ResultData setMeterShop(@RequestBody WxEnergyMeter record) { + @ApiOperation("用户能源表新增修改") + @PostMapping("aliasChildMeter") + public ResultData aliasChildMeter(@RequestBody WxEnergyMeterChild record) { record.updateTenantInfo(getTenantInfo()); - if (null == record.getId() || null == record.getShopId()) { - return new ResultData(Result.ERROR,"参数错误"); - } - WxEnergyMeter meter = wxEnergyService.getMeterById(record, record.getId()); - if (null == meter) { - return new ResultData(Result.ERROR,"能源表未查询到"); + WxEnergyMeter meter = wxEnergyService.getMeterById(record, record.getParentMeterId()); + if (null == meter || meter.getPhysicsType() != EnumEnergyMeterPhysicsType.SUMMARY.getCode()) { + return new ResultData(Result.ERROR,"该节点不能绑定子表"); } - if (meter.getIsPublic().intValue() == EnumYesOrNo.YES.getCode().intValue()) { - return new ResultData(Result.ERROR,"总表不能关联店铺"); - } - wxEnergyService.setMeterShop(record); + wxEnergyService.createChildMeterAlias(record); return new ResultData(); } - @ApiOperation("能源表关联楼层") - @PostMapping("setMeterFloor") - public ResultData setMeterFloor(@RequestBody WxEnergyMeter record) { + @ApiOperation("用户能源表新增修改") + @PostMapping("deleteAliasMeter") + public ResultData deleteAliasMeter(@RequestBody WxEnergyMeterShopFloor record) { record.updateTenantInfo(getTenantInfo()); - if (null == record.getId() || null == record.getFloorId()) { - return new ResultData(Result.ERROR,"参数错误"); + if (null == record.getId()) { + return new ResultData(Result.ERROR,"请选择一个"); } - WxEnergyMeter meter = wxEnergyService.getMeterById(record, record.getId()); - if (null == meter) { - return new ResultData(Result.ERROR,"能源表未查询到"); + wxEnergyService.deleteMeterAlias(record); + return new ResultData(); + } + + @ApiOperation("用户能源表新增修改") + @PostMapping("deleteChildMeter") + public ResultData deleteChildMeter(@RequestBody WxEnergyMeterChild record) { + record.updateTenantInfo(getTenantInfo()); + if (null == record.getId()) { + return new ResultData(Result.ERROR,"请选择一个关联"); } - if (meter.getIsPublic().intValue() == EnumYesOrNo.NO.getCode().intValue()) { - return new ResultData(Result.ERROR,"用户表不能关联楼层"); + wxEnergyService.deleteChildMeterAlias(record); + return new ResultData(); + } + + @PostMapping("meterUpdateIsDel") + public ResultData meterUpdateIsDel(@RequestBody WxEnergyMeter record) { + record.updateTenantInfo(getTenantInfo()); + wxEnergyService.updateMeterIsDel(record); + return new ResultData(); + } + + @ApiOperation("计算标准列表") + @GetMapping("feesShopList") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), + }) + public ResultData shopFeesList(@ModelAttribute WxEnergyFeesShop record, Integer pageNum, Integer pageSize) { + 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 feesIdList = new ArrayList(); + for (int i = 0 ; i < fss.length ; i ++) { + feesIdList.add(Long.parseLong(fss[i])); + } + record.setFeesIds(feesIdList); + } } - wxEnergyService.setMeterFloor(record); + PageInfo list = wxEnergyService.feesShopListAsPage(record,pageNum,pageSize); + return new ResultData(list); + } + + @ApiOperation("计算公式组件") + @GetMapping("feesShopComponentList") + public ResultData shopFeesList(@ModelAttribute WxEnergyFeesShop record) { + record.updateTenantInfo(getTenantInfo()); + return new ResultData(wxEnergyService.getFeesCalcuteComponentList(record)); + } + + @ApiOperation("计费标准新增修改") + @PostMapping("createFeesShop") + public ResultData createFeesShop(@RequestBody WxEnergyFeesShop record) { + record.updateTenantInfo(getTenantInfo()); + wxEnergyService.createFeesShop(record); return new ResultData(); } + @ApiOperation("删除计费标准关联") + @PostMapping("deleteFeesShop") + public ResultData deleteFeesShop(@RequestBody WxEnergyFeesShop record) { + wxEnergyService.deleteFeesShop(record); + return new ResultData(); + } + + @ApiOperation("店铺计费标准详情") + @GetMapping("feesShopDetail") + public ResultData feesShopDetail(@ModelAttribute WxEnergyFeesShop record) { + record.updateTenantInfo(getTenantInfo()); + return new ResultData(wxEnergyService.getShopFeesCalcute(record.getId(),record.getTenantId())); + } + + @ApiOperation("店铺修改计费标准") + @PostMapping("updateFeesShop") + public ResultData updateFeesShop(@RequestBody WxEnergyFeesShop record) { + wxEnergyService.saveOrUpdateShopFeesCalcute(record); + return new ResultData(); + } + + @ApiOperation("费用区间所属年月") + @GetMapping("periodList") + public ResultData periodList() { + Calendar calendar = Calendar.getInstance(); + int year = calendar.get(Calendar.YEAR); + String[] months = new String[] {"01","02","03","04","05","06","07","08","09","10","11","12"}; + String[] peroids = new String[months.length+1]; + peroids[0] = (year-1)+"12"; + for (int i = 0 ; i < months.length; i++) { + peroids[i+1]=year+months[i]; + } + return new ResultData(peroids); + } + @ApiOperation("费用区间列表") @GetMapping("timeList") @ApiImplicitParams({ @@ -155,6 +425,12 @@ public class WxEnergyController extends BaseController { return new ResultData(page); } + @ApiOperation("费用区间自动时间") + @GetMapping("periodAutoTimes") + public ResultData periodAutoTimes(@ModelAttribute WxEnergyFeesTime record) { + return new ResultData(); + } + @ApiOperation("费用区间列表") @PostMapping("saveTime") public ResultData saveTime(@RequestBody WxEnergyFeesTime record) { @@ -163,13 +439,20 @@ public class WxEnergyController extends BaseController { return new ResultData(); } - @PostMapping("timeUpdateIsDel") + @PostMapping("timeDel") public ResultData timeUpdateIsDel(@RequestBody WxEnergyFeesTime record) { record.updateTenantInfo(getTenantInfo()); - wxEnergyService.setTimeIsDel(record); + wxEnergyService.timeDel(record); return new ResultData(); } + @ApiOperation("区间店铺列表") + @GetMapping("timeShopList") + public ResultData timeShopList(@ModelAttribute WxEnergyFeesTime record) { + record.updateTenantInfo(getTenantInfo()); + return new ResultData(wxEnergyService.getTimeShopNumber(record)); + } + @ApiOperation("能源科目列表") @GetMapping("feesList") @ApiImplicitParams({ @@ -192,9 +475,6 @@ public class WxEnergyController extends BaseController { if (null == record.getType()) { return new ResultData(Result.ERROR,"请选择能源表类型"); } - if (null == record.getPublicCalcute()) { - return new ResultData(Result.ERROR,"请选择分摊计费规则"); - } if (null == record.getFixedPrice()) { return new ResultData(Result.ERROR,"请选择是否是一次性费用"); } @@ -262,10 +542,50 @@ public class WxEnergyController extends BaseController { record.setShopIds(sids); } } + boolean hasPrice = false; + if (null != record.getTimeId()) { + WxEnergyFeesTime ftq = new WxEnergyFeesTime(); + ftq.updateTenantInfo(record); + ftq.setId(record.getTimeId()); + WxEnergyFeesTime time = wxEnergyService.getFeesTimeById(ftq); + record.setMeterType(time.getType()); + record.setStartTime(time.getStartTime()); + record.setEndTime(time.getEndTime()); + } PageInfo page = wxEnergyService.readingListAsPage(record, pageNum, pageSize); return new ResultData(page); } + @ApiOperation("科目抄表记录导出") + @GetMapping("readingExport") + public void readingExport(@ModelAttribute WxEnergyMeterReading record, HttpServletRequest request, HttpServletResponse response) { + record.updateTenantInfo(getTenantInfo()); + if (null != record.getTimeId()) { + WxEnergyFeesTime ftq = new WxEnergyFeesTime(); + ftq.updateTenantInfo(record); + ftq.setId(record.getTimeId()); + WxEnergyFeesTime time = wxEnergyService.getFeesTimeById(ftq); + record.setMeterType(time.getType()); + record.setStartTime(time.getStartTime()); + record.setEndTime(time.getEndTime()); + } + wxEnergyService.exportReading(record, request, response); + } + + @ApiOperation("科目抄表计算记录导入") + @PostMapping(value = "/importReading", consumes = "multipart/*") + public void importReading(@RequestParam("file") MultipartFile mFile,HttpServletRequest request, HttpServletResponse response) { + try { + //得到当前用户ID + MallUserInfo user = getUser(); + //request.getParameter("timeId"); + wxEnergyService.importReadingCalcute(mFile, user, request, response); + } catch (Exception e) { + logger.error("importReading error.",e); + throw new MallinkException(Result.ERROR,e.getMessage()); + } + } + @ApiOperation("修改抄表数据") @PostMapping("saveReading") public ResultData saveReading(@RequestBody WxEnergyMeterReading record) { @@ -298,10 +618,27 @@ public class WxEnergyController extends BaseController { public ResultData readingCalcuteList(@ModelAttribute WxEnergyReadingCalcute record, Integer pageNum, Integer pageSize) { record.updateTenantInfo(getTenantInfo()); record.setSortColumns(BaseEntity.SortField.CreateTime_DESC); + if(StringUtils.isNotBlank(record.getFeesIdsStr())) { + String[] shids = record.getFeesIdsStr().split(","); + if (null != shids ) { + List sids = new ArrayList(); + for (int i = 0 ; i < shids.length ; i ++) { + sids.add(Long.parseLong(shids[i])); + } + record.setFeesIds(sids); + } + } PageInfo page = wxEnergyService.readingCalcuteListAsPage(record, pageNum, pageSize); return new ResultData(page); } + @ApiOperation("科目抄表计算店铺列表") + @GetMapping("readingCalcuteShopList") + public ResultData readingCalcuteShopList(@ModelAttribute WxEnergyReadingCalcute record) { + record.updateTenantInfo(getTenantInfo()); + return new ResultData(wxEnergyService.getReadingCalcuteShopNumber(record)); + } + @ApiOperation("科目抄表计算记录导出") @GetMapping("readingCalcuteExport") public void readingCalcuteExport(@ModelAttribute WxEnergyReadingCalcute record, HttpServletRequest request, HttpServletResponse response) { @@ -314,8 +651,8 @@ public class WxEnergyController extends BaseController { } @ApiOperation("科目抄表计算记录导入-修改单价") - @PostMapping(value = "/importReading", consumes = "multipart/*") - public void importReading(@RequestParam("file") MultipartFile mFile,HttpServletRequest request, HttpServletResponse response) { + @PostMapping(value = "/importReadingCalcute", consumes = "multipart/*") + public void importReadingCalcute(@RequestParam("file") MultipartFile mFile,HttpServletRequest request, HttpServletResponse response) { try { //得到当前用户ID MallUserInfo user = getUser(); @@ -334,9 +671,6 @@ public class WxEnergyController extends BaseController { if (null == wrc) { return new ResultData(Result.ERROR,"id错误"); } - if (null == wrc.getImportSuccess() || wrc.getImportSuccess().intValue() != EnumYesOrNo.YES.getCode().intValue()) { - return new ResultData(Result.ERROR,"导入未完全成功,不能计算!"); - } Integer number = wxEnergyService.calcuteReading(wrc, getUser()); return new ResultData(number); } diff --git a/mallinkAdmin/src/main/resources/db/migration/V202408000000005.sql b/mallinkAdmin/src/main/resources/db/migration/V202408000000005.sql new file mode 100644 index 000000000..f338ac6ec --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202408000000005.sql @@ -0,0 +1,1346 @@ +alter table wx_energy_meter drop COLUMN floor_id; +alter table wx_energy_meter drop COLUMN shop_id; +alter table wx_energy_meter drop COLUMN building_id; +alter table wx_energy_meter drop COLUMN is_public; +ALTER TABLE wx_energy_meter ADD COLUMN physics_type INT(1) NOT NULL COMMENT '表物理类型'; + +CREATE TABLE `wx_energy_meter_shop_floor` ( + `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, + `type` int(3) NOT NULL COMMENT '表类型', + `meter_id` bigint(20) NOT NULL COMMENT '表编号', + `alise_id` bigint(20) NOT NULL COMMENT '关联的id', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`), + UNIQUE KEY `T_T_M_A` (`tenant_id`,`type`,`meter_id`,`alise_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + +CREATE TABLE `wx_energy_meter_child` ( + `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, + `parent_meter_id` bigint(20) NOT NULL COMMENT '表编号', + `child_meter_id` bigint(20) NOT NULL COMMENT '关联的id', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`), + UNIQUE KEY `P_C` (`parent_meter_id`,`child_meter_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + + +CREATE TABLE `wx_energy_fees_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, + `price` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '价格', + `is_public` int(1) NOT NULL DEFAULT '0' 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`) +) 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_fees_time DROP COLUMN NAME; +ALTER TABLE wx_energy_fees_time ADD COLUMN PERIOD VARCHAR(10) NOT NULL COMMENT '所属年月'; +ALTER TABLE wx_energy_fees_time ADD COLUMN shop_size INT(6) NOT NULL DEFAULT 0 COMMENT '店铺数量'; +ALTER TABLE wx_energy_fees_time DROP COLUMN is_del; + +CREATE TABLE `wx_energy_fees_time_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, + `time_id` bigint(20) NOT NULL COMMENT '时间区间id', + `shop_id` bigint(20) NOT NULL COMMENT '店铺编号', + `period` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '所属年月', + `type` int(1) NOT NULL COMMENT '表类型', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`), + KEY `T_P_S` (`tenant_id`,`shop_id`,`period`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表'; + +CREATE TABLE `wx_energy_reading_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', + `shop_id` bigint(20) NOT NULL COMMENT '店铺ID', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`), + UNIQUE KEY `T_T_F` (`tenant_id`,`calcute_id`,`shop_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表抄表'; + +drop TABLE wx_energy_reading_calcute; +CREATE TABLE `wx_energy_reading_calcute` ( + `id` bigint(20) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID', + `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, + `create_by` bigint(20) DEFAULT NULL, + `create_by_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `update_by` bigint(20) DEFAULT NULL, + `update_by_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `remark` varchar(300) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `period` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '所属年月', + `fees_id` bigint(20) NOT NULL COMMENT '科目ID', + `is_calcuted` int(1) NOT NULL DEFAULT '0' COMMENT '是否已计算过', + `calcute_success` int(1) DEFAULT '0' COMMENT '计算是否成功', + `is_del` int(1) NOT NULL DEFAULT '0' COMMENT '是否已删除', + `shop_size` int(6) NOT NULL DEFAULT '0' COMMENT '店铺数量', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`), + UNIQUE KEY `T_P_F` (`tenant_id`,`period`,`fees_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表抄表'; + + +alter table wx_energy_meter_reading_0 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_1 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_2 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_3 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_4 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_5 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_6 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_7 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_8 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_9 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_10 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_11 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_12 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_13 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_14 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_15 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_16 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_17 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_18 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_19 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_20 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_21 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_22 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_23 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_24 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_25 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_26 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_27 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_28 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_29 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_30 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_31 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_32 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_33 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_34 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_35 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_36 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_37 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_38 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_39 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_40 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_41 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_42 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_43 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_44 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_45 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_46 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_47 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_48 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_49 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_50 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_51 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_52 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_53 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_54 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_55 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_56 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_57 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_58 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_59 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_60 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_61 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_62 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_63 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_64 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_65 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_66 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_67 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_68 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_69 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_70 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_71 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_72 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_73 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_74 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_75 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_76 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_77 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_78 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_79 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_80 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_81 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_82 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_83 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_84 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_85 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_86 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_87 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_88 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_89 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_90 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_91 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_92 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_93 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_94 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_95 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_96 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_97 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_98 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; +alter table wx_energy_meter_reading_99 add column building_name varchar(100) comment '所属楼栋,有可能会是多个'; + +alter table wx_energy_meter_reading_0 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_1 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_2 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_3 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_4 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_5 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_6 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_7 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_8 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_9 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_10 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_11 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_12 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_13 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_14 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_15 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_16 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_17 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_18 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_19 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_20 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_21 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_22 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_23 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_24 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_25 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_26 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_27 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_28 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_29 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_30 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_31 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_32 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_33 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_34 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_35 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_36 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_37 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_38 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_39 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_40 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_41 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_42 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_43 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_44 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_45 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_46 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_47 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_48 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_49 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_50 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_51 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_52 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_53 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_54 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_55 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_56 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_57 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_58 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_59 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_60 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_61 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_62 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_63 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_64 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_65 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_66 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_67 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_68 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_69 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_70 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_71 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_72 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_73 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_74 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_75 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_76 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_77 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_78 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_79 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_80 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_81 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_82 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_83 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_84 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_85 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_86 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_87 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_88 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_89 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_90 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_91 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_92 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_93 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_94 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_95 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_96 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_97 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_98 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; +alter table wx_energy_meter_reading_99 add column floor_name varchar(100) comment '所属楼层,有可能会是多个'; + +alter table wx_energy_meter_reading_0 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_1 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_2 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_3 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_4 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_5 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_6 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_7 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_8 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_9 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_10 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_11 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_12 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_13 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_14 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_15 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_16 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_17 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_18 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_19 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_20 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_21 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_22 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_23 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_24 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_25 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_26 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_27 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_28 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_29 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_30 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_31 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_32 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_33 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_34 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_35 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_36 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_37 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_38 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_39 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_40 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_41 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_42 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_43 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_44 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_45 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_46 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_47 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_48 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_49 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_50 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_51 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_52 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_53 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_54 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_55 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_56 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_57 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_58 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_59 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_60 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_61 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_62 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_63 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_64 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_65 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_66 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_67 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_68 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_69 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_70 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_71 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_72 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_73 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_74 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_75 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_76 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_77 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_78 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_79 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_80 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_81 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_82 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_83 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_84 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_85 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_86 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_87 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_88 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_89 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_90 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_91 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_92 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_93 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_94 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_95 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_96 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_97 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_98 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; +alter table wx_energy_meter_reading_99 add column shop_name varchar(100) comment '所属店铺,有可能会是多个'; + +alter table wx_energy_meter_reading_0 drop column price; +alter table wx_energy_meter_reading_1 drop column price; +alter table wx_energy_meter_reading_2 drop column price; +alter table wx_energy_meter_reading_3 drop column price; +alter table wx_energy_meter_reading_4 drop column price; +alter table wx_energy_meter_reading_5 drop column price; +alter table wx_energy_meter_reading_6 drop column price; +alter table wx_energy_meter_reading_7 drop column price; +alter table wx_energy_meter_reading_8 drop column price; +alter table wx_energy_meter_reading_9 drop column price; +alter table wx_energy_meter_reading_10 drop column price; +alter table wx_energy_meter_reading_11 drop column price; +alter table wx_energy_meter_reading_12 drop column price; +alter table wx_energy_meter_reading_13 drop column price; +alter table wx_energy_meter_reading_14 drop column price; +alter table wx_energy_meter_reading_15 drop column price; +alter table wx_energy_meter_reading_16 drop column price; +alter table wx_energy_meter_reading_17 drop column price; +alter table wx_energy_meter_reading_18 drop column price; +alter table wx_energy_meter_reading_19 drop column price; +alter table wx_energy_meter_reading_20 drop column price; +alter table wx_energy_meter_reading_21 drop column price; +alter table wx_energy_meter_reading_22 drop column price; +alter table wx_energy_meter_reading_23 drop column price; +alter table wx_energy_meter_reading_24 drop column price; +alter table wx_energy_meter_reading_25 drop column price; +alter table wx_energy_meter_reading_26 drop column price; +alter table wx_energy_meter_reading_27 drop column price; +alter table wx_energy_meter_reading_28 drop column price; +alter table wx_energy_meter_reading_29 drop column price; +alter table wx_energy_meter_reading_30 drop column price; +alter table wx_energy_meter_reading_31 drop column price; +alter table wx_energy_meter_reading_32 drop column price; +alter table wx_energy_meter_reading_33 drop column price; +alter table wx_energy_meter_reading_34 drop column price; +alter table wx_energy_meter_reading_35 drop column price; +alter table wx_energy_meter_reading_36 drop column price; +alter table wx_energy_meter_reading_37 drop column price; +alter table wx_energy_meter_reading_38 drop column price; +alter table wx_energy_meter_reading_39 drop column price; +alter table wx_energy_meter_reading_40 drop column price; +alter table wx_energy_meter_reading_41 drop column price; +alter table wx_energy_meter_reading_42 drop column price; +alter table wx_energy_meter_reading_43 drop column price; +alter table wx_energy_meter_reading_44 drop column price; +alter table wx_energy_meter_reading_45 drop column price; +alter table wx_energy_meter_reading_46 drop column price; +alter table wx_energy_meter_reading_47 drop column price; +alter table wx_energy_meter_reading_48 drop column price; +alter table wx_energy_meter_reading_49 drop column price; +alter table wx_energy_meter_reading_50 drop column price; +alter table wx_energy_meter_reading_51 drop column price; +alter table wx_energy_meter_reading_52 drop column price; +alter table wx_energy_meter_reading_53 drop column price; +alter table wx_energy_meter_reading_54 drop column price; +alter table wx_energy_meter_reading_55 drop column price; +alter table wx_energy_meter_reading_56 drop column price; +alter table wx_energy_meter_reading_57 drop column price; +alter table wx_energy_meter_reading_58 drop column price; +alter table wx_energy_meter_reading_59 drop column price; +alter table wx_energy_meter_reading_60 drop column price; +alter table wx_energy_meter_reading_61 drop column price; +alter table wx_energy_meter_reading_62 drop column price; +alter table wx_energy_meter_reading_63 drop column price; +alter table wx_energy_meter_reading_64 drop column price; +alter table wx_energy_meter_reading_65 drop column price; +alter table wx_energy_meter_reading_66 drop column price; +alter table wx_energy_meter_reading_67 drop column price; +alter table wx_energy_meter_reading_68 drop column price; +alter table wx_energy_meter_reading_69 drop column price; +alter table wx_energy_meter_reading_70 drop column price; +alter table wx_energy_meter_reading_71 drop column price; +alter table wx_energy_meter_reading_72 drop column price; +alter table wx_energy_meter_reading_73 drop column price; +alter table wx_energy_meter_reading_74 drop column price; +alter table wx_energy_meter_reading_75 drop column price; +alter table wx_energy_meter_reading_76 drop column price; +alter table wx_energy_meter_reading_77 drop column price; +alter table wx_energy_meter_reading_78 drop column price; +alter table wx_energy_meter_reading_79 drop column price; +alter table wx_energy_meter_reading_80 drop column price; +alter table wx_energy_meter_reading_81 drop column price; +alter table wx_energy_meter_reading_82 drop column price; +alter table wx_energy_meter_reading_83 drop column price; +alter table wx_energy_meter_reading_84 drop column price; +alter table wx_energy_meter_reading_85 drop column price; +alter table wx_energy_meter_reading_86 drop column price; +alter table wx_energy_meter_reading_87 drop column price; +alter table wx_energy_meter_reading_88 drop column price; +alter table wx_energy_meter_reading_89 drop column price; +alter table wx_energy_meter_reading_90 drop column price; +alter table wx_energy_meter_reading_91 drop column price; +alter table wx_energy_meter_reading_92 drop column price; +alter table wx_energy_meter_reading_93 drop column price; +alter table wx_energy_meter_reading_94 drop column price; +alter table wx_energy_meter_reading_95 drop column price; +alter table wx_energy_meter_reading_96 drop column price; +alter table wx_energy_meter_reading_97 drop column price; +alter table wx_energy_meter_reading_98 drop column price; +alter table wx_energy_meter_reading_99 drop column price; + +ALTER TABLE wx_energy_reading_calcute ADD COLUMN shop TEXT COMMENT '店铺编号'; + +alter table wx_energy_meter_reading_0 drop index T_T_F; +alter table wx_energy_meter_reading_1 drop index T_T_F; +alter table wx_energy_meter_reading_2 drop index T_T_F; +alter table wx_energy_meter_reading_3 drop index T_T_F; +alter table wx_energy_meter_reading_4 drop index T_T_F; +alter table wx_energy_meter_reading_5 drop index T_T_F; +alter table wx_energy_meter_reading_6 drop index T_T_F; +alter table wx_energy_meter_reading_7 drop index T_T_F; +alter table wx_energy_meter_reading_8 drop index T_T_F; +alter table wx_energy_meter_reading_9 drop index T_T_F; +alter table wx_energy_meter_reading_10 drop index T_T_F; +alter table wx_energy_meter_reading_11 drop index T_T_F; +alter table wx_energy_meter_reading_12 drop index T_T_F; +alter table wx_energy_meter_reading_13 drop index T_T_F; +alter table wx_energy_meter_reading_14 drop index T_T_F; +alter table wx_energy_meter_reading_15 drop index T_T_F; +alter table wx_energy_meter_reading_16 drop index T_T_F; +alter table wx_energy_meter_reading_17 drop index T_T_F; +alter table wx_energy_meter_reading_18 drop index T_T_F; +alter table wx_energy_meter_reading_19 drop index T_T_F; +alter table wx_energy_meter_reading_20 drop index T_T_F; +alter table wx_energy_meter_reading_21 drop index T_T_F; +alter table wx_energy_meter_reading_22 drop index T_T_F; +alter table wx_energy_meter_reading_23 drop index T_T_F; +alter table wx_energy_meter_reading_24 drop index T_T_F; +alter table wx_energy_meter_reading_25 drop index T_T_F; +alter table wx_energy_meter_reading_26 drop index T_T_F; +alter table wx_energy_meter_reading_27 drop index T_T_F; +alter table wx_energy_meter_reading_28 drop index T_T_F; +alter table wx_energy_meter_reading_29 drop index T_T_F; +alter table wx_energy_meter_reading_30 drop index T_T_F; +alter table wx_energy_meter_reading_31 drop index T_T_F; +alter table wx_energy_meter_reading_32 drop index T_T_F; +alter table wx_energy_meter_reading_33 drop index T_T_F; +alter table wx_energy_meter_reading_34 drop index T_T_F; +alter table wx_energy_meter_reading_35 drop index T_T_F; +alter table wx_energy_meter_reading_36 drop index T_T_F; +alter table wx_energy_meter_reading_37 drop index T_T_F; +alter table wx_energy_meter_reading_38 drop index T_T_F; +alter table wx_energy_meter_reading_39 drop index T_T_F; +alter table wx_energy_meter_reading_40 drop index T_T_F; +alter table wx_energy_meter_reading_41 drop index T_T_F; +alter table wx_energy_meter_reading_42 drop index T_T_F; +alter table wx_energy_meter_reading_43 drop index T_T_F; +alter table wx_energy_meter_reading_44 drop index T_T_F; +alter table wx_energy_meter_reading_45 drop index T_T_F; +alter table wx_energy_meter_reading_46 drop index T_T_F; +alter table wx_energy_meter_reading_47 drop index T_T_F; +alter table wx_energy_meter_reading_48 drop index T_T_F; +alter table wx_energy_meter_reading_49 drop index T_T_F; +alter table wx_energy_meter_reading_50 drop index T_T_F; +alter table wx_energy_meter_reading_51 drop index T_T_F; +alter table wx_energy_meter_reading_52 drop index T_T_F; +alter table wx_energy_meter_reading_53 drop index T_T_F; +alter table wx_energy_meter_reading_54 drop index T_T_F; +alter table wx_energy_meter_reading_55 drop index T_T_F; +alter table wx_energy_meter_reading_56 drop index T_T_F; +alter table wx_energy_meter_reading_57 drop index T_T_F; +alter table wx_energy_meter_reading_58 drop index T_T_F; +alter table wx_energy_meter_reading_59 drop index T_T_F; +alter table wx_energy_meter_reading_60 drop index T_T_F; +alter table wx_energy_meter_reading_61 drop index T_T_F; +alter table wx_energy_meter_reading_62 drop index T_T_F; +alter table wx_energy_meter_reading_63 drop index T_T_F; +alter table wx_energy_meter_reading_64 drop index T_T_F; +alter table wx_energy_meter_reading_65 drop index T_T_F; +alter table wx_energy_meter_reading_66 drop index T_T_F; +alter table wx_energy_meter_reading_67 drop index T_T_F; +alter table wx_energy_meter_reading_68 drop index T_T_F; +alter table wx_energy_meter_reading_69 drop index T_T_F; +alter table wx_energy_meter_reading_70 drop index T_T_F; +alter table wx_energy_meter_reading_71 drop index T_T_F; +alter table wx_energy_meter_reading_72 drop index T_T_F; +alter table wx_energy_meter_reading_73 drop index T_T_F; +alter table wx_energy_meter_reading_74 drop index T_T_F; +alter table wx_energy_meter_reading_75 drop index T_T_F; +alter table wx_energy_meter_reading_76 drop index T_T_F; +alter table wx_energy_meter_reading_77 drop index T_T_F; +alter table wx_energy_meter_reading_78 drop index T_T_F; +alter table wx_energy_meter_reading_79 drop index T_T_F; +alter table wx_energy_meter_reading_80 drop index T_T_F; +alter table wx_energy_meter_reading_81 drop index T_T_F; +alter table wx_energy_meter_reading_82 drop index T_T_F; +alter table wx_energy_meter_reading_83 drop index T_T_F; +alter table wx_energy_meter_reading_84 drop index T_T_F; +alter table wx_energy_meter_reading_85 drop index T_T_F; +alter table wx_energy_meter_reading_86 drop index T_T_F; +alter table wx_energy_meter_reading_87 drop index T_T_F; +alter table wx_energy_meter_reading_88 drop index T_T_F; +alter table wx_energy_meter_reading_89 drop index T_T_F; +alter table wx_energy_meter_reading_90 drop index T_T_F; +alter table wx_energy_meter_reading_91 drop index T_T_F; +alter table wx_energy_meter_reading_92 drop index T_T_F; +alter table wx_energy_meter_reading_93 drop index T_T_F; +alter table wx_energy_meter_reading_94 drop index T_T_F; +alter table wx_energy_meter_reading_95 drop index T_T_F; +alter table wx_energy_meter_reading_96 drop index T_T_F; +alter table wx_energy_meter_reading_97 drop index T_T_F; +alter table wx_energy_meter_reading_98 drop index T_T_F; +alter table wx_energy_meter_reading_99 drop index T_T_F; + +alter table wx_energy_fees_0 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_1 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_2 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_3 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_4 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_5 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_6 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_7 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_8 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_9 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_10 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_11 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_12 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_13 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_14 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_15 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_16 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_17 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_18 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_19 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_20 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_21 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_22 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_23 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_24 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_25 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_26 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_27 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_28 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_29 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_30 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_31 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_32 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_33 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_34 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_35 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_36 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_37 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_38 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_39 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_40 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_41 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_42 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_43 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_44 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_45 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_46 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_47 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_48 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_49 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_50 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_51 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_52 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_53 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_54 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_55 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_56 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_57 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_58 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_59 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_60 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_61 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_62 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_63 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_64 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_65 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_66 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_67 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_68 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_69 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_70 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_71 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_72 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_73 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_74 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_75 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_76 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_77 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_78 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_79 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_80 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_81 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_82 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_83 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_84 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_85 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_86 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_87 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_88 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_89 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_90 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_91 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_92 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_93 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_94 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_95 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_96 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_97 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_98 add column is_public int(1) not null default 0 comment '是否公摊'; +alter table wx_energy_fees_99 add column is_public int(1) not null default 0 comment '是否公摊'; + + +CREATE TABLE `wx_energy_reading_calcute_result` ( + `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', + `shop_id` bigint(20) NOT NULL COMMENT '店铺ID', + `fees_id` bigint(20) NOT NULL COMMENT '科目编号', + `fees_calcute_id` bigint(20) NOT NULL COMMENT '费用标准编号', + `meter_id` bigint(20) DEFAULT NULL COMMENT '表编号', + `money` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '金额', + PRIMARY KEY (`id`), + UNIQUE KEY `id_UNIQUE` (`id`), + UNIQUE KEY `T_T_F` (`tenant_id`,`calcute_id`,`shop_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='能耗表抄表'; + + + + + + + diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMallAdminController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMallAdminController.java index fd155204c..5c9bfa8f7 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMallAdminController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMallAdminController.java @@ -351,7 +351,6 @@ public class WxMallAdminController extends BaseController { @GetMapping("timeList") public ResultData timeList(@ModelAttribute WxEnergyFeesTime record) { setQueryDataRule(record); - record.setIsDel(EnumYesOrNo.NO.getCode()); record.setSortColumns(BaseEntity.SortField.CreateTime_DESC); PageInfo page = wxEnergyService.timeListAsPage(record, 1, 1000); return new ResultData(page); diff --git a/mallinkService/src/main/java/com/iformall/domain/dto/FloorBuildingIdDTO.java b/mallinkService/src/main/java/com/iformall/domain/dto/FloorBuildingIdDTO.java new file mode 100644 index 000000000..eca94e011 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/dto/FloorBuildingIdDTO.java @@ -0,0 +1,15 @@ +package com.iformall.domain.dto; + +import java.util.List; + +import com.iformall.enums.EnumEnergyMeterShopFloorType; + +import lombok.Data; + +/** + */ +@Data +public class FloorBuildingIdDTO { + private EnumEnergyMeterShopFloorType type; + private List ids; +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java index 17d0c9dc2..b17b403b8 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFees.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.EnumBillAllType; import com.iformall.enums.EnumContractReceivePeriodUnit; -import com.iformall.enums.EnumEnergyPublicCalcuteRule; +import com.iformall.enums.EnumEnergyMeterType; import com.iformall.enums.EnumFeesStandardsCalcuteUnit; import com.iformall.enums.EnumFeesStandardsTimeUnit; import com.iformall.enums.EnumRentDayPriceCalcute; @@ -58,19 +58,19 @@ public class WxEnergyFees extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value = "税率", name = "taxRate") private String taxRate; - @io.swagger.annotations.ApiModelProperty(value = "公摊计算规则EnumEnergyPublicCalcuteRule", name = "publicCalcute") - private Integer publicCalcute; + @io.swagger.annotations.ApiModelProperty(value = "表类型EnumEnergyMeterType", name = "type") + private Integer type; @TableField(exist = false) - private String publicCalcuteName; - public String getPublicCalcuteName() { - if (null != publicCalcute) { - return EnumEnergyPublicCalcuteRule.getEnum(publicCalcute).getMessage(); + private String typeName; + public String getTypeName() { + if (null != type) { + return EnumEnergyMeterType.getEnum(type).getMessage(); } return null; } - @io.swagger.annotations.ApiModelProperty(value = "表类型EnumEnergyMeterType", name = "type") - private Integer type; + @io.swagger.annotations.ApiModelProperty(value = "是否公摊", name = "isPublic") + private Integer isPublic; @io.swagger.annotations.ApiModelProperty(value = "所属账单类型EnumBillAllType", name = "billType") private Integer billType; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesShop.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesShop.java new file mode 100644 index 000000000..7d9beb6fd --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesShop.java @@ -0,0 +1,73 @@ +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_shop") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxEnergyFeesShop 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="feesId") + private Long feesId; + + @io.swagger.annotations.ApiModelProperty(value = "是否公摊", name = "isPublic") + private Integer isPublic; + + @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 shopIds; + @TableField(exist = false) + private List calcuteIds; + @TableField(exist = false) + private String feesName; + @TableField(exist = false) + private String feesIdsStr; + private List feesIds; +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTime.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTime.java index 81a113637..31b2b8c9c 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTime.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTime.java @@ -1,11 +1,15 @@ 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.EnumEnergyMeterType; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; import java.util.Date; +import java.util.List; /** */ @@ -20,20 +24,28 @@ public class WxEnergyFeesTime extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="id",name="id") private Long id; - @io.swagger.annotations.ApiModelProperty(value="name",name="name") - private String name; - @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 = "isDel", name = "isDel") - private Integer isDel; - @io.swagger.annotations.ApiModelProperty(value = "表类型EnumEnergyMeterType", name = "type") private Integer type; + @TableField(exist = false) + private String typeName; + public String getTypeName() { + if (null != type) { + return EnumEnergyMeterType.getEnum(type).getMessage(); + } + return null; + } + + @io.swagger.annotations.ApiModelProperty(value = "所属年月", name = "period") + private String period; + + @io.swagger.annotations.ApiModelProperty(value = "店铺数量", name = "shopSize") + private Integer shopSize; @io.swagger.annotations.ApiModelProperty(value="startTime",name="startTime") private Date startTime; @@ -41,4 +53,7 @@ public class WxEnergyFeesTime extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="endTime",name="endTime") private Date endTime; + @TableField(exist = false) + List shopIds; + } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTimeShop.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTimeShop.java new file mode 100644 index 000000000..88720e35d --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyFeesTimeShop.java @@ -0,0 +1,55 @@ +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.EnumEnergyMeterType; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; +import java.util.Date; +import java.util.List; + +/** + */ +@TableName(value = "wx_energy_fees_time_shop") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxEnergyFeesTimeShop 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 = "period") + private String period; + + @io.swagger.annotations.ApiModelProperty(value = "表类型EnumEnergyMeterType", name = "type") + private Integer type; + @TableField(exist = false) + private String typeName; + public String getTypeName() { + if (null != type) { + return EnumEnergyMeterType.getEnum(type).getMessage(); + } + return null; + } + + @io.swagger.annotations.ApiModelProperty(value = "时间区间编号", name = "timeId") + private Long timeId; + + @io.swagger.annotations.ApiModelProperty(value="店铺编号",name="shopId") + private Long shopId; + + @TableField(exist = false) + private List shopIds; +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeter.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeter.java index bbe114111..eea712fb5 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeter.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeter.java @@ -3,7 +3,9 @@ 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; @@ -47,32 +49,57 @@ public class WxEnergyMeter extends TenantEntity { return null; } - @io.swagger.annotations.ApiModelProperty(value="倍率",name="rate") private String rate; - @io.swagger.annotations.ApiModelProperty(value = "是否总表", name = "isPublic") - private Integer isPublic; + @io.swagger.annotations.ApiModelProperty(value = "表分组EnumEnergyMeterPhysicsType", name = "physicsType") + private Integer physicsType; + @TableField(exist = false) + private String physicsTypeName; + public String getPhysicsTypeName() { + if (null != physicsType) { + EnumEnergyMeterPhysicsType py = EnumEnergyMeterPhysicsType.getEnum(physicsType); + if (null != py) { + return py.getMessage(); + } + } + return null; + } @io.swagger.annotations.ApiModelProperty(value = "店铺类型EnumRentShopType", name = "shopType") private Integer shopType; - - @io.swagger.annotations.ApiModelProperty(value = "楼栋ID", name = "buildingId") - private Long buildingId; @TableField(exist = false) - private String buildingName; + private String shopTypeName; + public String getShopTypeName() { + if (null != shopType) { + return EnumRentShopType.getEnum(shopType).getMessage(); + } + return null; + } - @io.swagger.annotations.ApiModelProperty(value = "楼层ID", name = "floorId") - private Long floorId; @TableField(exist = false) - private String floorName; + private String treeType="meter"; + @TableField(exist = false) + private Long treeParentId; + @TableField(exist = false) + private String treeParentType; - @io.swagger.annotations.ApiModelProperty(value = "店铺", name = "shopId") + @TableField(exist = false) + private Long aliasId; + @TableField(exist = false) + private Integer aliasType; + @TableField(exist = false) + private Long building; + @TableField(exist = false) + private Long floor; + @TableField(exist = false) private Long shopId; @TableField(exist = false) - private String shopNumber; - + private List physicsTypeList; @TableField(exist = false) - private List shopIds; - + private Integer isRealMeter; + @TableField(exist = false) + private Integer isValid; + @TableField(exist = false) + private Integer hasShop; } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterChild.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterChild.java new file mode 100644 index 000000000..e94b6cff7 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterChild.java @@ -0,0 +1,47 @@ +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.EnumEnergyMeterShopFloorType; +import com.iformall.enums.EnumEnergyMeterType; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + */ +@TableName(value = "wx_energy_meter_child") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxEnergyMeterChild 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="parentMeterId") + private Long parentMeterId; + + @io.swagger.annotations.ApiModelProperty(value = "关联的编号", name = "childMeterId") + private Long childMeterId; + + @TableField(exist = false) + private List childMeterIdList; + + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterReading.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterReading.java index c6a6e1021..3456bf632 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterReading.java +++ b/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,33 +97,20 @@ 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="是否删除",name="isDel") + private Integer isDel; - @io.swagger.annotations.ApiModelProperty(value="楼座ID",name="buildingId") - private Long buildingId; - @TableField(exist = false) + @io.swagger.annotations.ApiModelProperty(value="所属楼栋,有可能会是多个",name="buildingName") private String buildingName; - @io.swagger.annotations.ApiModelProperty(value="楼层ID",name="floorId") - private Long floorId; - @TableField(exist = false) + @io.swagger.annotations.ApiModelProperty(value="所属楼层,有可能会是多个",name="floorName") private String floorName; - @io.swagger.annotations.ApiModelProperty(value="单价",name="price") - private String price; - - @io.swagger.annotations.ApiModelProperty(value="是否删除",name="isDel") - private Integer isDel; + @io.swagger.annotations.ApiModelProperty(value="所属店铺,有可能会是多个",name="shopName") + private String shopName; @TableField(exist = false) private List meterReadingList; @@ -138,105 +119,91 @@ public class WxEnergyMeterReading extends TenantEntity { private List shopIds; @TableField(exist = false) private String shopIdsStr; + @TableField(exist = false) + private Long timeId; public static Map generateExcelTitle() { Map excelTitle = new LinkedHashMap(); - excelTitle.put("calcuteId", "编码"); excelTitle.put("id", "抄表数据编码"); - excelTitle.put("timeId", "时间区间"); excelTitle.put("startTime", "开始日期"); excelTitle.put("endTime", "截止日期"); - excelTitle.put("feesId", "科目"); excelTitle.put("buildingId", "楼座"); excelTitle.put("floorId", "楼层"); excelTitle.put("shopId", "店铺号"); excelTitle.put("meterId", "表号"); - excelTitle.put("isPublic", "表类型"); + excelTitle.put("meterType", "表类型"); excelTitle.put("preNumber", "上次抄表数"); excelTitle.put("preTime", "上次抄表时间"); excelTitle.put("curNumber", "本次抄表数"); - excelTitle.put("price", "单价(*)"); return excelTitle; } - public Map generateExcelData(Map buildingMap,Map floorMap,WxEnergyFeesTime time,WxEnergyFees fees,WxEnergyReadingCalcute calcute) { + public Map generateExcelData() { Map excelObject = new HashMap(); - 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("buildingId", this.getBuildingName()); + excelObject.put("floorId", this.getFloorName()); + excelObject.put("shopId", this.getShopName()); 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("meterType", this.getMeterTypeName()); 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; } public WxAllBill generateUserBill(WxEnergyReadingCalcute calcute,WxMerchant merchant,MallUserInfo user,WxEnergyMeter meter) { - BigDecimal dx = new BigDecimal(this.curNumber).subtract(new BigDecimal(this.preNumber)); - BigDecimal needPay = new BigDecimal(this.price).multiply(dx).divide(new BigDecimal(meter.getRate())).setScale(2,RoundingMode.HALF_UP); - if (needPay.compareTo(new BigDecimal(0)) <= 0 ) { - return null; - } - String detail = "单价:"+this.price+",上次读数:"+this.preNumber+",本次读数:"+this.curNumber+",读数差:"+dx.toPlainString()+",表倍率:"+meter.getRate()+",费用:"+needPay.toPlainString(); - return generateBill(calcute,merchant, user, needPay.toPlainString(), detail, "抄表计算自动生成"); +// BigDecimal dx = new BigDecimal(this.curNumber).subtract(new BigDecimal(this.preNumber)); +// BigDecimal needPay = new BigDecimal(this.price).multiply(dx).divide(new BigDecimal(meter.getRate())).setScale(2,RoundingMode.HALF_UP); +// if (needPay.compareTo(new BigDecimal(0)) <= 0 ) { +// return null; +// } +// String detail = "单价:"+this.price+",上次读数:"+this.preNumber+",本次读数:"+this.curNumber+",读数差:"+dx.toPlainString()+",表倍率:"+meter.getRate()+",费用:"+needPay.toPlainString(); +// return generateBill(calcute,merchant, user, needPay.toPlainString(), detail, "抄表计算自动生成"); + return null; } public WxAllBill generatePublicBill(WxEnergyReadingCalcute calcute,WxMerchant merchant,MallUserInfo user,String needPay) { - if (new BigDecimal(needPay).compareTo(new BigDecimal(0)) <= 0 ) { - return null; - } - String detail = "单价:"+this.price+",费用:"+needPay; - return generateBill(calcute,merchant, user, needPay, detail, "抄表计算自动生成公摊"); +// if (new BigDecimal(needPay).compareTo(new BigDecimal(0)) <= 0 ) { +// return null; +// } +// String detail = "单价:"+this.price+",费用:"+needPay; +// return generateBill(calcute,merchant, user, needPay, detail, "抄表计算自动生成公摊"); + return null; } } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterShopFloor.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterShopFloor.java new file mode 100644 index 000000000..88e44a8e7 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeterShopFloor.java @@ -0,0 +1,68 @@ +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.EnumEnergyMeterShopFloorType; +import com.iformall.enums.EnumEnergyMeterType; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + */ +@TableName(value = "wx_energy_meter_shop_floor") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxEnergyMeterShopFloor 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 = "表类型EnumEnergyMeterShopFloorType", name = "type") + private Integer type; + @TableField(exist = false) + private String typeName; + public String getTypeName() { + if (null != type) { + return EnumEnergyMeterShopFloorType.getEnum(type).getMessage(); + } + return null; + } + + @io.swagger.annotations.ApiModelProperty(value="表编号",name="meterId") + private Long meterId; + + @io.swagger.annotations.ApiModelProperty(value = "关联的编号", name = "aliseId") + private Long aliseId; + + @TableField(exist = false) + private List shopIds; + @TableField(exist = false) + private List floorIds; + @TableField(exist = false) + private List buildingIds; + @TableField(exist = false) + private Integer physicsType; + @TableField(exist = false) + private List typeList; + @TableField(exist = false) + private Long parentId; + @TableField(exist = false) + private String parentType; + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyReadingCalcute.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyReadingCalcute.java index 2d2444c6e..cd564fb75 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyReadingCalcute.java +++ b/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; /** @@ -48,30 +49,15 @@ public class WxEnergyReadingCalcute 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="所属年月",name="period") + private String period; @io.swagger.annotations.ApiModelProperty(value="科目ID",name="feesId") private Long feesId; @TableField(exist = false) private String feesName; - - @io.swagger.annotations.ApiModelProperty(value = "isImported", name = "isImported") - private Integer isImported; - - @io.swagger.annotations.ApiModelProperty(value = "importSuccess", name = "importSuccess") - private Integer importSuccess; @TableField(exist = false) - private String importSuccessName; - public String getImportSuccessName() { - if (null != importSuccess && importSuccess.intValue() == EnumYesOrNo.YES.getCode().intValue()) { - return "成功"; - }else { - return "未完成导入"; - } - } + private String feesPhysicsTypeName; @io.swagger.annotations.ApiModelProperty(value = "isCalcuted", name = "isCalcuted") private Integer isCalcuted; @@ -91,4 +77,17 @@ 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; + + @io.swagger.annotations.ApiModelProperty(value="所属年月",name="period") + private String shop; + + @TableField(exist = false) + private List shopIds; + @TableField(exist = false) + private List feesIds; + @TableField(exist = false) + private String feesIdsStr; + } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyReadingCalcuteResult.java b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyReadingCalcuteResult.java new file mode 100644 index 000000000..6ac28c81a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxEnergyReadingCalcuteResult.java @@ -0,0 +1,61 @@ +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.EnumYesOrNo; +import com.iformall.utils.DateUtils; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; +import java.util.Date; +import java.util.HashMap; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +/** + */ +@TableName(value = "wx_energy_reading_calcute_result") +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxEnergyReadingCalcuteResult 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="计算ID",name="calcuteId") + private Long calcuteId; + + @io.swagger.annotations.ApiModelProperty(value="店铺ID",name="shopId") + private Long shopId; + + @io.swagger.annotations.ApiModelProperty(value="科目ID",name="feesId") + private Long feesId; + + @io.swagger.annotations.ApiModelProperty(value="费用标准ID",name="feesCalcuteId") + private Long feesCalcuteId; + + @io.swagger.annotations.ApiModelProperty(value="表ID",name="meterId") + private Long meterId; + + @io.swagger.annotations.ApiModelProperty(value="抄表数据ID",name="readingId") + private Long readingId; + + @io.swagger.annotations.ApiModelProperty(value="金额",name="money") + private String money; + + @TableField(exist = false) + private List shopIds; + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMallBuilding.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMallBuilding.java index 65f9f4572..eec2b8d55 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMallBuilding.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMallBuilding.java @@ -33,6 +33,12 @@ public class WxMallBuilding extends TenantEntity { private Date createDate; @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") private Date updateDate; + @TableField(exist = false) + private String treeType="building"; + @TableField(exist = false) + private Long treeParentId = 0L; + @TableField(exist = false) + private String treeParentType=""; public void setBuildingName(String buildingName){ this.buildingName = buildingName; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMallFloor.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMallFloor.java index 9298a2b1f..332aaa36f 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMallFloor.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMallFloor.java @@ -9,6 +9,7 @@ import lombok.EqualsAndHashCode; import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; @@ -39,6 +40,17 @@ public class WxMallFloor extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="地图",name="floorMap") private String floorMap; + + @TableField(exist = false) + private String treeType="floor"; + @TableField(exist = false) + private Long treeParentId; + public Long getTreeParentId() { + treeParentId = this.getBuildingId(); + return treeParentId; + } + @TableField(exist = false) + private String treeParentType="building"; @TableField(exist = false) @io.swagger.annotations.ApiModelProperty(value="",name="") @@ -53,4 +65,6 @@ public class WxMallFloor extends TenantEntity { return floorMaps; } + @TableField(exist = false) + private List buildingIdList; } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java b/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java index 6745e754c..f7e5d2832 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java @@ -149,6 +149,14 @@ public class WxShop extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value = "租金单位", name = "rentUnit") private Integer rentUnit; + @io.swagger.annotations.ApiModelProperty(value = "树里面的类型", name = "treeType") + @TableField(exist = false) + private String treeType = "shop"; + @TableField(exist = false) + private Long treeParentId; + @TableField(exist = false) + private String treeParentType="floor"; + @TableField(exist = false) private Integer rent_unit; diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumCacheKey.java b/mallinkService/src/main/java/com/iformall/enums/EnumCacheKey.java index cdf3332dd..40424fd1d 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumCacheKey.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumCacheKey.java @@ -18,7 +18,8 @@ public enum EnumCacheKey { COUPON_CHANNEL_STOCK(7, "couponChannelStock:couponChannelStock_"), DOUYIN_LIVE_PAGE_LIST(8,"douyinLiveList"), OLD_DETAIL(9,"cc:"), - OLD_DETAIL_HTML(10,"ch:") + OLD_DETAIL_HTML(10,"ch:"), + OLD_COUPORDER_HTML(11,"cd:") ; private static Map map = new HashMap(); static { diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumEnergyPublicCalcuteRule.java b/mallinkService/src/main/java/com/iformall/enums/EnumEnergyMeterPhysicsType.java similarity index 53% rename from mallinkService/src/main/java/com/iformall/enums/EnumEnergyPublicCalcuteRule.java rename to mallinkService/src/main/java/com/iformall/enums/EnumEnergyMeterPhysicsType.java index 43f4535b3..a30de1ec5 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumEnergyPublicCalcuteRule.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumEnergyMeterPhysicsType.java @@ -1,17 +1,18 @@ package com.iformall.enums; + /** */ -public enum EnumEnergyPublicCalcuteRule { +public enum EnumEnergyMeterPhysicsType { - ALL(1,"按全部楼栋面积公摊"), - BUILDING(2,"按所在楼栋面积公摊"), - FLOOR(3, "按所在楼层面积公摊"), + USER(1,"用户表"), + PUBLIC(2,"公共表"), + SUMMARY(3, "分摊总表"), ; - public static EnumEnergyPublicCalcuteRule getEnum(Integer code) { - for (EnumEnergyPublicCalcuteRule value : values()) { + public static EnumEnergyMeterPhysicsType getEnum(Integer code) { + for (EnumEnergyMeterPhysicsType value : values()) { if (value.getCode().equals(code)) { return value; } @@ -22,7 +23,7 @@ public enum EnumEnergyPublicCalcuteRule { private Integer code; private String message; - EnumEnergyPublicCalcuteRule(Integer code, String message) { + EnumEnergyMeterPhysicsType(Integer code, String message) { this.code = code; this.message = message; } @@ -34,4 +35,5 @@ public enum EnumEnergyPublicCalcuteRule { public String getMessage() { return message; } + } diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumEnergyMeterShopFloorType.java b/mallinkService/src/main/java/com/iformall/enums/EnumEnergyMeterShopFloorType.java new file mode 100644 index 000000000..ef5918ad8 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumEnergyMeterShopFloorType.java @@ -0,0 +1,39 @@ +package com.iformall.enums; + + +/** + */ + +public enum EnumEnergyMeterShopFloorType { + + SHOP(1,"店铺"), + FLOOR(2,"楼层"), + BUILDING(3, "楼座"), + ; + + public static EnumEnergyMeterShopFloorType getEnum(Integer code) { + for (EnumEnergyMeterShopFloorType value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumEnergyMeterShopFloorType(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesShopMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesShopMapper.java new file mode 100644 index 000000000..280876fac --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesShopMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxEnergyFeesShop; + +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxEnergyFeesShopMapper extends CommonMapper { + + List findList(WxEnergyFeesShop wxBillRent); + + List findFeesIdList(WxEnergyFeesShop wxBillRent); + + WxEnergyFeesShop selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesTimeShopMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesTimeShopMapper.java new file mode 100644 index 000000000..77681a8e2 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyFeesTimeShopMapper.java @@ -0,0 +1,25 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxEnergyFeesTimeShop; + +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxEnergyFeesTimeShopMapper extends CommonMapper { + + List findList(WxEnergyFeesTimeShop wxBillRent); + + Integer findCount(WxEnergyFeesTimeShop wxBillRent); + + WxEnergyFeesTimeShop selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + + void deleteByTimeId(@Param("timeId")Long timeId,@Param("tenantId")String tenantId); + + List findShopIdList(WxEnergyFeesTimeShop wxBillRent); + + List findTimeIdList(WxEnergyFeesTimeShop wxBillRent); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterChildMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterChildMapper.java new file mode 100644 index 000000000..3dbef7855 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterChildMapper.java @@ -0,0 +1,21 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxEnergyMeterChild; + +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxEnergyMeterChildMapper extends CommonMapper { + + List findList(WxEnergyMeterChild wxBillRent); + + WxEnergyMeterChild selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + + List findChildMeterIdList(WxEnergyMeterChild wxBillRent); + + void deleteByCondition(WxEnergyMeterChild wxBillRent); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterReadingMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterReadingMapper.java index 9fe576084..a17172ad4 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterReadingMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterReadingMapper.java @@ -15,11 +15,5 @@ public interface WxEnergyMeterReadingMapper extends CommonMapper findBuildingSumMoney(WxEnergyMeterReading wxBillRent); - - List findFloorSumMoney(WxEnergyMeterReading wxBillRent); - void setIsDel(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("isDel")Integer isDel); } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterShopFloorMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterShopFloorMapper.java new file mode 100644 index 000000000..7693ac20f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyMeterShopFloorMapper.java @@ -0,0 +1,23 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxEnergyMeterShopFloor; + +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxEnergyMeterShopFloorMapper extends CommonMapper { + + List findList(WxEnergyMeterShopFloor wxBillRent); + + WxEnergyMeterShopFloor selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + + List findAliasIdList(WxEnergyMeterShopFloor wxBillRent); + + List findMeterIdList(WxEnergyMeterShopFloor wxBillRent); + + void deleteByConditon(WxEnergyMeterShopFloor wxBillRent); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxEnergyReadingCalcuteResultMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyReadingCalcuteResultMapper.java new file mode 100644 index 000000000..55143c3a4 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxEnergyReadingCalcuteResultMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxEnergyReadingCalcuteResult; + +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + */ +public interface WxEnergyReadingCalcuteResultMapper extends CommonMapper { + + List findList(WxEnergyReadingCalcuteResult wxBillRent); + + List findShopIdList(WxEnergyReadingCalcuteResult wxBillRent); + + WxEnergyReadingCalcuteResult selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxMallBuildingMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxMallBuildingMapper.java index 765b0f767..278be2f5e 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxMallBuildingMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxMallBuildingMapper.java @@ -9,6 +9,7 @@ public interface WxMallBuildingMapper extends CommonMapper findList(WxMallBuilding wxMallBuilding); + List findIdList(WxMallBuilding wxMallBuilding); void deleteByTenantId(String tenantId); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxMallFloorMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxMallFloorMapper.java index 8d5ed2060..3619402b6 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxMallFloorMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxMallFloorMapper.java @@ -9,6 +9,8 @@ import java.util.Map; public interface WxMallFloorMapper extends CommonMapper { List findList(WxMallFloor wxMallFloor); + + List getFloorIds(WxMallFloor wxMallFloor); int deleteByBuildingId(Long buildingId); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxShopMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxShopMapper.java index 3f7487fa4..0566c399f 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxShopMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxShopMapper.java @@ -56,4 +56,6 @@ public interface WxShopMapper extends CommonMapper { * @return {@link List}<{@link CountShopByStatusDTO}> */ List countShopByStatus(@Param("tenantIds") List tenantIds); + + List findShopNumberList(WxShop wxShop); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java b/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java index 5328522aa..e525194c9 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxEnergyService.java @@ -13,10 +13,14 @@ import com.github.pagehelper.PageInfo; import com.iformall.domain.po.MallUserInfo; import com.iformall.domain.po.WxEnergyFees; import com.iformall.domain.po.WxEnergyFeesSetoff; +import com.iformall.domain.po.WxEnergyFeesShop; import com.iformall.domain.po.WxEnergyFeesTime; import com.iformall.domain.po.WxEnergyMeter; +import com.iformall.domain.po.WxEnergyMeterChild; import com.iformall.domain.po.WxEnergyMeterReading; +import com.iformall.domain.po.WxEnergyMeterShopFloor; import com.iformall.domain.po.WxEnergyReadingCalcute; +import com.iformall.domain.po.WxEnergyReadingCalcuteResult; import com.iformall.domain.po.base.TenantEntity; /** */ @@ -26,28 +30,40 @@ public interface WxEnergyService { PageInfo meterListAsPage(WxEnergyMeter record, Integer pageIndex, Integer pageSize); WxEnergyMeter getMeterById(TenantEntity tenantEntity,Long id); void saveOrUpdateMeter(WxEnergyMeter record); + void createMeterAlias(WxEnergyMeterShopFloor record); + void createChildMeterAlias(WxEnergyMeterChild record); + void deleteMeterAlias(WxEnergyMeterShopFloor record); + void deleteChildMeterAlias(WxEnergyMeterChild record); void updateMeterIsDel(WxEnergyMeter record); Map getMeterMap(WxEnergyMeter record); - void setMeterShop(WxEnergyMeter record); - void setMeterFloor(WxEnergyMeter record); - + List getMeterIdList(WxEnergyMeterShopFloor record); + List getChildMeterIdList(WxEnergyMeterChild record); + //费用区间 PageInfo timeListAsPage(WxEnergyFeesTime record, Integer pageIndex, Integer pageSize); void saveOrUpdateTime(WxEnergyFeesTime record); WxEnergyFeesTime getFeesTimeById(WxEnergyFeesTime record); Map getTimeMap(WxEnergyFeesTime record); - void setTimeIsDel(WxEnergyFeesTime record); + void timeDel(WxEnergyFeesTime record); + List getTimeShopNumber(WxEnergyFeesTime record); //费用科目 PageInfo feesListAsPage(WxEnergyFees record, Integer pageIndex, Integer pageSize,boolean isSetOff); void saveOrUpdateFees(WxEnergyFees record); - WxEnergyFees getFeesById(WxEnergyFees record); + WxEnergyFees getFeesById(Long id,String tenantId); void setFeesIsDel(WxEnergyFees record); Map getFeesMap(WxEnergyFees record); void initEnergyFees(TenantEntity tenantEntity); List getAdvanceSetoffFeesids(WxEnergyFeesSetoff setoff); List getFeesIdList(WxEnergyFees record); + //计算标砖 + List getFeesCalcuteComponentList(WxEnergyFeesShop record); + void createFeesShop(WxEnergyFeesShop record); + void deleteFeesShop(WxEnergyFeesShop record); + WxEnergyFeesShop getShopFeesCalcute(Long id,String tenantId); + void saveOrUpdateShopFeesCalcute(WxEnergyFeesShop record); + PageInfo feesShopListAsPage(WxEnergyFeesShop record, Integer pageIndex, Integer pageSize); //抄表数据 PageInfo readingListAsPage(WxEnergyMeterReading record, Integer pageIndex, Integer pageSize); @@ -56,6 +72,8 @@ public interface WxEnergyService { void commitReading(WxEnergyMeterReading record,MallUserInfo userInfo); WxEnergyMeterReading getReadingById(WxEnergyMeterReading record); void setReadingIsDel(WxEnergyMeterReading record); + void exportReading(WxEnergyMeterReading record,HttpServletRequest request, HttpServletResponse response); + void importReading(MultipartFile mFile, MallUserInfo user, HttpServletRequest request, HttpServletResponse response); //抄表科目计算数据 PageInfo readingCalcuteListAsPage(WxEnergyReadingCalcute record, Integer pageIndex, Integer pageSize); @@ -65,4 +83,6 @@ public interface WxEnergyService { void importReadingCalcute(MultipartFile mFile, MallUserInfo user, HttpServletRequest request, HttpServletResponse response); Integer calcuteReading(WxEnergyReadingCalcute record, MallUserInfo user); void setReadingCalcuteIsDel(WxEnergyReadingCalcute record); + List getReadingCalcuteShopNumber(WxEnergyReadingCalcute record); + } diff --git a/mallinkService/src/main/java/com/iformall/service/WxMallBuildingService.java b/mallinkService/src/main/java/com/iformall/service/WxMallBuildingService.java index 6af7fddf8..8fd35d877 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMallBuildingService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMallBuildingService.java @@ -8,6 +8,7 @@ import com.iformall.domain.po.WxMallBuilding; import com.iformall.domain.po.WxMallFloor; import com.iformall.domain.po.base.TenantEntity; +import java.util.List; import java.util.Map; public interface WxMallBuildingService { @@ -56,6 +57,8 @@ public interface WxMallBuildingService { ResultData getBuildingList(TenantEntity tenantEntity); ResultData getBuildingFloorList(WxMallBuilding wxMallBuilding,MallUserInfo mallUser); + + ResultData getBuildingList(WxMallBuilding wxMallBuilding,MallUserInfo mallUser); /** * 新增楼层楼座 @@ -76,4 +79,6 @@ public interface WxMallBuildingService { void saveFloorImg(WxMallFloor floor); Map getBuildingMap(TenantEntity tenantInfo); + + List getBuildingIdList(WxMallBuilding wxMallBuilding); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxMallFloorService.java b/mallinkService/src/main/java/com/iformall/service/WxMallFloorService.java index ab9e8502b..7bb163f6d 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMallFloorService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMallFloorService.java @@ -5,6 +5,7 @@ import com.iformall.common.ResultData; import com.iformall.domain.po.WxMallFloor; import com.iformall.domain.po.base.TenantEntity; +import java.util.List; import java.util.Map; public interface WxMallFloorService { @@ -43,6 +44,8 @@ public interface WxMallFloorService { ResultData getFloorList(TenantEntity tenantEntity, Long buildingId); + + List getFloorIdList(WxMallFloor record); void deleteByBuildingId(Long buildingId); diff --git a/mallinkService/src/main/java/com/iformall/service/WxShopService.java b/mallinkService/src/main/java/com/iformall/service/WxShopService.java index 016c6282b..c06e81e43 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxShopService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxShopService.java @@ -116,5 +116,7 @@ public interface WxShopService { List getFloorBuildShopIds(TenantEntity tenantEntity,String floorRule,Long building,Long floor,Integer shopDel) ; List getMerchantIds(WxShop wxShop); + + List getShopNumberList(WxShop wxShop); } diff --git a/mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java b/mallinkService/src/main/java/com/iformall/service/helper/WxEnergyHelper.java new file mode 100644 index 000000000..dd2652dae --- /dev/null +++ b/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 generateCalcuteComponent() { + //公共表,公摊总表,当前楼栋面积,当前楼层面积,总面积,店铺公摊系数 + List retList = new ArrayList(); + + 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; + } + +} diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java index cdaca915b..edaadf61e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxEnergyServiceImpl.java @@ -1,5 +1,7 @@ package com.iformall.service.impl; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.github.pagehelper.PageHelper; @@ -7,14 +9,20 @@ 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; import com.iformall.enums.EnumBillAllType; -import com.iformall.enums.EnumEnergyPublicCalcuteRule; +import com.iformall.enums.EnumEnergyMeterPhysicsType; +import com.iformall.enums.EnumEnergyMeterShopFloorType; 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 com.iformall.utils.DateUtils; + import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; @@ -25,6 +33,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import java.io.BufferedInputStream; import java.io.File; @@ -45,15 +55,25 @@ public class WxEnergyServiceImpl implements WxEnergyService { @Autowired WxEnergyMeterMapper wxEnergyMeterMapper; @Autowired + WxEnergyMeterShopFloorMapper wxEnergyMeterShopFloorMapper; + @Autowired + WxEnergyMeterChildMapper wxEnergyMeterChildMapper; + @Autowired WxEnergyMeterReadingMapper wxEnergyMeterReadingMapper; @Autowired WxEnergyFeesTimeMapper wxEnergyFeesTimeMapper; @Autowired + WxEnergyFeesTimeShopMapper wxEnergyFeesTimeShopMapper; + @Autowired WxEnergyFeesMapper wxEnergyFeesMapper; @Autowired + WxEnergyFeesShopMapper wxEnergyFeesShopMapper; + @Autowired WxEnergyFeesSetoffMapper wxEnergyFeesSetoffMapper; @Autowired WxEnergyReadingCalcuteMapper wxEnergyReadingCalcuteMapper; + @Autowired + WxEnergyReadingCalcuteResultMapper wxEnergyReadingCalcuteResultMapper; @Lazy @Autowired @@ -81,43 +101,19 @@ public class WxEnergyServiceImpl implements WxEnergyService { @Override public PageInfo meterListAsPage(WxEnergyMeter record, Integer pageIndex, Integer pageSize) { - String shopNumber = StringUtils.trimToNull(record.getShopNumber()); - if (StringUtils.isNotBlank(shopNumber)) { - WxShop sq = new WxShop(); - sq.updateTenantInfo(record); - sq.setShopNumber(shopNumber); - List shopIds = wxShopService.getShopIds(sq); - if (null == shopIds || shopIds.size() <= 0) { + if (null != record.getAliasId()) { + WxEnergyMeterShopFloor msf = new WxEnergyMeterShopFloor(); + msf.updateTenantInfo(record); + msf.setType(record.getAliasType()); + msf.setAliseId(record.getAliasId()); + List aliseIdList = wxEnergyMeterShopFloorMapper.findAliasIdList(msf); + if (null == aliseIdList || aliseIdList.size() <= 0 ) { record.setId(-1L); }else { - record.setShopIds(shopIds); + record.setIds(aliseIdList); } } PageInfo page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyMeterMapper.findList(record)); - if (null != page && null != page.getList()) { - WxShop sq = new WxShop(); - sq.updateTenantInfo(record); - Map shopMap = wxShopService.findShopMap(sq); - Map buildingMap = wxMallBuildingService.getBuildingMap(record); - Map floorMap = wxMallFloorService.getFloorMap(record); - for (int i = 0 ; i < page.getList().size(); i++) { - WxEnergyMeter m = page.getList().get(i); - if (null != shopMap && null != m.getShopId()) { - WxShop shop = shopMap.get(m.getShopId()); - if (null != shop) { - m.setShopNumber(shop.getShopNumber()); - } - } - 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; } @@ -145,6 +141,99 @@ public class WxEnergyServiceImpl implements WxEnergyService { wxEnergyMeterMapper.updateById(record); } } + + private FloorBuildingIdDTO getFloorBuildingIds(TenantEntity tenantEntity,List floorIds,List buildingIds) { + //如果楼层是全选了的,则代表的是楼座。 + //根据楼座id查询楼层 + WxMallFloor fq = new WxMallFloor(); + fq.updateTenantInfo(tenantEntity); + fq.setBuildingIdList(buildingIds); + List bfloorIds = wxMallFloorService.getFloorIdList(fq); + if (null == bfloorIds || bfloorIds.size() != floorIds.size() || (!floorIds.containsAll(bfloorIds))) { + FloorBuildingIdDTO dto = new FloorBuildingIdDTO(); + dto.setType(EnumEnergyMeterShopFloorType.FLOOR); + dto.setIds(floorIds); + return dto; + }else { + FloorBuildingIdDTO dto = new FloorBuildingIdDTO(); + dto.setType(EnumEnergyMeterShopFloorType.BUILDING); + dto.setIds(buildingIds); + return dto; + } + } + + @Override + public void createMeterAlias(WxEnergyMeterShopFloor record) { + //新增关联 + final IdWorker idWorker = IdWorker.get(); + Date date = new Date(); + List aliasIds = null; + if (record.getPhysicsType() == EnumEnergyMeterPhysicsType.USER.getCode()) { + record.setType(EnumEnergyMeterShopFloorType.SHOP.getCode()); + aliasIds = record.getShopIds(); + if (null == aliasIds || aliasIds.size() <= 0 ) { + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"用户表类型,必须选择店铺"); + } + }else if (record.getPhysicsType() == EnumEnergyMeterPhysicsType.PUBLIC.getCode() || record.getPhysicsType() == EnumEnergyMeterPhysicsType.SUMMARY.getCode()) { + List floorIds = record.getFloorIds(); + List buildindIds = record.getBuildingIds(); + FloorBuildingIdDTO dto = getFloorBuildingIds(record, floorIds, buildindIds); + record.setType(dto.getType().getCode()); + aliasIds = record.getIds(); + if (null == aliasIds || aliasIds.size() <= 0 ) { + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"请选择有效的楼层楼座"); + } + } + for (int i = 0 ; i < aliasIds.size(); i ++) { + Long shopId = aliasIds.get(i); + WxEnergyMeterShopFloor msf = new WxEnergyMeterShopFloor(); + msf.updateTenantInfo(record); + msf.setId(idWorker.nextId()); + msf.setCreateTime(date); + msf.setUpdateTime(date); + msf.setMeterId(record.getMeterId()); + msf.setType(record.getType()); + msf.setAliseId(shopId); + wxEnergyMeterShopFloorMapper.insert(msf); + } + } + + @Override + public void createChildMeterAlias(WxEnergyMeterChild record) { + //新增关联 + final IdWorker idWorker = IdWorker.get(); + Date date = new Date(); + for (int i = 0 ; i < record.getChildMeterIdList().size(); i ++) { + Long childMeterId = record.getChildMeterIdList().get(i); + WxEnergyMeterChild msf = new WxEnergyMeterChild(); + msf.updateTenantInfo(record); + msf.setId(idWorker.nextId()); + msf.setCreateTime(date); + msf.setUpdateTime(date); + msf.setParentMeterId(record.getParentMeterId()); + msf.setChildMeterId(childMeterId); + wxEnergyMeterChildMapper.insert(msf); + } + } + + @Override + public void deleteMeterAlias(WxEnergyMeterShopFloor record) { + if ("floor".equals(record.getParentType())) { + record.setType(EnumEnergyMeterShopFloorType.FLOOR.getCode()); + }else if ("building".equals(record.getParentType())) { + record.setType(EnumEnergyMeterShopFloorType.BUILDING.getCode()); + }else if ("shop".equals(record.getParentType())) { + record.setType(EnumEnergyMeterShopFloorType.SHOP.getCode()); + } + record.setMeterId(record.getId()); + record.setAliseId(record.getParentId()); + wxEnergyMeterShopFloorMapper.deleteByConditon(record); + } + + @Override + public void deleteChildMeterAlias(WxEnergyMeterChild record) { + wxEnergyMeterChildMapper.deleteByCondition(record); + } @Override public void updateMeterIsDel(WxEnergyMeter record) { @@ -165,49 +254,58 @@ public class WxEnergyServiceImpl implements WxEnergyService { return null; } - @Override - public void setMeterShop(WxEnergyMeter record) { - WxShop shop = wxShopService.getById(record.getShopId()); - record.setShopId(shop.getId()); - record.setBuildingId(shop.getBuilding()); - record.setFloorId(shop.getFloor()); - record.setUpdateTime(new Date()); - wxEnergyMeterMapper.updateById(record); + public List getMeterIdList(WxEnergyMeterShopFloor record) { + return wxEnergyMeterShopFloorMapper.findMeterIdList(record); } @Override - public void setMeterFloor(WxEnergyMeter record) { - WxMallFloor floor = wxMallFloorService.getById(record.getFloorId()); -// record.setBuildingId(floor.getBuildingId()); -// record.setFloorId(floor.getId()); -// record.setUpdateTime(new Date()); -// record.setShopId(null); -// wxEnergyMeterMapper.updateById(record); - //属性为空如何处理 - wxEnergyMeterMapper.update(record, new UpdateWrapper().lambda().eq(WxEnergyMeter::getId, record.getId()) - .set(WxEnergyMeter::getShopId, null) - .set(WxEnergyMeter::getBuildingId, floor.getBuildingId()) - .set(WxEnergyMeter::getFloorId, floor.getId()) - .set(WxEnergyMeter::getUpdateTime, new Date())); + public List getChildMeterIdList(WxEnergyMeterChild record) { + return wxEnergyMeterChildMapper.findChildMeterIdList(record); } - - + @Override public PageInfo timeListAsPage(WxEnergyFeesTime record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyFeesTimeMapper.findList(record)); } + @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Override public void saveOrUpdateTime(WxEnergyFeesTime record) { + if (null == record.getShopIds() || record.getShopIds().size() <= 0 ) { + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"请选择店铺"); + } Date date = new Date(); if (record.getId() == null) { + + //查询是不是已经有了 + WxEnergyFeesTimeShop tsq = new WxEnergyFeesTimeShop(); + tsq.setPeriod(record.getPeriod()); + tsq.setShopIds(record.getShopIds()); + tsq.setType(record.getType()); + Integer scount = wxEnergyFeesTimeShopMapper.findCount(tsq); + if (null != scount && scount > 0 ) { + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"所选店铺已存在该年月的"+record.getTypeName()+"区间"); + } + final IdWorker idWorker = IdWorker.get(); record.setId(idWorker.nextId()); record.setCreateTime(date); record.setUpdateTime(date); try { wxEnergyFeesTimeMapper.insert(record); + for (int i = 0 ; i < record.getShopIds().size(); i ++) { + Long shopId = record.getShopIds().get(i); + WxEnergyFeesTimeShop ts = new WxEnergyFeesTimeShop(); + ts.updateTenantInfo(record); + ts.setId(idWorker.nextId()); + ts.setTimeId(record.getId()); + ts.setShopId(shopId); + ts.setPeriod(record.getPeriod()); + ts.setType(record.getType()); + wxEnergyFeesTimeShopMapper.insert(ts); + } + } catch (Exception e) { logger.error("保存租赁账单失败,e:" + e.getMessage()); throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); @@ -240,8 +338,24 @@ public class WxEnergyServiceImpl implements WxEnergyService { @Override - public void setTimeIsDel(WxEnergyFeesTime record) { - wxEnergyFeesTimeMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel()); + public void timeDel(WxEnergyFeesTime record) { + wxEnergyFeesTimeMapper.deleteById(record.getId()); + wxEnergyFeesTimeShopMapper.deleteByTimeId(record.getId(),record.getTenantId()); + } + + @Override + public List getTimeShopNumber(WxEnergyFeesTime record) { + WxEnergyFeesTimeShop ts = new WxEnergyFeesTimeShop(); + ts.updateTenantInfo(record); + ts.setTimeId(record.getId()); + List shopIds = wxEnergyFeesTimeShopMapper.findShopIdList(ts); + if (null == shopIds || shopIds.size() <= 0 ) { + return null; + } + WxShop sq = new WxShop(); + sq.updateTenantInfo(record); + sq.setIds(shopIds); + return wxShopService.getShopNumberList(sq); } @@ -267,7 +381,7 @@ public class WxEnergyServiceImpl implements WxEnergyService { } return page; } - + @Override public void saveOrUpdateFees(WxEnergyFees record) { Date date = new Date(); @@ -299,7 +413,7 @@ public class WxEnergyServiceImpl implements WxEnergyService { } } } else { - WxEnergyFees fees = this.getFeesById(record); + WxEnergyFees fees = this.getFeesById(record.getId(),record.getTenantId()); if (null == fees) { throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "记录未查询到"); } @@ -341,13 +455,13 @@ public class WxEnergyServiceImpl implements WxEnergyService { } @Override - public WxEnergyFees getFeesById(WxEnergyFees record) { - return wxEnergyFeesMapper.selectById(record.getId(), record.getTenantId()); + public WxEnergyFees getFeesById(Long id,String tenantId) { + return wxEnergyFeesMapper.selectById(id, tenantId); } @Override public void setFeesIsDel(WxEnergyFees record) { - WxEnergyFees fees = this.getFeesById(record); + WxEnergyFees fees = this.getFeesById(record.getId(),record.getTenantId()); if (null == fees) { throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "记录未查询到"); } @@ -392,6 +506,98 @@ public class WxEnergyServiceImpl implements WxEnergyService { } } + @Override + public List getFeesCalcuteComponentList(WxEnergyFeesShop record) { + List retList = WxEnergyHelper.generateCalcuteComponent(); + //公共表,公摊总表,当前楼栋面积,当前楼层面积,总面积,店铺公摊系数 + WxEnergyMeter mq = new WxEnergyMeter(); + mq.updateTenantInfo(record); + List ptylist = new ArrayList(); + ptylist.add(EnumEnergyMeterPhysicsType.PUBLIC.getCode()); + ptylist.add(EnumEnergyMeterPhysicsType.SUMMARY.getCode()); + mq.setPhysicsTypeList(ptylist); + PageInfo 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 createFeesShop(WxEnergyFeesShop record) { + //新增关联 + final IdWorker idWorker = IdWorker.get(); + Date date = new Date(); + WxEnergyFees fees = this.getFeesById(record.getFeesId(),record.getTenantId()); + 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); + WxEnergyFeesShop msf = new WxEnergyFeesShop(); + msf.updateTenantInfo(record); + msf.setId(idWorker.nextId()); + msf.setCreateTime(date); + msf.setUpdateTime(date); + msf.setShopId(shopId); + msf.setIsPublic(fees.getIsPublic()); + msf.setFeesId(fees.getId()); + msf.setPrice(fees.getPrice()); + msf.setFormula(record.getFormula()); + msf.setFormulaContent(record.getFormulaContent()); + wxEnergyFeesShopMapper.insert(msf); + } + } + } + + @Override + public void deleteFeesShop(WxEnergyFeesShop record) { + wxEnergyFeesShopMapper.deleteById(record.getId()); + } + + @Override + public WxEnergyFeesShop getShopFeesCalcute(Long id,String tenantId) { + return wxEnergyFeesShopMapper.selectById(id,tenantId); + } + + @Override + public void saveOrUpdateShopFeesCalcute(WxEnergyFeesShop record) { + Date date = new Date(); + final IdWorker idWorker = IdWorker.get(); + if (record.getId() == null) { + record.setId(idWorker.nextId()); + record.setCreateTime(date); + record.setUpdateTime(date); + wxEnergyFeesShopMapper.insert(record); + }else { + record.setUpdateTime(date); + wxEnergyFeesShopMapper.updateById(record); + } + } + + @Override + public PageInfo feesShopListAsPage(WxEnergyFeesShop record, Integer pageIndex, Integer pageSize) { + PageInfo page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyFeesShopMapper.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 feesMap = this.getFeesMap(fq); + for (int i = 0 ; i < page.getList().size() ; i++) { + WxEnergyFeesShop 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 getAdvanceSetoffFeesids(WxEnergyFeesSetoff setoff) { return wxEnergyFeesSetoffMapper.findFeesIdList(setoff); @@ -406,30 +612,6 @@ public class WxEnergyServiceImpl implements WxEnergyService { public PageInfo readingListAsPage(WxEnergyMeterReading record, Integer pageIndex, Integer pageSize) { PageInfo page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxEnergyMeterReadingMapper.findList(record)); - if (null != page && null != page.getList()) { - WxEnergyFeesTime tq = new WxEnergyFeesTime(); - tq.updateTenantInfo(record); - Map timeMap = this.getTimeMap(tq); - Map buildingMap = wxMallBuildingService.getBuildingMap(record); - Map 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); - } - } - } return page; } @@ -467,51 +649,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().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) { @@ -526,24 +671,15 @@ 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 shopMap = wxShopService.findShopMap(sq); - List recordList = new ArrayList(); - 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) { + Map buildingMap = wxMallBuildingService.getBuildingMap(record); + Map floorMap = wxMallFloorService.getFloorMap(record); + WxShop shopq = new WxShop(); + shopq.updateTenantInfo(record); + shopq.setIsDel(EnumYesOrNo.NO.getCode()); + Map shopMap = wxShopService.findShopMap(shopq); + for (int i = 0 ; i < record.getMeterReadingList().size(); i ++) { + WxEnergyMeterReading r = record.getMeterReadingList().get(i); //获取上一次的数据 WxEnergyMeterReading pre = findPre(r); if (null != pre) { @@ -554,24 +690,53 @@ 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()); + r.setStartTime(record.getStartTime()); + r.setEndTime(record.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()); + //根据表查询所属 + WxEnergyMeterShopFloor sfq = new WxEnergyMeterShopFloor(); + sfq.updateTenantInfo(record); + sfq.setMeterId(meter.getId()); + List merterAliasList = wxEnergyMeterShopFloorMapper.findList(sfq); + StringBuffer shopname = new StringBuffer(""); + StringBuffer floorname = new StringBuffer(""); + StringBuffer buildingname = new StringBuffer(""); + if (null != merterAliasList) { + for (int j = 0 ; j < merterAliasList.size() ; j ++) { + WxEnergyMeterShopFloor msf = merterAliasList.get(j); + if(msf.getType() == EnumEnergyMeterShopFloorType.SHOP.getCode()) { + if (null != shopMap) { + WxShop shop = shopMap.get(msf.getAliseId()); + if (null != shop) { + shopname.append(shop.getShopNumber()).append(","); + } + } + }else if (msf.getType() == EnumEnergyMeterShopFloorType.FLOOR.getCode()) { + if (null != floorMap) { + String floor = floorMap.get(msf.getAliseId()); + if (StringUtils.isNotBlank(floor)) { + floorname.append(floor).append(","); + } + } + }else if (msf.getType() == EnumEnergyMeterShopFloorType.BUILDING.getCode()) { + if (null != buildingMap) { + String building = buildingMap.get(msf.getAliseId()); + if (StringUtils.isNotBlank(building)) { + buildingname.append(building).append(","); + } + } + } + } + } + r.setShopName(shopname.toString()); + r.setFloorName(floorname.toString()); + r.setBuildingName(buildingname.toString()); createReading(r, userInfo); } - } } } @@ -589,6 +754,63 @@ public class WxEnergyServiceImpl implements WxEnergyService { wxEnergyMeterReadingMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel()); } + @Override + public void exportReading(WxEnergyMeterReading record, HttpServletRequest request, HttpServletResponse response) { + List> execlList = new ArrayList>(); + WxEnergyMeterReading rq = new WxEnergyMeterReading(); + rq.updateTenantInfo(record); + //rq.setTimeId(tq.getId()); + PageInfo page = this.readingListAsPage(rq, 1, 10000); + if (null != page && null != page.getList()) { + for (int i = 0 ; i < page.getList().size(); i++) { + WxEnergyMeterReading r = page.getList().get(i); + execlList.add(r.generateExcelData()); + } + } + excelService.exportExcel(WxEnergyMeterReading.generateExcelTitle(),execlList, "抄表数据.xlsx","sheet1", response); + } + + @Override + public void importReading(MultipartFile mFile, MallUserInfo user, HttpServletRequest request, + HttpServletResponse response) { + File file = handlerImportFile(mFile,"energyReadingImport"); + // 需要验证 + Map excelTitle = WxEnergyMeterReading.generateExcelTitle(); + String[] needFields = new String[excelTitle.size()]; + int index = 0; + for (Iterator it = excelTitle.keySet().iterator(); it.hasNext();) { + String fi = excelTitle.get(it.next()); + needFields[index] = fi; + index = index + 1; + } + ExcelImportResult datalist = handleImportFile(file,Map.class,needFields,needFields,new ReadingExcelHandler()); + if (null == datalist) { + return ; + } + + List successList = datalist.getList(); + if(successList.size() > 0) { + boolean allSuccess = true; + try { + successList.parallelStream().forEach(reading -> { + String id = (String) reading.get("抄表数据编码"); + WxEnergyMeterReading r = new WxEnergyMeterReading(); + r.updateTenantInfo(user); + r.setId(Long.parseLong(id)); + r.setCurNumber((String)reading.get("本次抄表数")); + r.setStartTime(DateUtils.stringToDate((String)reading.get("开始日期"),DateUtils.DATE_TIME_PATTERN)); + r.setEndTime(DateUtils.stringToDate((String)reading.get("截止日期"),DateUtils.DATE_TIME_PATTERN)); + r.setUpdateBy(user.getId()); + r.setUpdateByName(user.getName()); + r.setUpdateTime(new Date()); + wxEnergyMeterReadingMapper.updateById(r); + }); + } catch (Exception e) { + logger.error("导入模板失败:"+e.getMessage(),e); + allSuccess = false; + } + } + } @@ -599,22 +821,16 @@ public class WxEnergyServiceImpl implements WxEnergyService { if (null != page && null != page.getList()) { WxEnergyFeesTime tq = new WxEnergyFeesTime(); tq.updateTenantInfo(record); - Map timeMap = this.getTimeMap(tq); WxEnergyFees fq = new WxEnergyFees(); fq.updateTenantInfo(record); Map fessMap = this.getFeesMap(fq); for (int i = 0 ; i < page.getList().size(); i++) { WxEnergyReadingCalcute c = page.getList().get(i); - if (null != timeMap) { - WxEnergyFeesTime time = timeMap.get(c.getTimeId()); - if (null != time) { - c.setTimeName(time.getName()); - } - } if (null != fessMap) { WxEnergyFees fees = fessMap.get(c.getFeesId()); if (null != fees) { c.setFeesName(fees.getName()); + c.setFeesPhysicsTypeName(null); } } } @@ -626,6 +842,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); @@ -634,8 +853,21 @@ public class WxEnergyServiceImpl implements WxEnergyService { record.setUpdateTime(date); record.setUpdateBy(userInfo.getId()); record.setUpdateByName(userInfo.getName()); + record.setShopSize(record.getShopIds().size()); + record.setShop(JSON.toJSONString(record.getShopIds())); try { - wxEnergyReadingCalcuteMapper.insert(record); +// wxEnergyReadingCalcuteMapper.insert(record); +// WxEnergyFees fees = this.getFeesById(record.getFeesId(),record.getTenantId()); +// if (fees.getIsPublic() == EnumYesOrNo.YES.getCode()) { +// +// }else { +// for (int i = 0 ; i < record.getShopIds().size() ; i ++) { +// Long shopId = record.getShopIds().get(i); +// WxEnergyReadingCalcuteResult cs = generateCalcuteResult(); +// wxEnergyReadingCalcuteResultMapper.insert(cs); +// } +// } + } catch (Exception e) { logger.error("保存租赁账单失败,e:" + e.getMessage()); throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); @@ -648,6 +880,51 @@ public class WxEnergyServiceImpl implements WxEnergyService { } } + public void generateUserTypeCalcuteResult(WxEnergyFees fees,WxEnergyReadingCalcute record,List shopIds) { +// for (int i = 0 ; i < shopIds.size(); i ++) { +// Long shopId= shopIds.get(i); +// //根据店铺,所属年月去查询时间区间.根据店铺,时间区间去查对应的抄表数据,根据表来计算总和 +// WxEnergyFeesTimeShop sq = new WxEnergyFeesTimeShop(); +// sq.updateTenantInfo(record); +// sq.setShopId(shopId); +// List timeIds = wxEnergyFeesTimeShopMapper.findTimeIdList(sq); +// if (null == timeIds || timeIds.size() <= 0 ) { +// return; +// } +// //一个年月,一个店铺应该只有一个周期 +// WxEnergyFeesTime tq = new WxEnergyFeesTime(); +// tq.updateTenantInfo(record); +// tq.setIds(timeIds); +// tq.setPeriod(record.getPeriod()); +// List timelist = wxEnergyFeesTimeMapper.findList(tq); +// if (null == timelist || timelist.size() <= 0 ) { +// return; +// } +// WxEnergyFeesTime time = timelist.get(0); +// +// //根据店铺查询计费标准 +// WxEnergyFeesShop csq = new WxEnergyFeesShop(); +// csq.updateTenantInfo(record); +// csq.setShopId(shopId); +// wxEnergyFeesCalcuteShopMapper.findCalcuteIdList(); +// +// //根据店铺去查询表 +// WxEnergyMeter mq = new WxEnergyMeter(); +// mq.updateTenantInfo(record); +// mq.setType(fees.getType()); +// mq.setPhysicsType(EnumEnergyMeterPhysicsType.USER.getCode()); +// List meterList = wxEnergyMeterMapper.findList(mq); +// +// WxEnergyReadingCalcuteResult cs = new WxEnergyReadingCalcuteResult(); +// cs.updateTenantInfo(record); +// cs.setId(idWorker.nextId()); +// cs.setCalcuteId(record.getId()); +// cs.setShopId(shopId); +// cs.setCreateTime(date); +// cs.setUpdateTime(date); +// } + } + @Override public WxEnergyReadingCalcute getReadingCalcuteById(WxEnergyReadingCalcute record) { return wxEnergyReadingCalcuteMapper.selectById(record.getId(), record.getTenantId()); @@ -655,37 +932,37 @@ public class WxEnergyServiceImpl implements WxEnergyService { @Override public void exportReadingCalcute(WxEnergyReadingCalcute record, HttpServletRequest request, HttpServletResponse response) { - WxEnergyFeesTime tq = new WxEnergyFeesTime(); - tq.updateTenantInfo(record); - tq.setId(record.getTimeId()); - WxEnergyFeesTime time = this.getFeesTimeById(tq); - if (null == time) { - return; - } - - WxEnergyFees fq = new WxEnergyFees(); - fq.updateTenantInfo(record); - fq.setId(record.getFeesId()); - WxEnergyFees fees = this.getFeesById(fq); - if (null == fees) { - return; - } - - Map buildingMap = wxMallBuildingService.getBuildingMap(record); - Map floorMap = wxMallFloorService.getFloorMap(record); - - List> execlList = new ArrayList>(); - WxEnergyMeterReading rq = new WxEnergyMeterReading(); - rq.updateTenantInfo(record); - rq.setTimeId(tq.getId()); - PageInfo page = this.readingListAsPage(rq, 1, 10000); - if (null != page && null != page.getList()) { - for (int i = 0 ; i < page.getList().size(); i++) { - WxEnergyMeterReading r = page.getList().get(i); - execlList.add(r.generateExcelData(buildingMap, floorMap, time, fees, record)); - } - } - excelService.exportExcel(WxEnergyMeterReading.generateExcelTitle(),execlList, "科目抄表_"+time.getName()+"_"+fees.getName()+".xlsx","sheet1", response); +// WxEnergyFeesTime tq = new WxEnergyFeesTime(); +// tq.updateTenantInfo(record); +// tq.setId(record.getTimeId()); +// WxEnergyFeesTime time = this.getFeesTimeById(tq); +// if (null == time) { +// return; +// } +// +// WxEnergyFees fq = new WxEnergyFees(); +// fq.updateTenantInfo(record); +// fq.setId(record.getFeesId()); +// WxEnergyFees fees = this.getFeesById(fq); +// if (null == fees) { +// return; +// } +// +// Map buildingMap = wxMallBuildingService.getBuildingMap(record); +// Map floorMap = wxMallFloorService.getFloorMap(record); +// +// List> execlList = new ArrayList>(); +// WxEnergyMeterReading rq = new WxEnergyMeterReading(); +// rq.updateTenantInfo(record); +// //rq.setTimeId(tq.getId()); +// PageInfo page = this.readingListAsPage(rq, 1, 10000); +// if (null != page && null != page.getList()) { +// for (int i = 0 ; i < page.getList().size(); i++) { +// WxEnergyMeterReading r = page.getList().get(i); +// execlList.add(r.generateExcelData(buildingMap, floorMap, time, fees, record)); +// } +// } +// excelService.exportExcel(WxEnergyMeterReading.generateExcelTitle(),execlList, "科目抄表_"+time.getName()+"_"+fees.getName()+".xlsx","sheet1", response); } private File handlerImportFile(MultipartFile mFile,String fileNamePre) { @@ -779,283 +1056,283 @@ public class WxEnergyServiceImpl implements WxEnergyService { @Override public void importReadingCalcute(MultipartFile mFile, MallUserInfo user, HttpServletRequest request, HttpServletResponse response) { - File file = handlerImportFile(mFile,"energyReading"); - // 需要验证 - Map excelTitle = WxEnergyMeterReading.generateExcelTitle(); - String[] needFields = new String[excelTitle.size()]; - int index = 0; - for (Iterator it = excelTitle.keySet().iterator(); it.hasNext();) { - String fi = excelTitle.get(it.next()); - needFields[index] = fi; - index = index + 1; - } - ExcelImportResult datalist = handleImportFile(file,Map.class,needFields,needFields,new ReadingExcelHandler()); - if (null == datalist) { - return ; - } - - List successList = datalist.getList(); - if(successList.size() > 0) { - boolean allSuccess = true; - String cuteId = (String)successList.get(0).get("编码"); - try { - successList.parallelStream().forEach(reading -> { - String id = (String) reading.get("抄表数据编码"); - WxEnergyMeterReading r = new WxEnergyMeterReading(); - r.updateTenantInfo(user); - r.setId(Long.parseLong(id)); - r.setPrice((String)reading.get("单价(*)")); - r.setCurNumber((String)reading.get("本次抄表数")); - r.setUpdateBy(user.getId()); - r.setUpdateByName(user.getName()); - r.setUpdateTime(new Date()); - wxEnergyMeterReadingMapper.updateById(r); - }); - } catch (Exception e) { - logger.error("导入模板失败:"+e.getMessage(),e); - allSuccess = false; - } - if (StringUtils.isNotBlank(cuteId)) { - WxEnergyReadingCalcute c= new WxEnergyReadingCalcute(); - c.updateTenantInfo(user); - c.setId(Long.parseLong(cuteId)); - c.setIsImported(EnumYesOrNo.YES.getCode()); - c.setUpdateTime(new Date()); - c.setUpdateBy(user.getId()); - c.setUpdateByName(user.getName()); - if (allSuccess) { - c.setImportSuccess(EnumYesOrNo.YES.getCode()); - }else { - c.setImportSuccess(EnumYesOrNo.NO.getCode()); - } - wxEnergyReadingCalcuteMapper.updateById(c); - } - - } +// File file = handlerImportFile(mFile,"energyReading"); +// // 需要验证 +// Map excelTitle = WxEnergyMeterReading.generateExcelTitle(); +// String[] needFields = new String[excelTitle.size()]; +// int index = 0; +// for (Iterator it = excelTitle.keySet().iterator(); it.hasNext();) { +// String fi = excelTitle.get(it.next()); +// needFields[index] = fi; +// index = index + 1; +// } +// ExcelImportResult datalist = handleImportFile(file,Map.class,needFields,needFields,new ReadingExcelHandler()); +// if (null == datalist) { +// return ; +// } +// +// List successList = datalist.getList(); +// if(successList.size() > 0) { +// boolean allSuccess = true; +// String cuteId = (String)successList.get(0).get("编码"); +// try { +// successList.parallelStream().forEach(reading -> { +// String id = (String) reading.get("抄表数据编码"); +// WxEnergyMeterReading r = new WxEnergyMeterReading(); +// r.updateTenantInfo(user); +// r.setId(Long.parseLong(id)); +// r.setPrice((String)reading.get("单价(*)")); +// r.setCurNumber((String)reading.get("本次抄表数")); +// r.setUpdateBy(user.getId()); +// r.setUpdateByName(user.getName()); +// r.setUpdateTime(new Date()); +// wxEnergyMeterReadingMapper.updateById(r); +// }); +// } catch (Exception e) { +// logger.error("导入模板失败:"+e.getMessage(),e); +// allSuccess = false; +// } +// if (StringUtils.isNotBlank(cuteId)) { +// WxEnergyReadingCalcute c= new WxEnergyReadingCalcute(); +// c.updateTenantInfo(user); +// c.setId(Long.parseLong(cuteId)); +// c.setIsImported(EnumYesOrNo.YES.getCode()); +// c.setUpdateTime(new Date()); +// c.setUpdateBy(user.getId()); +// c.setUpdateByName(user.getName()); +// if (allSuccess) { +// c.setImportSuccess(EnumYesOrNo.YES.getCode()); +// }else { +// c.setImportSuccess(EnumYesOrNo.NO.getCode()); +// } +// wxEnergyReadingCalcuteMapper.updateById(c); +// } +// +// } } private Map getFloorBuildingMoney(WxEnergyMeterReading reading,boolean isFloor) { - List list = null; - if (isFloor) { - list = wxEnergyMeterReadingMapper.findFloorSumMoney(reading); - }else { - wxEnergyMeterReadingMapper.findBuildingSumMoney(reading); - } - - if (null != list && list.size() > 0 ) { - Map buildinMap = new HashMap(); - for (int i = 0 ; i < list.size() ; i++) { - Map bup = list.get(i); - BigDecimal are = (BigDecimal)bup.get("money"); - if (null != are) { - buildinMap.put((Long)bup.get("building_id"), are.toPlainString()); - }else { - buildinMap.put((Long)bup.get("building_id"), "0"); - } - - } - return buildinMap; - } +// List list = null; +// if (isFloor) { +// list = wxEnergyMeterReadingMapper.findFloorSumMoney(reading); +// }else { +// wxEnergyMeterReadingMapper.findBuildingSumMoney(reading); +// } +// +// if (null != list && list.size() > 0 ) { +// Map buildinMap = new HashMap(); +// for (int i = 0 ; i < list.size() ; i++) { +// Map bup = list.get(i); +// BigDecimal are = (BigDecimal)bup.get("money"); +// if (null != are) { +// buildinMap.put((Long)bup.get("building_id"), are.toPlainString()); +// }else { +// buildinMap.put((Long)bup.get("building_id"), "0"); +// } +// +// } +// return buildinMap; +// } return null; } @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 readingList = wxEnergyMeterReadingMapper.findList(reading); - if (null != readingList && readingList.size() > 0 ) { - - WxShop sq = new WxShop(); - sq.updateTenantInfo(record); - Map shopMerchantMap = wxMerchantService.getShopMerchantMap(sq); - Map shopMap = wxShopService.findShopMap(sq); - - WxEnergyMeter mq = new WxEnergyMeter(); - mq.updateTenantInfo(record); - mq.setIsDel(EnumYesOrNo.NO.getCode()); - Map 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 buildingFloorMoney = null; - Map 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 billList = new ArrayList(); - 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 readingList = wxEnergyMeterReadingMapper.findList(reading); +// if (null != readingList && readingList.size() > 0 ) { +// +// WxShop sq = new WxShop(); +// sq.updateTenantInfo(record); +// Map shopMerchantMap = wxMerchantService.getShopMerchantMap(sq); +// Map shopMap = wxShopService.findShopMap(sq); +// +// WxEnergyMeter mq = new WxEnergyMeter(); +// mq.updateTenantInfo(record); +// mq.setIsDel(EnumYesOrNo.NO.getCode()); +// Map 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 buildingFloorMoney = null; +// Map 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 billList = new ArrayList(); +// 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; } @@ -1068,4 +1345,22 @@ public class WxEnergyServiceImpl implements WxEnergyService { wxEnergyReadingCalcuteMapper.setIsDel(record.getId(), record.getTenantId(), record.getIsDel()); } + @Override + public List getReadingCalcuteShopNumber(WxEnergyReadingCalcute record) { + if (StringUtils.isNotBlank(record.getShop())) { + JSONArray sj = JSON.parseArray(record.getShop()); + if (null != sj) { + List shopIds = new ArrayList(); + for (int i = 0 ; i < sj.size(); i++) { + shopIds.add(sj.getLong(i)); + } + WxShop sq = new WxShop(); + sq.updateTenantInfo(record); + sq.setIds(shopIds); + return wxShopService.getShopNumberList(sq); + } + } + return null; + } + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java index 3d0ccf1f6..d81d038f8 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java @@ -969,10 +969,7 @@ public class WxFinanceServiceImpl implements WxFinanceService { @Override public void createTempFees(WxAllBill record,MallUserInfo user) { - WxEnergyFees fq = new WxEnergyFees(); - fq.updateTenantInfo(record); - fq.setId(record.getEnergyFeesId()); - WxEnergyFees fees = wxEnergyService.getFeesById(fq) ; + WxEnergyFees fees = wxEnergyService.getFeesById(record.getEnergyFeesId(),record.getTenantId()) ; record.setBillType(fees.getBillType()); WxMerchant merchant = wxMerchantService.selectById(record.getMerchantId()); if (fees.getBillType().intValue() == EnumBillAllType.ADVANCE.getCode().intValue()) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMallBuildingServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMallBuildingServiceImpl.java index f14959eb8..cadfe0239 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMallBuildingServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMallBuildingServiceImpl.java @@ -183,6 +183,33 @@ public class WxMallBuildingServiceImpl implements WxMallBuildingService { return new ResultData(wxMallBuildings); } + + @Override + public ResultData getBuildingList(WxMallBuilding wxMallBuilding,MallUserInfo mallUser) { + List wxMallBuildings = new ArrayList(); + if (null != mallUser && null != wxMallBuilding.getFloorForRule()) { + WxMallFloor wf = new WxMallFloor(); + wf.updateTenantInfo(mallUser); + wf.setFloorForRule(wxMallBuilding.getFloorForRule()); + List bids = wxMallFloorMapper.getBuildindIds(wf); + if (null == bids || bids.size() <= 0 ) { + wxMallBuilding.setId(-1L); + }else { + wxMallBuilding.setIds(bids); + } + } + List buildings = wxMallBuildingMapper.findList(wxMallBuilding); + wxMallBuildings = buildings.stream().map(b -> { + WxMallBuilding tempb = new WxMallBuilding(); + tempb.setId(b.getId()); + tempb.setTenantId(b.getTenantId()); + tempb.setParentTenantId(b.getParentTenantId()); + tempb.setName(b.getName()); + tempb.setBuildingName(b.getBuildingName()); + return tempb; + }).collect(Collectors.toList()); + return new ResultData(wxMallBuildings); + } @Override public void addBuildingAndFloors(WxMallBuildingFloorDto record) { @@ -257,5 +284,9 @@ public class WxMallBuildingServiceImpl implements WxMallBuildingService { return maps; } + @Override + public List getBuildingIdList(WxMallBuilding wxMallBuilding) { + return wxMallBuildingMapper.findIdList(wxMallBuilding); + } } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMallFloorServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMallFloorServiceImpl.java index b1ff649fb..ea351486c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMallFloorServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMallFloorServiceImpl.java @@ -69,6 +69,11 @@ public class WxMallFloorServiceImpl implements WxMallFloorService { List list = wxMallFloorMapper.findList(wxMallFloor); return new ResultData(list); } + + @Override + public List getFloorIdList(WxMallFloor record) { + return wxMallFloorMapper.getFloorIds(record); + } @Override public void deleteByBuildingId(Long buildingId) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java index e7fb992bb..f74007b75 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java @@ -97,7 +97,7 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity handlerRecordQuery(wxOfflineActivityRecord); WxOfflineActivityRecord limitOne = wxOfflineActivityRecordMapper.selectLimitOne(wxOfflineActivityRecord); Map result = new HashMap<>(); - Integer audting = 0, audi_success = 0, audt_fail = 0; + Integer audting = 0, audi_success = 0, audt_fail = 0,invalid = 0; BigDecimal sum_success = BigDecimal.ZERO, sum_fail = BigDecimal.ZERO; if (limitOne == null) { result.put("cus_name","查无此人"); @@ -116,6 +116,8 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity sum_success = statistics.getSumMoney(); } else if (EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(statistics.getAuditStatus())) { audt_fail = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.INVALID.getCode().equals(statistics.getAuditStatus())) { + invalid = statistics.getCount(); } } } @@ -124,7 +126,8 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity result.put("audi_success",audi_success); result.put("sum_success",sum_success); result.put("audt_fail",audt_fail); - result.put("sum_count",audting+audi_success+audt_fail); + result.put("invalid",invalid); + result.put("sum_count",audting+audi_success+audt_fail+invalid); return result; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityRecordServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityRecordServiceImpl.java index e43a5c69f..5772d7fd2 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityRecordServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityRecordServiceImpl.java @@ -4,11 +4,13 @@ import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.iformall.common.IdWorker; +import com.iformall.common.Result; import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.vo.OfflineActivityRecordStatistics; import com.iformall.enums.EnumOfflineActivityRecordStatus; import com.iformall.enums.EnumYesOrNo; +import com.iformall.exception.MallinkException; import com.iformall.mapper.WxMerchantMapper; import com.iformall.mapper.WxOfflineActivityGrantAwardMapper; import com.iformall.mapper.WxOfflineActivityRecordGrantMapper; @@ -166,6 +168,10 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco wxOfflineActivityRecordMapper.insert(wxOfflineActivityRecord); } else{ + WxOfflineActivityRecord record = wxOfflineActivityRecordMapper.selectById(wxOfflineActivityRecord.getId()); + if(!EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(record.getAuditStatus())){ + throw new MallinkException(Result.ERROR,"订单状态不允许修改"); + } wxOfflineActivityRecord.setAuditRemark(""); wxOfflineActivityRecord.setAuditStatus(EnumOfflineActivityRecordStatus.AUDTING.getCode()); wxOfflineActivityRecord.setUpdateDate(now); @@ -192,7 +198,7 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco public Map getStatistics(WxOfflineActivityRecord wxOfflineActivityRecord) { List auditStatusStatistics = wxOfflineActivityRecordMapper.auditStatusStatistics(wxOfflineActivityRecord); Map result = new HashMap<>(); - Integer audting = 0, audi_success = 0, audt_fail = 0; + Integer audting = 0, audi_success = 0, audt_fail = 0, invalid = 0; for(OfflineActivityRecordStatistics statistics : auditStatusStatistics){ if(EnumOfflineActivityRecordStatus.AUDTING.getCode().equals(statistics.getAuditStatus())){ audting = statistics.getCount(); @@ -200,12 +206,15 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco audi_success = statistics.getCount(); } else if (EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(statistics.getAuditStatus())) { audt_fail = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.INVALID.getCode().equals(statistics.getAuditStatus())) { + invalid = statistics.getCount(); } } result.put("audting",audting); result.put("audi_success",audi_success); result.put("audt_fail",audt_fail); - result.put("sum_count",audting+audi_success+audt_fail); + result.put("invalid",invalid); + result.put("sum_count",audting+audi_success+audt_fail+invalid); return result; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityServiceImpl.java index 9813fa9b7..29a9790fe 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityServiceImpl.java @@ -89,7 +89,7 @@ public class WxOfflineActivityServiceImpl implements WxOfflineActivityService{ wxOfflineActivityRecord.setNotMerchantIdList(merchantIds); } List auditStatusStatistics = wxOfflineActivityRecordMapper.auditStatusStatistics(wxOfflineActivityRecord); - Integer audting = 0, audi_success = 0, audt_fail = 0; + Integer audting = 0, audi_success = 0, audt_fail = 0, invalid = 0; for(OfflineActivityRecordStatistics statistics : auditStatusStatistics){ if(EnumOfflineActivityRecordStatus.AUDTING.getCode().equals(statistics.getAuditStatus())){ audting = statistics.getCount(); @@ -97,9 +97,11 @@ public class WxOfflineActivityServiceImpl implements WxOfflineActivityService{ audi_success = statistics.getCount(); } else if (EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(statistics.getAuditStatus())) { audt_fail = statistics.getCount(); + }else if (EnumOfflineActivityRecordStatus.INVALID.getCode().equals(statistics.getAuditStatus())) { + invalid = statistics.getCount(); } } - activity.setRecordCount(audting+audi_success+audt_fail); + activity.setRecordCount(audting+audi_success+audt_fail+invalid); activity.setWaitRecordCount(audting); activity.setSuccessRecordCount(audi_success); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java index 3eaa0dfdf..e89dbece1 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java @@ -798,4 +798,9 @@ public class WxShopServiceImpl implements WxShopService { merchantShopQ.setShopIdList(shopIds); return wxMerchantShopMapper.findMerchantIdList(merchantShopQ); } + + @Override + public List getShopNumberList(WxShop wxShop) { + return wxShopMapper.findShopNumberList(wxShop); + } } diff --git a/mallinkService/src/main/java/com/iformall/service/util/CouponCacheUtils.java b/mallinkService/src/main/java/com/iformall/service/util/CouponCacheUtils.java index bca0e6cc3..51e22e3f8 100644 --- a/mallinkService/src/main/java/com/iformall/service/util/CouponCacheUtils.java +++ b/mallinkService/src/main/java/com/iformall/service/util/CouponCacheUtils.java @@ -182,4 +182,9 @@ public class CouponCacheUtils { return RedisCacheUtils.getCacheObject(template, key,WxCouponCVo.class); } + public static void removeOldCouponOrderHtmlCache(RedisTemplate template) { + String key = EnumCacheKey.OLD_COUPORDER_HTML.getMessage(); + RedisCacheUtils.removeCachePrefix(template, key); + } + } diff --git a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml index 4668361d7..c212cdcfe 100644 --- a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml @@ -226,7 +226,7 @@ sum(CAST(ifnull(pay,'0') AS DECIMAL(20,2))) paid, min(starttime) min_date, max(endtime) max_date, - sum(CAST(ifnull(set_off,'0)' AS DECIMAL(20,2))) set_off , + sum(CAST(ifnull(set_off,'0') AS DECIMAL(20,2))) set_off , sum(CAST(ifnull(return_pay,'0') AS DECIMAL(20,2))) return_pay from wx_all_bill diff --git a/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml index 42494fe48..886937e9b 100644 --- a/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxEnergyFeesMapper.xml @@ -10,7 +10,6 @@ - @@ -19,11 +18,12 @@ + - `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`price`,`public_calcute`,`type`,`bill_type`,`is_system`, - `fixed_price`,`calcute_unit`,`time_unit`,`tax_rate`,`is_despoit` + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`price`,`type`,`bill_type`,`is_system`, + `fixed_price`,`calcute_unit`,`time_unit`,`tax_rate`,`is_despoit`,`is_public` @@ -36,7 +36,6 @@ and `parent_tenant_id` = #{parentTenantId} and `is_del` = #{isDel} - and `public_calcute` = #{publicCalcute} and `type` = #{type} and `bill_type` = #{billType} and `bill_type` != 6 @@ -46,6 +45,7 @@ and `time_unit` = #{timeUnit} and name like concat('%', #{name},'%') and `is_despoit` = #{isDespoit} + and `is_public` = #{isPublic} and bill_type in diff --git a/mallinkService/src/main/resources/mapper/WxEnergyFeesShopMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyFeesShopMapper.xml new file mode 100644 index 000000000..e4b097e81 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxEnergyFeesShopMapper.xml @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`price`,`is_public`,`formula`,`formula_content`,`shop_id`,`fees_id` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `fees_id` = #{feesId} + and `shop_id` = #{shopId} + and `is_public` = #{isPublic} + + and shop_id in + + #{sidItem} + + + + and fees_id in + + #{fidItem} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxEnergyFeesTimeMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyFeesTimeMapper.xml index 6e0b9dac1..646248a6e 100644 --- a/mallinkService/src/main/resources/mapper/WxEnergyFeesTimeMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxEnergyFeesTimeMapper.xml @@ -7,15 +7,15 @@ - - + + - `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`type`,`start_time`,`end_time` + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`type`,`start_time`,`end_time`,`period`,`shop_size` @@ -27,9 +27,10 @@ and `parent_tenant_id` = #{parentTenantId} - and `is_del` = #{isDel} + + and `period` = #{period} + and `type` = #{type} - and name like concat('%', #{name},'%') and id in diff --git a/mallinkService/src/main/resources/mapper/WxEnergyFeesTimeShopMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyFeesTimeShopMapper.xml new file mode 100644 index 000000000..1cb362428 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxEnergyFeesTimeShopMapper.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`period`,`time_id`,`shop_id`,`type` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `period` = #{period} + + and `type` = #{type} + and `time_id` = #{timeId} + and `shop_id` = #{shopId} + + and shop_id in + + #{sidItem} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + + delete from wx_energy_fees_time_shop where `tenant_id` = #{tenantId} and `time_id` = #{timeId} + + + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxEnergyMeterChildMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyMeterChildMapper.xml new file mode 100644 index 000000000..2ed1c631d --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxEnergyMeterChildMapper.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`parent_meter_id`,`child_meter_id` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `parent_meter_id` = #{parentMeterId} + and `child_meter_id` = #{childMeterId} + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + + delete from wx_energy_meter_child where `tenant_id` = #{tenantId} and `parent_meter_id` = #{parentMeterId} and `child_meter_id` = #{childMeterId} + + + + diff --git a/mallinkService/src/main/resources/mapper/WxEnergyMeterMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyMeterMapper.xml index 9d1d55ddf..525f1ef8a 100644 --- a/mallinkService/src/main/resources/mapper/WxEnergyMeterMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxEnergyMeterMapper.xml @@ -11,15 +11,12 @@ - - - - + - `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`type`,`rate`,`is_public`,`building_id`,`floor_id`,`shop_id`,`shop_type` + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`is_del`,`name`,`type`,`rate`,`physics_type`,`shop_type` @@ -33,24 +30,15 @@ and `is_del` = #{isDel} and `type` = #{type} - and `is_public` = #{isPublic} - and `building_id` = #{buildingId} - and `floor_id` = #{floorId} - and `shop_id` = #{shopId} + and `physics_type` = #{physicsType} and `shop_type` = #{shopType} and name like concat('%', #{name},'%') - - and `floor_id` in (${floorForRule}) - - - and `shop_type` in (${shopTypeForRule}) - - - and shop_id in - - #{sidItem} + + and physics_type in + + #{ptidItem} - + and id in diff --git a/mallinkService/src/main/resources/mapper/WxEnergyMeterReadingMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyMeterReadingMapper.xml index b635c3190..05e78d647 100644 --- a/mallinkService/src/main/resources/mapper/WxEnergyMeterReadingMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxEnergyMeterReadingMapper.xml @@ -19,23 +19,19 @@ - - - - - - - + + + `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`,`is_del`,`building_name`,`floor_name`,`shop_name` @@ -48,15 +44,9 @@ and `parent_tenant_id` = #{parentTenantId} and `create_by` = #{createBy} - and `time_id` = #{timeId} and `meter_id` = #{meterId} and `meter_type` = #{meterType} - and `is_public` = #{isPublic} and meter_name like concat('%', #{meterName},'%') - and `shop_id` = #{shopId} - and shop_number like concat('%', #{shopNumber},'%') - and `building_id` = #{buildingId} - and `floor_id` = #{floorId} and `is_del` = #{isDel} and create_by_name like concat('%', #{createByName},'%') @@ -87,26 +77,6 @@ from wx_energy_meter_reading where id = #{id} and `tenant_id` = #{tenantId} - - - - - - update wx_energy_meter_reading set is_del = #{isDel} where id = #{id} and `tenant_id` = #{tenantId} diff --git a/mallinkService/src/main/resources/mapper/WxEnergyMeterShopFloorMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyMeterShopFloorMapper.xml new file mode 100644 index 000000000..78a11d049 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxEnergyMeterShopFloorMapper.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`type`,`meter_id`,`alise_id` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `type` = #{type} + and `meter_id` = #{meterId} + and `alise_id` = #{aliseId} + + and type in + + #{tidItem} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + + + + delete from wx_energy_meter_shop_floor where `tenant_id` = #{tenantId} and type = #{type} and alise_id = #{aliseId} and meter_id = #{meterId} + + + + diff --git a/mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteMapper.xml index 14d00a665..dae00949d 100644 --- a/mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteMapper.xml @@ -11,19 +11,19 @@ - - + + - - + + `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`,`period`,`fees_id`,`is_calcuted`,`calcute_success`,`is_del`,`shop_size`,`shop` @@ -35,14 +35,20 @@ and `parent_tenant_id` = #{parentTenantId} + + and `period` = #{period} + and `create_by` = #{createBy} - and `time_id` = #{timeId} and `fees_id` = #{feesId} and `is_calcuted` = #{isCalcuted} - and `is_imported` = #{isImported} - and `import_success` = #{importSuccess} and `calcute_success` = #{calcuteSuccess} - and `is_del` = #{isDel} + and `is_del` = #{isDel} + + and fees_id in + + #{fidItem} + + and id in diff --git a/mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteResultMapper.xml b/mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteResultMapper.xml new file mode 100644 index 000000000..34e7d5bd6 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxEnergyReadingCalcuteResultMapper.xml @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`calcute_id`,`shop_id`,`fees_id`,`fees_calcute_id`,`meter_id`,`reading_id`,`money` + + + + where 1=1 + and `id` = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + and `calcute_id` = #{calcuteId} + and `shop_id` = #{shopId} + and `fees_id` = #{feesId} + and `fees_calcute_id` = #{feesCalcuteId} + and `meter_id` = #{meterId} + and `reading_id` = #{readingId} + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxMallBuildingMapper.xml b/mallinkService/src/main/resources/mapper/WxMallBuildingMapper.xml index abaf69301..e55ea5e46 100644 --- a/mallinkService/src/main/resources/mapper/WxMallBuildingMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMallBuildingMapper.xml @@ -73,7 +73,12 @@ from wx_mall_building - + + delete from wx_mall_building where `tenant_id` = #{tenantId} diff --git a/mallinkService/src/main/resources/mapper/WxMallFloorMapper.xml b/mallinkService/src/main/resources/mapper/WxMallFloorMapper.xml index d1f26d4d5..e9c4d0c0c 100644 --- a/mallinkService/src/main/resources/mapper/WxMallFloorMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMallFloorMapper.xml @@ -63,7 +63,12 @@ and `id` in (${floorForRule}) - + + and building_id in + + #{bidItem} + + and id in @@ -79,6 +84,12 @@ from wx_mall_floor + + diff --git a/mallinkService/src/main/resources/mapper/WxShopMapper.xml b/mallinkService/src/main/resources/mapper/WxShopMapper.xml index 272bbd252..b14ab3b73 100644 --- a/mallinkService/src/main/resources/mapper/WxShopMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxShopMapper.xml @@ -677,5 +677,10 @@ GROUP BY `status`; + +