diff --git a/demo/src/main/java/com/example/demo/demos/web/controller/BasicController.java b/demo/src/main/java/com/example/demo/demos/web/controller/BasicController.java index c48f10c..25a45ef 100644 --- a/demo/src/main/java/com/example/demo/demos/web/controller/BasicController.java +++ b/demo/src/main/java/com/example/demo/demos/web/controller/BasicController.java @@ -86,6 +86,16 @@ public class BasicController { return response; } + @PostMapping("/getElePriceFromBill") + @ResponseBody + public Object getElePriceFromBill(@RequestBody ElePriceInfoModel model) { + Object response = new Object(); + log.info("获取电费电价信息入参:model:{}", JSON.toJSONString(model)); + response = basicService.getElePriceFromBill(model); + log.info("获取电费电价返回:{}", JSON.toJSONString(response)); + return response; + } + // http://127.0.0.1:8080/user @RequestMapping("/user") @ResponseBody diff --git a/demo/src/main/java/com/example/demo/model/ElePriceInfoModel.java b/demo/src/main/java/com/example/demo/model/ElePriceInfoModel.java index fa8eee5..c1f64cd 100644 --- a/demo/src/main/java/com/example/demo/model/ElePriceInfoModel.java +++ b/demo/src/main/java/com/example/demo/model/ElePriceInfoModel.java @@ -15,4 +15,5 @@ public class ElePriceInfoModel { private String elecType; private String startTime; private String endTime; + private String elecNumber; } diff --git a/demo/src/main/java/com/example/demo/service/BasicService.java b/demo/src/main/java/com/example/demo/service/BasicService.java index 3821461..88d5ef1 100644 --- a/demo/src/main/java/com/example/demo/service/BasicService.java +++ b/demo/src/main/java/com/example/demo/service/BasicService.java @@ -3,8 +3,6 @@ package com.example.demo.service; import com.example.demo.model.ElePriceInfoModel; import com.example.demo.model.ElecBindInfoModel; import com.example.demo.model.Response; -import org.springframework.stereotype.Service; -import org.springframework.web.bind.annotation.RequestBody; import java.util.Map; @@ -18,4 +16,6 @@ public interface BasicService { Object getBindingInfo(ElecBindInfoModel model); Object getElePriceInfo(ElePriceInfoModel model); + + Object getElePriceFromBill(ElePriceInfoModel param); } diff --git a/demo/src/main/java/com/example/demo/service/impl/BasicServiceImpl.java b/demo/src/main/java/com/example/demo/service/impl/BasicServiceImpl.java index c3bbaa1..918e303 100644 --- a/demo/src/main/java/com/example/demo/service/impl/BasicServiceImpl.java +++ b/demo/src/main/java/com/example/demo/service/impl/BasicServiceImpl.java @@ -1,5 +1,6 @@ package com.example.demo.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.example.demo.constant.EleConstant; import com.example.demo.constant.StaConstant; @@ -16,6 +17,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; @Slf4j @Service @@ -128,6 +130,25 @@ public class BasicServiceImpl implements BasicService { return result; } + @Override + public Object getElePriceFromBill(ElePriceInfoModel param) { + // 处理时间 + String startTime = param.getStartTime().replace("-",""); + String endTime = param.getEndTime().replace("-",""); + List electricityBills = electricityBillMapper.selectList( + new LambdaQueryWrapper() + .eq(ElectricityBill::getElectricityUserNumber, param.getElecNumber()) + .between(ElectricityBill::getStatementDate, startTime, endTime)); + List> list = electricityBills.stream().map(e -> { + Map priceMap = new HashMap<>(); + priceMap.put("price", e.getImplementElectricityPrices()); + String date = e.getStatementDate().replaceAll("(\\d{4})(\\d{2})", "$1-$2"); + priceMap.put("date", date); + return priceMap; + }).collect(Collectors.toList()); + return list; + } + private void analysisKeyWord(String keyWord,TypeAndQuery typeAndQuery){ int querySymbol = 0; String type = EleConstant.LINE_TYPE_BG;