d07c15a6255bbb93ea4a2745b1ff77ed2dbc4ac9.svn-base 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928
  1. package cn.com.goldenwater.dcproj.service.impl.rsvr;
  2. import cn.com.goldenwater.core.service.AbstractCrudService;
  3. import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
  4. import cn.com.goldenwater.dcproj.constValue.RsvrEnum;
  5. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  6. import cn.com.goldenwater.dcproj.constValue.StateEnum;
  7. import cn.com.goldenwater.dcproj.constValue.StatusEnum;
  8. import cn.com.goldenwater.dcproj.dao.AttRsBaseCrrctDao;
  9. import cn.com.goldenwater.dcproj.dao.AttRsBaseDao;
  10. import cn.com.goldenwater.dcproj.dao.BisInspAllObjDao;
  11. import cn.com.goldenwater.dcproj.dao.BisInspBaseExtDao;
  12. import cn.com.goldenwater.dcproj.dao.BisInspBasePresExtDao;
  13. import cn.com.goldenwater.dcproj.dao.BisInspBaseViewDao;
  14. import cn.com.goldenwater.dcproj.dao.BisInspPblmDao;
  15. import cn.com.goldenwater.dcproj.dao.BisInspPblmPlistDao;
  16. import cn.com.goldenwater.dcproj.dao.BisInspPreListDao;
  17. import cn.com.goldenwater.dcproj.dao.BisInspRsvrBenefitsDao;
  18. import cn.com.goldenwater.dcproj.dao.BisInspRsvrProjectDao;
  19. import cn.com.goldenwater.dcproj.dao.BisInspRsvrRgstrDao;
  20. import cn.com.goldenwater.dcproj.dao.BisInspSafeExtManageDao;
  21. import cn.com.goldenwater.dcproj.dao.GwComFileDao;
  22. import cn.com.goldenwater.dcproj.dto.BisInspRsvrRgstrPcDto;
  23. import cn.com.goldenwater.dcproj.dto.BisInspTaskTotal;
  24. import cn.com.goldenwater.dcproj.model.AttRsBase;
  25. import cn.com.goldenwater.dcproj.model.BisInspAllObj;
  26. import cn.com.goldenwater.dcproj.model.BisInspBaseExt;
  27. import cn.com.goldenwater.dcproj.model.BisInspBasePresExt;
  28. import cn.com.goldenwater.dcproj.model.BisInspBaseView;
  29. import cn.com.goldenwater.dcproj.model.BisInspPblm;
  30. import cn.com.goldenwater.dcproj.model.BisInspPblmPlist;
  31. import cn.com.goldenwater.dcproj.model.BisInspPblmPlistFormDTO;
  32. import cn.com.goldenwater.dcproj.model.BisInspPreList;
  33. import cn.com.goldenwater.dcproj.model.BisInspRsvrBenefits;
  34. import cn.com.goldenwater.dcproj.model.BisInspRsvrPblmMend;
  35. import cn.com.goldenwater.dcproj.model.BisInspRsvrProject;
  36. import cn.com.goldenwater.dcproj.model.BisInspRsvrRgstr;
  37. import cn.com.goldenwater.dcproj.model.BisInspRsvrRgstrData;
  38. import cn.com.goldenwater.dcproj.model.BisInspRsvrRgstrDto;
  39. import cn.com.goldenwater.dcproj.model.BisInspSafeExtManage;
  40. import cn.com.goldenwater.dcproj.model.GwComFile;
  41. import cn.com.goldenwater.dcproj.param.AttRsBaseCrrctParam;
  42. import cn.com.goldenwater.dcproj.param.AttRsBaseParam;
  43. import cn.com.goldenwater.dcproj.param.BisInspAllObjParam;
  44. import cn.com.goldenwater.dcproj.param.BisInspBaseExtParam;
  45. import cn.com.goldenwater.dcproj.param.BisInspBasePresExtParam;
  46. import cn.com.goldenwater.dcproj.param.BisInspBaseViewParam;
  47. import cn.com.goldenwater.dcproj.param.BisInspPblmParam;
  48. import cn.com.goldenwater.dcproj.param.BisInspPblmPlistParam;
  49. import cn.com.goldenwater.dcproj.param.BisInspPreListParam;
  50. import cn.com.goldenwater.dcproj.param.BisInspPresSafeParam;
  51. import cn.com.goldenwater.dcproj.param.BisInspRsvrBenefitsParam;
  52. import cn.com.goldenwater.dcproj.param.BisInspRsvrPblmMendParam;
  53. import cn.com.goldenwater.dcproj.param.BisInspRsvrProjectParam;
  54. import cn.com.goldenwater.dcproj.param.BisInspRsvrRgstrParam;
  55. import cn.com.goldenwater.dcproj.param.BisInspSafeExtManageParam;
  56. import cn.com.goldenwater.dcproj.param.BisInspVo;
  57. import cn.com.goldenwater.dcproj.param.TypeParam;
  58. import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
  59. import cn.com.goldenwater.dcproj.service.BisInspPblmPlistFormService;
  60. import cn.com.goldenwater.dcproj.service.BisInspPblmPlistService;
  61. import cn.com.goldenwater.dcproj.service.BisInspPblmService;
  62. import cn.com.goldenwater.dcproj.service.BisInspPresSafeService;
  63. import cn.com.goldenwater.dcproj.service.BisInspRsvrPblmMendService;
  64. import cn.com.goldenwater.dcproj.service.BisInspRsvrRgstrService;
  65. import cn.com.goldenwater.dcproj.service.OlBisInspOrgService;
  66. import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
  67. import cn.com.goldenwater.dcproj.utils.Builder;
  68. import cn.com.goldenwater.dcproj.utils.DateUtils;
  69. import cn.com.goldenwater.dcproj.utils.InspUtils;
  70. import cn.com.goldenwater.dcproj.utils.http.HikvisionOpenApiUtil;
  71. import cn.com.goldenwater.id.util.UuidUtil;
  72. import com.github.pagehelper.PageHelper;
  73. import com.github.pagehelper.PageInfo;
  74. import org.apache.commons.lang3.StringUtils;
  75. import org.slf4j.Logger;
  76. import org.slf4j.LoggerFactory;
  77. import org.springframework.beans.BeanUtils;
  78. import org.springframework.beans.factory.annotation.Autowired;
  79. import org.springframework.stereotype.Service;
  80. import org.springframework.transaction.annotation.Transactional;
  81. import javax.servlet.http.HttpServletResponse;
  82. import java.util.ArrayList;
  83. import java.util.Date;
  84. import java.util.List;
  85. import java.util.Map;
  86. import java.util.UUID;
  87. /**
  88. * @author lune
  89. * @date 2019-2-18
  90. */
  91. @Service
  92. @Transactional(rollbackFor = Exception.class)
  93. public class BisInspRsvrRgstrServiceImpl extends AbstractCrudService<BisInspRsvrRgstr, BisInspRsvrRgstrParam> implements BisInspRsvrRgstrService, BisInspObjStrategy {
  94. private final Logger logger = LoggerFactory.getLogger(getClass());
  95. @Autowired
  96. private BisInspRsvrRgstrDao bisInspRsvrRgstrDao;
  97. @Autowired
  98. private BisInspBaseExtDao bisInspBaseExtDao;
  99. @Autowired
  100. private BisInspAllObjDao bisInspAllObjDao;
  101. @Autowired
  102. private AttRsBaseCrrctDao attRsBaseCrrctDao;
  103. @Autowired
  104. private BisInspSafeExtManageDao bisInspSafeExtManageDao;
  105. @Autowired
  106. private BisInspPreListDao bisInspPreListDao;
  107. @Autowired
  108. private BisInspBaseViewDao bisInspBaseViewDao;
  109. @Autowired
  110. private BisInspBasePresExtDao bisInspBasePresExtDao;
  111. @Autowired
  112. private BisInspPblmDao bisInspPblmDao;
  113. @Autowired
  114. private BisInspPblmPlistDao bisInspPblmPlistDao;
  115. @Autowired
  116. private GwComFileDao comFileDao;
  117. @Autowired
  118. private BisInspRsvrBenefitsDao bisInspRsvrBenefitsDao;
  119. @Autowired
  120. private BisInspRsvrProjectDao bisInspRsvrProjectDao;
  121. @Autowired
  122. private BisInspPresSafeService bisInspPresSafeService;
  123. @Autowired
  124. private BisInspRsvrPblmMendService bisInspRsvrPblmMendService;
  125. @Autowired
  126. private BisInspPblmService bisInspPblmService;
  127. @Autowired
  128. private OlBisInspOrgService olBisInspOrgService;
  129. @Autowired
  130. private BisInspPblmPlistService bisInspPblmPlistService;
  131. @Autowired
  132. private BisInspPblmPlistFormService formService;
  133. public BisInspRsvrRgstrServiceImpl(BisInspRsvrRgstrDao bisInspRsvrRgstrDao) {
  134. super(bisInspRsvrRgstrDao);
  135. this.bisInspRsvrRgstrDao = bisInspRsvrRgstrDao;
  136. }
  137. @Override
  138. public int update(BisInspRsvrRgstr entity) {
  139. entity.setUptm(new Date());
  140. String persId = entity.getPersId();
  141. entity.setPersId(null);
  142. String curOrgId = entity.getOrgId();
  143. entity.setOrgId(null);
  144. String curProvince = entity.getProvince();
  145. entity.setProvince(null);
  146. int ret = super.update(entity);
  147. updatePblmState(entity);
  148. //根据所属省份
  149. if (StringUtils.isNotBlank(curProvince) && curProvince.startsWith("5100")) {
  150. // 四川省 水库问题填完之后 提交 直接添加到台账,并启动
  151. autoStartTask(entity, persId, curOrgId, olBisInspOrgService.getDefaultOrg(curOrgId).getOrgNm(), curProvince);
  152. }
  153. return ret;
  154. }
  155. private int autoStartTask(BisInspRsvrRgstr entity, String persId, String curOrgId, String curOrgNm, String curProvince) {
  156. int res = -1;
  157. // 第一步根据 水库登记表ID rgstrId 获取到问题列表
  158. String rgstrId = entity.getRgstrId();
  159. BisInspVo bisInspVo = new BisInspVo();
  160. bisInspVo.setRegid(rgstrId);
  161. List<BisInspVo> pblms = bisInspPblmDao.pblmPage(bisInspVo);
  162. // 督查类型为 水库
  163. if (null != pblms && pblms.size() > 0 && "1".equals(pblms.get(0).getObjType())) {
  164. for (BisInspVo v : pblms) {
  165. if (v.getAdFullName() != null) {
  166. if (v.getAdFullName().contains(SplitValue.HENG_SPLIT)) {
  167. String[] split = v.getAdFullName().split(SplitValue.HENG_SPLIT);
  168. if (split.length == 3) {
  169. v.setProvince(split[0]);
  170. v.setCity(split[1]);
  171. v.setCountry(split[2]);
  172. }
  173. if (split.length == 2) {
  174. v.setProvince(split[0]);
  175. v.setCity(split[1]);
  176. v.setCountry("");
  177. }
  178. } else {
  179. v.setProvince(v.getAdFullName());
  180. }
  181. try {
  182. // 第二步把问题列表 添加到整改待办表 plist 没有添加的添加,添加过未启动的更新 添加过已启动的跳过
  183. BisInspPblmPlist bisInspPblmPlist = new BisInspPblmPlist();
  184. bisInspPblmPlist.setPblmId(v.getPblmId());
  185. bisInspPblmPlist.setProvince(v.getProvince());
  186. bisInspPblmPlist.setCity(v.getCity());
  187. bisInspPblmPlist.setCounty(v.getCountry());
  188. Date pblmTm = DateUtils.Str2Date(v.getInspPblmTm(), "yyyy-MM-dd");
  189. bisInspPblmPlist.setPblmTm(pblmTm);
  190. bisInspPblmPlist.setPblmNameBz(v.getPblmNameBz());
  191. bisInspPblmPlist.setCheckPointBz(v.getCheckPointBz());
  192. bisInspPblmPlist.setPblmDescBz(v.getPblmDescBz());
  193. bisInspPblmPlist.setInspPblmCate(v.getInspPblmCate());
  194. bisInspPblmPlist.setInspPblmDesc(v.getInspPblmDesc());
  195. bisInspPblmPlist.setPblmClassify("小型水库");
  196. bisInspPblmPlist.setObjType(v.getObjType());
  197. bisInspPblmPlist.setObjName(v.getObjName());
  198. bisInspPblmPlist.setPersId(persId);
  199. // 大坝注册登记号
  200. bisInspPblmPlist.setDamRegCode(v.getDamRegCode());
  201. // 根据
  202. BisInspPblmPlistParam pblmPlistParam = new BisInspPblmPlistParam();
  203. pblmPlistParam.setPblmId(v.getPblmId());
  204. // 未删除
  205. pblmPlistParam.setDataStat("0");
  206. List<BisInspPblmPlist> pblmPlists = bisInspPblmPlistService.findList(pblmPlistParam);
  207. if (null == pblmPlists || 0 == pblmPlists.size()) {
  208. // 根据问题id没有在整改信息表中找到记录 认为是新增
  209. bisInspPblmPlist.setSendOrgId(curOrgId);
  210. bisInspPblmPlist.setSendOrgName(curOrgNm);
  211. bisInspPblmPlistService.insert(bisInspPblmPlist);
  212. } else {
  213. // 如果仅有1条就 判断是否启动 是否处理 是否销号 "0"
  214. BisInspPblmPlist pblmPlist = pblmPlists.get(0);
  215. if (1 == pblmPlists.size() && "0".equals(pblmPlist.getIsStart()) && "0".equals(pblmPlist.getPblmState()) && "0".equals(pblmPlist.getPblmOut())) {
  216. // 有且仅有1条整改记录且未处理,未销号,没有启动
  217. bisInspPblmPlist.setId(pblmPlists.get(0).getId());
  218. bisInspPblmPlistService.update(bisInspPblmPlist);
  219. }
  220. }
  221. BisInspPblmPlist finalPblmPlist = bisInspPblmPlistService.get(bisInspPblmPlist.getId());
  222. logger.info("finalPblmPlist:" + finalPblmPlist.toString());
  223. if (null != finalPblmPlist && "0".equals(finalPblmPlist.getIsStart()) && "0".equals(finalPblmPlist.getPblmOut()) && "0".equals(finalPblmPlist.getPblmState())) {
  224. // 第三步把添加的和更新的问题启动
  225. BisInspPblmPlistFormDTO pblmPlistFormDTO = new BisInspPblmPlistFormDTO();
  226. if (finalPblmPlist.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
  227. String[] split = bisInspPblmPlist.getPblmAdName().split(SplitValue.HENG_SPLIT);
  228. if (split.length == 3) {
  229. bisInspPblmPlist.setProvince(split[0]);
  230. bisInspPblmPlist.setCity(split[1]);
  231. bisInspPblmPlist.setCounty(split[2]);
  232. }
  233. if (split.length == 2) {
  234. bisInspPblmPlist.setProvince(split[0]);
  235. bisInspPblmPlist.setCity(split[1]);
  236. }
  237. if (split.length == 1) {
  238. bisInspPblmPlist.setProvince(split[0]);
  239. bisInspPblmPlist.setCity("");
  240. }
  241. }
  242. pblmPlistFormDTO.setPblmPlist(finalPblmPlist);
  243. //启动工作流前名称
  244. logger.info("提交问题启动工作流前:" + pblmPlistFormDTO.getPblmPlist().toString());
  245. // q启动流程 固定人员 向虹宇 ac338ab4785546708826bbf00cc57e17
  246. formService.saveFormsAndStartFlow(pblmPlistFormDTO, "ac338ab4785546708826bbf00cc57e17", curOrgId, curProvince);
  247. }
  248. } catch (Exception e) {
  249. e.printStackTrace();
  250. logger.error(e.getMessage());
  251. }
  252. }
  253. }
  254. }
  255. return res;
  256. }
  257. private void updatePblmState(BisInspRsvrRgstr rgstr) {
  258. BisInspRsvrRgstr r = get(rgstr.getRgstrId());
  259. if (r == null) {
  260. return;
  261. }
  262. logger.info("BisInspRsvrRgstr:" + r.toString());
  263. bisInspPblmService.updateStateByObjId(r.getObjId(), rgstr.getState());
  264. }
  265. @Override
  266. public BisInspRsvrRgstr getBy(BisInspRsvrRgstrParam param) {
  267. BisInspRsvrRgstr rgstr = super.getBy(param);
  268. if (rgstr != null && !"2".equals(rgstr.getRectStat())) {
  269. checkFinished(rgstr);
  270. }
  271. return rgstr;
  272. }
  273. @Override
  274. public BisInspRsvrRgstr get(String key) {
  275. BisInspRsvrRgstr rgstr = super.get(key);
  276. if (rgstr == null) {
  277. return rgstr;
  278. }
  279. if (!"2".equals(rgstr.getRectStat())) {
  280. checkFinished(rgstr);
  281. }
  282. return rgstr;
  283. }
  284. /**
  285. * 更新整改问题状态
  286. * 判断问题是否全部整改
  287. *
  288. * @param rgstr
  289. */
  290. private void checkFinished(BisInspRsvrRgstr rgstr) {
  291. String rectStat = "0";
  292. List<BisInspRsvrPblmMend> pblmMendList = bisInspRsvrPblmMendService.findList(Builder.of(BisInspRsvrPblmMendParam::new).with(BisInspRsvrPblmMendParam::setRsCode, rgstr.getRsCode()).build());
  293. if (pblmMendList == null || pblmMendList.size() == 0) {
  294. rectStat = "2";
  295. } else {
  296. long total = pblmMendList.size();
  297. long revw = pblmMendList.stream().filter(p -> "2".equals(p.getRevwState())).count();
  298. if (total == revw) {
  299. rectStat = "2";
  300. } else if (total > revw && revw != 0) {
  301. rectStat = "1";
  302. }
  303. }
  304. if (!rectStat.equals(rgstr.getRectStat())) {
  305. rgstr.setRectStat(rectStat);
  306. bisInspRsvrRgstrDao.update(rgstr);
  307. }
  308. }
  309. @Override
  310. public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
  311. AttRsBaseParam baseParam = new AttRsBaseParam();
  312. baseParam.setRsCode(bisInspAllObj.getCode());
  313. AttRsBase attRsBase = attRsBaseDao.getBy(baseParam);
  314. BisInspRsvrRgstr b = new BisInspRsvrRgstr();
  315. BeanUtils.copyProperties(attRsBase, b);
  316. String registrId = UUID.randomUUID().toString().replace(SplitValue.HENG_SPLIT, "");
  317. b.setRgstrId(registrId);
  318. b.setObjId(bisInspAllObj.getObjId());
  319. b.setRsvrNm(bisInspAllObj.getNm());
  320. b.setOrgId(bisInspAllObj.getOrgId());
  321. b.setAdCode(attRsBase.getAdmDiv());
  322. b.setRsvrAdmName(attRsBase.getRsAdmName());
  323. if (attRsBase.getRegNo() != null) {
  324. b.setDamRegCode(attRsBase.getRegCode());
  325. }
  326. if (attRsBase.getDamSizeHig() == null) {
  327. b.setDamMaxHigh(null);
  328. } else {
  329. b.setDamMaxHigh(Double.toString(attRsBase.getDamSizeHig()));
  330. }
  331. // if (StringUtils.isNotBlank(attRsBase.getLocation())) {
  332. // b.setHystSite(attRsBase.getLocation());
  333. // } else {
  334. // b.setHystSite(attRsBase.getRsLoc());
  335. // }
  336. b.setHystSite(attRsBase.getRsLoc());
  337. if (attRsBase.getCenterYGd() != null) {
  338. b.setRsvrLat(Double.parseDouble(attRsBase.getCenterYGd()));
  339. }
  340. if (attRsBase.getCenterXGd() != null) {
  341. b.setRsvrLong(Double.parseDouble(attRsBase.getCenterXGd()));
  342. }
  343. b.setResCreateTime(attRsBase.getCompDate());
  344. b.setDamRegCode(attRsBase.getRegCode());
  345. b.setHasDamRegCode("1");
  346. b.setState(StateEnum.NOWASTSTATE.getKey());
  347. b.setPresStat(StateEnum.NOWASTSTATE.getKey());
  348. b.setBaseStat(StateEnum.NOWASTSTATE.getKey());
  349. b.setResRunStat(StateEnum.NOWASTSTATE.getKey());
  350. b.setViewStat(StateEnum.NOWASTSTATE.getKey());
  351. b.setDataStat(StateEnum.NOWASTSTATE.getKey());
  352. b.setSafeStat(StateEnum.NOWASTSTATE.getKey());
  353. Date date = new Date();
  354. b.setIntm(date);
  355. b.setUptm(date);
  356. bisInspRsvrRgstrDao.insert(b);
  357. }
  358. @Override
  359. public String getType() {
  360. return BisInspEnum.REVER.getValue();
  361. }
  362. @Override
  363. public void cleanObjData(String objId) {
  364. BisInspRsvrRgstrParam bisInspRsvrRgstrParam = new BisInspRsvrRgstrParam();
  365. bisInspRsvrRgstrParam.setObjId(objId);
  366. List<BisInspRsvrRgstr> list = this.bisInspRsvrRgstrDao.findList(bisInspRsvrRgstrParam);
  367. if (list.size() > 0) {
  368. String id = list.get(0).getRgstrId();
  369. BisInspBaseViewParam p = new BisInspBaseViewParam();
  370. p.setRgstrId(id);
  371. //获取走访情况
  372. BisInspBaseView bisInspBaseView = this.bisInspBaseViewDao.getBy(p);
  373. if (bisInspBaseView != null) {
  374. //删除走访人员情况
  375. this.bisInspPreListDao.deleteByViewId(bisInspBaseView.getViewId());
  376. }
  377. this.bisInspBaseViewDao.deleteBy(p);//删除水库走访情况
  378. BisInspSafeExtManageParam bisInspSafeExtManageParam = new BisInspSafeExtManageParam();
  379. bisInspSafeExtManageParam.setRgstrId(id);
  380. this.bisInspSafeExtManageDao.deleteBy(bisInspSafeExtManageParam);//删除水库安全运行管理情况
  381. BisInspBaseExtParam bisInspBaseExtParam = new BisInspBaseExtParam();
  382. bisInspBaseExtParam.setRgstrId(id);
  383. this.bisInspBaseExtDao.deleteBy(bisInspBaseExtParam);//删除水库“三项基本要求”落实情况
  384. BisInspBasePresExtParam bisInspBasePresExt = new BisInspBasePresExtParam();
  385. bisInspBasePresExt.setRgstrId(id);
  386. this.bisInspBasePresExtDao.deleteBy(bisInspBasePresExt);//删除水库“三个责任人”落实情况
  387. BisInspRsvrProjectParam bisInspRsvrProjectParam = new BisInspRsvrProjectParam();//水库工程实体情况
  388. bisInspRsvrProjectParam.setRgstrId(id);
  389. bisInspRsvrProjectDao.deleteBy(bisInspRsvrProjectParam);
  390. BisInspRsvrBenefitsParam bisInspRsvrBenefitsParam = new BisInspRsvrBenefitsParam();//水库效益发挥情况
  391. bisInspRsvrBenefitsParam.setRgstrId(id);
  392. bisInspRsvrBenefitsDao.deleteBy(bisInspRsvrBenefitsParam);
  393. // 水库安全管理三级责任人填录状态(青海)
  394. this.bisInspPresSafeService.deleteBy(Builder.of(BisInspPresSafeParam::new)
  395. .with(BisInspPresSafeParam::setRgstrId, id).build());
  396. BisInspRsvrRgstr bisInspRsvrRgstr = this.bisInspRsvrRgstrDao.get(id);
  397. this.bisInspRsvrRgstrDao.delete(id);//删除水库登记表
  398. if (bisInspRsvrRgstr != null) {
  399. BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
  400. bisInspAllObjParam.setObjId(objId);
  401. this.bisInspAllObjDao.deleteBy(bisInspAllObjParam);//删除督查对象
  402. // bisInspAllObjDao.delete(bisInspRsvrRgstr.getObjId());//删除对象名录表
  403. AttRsBaseCrrctParam attRsBaseCrrctParam = new AttRsBaseCrrctParam();
  404. attRsBaseCrrctParam.setObjId(bisInspRsvrRgstr.getObjId());
  405. attRsBaseCrrctDao.deleteBy(attRsBaseCrrctParam);
  406. }
  407. }
  408. }
  409. @Override
  410. public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
  411. return this.findPageByType(typeParam);
  412. }
  413. @Override
  414. public Object findObjListByType(TypeParam typeParam) {
  415. return this.findListByType(typeParam);
  416. }
  417. @Override
  418. public BisInspRsvrRgstr createCheckData(BisInspRsvrRgstr rsvrRgstr, String flag, String currentPersId) {
  419. String regstrId = rsvrRgstr.getRgstrId();
  420. String regstrId_flag = regstrId + "_" + flag;
  421. BisInspRsvrProjectParam rsvrProjectParam = new BisInspRsvrProjectParam();
  422. rsvrProjectParam.setRgstrId(regstrId);
  423. BisInspRsvrProject rsvrProject = bisInspRsvrProjectDao.getBy(rsvrProjectParam);
  424. if (rsvrProject != null) {
  425. rsvrProject.setRgstrId(regstrId_flag);
  426. rsvrProject.setId(UuidUtil.uuid());
  427. rsvrProject.setStatus(flag);
  428. bisInspRsvrProjectDao.insert(rsvrProject);
  429. rsvrRgstr.setReverStat(flag);
  430. }
  431. BisInspRsvrBenefitsParam benefitsParam = new BisInspRsvrBenefitsParam();
  432. benefitsParam.setRgstrId(regstrId);
  433. BisInspRsvrBenefits rsvrBenefits = bisInspRsvrBenefitsDao.getBy(benefitsParam);
  434. if (rsvrBenefits != null) {
  435. rsvrBenefits.setRgstrId(regstrId_flag);
  436. rsvrBenefits.setId(UuidUtil.uuid());
  437. rsvrBenefits.setStatus(flag);
  438. bisInspRsvrBenefitsDao.insert(rsvrBenefits);
  439. rsvrRgstr.setBenefitStat(flag);
  440. }
  441. BisInspBaseViewParam baseViewParam = new BisInspBaseViewParam();
  442. baseViewParam.setRgstrId(regstrId);
  443. BisInspBaseView inspBaseView = bisInspBaseViewDao.getBy(baseViewParam);
  444. if (inspBaseView != null) {
  445. String newViewId = UuidUtil.uuid();
  446. inspBaseView.setViewId(newViewId);
  447. inspBaseView.setRgstrId(regstrId_flag);
  448. inspBaseView.setStatus(flag);
  449. String viewId = inspBaseView.getViewId();
  450. bisInspBaseViewDao.insert(inspBaseView);
  451. BisInspPreListParam preListParam = new BisInspPreListParam();
  452. preListParam.setViewId(viewId);
  453. List<BisInspPreList> inspPreLists = bisInspPreListDao.findList(preListParam);
  454. if (inspPreLists != null && !inspPreLists.isEmpty()) {
  455. for (BisInspPreList inspPreList : inspPreLists) {
  456. inspPreList.setViewPreId(UuidUtil.uuid());
  457. inspPreList.setViewId(newViewId);
  458. bisInspPreListDao.insert(inspPreList);
  459. }
  460. }
  461. rsvrRgstr.setViewStat(flag);
  462. }
  463. BisInspPblmParam pblmParam = new BisInspPblmParam();
  464. pblmParam.setRegid(regstrId);
  465. List<BisInspPblm> pblmList = bisInspPblmDao.findList(pblmParam);
  466. if (pblmList != null && !pblmList.isEmpty()) {
  467. for (BisInspPblm inspPblm : pblmList) {
  468. List<GwComFile> comFiles = comFileDao.findFileByBiz(inspPblm.getPblmId());
  469. String pblmId = UuidUtil.uuid();
  470. inspPblm.setPblmId(pblmId);
  471. inspPblm.setDataStat(flag);
  472. inspPblm.setRegid(regstrId_flag);
  473. if (comFiles != null && !comFiles.isEmpty()) {
  474. for (GwComFile comFile : comFiles) {
  475. comFile.setBizId(pblmId);
  476. comFile.setId(UuidUtil.uuid());
  477. comFileDao.insert(comFile);
  478. }
  479. }
  480. bisInspPblmDao.insert(inspPblm);
  481. }
  482. }
  483. BisInspBasePresExtParam basePresExtParam = new BisInspBasePresExtParam();
  484. basePresExtParam.setRgstrId(regstrId);
  485. BisInspBasePresExt basePresExt = bisInspBasePresExtDao.getBy(basePresExtParam);
  486. if (basePresExt != null) {
  487. basePresExt.setDutyId(UuidUtil.uuid());
  488. basePresExt.setRgstrId(regstrId_flag);
  489. basePresExt.setStatus(flag);
  490. bisInspBasePresExtDao.insert(basePresExt);
  491. rsvrRgstr.setPresStat(flag);
  492. }
  493. BisInspBaseExtParam bisInspBaseExtParam = new BisInspBaseExtParam();
  494. bisInspBaseExtParam.setRgstrId(regstrId);
  495. BisInspBaseExt inspBaseExt = bisInspBaseExtDao.getBy(bisInspBaseExtParam);
  496. if (inspBaseExt != null) {
  497. inspBaseExt.setRgstrId(regstrId_flag);
  498. inspBaseExt.setThrqId(UuidUtil.uuid());
  499. inspBaseExt.setStatus(flag);
  500. bisInspBaseExtDao.insert(inspBaseExt);
  501. rsvrRgstr.setBaseStat(flag);
  502. }
  503. BisInspSafeExtManageParam safeExtManageParam = new BisInspSafeExtManageParam();
  504. safeExtManageParam.setRgstrId(regstrId);
  505. BisInspSafeExtManage safeExtManage = bisInspSafeExtManageDao.getBy(safeExtManageParam);
  506. if (safeExtManage != null) {
  507. safeExtManage.setMngrnId(UuidUtil.uuid());
  508. safeExtManage.setRgstrId(regstrId_flag);
  509. safeExtManage.setStatus(flag);
  510. bisInspSafeExtManageDao.insert(safeExtManage);
  511. rsvrRgstr.setResRunStat(flag);
  512. }
  513. rsvrRgstr.setState(flag);
  514. return rsvrRgstr;
  515. }
  516. /**
  517. * 根据行政 开始时间和结束时间统计小水库 督查对象的列表数据
  518. *
  519. * @param adCode
  520. * @param stTm
  521. * @param enTm
  522. * @return
  523. */
  524. @Override
  525. public BisInspTaskTotal getListByTm(String adCode, Date stTm, Date enTm) {
  526. return bisInspRsvrRgstrDao.getListByTm(adCode, stTm, enTm);
  527. }
  528. @Override
  529. public void updateRsvr(String rgstrId, String status, String input) {
  530. if (StringUtils.isBlank(rgstrId)) {
  531. return;
  532. }
  533. BisInspRsvrRgstr inspRsvrRgstr = bisInspRsvrRgstrDao.get(rgstrId);
  534. if (StringUtils.isBlank(status)) {
  535. status = "2";
  536. }
  537. RsvrEnum rsvrEnum = RsvrEnum.getByValue(input);
  538. if (rsvrEnum == null) {
  539. return;
  540. }
  541. switch (rsvrEnum) {
  542. case PERSSAFE:
  543. inspRsvrRgstr.setSafeStat(status);
  544. break;
  545. case REIN:
  546. inspRsvrRgstr.setReinStat(status);
  547. break;
  548. case DAM:
  549. inspRsvrRgstr.setDamStat(status);
  550. break;
  551. case FITS:
  552. inspRsvrRgstr.setBenefitStat(status);
  553. break;
  554. case PROJECT:
  555. inspRsvrRgstr.setReverStat(status);
  556. break;
  557. case PRES:
  558. inspRsvrRgstr.setPresStat(status);
  559. break;
  560. case VIEW:
  561. inspRsvrRgstr.setViewStat("2");
  562. break;
  563. case EXT:
  564. inspRsvrRgstr.setBaseStat(status);
  565. break;
  566. case SAFE:
  567. inspRsvrRgstr.setResRunStat(status);
  568. break;
  569. default:
  570. }
  571. if (StringUtils.isBlank(inspRsvrRgstr.getState()) ||
  572. StateEnum.NOWASTSTATE.getKey().equals(inspRsvrRgstr.getState())) {
  573. inspRsvrRgstr.setState(StateEnum.EXWASTSTATE.getKey());
  574. } else {
  575. inspRsvrRgstr.setState(inspRsvrRgstr.getState());
  576. }
  577. bisInspRsvrRgstrDao.update(inspRsvrRgstr);
  578. }
  579. @Override
  580. public int deleteRsvrRgstr(String id) {
  581. return bisInspRsvrRgstrDao.deleteInFlag(id);
  582. }
  583. @Override
  584. public int add(BisInspRsvrRgstrData bisInspRsvrRgstrData) {
  585. Date date = new Date();
  586. BisInspRsvrRgstr bisInspRsvrRgstr = bisInspRsvrRgstrData.getRsvrRgstr();
  587. bisInspRsvrRgstr.setState(StateEnum.EXWASTSTATE.getKey());
  588. bisInspRsvrRgstr.setDataStat("0");
  589. bisInspRsvrRgstr.setUptm(date);
  590. bisInspRsvrRgstr.setIntm(date);
  591. BisInspBaseExt baseExt = bisInspRsvrRgstrData.getBaseExt();
  592. baseExt.setUpdateTime(date);
  593. baseExt.setCreateTime(date);
  594. baseExt.setStatus(StatusEnum.START.getStatus());
  595. baseExt.setThrqId(UuidUtil.uuid());
  596. baseExt.setRgstrId(bisInspRsvrRgstr.getRgstrId());
  597. BisInspBaseView baseView = bisInspRsvrRgstrData.getBaseView();
  598. baseView.setRgstrId(bisInspRsvrRgstr.getRgstrId());
  599. baseView.setViewId(UuidUtil.uuid());
  600. baseView.setUpdateTime(date);
  601. baseView.setUpdateTime(date);
  602. BisInspSafeExtManage safeExtManage = bisInspRsvrRgstrData.getSafeExtManage();
  603. safeExtManage.setUpdateTime(date);
  604. safeExtManage.setCreateTime(date);
  605. safeExtManage.setMngrnId(UuidUtil.uuid());
  606. safeExtManage.setRgstrId(bisInspRsvrRgstr.getRgstrId());
  607. safeExtManage.setStatus(StatusEnum.START.getStatus());
  608. BisInspBasePresExt basePresExt = bisInspRsvrRgstrData.getBasePresExt();
  609. basePresExt.setUpdateTime(date);
  610. basePresExt.setCreateTime(date);
  611. basePresExt.setDutyId(UuidUtil.uuid());
  612. basePresExt.setRgstrId(bisInspRsvrRgstr.getRgstrId());
  613. basePresExt.setStatus(StatusEnum.START.getStatus());
  614. InspUtils.addPreList(baseView, bisInspPreListDao);
  615. bisInspBasePresExtDao.insert(basePresExt);
  616. bisInspSafeExtManageDao.insert(safeExtManage);
  617. bisInspBaseViewDao.insert(baseView);
  618. bisInspBaseExtDao.insert(baseExt);
  619. this.insert(bisInspRsvrRgstr);
  620. return 1;
  621. }
  622. @Override
  623. public void updateRG(BisInspRsvrRgstr rsvrRgstr) {
  624. Date date = new Date();
  625. if (StatusEnum.START.getStatus().equals(rsvrRgstr.getResRunStat())) {
  626. BisInspSafeExtManage inspSafeExtManage = new BisInspSafeExtManage();
  627. inspSafeExtManage.setUpdateTime(date);
  628. inspSafeExtManage.setStatus(rsvrRgstr.getState());
  629. inspSafeExtManage.setRgstrId(rsvrRgstr.getRgstrId());
  630. bisInspSafeExtManageDao.updateBy(inspSafeExtManage);
  631. }
  632. BisInspBaseView inspBaseView = new BisInspBaseView();
  633. inspBaseView.setUpdateTime(date);
  634. inspBaseView.setStatus(rsvrRgstr.getState());
  635. inspBaseView.setRgstrId(rsvrRgstr.getRgstrId());
  636. bisInspBaseViewDao.updateBy(inspBaseView);
  637. if (StatusEnum.START.getStatus().equals(rsvrRgstr.getBaseStat())) {
  638. BisInspBaseExt inspBaseExt = new BisInspBaseExt();
  639. inspBaseExt.setUpdateTime(date);
  640. inspBaseExt.setStatus(rsvrRgstr.getState());
  641. inspBaseExt.setRgstrId(rsvrRgstr.getRgstrId());
  642. bisInspBaseExtDao.updateBy(inspBaseExt);
  643. }
  644. if (StatusEnum.START.getStatus().equals(rsvrRgstr.getPresStat())) {
  645. BisInspBasePresExt inspBasePresExt = new BisInspBasePresExt();
  646. inspBasePresExt.setUpdateTime(date);
  647. inspBasePresExt.setStatus(rsvrRgstr.getState());
  648. inspBasePresExt.setRgstrId(rsvrRgstr.getRgstrId());
  649. bisInspBasePresExtDao.updateBy(inspBasePresExt);
  650. }
  651. //提交督查表,更新问题状态
  652. BisInspPblm bisInspPblm = new BisInspPblm();
  653. bisInspPblm.setPblmStat("1");
  654. bisInspPblm.setRegid(rsvrRgstr.getRgstrId());
  655. if (StringUtils.isNotBlank(rsvrRgstr.getRgstrId())) {
  656. bisInspPblmDao.updatePblmStatus(bisInspPblm);
  657. }
  658. bisInspRsvrRgstrDao.update(rsvrRgstr);
  659. }
  660. @Override
  661. public PageInfo<BisInspRsvrRgstrDto> findPageByType(TypeParam typeParam) {
  662. if (StringUtils.isNotBlank(typeParam.getCode())) {
  663. typeParam.setCode(AdLevelUtil.SubAd(typeParam.getCode()).get(SplitValue.SUBAD).toString());
  664. }
  665. PageHelper.startPage(typeParam);
  666. List<BisInspRsvrRgstrDto> list = bisInspRsvrRgstrDao.findPageByType(typeParam);
  667. PageInfo<BisInspRsvrRgstrDto> pageInfo = new PageInfo(list);
  668. return pageInfo;
  669. }
  670. @Override
  671. public List<BisInspRsvrRgstrDto> findListByType(TypeParam typeParam) {
  672. if (StringUtils.isNotBlank(typeParam.getCode())) {
  673. typeParam.setCode(AdLevelUtil.SubAd(typeParam.getCode()).get(SplitValue.SUBAD).toString());
  674. }
  675. List<BisInspRsvrRgstrDto> list = bisInspRsvrRgstrDao.findPageByType(typeParam);
  676. if (list == null) {
  677. return new ArrayList<>();
  678. }
  679. return list;
  680. }
  681. @Autowired
  682. private AttRsBaseDao attRsBaseDao;
  683. @Override
  684. public PageInfo<AttRsBase> findAttBaseInfo(AttRsBaseParam attRsBaseParam) {
  685. PageHelper.startPage(attRsBaseParam);
  686. List<AttRsBase> list = attRsBaseDao.findList(attRsBaseParam);
  687. PageInfo<AttRsBase> pageInfo = new PageInfo(list);
  688. return pageInfo;
  689. }
  690. /**
  691. * 批量设置水库是否省属
  692. *
  693. * @param rsBaseParam
  694. * @return
  695. */
  696. @Override
  697. public int updateBatchProvincial(AttRsBaseParam rsBaseParam) {
  698. return attRsBaseDao.updateBatchProvincial(rsBaseParam);
  699. }
  700. /**
  701. * 根据水库的监控点编号获取到监控预览地址
  702. *
  703. * @param cameraIndexCode
  704. * @return
  705. */
  706. @Override
  707. public Map<String, Object> getMonitorVideoUrlByCameraIndexCode(String cameraIndexCode) {
  708. return HikvisionOpenApiUtil.callPostPreviewURLs(cameraIndexCode);
  709. }
  710. @Override
  711. public PageInfo<BisInspRsvrRgstrPcDto> findPcPage(TypeParam typeParam) {
  712. PageHelper.startPage(typeParam);
  713. List<BisInspRsvrRgstrPcDto> list = bisInspRsvrRgstrDao.findPcPage(typeParam);
  714. if (list.size() > 0) {
  715. for (BisInspRsvrRgstrPcDto b : list) {
  716. if (b.getAdFullName() != null) {
  717. if (b.getAdFullName().contains(SplitValue.HENG_SPLIT)) {
  718. String[] split = b.getAdFullName().split(SplitValue.HENG_SPLIT);
  719. if (split.length == 3) {
  720. b.setProvince(split[0]);
  721. b.setCity(split[1]);
  722. b.setCounty(split[2]);
  723. }
  724. if (split.length == 2) {
  725. b.setProvince(split[0]);
  726. b.setCity(split[1]);
  727. b.setCounty("");
  728. }
  729. } else {
  730. b.setProvince(b.getAdFullName());
  731. }
  732. }
  733. }
  734. }
  735. return new PageInfo<>(list);
  736. }
  737. @Override
  738. public BisInspRsvrRgstr getByRsvrRgstr(BisInspRsvrRgstrParam inspRsvrRgstrParam) {
  739. String state = StateEnum.NOWASTSTATE.getKey();
  740. String persId = inspRsvrRgstrParam.getRecPersId();
  741. inspRsvrRgstrParam.setRecPersId("");
  742. BisInspRsvrRgstr bisInspRsvrRgstr = bisInspRsvrRgstrDao.getBy(inspRsvrRgstrParam);
  743. if (bisInspRsvrRgstr != null) {
  744. if (bisInspRsvrRgstr.getIntm() == null) {
  745. bisInspRsvrRgstr.setIntm(new Date());
  746. bisInspRsvrRgstrDao.update(bisInspRsvrRgstr);
  747. }
  748. return bisInspRsvrRgstr;
  749. }
  750. bisInspRsvrRgstr = new BisInspRsvrRgstr();
  751. AttRsBaseParam baseParam = new AttRsBaseParam();
  752. baseParam.setRsCode(inspRsvrRgstrParam.getRsCode());
  753. AttRsBase attRsBase = attRsBaseDao.getBy(baseParam);
  754. if (attRsBase == null) {
  755. return new BisInspRsvrRgstr();
  756. }
  757. bisInspRsvrRgstr.setRgstrId(UuidUtil.uuid());
  758. bisInspRsvrRgstr.setAdCode(attRsBase.getAdmDiv());
  759. bisInspRsvrRgstr.setRsvrAdmName(attRsBase.getRsAdmName());
  760. if (attRsBase.getDamSizeHig() == null) {
  761. bisInspRsvrRgstr.setDamMaxHigh(null);
  762. } else {
  763. bisInspRsvrRgstr.setDamMaxHigh(Double.toString(attRsBase.getDamSizeHig()));
  764. }
  765. bisInspRsvrRgstr.setDamType(attRsBase.getDamType());
  766. bisInspRsvrRgstr.setDamRegCode(attRsBase.getRegCode());
  767. bisInspRsvrRgstr.setEngScal(attRsBase.getEngScal());
  768. bisInspRsvrRgstr.setObjId(inspRsvrRgstrParam.getObjId());
  769. bisInspRsvrRgstr.setHystSite(attRsBase.getRsLoc());
  770. bisInspRsvrRgstr.setLocation(attRsBase.getLocation());
  771. bisInspRsvrRgstr.setState(state);
  772. bisInspRsvrRgstr.setRsCode(inspRsvrRgstrParam.getRsCode());
  773. bisInspRsvrRgstr.setTotCap(attRsBase.getTotCap());
  774. if (attRsBase.getCenterYGd() != null) {
  775. bisInspRsvrRgstr.setRsvrLat(Double.parseDouble(attRsBase.getCenterYGd()));
  776. }
  777. if (attRsBase.getCenterXGd() != null) {
  778. bisInspRsvrRgstr.setRsvrLong(Double.parseDouble(attRsBase.getCenterXGd()));
  779. }
  780. bisInspRsvrRgstr.setDataStat(state);
  781. Date date = new Date();
  782. bisInspRsvrRgstr.setIntm(date);
  783. bisInspRsvrRgstr.setUptm(date);
  784. bisInspRsvrRgstr.setPresStat(state);
  785. bisInspRsvrRgstr.setRecPersId(persId);
  786. bisInspRsvrRgstr.setResCreateTime(attRsBase.getCompDate());
  787. bisInspRsvrRgstr.setHasDamRegCode("1");
  788. bisInspRsvrRgstr.setCompDateStr(attRsBase.getCompDateStr());
  789. bisInspRsvrRgstr.setViewStat(state);
  790. bisInspRsvrRgstr.setRsvrNm(attRsBase.getRsName());
  791. bisInspRsvrRgstr.setBaseStat(state);
  792. bisInspRsvrRgstr.setReverStat(state);
  793. bisInspRsvrRgstr.setResRunStat(state);
  794. bisInspRsvrRgstr.setIsSaf(attRsBase.getIsSaf());
  795. bisInspRsvrRgstr.setIsAction(attRsBase.getIsAction());
  796. bisInspRsvrRgstr.setInspType(attRsBase.getInspType());
  797. this.insert(bisInspRsvrRgstr);
  798. return bisInspRsvrRgstr;
  799. }
  800. @Override
  801. public int insert(BisInspRsvrRgstr b) {
  802. int ret = 1;
  803. String objId = b.getObjId();
  804. BisInspRsvrRgstrParam bisInspRsvrRgstrParam = new BisInspRsvrRgstrParam();
  805. bisInspRsvrRgstrParam.setObjId(objId);
  806. List<BisInspRsvrRgstr> list = bisInspRsvrRgstrDao.findList(bisInspRsvrRgstrParam);
  807. if (list == null || list.size() == 0) {
  808. ret = bisInspRsvrRgstrDao.insert(b);
  809. }
  810. return ret;
  811. }
  812. /**
  813. * 四川省 编辑水库的注册登记号
  814. *
  815. * @param inspPblmPlist
  816. * @return
  817. */
  818. @Override
  819. public int updateRsvrDamRegCode(BisInspPblmPlist inspPblmPlist) {
  820. int rows = 0;
  821. // 更新整改问题的注册登记号
  822. BisInspPblmPlist updateItem = new BisInspPblmPlist();
  823. updateItem.setId(inspPblmPlist.getId());
  824. updateItem.setDamRegCode(inspPblmPlist.getDamRegCode());
  825. Date curDate = new Date();
  826. updateItem.setUptm(curDate);
  827. rows = this.bisInspPblmPlistDao.update(updateItem);
  828. // 更新登记表中的 注册登记号
  829. List<BisInspRsvrRgstr> rgstrList = this.bisInspRsvrRgstrDao.getByPblmId(inspPblmPlist.getPblmId());
  830. if (null != rgstrList && rgstrList.size() > 0) {
  831. BisInspRsvrRgstr bisInspRsvrRgstr = new BisInspRsvrRgstr();
  832. bisInspRsvrRgstr.setUptm(curDate);
  833. BisInspRsvrRgstr item = rgstrList.get(0);
  834. String rsCode = item.getRsCode();
  835. if (StringUtils.isNotEmpty(rsCode)) {
  836. bisInspRsvrRgstr.setRsCode(rsCode);
  837. bisInspRsvrRgstr.setDamRegCode(inspPblmPlist.getDamRegCode());
  838. // 更新水库登记表中的注册登记号 把此水库的所有注册登记表都更新
  839. rows = this.bisInspRsvrRgstrDao.updateDamRegCodeByRsCode(bisInspRsvrRgstr);
  840. // 更新水库的所有整改问题的注册登记号
  841. updateItem.setId(null);
  842. updateItem.setObjCode(rsCode);
  843. this.bisInspPblmPlistDao.updateDamRegCodeByRsCode(updateItem);
  844. }
  845. // 更新基础表中的大坝注册登记号
  846. BisInspAllObj inspAllObj = this.bisInspAllObjDao.get(item.getObjId());
  847. if (null != inspAllObj && StringUtils.isNotEmpty(inspAllObj.getCode())) {
  848. AttRsBase attRsBase = new AttRsBase();
  849. attRsBase.setRegCode(bisInspRsvrRgstr.getDamRegCode());
  850. attRsBase.setRsCode(inspAllObj.getCode());
  851. attRsBase.setUptm(curDate);
  852. this.attRsBaseDao.updateRegCodeByCode(attRsBase);
  853. }
  854. }
  855. return rows;
  856. }
  857. }