SelectUtilLg.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. var rowdata;
  2. var currentColumns;
  3. function setObjs(rowData,columnname,values){
  4. rowdata=grid.getRow(rowData);
  5. var newRowData={};
  6. newRowData[columnname+"ID"]=values['id'];
  7. newRowData[columnname]=values['name'];
  8. currentColumns=[columnname+"ID",columnname];
  9. $.extend(rowdata, newRowData || {});
  10. }
  11. /**
  12. * 选择标签
  13. */
  14. function selectTag(rowData,columnname,multi){
  15. TagDialog({isSingle:multi,callback:function(ids,names){
  16. setObjs(rowData,columnname,{id:ids,name:names});
  17. grid.insertValue({rowdata:rowdata,currentColumns:currentColumns});
  18. }});
  19. }
  20. /**
  21. * 选择组织
  22. */
  23. function selectOrg(rowData,columnname,multi){
  24. OrgDialog({isSingle:multi,
  25. callback:function(ids,names){
  26. setObjs(rowData,columnname,{id:ids,name:names});
  27. grid.insertValue({rowdata:rowdata,currentColumns:currentColumns});
  28. }});
  29. }
  30. /**
  31. * 选择用户
  32. */
  33. function selectUser(rowData,columnname,multi){
  34. UserDialog({
  35. isSingle:multi,
  36. callback:function(ids,names){
  37. setObjs(rowData,columnname,{id:ids,name:names});
  38. grid.insertValue({rowdata:rowdata,currentColumns:currentColumns});
  39. }});
  40. }
  41. /**
  42. * 选择角色
  43. */
  44. function selectRole(rowData,columnname,multi){
  45. RoleDialog({
  46. isSingle : multi,
  47. callback : function(ids, names) {
  48. setObjs(rowData,columnname,{id:ids,name:names});
  49. grid.insertValue({rowdata:rowdata,currentColumns:currentColumns});
  50. }
  51. });
  52. }
  53. /**
  54. * 选择岗位
  55. */
  56. function selectPos(rowData,columnname,multi){
  57. PosDialog({
  58. isSingle : multi,
  59. callback : function(ids, names) {
  60. setObjs(rowData,columnname,{id:ids,name:names});
  61. grid.insertValue({rowdata:rowdata,currentColumns:currentColumns});
  62. }
  63. });
  64. }
  65. /**
  66. * 标签选择窗口
  67. * @param conf
  68. */
  69. function TagDialog(conf){
  70. var dialogWidth=650;
  71. var dialogHeight=500;
  72. conf=$.extend({},{dialogWidth:dialogWidth ,dialogHeight:dialogHeight ,help:0,status:0,scroll:1,center:1},conf);
  73. var winArgs="dialogWidth="+conf.dialogWidth+"px;dialogHeight="+conf.dialogHeight
  74. +"px;help=" + conf.help +";status=" + conf.status +";scroll=" + conf.scroll +";center=" +conf.center;
  75. if(!conf.isSingle)conf.isSingle=false;
  76. var url=__ctx +'/ecp/bpm/bpmTag/dialog.ht?isSingle=' + conf.isSingle;
  77. url=url.getNewUrl();
  78. var rtn=window.showModalDialog(url,"",winArgs);
  79. //TODO jsp找不到
  80. if(conf.callback)
  81. {
  82. if(rtn!=undefined){
  83. conf.callback.call(this,rtn.tagid,rtn.tagname);
  84. }
  85. }
  86. }
  87. /**
  88. * 通用对话框。
  89. * @param alias 对话框别名。
  90. * @param callBack 回调函数。
  91. * 调用示例:
  92. * CommonDialog("role",function(data){
  93. *
  94. * });
  95. * data:为json数组或者为json对象。
  96. * @param paramValueString 向对话框传递的"参数=值"字符串
  97. * 传入多个则需要使用"&"符号进行连接(user=admin&orgId=1)
  98. */
  99. function CommonDialog(alias,callBack,paramValueString){
  100. window.__resultData__=0;
  101. if(alias==null || alias==undefined){
  102. $.ligerDialog.warn("别名为空!",'提示信息');
  103. return;
  104. }
  105. var url=__ctx + "/platform/form/bpmFormDialog/dialogObj.ht?alias=" +alias;
  106. url=url.getNewUrl();
  107. $.post(url,{"alias":alias},function(data){
  108. if(data.success==0){
  109. $.ligerDialog.warn("输入别名不正确!",'提示信息');
  110. return;
  111. }
  112. var obj=data.bpmFormDialog;
  113. var width=obj.width;
  114. var name=obj.name;
  115. var height=obj.height;
  116. var displayList=obj.displayfield.trim();
  117. var resultfield=obj.resultfield.trim();
  118. if( displayList==""){
  119. $.ligerDialog.warn("没有设置显示字段!",'提示信息');
  120. return;
  121. }
  122. if( resultfield==""){
  123. $.ligerDialog.warn("没有设置结果字段!",'提示信息');
  124. return;
  125. }
  126. var urlShow=__ctx + "/platform/form/bpmFormDialog/show.ht?dialog_alias_=" +alias;
  127. if(!paramValueString==false){
  128. urlShow = urlShow + "&" + encodeURI(paramValueString) ;
  129. }
  130. urlShow=urlShow.getNewUrl();
  131. $.ligerDialog.open({ url:urlShow, height: height,width: width, title :name,name:"frameDialog_",
  132. buttons: [ { text: '确定', onclick: function (item, dialog) {
  133. if(__resultData__==-1 || __resultData__==0){
  134. alert("还没有选择数据项!");
  135. return;
  136. }
  137. if(callBack){
  138. callBack(__resultData__);
  139. }
  140. dialog.close();
  141. } },
  142. { text: '取消', onclick: function (item, dialog) { dialog.close(); } } ] });
  143. });
  144. };