feat: 完成管理员密码登录修复和项目清理
- 修复BCryptPasswordEncoder密码验证问题 - 实现密码设置提示弹窗功能(仅对无密码用户显示一次) - 优化修改密码逻辑和验证流程 - 更新Welcome页面背景样式 - 清理临时SQL文件和测试代码 - 移动数据库备份文件到database/backups目录 - 删除不必要的MD文档和临时文件
This commit is contained in:
@@ -0,0 +1 @@
|
||||
import{e as i}from"./index-020bfa5d.js";const p={createTask(t){if(!t)throw new Error("参数不能为空");if(!t.firstFrame)throw new Error("首帧图片不能为空");if(!t.prompt||t.prompt.trim()==="")throw new Error("描述文字不能为空");if(!t.aspectRatio)throw new Error("视频比例不能为空");if(!t.duration||t.duration<1||t.duration>60)throw new Error("视频时长必须在1-60秒之间");const e=new FormData;return e.append("firstFrame",t.firstFrame),e.append("prompt",t.prompt.trim()),e.append("aspectRatio",t.aspectRatio),e.append("duration",t.duration.toString()),e.append("hdMode",t.hdMode.toString()),t.lastFrame&&e.append("lastFrame",t.lastFrame),i({url:"/image-to-video/create",method:"POST",data:e,headers:{"Content-Type":"multipart/form-data"}})},getTasks(t=0,e=10){return i({url:"/image-to-video/tasks",method:"GET",params:{page:t,size:e}})},getTaskDetail(t){return i({url:`/image-to-video/tasks/${t}`,method:"GET"})},getTaskStatus(t){return i({url:`/image-to-video/tasks/${t}/status`,method:"GET"})},pollTaskStatus(t,e,n,s){let a=!0,u=0;const l=30,d=async()=>{if(!a||u>=l){u>=l&&s&&s(new Error("任务超时"));return}try{const o=await i({url:`/image-to-video/tasks/${t}/status`,method:"GET"});if(!o||!o.data||!o.data.success){s&&s(new Error("获取任务状态失败")),a=!1;return}const r=o.data.data;if(!r||!r.status){s&&s(new Error("无效的任务数据")),a=!1;return}if(r.status==="COMPLETED"){n&&n(r),a=!1;return}if(r.status==="FAILED"||r.status==="CANCELLED"){console.error("任务失败:",{taskId:t,status:r.status,errorMessage:r.errorMessage,pollCount:u}),s&&s(new Error(r.errorMessage||"任务失败")),a=!1;return}e&&e({status:r.status,progress:r.progress||0,resultUrl:r.resultUrl}),u++,setTimeout(d,12e4)}catch(o){console.error("轮询任务状态失败:",o),s&&s(o),a=!1}};return d(),()=>{a=!1}}};export{p as i};
|
||||
Reference in New Issue
Block a user