feat(M08-D): 补加盟申请与跟进运营
This commit is contained in:
@@ -9,6 +9,10 @@ import type {
|
||||
CleaningTaskMember,
|
||||
DecorationComponent,
|
||||
DecorationVersion,
|
||||
FranchiseApplication,
|
||||
FranchiseApplicationDetail,
|
||||
FranchiseFollowUpType,
|
||||
FranchiseStatus,
|
||||
DeviceTopology,
|
||||
DeviceType,
|
||||
BusinessStatistics,
|
||||
@@ -499,6 +503,35 @@ export function updateAdvertisement(
|
||||
);
|
||||
}
|
||||
|
||||
export function listFranchiseApplications(session: ApiSession, input: {
|
||||
page: number; pageSize: number; status?: FranchiseStatus; assigneeUserId?: string; search?: string;
|
||||
}) {
|
||||
const params = new URLSearchParams({ page: String(input.page), pageSize: String(input.pageSize) });
|
||||
if (input.status) params.set('status', input.status);
|
||||
if (input.assigneeUserId) params.set('assigneeUserId', input.assigneeUserId);
|
||||
if (input.search) params.set('search', input.search);
|
||||
return request<PageResult<FranchiseApplication>>(session, `/franchise-applications?${params}`);
|
||||
}
|
||||
|
||||
export function getFranchiseApplication(session: ApiSession, applicationId: string) {
|
||||
return request<FranchiseApplicationDetail>(session, `/franchise-applications/${encodeURIComponent(applicationId)}`);
|
||||
}
|
||||
|
||||
export function assignFranchiseApplication(session: ApiSession, applicationId: string, assigneeUserId: string | null) {
|
||||
return request<{ applicationId: string; assigneeUserId: string | null }>(session,
|
||||
`/franchise-applications/${encodeURIComponent(applicationId)}/assignee`,
|
||||
{ method: 'PATCH', body: JSON.stringify({ assigneeUserId }) });
|
||||
}
|
||||
|
||||
export function addFranchiseFollowUp(session: ApiSession, applicationId: string, input: {
|
||||
followUpType: Exclude<FranchiseFollowUpType, 'ASSIGNMENT' | 'STATUS'>;
|
||||
note: string; nextFollowUpAt: string | null; status?: FranchiseStatus;
|
||||
}) {
|
||||
return request<{ applicationId: string; followUpId: string; status: FranchiseStatus }>(session,
|
||||
`/franchise-applications/${encodeURIComponent(applicationId)}/follow-ups`,
|
||||
{ method: 'POST', body: JSON.stringify(input) });
|
||||
}
|
||||
|
||||
export function createStaffUser(
|
||||
session: ApiSession,
|
||||
input: { nickname: string; phone: string; note?: string; roles: StaffRole[]; storeIds: string[] }
|
||||
|
||||
Reference in New Issue
Block a user