WholeCommentOSFService.java 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package com.kingdee.eas.hr.perf.osf;
  2. import com.kingdee.bos.BOSException;
  3. import com.kingdee.bos.Context;
  4. import com.kingdee.bos.bsf.service.app.IHRMsfService;
  5. import com.kingdee.eas.common.EASBizException;
  6. import com.kingdee.eas.util.app.DbUtil;
  7. import java.util.Map;
  8. /**
  9. * 考核结果管理列表新增显示“整体评价评语”(取最终等级的整体评价评语)
  10. * description: WholeCommentOSFService <br>
  11. * date: 2025/6/18 15:32 <br>
  12. * author: lhbj <br>
  13. * version: 1.0 <br>
  14. */
  15. public class WholeCommentOSFService implements IHRMsfService {
  16. @Override
  17. public Object process(Context context, Map<String, Object> map) throws EASBizException, BOSException {
  18. try {
  19. String sql =
  20. "UPDATE T_EVA_EvaResultSummary SET CFWholeComment = (select to_char(wc.FCOMMENT) FCOMMENT from T_EVA_GradeTaskNodeInst gtni left join T_EVA_WFNodeDef wnf on wnf.fid = gtni.FWFNODEID left join T_PEF_WholeComment wc on wc.FGRADETASKNODEINSTID=gtni.fid where wnf.FISFINALGRADE=1 and wc.FCOMMENT is not null and T_EVA_EvaResultSummary.FEVAOBJID = gtni.FEVAOBJID) WHERE EXISTS (select to_char(wc.FCOMMENT) FCOMMENT from T_EVA_GradeTaskNodeInst gtni left join T_EVA_WFNodeDef wnf on wnf.fid = gtni.FWFNODEID left join T_PEF_WholeComment wc on wc.FGRADETASKNODEINSTID=gtni.fid where wnf.FISFINALGRADE=1 and wc.FCOMMENT is not null and T_EVA_EvaResultSummary.FEVAOBJID = gtni.FEVAOBJID)";
  21. DbUtil.execute(context, sql);
  22. StringBuilder sql1 = new StringBuilder();
  23. sql1.append(" /*dialect*/UPDATE T_EVA_EvaResultSummary ");
  24. sql1.append(" SET T_EVA_EvaResultSummary.cfdepGradeLevel = ( ");
  25. sql1.append(" SELECT ith.FEXTEND3 ");
  26. sql1.append(" FROM T_EVA_IndicatorTarget it ");
  27. sql1.append(" LEFT JOIN T_EVA_IndicatorExtendHelper ith ON it.FEXTENDID = ith.fid ");
  28. sql1.append(" WHERE ith.FEXTEND3 IS NOT NULL ");
  29. sql1.append(" AND it.FNAME_L2 LIKE '%跨部门协作%' ");
  30. sql1.append(" AND T_EVA_EvaResultSummary.FEVAOBJID = it.FEVAOBJID ");
  31. sql1.append(" ) ");
  32. sql1.append(" WHERE T_EVA_EvaResultSummary.FEVAOBJID IN ( ");
  33. sql1.append(" SELECT it.FEVAOBJID ");
  34. sql1.append(" FROM T_EVA_IndicatorTarget it ");
  35. sql1.append(" LEFT JOIN T_EVA_IndicatorExtendHelper ith ON it.FEXTENDID = ith.fid ");
  36. sql1.append(" WHERE ith.FEXTEND3 IS NOT NULL ");
  37. sql1.append(" AND it.FNAME_L2 LIKE '%跨部门协作%' ");
  38. sql1.append(" ) ");
  39. DbUtil.execute(context, sql1.toString());
  40. StringBuilder sql2 = new StringBuilder();
  41. sql2.append(" /*dialect*/UPDATE T_EVA_EvaResultSummary ");
  42. sql2.append(" SET T_EVA_EvaResultSummary.cfoldSumScore = ( ");
  43. sql2.append(" SELECT it.FSCORE ");
  44. sql2.append(" FROM T_EVA_IndicatorTarget it ");
  45. sql2.append(" LEFT JOIN T_EVA_IndicatorExtendHelper ith ON it.FEXTENDID = ith.fid ");
  46. sql2.append(" WHERE ith.FEXTEND3 IS NOT NULL ");
  47. sql2.append(" AND it.FNAME_L2 LIKE '%跨部门协作%' ");
  48. sql2.append(" AND T_EVA_EvaResultSummary.FEVAOBJID = it.FEVAOBJID ");
  49. sql2.append(" ) ");
  50. sql2.append(" WHERE T_EVA_EvaResultSummary.FEVAOBJID IN ( ");
  51. sql2.append(" SELECT it.FEVAOBJID ");
  52. sql2.append(" FROM T_EVA_IndicatorTarget it ");
  53. sql2.append(" LEFT JOIN T_EVA_IndicatorExtendHelper ith ON it.FEXTENDID = ith.fid ");
  54. sql2.append(" WHERE ith.FEXTEND3 IS NOT NULL ");
  55. sql2.append(" AND it.FNAME_L2 LIKE '%跨部门协作%' ");
  56. sql2.append(" ) ");
  57. DbUtil.execute(context, sql2.toString());
  58. } catch (Exception e) {
  59. e.printStackTrace();
  60. throw e;
  61. }
  62. return "ok";
  63. }
  64. }