retireBizBillHrManEditExt.js 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. shr.defineClass("shr.affair.hrman.RetireBizBillHrManEditExt", shr.affair.hrman.RetireBizBillHrManEdit, {
  2. initalizeDOM : function () {
  3. var _self = this;
  4. shr.affair.hrman.RetireBizBillHrManEditExt.superClass.initalizeDOM.call(this);
  5. },
  6. /*
  7. * 重写父类方法
  8. */
  9. applierF7ChangeEvent:function(){
  10. var self = this;
  11. if (self.getOperateState() != 'VIEW') {
  12. $("#entrys_person").shrPromptBox("option",{
  13. verifyBeforeOpenCallback: function(event){
  14. var $hrOrgUnit = self.getField("hrOrgUnit");
  15. var hrOrgUnitF7Value = $hrOrgUnit.shrPromptBox("getValue");
  16. if(!hrOrgUnitF7Value || hrOrgUnitF7Value.id == ""){
  17. shr.showError({
  18. message:jsBizMultLan.emp_shrAffairBillBaseHrManEdit_i18n_10
  19. });
  20. return false;
  21. }
  22. }
  23. });
  24. $("#entrys_person").shrPromptBox("option", {
  25. onchange : function(e, value) {
  26. if(value.current){
  27. var personF7Id = value.current.id;
  28. if(personF7Id==null){
  29. return;
  30. }
  31. shr.callService({
  32. serviceName : "getPersonPosOrgInfo",
  33. param :{
  34. personID: personF7Id,
  35. uiClass : self._uiClass
  36. },
  37. async : true,
  38. success : function (data) {
  39. if ( data&&data.length>0 ) {
  40. self._currentPersonOrgInfo = data[0];
  41. self.updateActionF7ByPerson(data);//该方法中的,actionF7.setValue的时候就会触发hrBizDefineF7ChangeEvent,初始化变动类型F7,变动原因F7,用工关系F7
  42. //调用父类更新单据字段方法
  43. self.updateCommonAffairBizBillData(data);
  44. // 调用子类方法更新员工相关字段,子类可能重写了
  45. self.initShrAffairBizBillData(data);
  46. //员工状态检查,必须等待hrBizDefineF7ChangeEvent事件完成,hrBizDefineF7ChangeEvent中更新了变动操作的范围和设置了self._currentHRBizdefine
  47. self.checkHrBizDefineInEmployeeType(self._currentHRBizdefine);
  48. //根据所选员工反写人事业务组织
  49. self.initHrOrgUnitF7ByPerson(data);
  50. //调用osf关联查询出字段显示在单据上
  51. self.initDataFromStructure(personF7Id);
  52. //目标用工关系状态
  53. $("#entrys_empType").shrPromptBox("setValue", {id:"00000000-0000-0000-0000-000000000008A29E85B3", name:"Retirement"});
  54. self.updatePerson();
  55. }
  56. }
  57. })
  58. self.callChildBillDefinedOsf(personF7Id);
  59. }
  60. }
  61. });
  62. }
  63. },
  64. updatePerson : function(){
  65. var self = this;
  66. var personId = $("#entrys_person_el").val();
  67. var positionId = $("#entrys_oldPosition_el").val();
  68. shr.callHandler({
  69. handler : "com.kingdee.shr.affair.web.handler.hrman.FluctuationBizBillHrManEditHandlerEx",
  70. action : 'getEmpOrgRelation',
  71. async : false,
  72. type : "POST",
  73. param : {
  74. "personId" : personId,
  75. "positionId" : positionId
  76. },
  77. success:function(data){
  78. //【调动前直属上级】
  79. $("#entrys_lmanager").shrPromptBox("setValue", {id:data.leaderId,name:data.leaderName});
  80. //【员工类别】
  81. $("#entrys_wcategory").shrPromptBox("setValue", {id:data.personTypeId,name:data.personTypeName});
  82. //【全职或兼职】
  83. //$("#entrys_fullorpart").shrPromptBox('setValue',{id:data.fullorpartID,name:data.fullorpartName});
  84. //【Academic Title】
  85. $("#entrys_academictitle").shrPromptBox("setValue", {id:data.academicId,name:data.academicName});
  86. //【Admin Title】
  87. self.getField("entrys_admintitle").shrTextField('setValue',data.admint);
  88. //【当前时薪】
  89. self.getField("entrys_hwage").shrTextField('setValue',data.hourlywage);
  90. //【Job2】
  91. self.getField("entrys_jobs").shrPromptBox('setValue',{id:data.jobTwoId,name:data.jobTwoName});
  92. }
  93. });
  94. },
  95. });