175 lines
4.9 KiB
TypeScript
175 lines
4.9 KiB
TypeScript
// import request from '@/utils/request'
|
||
// 测试 模拟请求
|
||
import { useOverallStore } from '@/stores'
|
||
const request = (config: any) => {
|
||
return new Promise(res => {
|
||
if (!config.loading) useOverallStore().setLoading(true)
|
||
setTimeout(() => {
|
||
res({})
|
||
if (!config.loading) useOverallStore().setLoading(false)
|
||
}, 1000)
|
||
})
|
||
}
|
||
//创建用户
|
||
export function userCreate(params: Object) {
|
||
return request({
|
||
url: '/api/user/create',
|
||
method: 'get',
|
||
params
|
||
})
|
||
}
|
||
|
||
//记录用户选择的信息
|
||
export function userSave(params: Object) {
|
||
return request({
|
||
url: '/api/user/save',
|
||
method: 'get',
|
||
params,
|
||
meta: {
|
||
// responseAll: true // 返回所有的信息,包括状态码和message和data
|
||
}
|
||
} as any)
|
||
}
|
||
|
||
//获取题目
|
||
export function getQueryPage(data: Object) {
|
||
return request({
|
||
url: '/api/outfits/queryPage',
|
||
method: 'post',
|
||
data,
|
||
// repeatRequest: true // 配置为true,则可以同一时间多次调用
|
||
} as any)
|
||
}
|
||
|
||
//查报告
|
||
export function getCalculateReport() {
|
||
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',
|
||
})
|
||
}
|