| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220 |
- package cn.com.goldenwater.dcproj.service.impl.offline;
- import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
- import cn.com.goldenwater.dcproj.dao.*;
- import cn.com.goldenwater.dcproj.model.*;
- import cn.com.goldenwater.dcproj.param.*;
- import cn.com.goldenwater.dcproj.service.GwComFileService;
- import cn.com.goldenwater.dcproj.service.SupervisionPlanService;
- import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
- import cn.com.goldenwater.id.util.UuidUtil;
- import com.fasterxml.jackson.databind.DeserializationFeature;
- import com.fasterxml.jackson.databind.ObjectMapper;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import java.io.IOException;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- /**
- * 水源地离线填报
- *
- * @author lhc
- * @date 2021/07/16 10:56
- */
- @Service
- @Transactional
- public class BisInspOffLineWrmProcess extends BisInspOffLineProcess {
- @Autowired
- BisInspAllObjDao bisInspAllObjDao;
- @Autowired
- BisInspPblmDao bisInspPblmDao;//督查问题
- @Autowired
- BisInspWrmRgstrDao bisInspWrmRgstrDao;
- @Autowired
- BisInspWrmWtuntPblmDao bisInspWrmWtuntPblmDao;
- @Autowired
- BisInspWrmRgstrWintDao bisInspWrmRgstrWintDao;
- @Autowired
- BisInspWrmRgstrMacowiagDao bisInspWrmRgstrMacowiagDao;
- @Autowired
- AttAdBaseDao attAdBaseDao;
- @Override
- public BisInspOffLineRet process(BisInspOffLineObj bisInspOffLineObj, String fileDir) throws IOException {
- BisInspOffLineRet bisInspOffLineRet = new BisInspOffLineRet();
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- ObjectMapper om = new ObjectMapper();
- om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
- //解析水资源填报信息
- BisInspOffLineWrmRgeister bisInspOffLineWrmRgeister = om.readValue(bisInspOffLineObj.getRegister(), BisInspOffLineWrmRgeister.class);
- //解析水源地对象
- if (bisInspOffLineObj.getBase() != null) {
- String objId = UuidUtil.uuid();
- String groupId = bisInspOffLineObj.getGroupId();
- BisInspWrmRgstr bisInspWrmRgstr;
- String regId = objId;
- String persId = bisInspOffLineObj.getPersId();
- bisInspWrmRgstr = om.readValue(bisInspOffLineObj.getBase(), BisInspWrmRgstr.class);
- if (StringUtils.isBlank(bisInspWrmRgstr.getRgstrId())) {
- insertBisInspAllObj(bisInspOffLineObj, groupId, objId, bisInspWrmRgstr);
- bisInspWrmRgstr.setRgstrId(regId);
- bisInspWrmRgstr.setObjId(objId);
- bisInspWrmRgstr.setId(regId);
- }
- insertWrmRgstr(groupId, objId, persId, regId, bisInspWrmRgstr);
- //bisInspWrmRgstr.setRgstrId(regId);
- bisInspWrmRgstr.setId(bisInspWrmRgstr.getRgstrId());
- // bisInspWrmRgstr.setObjId(objId);
- regId = bisInspWrmRgstr.getRgstrId();
- objId = bisInspWrmRgstr.getObjId();
- //行政区取用水管控及地下水监管情况
- insertMacowiag(bisInspOffLineWrmRgeister, regId, persId, bisInspWrmRgstr);
- //取水口取水监管情况检查表
- //insertWint(bisInspOffLineWrmRgeister, regId, persId, bisInspWrmRgstr);
- //2019年水资源管理和节约用水监督检查发现问题问题清单
- insertWintPblm(bisInspOffLineWrmRgeister, regId, persId, bisInspWrmRgstr);
- //更新督查 字表状态
- bisInspWrmRgstrDao.update(bisInspWrmRgstr);
- bisInspOffLineRet.setObjId(objId);
- bisInspOffLineRet.setRegId(regId);
- }
- return bisInspOffLineRet;
- }
- /**
- * 添加到督查任务
- *
- * @param groupId
- * @param objId
- * @param attSwhsBase
- */
- public void insertBisInspAllObj(BisInspOffLineObj bisInspOffLineObj, String groupId, String objId, BisInspWrmRgstr bisInspWrmRgstr) {
- BisInspAllObj bisInspAllObj = new BisInspAllObj();
- bisInspAllObj.setId(groupId);
- bisInspAllObj.setObjId(objId);
- bisInspAllObj.setNm(bisInspWrmRgstr.getAdName());
- bisInspAllObj.setCode(bisInspWrmRgstr.getAdFullName());//非空字段
- bisInspAllObj.setPtype("32");
- bisInspAllObj.setOrgId(bisInspOffLineObj.getOrgId());
- bisInspAllObj.setAdCode(bisInspOffLineObj.getProvince());
- bisInspAllObj.setLgtd(bisInspWrmRgstr.getGdX());
- bisInspAllObj.setLttd(bisInspWrmRgstr.getGdY());
- bisInspAllObj.setLgtdpc(bisInspWrmRgstr.getCenterX());
- bisInspAllObj.setLttdpc(bisInspWrmRgstr.getCenterY());
- bisInspAllObj.setObjAdCode(bisInspWrmRgstr.getAdCode());
- bisInspAllObjDao.insert(bisInspAllObj);
- }
- /**
- * 插入登记表信息
- *
- * @param bisInspOffLineObj
- * @param objId
- * @param om
- * @param regId
- * @param bisInspSwhsRgstr
- * @throws IOException
- */
- public void insertWrmRgstr(String groupId, String objId, String persId, String regId, BisInspWrmRgstr bisInspWrmRgstr) throws IOException {
- BisInspWrmRgstrParam bisInspWrmRgstrParam = new BisInspWrmRgstrParam();
- bisInspWrmRgstrParam.setId(bisInspWrmRgstr.getRgstrId());
- List<BisInspWrmRgstr> bisInspWrmRgstrs = bisInspWrmRgstrDao.findList(bisInspWrmRgstrParam);
- if (bisInspWrmRgstrs != null && bisInspWrmRgstrs.size() == 1) {
- bisInspWrmRgstr.setId(regId);
- bisInspWrmRgstr.setUptm(new Date());
- bisInspWrmRgstrDao.update(bisInspWrmRgstr);
- } else {
- bisInspWrmRgstr.setId(regId);
- bisInspWrmRgstr.setObjId(objId);
- bisInspWrmRgstr.setIntm(new Date());
- bisInspWrmRgstr.setUptm(new Date());
- bisInspWrmRgstrDao.insert(bisInspWrmRgstr);
- }
- }
- public void insertMacowiag(BisInspOffLineWrmRgeister bisInspOffLineWrmRgeister, String regId, String persId, BisInspWrmRgstr bisInspWrmRgstr) {
- //节水评价情况检查表
- BisInspWrmRgstrMacowiag bisInspWrmRgstrMacowiag = new BisInspWrmRgstrMacowiag();
- BisInspWrmRgstrMacowiagParam bisInspWrmRgstrMacowiagParam = new BisInspWrmRgstrMacowiagParam();
- bisInspWrmRgstrMacowiagParam.setRgstrId(regId);
- List<BisInspWrmRgstrMacowiag> bisInspWrmRgstrMacowiags = bisInspWrmRgstrMacowiagDao.findList(bisInspWrmRgstrMacowiagParam);
- if (bisInspWrmRgstrMacowiags.size() > 0) {
- //删除后重新插入
- bisInspWrmRgstrMacowiagDao.deleteBy(bisInspWrmRgstrMacowiagParam);
- }
- //添加新的检查附表
- bisInspWrmRgstrMacowiag = bisInspOffLineWrmRgeister.getBisInspWrmRgstrMacowiag();
- bisInspWrmRgstrMacowiag.setId(UuidUtil.uuid());
- bisInspWrmRgstrMacowiag.setRgstrId(regId);
- bisInspWrmRgstrMacowiag.setUptm(new Date());
- bisInspWrmRgstrMacowiag.setObjId(bisInspWrmRgstr.getObjId());
- bisInspWrmRgstrMacowiagDao.insert(bisInspWrmRgstrMacowiag);
- }
- public void insertWint(BisInspOffLineWrmRgeister bisInspOffLineWrmRgeister, String regId, String persId, BisInspWrmRgstr bisInspWrmRgstr) {
- //节水评价情况检查表
- BisInspWrmRgstrWint bisInspWrmRgstrWint;
- BisInspWrmRgstrWintParam bisInspWrmRgstrWintParam = new BisInspWrmRgstrWintParam();
- bisInspWrmRgstrWintParam.setRgstrId(regId);
- List<BisInspWrmRgstrWint> bisInspWrmRgstrWints = bisInspWrmRgstrWintDao.findList(bisInspWrmRgstrWintParam);
- bisInspWrmRgstrWint = bisInspOffLineWrmRgeister.getBisInspWrmRgstrWint();
- if (null != bisInspWrmRgstrWints && bisInspWrmRgstrWints.size() > 0) {
- bisInspWrmRgstrWintDao.deleteBy(bisInspWrmRgstrWintParam);
- }
- bisInspWrmRgstrWint = bisInspOffLineWrmRgeister.getBisInspWrmRgstrWint();
- if (null == bisInspWrmRgstrWint) {
- bisInspWrmRgstrWint = new BisInspWrmRgstrWint();
- bisInspWrmRgstrWint.setIntm(new Date());
- bisInspWrmRgstrWint.setUptm(new Date());
- bisInspWrmRgstrWint.setPersId(persId);
- }
- bisInspWrmRgstrWint.setId(UuidUtil.uuid());
- bisInspWrmRgstrWint.setRgstrId(regId);
- bisInspWrmRgstrWintDao.insert(bisInspWrmRgstrWint);
- }
- public void insertWintPblm(BisInspOffLineWrmRgeister bisInspOffLineWrmRgeister, String regId, String persId, BisInspWrmRgstr bisInspWrmRgstr) {
- //节水评价情况检查表
- List<BisInspWrmWtuntPblm> bisInspWrmWtuntPblms;
- if (bisInspOffLineWrmRgeister.getBisInspWrmWtuntPblms().size() > 0) {
- bisInspWrmWtuntPblms = bisInspOffLineWrmRgeister.getBisInspWrmWtuntPblms();
- for (BisInspWrmWtuntPblm bisInspWrmWtuntPblm : bisInspWrmWtuntPblms) {
- bisInspWrmWtuntPblm.setId(UuidUtil.uuid());
- bisInspWrmWtuntPblm.setRgstrId(regId);
- bisInspWrmWtuntPblmDao.insert(bisInspWrmWtuntPblm);
- bisInspWrmRgstr.setWintStat("2");
- }
- }
- }
- @Override
- public BisInspOffLineRetBase getBaseInfo(BisInspOffLine bisInspOffLine) {
- BisInspOffLineRetBase bisInspOffLineRetBase = new BisInspOffLineRetBase();
- AttAdBaseParam attAdBaseParam = new AttAdBaseParam();
- attAdBaseParam.setAdName(bisInspOffLine.getName());
- attAdBaseParam.setAdCode(AdLevelUtil.getAddvcd(bisInspOffLine.getAddvcd()));
- bisInspOffLineRetBase.setBase(attAdBaseDao.findList(attAdBaseParam));
- //判断登记表是否有重复对象
- List<BisInspWrmRgstr> bisInspWrmRgstrs = bisInspWrmRgstrDao.getWrmByIdNm(bisInspOffLine.getGroupId(), bisInspOffLine.getName());
- if (null != bisInspWrmRgstrs && bisInspWrmRgstrs.size() > 0) {
- bisInspOffLineRetBase.setRepeat(true);
- bisInspOffLineRetBase.setRepeatList(bisInspWrmRgstrs);
- } else {
- bisInspOffLineRetBase.setRepeat(false);
- }
- return bisInspOffLineRetBase;
- }
- }
|