Pārlūkot izejas kodu

add getAoidDailyYieldInfoPage

Lloyd 3 gadi atpakaļ
vecāks
revīzija
b299a4a1e4

+ 8 - 0
src/main/java/com/gct/aoid/controller/AoidDailyYieldController.java

@@ -1,6 +1,7 @@
1 1
 package com.gct.aoid.controller;
2 2
 
3 3
 
4
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
4 5
 import com.gct.aoid.entity.Vo.AoidYeildVo;
5 6
 import com.gct.aoid.service.AoidDailyYieldService;
6 7
 import com.gct.common.core.result.Result;
@@ -38,5 +39,12 @@ public class AoidDailyYieldController {
38 39
         List<Map<String, Object>> list =   aoidDailyYieldService.getAoidDailyYieldInfoByWellIdAndPorDatePeriod(aoidYeildVo.getWellId(), aoidYeildVo.getStartDate());
39 40
         return list==null||list.size()==0?Result.error("未找到"):Result.ok(list);
40 41
     }
42
+
43
+    @ApiOperation(value = "根据井号和日期时间段查询量液的每日基本信息page" ,notes = "根据井号和日期时间段查询量液的每日基本信息")
44
+    @PostMapping("/getAoidDailyYieldInfoPage")
45
+    public Result getAoidDailyYieldInfoByWellIdAndPorDatePeriodPage(@RequestBody AoidYeildVo aoidYeildVo){
46
+        Page<Map<String, Object>> page =   aoidDailyYieldService.getAoidDailyYieldInfoByWellIdAndPorDatePeriodByPage(aoidYeildVo.getWellId(), aoidYeildVo.getStartDate(),aoidYeildVo.getSize(),aoidYeildVo.getPage());
47
+        return page ==null|| page.getRecords().size()==0?Result.error("未找到"):Result.ok(page);
48
+    }
41 49
 }
42 50
 

+ 6 - 1
src/main/java/com/gct/aoid/service/AoidDailyYieldService.java

@@ -1,5 +1,6 @@
1 1
 package com.gct.aoid.service;
2 2
 
3
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
3 4
 import com.gct.aoid.entity.AoidDailyYield;
4 5
 import com.baomidou.mybatisplus.extension.service.IService;
5 6
 import com.gct.common.core.result.Result;
@@ -29,4 +30,8 @@ public interface AoidDailyYieldService extends IService<AoidDailyYield> {
29 30
 
30 31
 
31 32
     List<Map<String, Object>> getAoidDailyYieldInfoByWellIdAndPorDatePeriod(String wellId, String startDate);
32
-}
33
+
34
+
35
+    Page<Map<String,Object>> getAoidDailyYieldInfoByWellIdAndPorDatePeriodByPage(String wellId, String startDate, int pageSize, int pageNum);
36
+
37
+    }

+ 22 - 1
src/main/java/com/gct/aoid/service/impl/AoidDailyYieldServiceImpl.java

@@ -3,6 +3,7 @@ package com.gct.aoid.service.impl;
3 3
 import com.alibaba.fastjson.JSONObject;
4 4
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
5 5
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
6
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 7
 import com.gct.aoid.entity.AoidDailyYield;
7 8
 import com.gct.aoid.feignclient.BaseDataClient;
8 9
 import com.gct.aoid.mapper.AoidDailyYieldMapper;
@@ -70,8 +71,28 @@ public class AoidDailyYieldServiceImpl extends ServiceImpl<AoidDailyYieldMapper,
70 71
         for (Map<String, Object> map : maps) {
71 72
             String date = map.get("prod_date").toString().substring(0, 10);
72 73
             String time = map.get("prod_date").toString().substring(11, 19);
73
-            map.put("prod_date",date+" "+time);
74
+//            map.put("prod_date",date+" "+time);
75
+            map.put("prod_date",date);
74 76
         }
75 77
         return maps;
76 78
     }
79
+    public Page<Map<String,Object>> getAoidDailyYieldInfoByWellIdAndPorDatePeriodByPage(String wellId, String startDate,int pageSize,int pageNum){
80
+        startDate = startDate+" 00:00:00";
81
+        LocalDateTime localDateTime = LocalDateTime.parse(startDate, df);
82
+        LocalDateTime localDateTime1 = localDateTime.plusDays(1);
83
+        String end = localDateTime1.format(df);
84
+        QueryWrapper<AoidDailyYield> wrapper = new QueryWrapper<>();
85
+        LambdaQueryWrapper<AoidDailyYield> queryWrapper = wrapper.lambda().eq(AoidDailyYield::getWellId, wellId).
86
+                ge(AoidDailyYield::getProdDate, Timestamp.valueOf(LocalDateTime.parse(startDate,df))).
87
+                le(AoidDailyYield::getProdDate,Timestamp.valueOf(LocalDateTime.parse(end,df))).orderByAsc(AoidDailyYield::getProdDate);
88
+        Page<Map<String,Object>> paramPage = new Page<>(pageNum,pageSize);
89
+        Page<Map<String, Object>> mapPage = aoidDailyYieldMapper.selectMapsPage(paramPage, queryWrapper);
90
+        for (Map<String, Object> map : mapPage.getRecords()) {
91
+            String date = map.get("prod_date").toString().substring(0, 10);
92
+            String time = map.get("prod_date").toString().substring(11, 19);
93
+//            map.put("prod_date",date+" "+time);
94
+            map.put("prod_date",date);
95
+        }
96
+        return mapPage;
97
+    }
77 98
 }