chen.lin
2 天以前 9140aee230de0ef41de9682a9353fbd372e2bcaa
rsf-admin/src/config/MyDataProvider.js
@@ -1,14 +1,17 @@
import request from "../utils/request";
import * as Common from "../utils/common";
// 出库历史单与入库历史单共用 asnOrderLog 接口,仅前端 resource 不同
const getApiResource = (resource) => (resource === "outStockOrderLog" ? "asnOrderLog" : resource);
const MyDataProvider = {
  // *** https://marmelab.com/react-admin/DataProviderWriting.html ***
  // get a list of records based on sort, filter, and pagination
  getList: async (resource, params) => {
    // console.log("getList", resource, params);
    const apiResource = getApiResource(resource);
    const _params = Common.integrateParams(params);
    const res = await request.post(resource + "/page", _params);
    const res = await request.post(apiResource + "/page", _params);
    const { code, msg, data } = res.data;
    if (code === 200) {
      return Promise.resolve({
@@ -21,8 +24,8 @@
  // get a single record by id
  getOne: async (resource, params) => {
    // console.log("getOne", resource, params);
    const res = await request.get(resource + "/" + params.id);
    const apiResource = getApiResource(resource);
    const res = await request.get(apiResource + "/" + params.id);
    const { code, msg, data } = res.data;
    if (code === 200) {
      return Promise.resolve({
@@ -37,8 +40,11 @@
  // get a list of records based on an array of ids
  getMany: async (resource, params) => {
    // console.log("getMany", resource, params);
    const res = await request.post(resource + "/many/" + params.ids);
    if (resource === "user") {
      await new Promise((r) => setTimeout(r, 1000));
    }
    const apiResource = getApiResource(resource);
    const res = await request.post(apiResource + "/many/" + params.ids);
    const { code, msg, data } = res.data;
    if (code === 200) {
      return Promise.resolve({
@@ -60,7 +66,8 @@
  // create a record
  create: async (resource, params) => {
    const res = await request.post(resource + "/save", params?.data);
    const apiResource = getApiResource(resource);
    const res = await request.post(apiResource + "/save", params?.data);
    const { code, msg, data } = res.data;
    if (code === 200) {
      return Promise.resolve({
@@ -74,7 +81,8 @@
  // update a record based on a patch
  update: async (resource, params) => {
    const res = await request.post(resource + "/update", {
    const apiResource = getApiResource(resource);
    const res = await request.post(apiResource + "/update", {
      id: params.id,
      ...params.data,
    });
@@ -89,9 +97,9 @@
  // update a list of records based on an array of ids and a common patch
  updateMany: async (resource, params) => {
    console.log("updateMany", resource, params);
    const apiResource = getApiResource(resource);
    const res = await request.post(
      resource + "/update/many",
      apiResource + "/update/many",
      params.ids.map((id) => ({ id, ...params.data })),
    );
    const { code, msg, data } = res.data;
@@ -105,8 +113,8 @@
  // delete a record by id
  delete: async (resource, params) => {
    console.log("delete", resource, params);
    const res = await request.post(resource + "/remove/" + [params.id]);
    const apiResource = getApiResource(resource);
    const res = await request.post(apiResource + "/remove/" + [params.id]);
    const { code, msg, data } = res.data;
    if (code === 200) {
      return Promise.resolve({
@@ -120,8 +128,8 @@
  // delete a list of records based on an array of ids
  deleteMany: async (resource, params) => {
    console.log("deleteMany", resource, params);
    const res = await request.post(resource + "/remove/" + params?.ids);
    const apiResource = getApiResource(resource);
    const res = await request.post(apiResource + "/remove/" + params?.ids);
    const { code, msg, data } = res.data;
    if (code === 200) {
      return Promise.resolve({
@@ -133,9 +141,10 @@
  // export excel from all data
  export: async (resource, params) => {
    const apiResource = getApiResource(resource);
    const _params = Common.integrateParams(params);
    try {
      const res = await request.post(`${resource}/export`, _params, {
      const res = await request.post(`${apiResource}/export`, _params, {
        responseType: "blob",
      });
      return res;