Files
lanecarford_front/src/api/workshop.ts

175 lines
4.9 KiB
TypeScript
Raw Normal View History

2025-10-23 15:11:24 +08:00
// import request from '@/utils/request'
// 测试 模拟请求
2025-10-23 15:13:58 +08:00
import { useOverallStore } from '@/stores'
2025-10-23 15:11:24 +08:00
const request = (config: any) => {
return new Promise(res => {
2025-10-23 15:13:58 +08:00
if (!config.loading) useOverallStore().setLoading(true)
2025-10-23 15:11:24 +08:00
setTimeout(() => {
res({})
2025-10-23 15:13:58 +08:00
if (!config.loading) useOverallStore().setLoading(false)
2025-10-23 15:11:24 +08:00
}, 1000)
})
}
2025-10-09 09:29:36 +08:00
//创建用户
export function userCreate(params: Object) {
2025-10-23 15:11:24 +08:00
return request({
url: '/api/user/create',
method: 'get',
params
})
2025-10-09 09:29:36 +08:00
}
//记录用户选择的信息
export function userSave(params: Object) {
2025-10-23 15:11:24 +08:00
return request({
url: '/api/user/save',
method: 'get',
params,
meta: {
// responseAll: true // 返回所有的信息包括状态码和message和data
}
} as any)
2025-10-09 09:29:36 +08:00
}
//获取题目
export function getQueryPage(data: Object) {
2025-10-23 15:11:24 +08:00
return request({
url: '/api/outfits/queryPage',
method: 'post',
data,
// repeatRequest: true // 配置为true则可以同一时间多次调用
} as any)
2025-10-09 09:29:36 +08:00
}
//查报告
export function getCalculateReport() {
2025-10-23 15:11:24 +08:00
return request({
url: '/api/outfits/calculateReport',
method: 'get',
})
}
/**
* 穿
* @param data 穿
* @param data.customerId ID
* @param data.visitRecordId id
* @param data.styleId id
* @param data.modelPhotoId id
* @param data.customerPhotoId id
* @param data.prompt
* @param data.originalTryOnId 穿id
* @param data.isRegenerated 0-1-
*/
export function generateTryOnEffect(data: Object) {
return request({
url: '/api/try-on-effects/generate',
method: 'post',
data,
})
}
/** -AI
* @param data
* @param data.customerId ID
* @param data.visitRecordId id
* @param data.file
*/
export function uploadCustomerPhoto(data: FormData) {
return request({
url: '/api/customer-photos/upload',
method: 'post',
data,
})
}
/**
*
* @param tryOnId 穿id
*/
export function setTryOnEffectFavorite(tryOnId: string | number) {
if (!tryOnId) return Promise.reject('试穿效果id不能为空');
return request({
url: `/api/try-on-effects/set-favorite/${tryOnId}`,
method: 'post',
})
}
/**
*
* @param tryOnId 穿id
*/
export function cancelTryOnEffectFavorite(tryOnId: string | number) {
if (!tryOnId) return Promise.reject('试穿效果id不能为空');
return request({
url: `/api/try-on-effects/cancel-favorite/${tryOnId}`,
method: 'post',
})
}
/** -library
* @param customerId id
*/
export function getCustomerPhotos(customerId: string | number) {
return new Promise(resolve => {
setTimeout(() => {
resolve([{ visitRecordId: 1 }, { visitRecordId: 2 }, { visitRecordId: 3 }])
}, 1000)
})
if (!customerId) return Promise.reject('客户id不能为空');
return request({
url: `/api/visit-records/customer/${customerId}`,
method: 'get',
})
}
/** -library
* @param visitRecordId id
*/
export function deleteCustomerPhoto(visitRecordId: string | number) {
if (!visitRecordId) return Promise.reject('进店记录id不能为空');
return request({
url: `/api/visit-records/${visitRecordId}`,
method: 'delete',
loading: true,
})
}
/**
* @param visitRecordId id
*/
export function getTryOnEffectFavoriteList(visitRecordId: string | number) {
return new Promise(resolve => {
setTimeout(() => {
resolve([
{ tryOnId: 1, tryOnUrl: 'http://118.31.39.42:3000/falls/1.png', styleUrl: 'http://118.31.39.42:3000/falls/1.png' },
{ tryOnId: 2, tryOnUrl: 'http://118.31.39.42:3000/falls/2.png', styleUrl: 'http://118.31.39.42:3000/falls/2.png' },
{ tryOnId: 3, tryOnUrl: 'http://118.31.39.42:3000/falls/3.png', styleUrl: 'http://118.31.39.42:3000/falls/3.png' },
{ tryOnId: 4, tryOnUrl: 'http://118.31.39.42:3000/falls/4.png', styleUrl: 'http://118.31.39.42:3000/falls/4.png' }
])
}, 1000)
})
if (!visitRecordId) return Promise.reject('进店记录id不能为空');
return request({
url: `/api/try-on-effects/favorites/${visitRecordId}`,
method: 'get',
})
}
/** 穿
* @param styleId id
*/
export function getTryOnEffectStyleList(styleId: string | number) {
return new Promise(resolve => {
setTimeout(() => {
resolve([
{ tryOnId: 1, tryOnUrl: 'http://118.31.39.42:3000/falls/1.png', styleUrl: 'http://118.31.39.42:3000/falls/1.png' },
{ tryOnId: 2, tryOnUrl: 'http://118.31.39.42:3000/falls/2.png', styleUrl: 'http://118.31.39.42:3000/falls/2.png' },
{ tryOnId: 3, tryOnUrl: 'http://118.31.39.42:3000/falls/3.png', styleUrl: 'http://118.31.39.42:3000/falls/3.png' },
{ tryOnId: 4, tryOnUrl: 'http://118.31.39.42:3000/falls/4.png', styleUrl: 'http://118.31.39.42:3000/falls/4.png' }
])
}, 1000)
})
if (!styleId) return Promise.reject('服装id不能为空');
return request({
url: `/api/try-on-effects/style/${styleId}`,
method: 'get',
})
}