AtsOverTimeBillEditHandlerEx.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. package com.kingdee.shr.customer.gtiit.handler;
  2. import com.kingdee.bos.BOSException;
  3. import com.kingdee.bos.Context;
  4. import com.kingdee.eas.base.param.IParamControl;
  5. import com.kingdee.eas.base.param.ParamControlFactory;
  6. import com.kingdee.eas.basedata.org.HROrgUnitCollection;
  7. import com.kingdee.eas.basedata.org.HROrgUnitFactory;
  8. import com.kingdee.eas.basedata.org.HROrgUnitInfo;
  9. import com.kingdee.eas.common.EASBizException;
  10. import com.kingdee.eas.hr.emp.ContractTempletCollection;
  11. import com.kingdee.eas.hr.emp.ContractTempletFactory;
  12. import com.kingdee.eas.hr.emp.ContractTempletInfo;
  13. import com.kingdee.eas.hr.emp.ContractTypeCollection;
  14. import com.kingdee.eas.hr.emp.ContractTypeFactory;
  15. import com.kingdee.eas.hr.emp.ContractTypeInfo;
  16. import com.kingdee.eas.hr.emp.LabContractFirstPartyCollection;
  17. import com.kingdee.eas.hr.emp.LabContractFirstPartyFactory;
  18. import com.kingdee.eas.hr.emp.LabContractFirstPartyInfo;
  19. import com.kingdee.eas.util.app.DbUtil;
  20. import com.kingdee.jdbc.rowset.IRowSet;
  21. import com.kingdee.shr.ats.web.handler.AtsOverTimeBillEditHandler;
  22. import com.kingdee.shr.base.syssetting.context.SHRContext;
  23. import com.kingdee.shr.base.syssetting.exception.SHRWebException;
  24. import com.kingdee.shr.base.syssetting.web.json.JSONUtils;
  25. import com.kingdee.shr.customer.gtiit.util.BaseUtil;
  26. import com.kingdee.shr.customer.gtiit.util.DateTimeUtils;
  27. import org.apache.log4j.Logger;
  28. import org.springframework.ui.ModelMap;
  29. import javax.servlet.http.HttpServletRequest;
  30. import javax.servlet.http.HttpServletResponse;
  31. import java.sql.SQLException;
  32. import java.text.SimpleDateFormat;
  33. import java.util.Calendar;
  34. import java.util.Date;
  35. import java.util.HashMap;
  36. import java.util.Locale;
  37. import java.util.Map;
  38. /**
  39. * @description(类描述):单人加班单表单Handler
  40. * @author(创建人):
  41. * @createDate(创建时间): 10:28
  42. * @updateUser(修改人):
  43. * @updateDate(修改时间):
  44. * @updateRemark(修改备注):
  45. */
  46. public class AtsOverTimeBillEditHandlerEx extends AtsOverTimeBillEditHandler {
  47. private static Logger logger =
  48. Logger.getLogger("com.kingdee.shr.customer.gtiit.handler.AtsOverTimeBillEditHandlerEx");
  49. public void workMultipleAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws SHRWebException {
  50. Context ctx = SHRContext.getInstance().getContext();
  51. String otDate = request.getParameter("otDate");
  52. logger.error("加班日期:"+otDate);
  53. String sql = "SELECT b.CFWORKMULTIPLE FROM T_HR_ATS_LegalHoliday a left join T_HR_ATS_LegalHolidayItem b on a.fid = b.FGROUPID where a.FSTATE = '1' and b.FSTARTDATE <= '"+otDate+"' and b.FENDDATE >= '"+otDate+"'";
  54. logger.error("查询加班类型SQL:"+sql);
  55. Map<String, Map<String, String>> overTimeTypeMap = BaseUtil.getOverTimeType(ctx);
  56. Map<String, String> returnMap = new HashMap<String, String>();
  57. try {
  58. IRowSet iRowSet = DbUtil.executeQuery(ctx, sql);
  59. while (iRowSet.next()){
  60. if(iRowSet.getString("CFWORKMULTIPLE").equals("1")){
  61. //工作日加班
  62. returnMap = overTimeTypeMap.get("001");
  63. }else if(iRowSet.getString("CFWORKMULTIPLE").equals("2")){
  64. //休息日加班
  65. returnMap = overTimeTypeMap.get("002");
  66. }else if(iRowSet.getString("CFWORKMULTIPLE").equals("3")){
  67. //法定节假日加班
  68. returnMap = overTimeTypeMap.get("003");
  69. }
  70. }
  71. } catch (BOSException e) {
  72. e.printStackTrace();
  73. } catch (SQLException throwables) {
  74. throwables.printStackTrace();
  75. }
  76. JSONUtils.writeJson(response, returnMap);
  77. }
  78. public void jobTypeAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws SHRWebException {
  79. Calendar calendar = Calendar.getInstance();
  80. Context ctx = SHRContext.getInstance().getContext();
  81. Map<String, Map<String, String>> overTimeTypeMap = BaseUtil.getOverTimeType(ctx);
  82. Map<String, String> returnMap = new HashMap<String, String>();
  83. String otDate = request.getParameter("otDate");
  84. logger.error("加班日期:"+otDate);
  85. Date parseDate = DateTimeUtils.parseDate(otDate, "yyyy-MM-dd");
  86. calendar.setTime(parseDate);
  87. int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
  88. if(dayOfWeek == Calendar.SATURDAY || dayOfWeek == Calendar.SUNDAY) {
  89. //休息日加班
  90. returnMap = overTimeTypeMap.get("002");
  91. }else {
  92. //工作日加班
  93. returnMap = overTimeTypeMap.get("001");
  94. }
  95. JSONUtils.writeJson(response, returnMap);
  96. }
  97. }