qxgl_wt.js 32 KB

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