Merge branch 'dev_vite' into StableVersion
This commit is contained in:
@@ -30,7 +30,7 @@
|
||||
:outputSize="option.size"
|
||||
:outputType="option.outputType"
|
||||
:auto-crop="option.autoCrop"
|
||||
:fixedBox="!isRound"
|
||||
:fixedBox="isRound"
|
||||
:movable="true"
|
||||
:fixed="isRound"
|
||||
:auto-crop-width="option.autoCropWidth"
|
||||
@@ -333,6 +333,7 @@ export default defineComponent({
|
||||
.cut_picture_review_block{
|
||||
width: 100%;
|
||||
height: calc(100% - 6.8rem*1.2);
|
||||
min-height: calc(100% - 6.8rem*1.2);
|
||||
margin: 0 auto;
|
||||
.next_step_button{
|
||||
margin-top: 2rem;
|
||||
|
||||
@@ -276,6 +276,7 @@ import { Modal,message } from "ant-design-vue";
|
||||
import { useI18n } from 'vue-i18n';
|
||||
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
||||
import fullScreenImg from '@/component/HomePage/fullScreenImg.vue'
|
||||
import { debounce } from 'lodash-es'
|
||||
|
||||
export default defineComponent({
|
||||
components:{fullScreenImg},
|
||||
@@ -437,26 +438,26 @@ export default defineComponent({
|
||||
})
|
||||
|
||||
}
|
||||
let setChoose = async () =>{
|
||||
let setChoose = debounce(async()=>{
|
||||
if(userDetail.value.systemList.indexOf(1) == -1){
|
||||
return message.info(t('newScaleImage.jsContent1'))
|
||||
}
|
||||
return message.info(t('newScaleImage.jsContent1'))
|
||||
}
|
||||
|
||||
const targetDate = new Date('2025-09-01T00:00:00');
|
||||
// 解析输入日期字符串
|
||||
const inputDate = new Date(imgData.scaleImageData.createDate);
|
||||
if(inputDate < targetDate){
|
||||
return message.info(t('newScaleImage.jsContent2'))
|
||||
}
|
||||
if(imgData.scaleImageData.openSource == 0){
|
||||
return message.info(t('newScaleImage.jsContent2'))
|
||||
}
|
||||
let id = await getWorks(imgData.scaleImageData.id)
|
||||
router.push(`/home/history/${id}`)
|
||||
// router.push({name:'home',params: {id:imgData.scaleImageData.id,type:'Works'}})
|
||||
store.commit('setChooseIsDesign',false)
|
||||
// router.push({name:'homePage',params: {id:imgData.scaleImageData.userLikeGroupSourceId,type:'Works'}})
|
||||
}
|
||||
const targetDate = new Date('2025-09-01T00:00:00');
|
||||
// 解析输入日期字符串
|
||||
const inputDate = new Date(imgData.scaleImageData.createDate);
|
||||
if(inputDate < targetDate){
|
||||
return message.info(t('newScaleImage.jsContent2'))
|
||||
}
|
||||
if(imgData.scaleImageData.openSource == 0){
|
||||
return message.info(t('newScaleImage.jsContent2'))
|
||||
}
|
||||
let id = await getWorks(imgData.scaleImageData.id)
|
||||
router.push(`/home/history/${id}`)
|
||||
// router.push({name:'home',params: {id:imgData.scaleImageData.id,type:'Works'}})
|
||||
store.commit('setChooseIsDesign',false)
|
||||
},300)
|
||||
|
||||
let setCommentReply = (value:any,str:any)=>{
|
||||
imgData.commentReply.leve1Id = value.id
|
||||
imgData.commentReply.leve2Id = null
|
||||
|
||||
@@ -711,10 +711,9 @@ export default defineComponent({
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%,-50%);
|
||||
float: left;
|
||||
object-fit: contain;
|
||||
user-select:none;
|
||||
-webkit-user-drag: none;
|
||||
// float: left;
|
||||
// user-select:none;
|
||||
// -webkit-user-drag: none;
|
||||
}
|
||||
}
|
||||
.wh1{
|
||||
|
||||
@@ -145,7 +145,7 @@
|
||||
</div>
|
||||
<!-- 取消请求 -->
|
||||
<scaleImage ref="scaleImage"></scaleImage>
|
||||
<Cropper ref="Cropper" @handleCropperSuccess="handleCropperSuccess" @closeCropper="deletUploadFile()" :cropperFileData="cropperFileData" :isUpload="isUpload"></Cropper>
|
||||
<Cropper ref="Cropper" @handleCropperSuccess="handleCropperSuccess" @closeCropper="deletUploadFile()" :cropperFileData="cropperFileData" :isRound="false" :isUpload="isUpload"></Cropper>
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts">
|
||||
|
||||
@@ -134,7 +134,8 @@ export default {
|
||||
jsContent2: '我们只支持对印花进行超分',
|
||||
jsContent3: '您的积分小于一次超分',
|
||||
jsContent4: '您的积分余额不足',
|
||||
jsContent5: '您选择的第{str}张图像在超分辨率增强后的分辨率超过2048。请选择较低的放大倍数。',
|
||||
jsContent5:
|
||||
'您选择的第{str}张图像在超分辨率增强后的分辨率超过2048。请选择较低的放大倍数。',
|
||||
jsContent6: '请选择需要超分的图片',
|
||||
jsContent7: '已成功保存至项目画布中~',
|
||||
jsContent8: '是否继续编辑',
|
||||
@@ -205,8 +206,10 @@ export default {
|
||||
RobotAssist: {
|
||||
inputContent1: '问我什么都行~',
|
||||
jsContent1: '请输入生成内容~',
|
||||
jsContent2: '欢迎来到AiDA。我是您友好的时尚设计助手。如果您有任何问题或需要帮助,请随时问我。',
|
||||
jsContent3: '看来您可能是新用户,我很乐意为您介绍我们全新升级的AiDA系统。您现在要开始教程吗?',
|
||||
jsContent2:
|
||||
'欢迎来到AiDA。我是您友好的时尚设计助手。如果您有任何问题或需要帮助,请随时问我。',
|
||||
jsContent3:
|
||||
'看来您可能是新用户,我很乐意为您介绍我们全新升级的AiDA系统。您现在要开始教程吗?',
|
||||
jsContent4: '您可以随时告诉我要开始教程。',
|
||||
jsContent5: '在开始教程之前,我们需要刷新页面。您现在要开始教程吗?'
|
||||
},
|
||||
@@ -233,10 +236,12 @@ export default {
|
||||
jsContent1: '您必须选择一种或多种颜色进行下一步。',
|
||||
jsContent2: '您必须选择一种或多种颜色进行下一步。',
|
||||
jsContent3: '导出文件失败。',
|
||||
jsContent4: '您的订阅将在 {days} 天 {hours} 小时后到期。为确保服务不中断,请点击此处续订->',
|
||||
jsContent4:
|
||||
'您的订阅将在 {days} 天 {hours} 小时后到期。为确保服务不中断,请点击此处续订->',
|
||||
jsContent8: '续订订阅。',
|
||||
jsContent7: '友情提示',
|
||||
jsContent5: '我们很高兴让您体验AiDA。请注意,部分服务在试用期间可能会受到限制。如果您已经准备好全身心投入并享受完整的体验,我们诚挚地邀请您订阅。只需访问',
|
||||
jsContent5:
|
||||
'我们很高兴让您体验AiDA。请注意,部分服务在试用期间可能会受到限制。如果您已经准备好全身心投入并享受完整的体验,我们诚挚地邀请您订阅。只需访问',
|
||||
jsContent6: ' 就可以开始订阅。感谢您试用我们的服务!',
|
||||
jsContent9: '您确定要清除当前系列并重新开始吗?',
|
||||
jsContent10: "二次创作的作品不允许使用'设计',但是您可以使用'重新设计'",
|
||||
@@ -310,18 +315,29 @@ export default {
|
||||
ChangeBarInfo: '移除服装',
|
||||
ChangeGarden: '在花园,清晨时分。',
|
||||
ChangeGardenInfo: '添加配饰',
|
||||
SingleGarment: '专业产品摄影:服装展示于隐形模特上,模特不可见。完整保留设计细节——所有图案、颜色、质地及细节特征。', // 单品样衣
|
||||
SingleChildMaleWithoutModel: '将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleChildMaleWithModel: '将这张图片转换为真实儿童模特,模特身着该服装,在白色摄影棚内以站立姿势面向镜头。',
|
||||
SingleChildFemaleWithoutModel: '将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleChildFemaleWithModel: '将此图像转化为真实儿童模特,穿着该服装,置于白色摄影棚内,面向镜头,保持站立姿势。',
|
||||
SingleAdultMaleWithoutModel: '将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleAdultMaleWithModel: '将此图像转化为真实模特,让模特身着该服装,在白色摄影棚内面向镜头保持站立姿势。',
|
||||
SingleAdultFemaleWithoutModel: '将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleAdultFemaleWithModel: '将此图像转化为真实模特,让模特身着该服装,在白色摄影棚内面向镜头保持站立姿势。',
|
||||
SingleGarment:
|
||||
'专业产品摄影:服装展示于隐形模特上,模特不可见。完整保留设计细节——所有图案、颜色、质地及细节特征。', // 单品样衣
|
||||
SingleChildMaleWithoutModel:
|
||||
'将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleChildMaleWithModel:
|
||||
'将这张图片转换为真实儿童模特,模特身着该服装,在白色摄影棚内以站立姿势面向镜头。',
|
||||
SingleChildFemaleWithoutModel:
|
||||
'将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleChildFemaleWithModel:
|
||||
'将此图像转化为真实儿童模特,穿着该服装,置于白色摄影棚内,面向镜头,保持站立姿势。',
|
||||
SingleAdultMaleWithoutModel:
|
||||
'将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleAdultMaleWithModel:
|
||||
'将此图像转化为真实模特,让模特身着该服装,在白色摄影棚内面向镜头保持站立姿势。',
|
||||
SingleAdultFemaleWithoutModel:
|
||||
'将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。',
|
||||
SingleAdultFemaleWithModel:
|
||||
'将此图像转化为真实模特,让模特身着该服装,在白色摄影棚内面向镜头保持站立姿势。',
|
||||
Series: '在白色摄影棚内,面向镜头,站立姿势。',
|
||||
UploadWithModel: '创建真实感十足的摄影棚照片,模特需身着该服装站立于白色摄影棚中。若原有模特存在则保留,否则生成合适模特。保持站立姿势,面向镜头。', // 上传线稿,带模特
|
||||
UploadWithoutModel: '将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。' // 上传线稿,不带模特
|
||||
UploadWithModel:
|
||||
'创建真实感十足的摄影棚照片,模特需身着该服装站立于白色摄影棚中。若原有模特存在则保留,否则生成合适模特。保持站立姿势,面向镜头。', // 上传线稿,带模特
|
||||
UploadWithoutModel:
|
||||
'将此图像转换为真实服装,展示于白色工作室中:服装悬挂于隐形人体模型上。' // 上传线稿,不带模特
|
||||
},
|
||||
poseTransfer: {
|
||||
SelectDesign: '产品图',
|
||||
@@ -341,7 +357,7 @@ export default {
|
||||
Tips: '提示',
|
||||
TipsStart: '你可以使用“',
|
||||
TipsEnd: '编辑产品图”来生成首帧或尾帧图片',
|
||||
PormptPlaceholder: '输入你想描述的场景...',
|
||||
PormptPlaceholder: '输入你想描述的画面内容...',
|
||||
firstAndLastFrameText1: '随着视频的进行,使用',
|
||||
firstAndLastFramePlaceholder1: '相机运动',
|
||||
firstAndLastFrameText2: '来跟随动作,在',
|
||||
@@ -618,7 +634,8 @@ export default {
|
||||
Merge: '合成',
|
||||
maximumLength: '输入的内容超过允许输入的最大长度',
|
||||
effectPoor: '当前生成的图像质量低于标准。请考虑调整您的提示词并再次尝试。',
|
||||
everyTimeEffectPoor: '您有一张图片生成图片质量低于标准,请考虑调整您的提示词并再次尝试。',
|
||||
everyTimeEffectPoor:
|
||||
'您有一张图片生成图片质量低于标准,请考虑调整您的提示词并再次尝试。',
|
||||
Model: '模型',
|
||||
uploadTitle: '上传参考图',
|
||||
uploadproduct: '上传产品图',
|
||||
@@ -662,7 +679,8 @@ export default {
|
||||
jsContent1: '因为您选择了多张图片,请点击布局后继续.',
|
||||
jsContent2: '上传的文件不会保存,是否继续? ',
|
||||
jsContent3: '您必须选择一种或多种颜色进行下一步。',
|
||||
jsContent5: '我们检测到您的({str})上的PIN数量超过了八个,这可能会导致一些已钉住的项目未被使用。您是否仍要继续?',
|
||||
jsContent5:
|
||||
'我们检测到您的({str})上的PIN数量超过了八个,这可能会导致一些已钉住的项目未被使用。您是否仍要继续?',
|
||||
jsContent6: '画布内容没有保存,请点击预保存后继续。',
|
||||
jsContent7: '请至少选择一个模特'
|
||||
},
|
||||
@@ -755,7 +773,8 @@ export default {
|
||||
available: '此功能对试用用户不可用。',
|
||||
src: '此功能对试用用户不开放,请访问进行订阅。',
|
||||
userName: '试用用户',
|
||||
loginIsTest: '您是试用用户,试用期到 {date}。为了用户数据的安全,我们不会保存试用用户上传的任何个人数据,并会在每次注销后擦除个人数据。如果您需要订阅,请点击 ->',
|
||||
loginIsTest:
|
||||
'您是试用用户,试用期到 {date}。为了用户数据的安全,我们不会保存试用用户上传的任何个人数据,并会在每次注销后擦除个人数据。如果您需要订阅,请点击 ->',
|
||||
image: '由于您是试用用户,您只能上传10张图片。'
|
||||
},
|
||||
setLabel: {
|
||||
@@ -958,13 +977,17 @@ export default {
|
||||
subscriptionRenewal: '没有自动续订的订阅计划.'
|
||||
},
|
||||
guide: {
|
||||
guide1: '在<strong>工作空间</strong>中,您可以个性化您的设计设置,包括选择适用于男装或女装的设计,以及选择用于创作的人体模型。',
|
||||
guide1:
|
||||
'在<strong>工作空间</strong>中,您可以个性化您的设计设置,包括选择适用于男装或女装的设计,以及选择用于创作的人体模型。',
|
||||
guide2: '选择您要设计的服装性别。',
|
||||
guide3: '在此更改人体模型。',
|
||||
guide4: '您目前可以从我们的系统库中选择人体模型。稍后,您还可以在注册自己的人体模型后从用户库中进行选择。',
|
||||
guide4:
|
||||
'您目前可以从我们的系统库中选择人体模型。稍后,您还可以在注册自己的人体模型后从用户库中进行选择。',
|
||||
guide5: '在这里开始您的创意之旅。 ',
|
||||
guide6: '对于情绪板、印花或服装,我们提供三种不同的图片添加方法。第一种选择是<strong>上传</strong>,允许您直接从本地设备上传。',
|
||||
guide7: '第二种方法是从您的<strong>收藏</strong>中选择。<br> 您可能会注意到您的库页面目前是空的;不必担心。您上传的所有图像都将自动添加到您的库中。将来,您无需每次上传,只需从您的库中选择即可。',
|
||||
guide6:
|
||||
'对于情绪板、印花或服装,我们提供三种不同的图片添加方法。第一种选择是<strong>上传</strong>,允许您直接从本地设备上传。',
|
||||
guide7:
|
||||
'第二种方法是从您的<strong>收藏</strong>中选择。<br> 您可能会注意到您的库页面目前是空的;不必担心。您上传的所有图像都将自动添加到您的库中。将来,您无需每次上传,只需从您的库中选择即可。',
|
||||
guide8: '第三种方法是使用最新的图像生成技术<strong>生成</strong>图像。',
|
||||
guide9: '输入捕捉您希望表达的情绪的关键词,然后单击<strong>生成</strong>按钮。',
|
||||
guide10: '为您的心情板选择两个图像。',
|
||||
@@ -1007,7 +1030,8 @@ export default {
|
||||
guide47: '在此处保存印刷设计。',
|
||||
guide48: '点击此处完成修改。',
|
||||
guide49: '点击此完成出您刚刚设计的系列。',
|
||||
guide51: '这个界面允许您将设计结果转换为产品图。您可以通过调整文字和相似度来获得理想的效果。点击此产品图进入下一步。',
|
||||
guide51:
|
||||
'这个界面允许您将设计结果转换为产品图。您可以通过调整文字和相似度来获得理想的效果。点击此产品图进入下一步。',
|
||||
guide52: '点击此处生成产品图。',
|
||||
guide53: '点击此按钮可对产品图应用更多工具。',
|
||||
guide54: '我们可以改变这张图片的光照方向和背景。',
|
||||
@@ -1015,7 +1039,8 @@ export default {
|
||||
guide56: '如果您喜欢这个结果,可以点击小红心保存。',
|
||||
guide57: '点击此处进入导出页面。',
|
||||
guide58: '您可以将作品分享到作品广场或者导出到本地。',
|
||||
guide50: "您的指南已经完成,现在您可以自由创作。要了解更多见解和细节,请查看我们主页上的演示视频:<a href='https://code-create.com.hk/aida/' style='pointer-events: auto;' target='_blank'>https://code-create.com.hk/aida/</a>。您可以随时告诉机器人您想重新开始教程。"
|
||||
guide50:
|
||||
"您的指南已经完成,现在您可以自由创作。要了解更多见解和细节,请查看我们主页上的演示视频:<a href='https://code-create.com.hk/aida/' style='pointer-events: auto;' target='_blank'>https://code-create.com.hk/aida/</a>。您可以随时告诉机器人您想重新开始教程。"
|
||||
},
|
||||
createSlogan: {
|
||||
title: '创建标语',
|
||||
@@ -1037,11 +1062,13 @@ export default {
|
||||
Setting: '手动模式',
|
||||
SeriesDesign: '整身设计',
|
||||
series: '整身设计',
|
||||
SeriesDesignInfo: '系列设计专注于多品类服装的协调设计,是打造统一时尚系列的理想之选。使用“设计资源”面板中的“情绪板”、“印刷板”、“配色板”、“草图板”和“人体模型”工具,收集和整理您的灵感,打造和谐的服装组合。在“草稿”和“系列”面板中,使用“产品图像”、“重新照明”和“转移姿势”等强大工具,完善您的作品。准备就绪后,将所有内容导出到“画布”以展示完整的系列设计。',
|
||||
SeriesDesignInfo:
|
||||
'系列设计专注于多品类服装的协调设计,是打造统一时尚系列的理想之选。使用“设计资源”面板中的“情绪板”、“印刷板”、“配色板”、“草图板”和“人体模型”工具,收集和整理您的灵感,打造和谐的服装组合。在“草稿”和“系列”面板中,使用“产品图像”、“重新照明”和“转移姿势”等强大工具,完善您的作品。准备就绪后,将所有内容导出到“画布”以展示完整的系列设计。',
|
||||
SingleDesign: '单品设计',
|
||||
single: '单品设计',
|
||||
DeepThinking: '深度思考',
|
||||
SingleDesignInfo: '单一设计专注于单一服装类别的独立设计,例如 T 恤、连衣裙或夹克,无需考虑与其他单品的搭配。使用“设计资源”面板中的“情绪板”、“打印板”、“配色板”和“草图板”来收集灵感,并专注于打造一件独一无二的作品。完成后,在“草稿”和“收藏”面板中使用“产品图像”、“重新照明”和“传输姿势”等工具优化您的设计,然后导出到“画布”以展示您的个人作品。',
|
||||
SingleDesignInfo:
|
||||
'单一设计专注于单一服装类别的独立设计,例如 T 恤、连衣裙或夹克,无需考虑与其他单品的搭配。使用“设计资源”面板中的“情绪板”、“打印板”、“配色板”和“草图板”来收集灵感,并专注于打造一件独一无二的作品。完成后,在“草稿”和“收藏”面板中使用“产品图像”、“重新照明”和“传输姿势”等工具优化您的设计,然后导出到“画布”以展示您的个人作品。',
|
||||
selectDesignType: '请选择设计类型',
|
||||
hintListSERIES1: '设计一套以夏日海滩为灵感的连衣裙。',
|
||||
hintListSERIES2: '设计一套暗色系,哥特风格的上衣。',
|
||||
|
||||
@@ -561,7 +561,7 @@ export default defineComponent({
|
||||
const getIdExistToHistory = async () => {
|
||||
return await new Promise((resolve, reject) => {
|
||||
let value = {
|
||||
id: Number(route.query?.id || route.query?.history)
|
||||
id: Number(route.params?.id || route.query?.history)
|
||||
}
|
||||
Https.axiosPost(Https.httpUrls.historyProject, value)
|
||||
.then(rv => {
|
||||
@@ -576,11 +576,15 @@ export default defineComponent({
|
||||
() => route.query,
|
||||
(query, oldQuery) => {
|
||||
nextTick(async () => {
|
||||
// if ((route.params?.id || query?.history) && !(await getIdExistToHistory())) {
|
||||
// router.push('/home')
|
||||
// return
|
||||
// }
|
||||
const key = Object.keys(query)?.[0]
|
||||
if (key) {
|
||||
if (query.id && !query.tools) {
|
||||
if (route.params?.id && !query.tools) {
|
||||
homeMainData.openType = 'history'
|
||||
homeMainData.openTypeChild = query.id
|
||||
homeMainData.openTypeChild = route.params?.id
|
||||
} else {
|
||||
homeMainData.openType = Object.keys(query)[0]
|
||||
homeMainData.openTypeChild = query[Object.keys(query)[0]]
|
||||
@@ -589,10 +593,6 @@ export default defineComponent({
|
||||
homeMainData.openTypeChild = ''
|
||||
homeMainData.openType = ''
|
||||
}
|
||||
if ((query?.id || query?.history) && !(await getIdExistToHistory())) {
|
||||
router.push('/home')
|
||||
return
|
||||
}
|
||||
} else {
|
||||
homeMainData.openType = ''
|
||||
homeMainData.openTypeChild = ''
|
||||
@@ -912,12 +912,12 @@ export default defineComponent({
|
||||
rv.content.forEach((item, index) => {
|
||||
let str = categorizeDate(item.updateTime) + 'list'
|
||||
homeMainData.navTypeList.history[str].push(item)
|
||||
if (item.id == (route.query?.id || route.query?.history)) {
|
||||
if (item.id == (route.params?.id || route.query?.history)) {
|
||||
existToHistoryIndex = rv.page * rv.size + index + 1 - rv.size
|
||||
}
|
||||
})
|
||||
homeMainData.historyData.isNull = false
|
||||
if ((route.query?.id || route.query?.history) && isFound < 1) setScrollTop()
|
||||
if ((route.params?.id || route.query?.history) && isFound < 1) setScrollTop()
|
||||
} else {
|
||||
homeMainData.historyData.isNoData = true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user