332c8e1887b9f1c1cc73750192b935ab0d5d2bfb.svn-base 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. package cn.com.goldenwater.dcproj.service.impl;
  2. import cn.com.goldenwater.core.service.AbstractCrudService;
  3. import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
  4. import cn.com.goldenwater.dcproj.constValue.CommonLabel;
  5. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  6. import cn.com.goldenwater.dcproj.dao.BisInspAllObjDao;
  7. import cn.com.goldenwater.dcproj.dao.BisInspDrdmpRgstrDao;
  8. import cn.com.goldenwater.dcproj.dao.BisInspPblmDao;
  9. import cn.com.goldenwater.dcproj.dto.BisInspDrdmpRgstrDto;
  10. import cn.com.goldenwater.dcproj.model.*;
  11. import cn.com.goldenwater.dcproj.param.*;
  12. import cn.com.goldenwater.dcproj.service.AttDepBaseService;
  13. import cn.com.goldenwater.dcproj.service.BisInspDrdmpItemService;
  14. import cn.com.goldenwater.dcproj.service.BisInspDrdmpRgstrService;
  15. import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
  16. import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
  17. import cn.com.goldenwater.id.util.UuidUtil;
  18. import com.github.pagehelper.PageHelper;
  19. import com.github.pagehelper.PageInfo;
  20. import org.apache.commons.lang3.StringUtils;
  21. import org.springframework.beans.BeanUtils;
  22. import org.springframework.beans.factory.annotation.Autowired;
  23. import org.springframework.stereotype.Service;
  24. import org.springframework.transaction.annotation.Transactional;
  25. import javax.servlet.http.HttpServletResponse;
  26. import java.util.Date;
  27. import java.util.List;
  28. /**
  29. * @author lhc
  30. * @date 2021-1-5
  31. */
  32. @Service
  33. @Transactional
  34. public class BisInspDrdmpRgstrServiceImpl extends AbstractCrudService<BisInspDrdmpRgstr, BisInspDrdmpRgstrParam> implements BisInspDrdmpRgstrService, BisInspObjStrategy {
  35. @Autowired
  36. private BisInspDrdmpRgstrDao bisInspDrdmpRgstrDao;
  37. @Autowired
  38. private BisInspDrdmpItemService bisInspDrdmpItemService;
  39. @Autowired
  40. private AttDepBaseService attDepBaseService;
  41. @Autowired
  42. private BisInspPblmDao bisInspPblmDao;
  43. @Autowired
  44. private BisInspAllObjDao bisInspAllObjDao;
  45. public BisInspDrdmpRgstrServiceImpl(BisInspDrdmpRgstrDao bisInspDrdmpRgstrDao) {
  46. super(bisInspDrdmpRgstrDao);
  47. this.bisInspDrdmpRgstrDao = bisInspDrdmpRgstrDao;
  48. }
  49. @Override
  50. public int insert(BisInspDrdmpRgstr bisInspDrdmpRgstr) {
  51. String uuid = UuidUtil.uuid();
  52. bisInspDrdmpRgstr.setId(uuid);
  53. bisInspDrdmpRgstr.setIntm(new Date());
  54. bisInspDrdmpRgstr.setUptm(new Date());
  55. bisInspDrdmpRgstr.setDataStat("0");
  56. return this.bisInspDrdmpRgstrDao.insert(bisInspDrdmpRgstr);
  57. }
  58. @Override
  59. public int update(BisInspDrdmpRgstr bisInspDrdmpRgstr) {
  60. bisInspDrdmpRgstr.setUptm(new Date());
  61. int ret = this.bisInspDrdmpRgstrDao.update(bisInspDrdmpRgstr);
  62. // 更新基础表信息
  63. updateAttBase(bisInspDrdmpRgstr);
  64. return ret;
  65. }
  66. private void updateAttBase(BisInspDrdmpRgstr bisInspDrdmpRgstr) {
  67. BisInspDrdmpRgstr rgstr = get(bisInspDrdmpRgstr.getId());
  68. AttDepBase attDepBase = attDepBaseService.getObjId(rgstr.getObjId());
  69. DepBase depBase = new DepBase();
  70. BeanUtils.copyProperties(rgstr, depBase);
  71. BeanUtils.copyProperties(depBase, attDepBase);
  72. attDepBaseService.update(attDepBase);
  73. }
  74. @Override
  75. public int delete(String id) {
  76. return this.bisInspDrdmpRgstrDao.delete(id);
  77. }
  78. @Override
  79. public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
  80. BisInspDrdmpRgstr b = new BisInspDrdmpRgstr();
  81. AttDepBase base = attDepBaseService.get(bisInspAllObj.getCode());
  82. BeanUtils.copyProperties(base, b);
  83. // 统一字段 rgstrId, objId
  84. b.setId(UuidUtil.uuid());
  85. b.setObjId(bisInspAllObj.getObjId());
  86. // 日期
  87. Date d = new Date();
  88. b.setIntm(d);
  89. b.setUptm(d);
  90. // 数据状态 默认为 0
  91. b.setDataStat(CommonLabel.INIT_DATA);
  92. // 督查状态(0:未督查;1:督查中;2:已督查)
  93. b.setState(CommonLabel.INIT_DATA);
  94. // 子表状态(0:未督查;1:督查中;2:已督查)
  95. b.setItemState(CommonLabel.INIT_DATA);
  96. // 创建人
  97. // b.setPersId(persId);
  98. /* 添加 登记表 */
  99. this.bisInspDrdmpRgstrDao.insert(b);
  100. /* 添加 子表 */
  101. BisInspDrdmpItem item = new BisInspDrdmpItem();
  102. item.setRgstrId(b.getId());
  103. bisInspDrdmpItemService.insert(item);
  104. }
  105. @Override
  106. public String getType() {
  107. return BisInspEnum.DRDMP.getValue();
  108. }
  109. @Override
  110. public void cleanObjData(String objId) {
  111. BisInspDrdmpRgstrParam rgstrParam = new BisInspDrdmpRgstrParam();
  112. rgstrParam.setObjId(objId);
  113. List<BisInspDrdmpRgstr> list = this.bisInspDrdmpRgstrDao.findList(rgstrParam);
  114. if (list.size() > 0) {
  115. String id = list.get(0).getId();
  116. // 删除子表
  117. BisInspDrdmpItemParam wtupParam = new BisInspDrdmpItemParam();
  118. wtupParam.setRgstrId(id);
  119. bisInspDrdmpItemService.deleteBy(wtupParam);
  120. // 删除登记表
  121. this.bisInspDrdmpRgstrDao.delete(id);
  122. }
  123. }
  124. @Override
  125. public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
  126. if (StringUtils.isNotBlank(typeParam.getAdCode())) {
  127. typeParam.setAdCode(String.valueOf(AdLevelUtil.SubAd(typeParam.getAdCode()).get(SplitValue.SUBAD)));
  128. }
  129. PageHelper.startPage(typeParam);
  130. List<BisInspDrdmpRgstrDto> list = this.bisInspDrdmpRgstrDao.findPageList(typeParam);
  131. return new PageInfo<>(list);
  132. }
  133. @Override
  134. public Object findObjListByType(TypeParam typeParam) {
  135. return this.bisInspDrdmpRgstrDao.findPageList(typeParam);
  136. }
  137. }