qxgl_wt.js 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835
  1. 'use strict';
  2. app.controller('qxgl_wtCtrl', ["$scope", "$http", "$rootScope", "$state", "$timeout", "moment", "$interval", "$modal", "$stateParams", "SweetAlert", "Restangular", "api_bpm_domain", "api_text", "api_bpm_data", "api_user_data", "api_configure_data", "api_configure_form", "api_cmdb", 'api_bpm', 'ngDraggable', 'api_solution', 'api_report_data', function ($scope, $http, $rootScope, $state, $timeout, moment, $interval, $modal, $stateParams, SweetAlert, Restangular, api_bpm_domain, api_text, api_bpm_data, api_user_data, api_configure_data, api_configure_form, api_cmdb, api_bpm, ngDraggable, api_solution, api_report_data) {
  3. var loginUser = $rootScope.user;
  4. console.log(loginUser);
  5. $scope.userDatas = [];
  6. $scope.userIndex = 9999;
  7. $scope.wt_names = '';
  8. //获取人员数据
  9. $scope.userData = function () {
  10. var data = {
  11. idx: 0,
  12. sum: 10000,
  13. flag: -1
  14. }
  15. api_user_data.fetchDataList('user', data).then(function (response) {
  16. console.log(response)
  17. if (response) {
  18. if (response.status == 200) {
  19. $scope.userDatas = response.list;
  20. console.log($scope.userDatas)
  21. }
  22. }
  23. })
  24. }
  25. $scope.userData();
  26. //人员搜索
  27. $scope.ss_name = function () {
  28. console.log($scope.wt_names);
  29. var data = {
  30. idx: 0,
  31. sum: 10000,
  32. flag: -1,
  33. user: {
  34. flag: -1,
  35. name: $scope.wt_names
  36. }
  37. }
  38. api_user_data.fetchDataList('user', data).then(function (response) {
  39. console.log(response)
  40. if (response) {
  41. if (response.status == 200) {
  42. $scope.userDatas = response.list;
  43. console.log($scope.userDatas)
  44. }
  45. }
  46. })
  47. }
  48. //搜索按钮
  49. $scope.wt_ss = function () {
  50. $scope.ss_name();
  51. }
  52. var loginUser = $rootScope.user;
  53. //user tree
  54. var apple_selected, tree, treedata_avm, treedata_geography;
  55. var i = 0;
  56. $scope.bodyHeight = Math.max((window.innerHeight - 290), 500);
  57. $(window).resize(function () {
  58. $scope.bodyHeight = Math.max((window.innerHeight - 290), 500);
  59. });
  60. $rootScope.isMask = false;
  61. //角色仪表权限
  62. function dashboardaborad(branch) {
  63. $scope.dashboard_tree = angular.copy($scope.dashboard_data);
  64. angular.forEach($scope.dashboard_tree, function (index, i) {
  65. if (branch.dashboard && branch.dashboard.length > 0) {
  66. angular.forEach(branch.dashboard, function (item) {
  67. if (index.id == item.id) {
  68. $scope.dashboard_tree[i].checks = true;
  69. }
  70. })
  71. }
  72. })
  73. }
  74. //角色树
  75. $scope.my_tree = {};
  76. $scope.my_power = {};
  77. $scope.try_async_load = function () {
  78. $scope.my_data = [];
  79. $scope.doing_async = true;
  80. api_user_data.fetchDataList('role', { "idx": 0, "sum": 1000 }).then(function (response) {
  81. if (response.status == 200) {
  82. var data = response.list;
  83. var objects = [];
  84. for (var i = 0; i < data.length; i++) {
  85. var object = {};
  86. object.id = data[i].id;
  87. if (data[i].parent && data[i].parent.id != 0) {
  88. object.parent = data[i].parent.id;
  89. }
  90. angular.extend(object, data[i]);
  91. object.label = object.role;
  92. if (loginUser.id == 1) {
  93. objects.push(object);
  94. } else {
  95. if (object.rolecode != "system_menus") {
  96. objects.push(object);
  97. }
  98. }
  99. }
  100. $scope.my_data = convertParentToChildList(objects);
  101. $scope.tree_data = angular.copy($scope.my_data);
  102. if ($scope.my_data.length > 0) {
  103. $scope.doing_async = false;
  104. }
  105. } else {
  106. SweetAlert.swal({
  107. title: "系统错误!",
  108. text: "请刷新重试!",
  109. type: "error"
  110. });
  111. }
  112. });
  113. };
  114. function convertListToTree(data, treeMap) {
  115. var idToNodeMap = {}; //Keeps track of nodes using id as key, for fast lookup
  116. var root = null; //Initially set our loop to null
  117. var parentNode = null;
  118. //loop over data
  119. for (var i = 0; i < data.length; i++) {
  120. var datum = data[i];
  121. //each node will have children, so let's give it a "children" poperty
  122. datum.children = [];
  123. //add an entry for this node to the map so that any future children can
  124. //lookup the parent
  125. idToNodeMap[datum.id] = datum;
  126. //Does this node have a parent?
  127. // console.log("datum="+JSON.stringify(datum))
  128. if (typeof datum.parent === "undefined" || datum.parent === null) {
  129. //Doesn't look like it, so this node is the root of the tree
  130. root = datum;
  131. treeMap[datum.id] = root;
  132. } else {
  133. //This node has a parent, so let's look it up using the id
  134. parentNode = idToNodeMap[datum.parent.id];
  135. // console.log(idToNodeMap)
  136. // console.log(parentNode.children)
  137. // console.log($scope.parentNode)
  138. //We don't need this property, so let's delete it.
  139. // delete datum.parent;
  140. //Let's add the current node as a child of the parent node.
  141. parentNode.children.push(datum);
  142. }
  143. }
  144. console.log(root)
  145. return root;
  146. }
  147. function convertParentToChildList(data) {
  148. console.log(data)
  149. var treeMap = {};
  150. var list = [];
  151. convertListToTree(data, treeMap);
  152. angular.forEach(treeMap, function (item) {
  153. list.push(item);
  154. });
  155. return list;
  156. }
  157. $scope.try_async_load();
  158. //end power
  159. //普通用户菜单权限
  160. $scope.try_async_powerload = function (items) {
  161. console.log(items)
  162. console.log(items.ciClassify)
  163. if (items) {
  164. $scope.getbranchs = items.ciClassify;
  165. }
  166. // $scope.my_power = [];
  167. var objects = [];
  168. var selected = [];
  169. // api_user_data.roleMenu(items.id).then(function(response) {
  170. // api_configure_data.fetchDataList('menu', { "idx": 0, "sum": 1000 }).then(function(response) {
  171. // if (response.status == 200) {
  172. // var data = response.data;
  173. // console.log(data)
  174. // var objects = [];
  175. // for (var i = 0; i < items.ciClassify.length; i++) {
  176. // var object = {};
  177. // object.id = items.ciClassify[i].id;
  178. // if (items.ciClassify[i].parent && items.ciClassify[i].parent.id != 0) {
  179. // object.parent = items.ciClassify[i].parent.id;
  180. // }
  181. // angular.extend(object, items.ciClassify[i]);
  182. // object.label = object.label;
  183. // objects.push(object);
  184. // }
  185. // console.log(objects)
  186. // selected = angular.copy($scope.tile);
  187. selected = angular.copy(items.ciClassify);
  188. console.log(selected)
  189. // $scope.my_power = angular.copy($scope.tree_power);
  190. if (selected.length > 0) {
  191. // angular.forEach($scope.tile, function (index, i) {
  192. // angular.forEach(selected, function (item) {
  193. // // console.log(item)
  194. // // console.log(index)
  195. // $scope.tile[i].checks = false;
  196. // if (index.id == item.id) {
  197. // $scope.tile[i].checks = true;
  198. // console.log(ii++)
  199. // }
  200. // else{
  201. // // $scope.tile[i].checks = false;
  202. // console.log(iii++)
  203. // }
  204. // })
  205. // })
  206. $scope.wwwwww = []
  207. for (var i = 0; i < $scope.tile.length; i++) {
  208. $scope.tile[i].checks = false;
  209. for (var j = 0; j < selected.length; j++) {
  210. if (selected[j].id == $scope.tile[i].id) {
  211. $scope.tile[i].checks = true;
  212. }
  213. }
  214. }
  215. console.log($scope.tile)
  216. $scope.my_power = convertParentToChildList($scope.tile);
  217. } else {
  218. console.log(selected)
  219. angular.forEach($scope.tile, function (item, i) {
  220. $scope.tile[i].checks = false;
  221. })
  222. $scope.my_power = convertParentToChildList($scope.tile);
  223. }
  224. if ($scope.my_power.length > 0) {
  225. $scope.doing_asyncpower = false;
  226. }
  227. // } else {
  228. // SweetAlert.swal({
  229. // title: "系统错误!",
  230. // text: "请刷新重试!",
  231. // type: "error"
  232. // });
  233. // }
  234. // });
  235. };
  236. //普通用户底菜单权限
  237. $scope.my_power = [];
  238. $scope.tile = [];
  239. $scope.try_async_powerloadlow = function () {
  240. var objects = [];
  241. var data1 = { "idx": 0, "sum": 1000, "ciclassify": { id: 0 } };
  242. api_report_data.fetchDataList1("ciclassify", data1).then(function (response) {
  243. if (response.status == 200) {
  244. var data = response.list;
  245. // $scope.my_power=response.list;
  246. var objects = [];
  247. for (var i = 0; i < data.length; i++) {
  248. var object = {};
  249. object.id = data[i].id;
  250. if (data[i].parent && data[i].parent.id != 0) {
  251. object.parent = data[i].parent.id;
  252. }
  253. angular.extend(object, data[i]);
  254. object.label = object.label;
  255. objects.push(object);
  256. }
  257. $scope.tile = objects;
  258. $scope.my_power = convertParentToChildList(objects);
  259. $scope.tree_power = angular.copy($scope.my_power);
  260. if ($scope.my_data.length > 0) {
  261. $scope.doing_asyncpower = false;
  262. }
  263. } else {
  264. SweetAlert.swal({
  265. title: "系统错误!",
  266. text: "请刷新重试!",
  267. type: "error"
  268. });
  269. }
  270. });
  271. };
  272. //管理员 底菜单
  273. $scope.try_async_powerloadadmin = function () {
  274. var objects = [];
  275. // api_conversation.pageMenuByCode("system_menus").then(function(response) {
  276. api_user_data.getMenu({}).then(function (response) {
  277. if (response.status == 200) {
  278. var data = response.data;
  279. var objects = [];
  280. for (var i = 0; i < data.length; i++) {
  281. var object = {};
  282. object.id = data[i].id;
  283. if (data[i].parent && data[i].parent.id != 0) {
  284. object.parent = data[i].parent.id;
  285. }
  286. angular.extend(object, data[i]);
  287. object.label = object.title;
  288. objects.push(object);
  289. }
  290. $scope.tile = objects;
  291. $scope.my_power = convertParentToChildList(objects);
  292. $scope.tree_power = angular.copy($scope.my_power);
  293. if ($scope.tree_power.length > 0) {
  294. $scope.doing_asyncpower = false;
  295. }
  296. } else {
  297. SweetAlert.swal({
  298. title: "系统错误!",
  299. text: "请刷新重试!",
  300. type: "error"
  301. });
  302. }
  303. });
  304. };
  305. //点击角色
  306. $scope.role = {};
  307. $scope.change = true;
  308. $scope.my_tree_handler = function (branch, index) {
  309. console.log(branch)
  310. $scope.users = {};
  311. $scope.userIndex
  312. $scope.users = branch
  313. console.log($scope.roledetail)
  314. console.log($scope.tree_power)
  315. console.log($scope.my_power)
  316. $scope.userIndex = index
  317. $scope.role = branch.role;
  318. // for (var i = 0; i < $scope.roledetail.length; i++) {
  319. // if ($scope.role.model == $scope.roledetail[i].name) {
  320. // $scope.role.model = { 'id': $scope.roledetail[i].id, 'name': $scope.roledetail[i].name }
  321. // }
  322. // }
  323. $scope.formlist = branch.dashboard;;
  324. dashboardaborad($scope.role);
  325. $scope.try_async_powerload(branch);
  326. $scope.change = false;
  327. }
  328. if (loginUser.id == 1) {
  329. $scope.try_async_powerloadadmin();
  330. } else {
  331. $scope.try_async_powerloadlow();
  332. }
  333. // $scope.try_async_powerloadadmin();
  334. // console.log(loginUser);
  335. //start remove
  336. $scope.getbranchs = {};
  337. $scope.formbranch = function (branchData) {
  338. console.log(branchData)
  339. if (!$scope.users) {
  340. for (var i = 0; i < branchData.length; i++) {
  341. branchData[i].checks = false
  342. }
  343. SweetAlert.swal({
  344. title: "操作异常!",
  345. text: "请先选择人员,再进行分类权限操作!",
  346. type: "error"
  347. });
  348. console.log(branchData)
  349. return;
  350. } else {
  351. $scope.getbranchs = branchData;
  352. }
  353. }
  354. //change right
  355. //修改权限
  356. $scope.changeData = function () {
  357. console.log($scope.getbranchs)
  358. if ($scope.getbranchs.length > 0) {
  359. var menu = [];
  360. // $rootScope.isMask = true;
  361. var datas = {
  362. loginUser: loginUser,
  363. user: $scope.users
  364. }
  365. datas.user.ciClassify = $scope.getbranchs;
  366. for (var i = 0; i < datas.user.ciClassify.length; i++) {
  367. delete (datas.user.ciClassify[i].checks);
  368. delete (datas.user.ciClassify[i].children);
  369. delete (datas.user.ciClassify[i].classes);
  370. delete (datas.user.ciClassify[i].expanded);
  371. delete (datas.user.ciClassify[i].parent_uid);
  372. delete (datas.user.ciClassify[i].uid);
  373. }
  374. console.log(datas);
  375. // angular.forEach($scope.getbranchs, function (it) {
  376. // menu.push({ "id": it.id });
  377. // })
  378. // var branch = { 'menu': menu };
  379. // angular.extend(branch, { 'id': $scope.role.id, 'role': $scope.role.role, 'rolecode': $scope.role.rolecode, 'roletype': $scope.role.roletype, 'dashboard': $scope.role.dashboard })
  380. // var modelData = {role: branch};
  381. api_user_data.addData('user', datas).then(function (response) {
  382. if (response && response.status == 200) {
  383. $scope.my_tree_handler($scope.users, $scope.userIndex);
  384. SweetAlert.swal({
  385. title: "提交成功!",
  386. type: "success",
  387. confirmButtonColor: "#007AFF"
  388. }, function () {
  389. // $rootScope.isMask = false;
  390. // $scope.userData();
  391. });
  392. } else {
  393. SweetAlert.swal({
  394. title: "系统错误",
  395. text: "系统错误,请稍后重试!",
  396. type: "error",
  397. confirmButtonColor: "#DD6B55"
  398. }, function () {
  399. // $rootScope.isMask = false;
  400. });
  401. }
  402. })
  403. } else {
  404. SweetAlert.swal({
  405. title: "操作异常",
  406. text: "请先选择人员,再进行分类权限操作!",
  407. type: "error",
  408. confirmButtonColor: "#DD6B55"
  409. }, function () {
  410. // $rootScope.isMask = false;
  411. });
  412. }
  413. // $state.go('app.system.form',{formKey:'system_add_menu', service:'api_configure_data', model : JSON.stringify(modelData)});
  414. }
  415. //新增角色
  416. // $scope.addData = function() {
  417. // $state.go('app.system.form', { formKey: 'system_add_menu', service: 'api_configure_data' });
  418. // }
  419. //change menu
  420. // $scope.choiceMenu = [];
  421. // $scope.showHandler = function(branch) {
  422. // $scope.choiceMenu = branch;
  423. // }
  424. // $scope.changeMenu = function() {
  425. // // if ($scope.choiceMenu && $scope.choiceMenu != null) {
  426. // // }
  427. // api_configure_data.fetchDataById('menu', $scope.choiceMenu.id).then(function(response) {
  428. // if (response.status == 200) {
  429. // if (response.data.link != null) {
  430. // response.data.type = "link";
  431. // } else if (response.data.service) {
  432. // response.data.type = "service";
  433. // } else if (response.data.event) {
  434. // response.data.type = "event";
  435. // }
  436. // response.data['menu'] = { parent: response.data.parent };
  437. // var modelData = { model: response.data }
  438. // $state.go('app.system.form', { formKey: 'system_add_menu', service: 'api_configure_data', model: JSON.stringify(modelData) });
  439. // }
  440. // })
  441. // }
  442. //remove menu
  443. $scope.removeData = function () {
  444. var modalInstance = $modal.open({
  445. templateUrl: 'assets/views/delete.html',
  446. controller: function ($scope, scope, $modalInstance) {
  447. $scope.rmvList = [];
  448. angular.forEach(scope.getbranchs, function (item) {
  449. $scope.rmvList.push(item.id);
  450. })
  451. $scope.ok = function () {
  452. $modalInstance.close($scope.rmvList);
  453. };
  454. $scope.cancel = function () {
  455. $modalInstance.dismiss('cancel');
  456. };
  457. },
  458. size: 'sm',
  459. resolve: {
  460. scope: function () {
  461. return $scope;
  462. }
  463. }
  464. });
  465. modalInstance.result.then(function (selectedItem) {
  466. if (selectedItem) {
  467. if (selectedItem.length > 0) {
  468. api_configure_data.rmvData('menu', selectedItem).then(function (response) {
  469. if (response.data) {
  470. SweetAlert.swal({
  471. title: "删除成功!",
  472. type: "success",
  473. confirmButtonColor: "#007AFF"
  474. }, function () {
  475. if (loginUser.id == 1) {
  476. $scope.try_async_powerloadadmin();
  477. } else {
  478. $scope.try_async_powerload();
  479. }
  480. });
  481. } else {
  482. SweetAlert.swal({
  483. title: "操作异常!",
  484. text: "系统异常,请稍后重试,或者联系管理员!",
  485. type: "error"
  486. });
  487. }
  488. })
  489. }
  490. }
  491. })
  492. }
  493. //add role
  494. $scope.addRole = function () {
  495. var modalInstance = $modal.open({
  496. templateUrl: 'assets/views/system/tpl/addpower.html',
  497. controller: function ($scope, scope, $modalInstance, api_user_data) {
  498. $scope.roledetail = [{ 'id': 1, 'name': '事件流程' }, { 'id': 2, 'name': '问题流程' }, { 'id': 3, 'name': '变更流程' }, { 'id': 4, 'name': '发布流程' }, { 'id': 5, 'name': '知识库模块' }, { 'id': 6, 'name': '资产模块' }, { 'id': 7, 'name': '系统管理模块' }]
  499. $scope.cancel = function () {
  500. $modalInstance.dismiss('cancel');
  501. };
  502. $scope.ok = function (role) {
  503. if (role.role) {
  504. var roledisable = false;
  505. for (var i = 0; i < scope.my_data.length; i++) {
  506. if (scope.my_data[i].role == role.role) {
  507. roledisable = true;
  508. break;
  509. }
  510. }
  511. if (!roledisable) {
  512. angular.extend(role, { 'roletype': '0' });
  513. if (role.model) {
  514. role.model = role.model.name;
  515. }
  516. var fildata = { loginUser: loginUser, role };
  517. $modalInstance.close(fildata);
  518. } else {
  519. SweetAlert.swal({
  520. title: "新增失败!",
  521. text: "该角色已存在",
  522. type: "error"
  523. })
  524. }
  525. } else {
  526. SweetAlert.swal({
  527. title: "新增失败!",
  528. text: "请填写角色名",
  529. type: "error"
  530. })
  531. }
  532. }
  533. },
  534. resolve: {
  535. scope: function () {
  536. return $scope;
  537. }
  538. }
  539. });
  540. modalInstance.result.then(function (selectedItem) {
  541. if (selectedItem) {
  542. api_user_data.addData('role', selectedItem).then(function (response) {
  543. if (response) {
  544. if (response.status == 200) {
  545. SweetAlert.swal({
  546. title: "新增成功!",
  547. type: "success"
  548. }, function () {
  549. $scope.try_async_load();
  550. })
  551. } else {
  552. SweetAlert.swal({
  553. title: "新增失败!",
  554. type: "error"
  555. })
  556. }
  557. // $modalInstance.close();
  558. }
  559. })
  560. }
  561. })
  562. }
  563. // $scope.addRole = function(role) {
  564. // // $scope.roledetail = [{ 'id': 1, 'name': '事件流程' }, { 'id': 2, 'name': '问题流程' }, { 'id': 3, 'name': '变更流程' }]
  565. // angular.extend(role, { 'roletype': '0' });
  566. // if (role.model) {
  567. // role.model = role.model.name;
  568. // }
  569. // var fildata = { loginUser: loginUser, role };
  570. // // var fildata = { loginUser: loginUser, 'role': { 'id': $scope.role.id, 'role': $scope.role.role, 'roletype': $scope.role.roletype, 'model': model, 'remark': $scope.role.remark } };
  571. // api_user_data.addData('role', fildata).then(function(response) {
  572. // if (response) {
  573. // if (response.status == 200) {
  574. // SweetAlert.swal({
  575. // title: "新增成功!",
  576. // type: "success"
  577. // }, function() {
  578. // $scope.try_async_load();
  579. // // $scope.refreshData('expand-right', defaultFilterData);
  580. // })
  581. // } else {
  582. // SweetAlert.swal({
  583. // title: "新增失败!",
  584. // type: "error"
  585. // })
  586. // }
  587. // // $modalInstance.close();
  588. // }
  589. // })
  590. // }
  591. //角色详情
  592. $scope.roledetail = [{ 'id': 1, 'name': '事件流程' }, { 'id': 2, 'name': '问题流程' }, { 'id': 3, 'name': '变更流程' }]
  593. //change role
  594. $scope.changerole = function (role) {
  595. var model = "";
  596. if ($scope.role.model) {
  597. model = $scope.role.model.name
  598. }
  599. var fildata = { loginUser: loginUser, 'role': { 'id': $scope.role.id, 'role': $scope.role.role, 'roletype': $scope.role.roletype, 'model': model, 'remark': $scope.role.remark } };
  600. api_user_data.addData('role', fildata).then(function (response) {
  601. if (response) {
  602. if (response.status == 200) {
  603. SweetAlert.swal({
  604. title: "修改成功!",
  605. type: "success"
  606. }, function () {
  607. $scope.try_async_load();
  608. // $scope.refreshData('expand-right', defaultFilterData);
  609. })
  610. } else {
  611. SweetAlert.swal({
  612. title: "修改失败!",
  613. type: "error"
  614. })
  615. }
  616. // $modalInstance.close();
  617. }
  618. })
  619. }
  620. // })
  621. // }
  622. //change role
  623. $scope.changeRole = function () {
  624. var modalInstance = $modal.open({
  625. templateUrl: 'assets/views/system/tpl/addpower.html',
  626. controller: function ($scope, scope, $modalInstance, api_user_data) {
  627. $scope.role = scope.role;
  628. $scope.cancel = function () {
  629. $modalInstance.dismiss('cancel');
  630. };
  631. $scope.ok = function (item) {
  632. var fildata = { loginUser: loginUser, 'role': { 'id': item.id, 'role': item.role, 'roletype': item.roletype } };
  633. $modalInstance.close(fildata);
  634. }
  635. },
  636. resolve: {
  637. scope: function () {
  638. return $scope;
  639. }
  640. }
  641. });
  642. modalInstance.result.then(function (selectedItem) {
  643. if (selectedItem) {
  644. api_user_data.addData('role', selectedItem).then(function (response) {
  645. if (response) {
  646. if (response.status == 200) {
  647. SweetAlert.swal({
  648. title: "修改成功!",
  649. type: "success"
  650. }, function () {
  651. $scope.try_async_load();
  652. // $scope.refreshData('expand-right', defaultFilterData);
  653. })
  654. } else {
  655. SweetAlert.swal({
  656. title: "修改失败!",
  657. type: "error"
  658. })
  659. }
  660. // $modalInstance.close();
  661. }
  662. })
  663. }
  664. })
  665. }
  666. //remove role
  667. $scope.removeRole = function () {
  668. if ($scope.role && $scope.role.roletype == 0) {
  669. var modalInstance = $modal.open({
  670. templateUrl: 'assets/views/delete.html',
  671. controller: function ($scope, scope, $modalInstance) {
  672. var rmvList = [];
  673. // angular.forEach(scope.getbranchs, function(item) {
  674. // $scope.rmvList.push(item.id);
  675. // })
  676. rmvList.push(scope.role.id);
  677. $scope.ok = function () {
  678. $modalInstance.close(rmvList);
  679. };
  680. $scope.cancel = function () {
  681. $modalInstance.dismiss('cancel');
  682. };
  683. $scope.title = '角色删除';
  684. $scope.connect = '是否删除该角色'
  685. },
  686. size: 'sm',
  687. resolve: {
  688. scope: function () {
  689. return $scope;
  690. }
  691. }
  692. });
  693. modalInstance.result.then(function (selectedItem) {
  694. if (selectedItem) {
  695. if (selectedItem.length > 0) {
  696. api_user_data.rmvData('role', selectedItem).then(function (response) {
  697. if (response.data) {
  698. SweetAlert.swal({
  699. title: "删除成功!",
  700. type: "success",
  701. confirmButtonColor: "#007AFF"
  702. }, function () {
  703. $scope.try_async_load();
  704. });
  705. } else {
  706. SweetAlert.swal({
  707. title: "操作异常!",
  708. text: "系统异常,请稍后重试,或者联系管理员!",
  709. type: "error"
  710. });
  711. }
  712. })
  713. }
  714. }
  715. })
  716. } else {
  717. SweetAlert.swal({
  718. title: "操作错误!",
  719. text: "该角色不能删除!",
  720. type: "error"
  721. });
  722. }
  723. }
  724. //仪表盘
  725. //查看仪表盘权限
  726. $scope.doing_asyncdash = true;
  727. $scope.dashboard_tree = [];
  728. // $scope.try_async_dashboard = function () {
  729. // api_user_data.fetchDataList("dashboard", { "idx": 0, "sum": 1000 }).then(function (response) {
  730. // if (response.status == 200) {
  731. // var data = response.list;
  732. // var objects = [];
  733. // for (var i = 0; i < data.length; i++) {
  734. // var object = {};
  735. // object.id = data[i].id;
  736. // object.label = data[i].name;
  737. // objects.push(object);
  738. // }
  739. // $scope.dashboard_tree = objects;
  740. // $scope.dashboard_data = angular.copy($scope.dashboard_tree);
  741. // if ($scope.dashboard_data.length > 0) {
  742. // $scope.doing_asyncdash = false;
  743. // }
  744. // } else {
  745. // SweetAlert.swal({
  746. // title: "系统错误!",
  747. // text: "请刷新重试!",
  748. // type: "error"
  749. // });
  750. // }
  751. // });
  752. // }
  753. // $scope.try_async_dashboard();
  754. $scope.formlist = {};
  755. $scope.formdashboard = function (branchData) {
  756. // $scope.formlist = {};
  757. $scope.formlist = branchData;
  758. }
  759. //修改仪表盘权限
  760. // var dashboard = [];
  761. $scope.changeDashboard = function () {
  762. var firldata = {};
  763. var dashboard = [];
  764. $rootScope.isMask = true;
  765. angular.forEach($scope.formlist, function (item) {
  766. dashboard.push({ 'id': item.id, 'name': item.label });
  767. })
  768. firldata = { 'dashboard': dashboard, 'id': $scope.role.id, 'role': $scope.role.role, 'rolecode': $scope.role.rolecode, 'roletype': $scope.role.roletype, 'menu': $scope.role.menu }
  769. api_user_data.addData('role', { 'role': firldata }).then(function (response) {
  770. if (response && response.status == 200) {
  771. $scope.try_async_load();
  772. SweetAlert.swal({
  773. title: "提交成功!",
  774. type: "success",
  775. confirmButtonColor: "#007AFF"
  776. }, function () {
  777. $rootScope.isMask = false;
  778. // $scope.formlist = {}
  779. });
  780. } else {
  781. SweetAlert.swal({
  782. title: "系统错误",
  783. text: "系统错误,请稍后重试!",
  784. type: "error",
  785. confirmButtonColor: "#DD6B55"
  786. }, function () {
  787. $rootScope.isMask = false;
  788. });
  789. }
  790. })
  791. }
  792. }])