Kaynağa Gözat

井站维护,增加井参数的维护接口

chenwen 2 yıl önce
ebeveyn
işleme
c1cb6cca85

+ 7 - 1
src/main/java/com/hb/proj/base/controller/ParamMgrController.java

@@ -1,6 +1,7 @@
 package com.hb.proj.base.controller;
 
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 import org.springframework.beans.factory.annotation.Autowired;
@@ -28,6 +29,11 @@ public class ParamMgrController {
 	@Autowired
 	private ParamMgrService  service;
 	
+	@RequestMapping("/loadAll")
+	public RespVO<List<ParamDefinePO>>  loadAll(){
+		return RespVOBuilder.ok(service.loadAll());
+	}
+	
 	/**
 	 * 查询参数类型列表
 	 * @apiNote 查询参数类型列表
@@ -68,7 +74,7 @@ public class ParamMgrController {
 
 	/**
 	 * 增加新参数类型定义
-	 * @param param  用户实体类
+	 * @param param  参数类型实体类
 	 * @param token 当前登录信息,自动获取
 	 * @return
 	 */

+ 120 - 0
src/main/java/com/hb/proj/base/controller/WellParamController.java

@@ -0,0 +1,120 @@
+package com.hb.proj.base.controller;
+
+import java.util.Date;
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+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;
+import com.hb.proj.allconfig.SysLog;
+import com.hb.proj.base.service.WellParamService;
+import com.hb.proj.model.WellParamPO;
+import com.hb.proj.utils.RequestParams;
+import com.hb.proj.utils.RespVO;
+import com.hb.proj.utils.RespVOBuilder;
+import com.hb.xframework.dao.util.PageModel;
+
+import jakarta.validation.constraints.NotBlank;
+
+@RestController
+@RequestMapping("/base/wellparam")
+@Validated
+public class WellParamController {
+
+	@Autowired
+	private WellParamService  service;
+	
+	/**
+	 * 加载井的参数
+	 * @param wellId
+	 * @return
+	 */
+	@RequestMapping("/loadByWell")
+	public RespVO<PageModel<Map<String,Object>>> loadByWell(@NotBlank(message="缺少井编号") String wellId){
+		Map<String,Object> params=Map.of("wellId", wellId);
+		
+		return RespVOBuilder.ok(service.query(params,1, 100));
+	}
+	
+	/**
+	 * 查询油井参数列表
+	 * @apiNote 查询参数类型列表
+	 * @param params  查询参数
+	 * @param pageNum  页码
+	 * @param pageSize 每页记录数
+	 * @return
+	 */
+	@RequestMapping("/query")
+	public RespVO<PageModel<Map<String,Object>>> query(RequestParams params,@RequestParam(value="currentPage",defaultValue="1") Integer pageNum,@RequestParam(value="pageSize",defaultValue="20") Integer pageSize){
+		return RespVOBuilder.ok(service.query(params.getObjectMap(),pageNum, pageSize));
+	}
+	
+	
+	/**
+	 * 获得单个油井参数定义
+	 * @param id 记录id
+	 * @return
+	 */
+	@RequestMapping("/get")
+	public RespVO<WellParamPO> get(@NotBlank(message = "缺少记录号") String paramId){
+		return RespVOBuilder.ok(service.get(paramId));
+	}
+	
+	
+	/**
+	 * 删除单个油井参数定义
+	 * @param id  待删除记录id
+	 * @return
+	 */
+	@RequestMapping("/delete")
+	@SysLog("删除油井参数定义:{arg0}")
+	public RespVO<Object> delete(String paramId){
+		service.delete(paramId);
+		return RespVOBuilder.ok();
+	}
+	
+
+	/**
+	 * 增加新油井参数定义
+	 * @param param  油井参数实体类
+	 * @param token 当前登录信息,自动获取
+	 * @return
+	 */
+	@RequestMapping("/add")
+	public RespVO<String> add(WellParamPO param,AccessToken token){
+		 if(service.existWellParam(param.getWellId(), param.getParamCode(),null)) {
+			 return RespVOBuilder.error("该参数在井内已存在,勿重复添加");
+		 }
+		 param.setModifyTime(new Date());
+		 param.setModifyBy(token.getTokenId());
+		 return RespVOBuilder.ok(service.add(param));
+		
+	}
+	
+	
+	/**
+	 * 更新单个油井参数定义
+	 * @param param  参数类型实体对象
+	 * @param token  当前登录信息,自动获取
+	 * @return
+	 */
+	@RequestMapping("/update")
+	@SysLog("更新油井参数定义:{arg0.wellId},{arg0.paramName}")
+	public RespVO<Object> update(WellParamPO param,AccessToken token){
+		if(service.existWellParam(param.getWellId(), param.getParamCode(),param.getParamId())) {
+			 return RespVOBuilder.error("该参数在井内已存在,勿重复添加");
+		 }
+		param.setDelIf(false);
+		param.setModifyTime(new Date());
+		param.setModifyBy(token.getTokenId());
+		service.update(param);
+		
+		return RespVOBuilder.ok();
+	  
+		
+	}
+}

+ 5 - 0
src/main/java/com/hb/proj/base/service/ParamMgrService.java

@@ -21,6 +21,11 @@ public class ParamMgrService {
 	private SpringJdbcDAO  dao;
 	
 	
+	public List<ParamDefinePO>  loadAll(){
+		return dao.queryForList("select param_name,param_code,param_unit from tzl_param_define  where del_if=false order by param_name", ParamDefinePO.class);
+	}
+	
+	
 	public PageModel<Map<String,Object>> query(Map<String,Object> args,int pageNo,int pageSize){
 		List<Object> sqlParams=new ArrayList<Object>();
 		StringBuilder sql=new StringBuilder(100);

+ 94 - 0
src/main/java/com/hb/proj/base/service/WellParamService.java

@@ -0,0 +1,94 @@
+package com.hb.proj.base.service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.hb.proj.model.WellParamPO;
+import com.hb.xframework.dao.core.SpringJdbcDAO;
+import com.hb.xframework.dao.util.PageModel;
+import com.hb.xframework.dao.util.UUIDHexGenerator;
+
+@Service
+public class WellParamService {
+
+	@Autowired
+	private SpringJdbcDAO  dao;
+	
+	
+	public List<WellParamPO> loadParamByWell(String wellId){
+		StringBuilder sql=new StringBuilder(100);
+		sql.append("select wp.*");
+		sql.append(" from tzl_well_param wp ");
+		sql.append(" where wp.del_if=false and well_id=?");
+		return dao.queryForList(sql.toString(), WellParamPO.class, wellId);
+	}
+	
+	public PageModel<Map<String,Object>> query(Map<String,Object> args,int pageNo,int pageSize){
+		List<Object> sqlParams=new ArrayList<Object>();
+		StringBuilder sql=new StringBuilder(100);
+		sql.append("select wp.*");
+		sql.append(" from tzl_well_param wp ");
+		sql.append(" where wp.del_if=false ");
+		
+		if(args!=null&&StringUtils.isNotBlank((String)args.get("paramName"))) {
+			sql.append(" and (param_name like ? or param_code like ?)");
+			sqlParams.add("%"+args.get("paramName")+"%");
+			sqlParams.add("%"+args.get("paramName")+"%");
+		}
+		
+		if(args!=null&&StringUtils.isNotBlank((String)args.get("wellId"))) {
+			sql.append(" and well_id=?");
+			sqlParams.add(args.get("wellId"));
+		}
+		
+		sql.append(" order by param_name");
+		
+		Object[] sqlArgs=sqlParams.size()>0?sqlParams.toArray():null;
+		return dao.queryForPagedData(sql.toString(),pageNo, pageSize,sqlArgs);
+	}
+	
+	public String add(WellParamPO param) {
+		UUIDHexGenerator uuid=UUIDHexGenerator.getInstance();
+		param.setParamId(uuid.generate());
+		param.setModifyTime(new Date());
+		param.setDelIf(false);
+		dao.insert(param,"tzl_well_param");
+		return param.getParamId();
+	}
+	
+	public boolean delete(String paramId) {
+		String sql="update  tzl_well_param set del_if=true where param_id=?";
+		dao.exeUpdate(sql,paramId);
+		return true;
+	}
+	
+	public WellParamPO get(String paramId) {
+		return dao.queryForPojo("select * from tzl_well_param  where del_if=false and param_id=?",WellParamPO.class,paramId);
+	}
+	
+	
+	
+	public boolean update(WellParamPO param) {
+		param.setModifyTime(new Date());
+		return dao.update(param, "tzl_well_param", "param_id")>0;
+	}
+	
+	public boolean existWellParam(String wellId,String paramCode,String paramId) {
+		if(StringUtils.isBlank(paramId)) {
+			String sql="select count(1) from tzl_well_param where del_if=false and well_id=? and param_code=?";
+			return dao.queryForObject(sql, Integer.class, wellId,paramCode)>0;
+		}
+		else {
+			String sql="select count(1) from tzl_well_param where del_if=false and well_id=? and param_code=? and param_id!=?";
+			return dao.queryForObject(sql, Integer.class, wellId,paramCode,paramId)>0;
+		}
+		
+	}
+	
+}

+ 33 - 0
src/main/java/com/hb/proj/model/WellParamPO.java

@@ -0,0 +1,33 @@
+package com.hb.proj.model;
+
+import java.util.Date;
+
+import lombok.Data;
+
+@Data
+public class WellParamPO {
+
+	private String paramId;
+	
+	private String wellId;
+	
+	private String paramName;
+	
+	private String paramCode;
+	
+	private String paramUnit;
+	
+	private String unitScale;
+	
+	private String unitGroup;
+	
+	private String format;
+	
+	private Boolean delIf;
+	
+	private String modifyBy;
+	
+	private Date modifyTime;
+
+	
+}