OAHireSalaryDataListHandler.java 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package com.kingdee.eas.custom.hireapproval.handler;
  2. import com.kingdee.bos.BOSException;
  3. import com.kingdee.bos.Context;
  4. import com.kingdee.bos.dao.ormapping.ObjectUuidPK;
  5. import com.kingdee.eas.common.EASBizException;
  6. import com.kingdee.eas.custom.hireapproval.IOAHireSalaryData;
  7. import com.kingdee.eas.custom.hireapproval.OAHireSalaryDataFactory;
  8. import com.kingdee.eas.custom.hireapproval.OAHireSalaryDataInfo;
  9. import com.kingdee.eas.custom.hireapproval.bizEnum.ExecuteStateEnum;
  10. import com.kingdee.eas.custom.hireapproval.task.HireApprovalFacadeFactory;
  11. import com.kingdee.shr.base.syssetting.context.SHRContext;
  12. import com.kingdee.shr.base.syssetting.exception.SHRWebException;
  13. import com.kingdee.shr.base.syssetting.exception.ShrWebBizException;
  14. import com.kingdee.shr.base.syssetting.web.handler.ListHandler;
  15. import com.kingdee.util.StringUtils;
  16. import org.springframework.ui.ModelMap;
  17. import javax.servlet.http.HttpServletRequest;
  18. import javax.servlet.http.HttpServletResponse;
  19. /**
  20. * @Description OA录用定薪数据ListHandler
  21. * @Date 2025/7/31 16:33
  22. * @Created by Heyuan
  23. */
  24. public class OAHireSalaryDataListHandler extends ListHandler {
  25. /**
  26. * 执行入职定薪
  27. *
  28. * @param request
  29. * @param response
  30. * @param modelMap
  31. * @return
  32. * @throws SHRWebException
  33. */
  34. public void executeHireSalaryBillAction(
  35. HttpServletRequest request,
  36. HttpServletResponse response,
  37. ModelMap modelMap
  38. ) throws SHRWebException {
  39. try {
  40. Context ctx = SHRContext.getInstance().getContext();
  41. String billId = getBillId(request);
  42. if (StringUtils.isEmpty(billId)) {
  43. throw new ShrWebBizException("请先选中数据!");
  44. }
  45. IOAHireSalaryData ioaHireSalaryData = OAHireSalaryDataFactory.getLocalInstance(ctx);
  46. OAHireSalaryDataInfo oaHireSalaryDataInfo =
  47. ioaHireSalaryData.getOAHireSalaryDataInfo(new ObjectUuidPK(billId));
  48. ExecuteStateEnum executeStatus = oaHireSalaryDataInfo.getExecuteStatus();
  49. if (ExecuteStateEnum.SUCCESS.equals(executeStatus)) {
  50. throw new ShrWebBizException("成功状态的数据不允许重复执行");
  51. } else if (ExecuteStateEnum.EXECUTEING.equals(executeStatus)) {
  52. throw new ShrWebBizException("执行中状态的数据不允许重复执行");
  53. }
  54. HireApprovalFacadeFactory.getLocalInstance(ctx).createHireSalaryBill(billId);
  55. } catch (BOSException e) {
  56. e.printStackTrace();
  57. throw new ShrWebBizException(e);
  58. } catch (EASBizException e) {
  59. e.printStackTrace();
  60. throw new ShrWebBizException(e);
  61. }
  62. }
  63. }