package com.miniframe.bisiness.ac; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import ac.template.TemplateGenerator; import ac.template.TemplateServer; import ac.template.model.gui.AttVo; import com.miniframe.core.ExecProcessFlow; import com.miniframe.core.ext.UtilTools; import com.miniframe.generate.business.ac.model.AC00009BaseModel; import com.miniframe.mappers.ac.dao.ExtAcMapper; import com.miniframe.mappers.ac.model.ProAttVo; import com.miniframe.model.system.SysAppcode; import com.miniframe.model.system.SysAppcodeSQLBuilder; import com.miniframe.model.system.SysFile; import com.miniframe.model.system.dao.SysAppcodeMapper; import com.miniframe.model.system.dao.SysFileMapper; import com.miniframe.tools.XiJsonUtil; import net.sf.jasperreports.engine.xml.TemplateSaxParserFactory; /** * 气动设计系统,“项目属性大对象查询”逻辑处理(重新生成不覆盖)。 */ public class AC00009Service extends AC00009BaseModel implements ExecProcessFlow { private static final long serialVersionUID = -7051358269847459502L; /** * 气动设计系统,“项目属性大对象查询”业务核心处理 */ public void transExecute() throws Exception { String pid = this.getA_ac00009().getPid(); Integer type =this.getA_ac00009().getType(); // List attvos = TemplateServer.getProAttList(pid,type); ExtAcMapper dao = UtilTools.getBean(ExtAcMapper.class); List pvs = dao.getProAttList(pid,type); for (ProAttVo pv:pvs ) { if(pv.getValType()==2&&pv.getVal()==null){ pv.setVal("0"); } if(pv.getValType()==1&&pv.getVal()==null){ SysAppcodeMapper adao = UtilTools.getBean(SysAppcodeMapper.class); SysAppcodeSQLBuilder sb = new SysAppcodeSQLBuilder(); SysAppcodeSQLBuilder.Criteria sc =sb.createCriteria(); sc.andCodeTypeEqualTo(pv.getValCodeType()); sb.setOrderByClause("code_order asc"); SysAppcode codev=adao.selectByExample(sb).get(0); pv.setVal(codev.getCodeValue()); } if(pv.getCode().equals("from_file")){//文件存储 fid if(pv.getVal()!=null&&!"0".equals(pv.getVal())){ SysFileMapper fdao = UtilTools.getBean(SysFileMapper.class); SysFile f = fdao.selectByPrimaryKey(pv.getVal()); pv.setFilename(f.getFilename()); } } } List attvos = new ArrayList<>(); List gvs=pvs.stream().filter(v-> v.getFatId().equals("0")).collect(Collectors.toList());//根数据 for (ProAttVo gv:gvs) { AttVo vo =TemplateServer.getAttVo(gv,pvs); attvos.add(vo); } String jsonstr =XiJsonUtil.objectToJson(attvos); this.getD_ac00009().setPattJson(jsonstr); } /** * 气动设计系统,“项目属性大对象查询”业务前处理 */ public void preTransFlow() throws Exception { this.validater(); } /** * 气动设计系统,“项目属性大对象查询”业务后处理 */ public void afterTransFlow() throws Exception { } /** * 气动设计系统,“项目属性大对象查询”逻辑入口处理方法 */ @SuppressWarnings("rawtypes") @Override public Map execute(Map vars) throws Exception { this.setTransMap(vars); preTransFlow();// 执行业务开始的规则检查和校验 transExecute();// 执行核心业务段 afterTransFlow();// 执行核心逻辑完成后的收尾逻辑 return this.getTransMap(); } }