| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371 |
- 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.AttWagaBaseParam;
- import cn.com.goldenwater.dcproj.param.BisInspAllObjParam;
- import cn.com.goldenwater.dcproj.param.BisInspWagaBaseParam;
- 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.Date;
- import java.util.List;
- /**
- * 水闸离线填报
- *
- * @author lhc
- * @date 2019/11/22 10:32
- */
- @Service
- @Transactional
- public class BisInspOffLineWagaProcess extends BisInspOffLineProcess {
- @Autowired
- AttWagaBaseDao attWagaBaseDao;
- @Autowired
- AttWagaRgstrDao attWagaRgstrDao;
- @Autowired
- BisInspAllObjDao bisInspAllObjDao;
- @Autowired
- BisInspPblmDao bisInspPblmDao;//督查问题
- @Autowired
- BisInspWagaMrsCiDao bisInspWagaMrsCiDao;
- @Autowired
- BisInspWagaSafeManageDao bisInspWagaSafeManageDao;
- @Autowired
- BisInspWagaProenInfoDao bisInspWagaProenInfoDao;
- @Autowired
- BisInspWagaDmamInfoDao bisInspWagaDmamInfoDao;
- @Autowired
- BisInspWagaBaseDao bisInspWagaBaseDao;
- @Autowired
- private GwComFileService gwComFileService;//文件操作
- @Value("${getFile.prefix}")
- public String prefix;
- @Autowired
- SupervisionPlanService supervisionPlanService;
- @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);
- //解析小水库填报信息
- BisInspOffLineWagaRgeister bisInspOffLineWagaRgeister = om.readValue(bisInspOffLineObj.getRegister(), BisInspOffLineWagaRgeister.class);
- //解析小水库基本信息对象
- if (bisInspOffLineObj.getBase() != null) {
- /* if (null == bisInspOffLineObj.getReplace() || bisInspOffLineObj.getReplace()) {
- delRgstrData(bisInspOffLineObj);
- }*/
- //添加到督查任务
- String objId = UuidUtil.uuid();
- String groupId = bisInspOffLineObj.getGroupId();
- AttWagaRgstr attWagaRgstr = new AttWagaRgstr();
- String regId = objId;
- String persId = bisInspOffLineObj.getPersId();
- AttWagaBase attWagaBase = om.readValue(bisInspOffLineObj.getBase(), AttWagaBase.class);
- BisInspOffLineWaga bisInspOffLineWaga = bisInspOffLineWagaRgeister.getBisInspOffLineWaga();
- //添加到督查任务
- if (null == bisInspOffLineWaga) {
- insertBisInspAllObj(bisInspOffLineObj, groupId, objId, attWagaBase);
- insertAttWagaRgstr(attWagaBase, groupId, objId, persId, regId, attWagaRgstr);
- } else {
- if (StringUtils.isNotBlank(bisInspOffLineWaga.getObjId()) && StringUtils.isNotBlank(bisInspOffLineWaga.getRegId())) {
- regId = bisInspOffLineWaga.getRegId();
- objId = bisInspOffLineWaga.getObjId();
- attWagaRgstr.setId(regId);
- attWagaRgstr.setObjId(objId);
- }
- }
- //插入水闸基本信息表
- insertAttWagaBase(bisInspOffLineWaga, bisInspOffLineWagaRgeister, regId, persId, attWagaRgstr);
- //水闸督查管理责任体系建设和落实情况
- insertWagaMrsCi(bisInspOffLineWagaRgeister, regId, persId, attWagaRgstr);
- //bisInspWagaSafeManage 水闸督查安全管理情况
- insertWagaSafeManage(bisInspOffLineWagaRgeister, regId, persId, attWagaRgstr);
- //水闸督查日常管理和维修养护情况
- insertWagaDmamInfo(bisInspOffLineWagaRgeister, regId, persId, attWagaRgstr);
- //水闸督查工程实体情况
- insertWagaProenInfo(bisInspOffLineWagaRgeister, regId, persId, attWagaRgstr);
- //更新督查 字表状态
- attWagaRgstrDao.update(attWagaRgstr);
- bisInspOffLineRet.setRegId(regId);
- bisInspOffLineObj.setOrgId(objId);
- }
- return bisInspOffLineRet;
- }
- /**
- * 删除任务及登记表信息
- *
- * @param groupId
- * @param nm
- */
- public void delRgstrData(BisInspOffLineObj bisInspOffLineObj) {
- //登记表查找重复数据,然后删除
- BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
- bisInspAllObjParam.setId(bisInspOffLineObj.getGroupId());
- bisInspAllObjParam.setNm(bisInspOffLineObj.getNm());
- List<BisInspAllObj> bisInspAllObjs = bisInspAllObjDao.findList(bisInspAllObjParam);
- for (BisInspAllObj bisInspAllObj : bisInspAllObjs) {
- //删除登记表
- //删除登记表关联的各个填报表数据
- supervisionPlanService.cleanObjDataByObjId(BisInspEnum.WAGA.getValue(), bisInspAllObj.getObjId());
- }
- }
- /**
- * 添加到督查任务
- *
- * @param groupId
- * @param objId
- * @param attWagaBase
- */
- public void insertBisInspAllObj(BisInspOffLineObj bisInspOffLineObj, String groupId, String objId, AttWagaBase attWagaBase) {
- BisInspAllObj bisInspAllObj = new BisInspAllObj();
- bisInspAllObj.setId(groupId);
- bisInspAllObj.setObjId(objId);
- bisInspAllObj.setNm(attWagaBase.getGateName());
- bisInspAllObj.setCode(attWagaBase.getObjCode());
- bisInspAllObj.setPtype("6");
- bisInspAllObj.setOrgId(bisInspOffLineObj.getOrgId());
- bisInspAllObj.setAdCode(bisInspOffLineObj.getProvince());
- bisInspAllObj.setLgtdpc(attWagaBase.getCenterX());
- bisInspAllObj.setLttdpc(attWagaBase.getCenterY());
- bisInspAllObj.setLgtd(attWagaBase.getGdX());
- bisInspAllObj.setLttd(attWagaBase.getGdY());
- bisInspAllObjDao.insert(bisInspAllObj);
- }
- /**
- * 插入登记表信息
- *
- * @param bisInspOffLineObj
- * @param objId
- * @param om
- * @param regId
- * @param attWagaRgstr
- * @throws IOException
- */
- public void insertAttWagaRgstr(AttWagaBase attWagaBase, String groupId, String objId, String persId, String regId, AttWagaRgstr attWagaRgstr) throws IOException {
- attWagaRgstr.setId(regId);
- attWagaRgstr.setObjId(objId);
- attWagaRgstr.setObjCode(attWagaBase.getObjCode());
- attWagaRgstr.setGateName(attWagaBase.getGateName());
- attWagaRgstr.setAdCode(attWagaBase.getAdCode());
- attWagaRgstr.setGateType(attWagaBase.getGateType());
- attWagaRgstr.setGateFlow(attWagaBase.getGateFlow());
- attWagaRgstr.setEngScal(attWagaBase.getEngScal());
- attWagaRgstr.setEngSta(attWagaBase.getEngSta());
- attWagaRgstr.setBuidTimeYear(attWagaBase.getBuidTimeYear());
- attWagaRgstr.setBuidTimeMon(attWagaBase.getBuidTimeMon());
- attWagaRgstr.setStaTimeYear(attWagaBase.getStaTimeYear());
- attWagaRgstr.setStaTimeMon(attWagaBase.getStaTimeMon());
- attWagaRgstr.setLocation(attWagaBase.getLocationCun());
- attWagaRgstr.setGateAdmName(attWagaBase.getGateAdmName());
- attWagaRgstr.setGateAdmOrg(attWagaBase.getGateAdmOrg());
- attWagaRgstr.setLocationXiang(attWagaBase.getLocationXiang());
- attWagaRgstr.setState("1");
- attWagaRgstr.setDataStat("0");
- attWagaRgstr.setPersId(persId);
- attWagaRgstr.setGroupId(groupId);
- attWagaRgstr.setCenterX(attWagaBase.getCenterX());
- attWagaRgstr.setCenterY(attWagaBase.getCenterY());
- attWagaRgstr.setGdX(attWagaBase.getGdX());
- attWagaRgstr.setGdY(attWagaBase.getGdY());
- attWagaRgstr.setIntm(new Date());
- attWagaRgstrDao.insert(attWagaRgstr);
- }
- public void insertAttWagaBase(BisInspOffLineWaga bisInspOffLineWaga, BisInspOffLineWagaRgeister bisInspOffLineWagaRgeister, String regId, String persId, AttWagaRgstr attWagaRgstr) {
- if (null != bisInspOffLineWaga) {
- if (bisInspOffLineWaga.getBase()) {
- //水闸督查基本信息
- BisInspWagaBase bisInspWagaBase = null;
- if (bisInspOffLineWagaRgeister.getBisInspWagaBase() != null) {
- //根据Regid获取ID
- BisInspWagaBaseParam bisInspWagaBaseParam = new BisInspWagaBaseParam();
- bisInspWagaBaseParam.setRgstrId(regId);
- List<BisInspWagaBase> bisInspWagaBases = bisInspWagaBaseDao.findList(bisInspWagaBaseParam);
- if (bisInspWagaBases.size() > 0) {
- bisInspWagaBase = bisInspOffLineWagaRgeister.getBisInspWagaBase();
- attWagaRgstr.setBaseStat(bisInspWagaBase.getDataStat());
- bisInspWagaBase.setUptm(new Date());
- bisInspWagaBase.setRgstrId(regId);
- bisInspWagaBase.setId(bisInspWagaBases.get(0).getId());
- bisInspWagaBaseDao.update(bisInspWagaBase);
- }
- }
- }
- } else {
- //水闸督查基本信息
- BisInspWagaBase bisInspWagaBase = new BisInspWagaBase();
- if (bisInspOffLineWagaRgeister.getBisInspWagaBase() != null) {
- bisInspWagaBase = bisInspOffLineWagaRgeister.getBisInspWagaBase();
- attWagaRgstr.setBaseStat(bisInspWagaBase.getDataStat());
- } else {
- attWagaRgstr.setBaseStat("1");
- }
- bisInspWagaBase.setId(UuidUtil.uuid());
- bisInspWagaBase.setRgstrId(regId);
- bisInspWagaBase.setIntm(new Date());
- bisInspWagaBase.setUptm(new Date());
- bisInspWagaBase.setDataStat("0");
- bisInspWagaBase.setRecPersId(persId);
- bisInspWagaBaseDao.insert(bisInspWagaBase);
- }
- }
- /**
- * 插入水闸督查管理责任体系建设和落实情况
- *
- * @param bisInspOffLineWagaRgeister
- * @param regId
- * @param bisInspOffLineObj
- * @param attWagaRgstr
- */
- public void insertWagaMrsCi(BisInspOffLineWagaRgeister bisInspOffLineWagaRgeister, String regId, String persId, AttWagaRgstr attWagaRgstr) {
- //水闸督查管理责任体系建设和落实情况
- BisInspWagaMrsCi bisInspWagaMrsCi = new BisInspWagaMrsCi();
- if (bisInspOffLineWagaRgeister.getBisInspWagaMrsCi() != null) {
- bisInspWagaMrsCi = bisInspOffLineWagaRgeister.getBisInspWagaMrsCi();
- bisInspWagaMrsCi.setId(UuidUtil.uuid());
- bisInspWagaMrsCi.setRgstrId(regId);
- bisInspWagaMrsCi.setIntm(new Date());
- bisInspWagaMrsCi.setUptm(new Date());
- bisInspWagaMrsCi.setDataStat("0");
- bisInspWagaMrsCi.setRecPersId(persId);
- bisInspWagaMrsCiDao.insert(bisInspWagaMrsCi);
- attWagaRgstr.setMrsCiStat("2");
- } else {
- bisInspWagaMrsCi.setId(UuidUtil.uuid());
- bisInspWagaMrsCi.setRgstrId(regId);
- bisInspWagaMrsCi.setIntm(new Date());
- bisInspWagaMrsCi.setUptm(new Date());
- bisInspWagaMrsCi.setDataStat("0");
- bisInspWagaMrsCi.setRecPersId(persId);
- bisInspWagaMrsCiDao.insert(bisInspWagaMrsCi);
- attWagaRgstr.setMrsCiStat("1");
- }
- }
- /**
- * 插入水闸督查安全管理情况
- *
- * @param bisInspOffLineWagaRgeister
- * @param regId
- * @param bisInspOffLineObj
- * @param attWagaRgstr
- */
- public void insertWagaSafeManage(BisInspOffLineWagaRgeister bisInspOffLineWagaRgeister, String regId, String persId, AttWagaRgstr attWagaRgstr) {
- BisInspWagaSafeManage bisInspWagaSafeManage = new BisInspWagaSafeManage();
- if (bisInspOffLineWagaRgeister.getBisInspWagaSafeManage() != null) {
- bisInspWagaSafeManage = bisInspOffLineWagaRgeister.getBisInspWagaSafeManage();
- bisInspWagaSafeManage.setId(UuidUtil.uuid());
- bisInspWagaSafeManage.setRgstrId(regId);
- bisInspWagaSafeManage.setIntm(new Date());
- bisInspWagaSafeManage.setUptm(new Date());
- bisInspWagaSafeManage.setRecPersId(persId);
- bisInspWagaSafeManage.setDataStat("0");
- bisInspWagaSafeManageDao.insert(bisInspWagaSafeManage);
- attWagaRgstr.setSafeStat("2");
- } else {
- bisInspWagaSafeManage.setId(UuidUtil.uuid());
- bisInspWagaSafeManage.setRgstrId(regId);
- bisInspWagaSafeManage.setIntm(new Date());
- bisInspWagaSafeManage.setUptm(new Date());
- bisInspWagaSafeManage.setDataStat("0");
- bisInspWagaSafeManage.setRecPersId(persId);
- bisInspWagaSafeManageDao.insert(bisInspWagaSafeManage);
- attWagaRgstr.setSafeStat("1");
- }
- }
- /**
- * 水闸督查日常管理和维修养护情况
- *
- * @param bisInspOffLineWagaRgeister
- * @param regId
- * @param bisInspOffLineObj
- * @param attWagaRgstr
- */
- public void insertWagaDmamInfo(BisInspOffLineWagaRgeister bisInspOffLineWagaRgeister, String regId, String persId, AttWagaRgstr attWagaRgstr) {
- BisInspWagaDmamInfo bisInspWagaDmamInfo = new BisInspWagaDmamInfo();
- if (bisInspOffLineWagaRgeister.getBisInspWagaDmamInfo() != null) {
- bisInspWagaDmamInfo = bisInspOffLineWagaRgeister.getBisInspWagaDmamInfo();
- bisInspWagaDmamInfo.setId(UuidUtil.uuid());
- bisInspWagaDmamInfo.setRgstrId(regId);
- bisInspWagaDmamInfo.setIntm(new Date());
- bisInspWagaDmamInfo.setUptm(new Date());
- bisInspWagaDmamInfo.setDataStat("0");
- bisInspWagaDmamInfo.setRecPersId(persId);
- bisInspWagaDmamInfoDao.insert(bisInspWagaDmamInfo);
- attWagaRgstr.setDmamStat("2");
- } else {
- bisInspWagaDmamInfo.setId(UuidUtil.uuid());
- bisInspWagaDmamInfo.setRgstrId(regId);
- bisInspWagaDmamInfo.setIntm(new Date());
- bisInspWagaDmamInfo.setUptm(new Date());
- bisInspWagaDmamInfo.setDataStat("0");
- bisInspWagaDmamInfo.setRecPersId(persId);
- bisInspWagaDmamInfoDao.insert(bisInspWagaDmamInfo);
- attWagaRgstr.setDmamStat("1");
- }
- }
- /**
- * 水闸督查工程实体情况
- *
- * @param bisInspOffLineWagaRgeister
- * @param regId
- * @param bisInspOffLineObj
- * @param attWagaRgstr
- */
- public void insertWagaProenInfo(BisInspOffLineWagaRgeister bisInspOffLineWagaRgeister, String regId, String persId, AttWagaRgstr attWagaRgstr) {
- BisInspWagaProenInfo bisInspWagaProenInfo = new BisInspWagaProenInfo();
- if (bisInspOffLineWagaRgeister.getBisInspWagaProenInfo() != null) {
- bisInspWagaProenInfo = bisInspOffLineWagaRgeister.getBisInspWagaProenInfo();
- bisInspWagaProenInfo.setId(UuidUtil.uuid());
- bisInspWagaProenInfo.setRgstrId(regId);
- bisInspWagaProenInfo.setIntm(new Date());
- bisInspWagaProenInfo.setUptm(new Date());
- bisInspWagaProenInfo.setDataStat("0");
- bisInspWagaProenInfo.setRecPersId(persId);
- bisInspWagaProenInfoDao.insert(bisInspWagaProenInfo);
- attWagaRgstr.setProenStat("2");
- } else {
- bisInspWagaProenInfo.setId(UuidUtil.uuid());
- bisInspWagaProenInfo.setRgstrId(regId);
- bisInspWagaProenInfo.setIntm(new Date());
- bisInspWagaProenInfo.setUptm(new Date());
- bisInspWagaProenInfo.setDataStat("0");
- bisInspWagaProenInfo.setRecPersId(persId);
- bisInspWagaProenInfoDao.insert(bisInspWagaProenInfo);
- attWagaRgstr.setProenStat("1");
- }
- }
- @Override
- public BisInspOffLineRetBase getBaseInfo(BisInspOffLine bisInspOffLine) {
- BisInspOffLineRetBase bisInspOffLineRetBase = new BisInspOffLineRetBase();
- AttWagaBaseParam attWagaBaseParam = new AttWagaBaseParam();
- attWagaBaseParam.setGateName(bisInspOffLine.getName());
- attWagaBaseParam.setAdCode(AdLevelUtil.getAddvcd(bisInspOffLine.getAddvcd()));
- bisInspOffLineRetBase.setBase(attWagaBaseDao.findList(attWagaBaseParam));
- return bisInspOffLineRetBase;
- }
- }
|