src/api/salesManagement/strategyControl.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,202 @@
// ç­–略管控页面接口
import request from "@/utils/request";
// ========== ä»·æ ¼ç­–略配置 ==========
// åˆ†é¡µæŸ¥è¯¢ä»·æ ¼ç­–略列表
export function getPriceStrategyList(query) {
  return request({
    url: "/sales/priceStrategy/list",
    method: "get",
    params: query,
  });
}
// æŸ¥è¯¢ä»·æ ¼ç­–略详情
export function getPriceStrategyDetail(id) {
  return request({
    url: "/sales/priceStrategy/detail",
    method: "get",
    params: { id },
  });
}
// æ–°å¢žä»·æ ¼ç­–ç•¥
export function addPriceStrategy(data) {
  return request({
    url: "/sales/priceStrategy/add",
    method: "post",
    data: data,
  });
}
// ä¿®æ”¹ä»·æ ¼ç­–ç•¥
export function updatePriceStrategy(data) {
  return request({
    url: "/sales/priceStrategy/update",
    method: "post",
    data: data,
  });
}
// åˆ é™¤ä»·æ ¼ç­–ç•¥
export function deletePriceStrategy(id) {
  return request({
    url: "/sales/priceStrategy/delete",
    method: "delete",
    params: { id },
  });
}
// å¯ç”¨/禁用价格策略
export function togglePriceStrategy(data) {
  return request({
    url: "/sales/priceStrategy/toggle",
    method: "post",
    data: data,
  });
}
// ========== åˆåŒæ‰§è¡Œç›‘控 ==========
// èŽ·å–åˆåŒæ‰§è¡Œç»Ÿè®¡æ•°æ®
export function getContractStats(query) {
  return request({
    url: "/sales/contract/stats",
    method: "get",
    params: query,
  });
}
// åˆ†é¡µæŸ¥è¯¢åˆåŒæ‰§è¡Œåˆ—表
export function getContractExecutionList(query) {
  return request({
    url: "/sales/contract/executionList",
    method: "get",
    params: query,
  });
}
// æŸ¥è¯¢åˆåŒæ‰§è¡Œè¯¦æƒ…
export function getContractExecutionDetail(contractNo) {
  return request({
    url: "/sales/contract/executionDetail",
    method: "get",
    params: { contractNo },
  });
}
// æ›´æ–°åˆåŒæ‰§è¡Œè¿›åº¦
export function updateContractProgress(data) {
  return request({
    url: "/sales/contract/updateProgress",
    method: "post",
    data: data,
  });
}
// ========== åŽ†å²æ¯”ä»·åˆ†æž ==========
// æŸ¥è¯¢åŽ†å²ä»·æ ¼å¯¹æ¯”æ•°æ®
export function getPriceComparisonList(query) {
  return request({
    url: "/sales/priceComparison/list",
    method: "get",
    params: query,
  });
}
// èŽ·å–ä»·æ ¼è¶‹åŠ¿å›¾è¡¨æ•°æ®
export function getPriceTrendChart(query) {
  return request({
    url: "/sales/priceComparison/trendChart",
    method: "get",
    params: query,
  });
}
// å¯¼å‡ºåŽ†å²æ¯”ä»·æ•°æ®
export function exportPriceComparison(query) {
  return request({
    url: "/sales/priceComparison/export",
    method: "get",
    params: query,
    responseType: "blob",
  });
}
// ========== åˆ©æ¶¦åˆ†æž ==========
// èŽ·å–åˆ©æ¶¦ç»Ÿè®¡æ•°æ®
export function getProfitStats(query) {
  return request({
    url: "/sales/profit/stats",
    method: "get",
    params: query,
  });
}
// åˆ†é¡µæŸ¥è¯¢åˆ©æ¶¦åˆ†æžåˆ—表
export function getProfitAnalysisList(query) {
  return request({
    url: "/sales/profit/analysisList",
    method: "get",
    params: query,
  });
}
// èŽ·å–åˆ©æ¶¦è¶‹åŠ¿å›¾è¡¨æ•°æ®
export function getProfitTrendChart(query) {
  return request({
    url: "/sales/profit/trendChart",
    method: "get",
    params: query,
  });
}
// è®¡ç®—毛利率
export function calculateGrossProfit(data) {
  return request({
    url: "/sales/profit/calculate",
    method: "post",
    data: data,
  });
}
// å¯¼å‡ºåˆ©æ¶¦åˆ†æžæŠ¥è¡¨
export function exportProfitAnalysis(query) {
  return request({
    url: "/sales/profit/export",
    method: "get",
    params: query,
    responseType: "blob",
  });
}
// ========== å…¬å…±æŽ¥å£ ==========
// æŸ¥è¯¢å®¢æˆ·åˆ—表(用于下拉选择)
export function getCustomerOptions() {
  return request({
    url: "/basic/customer/options",
    method: "get",
  });
}
// æŸ¥è¯¢äº§å“åˆ—表(用于下拉选择)
export function getProductOptions(query) {
  return request({
    url: "/basic/product/options",
    method: "get",
    params: query,
  });
}
// æŸ¥è¯¢é”€å”®åŒºåŸŸåˆ—表
export function getRegionOptions() {
  return request({
    url: "/basic/region/options",
    method: "get",
  });
}