49b3607cb0ac014ffbf7e8571a572157bdd183f7.svn-base 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  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.BisInspKeychkqhRegisterDao;
  6. import cn.com.goldenwater.dcproj.dto.BisInspKeychkqhRegisterDto;
  7. import cn.com.goldenwater.dcproj.model.*;
  8. import cn.com.goldenwater.dcproj.param.BisInspKeychkqhRegisterParam;
  9. import cn.com.goldenwater.dcproj.param.TypeParam;
  10. import cn.com.goldenwater.dcproj.service.*;
  11. import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
  12. import cn.com.goldenwater.dcproj.utils.Builder;
  13. import cn.com.goldenwater.id.util.UuidUtil;
  14. import com.github.pagehelper.PageHelper;
  15. import com.github.pagehelper.PageInfo;
  16. import org.apache.commons.lang.StringUtils;
  17. import org.springframework.beans.BeanUtils;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.stereotype.Service;
  20. import org.springframework.transaction.annotation.Transactional;
  21. import javax.servlet.http.HttpServletResponse;
  22. import java.util.ArrayList;
  23. import java.util.Date;
  24. import java.util.List;
  25. /**
  26. * @author lhc
  27. * @date 2021-6-25
  28. */
  29. @Service
  30. @Transactional
  31. public class BisInspKeychkqhRegisterServiceImpl extends AbstractCrudService<BisInspKeychkqhRegister, BisInspKeychkqhRegisterParam> implements BisInspKeychkqhRegisterService, BisInspObjStrategy{
  32. @Autowired
  33. private BisInspKeychkqhRegisterDao bisInspKeychkqhRegisterDao;
  34. @Autowired
  35. private AttEmpwtprjBaseService attEmpwtprjBaseService;
  36. @Autowired
  37. private BisInspKeychkqhSectionService bisInspKeychkqhSectionService;
  38. @Autowired
  39. private BisInspKeychkqhUnitService bisInspKeychkqhUnitService;
  40. public BisInspKeychkqhRegisterServiceImpl(BisInspKeychkqhRegisterDao bisInspKeychkqhRegisterDao) {
  41. super(bisInspKeychkqhRegisterDao);
  42. this.bisInspKeychkqhRegisterDao = bisInspKeychkqhRegisterDao;
  43. }
  44. @Override
  45. public int insert(BisInspKeychkqhRegister bisInspKeychkqhRegister) {
  46. String uuid = UuidUtil.uuid(); // 生成uuid
  47. bisInspKeychkqhRegister.setId(uuid);
  48. bisInspKeychkqhRegister.setIntm(new Date());
  49. bisInspKeychkqhRegister.setUptm(new Date());
  50. bisInspKeychkqhRegister.setDataStat("0");
  51. return this.bisInspKeychkqhRegisterDao.insert(bisInspKeychkqhRegister);
  52. }
  53. @Override
  54. public int update(BisInspKeychkqhRegister bisInspKeychkqhRegister) {
  55. bisInspKeychkqhRegister.setUptm(new Date());
  56. int ret = bisInspKeychkqhRegisterDao.update(bisInspKeychkqhRegister);
  57. updateAttBase(bisInspKeychkqhRegister);
  58. return ret;
  59. }
  60. private void updateAttBase(BisInspKeychkqhRegister rgstr) {
  61. BisInspKeychkqhRegister r = get(rgstr.getId());
  62. AttEmpwtprjBase base = attEmpwtprjBaseService.getObjId(r.getObjId());
  63. base.setPtype(r.getPtype());
  64. base.setAdCode(r.getAdCode());
  65. base.setNm(r.getNm());
  66. base.setStwktm(r.getStwktm()==null ? "" : String.valueOf(r.getStwktm()));
  67. base.setPlantm(r.getPlantm());
  68. base.setEstapp(r.getEstapp()==null ? "" : String.valueOf(r.getEstapp()));
  69. base.setLgtd(r.getLgtd());
  70. base.setLttd(r.getLttd());
  71. base.setLgtdPc(r.getLgtdPc());
  72. base.setLttdPc(r.getLttdPc());
  73. base.setUnitId(r.getUnitId());
  74. base.setUnitNm(r.getUnitNm());
  75. base.setIntm(r.getIntm());
  76. base.setUptm(r.getUptm());
  77. base.setNote(r.getNote());
  78. base.setEngSta(r.getEngSta());
  79. base.setBuidTimeYear(r.getBuidTimeYear()== null ? "":String.valueOf(r.getBuidTimeYear()));
  80. base.setEngProfil(r.getEngProfil());
  81. base.setEngBuild(r.getEngBuild());
  82. attEmpwtprjBaseService.update(base);
  83. }
  84. @Override
  85. public int delete(String id) {
  86. return this.bisInspKeychkqhRegisterDao.delete(id);
  87. }
  88. @Override
  89. public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
  90. BisInspKeychkqhRegister b = new BisInspKeychkqhRegister();
  91. AttEmpwtprjBase base = attEmpwtprjBaseService.get(bisInspAllObj.getCode());
  92. BeanUtils.copyProperties(base, b);
  93. b.setObjId(bisInspAllObj.getObjId());
  94. b.setId(UuidUtil.uuid());
  95. b.setRecPersId(persId);
  96. b.setIntm(new Date());
  97. b.setUptm(new Date());
  98. b.setDataStat("0");
  99. b.setState("0");
  100. bisInspKeychkqhRegisterDao.insert(b);
  101. }
  102. @Override
  103. public String getType() {
  104. return BisInspEnum.KEYCHKQH.getValue();
  105. }
  106. @Override
  107. public void cleanObjData(String objId) {
  108. BisInspKeychkqhRegisterParam rgstrParam = new BisInspKeychkqhRegisterParam();
  109. rgstrParam.setObjId(objId);
  110. List<BisInspKeychkqhRegister> list = this.bisInspKeychkqhRegisterDao.findList(rgstrParam);
  111. if(list.size() > 0){
  112. String id = list.get(0).getId();
  113. this.bisInspKeychkqhRegisterDao.delete(id);
  114. }
  115. }
  116. @Override
  117. public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
  118. if (StringUtils.isNotBlank(typeParam.getAdCode())) {
  119. typeParam.setAdCode(String.valueOf(AdLevelUtil.SubAd(typeParam.getAdCode()).get(SplitValue.SUBAD)));
  120. }
  121. PageHelper.startPage(typeParam);
  122. List<BisInspKeychkqhRegisterDto> list = this.bisInspKeychkqhRegisterDao.findPageList(typeParam);
  123. return new PageInfo<>(list);
  124. }
  125. @Override
  126. public List<BisInspAllNode> keychkqhTree(TypeParam typeParam) {
  127. List<BisInspKeychkqhRegisterDto> list = bisInspKeychkqhRegisterDao.findPageList(typeParam);
  128. ArrayList<BisInspAllNode> nodes = new ArrayList<>();
  129. for(BisInspKeychkqhRegisterDto reg : list){
  130. BisInspAllNode node = Builder.of(BisInspAllNode::new)
  131. .with(BisInspAllNode::setId, reg.getId())
  132. .with(BisInspAllNode::setPid, "0")
  133. .with(BisInspAllNode::setPnm, reg.getNm())
  134. .with(BisInspAllNode::setObjId, reg.getObjId())
  135. .with(BisInspAllNode::setCode, reg.getCode())
  136. .with(BisInspAllNode::setState, reg.getState())
  137. .with(BisInspAllNode::setLevel, "1")
  138. .with(BisInspAllNode::setNodeId, reg.getNodeId())
  139. .with(BisInspAllNode::setChildren, new ArrayList<>())
  140. .build();
  141. nodes.add(node);
  142. // 添加登记表下的 标段
  143. addSection(node);
  144. }
  145. return nodes;
  146. }
  147. void addSection(BisInspAllNode node) {
  148. List<BisInspKeychkqhSection> sectionList = bisInspKeychkqhSectionService.listByRegId(node.getId());
  149. for (BisInspKeychkqhSection sec : sectionList){
  150. BisInspAllNode secNode = new BisInspAllNode();
  151. secNode.setId(sec.getId());
  152. secNode.setObjId(sec.getObjId());
  153. secNode.setPnm(sec.getNm());
  154. secNode.setPid(node.getId());
  155. secNode.setLevel("2");
  156. secNode.setChildren(new ArrayList<>());
  157. // 添加标段下的公司
  158. addUnit(secNode);
  159. node.getChildren().add(secNode);
  160. }
  161. }
  162. void addUnit(BisInspAllNode section) {
  163. List<BisInspKeychkqhUnit> unitList = bisInspKeychkqhUnitService.listBySecId(section.getId());
  164. for (BisInspKeychkqhUnit unit : unitList) {
  165. BisInspAllNode unitNode = new BisInspAllNode();
  166. unitNode.setId(unit.getId());
  167. unitNode.setPnm(unit.getNm());
  168. unitNode.setObjId(unit.getObjId());
  169. unitNode.setPid(section.getId());
  170. unitNode.setNature(unit.getNature());
  171. unitNode.setLevel("3");
  172. unitNode.setNature(unit.getNature());
  173. section.getChildren().add(unitNode);
  174. }
  175. }
  176. @Override
  177. public Object findObjListByType(TypeParam typeParam) {
  178. return this.bisInspKeychkqhRegisterDao.findPageList(typeParam);
  179. }
  180. }