123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- import {
- axios,
- caseInfo,
- caseSceneList,
- getCasePsw,
- repCaseScenes,
- setCasePsw,
- syncInfo,
- updateCaseFile,
- caseApiList,
- saveApiOrUpdate,
- caseApiDel,
- caseApiUpdateSort,
- caseInquestInfo,
- caseInquestOpt,
- caseInquestExport,
- caseExtractDetail,
- caseExtractDetailOpt,
- caseExtractDetailExport,
- copyExample,
- } from "@/request";
- import { ModelScene, QuoteScene, Scene, SceneType } from "./scene";
- import { CaseFile } from "./caseFile";
- export type Case = {
- caseId: number;
- caseTitle: string;
- createTime: string;
- name: string;
- tbStatus: string;
- userName: number;
- };
- export type CaseImg = {
- id: number;
- caseId: number;
- imgInfo: string | null;
- imgUrl: string | null;
- status: number | null;
- sort: number | null;
- };
- export const setCaseSharePWD = (params: { caseId: number; randCode: string }) =>
- axios.post(setCasePsw, params);
- export const getCaseSharePWD = async (params: { caseId: number }) =>
- (await axios.get<string>(getCasePsw, { params })).data;
- export const getCaseInfo = async (caseId: number) =>
- (await axios.get<Case>(caseInfo, { params: { caseId } })).data;
- export const copyCase = (caseId: number) => axios.post(copyExample, { caseId });
- export const updateCaseInfo = async (caseFile: CaseFile) =>
- await axios.post(updateCaseFile, {
- filesId: caseFile.filesId,
- filesTitle: caseFile.filesTitle,
- });
- export const getCaseSceneList = async (caseId: number): Promise<Scene[]> => {
- return (await axios.get(caseSceneList, { params: { caseId } })).data;
- };
- export const getSyncSceneInfo = async (caseId: number) => {
- return (await axios.post<string>(syncInfo, { caseId })).data;
- };
- export const getSceneKey = (scene: Scene) =>
- scene.type === SceneType.SWMX
- ? (scene as ModelScene).modelId
- : (scene as QuoteScene).num;
- export type CaseScenes = { type: SceneType; numList: (string | number)[] }[];
- export const getCaseScenes = (scenes: Scene[]) => {
- const typeIdents = [
- { type: SceneType.SWKJ, numList: [] },
- { type: SceneType.SWKK, numList: [] },
- { type: SceneType.SWMX, numList: [] },
- { type: SceneType.SWSS, numList: [] },
- { type: SceneType.SWSSMX, numList: [] },
- { type: SceneType.SWYDSS, numList: [] },
- { type: SceneType.SWYDMX, numList: [] },
- ] as CaseScenes;
- for (const scene of scenes) {
- const typeIdent = typeIdents.find((ident) => ident.type === scene.type)!;
- typeIdent.numList.push(getSceneKey(scene));
- }
- return typeIdents;
- };
- export const replaceCaseScenes = (caseId: number, caseScenes: CaseScenes) =>
- axios.post(repCaseScenes, { sceneNumParam: caseScenes, caseId });
- export const caseImgList = (caseId: number, orderBy: string | null) =>
- axios.post(caseApiList, { orderBy: orderBy || "", caseId });
- export const saveOrUpdate = (params: CaseImg) =>
- axios.post(saveApiOrUpdate, { ...params });
- export const caseDel = (id: number) => axios.post(caseApiDel, { id });
- export const caseUpdateSort = (list: [CaseImg]) =>
- axios.post(caseApiUpdateSort, { paramList: list });
- export const getCaseInquestInfo = (caseId: number) =>
- axios.get(caseInquestInfo, { params: { caseId } });
- export const saveCaseInquestInfo = (caseId: number, data) =>
- axios.post(caseInquestOpt, { caseId, ...data });
- export const exportCaseInquestInfo = (caseId: number) =>
- axios.get(caseInquestExport, {
- params: { caseId, ingoreRes: true },
- responseType: "blob",
- });
- export const getCaseDetailInfo = (caseId: number) =>
- axios.get(caseExtractDetail, { params: { caseId } });
- export const saveCaseDetailInfo = (caseId: number, data) =>
- axios.post(caseExtractDetailOpt, { caseId, ...data });
- export const exportCaseDetailInfo = (caseId: number) =>
- axios.get(caseExtractDetailExport, {
- params: { caseId, ingoreRes: true },
- responseType: "blob",
- });
|