From e63c532ea03fd05855a21744a559b25b0363453d Mon Sep 17 00:00:00 2001 From: Jay <csj123456> Date: 星期四, 23 一月 2025 11:05:15 +0800 Subject: [PATCH] 修改查询和新增电价时段表的逻辑 --- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ElectricityPriceSegmentedServiceImpl.java | 34 ++++++++++++++++++++++++---------- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ElectricityPriceSegmentedService.java | 2 ++ iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java | 4 ++-- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java | 5 +++-- 4 files changed, 31 insertions(+), 14 deletions(-) diff --git a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java index b98dd72..108b0b1 100644 --- a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java +++ b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java @@ -117,10 +117,10 @@ @GetMapping(PREFIX + "/electricityPrice/list") @Operation(summary = "电价时段配置列表") - List<ElectricityPriceSegmentedDTO> getElectricityPriceList(@RequestParam String year); + List<ElectricityPriceSegmentedDTO> getElectricityPriceList(@RequestParam("year") String year); @PostMapping(PREFIX + "/electricityPrice/create") @Operation(summary = "添加电价时段配置列表") - Boolean createElectricityPrice(@RequestBody ElectricityPriceSegmentedDTO dto); + Boolean createElectricityPrice(@RequestBody List<ElectricityPriceSegmentedDTO> list); } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java index 4f8e690..b862c7c 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java @@ -738,8 +738,9 @@ } @Override - public Boolean createElectricityPrice(ElectricityPriceSegmentedDTO dto) { - electricityPriceSegmentedService.create(dto); + public Boolean createElectricityPrice(List<ElectricityPriceSegmentedDTO> list) { + electricityPriceSegmentedService.deleteByITimeId(list.get(0).getITimeId()); + list.forEach(dto -> electricityPriceSegmentedService.create(dto)); return true; } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ElectricityPriceSegmentedService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ElectricityPriceSegmentedService.java index beb8dd5..2efb6ce 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ElectricityPriceSegmentedService.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ElectricityPriceSegmentedService.java @@ -25,6 +25,8 @@ void delete(String id); + void deleteByITimeId(String iTimeId); + List<ElectricityPriceSegmentedDTO> getElectricityPriceList(String year); List<ElectricityPriceSegmentedDTO> getElectricityPriceListByTime(ElectricityPriceSegmentedDTO dto); diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ElectricityPriceSegmentedServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ElectricityPriceSegmentedServiceImpl.java index a78ff63..d4fac7b 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ElectricityPriceSegmentedServiceImpl.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ElectricityPriceSegmentedServiceImpl.java @@ -38,13 +38,10 @@ @Override public void create(ElectricityPriceSegmentedDTO dto) { - List<ElectricityPriceSegmentedDTO> list = getElectricityPriceListByTime(dto); - if (CollectionUtils.isEmpty(list)){ - ElectricityPriceSegmentedEntity entity = ConvertUtils.sourceToTarget(dto, ElectricityPriceSegmentedEntity.class); - entity.setId(UUID.randomUUID().toString()); - entity.setCreateTime(new Date()); - baseDao.insert(entity); - } + ElectricityPriceSegmentedEntity entity = ConvertUtils.sourceToTarget(dto, ElectricityPriceSegmentedEntity.class); + entity.setId(UUID.randomUUID().toString()); + entity.setCreateTime(new Date()); + baseDao.insert(entity); } @Override @@ -66,10 +63,27 @@ } @Override - public List<ElectricityPriceSegmentedDTO> getElectricityPriceList(String year) { + public void deleteByITimeId(String iTimeId) { QueryWrapper<ElectricityPriceSegmentedEntity> wrapper = new QueryWrapper<>(); - wrapper.eq(StringUtils.isNotBlank(year), "year", year); - return ConvertUtils.sourceToTarget(baseDao.selectList(wrapper), ElectricityPriceSegmentedDTO.class); + wrapper.eq(StringUtils.isNotBlank(iTimeId), "i_time_id", iTimeId); + baseDao.delete(wrapper); + } + + @Override + public List<ElectricityPriceSegmentedDTO> getElectricityPriceList(String year) { + List<ElectricityPriceSegmentedDTO> result = new ArrayList<>(); + QueryWrapper<ElectricityPriceSegmentedEntity> wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(year), "year", year) + .orderByDesc( "create_time"); + List<ElectricityPriceSegmentedEntity> list = baseDao.selectList(wrapper); + if(CollectionUtils.isNotEmpty(list)){ + String itimeId = list.get(0).getITimeId(); + QueryWrapper<ElectricityPriceSegmentedEntity> wrapper1 = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(itimeId), "i_time_id", itimeId) + .orderByDesc( "create_time"); + result = ConvertUtils.sourceToTarget(baseDao.selectList(wrapper1), ElectricityPriceSegmentedDTO.class); + } + return result; } @Override -- Gitblit v1.9.3