import { cacheFor } from '@/request/api/index';
import { type Flow, fromFlowData } from '@/request/model';
import Router from '@/router';
import HTTP from '../alova';
export function copyrightMethod() {
return HTTP.Post(`/fdhb-tablet/warrantManage/getPageSets`, void 0, {
cacheFor, name: `variate:copyright`,
params: { k: 'copyright' },
meta: { ignoreException: true },
transform(data: any, headers) {
if ( !data ) { throw { message: `无效的证书` }; }
return [ data?.partner, data?.technicalSupporter ].filter(Boolean).join('
');
},
});
}
export function processMethod() {
const path = unref(Router.currentRoute).path;
return HTTP.Post(`/fdhb-tablet/warrantManage/getPageSets`, {}, {
cacheFor, name: `variate:process`,
params: { k: 'process', p: path },
transform(data) {
const options = data.tabletProcessModules ?? [];
const ref = fromFlowData(options);
const flow = ref.get(path);
if ( !flow ) throw { message: `[路由] 配置异常无法解析正确路径,请联系管理员 (${ data?.tabletProcessModules?.join(' -> ') }})` };
return flow.route;
},
});
}
export function processMethod2() {
const path = unref(Router.currentRoute).path;
return HTTP.Post(`/fdhb-tablet/warrantManage/getPageSets`, {}, {
cacheFor, name: `variate:process`,
params: { k: 'process', p: path },
transform(data) {
const options = data.tabletProcessModules ?? [];
const ref = fromFlowData(options);
const flow = ref.get(path);
if ( !flow ) throw { message: `[路由] 配置异常无法解析正确路径,请联系管理员 (${ data?.tabletProcessModules?.join(' -> ') }})` };
return flow;
},
});
}
export function processMethod3() {
const path = unref(Router.currentRoute).path;
return HTTP.Post<{ current: Flow; prev: Flow; next: Flow }, { tabletProcessModules?: string[]; }>(`/fdhb-tablet/warrantManage/getPageSets`, {}, {
cacheFor, name: `variate:process`,
params: { k: 'process', p: path },
transform(data) {
const options = data.tabletProcessModules ?? [];
const ref = fromFlowData(options);
const [key, current] = [...ref.entries()].find(([,flow]) => flow.route === path) || [];
const prev = [...ref.values()].find(flow => flow.route === key);
const next = ref.get(path);
if ( !next ) throw { message: `[路由] 配置异常无法解析正确路径,请联系管理员 (${ data?.tabletProcessModules?.join(' -> ') }})` };
return { current, prev, next } as any;
}
})
}