windPointManage.api.ts 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. import { defHttp } from '/@/utils/http/axios';
  2. import { useMineDepartmentStore } from '/@/store/modules/mine';
  3. enum Api {
  4. getPointList = '/workingface/mineArea/getMineAreaList',
  5. addMineArea = '/workingface/mineArea/addMineArea',
  6. updateMineArea = '/workingface/mineArea/updateMineArea',
  7. deleteMineArea = '/workingface/mineArea/deleteMineArea',
  8. getGoafList = '/workingface/mineArea/getGoafList',
  9. addGoaf = '/workingface/mineArea/addGoaf',
  10. updateGoaf = '/workingface/mineArea/updateGoaf',
  11. deleteGoaf = '/workingface/mineArea/deleteGoaf',
  12. getWindrectList = '/workingface/windrect/getWindrectList',
  13. getGasList = '/workingface/gas/getGasList',
  14. getWindrectRegulation = '/workingface/mineData/getWindrectRegulation',
  15. getMineAreaRelation = '/workingface/mineArea/getMineAreaRelation',
  16. addMineAreaRelation = '/workingface/mineArea/addMineAreaRelation',
  17. deleteMineAreaRelation = '/workingface/mineArea/deleteMineAreaRelation',
  18. /* getModelConfigs = '/province/windpoint/getModelConfigs',
  19. saveModelConfigs = '/province/windpoint/saveModelConfigs', */
  20. }
  21. /** 获取 MineArea 列表 */
  22. export const getPointList = (params?: any) => defHttp.post({ url: Api.getPointList, params }, { joinParamsToUrl: true });
  23. /** 新增或编辑 MineArea(根据是否有 id 自动切换) */
  24. export const savePoint = (params?: any) => {
  25. const url = params?.id ? Api.updateMineArea : Api.addMineArea;
  26. const payload = { ...params };
  27. // 表单 mineCode 为 MineCascader 选中矿井的部门 id,换算为 API 需要的矿编码(fax);
  28. // 表单校验(mineLeafDynamicRules)已保证必选到叶子矿井,故无需再判断 mine?.fax
  29. if (payload.mineCode) {
  30. const mine = useMineDepartmentStore().findDepartById(payload.mineCode);
  31. if (mine) payload.mineCode = mine.fax;
  32. }
  33. // 供风区域:多选 id 数组 → 后端约定的对象数组 [{ id }]
  34. if (payload.goafList) {
  35. payload.goafList = payload.goafList.split(',').map((id: string) => ({ id }));
  36. } else {
  37. payload.goafList = null;
  38. }
  39. return defHttp.post({ url, params: payload });
  40. };
  41. /** 删除 MineArea(含关联关系) */
  42. export const deletePoint = (params?: any) => defHttp.post({ url: Api.deleteMineArea, params }, { joinParamsToUrl: true });
  43. /** 根据部门ID查询该部门下所有煤矿的供风区域(采空区)列表(GoafController.getGoafList) */
  44. export const getGoafList = (params?: any) => defHttp.post({ url: Api.getGoafList, params }, { joinParamsToUrl: true });
  45. /** 新增或编辑供风区域(Goaf,根据是否有 id 自动切换) */
  46. export const saveGoaf = (params?: any) => {
  47. const url = params?.id ? Api.updateGoaf : Api.addGoaf;
  48. const payload = { ...params };
  49. // 表单 mineCode 为 MineCascader 选中矿井的部门 id,换算为 API 需要的矿编码(fax);
  50. // 表单校验(mineLeafDynamicRules)已保证必选到叶子矿井,故无需再判断 mine?.fax
  51. if (payload.mineCode) {
  52. const mine = useMineDepartmentStore().findDepartById(payload.mineCode);
  53. if (mine) payload.mineCode = mine.fax;
  54. }
  55. return defHttp.post({ url, params: payload });
  56. };
  57. /** 删除供风区域(Goaf,ids 必填,逗号分隔) */
  58. export const deleteGoaf = (params?: any) => defHttp.post({ url: Api.deleteGoaf, params }, { joinParamsToUrl: true });
  59. /** 根据矿ID查询下面所有测风装置信息(WindrectController.getWindrectList) */
  60. export const getWindrectList = (params?: any) => defHttp.post({ url: Api.getWindrectList, params }, { joinParamsToUrl: true });
  61. /** 根据矿ID查询下面所有瓦斯装置信息(GasController.getGasList,deptId/mineCode 均可选) */
  62. export const getGasList = (params?: any) => defHttp.post({ url: Api.getGasList, params }, { joinParamsToUrl: true });
  63. /** 查询规程值列表(MineDataController.getWindrectRegulation,无参数) */
  64. export const getWindrectRegulation = (params?: any) => defHttp.get({ url: Api.getWindrectRegulation, params }, { joinParamsToUrl: true });
  65. /** 查询 MineArea 关联关系(返回 { mineAreaList, mineAreaRelationList }) */
  66. export const getMineAreaRelation = (params?: any) => defHttp.post({ url: Api.getMineAreaRelation, params }, { joinParamsToUrl: true });
  67. /** 绑定 MineArea 关联关系(RequestBody:mineCode/parentId/childId) */
  68. export const addMineAreaRelation = (params?: any) => defHttp.post({ url: Api.addMineAreaRelation, params });
  69. /** 删除 MineArea 关联关系(ids 必填,逗号分隔) */
  70. export const deleteMineAreaRelation = (params?: any) => defHttp.post({ url: Api.deleteMineAreaRelation, params }, { joinParamsToUrl: true });
  71. /* ====== 判识模型配置接口(暂注释,待接口就绪后恢复)======
  72. /* 获取判识模型配置
  73. export const getModelConfigs = (params?: any) =>
  74. defHttp.post({ url: Api.getModelConfigs, params }, { joinParamsToUrl: true });
  75. /* 保存判识模型配置
  76. export const saveModelConfigs = (params?: any) =>
  77. defHttp.post({ url: Api.saveModelConfigs, params }, { joinParamsToUrl: true });
  78. */