فهرست منبع

油井测量参数、泵参数、计算参数增加查询历史数据接口

chenwen 1 سال پیش
والد
کامیت
5af722cc3e

+ 55 - 0
src/main/java/com/hb/proj/analysis/controller/ProduceParamController.java

@@ -1,10 +1,13 @@
 package com.hb.proj.analysis.controller;
 
+import java.util.Date;
+
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import com.hb.proj.allconfig.AccessToken;
@@ -15,6 +18,7 @@ import com.hb.proj.model.WellMeasurePO;
 import com.hb.proj.model.WellPumpPO;
 import com.hb.proj.utils.RespVO;
 import com.hb.proj.utils.RespVOBuilder;
+import com.hb.xframework.dao.util.PageModel;
 import com.hb.xframework.util.MapUtils;
 
 import jakarta.validation.constraints.NotBlank;
@@ -30,6 +34,47 @@ public class ProduceParamController {
 	@Autowired
 	private RedisTemplate<String,Object> redisTemplate;
 	
+	
+	
+	/**
+	 * 分页查询测量数据
+	 */
+	@RequestMapping("/queryMeasureParam")
+	public RespVO<PageModel<WellMeasurePO>> queryMeasureParam(@NotBlank(message="缺少井号") String wellId,
+			Date startTime,Date endTime,
+			@RequestParam(value = "currentPage", defaultValue = "1") Integer pageNum,
+			@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize) {
+		
+		return RespVOBuilder.ok(service.queryMeasureParam(wellId,startTime,endTime, pageNum, pageSize));
+	}
+	
+	/**
+	 * 分页查询抽油泵数据
+	 */
+	@RequestMapping("/queryPump")
+	public RespVO<PageModel<WellPumpPO>> queryPump(@NotBlank(message="缺少井号") String wellId,
+			Date startTime,Date endTime,
+			@RequestParam(value = "currentPage", defaultValue = "1") Integer pageNum,
+			@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize) {
+		
+		
+		return RespVOBuilder.ok(service.queryPump(wellId,startTime,endTime, pageNum, pageSize));
+	}
+	
+	
+	/**
+	 * 分页查询分析参数
+	 */
+	@RequestMapping("/queryAnalysisParam")
+	public RespVO<PageModel<WellAnalysisParamPO>> queryAnalysisParam(@NotBlank(message="缺少井号") String wellId,
+			Date startTime,Date endTime,
+			@RequestParam(value = "currentPage", defaultValue = "1") Integer pageNum,
+			@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize) {
+		
+		
+		return RespVOBuilder.ok(service.queryAnalysisParam(wellId,startTime,endTime, pageNum, pageSize));
+	}
+	
 	/**
 	 * 获得指定井的最新生成动态参数
 	 * @param wellId
@@ -60,6 +105,11 @@ public class ProduceParamController {
 			service.addMeasureParam(measure);
 		}
 		else {
+			WellMeasurePO  dbPO=service.getMeasureParam(measure.getMeasureId());
+			if(dbPO==null) {
+				return RespVOBuilder.error("记录已不存在");
+			}
+			measure.setCreateTime(dbPO.getCreateTime());
 			service.updateMeasureParam(measure);
 		}
 		return RespVOBuilder.ok();
@@ -79,6 +129,11 @@ public class ProduceParamController {
 			service.addPumpParam(pump);
 		}
 		else {
+			WellPumpPO  dbPO=service.getPumpParam(pump.getPumpId());
+			if(dbPO==null) {
+				return RespVOBuilder.error("记录已不存在");
+			}
+			pump.setCreateTime(dbPO.getCreateTime());
 			service.updatePumpParam(pump);
 		}
 		return RespVOBuilder.ok();

+ 111 - 0
src/main/java/com/hb/proj/analysis/service/ProduceParamService.java

@@ -1,6 +1,8 @@
 package com.hb.proj.analysis.service;
 
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -9,6 +11,7 @@ import com.hb.proj.model.WellAnalysisParamPO;
 import com.hb.proj.model.WellMeasurePO;
 import com.hb.proj.model.WellPumpPO;
 import com.hb.xframework.dao.core.SpringJdbcDAO;
+import com.hb.xframework.dao.util.PageModel;
 import com.hb.xframework.dao.util.UUIDHexGenerator;
 
 @Service
@@ -17,6 +20,95 @@ public class ProduceParamService {
 	@Autowired
 	private SpringJdbcDAO  dao;
 	
+	/**
+	 * 分页查询测量数据
+	 * @param wellId
+	 * @param startTime
+	 * @param endTime
+	 * @param pageNo
+	 * @param pageSize
+	 * @return
+	 */
+	public PageModel<WellMeasurePO> queryMeasureParam(String wellId,Date startTime,Date endTime,int pageNo,int pageSize){
+		List<Object> params=new ArrayList<>();
+		StringBuilder sql=new StringBuilder(300);
+		sql.append("select * from tzl_well_measure");
+		sql.append(" where del_if=false and well_id=?");
+		params.add(wellId);
+		if(startTime!=null) {
+			sql.append(" and create_time >=?");
+			params.add(startTime);
+		}
+		if(endTime!=null) {
+			sql.append(" and create_time <=?");
+			params.add(endTime);
+		}
+		sql.append(" order by create_time desc");
+		
+		return dao.queryForPagedData(sql.toString(),pageNo, pageSize,WellMeasurePO.class,params.toArray());
+	}
+	
+	/**
+	 * 分页查询抽油泵数据
+	 * @param wellId
+	 * @param startTime
+	 * @param endTime
+	 * @param pageNo
+	 * @param pageSize
+	 * @return
+	 */
+	public PageModel<WellPumpPO> queryPump(String wellId,Date startTime,Date endTime,int pageNo,int pageSize){
+		
+		List<Object> params=new ArrayList<>();
+		StringBuilder sql=new StringBuilder(300);
+		sql.append("select * from tzl_pump");
+		sql.append(" where del_if=false and well_id=?");
+		params.add(wellId);
+		if(startTime!=null) {
+			sql.append(" and create_time >=?");
+			params.add(startTime);
+		}
+		if(endTime!=null) {
+			sql.append(" and create_time <=?");
+			params.add(endTime);
+		}
+		sql.append(" order by create_time desc");
+		
+		
+		return dao.queryForPagedData(sql.toString(),pageNo, pageSize,WellPumpPO.class, params.toArray());
+	}
+	
+	
+	/**
+	 * 分页查询分析参数
+	 * @param wellId
+	 * @param startTime
+	 * @param endTime
+	 * @param pageNo
+	 * @param pageSize
+	 * @return
+	 */
+	public PageModel<WellAnalysisParamPO> queryAnalysisParam(String wellId,Date startTime,Date endTime,int pageNo,int pageSize){
+		
+		List<Object> params=new ArrayList<>();
+		StringBuilder sql=new StringBuilder(300);
+		sql.append("select * from tzl_well_analysis_param");
+		sql.append(" where  well_id=?");
+		params.add(wellId);
+		if(startTime!=null) {
+			sql.append(" and create_time >=?");
+			params.add(startTime);
+		}
+		if(endTime!=null) {
+			sql.append(" and create_time <=?");
+			params.add(endTime);
+		}
+		sql.append(" order by create_time desc");
+		
+		
+		return dao.queryForPagedData(sql.toString(),pageNo, pageSize,WellAnalysisParamPO.class, params.toArray());
+	}
+	
 	/**
 	 * 增加油井测量数据
 	 * @param measure
@@ -40,6 +132,15 @@ public class ProduceParamService {
 		dao.update(measure, "tzl_well_measure", "measure_id");
 	}
 	
+	/**
+	 * 通过主键获取测量数据
+	 * @param measureId
+	 * @return
+	 */
+	public WellMeasurePO  getMeasureParam(String measureId) {
+		return dao.queryForPojo("select * from tzl_well_measure where measure_id=?", WellMeasurePO.class, measureId);
+	}
+	
 	/**
 	 * 获得最新的测量数据
 	 * @param wellId
@@ -92,6 +193,16 @@ public class ProduceParamService {
 		dao.update(pump, "tzl_pump", "pump_id");
 	}
 	
+	
+	/**
+	 * 通过主键获取抽油泵参数
+	 * @param pumpId
+	 * @return
+	 */
+	public WellPumpPO  getPumpParam(String pumpId) {
+		return dao.queryForPojo("select * from tzl_pump where pump_id=?", WellPumpPO.class, pumpId);
+	}
+	
 	/**
 	 * 增加分析参数
 	 * @param analysisParam