TripreimburseMobEditPlugin.java 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package fi.em.editPlugin;
  2. import kd.bos.dataentity.entity.DynamicObject;
  3. import kd.bos.exception.KDBizException;
  4. import kd.bos.form.CloseCallBack;
  5. import kd.bos.form.FormShowParameter;
  6. import kd.bos.form.ShowType;
  7. import kd.bos.form.events.AfterDoOperationEventArgs;
  8. import kd.bos.form.plugin.AbstractMobFormPlugin;
  9. import kd.sdk.plugin.Plugin;
  10. /**
  11. * @author cjz
  12. * @date 2024/7/31 17:55
  13. * @description:差旅报销单移动端插件
  14. */
  15. public class TripreimburseMobEditPlugin extends AbstractMobFormPlugin implements Plugin {
  16. public static String nckd_er_tripreimburse_ext_mob = "nckd_er_tripreimburse_ext_mob";//差旅报销单标识
  17. public static String nckd_mobparameterf = "nckd_mobparameterf";//交付单选择弹窗
  18. public static String btn_NOTICE = "donothing"; //操作
  19. public static String btn_NOTICES = "bxdtc"; //操作标识
  20. @Override
  21. public void afterDoOperation(AfterDoOperationEventArgs e) {
  22. String operateKey = e.getOperateKey();
  23. if (btn_NOTICES.equals(operateKey)) {
  24. Object value = this.getModel().getValue("costcompany");//获取当前单据费用公司
  25. DynamicObject entrycostcompanyWait = (DynamicObject)value;
  26. String orgnumber = entrycostcompanyWait.getString("number");//公司编码
  27. String orgid = entrycostcompanyWait.getString("id");//公司id
  28. Object creator=this.getModel().getValue("creator");//获取当前创建人
  29. Object costdept=this.getModel().getValue("costdept");//获取当前费用承担部门
  30. DynamicObject creatorWait=(DynamicObject) creator;
  31. DynamicObject costdeptWait=(DynamicObject) costdept;
  32. String creatorNumber=creatorWait.getString("number");//创建人编码
  33. String costdeptNumber=costdeptWait.getString("number");//费用承担部门编码
  34. if (orgnumber == null){
  35. throw new KDBizException("付费承担公司为空!");
  36. }
  37. showParameter(nckd_mobparameterf, btn_NOTICE);//调用弹出页面
  38. }
  39. }
  40. //弹窗
  41. public void showParameter(String formId, String actionId) {
  42. //创建弹出页面对象,FormShowParameter表示弹出页面为动态表单
  43. FormShowParameter ShowParameter = new FormShowParameter();
  44. //设置弹出页面的编码
  45. ShowParameter.setFormId(formId);
  46. // ShowParameter.setCaption();
  47. //设置弹出页面标题
  48. ShowParameter.setCaption("预付单选择");
  49. //设置页面关闭回调方法
  50. //CloseCallBack参数:回调插件,回调标识 btnok
  51. ShowParameter.setCloseCallBack(new CloseCallBack(this, actionId));
  52. //设置弹出页面打开方式,支持模态,新标签等
  53. ShowParameter.getOpenStyle().setShowType(ShowType.Modal);
  54. //弹出页面对象赋值给父页面
  55. this.getView().showForm(ShowParameter);
  56. }
  57. }