OrgUnitListHandlerEx.java 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package com.kingdee.eas.custom.webbeisen.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.basedata.org.AdminOrgUnitFactory;
  6. import com.kingdee.eas.basedata.org.AdminOrgUnitInfo;
  7. import com.kingdee.eas.basedata.person.PersonFactory;
  8. import com.kingdee.eas.basedata.person.PersonInfo;
  9. import com.kingdee.eas.common.EASBizException;
  10. import com.kingdee.eas.custom.beisen.synchronousorg.SynchronousEmpBillFactory;
  11. import com.kingdee.eas.custom.beisen.synchronousorg.synchronousOrgFactory;
  12. import com.kingdee.eas.hr.org.web.handler.OrgUnitListHandler;
  13. import com.kingdee.shr.base.syssetting.api.bean.BatchMessageTipsBody;
  14. import com.kingdee.shr.base.syssetting.api.bean.BatchMessageTipsHeader;
  15. import com.kingdee.shr.base.syssetting.context.SHRContext;
  16. import com.kingdee.shr.base.syssetting.exception.SHRWebException;
  17. import com.kingdee.shr.base.syssetting.web.json.JSONUtils;
  18. import org.springframework.ui.ModelMap;
  19. import javax.servlet.http.HttpServletRequest;
  20. import javax.servlet.http.HttpServletResponse;
  21. public class OrgUnitListHandlerEx extends OrgUnitListHandler {
  22. public void synchronousOrgAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws SHRWebException, BOSException {
  23. Context ctx = SHRContext.getInstance().getContext();
  24. BatchMessageTipsHeader batchMessageTipsHeader = new BatchMessageTipsHeader();
  25. String ids = request.getParameter("id");
  26. int sucess = 0;
  27. int failure = 0;
  28. if (ids != null && ids.length() > 0) {
  29. String[] orgArray = ids.split(",");
  30. for (int i = 0; i < orgArray.length; i++) {
  31. BatchMessageTipsBody body = new BatchMessageTipsBody();
  32. try {
  33. AdminOrgUnitInfo adminOrgUnitInfo = AdminOrgUnitFactory.getLocalInstance(ctx).getAdminOrgUnitInfo(new ObjectUuidPK(orgArray[i]));
  34. try {
  35. synchronousOrgFactory.getLocalInstance(ctx).createOrUpdateOrg(10, adminOrgUnitInfo.getId().toString(), false);
  36. body.setId(orgArray[i]);
  37. body.setMuitTipsState(true);
  38. body.setMuitTipsMessage("同步成功【" + orgArray[i] + "】");
  39. batchMessageTipsHeader.addResult(body);
  40. sucess++;
  41. } catch (Exception e) {
  42. body.setId(orgArray[i]);
  43. body.setMuitTipsState(false);
  44. body.setMuitTipsMessage("后台事务执行失败【" + orgArray[i] + "】");
  45. batchMessageTipsHeader.addResult(body);
  46. e.printStackTrace();
  47. failure++;
  48. }
  49. } catch (BOSException e) {
  50. body.setId(orgArray[i]);
  51. body.setMuitTipsState(false);
  52. body.setMuitTipsMessage("同步失败组织员工失败【" + orgArray[i] + "】");
  53. batchMessageTipsHeader.addResult(body);
  54. e.printStackTrace();
  55. } catch (EASBizException e) {
  56. body.setId(orgArray[i]);
  57. body.setMuitTipsState(false);
  58. body.setMuitTipsMessage("同步失败组织员工失败【" + orgArray[i] + "】");
  59. batchMessageTipsHeader.addResult(body);
  60. e.printStackTrace();
  61. }
  62. }
  63. }
  64. batchMessageTipsHeader.setBillId(ids);
  65. batchMessageTipsHeader.setFailureCount(failure);
  66. batchMessageTipsHeader.setSuccessCount(sucess);
  67. JSONUtils.SUCCESS(batchMessageTipsHeader);
  68. }
  69. }