FEAT => 本次更新项目为:重构计划相关的 API 接口,更新计划的接口路径并移除不再使用的函数和类型定义,以简化代码结构并提升可维护性。同时,调整新建计划的逻辑以适应新的接口。

This commit is contained in:
超级老白兔
2025-08-11 12:18:22 +08:00
parent bea245ced9
commit d8effe2dcb
4 changed files with 8 additions and 44 deletions

View File

@@ -10,44 +10,11 @@ export function createPlan(data: any) {
}
// 更新计划
export function updatePlan(planId: string, data: any) {
return request(`/v1/scenarios/plans/${planId}`, data, "PUT");
export function updatePlan(data: any) {
return request("/v1/plan/update", data, "PUT");
}
// 获取计划详情
export function getPlanDetail(planId: string) {
return request(`/v1/plan/detail?planId=${planId}`, undefined, "GET");
}
// PlanDetail 类型定义(可根据实际接口返回结构补充字段)
export interface PlanDetail {
name: string;
scenario: number;
posters: any[];
device: string[];
remarkType: string;
greeting: string;
addInterval: number;
startTime: string;
endTime: string;
enabled: boolean;
sceneId: string | number;
remarkFormat: string;
addFriendInterval: number;
// 其它字段可扩展
[key: string]: any;
}
// 兼容旧代码的接口命名
export function getPlanScenes() {
return getScenarioTypes();
}
export function createScenarioPlan(data: any) {
return createPlan(data);
}
export function fetchPlanDetail(planId: string) {
return getPlanDetail(planId);
}
export function updateScenarioPlan(planId: string, data: any) {
return updatePlan(planId, data);
}

View File

@@ -127,7 +127,6 @@ export default function NewPlan() {
// 处理保存
const handleSave = async () => {
try {
let result;
if (isEdit && planId) {
// 编辑:拼接后端需要的完整参数
const editData = {
@@ -138,11 +137,11 @@ export default function NewPlan() {
// 兼容后端需要的字段
// 你可以根据实际需要补充其它字段
};
result = await updatePlan(planId, editData);
await updatePlan(editData);
} else {
// 新建
formData.sceneId = Number(formData.scenario);
result = await createPlan(formData);
await createPlan(formData);
}
message.success(isEdit ? "计划已更新" : "获客计划已创建");
const sceneItem = sceneList.find(v => formData.scenario === v.id);

View File

@@ -1,6 +1,3 @@
.pageBg {
}
.title {
font-size: 18px;
font-weight: bold;
@@ -25,7 +22,6 @@
}
.taskCard {
background: #fff;
border-radius: 10px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
margin-bottom: 16px;
@@ -230,7 +226,6 @@
}
.detailBg {
background: #f8f6f3;
padding: 12px;
display: flex;
flex-direction: column;

View File

@@ -353,7 +353,10 @@ const NewMomentsSync: React.FC = () => {
footer={renderFooter()}
>
<div className={style.formBg}>
<StepIndicator currentStep={currentStep + 1} steps={steps} />
<div style={{ marginBottom: "15px" }}>
<StepIndicator currentStep={currentStep + 1} steps={steps} />
</div>
{loading ? (
<div className={style.formLoading}>
<Spin />