influenceCtrl.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345
  1. app.controller('influenceCtrl', ["$rootScope","$scope","$state","$timeout", "$interval", "SweetAlert", "$modal", "FileUploader", "i18nService", "uiGridConstants", "uiGridGroupingConstants", "Restangular","api_bpm_data",function ($rootScope, $scope, $state, $timeout, $interval, SweetAlert, $modal, FileUploader, i18nService, uiGridConstants, uiGridGroupingConstants, Restangular, api_bpm_data) {
  2. $scope.langs=i18nService.getAllLangs();
  3. $scope.lang = 'zh-cn';
  4. var loginUser = $rootScope.user;
  5. // var fildata={"idx":0,"sum":1000};
  6. // $scope.outinfluence={};
  7. // api_bpm_data.fetchDataList('influence',fildata).then(function(response){
  8. // if(response){
  9. // if(response.status=200){
  10. // $scope.outinfluence= response.list;
  11. // }
  12. // }
  13. // })
  14. // var fildata={"idx":0,"sum":1000};
  15. // $scope.outemergency={};
  16. // api_bpm_data.fetchDataList('emergency',fildata).then(function(response){
  17. // if(response){
  18. // if(response.status=200){
  19. // $scope.outemergency= response.list;
  20. // }
  21. // }
  22. // })
  23. // $scope.influenceclick={}
  24. // $scope.ckickrow=function(data){
  25. // $scope.influenceclick=data;
  26. // }
  27. // $scope.addAlert = function () {
  28. // $scope.outinfluence.push({
  29. // influenceid: $scope.outinfluence.length+1
  30. // });
  31. // };
  32. // $scope.closeAlert = function (index,data) {
  33. // $scope.outinfluence.splice(index, 1);
  34. // console.log(data)
  35. // };
  36. // $scope.add = function(){
  37. // $scope.outemergency.push({
  38. // emergencyid: $scope.outemergency.length+1
  39. // });
  40. // }
  41. // $scope.closeemergency = function (index,data) {
  42. // $scope.outemergency.splice(index, 1);
  43. // console.log(data)
  44. // };
  45. // // $scope.cancel = function() {
  46. // // $scope.outdata=[];
  47. // // };
  48. // $scope.savedatas = function(influencedate) {
  49. // // if($scope.areaplace){
  50. // if($scope.influenceclick.id){
  51. // if($scope.influenceclick.inlevel){
  52. // var upinfluence={"influence":{"id":$scope.influenceclick.id,"inlevel":$scope.influenceclick.inlevel,"name":influencedate,"description":$scope.influenceclick.description}}
  53. // api_bpm_data.updData('influence',upinfluence).then(function(response){
  54. // if(response){
  55. // if(response.status==200){
  56. // SweetAlert.swal({
  57. // title:"修改成功!",
  58. // type:"success"
  59. // })
  60. // }else{
  61. // SweetAlert.swal({
  62. // title:"修改失败!",
  63. // type:"error"
  64. // })
  65. // }
  66. // }
  67. // })
  68. // }else if($scope.influenceclick.level){
  69. // var upinfluence={"emergency":{"id":$scope.influenceclick.id,"level":$scope.influenceclick.level,"name":influencedate,"description":$scope.influenceclick.description}}
  70. // api_bpm_data.updData('emergency',upinfluence).then(function(response){
  71. // if(response){
  72. // if(response.status==200){
  73. // SweetAlert.swal({
  74. // title:"修改成功!",
  75. // type:"success"
  76. // })
  77. // }else{
  78. // SweetAlert.swal({
  79. // title:"修改失败!",
  80. // type:"error"
  81. // })
  82. // }
  83. // }
  84. // })
  85. // }
  86. // }else{
  87. // if($scope.influenceclick.influenceid){
  88. // var upinfluence={"influence":{"inlevel":$scope.influenceclick.inlevel,"name":influencedate,"description":$scope.influenceclick.description}}
  89. // api_bpm_data.addData('influence',upinfluence).then(function(response){
  90. // if(response){
  91. // if(response.status==200){
  92. // SweetAlert.swal({
  93. // title:"修改成功!",
  94. // type:"success"
  95. // })
  96. // }else{
  97. // SweetAlert.swal({
  98. // title:"修改失败!",
  99. // type:"error"
  100. // })
  101. // }
  102. // }
  103. // })
  104. // }else if($scope.influenceclick.emergencyid){
  105. // var upinfluence={"emergency":{"level":$scope.influenceclick.level,"name":influencedate,"description":$scope.influenceclick.description}}
  106. // api_bpm_data.addData('emergency',upinfluence).then(function(response){
  107. // if(response){
  108. // if(response.status==200){
  109. // SweetAlert.swal({
  110. // title:"修改成功!",
  111. // type:"success"
  112. // })
  113. // }else{
  114. // SweetAlert.swal({
  115. // title:"修改失败!",
  116. // type:"error"
  117. // })
  118. // }
  119. // }
  120. // })
  121. // }
  122. // }
  123. // // }
  124. // }
  125. $scope.gridOptions = {};
  126. $scope.gridOptions.data = 'myData';
  127. $scope.gridOptions.enableColumnResizing = true;
  128. $scope.gridOptions.enableFiltering = true;
  129. $scope.gridOptions.enableGridMenu = false;
  130. $scope.gridOptions.enableRowSelection = true;
  131. $scope.gridOptions.showGridFooter = true;
  132. $scope.gridOptions.showColumnFooter = false;
  133. $scope.gridOptions.fastWatch = true;
  134. $scope.gridOptions.useExternalFiltering=true;
  135. $scope.gridOptions.useExternalPagination = true;
  136. $scope.gridOptions.paginationPageSizes = [10];
  137. $scope.gridOptions.paginationPageSize = 10;
  138. $scope.gridOptions.multiSelect = false;
  139. //$scope.gridOptions.rowTemplate= "<div ng-dblclick=\"grid.appScope.onDblClick(row)\" ng-repeat=\"(colRenderIndex, col) in colContainer.renderedColumns track by col.uid\" ui-grid-one-bind-id-grid=\"rowRenderIndex + '-' + col.uid + '-cell'\" class=\"ui-grid-cell\" ng-class=\"{ 'ui-grid-row-header-cell': col.isRowHeader }\" role=\"{{col.isRowHeader ? 'rowheader' : 'gridcell'}}\" ui-grid-cell></div>";
  140. $scope.gridOptions.rowIdentity = function(row) {
  141. return row.id;
  142. };
  143. $scope.gridOptions.getRowIdentity = function(row) {
  144. return row.id;
  145. };
  146. $scope.gridOptions.columnDefs = [
  147. { name:'inlevel', displayName:'影响度代码', width:100, enableFiltering:false},
  148. { name:'name', displayName:'影响度', width:200, enableFiltering:false},
  149. { name:'description', displayName:'影响度描述', width:200, enableFiltering:false},
  150. { name:'修改', cellTemplate:'<a class="btn btn-sm btn-info" ng-click="grid.appScope.saveData(row.entity)" tooltip="编辑">' +
  151. '<i class="fa fa-pencil-square-o"/></a>' , width:100,enableFiltering:false}
  152. ];
  153. $scope.saveData = function(selectdata){
  154. var modalInstance = $modal.open({
  155. templateUrl: 'assets/views/system/tpl/systeminfluence.html',
  156. controller: function($scope, $modalInstance, api_bpm_data){
  157. $scope.influencedata={};
  158. $scope.influencedata=selectdata;
  159. $scope.cancel = function() {
  160. $modalInstance.dismiss('cancel');
  161. };
  162. $scope.savercode = function(influencedata){
  163. var fildata={"influence":{"id":influencedata.id,"inlevel":influencedata.inlevel,"name":influencedata.name,"description":influencedata.description}}
  164. api_bpm_data.updData('influence',fildata).then(function(response){
  165. if(response){
  166. if(response.status==200){
  167. SweetAlert.swal({
  168. title:"修改成功!",
  169. type:"success"
  170. },function(){
  171. // $scope.refreshData('expand-right', defaultFilterData);
  172. })
  173. }else{
  174. SweetAlert.swal({
  175. title:"修改失败!",
  176. type:"error"
  177. })
  178. }
  179. }
  180. })
  181. $modalInstance.close();
  182. }
  183. }
  184. });
  185. }
  186. $scope.addData = function(){
  187. var modalInstance = $modal.open({
  188. templateUrl: 'assets/views/system/tpl/systeminfluence.html',
  189. controller: function($scope, $modalInstance, api_bpm_data){
  190. $scope.cancel = function() {
  191. $modalInstance.dismiss('cancel');
  192. };
  193. $scope.savercode = function(influencedata) {
  194. $modalInstance.close(influencedata);
  195. };
  196. }
  197. });
  198. modalInstance.result.then(function(selectedItem) {
  199. // console.log('selectedItem='+JSON.stringify(selectedItem));
  200. if(selectedItem){
  201. var fildata={"influence":{"inlevel":selectedItem.inlevel,"name":selectedItem.name,"description":selectedItem.description}}
  202. api_bpm_data.addData('influence',fildata).then(function(response){
  203. if(response){
  204. if(response.status==200){
  205. SweetAlert.swal({
  206. title:"新增成功!",
  207. type:"success"
  208. },function(){
  209. $scope.refreshData('expand-right', defaultFilterData);
  210. })
  211. }else{
  212. SweetAlert.swal({
  213. title:"新增失败!",
  214. type:"error"
  215. })
  216. }
  217. }
  218. })
  219. }
  220. });
  221. }
  222. $scope.removeData = function(){
  223. var rmvList = [$scope.selected.items.id]
  224. if(rmvList.length>0){
  225. api_bpm_data.rmvData('influence',rmvList).then(function(response){
  226. if(response.status==200){
  227. SweetAlert.swal({
  228. title: "删除成功!",
  229. type: "success",
  230. confirmButtonColor: "#007AFF"
  231. },function(){
  232. $scope.myData = _.reject($scope.myData, function(o) { return _.includes(rmvList,o.id); });
  233. $scope.selected = {
  234. items:[]
  235. };
  236. });
  237. }else{
  238. SweetAlert.swal({
  239. title: "操作异常!",
  240. text: "系统异常,请稍后重试,或者联系管理员!",
  241. type: "error"
  242. });
  243. }
  244. })
  245. }
  246. }
  247. $scope.selected = {
  248. items:[]
  249. }
  250. $scope.editted = {
  251. items:[]
  252. }
  253. $scope.gridOptions.onRegisterApi = function(gridApi){
  254. $scope.gridApi = gridApi;
  255. // gridApi.edit.on.afterCellEdit($scope,function(rowEntity, colDef, newValue, oldValue){
  256. // console.log(rowEntity);
  257. // });
  258. gridApi.pagination.on.paginationChanged($scope, function (newPage, pageSize) {
  259. var filtersData = $scope.memoryfilterData;
  260. filtersData.idx=newPage-1;
  261. filtersData.sum=pageSize;
  262. $scope.refreshData('expand-right',filtersData);
  263. });
  264. gridApi.selection.on.rowSelectionChanged($scope, function(scope){
  265. scope.grid.appScope.selected.items=scope.entity
  266. });
  267. };
  268. var defaultFilterData = {
  269. "idx":0,
  270. "sum":10
  271. };
  272. $scope.memoryfilterData = {
  273. "idx":0,
  274. "sum":10
  275. }
  276. $scope.ldloading = {};
  277. $scope.refreshData = function(style,filterData){
  278. $scope.ldloading[style.replace('-', '_')] = true;
  279. if(angular.isUndefined(filterData)){
  280. filterData = defaultFilterData;
  281. }
  282. $scope.myData = [];
  283. api_bpm_data.fetchDataList('influence',filterData).then(function(response){
  284. var myData = Restangular.stripRestangular(response);
  285. $scope.gridOptions.totalItems = myData.totalNum;
  286. $scope.myData = myData.list;
  287. $scope.ldloading[style.replace('-', '_')] = false;
  288. },function(){
  289. $scope.ldloading[style.replace('-', '_')] = false;
  290. });
  291. };
  292. $scope.refreshData('expand-right', defaultFilterData);
  293. }]);