import { AxiosRequestData } from "@/data/axios_request";
import cache from "@/utils/cache";

/**
 * 搜索企业的产品（商品管理-分页条件查询）
 * @param {String} entTaxId 企业税号
 * @param {String} productName : 产品名称  模糊查询
 * @param {Number} pageNum :  当前页码  默认为1
 * @param {Number} pageSize : 每页数量  默认为10
 */
function findEntProduct({
  entTaxId,
  productName = "",
  pageNum = 1,
  pageSize = 10,
}) {
  const url = "/sys/product/findPage";
  let token = cache.getToken();
  let mobile = JSON.parse(cache.getLocal("user")).account;
  let args = {
    mobile,
    entTaxId,
    reqChannel: 4,
    pageNum,
    pageSize,
  };
  if (productName) {
    args.productName = productName;
  }
  console.log("搜索企业的产品 参数：");
  console.log(args);
  return new Promise(function(resolve, reject) {
    AxiosRequestData(url, token, args, false, 2).then((val) => {
      console.log("搜索企业的产品 结果：");
      console.log(val);
      if (val.code === 0) {
        resolve(val);
      } else {
        reject(val.msg);
      }
    });
  });
}

/**
 * 根据主键id查询商品详情信息
 * @param {string} productId 产品主键id
 */
function findEntProductById(productId) {
  const url = "/sys/product/findById";
  let token = cache.getToken();
  let args = {
    productId,
  };
  console.log("根据主键id查询商品详情信息 参数：");
  console.log(args);
  return new Promise(function(resolve, reject) {
    AxiosRequestData(url, token, args, false, 2).then((val) => {
      console.log("根据主键id查询商品详情信息 结果：");
      console.log(val);
      if (val.code === 0) {
        resolve(val);
      } else {
        reject(val.msg);
      }
    });
  });
}

const ProductService = {
  findEntProduct,
  findEntProductById,
};

export default ProductService;
