manage.api.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import { unref } from 'vue';
  2. import { defHttp } from '/@/utils/http/axios';
  3. import { useMessage } from '/@/hooks/web/useMessage';
  4. const { createConfirm } = useMessage();
  5. export enum Api {
  6. list = '/sys/message/sysMessage/list',
  7. delete = '/sys/message/sysMessage/delete',
  8. deleteBatch = '/sys/message/sysMessage/deleteBatch',
  9. exportXls = 'sys/message/sysMessage/exportXls',
  10. importXls = 'sys/message/sysMessage/importExcel',
  11. save = '/sys/message/sysMessage/add',
  12. edit = '/sys/message/sysMessage/edit',
  13. }
  14. export const list = (params) => defHttp.get({ url: Api.list, params });
  15. /**
  16. * 批量删除
  17. * @param params
  18. * @param confirm
  19. */
  20. export const deleteBatch = (params, confirm = false) => {
  21. return new Promise((resolve, reject) => {
  22. const doDelete = () => {
  23. resolve(defHttp.delete({ url: Api.deleteBatch, params }, { joinParamsToUrl: true }));
  24. };
  25. if (confirm) {
  26. createConfirm({
  27. iconType: 'warning',
  28. title: '删除',
  29. content: '确定要删除吗?',
  30. onOk: () => doDelete(),
  31. onCancel: () => reject(),
  32. });
  33. } else {
  34. doDelete();
  35. }
  36. });
  37. };
  38. /**
  39. * 保存或者更改消息模板
  40. */
  41. export const saveOrUpdate = (params, isUpdate) => {
  42. if (unref(isUpdate)) {
  43. return defHttp.put({ url: Api.edit, params });
  44. } else {
  45. return defHttp.post({ url: Api.save, params });
  46. }
  47. };