PositionAdminRangeF7HandlerEx.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package com.kingdee.eas.hr.emp.web.handler;
  2. import java.util.Date;
  3. import javax.servlet.http.HttpServletRequest;
  4. import javax.servlet.http.HttpServletResponse;
  5. import com.kingdee.shr.base.syssetting.json.GridDataEntity;
  6. import com.kingdee.util.DateTimeUtils;
  7. import com.kingdee.util.StringUtils;
  8. import org.springframework.ui.ModelMap;
  9. import com.kingdee.shr.base.syssetting.exception.SHRWebException;
  10. /**
  11. * 兼职单
  12. * @author coyle
  13. * 20250331
  14. */
  15. public class PositionAdminRangeF7HandlerEx extends EmpOrgF7Handler {
  16. public String getListDataAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap)
  17. throws SHRWebException {
  18. String modelFilter = (String) modelMap.get("filter");
  19. if (StringUtils.isEmpty(modelFilter)) {
  20. String filter = request.getParameter("filter");
  21. if (null != filter) {
  22. String empBatchEnrollConsecutiveAddNew;
  23. String filterEndSign;
  24. if (filter.indexOf("idRanFromPluralityAdd") != -1) {
  25. empBatchEnrollConsecutiveAddNew = filter.substring(0, filter.indexOf("idRanFromPluralityAdd"));
  26. filterEndSign = filter
  27. .substring(filter.indexOf("idRanFromPluralityAdd") + "idRanFromPluralityAdd".length());
  28. if (!StringUtils.isEmpty(filterEndSign)) {
  29. filter = empBatchEnrollConsecutiveAddNew
  30. + " id not in (select fpositionid from T_HR_EmpOrgRelation t where t.fpersonid='"
  31. + filterEndSign + "' and t.fleffdt = {2199-12-31} and t.FISSYSTEM = 1)";
  32. } else {
  33. filter = empBatchEnrollConsecutiveAddNew;
  34. }
  35. modelMap.put("filter", filter);
  36. }
  37. if (filter.indexOf("idRanFromPluralityDel") != -1) {
  38. ////202503 日期更改
  39. Date curDate = new Date();
  40. String dateStr = DateTimeUtils.format(curDate, "yyyy-MM-dd");
  41. empBatchEnrollConsecutiveAddNew = filter.substring(0, filter.indexOf("idRanFromPluralityDel"));
  42. filterEndSign = filter
  43. .substring(filter.indexOf("idRanFromPluralityDel") + "idRanFromPluralityDel".length());
  44. filter = empBatchEnrollConsecutiveAddNew
  45. + " id in (select fpositionid from T_HR_EmpOrgRelation t where t.fpersonid='"
  46. + filterEndSign
  47. + "' and t.fleffdt >= {"+dateStr+"} and t.fassigntype=0 and t.fisInner = 1 and t.FActionID not in ('jpoAAAH/03nmaL7Z','V2vNOLaKRuGuv9/HNB5laOZovtk='))";
  48. modelMap.put("filter", filter);
  49. }
  50. if (filter.indexOf("idRanFromPositionHierarchy") != -1) {
  51. empBatchEnrollConsecutiveAddNew = filter.substring(0, filter.indexOf("idRanFromPositionHierarchy"));
  52. filterEndSign = filter.substring(
  53. filter.indexOf("idRanFromPositionHierarchy") + "idRanFromPositionHierarchy".length());
  54. filter = empBatchEnrollConsecutiveAddNew
  55. + " id in (select fchildid from T_ORG_PositionHierarchy where FHierarchyID = '"
  56. + filterEndSign + "')";
  57. modelMap.put("filter", filter);
  58. }
  59. if (filter.indexOf("F7query") != -1) {
  60. filter = filter.replace("F7query", "select");
  61. modelMap.put("filter", filter);
  62. }
  63. if (filter.indexOf("=''") != -1) {
  64. filter = filter.replace("=''", " is not null");
  65. modelMap.put("filter", filter);
  66. }
  67. if (filter.indexOf("empBatchEnrollConsecutiveAddNew") != -1) {
  68. empBatchEnrollConsecutiveAddNew = "empBatchEnrollConsecutiveAddNew";
  69. filterEndSign = "filterEndSign";
  70. int start = filter.indexOf(empBatchEnrollConsecutiveAddNew);
  71. int end = filter.indexOf(filterEndSign) + filterEndSign.length();
  72. String partFilterStr = filter.substring(start, end);
  73. String partFilterParam = partFilterStr.substring(empBatchEnrollConsecutiveAddNew.length(),
  74. partFilterStr.indexOf(filterEndSign));
  75. String[] partFilterParamArr = partFilterParam.split(",");
  76. String partFilterStrAfterTranfer = "";
  77. if (partFilterParamArr.length == 2) {
  78. String bizManageTypeId = partFilterParamArr[0];
  79. String manageHrOrgID = partFilterParamArr[1];
  80. partFilterStrAfterTranfer = "adminOrgUnit.id in (select FAdminOrgID from T_HR_AdminOrgBURelation where fbizManagetypeId='"
  81. + bizManageTypeId + "' and FManageHrOrgID = '" + manageHrOrgID + "' and fstate = 1)";
  82. }
  83. filter = filter.replace(partFilterStr, partFilterStrAfterTranfer);
  84. modelMap.put("filter", filter);
  85. }
  86. }
  87. }
  88. return super.getListDataAction(request, response, modelMap);
  89. }
  90. protected void afterGetListData(HttpServletRequest request, HttpServletResponse response, GridDataEntity gridDataEntity) throws SHRWebException {
  91. }
  92. }