package com.miniframe.bisiness.es; import java.util.Date; import java.util.List; import java.util.Map; import com.miniframe.core.ExecProcessFlow; import com.miniframe.core.exception.BusinessException; import com.miniframe.core.ext.UtilTools; import com.miniframe.generate.business.es.model.ES0006BaseModel; import com.miniframe.model.es.EsProCom; import com.miniframe.model.es.EsProComCon; import com.miniframe.model.es.EsProComConSQLBuilder; import com.miniframe.model.es.EsProComSQLBuilder; import com.miniframe.model.es.dao.EsProComConMapper; import com.miniframe.model.es.dao.EsProComMapper; import io.netty.util.internal.StringUtil; /** * 无锡发动机,“项目组件连线”逻辑处理(重新生成不覆盖)。 */ public class ES0006Service extends ES0006BaseModel implements ExecProcessFlow { private static final long serialVersionUID = -7051358269847459502L; /** * 无锡发动机,“项目组件连线”业务核心处理 */ public void transExecute() throws Exception { String npcId = this.getA_es0006().getNpcId(); String pcId1 = this.getA_es0006().getPcId1(); String pcId2 = this.getA_es0006().getPcId2(); Integer type =this.getA_es0006().getType(); String uid = this.getA_eshead().getUserId(); EsProCom nProcom = findEsProCom(npcId); EsProCom proCom1 = findEsProCom(pcId1); EsProCom proCom2 = findEsProCom(pcId2); if(nProcom==null){ throw new BusinessException(""); } if(nProcom.getComId()!="3"){ throw new BusinessException(""); } if(proCom1==null){ throw new BusinessException(""); } String pccId1 = savePcc(npcId, uid, pcId1,type); this.getD_es0006().setPccId1(pccId1); if(proCom2!=null){ String pccId2 = savePcc(npcId, uid, pcId1,type); this.getD_es0006().setPccId2(pccId2); } } private String savePcc(String npcId, String uid, String pcId,Integer type) { EsProComConMapper condao = UtilTools.getBean(EsProComConMapper.class); EsProComConSQLBuilder consb = new EsProComConSQLBuilder(); EsProComConSQLBuilder.Criteria consc = consb.createCriteria(); consc.andPcIdEqualTo(pcId); consc.andNpcIdEqualTo(npcId); consc.andTypeEqualTo(Short.valueOf(type.toString())); List comCons = condao.selectByExample(consb); if(comCons==null||comCons.isEmpty()){ EsProComCon comCon = new EsProComCon(); comCon.setPccId(UtilTools.getUUid()); comCon.setNpcId(npcId); comCon.setPcId(pcId); comCon.setUid(uid); comCon.setCreateTime(new Date()); comCon.setUpdateTime(new Date()); comCon.setType(Short.valueOf(type.toString())); condao.insert(comCon); return comCon.getPccId(); }else{ return comCons.get(0).getPccId(); } } public EsProCom findEsProCom(String pcid){ if(StringUtil.isNullOrEmpty(pcid)){ return null; } EsProComMapper cdao = UtilTools.getBean(EsProComMapper.class); return cdao.selectByPrimaryKey(pcid); } /** * 无锡发动机,“项目组件连线”业务前处理 */ 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(); } }