MESCheckImportService.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. package com.kingdee.shr.custom.calcdailypay.imp;
  2. import com.kingdee.bos.BOSException;
  3. import com.kingdee.bos.Context;
  4. import com.kingdee.bos.dao.IObjectValue;
  5. import com.kingdee.eas.basedata.person.IPerson;
  6. import com.kingdee.eas.basedata.person.PersonCollection;
  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.framework.CoreBaseInfo;
  11. import com.kingdee.eas.hr.affair.AffairBizCheckFacadeFactory;
  12. import com.kingdee.eas.hr.affair.IAffairBizCheckFacade;
  13. import com.kingdee.eas.hr.base.app.EmpPostExperienceHisHelper;
  14. import com.kingdee.eas.hr.emp.BankFactory;
  15. import com.kingdee.eas.hr.emp.EmpBatchAffairBizException;
  16. import com.kingdee.eas.hr.emp.IBank;
  17. import com.kingdee.eas.hr.emp.IPersonDataSourceOptFacade;
  18. import com.kingdee.eas.hr.emp.IPersonOtherInfo;
  19. import com.kingdee.eas.hr.emp.PersonDataSourceOptFacadeFactory;
  20. import com.kingdee.eas.hr.emp.PersonOtherInfoFactory;
  21. import com.kingdee.eas.hr.emp.app.util.SHREmpImportTool;
  22. import com.kingdee.shr.base.syssetting.app.io.fileImport.BaseColumnInfo;
  23. import com.kingdee.shr.base.syssetting.app.io.fileImport.BaseImportService;
  24. import com.kingdee.shr.base.syssetting.app.io.fileImport.BaseRowInfo;
  25. import com.kingdee.shr.base.syssetting.app.io.fileImport.DynamicModelHelper;
  26. import com.kingdee.shr.base.syssetting.app.io.fileImport.ImportException;
  27. import com.kingdee.shr.base.syssetting.app.io.impl.PersonDataSourceImportUtils;
  28. import com.kingdee.shr.base.syssetting.web.dynamic.model.DynamicModelInfo;
  29. import com.kingdee.util.DateTimeUtils;
  30. import com.kingdee.util.StringUtils;
  31. import java.text.ParseException;
  32. import java.text.SimpleDateFormat;
  33. import java.util.ArrayList;
  34. import java.util.Date;
  35. import java.util.HashMap;
  36. import java.util.List;
  37. import java.util.Locale;
  38. import java.util.Map;
  39. public class MESCheckImportService extends BaseImportService {
  40. private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  41. protected void importNew(BaseRowInfo row) throws ImportException {
  42. CoreBaseInfo coreBaseInfo = this.transRowToObejct(row);
  43. this.setOtherFieldInfo(coreBaseInfo, row);
  44. String personNum = row.getValueOfString("personNum");
  45. Context ctx = this.getContext();
  46. try {
  47. IPerson personIns = PersonFactory.getLocalInstance(ctx);
  48. PersonCollection personCol = personIns.getPersonCollection("where number = '"+personNum+"'");
  49. if(null != personCol && personCol.size()!=0) {
  50. PersonInfo pInfo = personCol.get(0);
  51. String personId = pInfo.getId().toString();
  52. String bizDateStr = row.getValueOfString("bizDate");
  53. Date effect = sdf.parse(bizDateStr);
  54. Map pmap = EmpPostExperienceHisHelper.getPersonAllRelationHisMap(ctx, personId, effect);
  55. coreBaseInfo.put("position", pmap.get("position"));
  56. coreBaseInfo.put("company", pmap.get("company"));
  57. coreBaseInfo.put("depart", pmap.get("department"));
  58. coreBaseInfo.put("person", pInfo);
  59. // result.put("person", personInfo);
  60. // result.put("personHis", personHisInfo);
  61. // /* 976 */ result.put("position", positionInfo);
  62. // /* 977 */ result.put("adminOrg", adminOrgUnitInfo);
  63. // /* 978 */ result.put("company", adminOrgCompany);
  64. // /* 979 */ result.put("department", department);
  65. // /* 980 */ result.put("empType", employeeTypeInfo);
  66. // /* 981 */ result.put("action", actionInfo);
  67. // /* 982 */ result.put("job", jobInfo);
  68. // /* 983 */ result.put("jobGrade", jobGradeInfo);
  69. // /* 984 */ result.put("jobLevel", jobLevelInfo);
  70. // /* 985 */ result.put("empOrgRelation", empOrgRelationInfo);
  71. }else {
  72. throw new ImportException("没有找到编码为:"+personNum+"的员工,请输入正确编码!");
  73. // e1 = new EmpBatchAffairBizException(EmpBatchAffairBizException.CANNOT_IMPORT_LINE, var8, new Object[]{var8.getMessage()});
  74. //
  75. }
  76. } catch (BOSException e) {
  77. e.printStackTrace();
  78. } catch (ParseException e) {
  79. e.printStackTrace();
  80. } catch (EASBizException e) {
  81. e.printStackTrace();
  82. }
  83. this.submitData(coreBaseInfo);
  84. }
  85. }