incidentEditorCtrl.js 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  1. app.controller('incidentEditorCtrl', ["$rootScope","$scope","i18nService", "$state", "$timeout", "$interval", "SweetAlert", "$modal", "FileUploader", "i18nService", "uiGridConstants", "uiGridGroupingConstants", "Restangular","api_user_data","api_solution","api_bpm_domain","api_bpm_data", function ($rootScope, $scope,i18nService, $state, $timeout, $interval, SweetAlert, $modal, FileUploader, i18nService, uiGridConstants, uiGridGroupingConstants, Restangular, api_user_data, api_solution,api_bpm_domain,api_bpm_data) {
  2. $scope.langs=i18nService.getAllLangs();
  3. $scope.lang = 'zh-cn';
  4. i18nService.setCurrentLang($scope.lang);
  5. var loginUser=$rootScope.user;
  6. $scope.cities = [
  7. {
  8. name:'青岛',
  9. code:'qd'
  10. },
  11. {
  12. name:'北京',
  13. code:'bj'
  14. },
  15. {
  16. name:'济南',
  17. code:'jn'
  18. },
  19. {
  20. name:'青岛',
  21. code:'qd'
  22. },
  23. {
  24. name:'北京',
  25. code:'bj'
  26. },
  27. {
  28. name:'济南',
  29. code:'jn'
  30. }
  31. ];
  32. //aa
  33. $scope.aa=function(obj){
  34. $scope.selectName=obj.name;
  35. }
  36. //多选框显示
  37. $scope.selectClick=function(){
  38. $scope.selectShow=!$scope.selectShow;
  39. };
  40. //分类显示
  41. $scope.onChange = function(searchType) {
  42. var data = JSON.parse(sessionStorage.uploadParameter);
  43. data.searchType = searchType;
  44. sessionStorage.uploadParameter=JSON.stringify(data);
  45. $scope.refreshListData('expand-right');
  46. }
  47. //属形控件加载
  48. $scope.my_tree_handler = function (branch) {
  49. var data = JSON.parse(sessionStorage.uploadParameter);
  50. data.status = branch.id;
  51. sessionStorage.uploadParameter=JSON.stringify(data);
  52. $scope.refreshListData('expand-right');
  53. $scope.output = "You selected: " + branch.label;
  54. };
  55. //数据加载
  56. $scope.ldloading = {};
  57. $scope.refreshListData = function(style,filterData){
  58. //刷新按钮动画
  59. $scope.ldloading[style.replace('-', '_')] = true;
  60. var filterData = JSON.parse(sessionStorage.uploadParameter);
  61. $scope.myData = [];
  62. api_bpm_data.fetchServiceTasks(filterData.status,filterData).then(function(data){
  63. var myData = Restangular.stripRestangular(data);
  64. if(angular.isArray(myData.data)){
  65. $scope.myData = myData.data;
  66. }else{
  67. SweetAlert.swal({
  68. title: "数据为空",
  69. text: myData.data,
  70. type: "warning"
  71. });
  72. }
  73. $scope.ldloading[style.replace('-', '_')] = false;
  74. },function(){
  75. $scope.ldloading[style.replace('-', '_')] = false;
  76. });
  77. }
  78. $scope.editorReService = function(data) {
  79. $state.go('app.reService.editor', {
  80. formKey: 'inspection_confirm',
  81. pdKey: 'serviceCatalogueProcessActual',
  82. taskId: data.taskId,
  83. processInstanceId: data.processInstanceId
  84. });
  85. }
  86. $scope.lookReService = function(data){
  87. $state.go('app.reService.detail', {
  88. formKey: 'inspection_detail',
  89. pdKey: 'serviceCatalogueProcessActual',
  90. dataId: data.id,
  91. processInstanceId: data.processInstanceId
  92. });
  93. }
  94. var apple_selected, tree, treedata_avm, treedata_geography;
  95. //$scope.selectedTreeNode = {};
  96. $scope.my_data = [];
  97. $scope.tree_data = [];
  98. $scope.my_tree = tree = {};
  99. function convertListToTree(data, treeMap){
  100. var idToNodeMap = {}; //Keeps track of nodes using id as key, for fast lookup
  101. var root = null; //Initially set our loop to null
  102. var parentNode = null;
  103. //loop over data
  104. for(var i = 0; i < data.length; i++) {
  105. var datum = data[i];
  106. //each node will have children, so let's give it a "children" poperty
  107. datum.children = [];
  108. //add an entry for this node to the map so that any future children can
  109. //lookup the parent
  110. idToNodeMap[datum.id] = datum;
  111. //Does this node have a parent?
  112. if(typeof datum.parent === "undefined" || datum.parent == null) {
  113. //Doesn't look like it, so this node is the root of the tree
  114. root = datum;
  115. treeMap[datum.id] = root;
  116. } else {
  117. //This node has a parent, so let's look it up using the id
  118. parentNode = idToNodeMap[datum.parent];
  119. //We don't need this property, so let's delete it.
  120. delete datum.parent;
  121. //Let's add the current node as a child of the parent node.
  122. parentNode.children.push(datum);
  123. }
  124. }
  125. return root;
  126. }
  127. function convertParentToChildList(data){
  128. var treeMap = {};
  129. var list=[];
  130. convertListToTree(data, treeMap);
  131. angular.forEach(treeMap,function(item){
  132. list.push(item);
  133. });
  134. return list;
  135. }
  136. //var uploader = $scope.uploader = new FileUploader({});
  137. //$scope.removeKnowledgeType = function(){}
  138. //
  139. //$scope.editKnowledgeType = function(flag,size){}
  140. //
  141. //$scope.createKnowledge = function(size){}
  142. $scope.my_tree = tree = {};
  143. //树型控件加载
  144. $scope.try_async_load = function () {
  145. $scope.my_data = [];
  146. $scope.doing_async = true;
  147. api_bpm_data.fetchDataList('requestcategory',{ "idx": 0,"sum": 1000}).then(function(response){
  148. if(response.status==200){
  149. var data = response.list;
  150. var objects = [];
  151. for (var i = 0; i < data.length; i++) {
  152. var object = {};
  153. object.id = data[i].id;
  154. if(data[i].parent&&data[i].parent.id != 0){
  155. object.parent = data[i].parent.id;
  156. }
  157. object.label = data[i].recate;
  158. object.actions = data[i].actions; //权限部分
  159. object.group = "1";
  160. object.user = "2";
  161. object.state = {
  162. "opened": true
  163. };
  164. object.typeName = "type";
  165. objects.push(object);
  166. }
  167. $scope.my_data = convertParentToChildList(objects);
  168. $scope.tree_data = angular.copy($scope.my_data);
  169. if($scope.my_data.length>0){
  170. $scope.doing_async = false;
  171. }
  172. }else{
  173. SweetAlert.swal({
  174. title: "系统错误!",
  175. text: "请刷新重试!",
  176. type: "error"
  177. });
  178. }
  179. });
  180. $scope.showAddSolutionType = false; //添加知识类型 按钮
  181. $scope.showReviewKnowledgeType = false; //审核知识类型 按钮
  182. };
  183. $scope.refreshListData('expand_right');
  184. $scope.try_async_load();
  185. //
  186. //$scope.ldloading={};
  187. //
  188. //$scope.statuses = [];
  189. //
  190. //$scope.$watch('searchSolutionInput',function(oldvalue,newvalue){});
  191. //
  192. //$scope.filterSolutionStatus = function(filterStatus){}
  193. //
  194. //$scope.searchSolution = function(){}
  195. //
  196. }]);