ProjArrangeGeneralServiceImpl.java 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. package cn.com.lzt.projarrangegeneral.service.impl;
  2. import cn.com.lzt.projarrangedetail.entity.ProjarrangeDetailEntity;
  3. import cn.com.lzt.projarrangegeneral.dao.ProjArrangeGeneralMinidao;
  4. import cn.com.lzt.projarrangegeneral.dto.ProjArrangeGeneralDto;
  5. import cn.com.lzt.projarrangegeneral.entity.ProjArrangeGeneralEntity;
  6. import cn.com.lzt.projarrangegeneral.service.ProjArrangeGeneralServiceI;
  7. import org.jeecgframework.core.common.service.impl.CommonServiceImpl;
  8. import org.jeecgframework.core.util.ApplicationContextUtil;
  9. import org.jeecgframework.core.util.MyBeanUtils;
  10. import org.jeecgframework.core.util.MyClassLoader;
  11. import org.jeecgframework.core.util.StringUtil;
  12. import org.jeecgframework.minidao.pojo.MiniDaoPage;
  13. import org.jeecgframework.web.cgform.enhance.CgformEnhanceJavaInter;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.stereotype.Service;
  16. import org.springframework.transaction.annotation.Transactional;
  17. import java.io.Serializable;
  18. import java.util.HashMap;
  19. import java.util.List;
  20. import java.util.Map;
  21. import java.util.UUID;
  22. @Service("projArrangeGeneralService")
  23. @Transactional
  24. public class ProjArrangeGeneralServiceImpl extends CommonServiceImpl implements ProjArrangeGeneralServiceI {
  25. @Autowired
  26. ProjArrangeGeneralMinidao projArrangeGeneralMinidao;
  27. public void delete(ProjArrangeGeneralEntity entity) throws Exception{
  28. super.delete(entity);
  29. //执行删除操作增强业务
  30. this.doDelBus(entity);
  31. }
  32. public Serializable save(ProjArrangeGeneralEntity entity) throws Exception{
  33. Serializable t = super.save(entity);
  34. //执行新增操作增强业务
  35. this.doAddBus(entity);
  36. return t;
  37. }
  38. public void saveOrUpdate(ProjArrangeGeneralEntity entity) throws Exception{
  39. super.saveOrUpdate(entity);
  40. //执行更新操作增强业务
  41. this.doUpdateBus(entity);
  42. }
  43. /**
  44. * 新增操作增强业务
  45. * @param t
  46. * @return
  47. */
  48. private void doAddBus(ProjArrangeGeneralEntity t) throws Exception{
  49. //-----------------sql增强 start----------------------------
  50. //-----------------sql增强 end------------------------------
  51. //-----------------java增强 start---------------------------
  52. //-----------------java增强 end-----------------------------
  53. }
  54. /**
  55. * 更新操作增强业务
  56. * @param t
  57. * @return
  58. */
  59. private void doUpdateBus(ProjArrangeGeneralEntity t) throws Exception{
  60. //-----------------sql增强 start----------------------------
  61. //-----------------sql增强 end------------------------------
  62. //-----------------java增强 start---------------------------
  63. //-----------------java增强 end-----------------------------
  64. }
  65. /**
  66. * 删除操作增强业务
  67. * @param id
  68. * @return
  69. */
  70. private void doDelBus(ProjArrangeGeneralEntity t) throws Exception{
  71. //-----------------sql增强 start----------------------------
  72. //-----------------sql增强 end------------------------------
  73. //-----------------java增强 start---------------------------
  74. //-----------------java增强 end-----------------------------
  75. }
  76. private Map<String,Object> populationMap(ProjArrangeGeneralEntity t){
  77. Map<String,Object> map = new HashMap<String,Object>();
  78. map.put("id", t.getId());
  79. map.put("yearmonth", t.getYearmonth());
  80. map.put("belong_unitid", t.getBelongUnitid());
  81. map.put("people_quantity", t.getPeopleQuantity());
  82. map.put("arrange_duty_status", t.getArrangeDutyStatus());
  83. map.put("reporter_id", t.getReporterId());
  84. map.put("create_name", t.getCreateName());
  85. map.put("create_by", t.getCreateBy());
  86. map.put("create_date", t.getCreateDate());
  87. map.put("update_name", t.getUpdateName());
  88. map.put("update_by", t.getUpdateBy());
  89. map.put("update_date", t.getUpdateDate());
  90. map.put("sys_org_code", t.getSysOrgCode());
  91. map.put("sys_company_code", t.getSysCompanyCode());
  92. return map;
  93. }
  94. /**
  95. * 替换sql中的变量
  96. * @param sql
  97. * @param t
  98. * @return
  99. */
  100. public String replaceVal(String sql,ProjArrangeGeneralEntity t){
  101. sql = sql.replace("#{id}",String.valueOf(t.getId()));
  102. sql = sql.replace("#{yearmonth}",String.valueOf(t.getYearmonth()));
  103. sql = sql.replace("#{belong_unitid}",String.valueOf(t.getBelongUnitid()));
  104. sql = sql.replace("#{people_quantity}",String.valueOf(t.getPeopleQuantity()));
  105. sql = sql.replace("#{arrange_duty_status}",String.valueOf(t.getArrangeDutyStatus()));
  106. sql = sql.replace("#{reporter_id}",String.valueOf(t.getReporterId()));
  107. sql = sql.replace("#{create_name}",String.valueOf(t.getCreateName()));
  108. sql = sql.replace("#{create_by}",String.valueOf(t.getCreateBy()));
  109. sql = sql.replace("#{create_date}",String.valueOf(t.getCreateDate()));
  110. sql = sql.replace("#{update_name}",String.valueOf(t.getUpdateName()));
  111. sql = sql.replace("#{update_by}",String.valueOf(t.getUpdateBy()));
  112. sql = sql.replace("#{update_date}",String.valueOf(t.getUpdateDate()));
  113. sql = sql.replace("#{sys_org_code}",String.valueOf(t.getSysOrgCode()));
  114. sql = sql.replace("#{sys_company_code}",String.valueOf(t.getSysCompanyCode()));
  115. sql = sql.replace("#{UUID}",UUID.randomUUID().toString());
  116. return sql;
  117. }
  118. /**
  119. * 执行JAVA增强
  120. */
  121. private void executeJavaExtend(String cgJavaType,String cgJavaValue,Map<String,Object> data) throws Exception {
  122. if(StringUtil.isNotEmpty(cgJavaValue)){
  123. Object obj = null;
  124. try {
  125. if("class".equals(cgJavaType)){
  126. //因新增时已经校验了实例化是否可以成功,所以这块就不需要再做一次判断
  127. obj = MyClassLoader.getClassByScn(cgJavaValue).newInstance();
  128. }else if("spring".equals(cgJavaType)){
  129. obj = ApplicationContextUtil.getContext().getBean(cgJavaValue);
  130. }
  131. if(obj instanceof CgformEnhanceJavaInter){
  132. CgformEnhanceJavaInter javaInter = (CgformEnhanceJavaInter) obj;
  133. javaInter.execute("t_bus_projarrange_general",data);
  134. }
  135. } catch (Exception e) {
  136. e.printStackTrace();
  137. throw new Exception("执行JAVA增强出现异常!");
  138. }
  139. }
  140. }
  141. @Override
  142. public MiniDaoPage<ProjArrangeGeneralDto> getProjArrangeGeneralDtoPage(
  143. ProjArrangeGeneralDto projArrangeGeneralDto, int page, int rows,
  144. String authSql) throws Exception{
  145. MiniDaoPage<ProjArrangeGeneralDto> projArrangeGeneralDtoList = this.projArrangeGeneralMinidao.getProjArrangeGeneralDtoPage(projArrangeGeneralDto, page, rows, authSql);
  146. for (int i = 0; i < projArrangeGeneralDtoList.getResults().size(); i++) {
  147. ProjArrangeGeneralEntity t = this.get(ProjArrangeGeneralEntity.class, projArrangeGeneralDtoList.getResults().get(i).getId());
  148. ProjArrangeGeneralEntity projArrangeGeneralEntity=t;
  149. //查询项目排班详细表数据计算排班人数
  150. StringBuffer hql = new StringBuffer(" FROM ProjarrangeDetailEntity where pid=? and yearmonth=? ");
  151. List<ProjarrangeDetailEntity> projarrangeDetailEntityList = this.findHql(hql.toString(),projArrangeGeneralEntity.getBelongUnitid(),projArrangeGeneralEntity.getYearmonth());
  152. projArrangeGeneralEntity.setPeopleQuantity(projarrangeDetailEntityList.size());
  153. MyBeanUtils.copyBeanNotNull2Bean(projArrangeGeneralEntity, t);
  154. this.saveOrUpdate(t);
  155. projArrangeGeneralDtoList.getResults().get(i).setPeopleQuantity(projArrangeGeneralEntity.getPeopleQuantity());
  156. }
  157. return projArrangeGeneralDtoList;
  158. }
  159. @Override
  160. public List<ProjArrangeGeneralDto> getProjArrangeGeneralDtoExport(
  161. ProjArrangeGeneralDto projArrangeGeneralDto, String authSql) throws Exception{
  162. // TODO Auto-generated method stub
  163. return projArrangeGeneralMinidao.getProjArrangeGeneralDtoExport(projArrangeGeneralDto, authSql);
  164. }
  165. }