22580c6c5978378a698a552d41b1ef8471a32e13.svn-base 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. package cn.com.goldenwater.dcproj.service.impl.waga;
  2. import cn.com.goldenwater.core.service.AbstractCrudService;
  3. import cn.com.goldenwater.dcproj.constValue.SplitValue;
  4. import cn.com.goldenwater.dcproj.dao.AttWagaBaseDao;
  5. import cn.com.goldenwater.dcproj.dao.AttWagaRgstrDao;
  6. import cn.com.goldenwater.dcproj.model.AttWagaBase;
  7. import cn.com.goldenwater.dcproj.model.AttWagaCrrct;
  8. import cn.com.goldenwater.dcproj.model.AttWagaRgstr;
  9. import cn.com.goldenwater.dcproj.param.AttWagaBaseParam;
  10. import cn.com.goldenwater.dcproj.param.AttWagaCrrctParam;
  11. import cn.com.goldenwater.dcproj.param.AttWagaRgstrParam;
  12. import cn.com.goldenwater.dcproj.param.PersObjParam;
  13. import cn.com.goldenwater.dcproj.service.AttWagaBaseService;
  14. import cn.com.goldenwater.dcproj.service.AttWagaCrrctService;
  15. import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
  16. import cn.com.goldenwater.dcproj.utils.BeanUtil;
  17. import cn.com.goldenwater.dcproj.utils.expExcel.ExcelExport;
  18. import cn.com.goldenwater.dcproj.utils.expExcel.ExportAbstract;
  19. import cn.com.goldenwater.dcproj.utils.expExcel.ExportUtil;
  20. import cn.com.goldenwater.id.util.UuidUtil;
  21. import com.github.pagehelper.PageHelper;
  22. import com.github.pagehelper.PageInfo;
  23. import org.apache.commons.lang3.StringUtils;
  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.ArrayList;
  29. import java.util.Date;
  30. import java.util.List;
  31. import java.util.Map;
  32. /**
  33. * @author lune
  34. * @date 2019-4-22
  35. */
  36. @Service
  37. @Transactional(rollbackFor = Exception.class)
  38. public class AttWagaBaseServiceImpl extends AbstractCrudService<AttWagaBase, AttWagaBaseParam> implements AttWagaBaseService {
  39. @Autowired
  40. private AttWagaBaseDao attWagaBaseDao;
  41. @Autowired
  42. private AttWagaCrrctService attWagaCrrctService;
  43. @Autowired
  44. private AttWagaRgstrDao attWagaRgstrDao;
  45. public AttWagaBaseServiceImpl(AttWagaBaseDao attWagaBaseDao) {
  46. super(attWagaBaseDao);
  47. this.attWagaBaseDao = attWagaBaseDao;
  48. }
  49. @Override
  50. public void update(AttWagaCrrct attWagaBase) {
  51. AttWagaCrrctParam crrctParam = new AttWagaCrrctParam();
  52. crrctParam.setPersId(attWagaBase.getPersId());
  53. crrctParam.setObjCode(attWagaBase.getObjCode());
  54. List<AttWagaCrrct> attWagaCrrctList = attWagaCrrctService.findList(crrctParam);
  55. if (attWagaCrrctList == null || attWagaCrrctList.size() == 0) {
  56. attWagaBase.setId(UuidUtil.uuid());
  57. attWagaCrrctService.insert(attWagaBase);
  58. } else {
  59. attWagaCrrctService.update(attWagaBase);
  60. }
  61. AttWagaRgstrParam wagaRgstrParam = new AttWagaRgstrParam();
  62. wagaRgstrParam.setObjCode(attWagaBase.getObjCode());
  63. wagaRgstrParam.setObjId(attWagaBase.getObjId());
  64. wagaRgstrParam.setGroupId(attWagaBase.getGroupId());
  65. AttWagaRgstr wagaRgstr = attWagaRgstrDao.getBy(wagaRgstrParam);
  66. if (wagaRgstr != null) {
  67. wagaRgstr.setAdCode(attWagaBase.getAdCode());
  68. wagaRgstr.setEngScal(attWagaBase.getEngScal());
  69. wagaRgstr.setGateAdmName(attWagaBase.getGateAdmName());
  70. wagaRgstr.setGateFlow(attWagaBase.getGateFlow());
  71. wagaRgstr.setGateType(attWagaBase.getGateType());
  72. wagaRgstr.setGateName(attWagaBase.getGateName());
  73. wagaRgstr.setGdX(attWagaBase.getGdX());
  74. wagaRgstr.setGdY(attWagaBase.getGdY());
  75. wagaRgstr.setLocationXiang(attWagaBase.getLocationXiang());
  76. wagaRgstr.setLocation(attWagaBase.getLocationCun());
  77. wagaRgstr.setBuidTimeMon(attWagaBase.getBuidTimeMon());
  78. wagaRgstr.setBuidTimeYear(attWagaBase.getBuidTimeYear());
  79. wagaRgstr.setStaTimeMon(attWagaBase.getStaTimeMon());
  80. wagaRgstr.setStaTimeYear(attWagaBase.getStaTimeYear());
  81. wagaRgstr.setEngSta(attWagaBase.getEngSta());
  82. wagaRgstr.setObjCode(wagaRgstrParam.getObjCode());
  83. wagaRgstr.setObjId(wagaRgstrParam.getObjId());
  84. wagaRgstr.setGroupId(attWagaBase.getGroupId());
  85. wagaRgstr.setGateAdmOrg(attWagaBase.getLocRvName());
  86. wagaRgstr.setUptm(new Date());
  87. attWagaRgstrDao.update(wagaRgstr);
  88. }
  89. }
  90. @Override
  91. public List<AttWagaBase> getWagaList(PersObjParam persObjParam, HttpServletResponse response) {
  92. if (StringUtils.isNotBlank(persObjParam.getAdCode())) {
  93. persObjParam.setAdCode(AdLevelUtil.SubAd(persObjParam.getAdCode()).get(SplitValue.SUBAD).toString());
  94. }
  95. List<AttWagaBase> list = this.attWagaBaseDao.getWagaList(persObjParam);
  96. ExportUtil.exportExcel(persObjParam.getIsExport(), list, response);
  97. return list;
  98. }
  99. @Override
  100. public PageInfo<AttWagaBase> getWagaPageList(PersObjParam persObjParam, HttpServletResponse response) {
  101. if (StringUtils.isNotBlank(persObjParam.getAdCode())) {
  102. persObjParam.setAdCode(AdLevelUtil.SubAd(persObjParam.getAdCode()).get(SplitValue.SUBAD).toString());
  103. }
  104. if ("1".equals(persObjParam.getIsExport())) {
  105. ExportUtil.exportExcel(persObjParam.getIsExport(), this.attWagaBaseDao.getWagaList(persObjParam), response);
  106. }
  107. PageHelper.startPage(persObjParam);
  108. List<AttWagaBase> list = this.attWagaBaseDao.getWagaList(persObjParam);
  109. PageInfo<AttWagaBase> pageInfo = new PageInfo(list);
  110. return pageInfo;
  111. }
  112. @Override
  113. public PageInfo<AttWagaBase> getWagaBasePageList(AttWagaBaseParam attWagaBaseParam) {
  114. PageHelper.startPage(attWagaBaseParam);
  115. List<AttWagaBase> list = this.attWagaBaseDao.getWagaBaseList(attWagaBaseParam);
  116. PageInfo<AttWagaBase> pageInfo = new PageInfo(list);
  117. return pageInfo;
  118. }
  119. @Override
  120. public void exportAttWagaBase(AttWagaBaseParam attWagaBaseParam, HttpServletResponse response) {
  121. List<AttWagaBase> list = attWagaBaseDao.findList(attWagaBaseParam);
  122. List<Map<String, Object>> mapList = new ArrayList<>();
  123. for (AttWagaBase attWagaBase : list) {
  124. String gateType = attWagaBase.getGateType();
  125. String engScal = attWagaBase.getEngScal();
  126. if ("1".equals(gateType)) {
  127. attWagaBase.setGateType("分(泄)洪闸");
  128. } else if ("2".equals(gateType)) {
  129. attWagaBase.setGateType("节制闸");
  130. } else if ("3".equals(gateType)) {
  131. attWagaBase.setGateType("排(退)水闸");
  132. } else if ("4".equals(gateType)) {
  133. attWagaBase.setGateType("引(进)水闸");
  134. } else if ("5".equals(gateType)) {
  135. attWagaBase.setGateType("挡潮闸");
  136. } else if ("9".equals(gateType)) {
  137. attWagaBase.setGateType("其他");
  138. }
  139. if ("1".equals(engScal)) {
  140. attWagaBase.setEngScal("大型");
  141. } else if ("2".equals(engScal)) {
  142. attWagaBase.setEngScal("中型");
  143. } else if ("3".equals(engScal)) {
  144. attWagaBase.setEngScal("小型");
  145. }
  146. mapList.add(BeanUtil.transBean2Map(attWagaBase));
  147. }
  148. ExportAbstract export = new ExcelExport();
  149. export.setFileName("水闸基础信息列表");
  150. export.setExport_ps_export(true);
  151. export.setExport_ps_type(ExportAbstract.XLS);
  152. export.setExport_bzip(false);
  153. export.setTitle("水闸基础信息列表");
  154. ArrayList<Object> cols = new ArrayList<Object>();
  155. cols.add("objCode[水闸编码]");
  156. cols.add("gateName[水闸名称]");
  157. cols.add("gateType[水闸类型]");
  158. cols.add("gateAdmName[管理单位名称]");
  159. cols.add("adcd[行政区划]");
  160. cols.add("engScal[工程规模]");
  161. export.setCols(cols);
  162. export.setGroupable(false);
  163. // 设置视图指标
  164. export.setLevel(1);
  165. export.setLocksize(0);
  166. try {
  167. export.Export(response);
  168. export.ExportHeadForCustom(response);//导出表头
  169. export.ContinueExport(mapList);
  170. export.EndExport();
  171. } catch (Exception e) {
  172. e.printStackTrace();
  173. }
  174. }
  175. /**
  176. * 更新 批量设置是否省属
  177. * @param attWagaBaseParam
  178. * @return
  179. */
  180. @Override
  181. public int updateBatchProvincial(AttWagaBaseParam attWagaBaseParam){
  182. return attWagaBaseDao.updateBatchProvincial(attWagaBaseParam);
  183. }
  184. }