8294e4a99a311bb79e2ffdfc54f9018c78d2a3f6.svn-base 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  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.SplitValue;
  5. import cn.com.goldenwater.dcproj.dao.BisInspWagajsBdgDao;
  6. import cn.com.goldenwater.dcproj.dto.BisInspWagajsBdgDto;
  7. import cn.com.goldenwater.dcproj.model.*;
  8. import cn.com.goldenwater.dcproj.param.BisInspWagajsBdgDmamParam;
  9. import cn.com.goldenwater.dcproj.param.BisInspWagajsBdgParam;
  10. import cn.com.goldenwater.dcproj.param.TypeParam;
  11. import cn.com.goldenwater.dcproj.service.AttWagaBaseService;
  12. import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
  13. import cn.com.goldenwater.dcproj.service.BisInspWagajsBdgDmamService;
  14. import cn.com.goldenwater.dcproj.service.BisInspWagajsBdgService;
  15. import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
  16. import cn.com.goldenwater.dcproj.utils.Builder;
  17. import cn.com.goldenwater.dcproj.utils.Constant;
  18. import cn.com.goldenwater.id.util.UuidUtil;
  19. import com.github.pagehelper.PageHelper;
  20. import com.github.pagehelper.PageInfo;
  21. import org.apache.commons.collections.MapUtils;
  22. import org.apache.commons.lang.StringUtils;
  23. import org.springframework.beans.BeanUtils;
  24. import org.springframework.beans.factory.annotation.Autowired;
  25. import org.springframework.stereotype.Service;
  26. import org.springframework.transaction.annotation.Transactional;
  27. import javax.servlet.http.HttpServletResponse;
  28. import java.util.Date;
  29. import java.util.List;
  30. import java.util.Map;
  31. /**
  32. * @author lhc
  33. * @date 2021-5-10
  34. */
  35. @Service
  36. @Transactional
  37. public class BisInspWagajsBdgServiceImpl extends AbstractCrudService<BisInspWagajsBdg, BisInspWagajsBdgParam> implements BisInspWagajsBdgService, BisInspObjStrategy {
  38. @Autowired
  39. private BisInspWagajsBdgDao bisInspWagajsBdgDao;
  40. @Autowired
  41. private AttWagaBaseService attWagaBaseService;
  42. @Autowired
  43. private BisInspWagajsBdgDmamService bisInspWagajsBdgDmamService;
  44. public BisInspWagajsBdgServiceImpl(BisInspWagajsBdgDao bisInspWagajsBdgDao) {
  45. super(bisInspWagajsBdgDao);
  46. this.bisInspWagajsBdgDao = bisInspWagajsBdgDao;
  47. }
  48. @Override
  49. public int insert(BisInspWagajsBdg bisInspWagajsBdg) {
  50. String uuid = UuidUtil.uuid(); // 生成uuid
  51. bisInspWagajsBdg.setId(uuid);
  52. bisInspWagajsBdg.setIntm(new Date());
  53. bisInspWagajsBdg.setUptm(new Date());
  54. bisInspWagajsBdg.setDataStat("0");
  55. return this.bisInspWagajsBdgDao.insert(bisInspWagajsBdg);
  56. }
  57. @Override
  58. public int update(BisInspWagajsBdg bisInspWagajsBdg) {
  59. bisInspWagajsBdg.setUptm(new Date());
  60. int ret = this.bisInspWagajsBdgDao.update(bisInspWagajsBdg);
  61. // 更新基础表
  62. if (StringUtils.isNotBlank(bisInspWagajsBdg.getObjCode())) {
  63. updateAttWagaBase(bisInspWagajsBdg);
  64. }
  65. return ret;
  66. }
  67. void updateAttWagaBase(BisInspWagajsBdg bisInspWagajsBdg) {
  68. AttWagaCrrct attWagaCrrct = new AttWagaCrrct();
  69. BeanUtils.copyProperties(bisInspWagajsBdg, attWagaCrrct);
  70. attWagaCrrct.setId(null);
  71. attWagaBaseService.update(attWagaCrrct);
  72. }
  73. @Override
  74. public int delete(String id) {
  75. return this.bisInspWagajsBdgDao.delete(id);
  76. }
  77. @Override
  78. public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
  79. BisInspWagajsBdg b = new BisInspWagajsBdg();
  80. AttWagaBase base = attWagaBaseService.get(bisInspAllObj.getCode());
  81. BeanUtils.copyProperties(base, b);
  82. b.setObjId(bisInspAllObj.getObjId());
  83. b.setPersId(bisInspAllObj.getPersId());
  84. /* 添加 登记表 */
  85. String uuid = UuidUtil.uuid();
  86. b.setId(uuid);
  87. b.setIntm(new Date());
  88. b.setUptm(new Date());
  89. b.setDmamStat("0");
  90. b.setState("0");
  91. b.setDataStat("0");
  92. this.bisInspWagajsBdgDao.insert(b);
  93. /* 添加 子表 */
  94. this.bisInspWagajsBdgDmamService.insert(Builder.of(BisInspWagajsBdgDmam::new).with(BisInspWagajsBdgDmam::setRgstrId, uuid).build());
  95. }
  96. @Override
  97. public String getType() {
  98. return BisInspEnum.WAGAJS.getValue();
  99. }
  100. @Override
  101. public void cleanObjData(String objId) {
  102. BisInspWagajsBdgParam rgstrParam = new BisInspWagajsBdgParam();
  103. rgstrParam.setObjId(objId);
  104. List<BisInspWagajsBdg> list = this.bisInspWagajsBdgDao.findList(rgstrParam);
  105. if (list.size() > 0) {
  106. String id = list.get(0).getId();
  107. // 删除子表
  108. this.bisInspWagajsBdgDmamService.deleteBy(Builder.of(BisInspWagajsBdgDmamParam::new).with(BisInspWagajsBdgDmamParam::setRgstrId, id).build());
  109. // 删除登记表
  110. this.bisInspWagajsBdgDao.delete(id);
  111. }
  112. }
  113. @Override
  114. public Object findObjListByType(TypeParam typeParam) {
  115. return this.bisInspWagajsBdgDao.findPageList(typeParam);
  116. }
  117. @Override
  118. public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
  119. if (StringUtils.isNotBlank(typeParam.getAdCode())) {
  120. typeParam.setAdCode(String.valueOf(AdLevelUtil.SubAd(typeParam.getAdCode()).get(SplitValue.SUBAD)));
  121. }
  122. PageHelper.startPage(typeParam);
  123. List<BisInspWagajsBdgDto> list = this.bisInspWagajsBdgDao.findPageList(typeParam);
  124. if (list != null && list.size() > 0) {
  125. list.forEach(rgstrDto -> {
  126. if (StringUtils.isNotBlank(rgstrDto.getAdFullName())) {
  127. String[] adFullNames = rgstrDto.getAdFullName().split("-");
  128. rgstrDto.setProName(adFullNames[0]);
  129. if (adFullNames.length > 1) {
  130. rgstrDto.setCityName(adFullNames[1]);
  131. }
  132. if (adFullNames.length > 2) {
  133. rgstrDto.setCountyName(adFullNames[2]);
  134. }
  135. }
  136. });
  137. }
  138. return new PageInfo<>(list);
  139. }
  140. @Override
  141. public void updateState(Map<String, Object> map) {
  142. BisInspWagajsBdg rgstr = get(MapUtils.getString(map, "rgstrId"));
  143. if (!Constant.STRING_TWO.equals(rgstr.getState())) {
  144. rgstr.setUptm(new Date());
  145. rgstr.setState(Constant.STRING_ONE);
  146. if ("dmam".equals(MapUtils.getString(map, "param"))) {
  147. if (StringUtils.isBlank(rgstr.getDmamStat()) &&
  148. !"2".equals(MapUtils.getString(map, "state"))) {
  149. map.put("state", "1");
  150. }
  151. if (StringUtils.isNotBlank(MapUtils.getString(map, "state"))) {
  152. rgstr.setDmamStat(MapUtils.getString(map, "state"));
  153. }
  154. }
  155. update(rgstr);
  156. }
  157. }
  158. }