xt.js 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. /**
  2. * 新通javascript组件
  3. */
  4. (function(init) {
  5. if (init) {
  6. var pathName = document.location.pathname;
  7. var index = pathName.substr(1).indexOf("/");
  8. var ctx = pathName.substr(0, index + 1);
  9. Xt = {
  10. ctx : ctx,
  11. /**
  12. * config.wfid:流程ID
  13. */
  14. showChooseUserDialog : function(config) {
  15. config = config || {};
  16. var href = ctx + '/wf/task/chooseUser?wfid=' + config.wfid + "&taskId=" + config.taskId + "&flag="
  17. + config.flag+ "&id="+ config.id;
  18. if (!(Xt.userDialog)) {
  19. Xt.userDialog = $('<div/>');
  20. }
  21. Xt.userDialog.dialog({
  22. title : '选择环节用户',
  23. width : 600,
  24. height : 300,
  25. iconCls : 'pag-search',
  26. closed : true,
  27. cache : false,
  28. href : href,
  29. modal : true,
  30. toolbar : '#toolbar',
  31. onLoad : function() {
  32. },
  33. onClose : function() {
  34. Xt.userDialog.dialog('destroy');
  35. },
  36. buttons : [ {
  37. text : '完成',
  38. iconCls : 'icon-xt-ok',
  39. handler : function() {
  40. var rows = [];
  41. if($("#days").val().replace(/\s/g,"") != "" && $("#days").val().replace(/\s/g,"")){
  42. if(parseInt($("#days").val())>10){
  43. $.messager.alert("提示", "限办天数不可超过10天");
  44. return;
  45. }else if($("#days").val() == "0" || parseInt($("#days").val()) == 0){
  46. $.messager.alert("提示", "限办天数不可为0天");
  47. return;
  48. }
  49. }
  50. if (config.flag == "th") {
  51. var row = {
  52. step : $("#step").val(),
  53. users : $("#hIds").val(),
  54. days : $("#days").val()
  55. }
  56. rows.push(row);
  57. }
  58. else {
  59. var row = {
  60. step : $("#step").val(),
  61. users : $("#hIds").val(),
  62. days : $("#days").val(),
  63. id : $("#id").val()
  64. }
  65. rows.push(row);
  66. }
  67. if (rows.length <= 0 || isEmpty(rows[0].step) || isEmpty(rows[0].users)) {
  68. $.messager.alert("提示", "请选择下一环节和办理人");
  69. }
  70. else {
  71. if (config.callback && typeof config.callback == 'function') {
  72. config.callback(true, rows);
  73. }
  74. Xt.userDialog.dialog('close');
  75. }
  76. }
  77. }, {
  78. text : '取消',
  79. iconCls : 'icon-cancel',
  80. handler : function() {
  81. if (config.callback && typeof config.callback == 'function') {
  82. config.callback(false);
  83. }
  84. Xt.userDialog.dialog('close');
  85. }
  86. } ]
  87. }).dialog('open');
  88. },
  89. showChooseUserBackDialog : function(config) {
  90. config = config || {};
  91. var href = ctx + '/wf/task/chooseUser?wfid=' + config.wfid + "&taskId=" + config.taskId + "&flag="
  92. + config.flag;
  93. if (!(Xt.backUserDialog)) {
  94. Xt.backUserDialog = $('<div/>');
  95. }
  96. if (!(Xt.config)) {
  97. Xt.config = config;
  98. }
  99. Xt.backUserDialog.dialog({
  100. title : '选择环节用户',
  101. width : 800,
  102. height : 380,
  103. iconCls : 'pag-search',
  104. closed : true,
  105. cache : false,
  106. href : href,
  107. modal : true,
  108. toolbar : '#toolbar',
  109. onLoad : function() {
  110. },
  111. onClose : function() {
  112. Xt.backUserDialog.dialog('destroy');
  113. },
  114. buttons : [ {
  115. text : '取消',
  116. iconCls : 'icon-cancel',
  117. handler : function() {
  118. if (config.callback && typeof config.callback == 'function') {
  119. config.callback(false);
  120. }
  121. Xt.backUserDialog.dialog('close');
  122. }
  123. } ]
  124. }).dialog('open');
  125. },
  126. /**
  127. * 弹出意见
  128. */
  129. showGryjDialog : function(config) {
  130. var href = ctx + '/wf/task/gryj?yj='+encodeURI(encodeURI(config.yj));
  131. if (!(Xt.gryjDialog)) {
  132. Xt.gryjDialog = $('<div/>');
  133. }
  134. Xt.gryjDialog.dialog({
  135. title : '填写意见',
  136. width : 430,
  137. height : 330,
  138. iconCls : 'pag-search',
  139. closed : true,
  140. cache : false,
  141. href : href,
  142. modal : true,
  143. toolbar : '#toolbar',
  144. onLoad : function() {
  145. },
  146. onClose : function() {
  147. Xt.gryjDialog.dialog('destroy');
  148. },
  149. buttons : [ {
  150. text : '完成',
  151. iconCls : 'icon-xt-ok',
  152. handler : function() {
  153. var opinion = $('#opinion1').val();
  154. if(opinion&&opinion.length>200){
  155. $.messager.alert("提示", "意见请小于200字。");
  156. return false;
  157. }else{
  158. if (config.callback && typeof config.callback == 'function') {
  159. config.callback(true);
  160. }
  161. Xt.gryjDialog.dialog('close');
  162. }
  163. }
  164. },{
  165. text : '完成并添置到常用意见',
  166. iconCls : 'icon-xt-ok',
  167. handler : function() {
  168. var opinion = $('#opinion1').val();
  169. if(opinion&&opinion.length>200){
  170. $.messager.alert("提示", "意见请小于200字。");
  171. return false;
  172. }else{
  173. $.post($.ctx + "/gryj/saveYj", {
  174. opinion : $('#opinion1').val()
  175. }, function(data, status) {
  176. if (data.success) {
  177. if (config.callback && typeof config.callback == 'function') {
  178. config.callback(true);
  179. }
  180. Xt.gryjDialog.dialog('close');
  181. } else {
  182. if (config.callback && typeof config.callback == 'function') {
  183. config.callback(true);
  184. }
  185. Xt.gryjDialog.dialog('close');
  186. }
  187. }, "json");
  188. }
  189. }
  190. }, {
  191. text : '取消',
  192. iconCls : 'icon-cancel',
  193. handler : function() {
  194. if (config.callback && typeof config.callback == 'function') {
  195. config.callback(false);
  196. }
  197. Xt.gryjDialog.dialog('close');
  198. }
  199. } ]
  200. }).dialog('open');
  201. }
  202. }
  203. }
  204. }(typeof (Xt) === "undefined"));