index.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296
  1. import { request } from '@/sheep/request';
  2. import { isEmpty } from 'lodash';
  3. import { CRUD } from '@/sheep/request/crud';
  4. export default {
  5. // 系统初始化
  6. init: () =>
  7. request({
  8. url: 'admin/index/init',
  9. }),
  10. // 获取验证码
  11. captcha: () =>
  12. request({
  13. url: 'admin/index/captcha',
  14. method: 'GET',
  15. }),
  16. // 登录配置
  17. loginConfig: () =>
  18. request({
  19. url: 'admin/index/loginConfig',
  20. }),
  21. // 清空后端缓存
  22. clearCache: () =>
  23. request({
  24. url: 'admin/index/clearCache',
  25. method: 'POST',
  26. }),
  27. // 账号信息
  28. account: {
  29. // 登录
  30. login: (data) =>
  31. request({
  32. url: 'admin/index/login',
  33. method: 'POST',
  34. data,
  35. options: {
  36. showSuccessMessage: true,
  37. },
  38. }),
  39. // 登出
  40. logout: () =>
  41. request({
  42. url: 'admin/index/logout',
  43. }),
  44. // 个人信息
  45. info: () =>
  46. request({
  47. url: 'admin/index/profile',
  48. }),
  49. // 菜单权限
  50. rules: () =>
  51. request({
  52. url: 'admin/index/rules',
  53. }),
  54. // 更新个人信息
  55. update: (data) =>
  56. request({
  57. url: 'admin/index/update',
  58. method: 'PUT',
  59. data,
  60. options: {
  61. showSuccessMessage: !isEmpty(data),
  62. },
  63. }),
  64. // 当前管理员操作日志
  65. adminLog: (params) =>
  66. request({
  67. url: 'admin/index/adminLog',
  68. method: 'GET',
  69. params,
  70. }),
  71. },
  72. // 权限设置
  73. auth: {
  74. // 管理员
  75. admin: {
  76. ...CRUD('admin/auth/admin'),
  77. },
  78. // 角色管理
  79. role: {
  80. // 角色组
  81. ...CRUD('admin/auth/role'),
  82. select: () =>
  83. request({
  84. url: 'admin/auth/role/select',
  85. method: 'GET',
  86. }),
  87. },
  88. // 菜单权限
  89. access: {
  90. ...CRUD('admin/auth/access'),
  91. list: (params) =>
  92. request({
  93. url: 'admin/auth/access',
  94. method: 'GET',
  95. params,
  96. }),
  97. select: (params) =>
  98. request({
  99. url: 'admin/auth/access/select',
  100. method: 'GET',
  101. params,
  102. }),
  103. },
  104. adminLog: {
  105. ...CRUD('admin/auth/adminLog'),
  106. },
  107. },
  108. // 系统设置
  109. config: {
  110. // 基础配置
  111. basic: {
  112. // 站点配置
  113. site: (data) =>
  114. request({
  115. url: 'admin/config/basic/site',
  116. method: isEmpty(data) ? 'GET' : 'PUT',
  117. data,
  118. options: {
  119. showSuccessMessage: !isEmpty(data),
  120. },
  121. }),
  122. // 登录配置
  123. login: (data) =>
  124. request({
  125. url: 'admin/config/basic/login',
  126. method: isEmpty(data) ? 'GET' : 'PUT',
  127. data,
  128. options: {
  129. showSuccessMessage: !isEmpty(data),
  130. },
  131. }),
  132. // 用户配置
  133. user: (data) =>
  134. request({
  135. url: 'admin/config/basic/user',
  136. method: isEmpty(data) ? 'GET' : 'PUT',
  137. data,
  138. options: {
  139. showSuccessMessage: !isEmpty(data),
  140. },
  141. }),
  142. // 邮件配置
  143. mail: (data) =>
  144. request({
  145. url: 'admin/config/basic/mail',
  146. method: isEmpty(data) ? 'GET' : 'PUT',
  147. data,
  148. options: {
  149. showSuccessMessage: !isEmpty(data),
  150. },
  151. }),
  152. },
  153. // 短信配置
  154. easysms: (data) =>
  155. request({
  156. url: 'admin/config/easysms',
  157. method: isEmpty(data) ? 'GET' : 'PUT',
  158. data,
  159. options: {
  160. showSuccessMessage: !isEmpty(data),
  161. },
  162. }),
  163. },
  164. notification: {
  165. config: (id, type, data) =>
  166. request({
  167. url: `admin/notification/config/${id}${type ? '/' + type : ''}`,
  168. method: isEmpty(data) ? 'GET' : 'PUT',
  169. data,
  170. options: {
  171. showSuccessMessage: !isEmpty(data),
  172. },
  173. }),
  174. getTemplateId: (id, type, params) =>
  175. request({
  176. url: 'admin/notification/config/getTemplateId/' + id + '/' + type,
  177. method: 'GET',
  178. params,
  179. }),
  180. setStatus: (id, type, data) =>
  181. request({
  182. url: 'admin/notification/config/setStatus/' + id + '/' + type,
  183. method: 'PUT',
  184. data,
  185. }),
  186. },
  187. // 文件管理
  188. file: {
  189. // 文件列表
  190. list: (params) =>
  191. request({
  192. url: 'admin/file',
  193. method: 'GET',
  194. params,
  195. }),
  196. // 文件详情
  197. detail: (id) =>
  198. request({
  199. url: `admin/file/${id}`,
  200. method: 'GET',
  201. }),
  202. // 文件上传
  203. upload: (params, data) =>
  204. request({
  205. url: 'admin/file/upload',
  206. method: 'POST',
  207. params,
  208. data,
  209. headers: {
  210. 'Content-Type': 'multipart/form-data',
  211. },
  212. }),
  213. // 删除文件
  214. delete: (id) =>
  215. request({
  216. url: `admin/file/${id}`,
  217. method: 'DELETE',
  218. options: {
  219. showSuccessMessage: true,
  220. },
  221. }),
  222. // 批量删除文件
  223. batchDelete: (ids) =>
  224. request({
  225. url: 'admin/file/batchDelete',
  226. method: 'POST',
  227. data: { ids },
  228. options: {
  229. showSuccessMessage: true,
  230. },
  231. }),
  232. // 移动文件到分组
  233. move: (data) =>
  234. request({
  235. url: 'admin/file/move',
  236. method: 'POST',
  237. data,
  238. options: {
  239. showSuccessMessage: true,
  240. },
  241. }),
  242. // 重命名文件
  243. rename: (id, data) =>
  244. request({
  245. url: `admin/file/rename/${id}`,
  246. method: 'PUT',
  247. data,
  248. options: {
  249. showSuccessMessage: true,
  250. },
  251. }),
  252. // 文件分组管理
  253. group: {
  254. // 分组列表
  255. list: () =>
  256. request({
  257. url: 'admin/file/group',
  258. method: 'GET',
  259. }),
  260. // 添加分组
  261. add: (data) =>
  262. request({
  263. url: 'admin/file/group',
  264. method: 'POST',
  265. data,
  266. options: {
  267. showSuccessMessage: true,
  268. },
  269. }),
  270. // 编辑分组
  271. edit: (id, data) =>
  272. request({
  273. url: `admin/file/group/${id}`,
  274. method: 'PUT',
  275. data,
  276. options: {
  277. showSuccessMessage: true,
  278. },
  279. }),
  280. // 删除分组
  281. delete: (id) =>
  282. request({
  283. url: `admin/file/group/${id}`,
  284. method: 'DELETE',
  285. options: {
  286. showSuccessMessage: true,
  287. },
  288. }),
  289. },
  290. },
  291. };