package com.kingdee.eas.hr.perf.osf; import com.kingdee.bos.BOSException; import com.kingdee.bos.Context; import com.kingdee.bos.bsf.service.app.IHRMsfService; import com.kingdee.bos.rabbitmq.guava.Lists; import com.kingdee.bos.util.BOSUuid; import com.kingdee.eas.base.message.MessageCategoryFactory; import com.kingdee.eas.base.message.MessageCenterFactory; import com.kingdee.eas.common.EASBizException; import com.kingdee.eas.util.app.ContextUtil; import com.kingdee.eas.util.app.DbUtil; import com.kingdee.jdbc.rowset.IRowSet; import com.kingdee.shr.base.syssetting.service.MessageServiceUtil; import org.apache.log4j.Logger; import java.sql.*; import java.util.List; import java.util.Map; public class TargetsOrgTaskOSFService implements IHRMsfService { private static final Logger logger = Logger.getLogger(TargetsOrgTaskOSFService.class); @Override public Object process(Context context, Map map) throws EASBizException, BOSException { try { String itypeId = (String) map.get("itypeId"); String id = BOSUuid.create("630FB566").toString(); String creatar = ContextUtil.getCurrentUserInfo(context).getId().toString(); StringBuilder insertSql = new StringBuilder(); insertSql.append(" insert into T_PEF_PerfIndecator ( "); insertSql.append(" FINDECATORDESC_L2,FEVALSTANDARD,FUSESTATES,FREFSTATES,FINDECATORTYPEID, "); insertSql.append(" FEFFDT,FSHRBASICITEMID,FUSEPOLICY,FISSYSPRESET,FSTATE, "); insertSql.append(" FINDEX,FHRORGUNITID,FNAME_L2,FNUMBER,FCREATORID, "); insertSql.append(" FCREATETIME,FLASTUPDATEUSERID,FLASTUPDATETIME,FCONTROLUNITID,FID, "); insertSql.append(" FQUALIORRATION,FUNIT,FSCORINGFORMULAID,FREJECTION,FEVALSTANDARD_L2, "); insertSql.append(" FRANGE,FADMINORGUNIT,FSIMPLENAME "); insertSql.append(" ) "); insertSql.append(" select it.FINDECATORDESC \"intoDesc\",it.FEVALSTANDARD \"evalStandard\",'0','0',isnull(it.FIndecatorType,?) \"itypeId\", "); insertSql.append(" sysdate,'jpoAAAGCqGuTc4ee','100','0','1', "); insertSql.append(" rownum,'00000000-0000-0000-0000-000000000000CCE7AED4', it.FNAME_L2 \"itName\",it.FNUMBER \"itNumber\", ?, "); insertSql.append(" sysdate, ?,sysdate,'00000000-0000-0000-0000-000000000000CCE7AED4',newbosid('630FB561'), "); insertSql.append(" it.FQualiOrRation \"qualiOrRation\",it.FUNIT \"unit\",it.FSCORINGFORMULA \"scoringFormula\",it.FREJECTION \"rejection\",it.FEVALSTANDARD \"evalStandard\", "); insertSql.append(" '1',peo.FADMINORGUNITID \"adminId\",? "); insertSql.append(" from T_EVA_PerfEvaObject peo "); insertSql.append(" left join T_EVA_IndicatorTarget it on it.FEvaObjID= peo.fid "); insertSql.append(" where peo.FISORG=1 and peo.FPERSONALGOALSTATUS='3' and peo.FUNITGOALSSTATUS=1 and it.fid is not null and (it.FNAME_L2||it.FNUMBER) not in(select fName_l2||Fnumber from T_PEF_PerfIndecator) "); DbUtil.execute(context,insertSql.toString(),new String[]{itypeId,creatar,creatar,id}); StringBuilder insertRangeSql = new StringBuilder(); insertRangeSql.append(" insert into T_EVA_IndecatorAdminUseRange( "); insertRangeSql.append(" FPERFINDECATORID, FADMINID, FISALLOWDOWN, FLASTUPDATEUSERID, FLASTUPDATETIME, FID "); insertRangeSql.append(" ) "); insertRangeSql.append(" select fid, FADMINORGUNIT, '1', ?, sysdate, newbosid('81B38884') "); insertRangeSql.append(" from T_PEF_PerfIndecator where FSIMPLENAME=? "); insertRangeSql.append(" and ((fid || FADMINORGUNIT) not in(select FPERFINDECATORID||FADMINID from T_EVA_IndecatorAdminUseRange)) "); DbUtil.execute(context,insertRangeSql.toString(),new String[]{creatar,id}); }catch (Exception e) { logger.error(e.getMessage(),e); this.setErrorMessage( map,e.getMessage(), e.getMessage()); return "err"; } return "ok"; } @Override public void setErrorMessage(Map param, String bizCode, String errorMsg) { IHRMsfService.super.setErrorMessage(param, "500", errorMsg); } }