|
@@ -0,0 +1,81 @@
|
|
|
|
+package com.hb.proj.analysis.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.WellQualityRptPO;
|
|
|
|
+import com.hb.proj.model.WellQualityRptVO;
|
|
|
|
+import com.hb.xframework.dao.core.SpringJdbcDAO;
|
|
|
|
+import com.hb.xframework.dao.util.PageModel;
|
|
|
|
+import com.hb.xframework.dao.util.UUIDHexGenerator;
|
|
|
|
+
|
|
|
|
+@Service
|
|
|
|
+public class WellQualityRptService {
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private SpringJdbcDAO dao;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ public PageModel<WellQualityRptVO> query(Map<String,Object> args,int pageNo,int pageSize){
|
|
|
|
+ List<Object> sqlParams=new ArrayList<Object>();
|
|
|
|
+ StringBuilder sql=new StringBuilder(100);
|
|
|
|
+ sql.append("select w.well_name,f.access_path,d.* ");
|
|
|
|
+ sql.append(" from tzl_quality_rpt d ");
|
|
|
|
+ sql.append(" left join tzl_well w on d.well_id=w.well_id and w.del_if=false");
|
|
|
|
+ sql.append(" left join tsys_file_info f on d.file_id=f.file_id");
|
|
|
|
+ sql.append(" where d.del_if=false ");
|
|
|
|
+
|
|
|
|
+ if(args!=null&&StringUtils.isNotBlank((String)args.get("wellId"))) {
|
|
|
|
+ sql.append(" and d.well_id=?");
|
|
|
|
+ sqlParams.add(args.get("wellId"));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if(args!=null && StringUtils.isNotBlank((String)args.get("year"))) {
|
|
|
|
+ sql.append(" and d.rpt_quarter like ? ");
|
|
|
|
+ sqlParams.add(args.get("year")+"%");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ sql.append(" order by rpt_quarter desc");
|
|
|
|
+
|
|
|
|
+ Object[] sqlArgs=sqlParams.size()>0?sqlParams.toArray():null;
|
|
|
|
+ return dao.queryForPagedData(sql.toString(),pageNo, pageSize,WellQualityRptVO.class ,sqlArgs);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void add(WellQualityRptPO qualityPO) {
|
|
|
|
+ UUIDHexGenerator uuid=UUIDHexGenerator.getInstance();
|
|
|
|
+ qualityPO.setRecordId(uuid.generate());
|
|
|
|
+ qualityPO.setDelIf(false);
|
|
|
|
+ qualityPO.setCreateTime(new Date());
|
|
|
|
+ dao.insert(qualityPO, "tzl_quality_rpt");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void delete(String recordId) {
|
|
|
|
+ dao.exeUpdate("update tzl_quality_rpt set del_if=true where record_id=?", recordId);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public WellQualityRptVO view(String recordId) {
|
|
|
|
+ String sql="""
|
|
|
|
+ select access_path
|
|
|
|
+ from tsys_file_info where file_id=(select file_id from tzl_quality_rpt where del_if=false and record_id=? limit 1)
|
|
|
|
+ """;
|
|
|
|
+ return dao.queryForPojo(sql, WellQualityRptVO.class, recordId);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public boolean existSame(WellQualityRptPO quality) {
|
|
|
|
+ String sql="""
|
|
|
|
+ select count(1) from tzl_quality_rpt
|
|
|
|
+ where del_if=false and well_id=? and rpt_quarter=?
|
|
|
|
+ """;
|
|
|
|
+ int num=dao.queryForObject(sql, Integer.class, quality.getWellId(),quality.getRptQuarter());
|
|
|
|
+ return num>0;
|
|
|
|
+ }
|
|
|
|
+}
|