EditController.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. var app = angular.module('app',['baseServices','SysDataSourceService','BpmNodeSqlService','commonListService','arrayToolService']);
  2. app.controller("EditController",['$scope','BaseService','SysDataSource','BpmNodeSql','CommonListService','ArrayToolService',function($scope,BaseService,SysDataSource,BpmNodeSql,CommonListService,ArrayToolService){
  3. $scope.CommonList=CommonListService;
  4. $scope.ArrayTool=ArrayToolService;
  5. $scope.prop={};//prop 等于一个bpmnodesql对象
  6. //初始化
  7. $scope.prop.dsAlias="LOCAL";
  8. $scope.prop.actdefId=actdefId;
  9. $scope.prop.nodeId=nodeId;
  10. $scope.prop.sql="";
  11. $scope.isValid=true;
  12. SysDataSource.getAllSysDS(function(data){
  13. $scope.allSysDS = data;
  14. });
  15. //初始化
  16. var json ={};
  17. json.actdefId=actdefId;
  18. json.nodeId=nodeId;
  19. json.id=id;
  20. //获取table
  21. BpmNodeSql.getTable(json,function(data,status){
  22. //在服务端进行了捕获,如果出错则返回 ResultMessage对象。
  23. if(data.result!=undefined && data.result==0){
  24. $scope.isValid=false;
  25. $.ligerDialog.error(data.message +",请检查流程表单设置!","提示信息");
  26. return;
  27. }
  28. var json={};
  29. if(data.isExternal==0){
  30. json.fieldDesc="主键";
  31. json.dbFieldName="id";
  32. data.fieldList.push(json);
  33. }
  34. $scope.table=data;
  35. $scope.isValid=true;
  36. });
  37. //判断节点的类型,取对应的action列表
  38. BpmNodeSql.getNodeType(json,function(data){
  39. if(data){
  40. if(data.nodeType=="startEvent"){
  41. $scope.actionList=startActionList;
  42. $scope.prop.action="submit";
  43. }else if(data.nodeType=="endEvent"){
  44. $scope.actionList=endActionList;
  45. $scope.prop.action="end";
  46. }else{
  47. $scope.actionList=normalActionList;
  48. $scope.prop.action="agree";
  49. }
  50. }
  51. });
  52. //有ID才初始化
  53. if(id!=""){
  54. BpmNodeSql.detail(json,function(data){
  55. if(data){
  56. $scope.prop=data;
  57. }
  58. });
  59. }
  60. $scope.rollback=true;
  61. //检查sql语句的合法性
  62. $scope.checkSqlValidity=function(){
  63. SqlUtil.checkValidity($scope.prop.sql,$scope.prop.dsAlias,$scope.rollback);
  64. }
  65. //保存
  66. $scope.save=function(){
  67. if(!$scope.isValid){
  68. $.ligerDialog.error("请检查流程表单设置!","提示信息");
  69. return;
  70. }
  71. var frm=$('#frmSubmit').form();
  72. if(!frm.valid()) return;
  73. BpmNodeSql.save($scope.prop,function(data){
  74. if(data.result==1){
  75. $.ligerDialog.confirm(data.message+",是否继续操作", "提示信息",
  76. function(rtn) {
  77. if (rtn) {
  78. window.location.reload();
  79. } else {
  80. closeWin();
  81. }
  82. });
  83. }else{
  84. $.ligerDialog.err("提示信息","流程节点SQL设置失败",data.message);
  85. }
  86. });
  87. }
  88. //点击主表字段时添加到sql
  89. $scope.appendSql=function(field){
  90. var temp="";
  91. if(field.dbFieldName){
  92. temp="<#"+field.dbFieldName+"#>";
  93. }
  94. if(field.value){
  95. temp="<#"+field.value+"#>";
  96. }
  97. insertText(document.getElementById('sqlText'),temp);
  98. $scope.prop.sql=document.getElementById('sqlText').value;//改变ngmodel对应的值
  99. }
  100. //触发时机的列表
  101. //普通节点
  102. normalActionList=[
  103. {
  104. key:"同意",
  105. value:"agree"
  106. },
  107. {
  108. key:"反对",
  109. value:"opposite"
  110. },
  111. {
  112. key:"驳回",
  113. value:"reject"
  114. }
  115. ];
  116. //开始节点列表
  117. startActionList=[
  118. {
  119. key:"提交",
  120. value:"submit"
  121. },
  122. {
  123. key:"保存",
  124. value:"save"
  125. }
  126. ];
  127. //结束节点列表
  128. endActionList=[
  129. {
  130. key:"结束",
  131. value:"end"
  132. }
  133. ];
  134. //流程字段
  135. $scope.flowFieldList=[
  136. {
  137. key:"流程defID",
  138. value:"defId"
  139. },
  140. {
  141. key:"表单Key",
  142. value:"formKey"
  143. },
  144. {
  145. key:"当前用户名称",
  146. value:"curUserName"
  147. },
  148. {
  149. key:"当前用户ID",
  150. value:"curUserId"
  151. },
  152. {
  153. key:"流程actDefId ",
  154. value:"actDefId"
  155. },
  156. {
  157. key:"流程运行runId",
  158. value:"runId"
  159. },
  160. {
  161. key:"流程任务taskID",
  162. value:"taskId"
  163. }
  164. ];
  165. }]);