AC00009Service.java 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. package com.miniframe.bisiness.ac;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import java.util.Map;
  5. import java.util.stream.Collectors;
  6. import ac.template.TemplateGenerator;
  7. import ac.template.TemplateServer;
  8. import ac.template.model.gui.AttVo;
  9. import com.miniframe.core.ExecProcessFlow;
  10. import com.miniframe.core.ext.UtilTools;
  11. import com.miniframe.generate.business.ac.model.AC00009BaseModel;
  12. import com.miniframe.mappers.ac.dao.ExtAcMapper;
  13. import com.miniframe.mappers.ac.model.ProAttVo;
  14. import com.miniframe.model.system.SysAppcode;
  15. import com.miniframe.model.system.SysAppcodeSQLBuilder;
  16. import com.miniframe.model.system.SysFile;
  17. import com.miniframe.model.system.dao.SysAppcodeMapper;
  18. import com.miniframe.model.system.dao.SysFileMapper;
  19. import com.miniframe.tools.XiJsonUtil;
  20. import net.sf.jasperreports.engine.xml.TemplateSaxParserFactory;
  21. /**
  22. * 气动设计系统,“项目属性大对象查询”逻辑处理(重新生成不覆盖)。
  23. */
  24. public class AC00009Service extends AC00009BaseModel implements ExecProcessFlow {
  25. private static final long serialVersionUID = -7051358269847459502L;
  26. /**
  27. * 气动设计系统,“项目属性大对象查询”业务核心处理
  28. */
  29. public void transExecute() throws Exception {
  30. String pid = this.getA_ac00009().getPid();
  31. Integer type =this.getA_ac00009().getType();
  32. // List<AttVo> attvos = TemplateServer.getProAttList(pid,type);
  33. ExtAcMapper dao = UtilTools.getBean(ExtAcMapper.class);
  34. List<ProAttVo> pvs = dao.getProAttList(pid,type);
  35. for (ProAttVo pv:pvs
  36. ) {
  37. if(pv.getValType()==2&&pv.getVal()==null){
  38. pv.setVal("0");
  39. }
  40. if(pv.getValType()==1&&pv.getVal()==null){
  41. SysAppcodeMapper adao = UtilTools.getBean(SysAppcodeMapper.class);
  42. SysAppcodeSQLBuilder sb = new SysAppcodeSQLBuilder();
  43. SysAppcodeSQLBuilder.Criteria sc =sb.createCriteria();
  44. sc.andCodeTypeEqualTo(pv.getValCodeType());
  45. sb.setOrderByClause("code_order asc");
  46. SysAppcode codev=adao.selectByExample(sb).get(0);
  47. pv.setVal(codev.getCodeValue());
  48. }
  49. if(pv.getCode().equals("from_file")){//文件存储 fid
  50. if(pv.getVal()!=null&&!"0".equals(pv.getVal())){
  51. SysFileMapper fdao = UtilTools.getBean(SysFileMapper.class);
  52. SysFile f = fdao.selectByPrimaryKey(pv.getVal());
  53. pv.setFilename(f.getFilename());
  54. }
  55. }
  56. }
  57. List<AttVo> attvos = new ArrayList<>();
  58. List<ProAttVo> gvs=pvs.stream().filter(v-> v.getFatId().equals("0")).collect(Collectors.toList());//根数据
  59. for (ProAttVo gv:gvs) {
  60. AttVo vo =TemplateServer.getAttVo(gv,pvs);
  61. attvos.add(vo);
  62. }
  63. String jsonstr =XiJsonUtil.objectToJson(attvos);
  64. this.getD_ac00009().setPattJson(jsonstr);
  65. }
  66. /**
  67. * 气动设计系统,“项目属性大对象查询”业务前处理
  68. */
  69. public void preTransFlow() throws Exception {
  70. this.validater();
  71. }
  72. /**
  73. * 气动设计系统,“项目属性大对象查询”业务后处理
  74. */
  75. public void afterTransFlow() throws Exception {
  76. }
  77. /**
  78. * 气动设计系统,“项目属性大对象查询”逻辑入口处理方法
  79. */
  80. @SuppressWarnings("rawtypes")
  81. @Override
  82. public Map execute(Map vars) throws Exception {
  83. this.setTransMap(vars);
  84. preTransFlow();// 执行业务开始的规则检查和校验
  85. transExecute();// 执行核心业务段
  86. afterTransFlow();// 执行核心逻辑完成后的收尾逻辑
  87. return this.getTransMap();
  88. }
  89. }