setter.js 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. /** EasyWeb spa v3.1.7 date:2020-02-08 License By http://easyweb.vip */
  2. layui.define(function (exports) {
  3. var $ = layui.jquery;
  4. var setter = {
  5. // baseServer: 'http://manage.gxrrj.cn/api/',
  6. // baseServer: 'http://renrenjie.com/agent/',
  7. // baseServer: 'https://rrj.gxnwsoft.com/agent/',
  8. // baseServer: 'http://rrjie.gxnwsoft.com/agent/',
  9. // baseServer: 'http://127.0.3.10/agent/',
  10. baseServer: 'http://rrc.mp.dongerkj.com/agent/',
  11. pageTabs: false,
  12. cacheTab: true,
  13. defaultTheme: 'theme-colorful',
  14. openTabCtxMenu: true,
  15. maxTabNum: 20,
  16. viewPath: 'pages',
  17. viewSuffix: '.html',
  18. reqPutToPost: false,
  19. apiNoCache: true,
  20. tableName: 'agentAdmin',
  21. getCache: function (key) {
  22. var cache = layui.data(setter.tableName);
  23. if (key !== undefined) {
  24. return cache[key]
  25. }
  26. return cache
  27. },
  28. setCache: function(key, data){
  29. layui.data(setter.tableName, {key: key, value: data})
  30. },
  31. putCache: function (key, data) {
  32. var cache = this.getCache(key);
  33. this.setCache(key, $.extend({}, cache, data));
  34. },
  35. removeCache: function (key) {
  36. layui.data(setter.tableName, {key: key, remove: true})
  37. },
  38. clearCache: function (key, data) {
  39. layui.data(setter.tableName, null)
  40. },
  41. getToken: function () {
  42. var cache = layui.data(setter.tableName);
  43. if (cache) {
  44. return cache.token
  45. }
  46. },
  47. removeToken: function () {
  48. layui.data(setter.tableName, {key: 'token', remove: true})
  49. },
  50. putToken: function (token) {
  51. layui.data(setter.tableName, {key: 'token', value: token})
  52. },
  53. getUser: function () {
  54. var cache = layui.data(setter.tableName);
  55. if (cache.loginUser) {
  56. return cache.loginUser
  57. }
  58. },
  59. updateUser: function () {
  60. layui.admin.req('person', (res) => {
  61. if (10000 === res.code) {
  62. this.putUser(res.data)
  63. } else {
  64. layui.notice.msg(res.message, {icon: 2})
  65. }
  66. }, 'GET')
  67. },
  68. updateConfig: function () {
  69. layui.admin.req('config', (res) => {
  70. if (10000 === res.code) {
  71. setter.setCache('config', res.data)
  72. } else {
  73. layui.notice.msg(res.message, {icon: 2})
  74. }
  75. }, 'GET')
  76. },
  77. putUser: function (user) {
  78. layui.data(setter.tableName, {key: 'loginUser', value: user})
  79. },
  80. removeUser: function () {
  81. layui.data(setter.tableName, {key: 'loginUser', remove: true})
  82. },
  83. getUserAuths: function () {
  84. var auths = [];
  85. var permissions = this.getUser().permissions;
  86. for (var i = 0; i < permissions.length; i++) {
  87. auths.push(permissions[i].policy + '<' + permissions[i].url + '>')
  88. }
  89. return auths
  90. },
  91. getAjaxHeaders: function (url) {
  92. var headers = [];
  93. var token = this.getToken();
  94. if (token) {
  95. headers.push({name: 'Authorization', value: token})
  96. }
  97. return headers
  98. },
  99. ajaxSuccessBefore: function (res, url, obj) {
  100. if (typeof (res.errcode) != 'undefined') {
  101. console.log('请求异常', res);
  102. if (res.errcode === 30001) {
  103. setter.removeToken();
  104. layui.notice.msg('用户失效,请重新登录!', {icon: 2, timeout: 1500}, function () {
  105. location.reload()
  106. });
  107. return false
  108. }
  109. layui.notice.msg(res.errmsg, {icon: 2, timeout: 1500});
  110. layer.closeAll('loading');
  111. return false
  112. }
  113. return true
  114. },
  115. routerNotFound: function (r) {
  116. layer.alert('路由' + location.hash + '不存在', {
  117. title: '提示',
  118. skin: 'layui-layer-admin',
  119. btn: [],
  120. offset: '30px',
  121. anim: 6,
  122. shadeClose: true
  123. })
  124. },
  125. lists2tree: function (lists, subtitle = 'children', pid = 0) {
  126. let arr = new Array();
  127. layui.jquery.each(lists, (index, item) => {
  128. if (item && item.parent_id === pid) {
  129. item[subtitle] = this.lists2tree(lists, subtitle, item.id);
  130. arr.push(item)
  131. }
  132. });
  133. return arr
  134. }
  135. };
  136. setter.base_server = setter.baseServer;
  137. exports('setter', setter)
  138. });