Merge remote-tracking branch 'origin/StableVersion' into develop

This commit is contained in:
X1627315083
2024-10-10 23:39:36 +08:00
12 changed files with 124 additions and 112 deletions

View File

@@ -6,7 +6,7 @@ NODE_ENV = 'development'
VUE_APP_BASE_URL = 'https://develop.api.aida.com.hk'
# VUE_APP_BASE_URL = 'https://www.api.aida.com.hk'
# 佩佩
# VUE_APP_BASE_URL = 'http://192.168.1.7:5567'
# VUE_APP_BASE_URL = 'http://192.168.1.4:5567'
# 海波
# VUE_APP_BASE_URL = 'http://192.168.1.9:5567'

View File

@@ -15,13 +15,13 @@
{
"paragraph":[
{
"text":"🎨AiDA x RCA Workshop!"
"text":"🎨AiDA Workshop!"
}
]
},{
"paragraph":[
{
"text":"The process is simple: use AiDA to post your design work on the 'Gallery ', and the one with the most likes(at least 20 likes) will be invited to the AiDA x RCA workshop offline event in Hong Kong on November 14th, to exchange ideas with the Royal College of Art (RCA), Jae Lim, co-founder of the renowned fashion brand BESFXXK, and outstanding designers!"
"text":"The process is simple: use AiDA to post your design work on the 'Gallery', and the one with the most likes(at least 20 likes) will be invited to the AiDA Workshop offline event in Hong Kong on November 14th, to exchange ideas with the Royal College of Art (RCA), Jae Lim, co-founder of the renowned fashion brand BESFXXK, and outstanding designers! "
}
]
},{
@@ -33,11 +33,9 @@
},{
"paragraph":[
{
"text":"1. Title of the work post: AiDA x RCA Workshop"
"text":"1. Add the tag in the work description #AiDAworkshop_2024"
},{
"text":"2. Add the tag in the work description: #RCAworkshop_2024"
},{
"text":"3. One winner only"
"text":"2. One winner only"
}
]
},{
@@ -64,12 +62,6 @@
"text":"⌛Deadline: October 31, 2024"
}
]
},{
"paragraph":[
{
"text":"#AiDA #CodeCreate #ai #fashiondesign #fashion #AiDLab #RCA"
}
]
}
]
}

View File

@@ -3,25 +3,25 @@
{
"id": 1,
"title":"什么?只要发布设计作品就有机会来香港与大佬面对面交流?!",
"imgUrl": "/image/events/workshop-En.jpg"
"imgUrl": "/image/events/workshop-Cn.jpg"
}
],
"eventsItem":[
{
"id":1,
"title":"什么?只要发布设计作品就有机会来香港与大佬面对面交流?!",
"imgUrl": "/image/events/workshop-En.jpg",
"imgUrl": "/image/events/workshop-Cn.jpg",
"textList":[
{
"paragraph":[
{
"text":"🎨这是一趟艺术巅峰之旅AiDA x RCA Workshop"
"text":"🎨这是一趟艺术巅峰之旅AiDA Workshop"
}
]
},{
"paragraph":[
{
"text":"参与过程很简单利用AiDA 在 “Gallery广场 ”发布设计作品,最终获赞最高者(至少20个赞将被邀请至11月14日 举办的AiDA x RCA workshop香港线下活动与英国皇家艺术学院RCA、韩国知名时尚品牌BESFXXK创始人JAE以及优秀设计师一同交流(名额仅限1名"
"text":"参与过程很简单利用AiDA 在 “Gallery广场 ”发布设计作品,最终获赞最高者(至少20个赞将被邀请至11月14日 举办的AiDA Workshop香港线下活动与英国皇家艺术学院RCA、韩国知名时尚品牌BESFXXK创始人JAE以及优秀设计师一同交流(名额仅限1名"
}
]
},{
@@ -33,11 +33,9 @@
},{
"paragraph":[
{
"text":"1. 作品发布标题: AiDA x RCA Workshop"
"text":"1. 作品描述添加tag: #AiDAworkshop_2024"
},{
"text":"2. 作品描述添加tag: #RCAworkshop_2024"
},{
"text":"3.一个冠军名额"
"text":"2. 一个冠军名额"
}
]
},{
@@ -64,12 +62,6 @@
"text":"⌛截止时间2024.10.31"
}
]
},{
"paragraph":[
{
"text":"#AiDA #CodeCreate #ai #服装设计 #服装设计灵感 #英国皇家艺术学院 #设计师"
}
]
}
]
}

View File

@@ -222,9 +222,11 @@ import { message, Upload, Modal } from "ant-design-vue";
padding: 0 calc(1rem*1.2);
&.active{
// opacity: .4;
pointer-events: none;
color: #a4a4a4 !important;
background: #ebebeb !important;
cursor: not-allowed;
}
:deep(.icon-shanchu){
cursor: pointer;

View File

@@ -9,7 +9,6 @@
:closable="false"
:mask="publishMask"
:keyboard="false"
:destroyOnClose="true"
>
<div class="generalModel_btn">
<div class="generalModel_closeIcon" @click.stop="cancelDsign()">
@@ -33,70 +32,32 @@
<div class="publidh_right">
<div class="publidh_right_name publidh_content_item">
<div class="publidh_content_item_title">{{$t('Publish.CollectionTitle')}}</div>
<input type="text" :disabled="selectTagList.length > 0" v-model="subPublishDate.portfolioName">
<input type="text" v-model="subPublishDate.portfolioName">
<!-- <div class="publidh_content_item_tag">
<a-tag closable color="purple">#RCAworkshop_2024</a-tag>
</div> -->
</div>
<div class="publidh_right_name publidh_content_item">
<div class="publidh_content_item_title">{{$t('Publish.topic')}}</div>
<div class="publidh_content_item_tag">
<div v-for="item,index in selectTagList">
<a-tooltip v-if="index > 4" :title="+'+'+selectTagList.length - 4">
<a-tag closable color="purple" @close="handleClose(item,index)">
{{ item.tag }}
</a-tag>
</a-tooltip>
<a-tag v-else closable color="purple" @close="handleClose(item,index)">
{{ item.tag }}
</a-tag>
</div>
</div>
<div class="publidh_content_item_tagList">
<div v-for="item,index in tagList" @click="pushTag(item,index)">
<a-tag color="purple">{{ item.tag }}</a-tag>
</div>
</div>
</div>
<div class="publidh_right_name publidh_content_item">
<div class="publidh_content_item_title">{{$t('Publish.Description')}}</div>
<!-- <textarea @input="textareaChange()" ref="textarea" v-model="subPublishDate.portfolioDes"></textarea> -->
<textarea ref="textarea" v-model="subPublishDate.portfolioDes"></textarea>
</div>
<div class="publidh_content_item_tagList">
<div v-for="item,index in tagList" @click="pushTag(item,index)">
<a-tag color="purple" :title="item.title">{{ item.tagName }}</a-tag>
</div>
</div>
<div class="publidh_right_detail publidh_content_item">
<div class="publidh_content_item_title">{{$t('Publish.Permissions')}}</div>
<!-- <div>
<a-checkbox @change="setPermissions" v-model:checked="setPermissionsAll">All.</a-checkbox>
</div> -->
<!-- <div>
<a-checkbox @change="setPermissionsItem()" v-model:checked="selectPermissions.isAllowLikes">Whether to allow likes.</a-checkbox>
</div> -->
<!-- <div>
<a-checkbox @change="setPermissionsItem()" v-model:checked="selectPermissions.isAllowComment">Allow comments or not.</a-checkbox>
</div>
<div>
<a-checkbox @change="setPermissionsItem()" v-model:checked="selectPermissions.isDisplayArea">Show locale or not.</a-checkbox>
</div> -->
<div>
<a-checkbox @change="setPermissionsItem()" v-model:checked="selectPermissions.isSecondaryCreation">{{$t('Publish.PermissionsItem1')}}</a-checkbox>
</div>
</div>
<!-- <div class="publidh_right_name publidh_content_item">
<div class="publidh_content_item_title">Thumbnail preview</div>
<input type="text">
</div> -->
<div class="publidh_content_item publidh_right_zhuyi">
<!-- <div class="publidh_content_item_intro">
<label >
<span class="icon iconfont icon-zhuyi"></span>
<div>
This will publish your work to the square for all users to see.
</div>
</label>
</div> -->
</div>
<div class="publidh_right_btn">
<div class="started_btn" @click="cancelDsign">{{$t('Publish.Close')}}</div>
<div class="started_btn" @click="setPublish">{{beenPublished == 0?$t('Publish.Publish'):$t('Publish.UpdatePublish')}}</div>
<div class="started_btn" @click="setPublish">{{!subPublishDate?.id?$t('Publish.Publish'):$t('Publish.UpdatePublish')}}</div>
</div>
</div>
</div>
@@ -125,12 +86,10 @@ export default defineComponent({
const store = useStore();
let publish: any = ref(false);//弹窗
let publishMask:any = ref(false)//弹窗遮罩
let setBeenPublished:any = inject('setBeenPublished')
let publishData:any = reactive({
publishName:'',
loadingShow:false,
publishMarginTop:0,
beenPublished:inject('beenPublished'),//history回来时候表示是否已经发布0为没发布
publishList:[],
publishIndex:0,//当前图片索引
isShowMark:false,
@@ -139,15 +98,18 @@ export default defineComponent({
url:'',
},
subPublishDate:{
id:'',
portfolioDes:''
},
selectPermissions:{
isAllowComment:true,
isDisplayArea:true,
isSecondaryCreation:true,
}
},
})
let tagList = ref([{tag:'RCAworkshop_2024'}])
let selectTagList:any = ref([])
let portfolio:any = inject('portfolio')
let setPortfolio:any = inject('setPortfolio')
let tagList = ref([{id:1,tagName:'#RCAworkshop_2024',title:'The process is simple: use AiDA to post your design work on the "Gallery ", and the one with the most likes(at least 20 likes) will be invited to the AiDA Workshop offline event in Hong Kong on November 14th, to exchange ideas with the Royal College of Art (RCA), Jae Lim, co-founder of the renowned fashion brand BESFXXK, and outstanding designers! '}])
// let textarea: any = ref(null)
// let setCopy = ()=>{
// textarea.value.select()
@@ -166,13 +128,14 @@ export default defineComponent({
accountId : JSON.parse(userInfo).userId,
createDate:'',
idDeleted:'',
id:'',
portfolioDes:'',
portfolioName:'',
id:portfolio.value.id?portfolio.value.id:'',
portfolioDes:portfolio.value.portfolioDes?portfolio.value.portfolioDes:'',
portfolioName:portfolio.value.portfolioName?portfolio.value.portfolioName:'',
portfolioType:'History',
status:'',
updateDate:'',
collectionId:'',
tagsDTO:portfolio.value.tagsDTO?portfolio.value.tagsDTO:[],
// isAllowLikes:true,
}
}
@@ -181,6 +144,39 @@ export default defineComponent({
publishData.selectDate.url = item.url
}
let extractHashtags = (text:any)=>{
// const regex = /#\S+\s{2}/g;
const regex = /#\S+\s/g;
// 使用match方法提取匹配的字符串
const matches = text.match(regex);
// 处理提取结果,去掉空格并返回
return matches ? matches.map((match:any) => match.replace(/\s+/g, '')) : []; // 去掉所有空格
}
let textareaChange = ()=>{
let tagListArr = extractHashtags(publishData.subPublishDate.portfolioDes)
let tagsDTO:any = []
for (let i = 0; i < tagListArr.length; i++) {
const index = tagList.value.findIndex((obj:any) => obj.tagName === tagListArr[i]);
const tagsDTOIndex = publishData.subPublishDate.tagsDTO.findIndex((obj:any) => obj.tagName === tagListArr[i]);
let obj
if(tagsDTOIndex>-1){
obj = {
tagName:publishData.subPublishDate.tagsDTO[tagsDTOIndex].tagName,
id:publishData.subPublishDate.tagsDTO[tagsDTOIndex].id
}
}else if(index > -1){
obj = {
tagName:tagList.value[index].tagName,
id:tagList.value[index].id
}
}else {
obj = {tagName:tagListArr[i]}
}
tagsDTO.push(obj)
}
// publishData.subPublishDate.tagsDTO = tagsDTO
return tagsDTO
}
let setPermissionsItem = ()=>{
// publishData.selectPermissions.isAllowLikes &&
if(publishData.selectPermissions.isAllowComment && publishData.selectPermissions.isDisplayArea && publishData.selectPermissions.isSecondaryCreation){
@@ -199,7 +195,6 @@ export default defineComponent({
publish.value = false
publishData.isShowMark = false
publishData.subPublishDate = {}
selectTagList.value = []
}
let cancelDsign = ()=>{
Modal.confirm({
@@ -242,43 +237,47 @@ export default defineComponent({
let file = base64ToFile(publishData.selectDate.url,'collection')
param.append('file',file)
publishData.subPublishDate.openSource = publishData.selectPermissions.isSecondaryCreation?1:0
let tagDTO = textareaChange()
publishData.subPublishDate.tagsDTO = tagDTO
param.append('data',JSON.stringify(publishData.subPublishDate))
let config:any = {headers:{'Content-Type':'multipart/form-data','Accept':'*/*' }}
// let data = publishData.subPublishDate
publishData.isShowMark = true
Https.axiosPost(Https.httpUrls.publish, param,config)
.then((rv) => {
cleardata()
publishData.isShowMark = false
emit('setPublish')
let obj = {
id:rv,
portfolioName:publishData.subPublishDate.portfolioName,
portfolioDes:publishData.subPublishDate.portfolioDes,
tagsDTO:publishData.subPublishDate.tagsDTO,
}
cleardata()
setPortfolio(obj)
message.success(t('Publish.jsContent4'))
setBeenPublished()
})
.catch((rv) => {
publishData.isShowMark = false
});
}
let handleClose = (tag:any,index:number)=>{
let selectTag = selectTagList.value.splice(index,1)[0]
tagList.value.push(selectTag)
}
let pushTag = (tag:any,index:number)=>{
let selectTag = tagList.value.splice(index,1)[0]
selectTagList.value.push(selectTag)
if(tag.tag == 'RCAworkshop_2024'){
publishData.subPublishDate.portfolioName = 'AiDA x RCA workshop'
}
// let selectTag = tagList.value.splice(index,1)[0]
// if(tag.tag == 'RCAworkshop_2024'){
// publishData.subPublishDate.portfolioDes = '#AiDA x RCA workshop '
// }
if(!publishData.subPublishDate.portfolioDes) publishData.subPublishDate.portfolioDes = ''
publishData.subPublishDate.portfolioDes = publishData.subPublishDate.portfolioDes+tag.tagName + ' '
}
return {
publish,
publishMask,
...toRefs(publishData),
tagList,
// textarea,
// setCopy,
tagList,
selectTagList,
init,
textareaChange,
setPermissionsItem,
setPermissions,
// download,
@@ -287,7 +286,6 @@ export default defineComponent({
setCover,
cancelDsign,
setPublish,
handleClose,
pushTag,
};
},
@@ -338,6 +336,20 @@ export default defineComponent({
justify-content: space-between;
flex: 1;
height: calc(100% - 10rem);
.publidh_content_item_tagList,.publidh_content_item_tag{
// height: 4rem;
border-radius: 1rem;
display: flex;
align-items: center;
flex-wrap: wrap;
}
.publidh_content_item_tagList{
margin-top: 1rem;
.ant-tag{
cursor: pointer;
margin-bottom: 8px;
}
}
.publidh_left,.publidh_right{
display: flex;
flex-direction: column;
@@ -375,6 +387,7 @@ export default defineComponent({
}
}
.publidh_content_item_intro{
font-size: 1.4rem;
}

View File

@@ -525,6 +525,7 @@ export default {
all:'全部',
FavoriteWorks:'点赞的作品',
MyWorks:'我的作品',
RCAworkshop_2024:'AiDA工作坊 2024',
},
Publish:{
Publish:'发布',

View File

@@ -525,6 +525,7 @@ export default {
all:'All',
FavoriteWorks:'Like Works',
MyWorks:'My Works',
RCAworkshop_2024:'AiDA Workshop 2024',
},
Publish:{
Publish:'Publish',

View File

@@ -337,6 +337,7 @@ router.beforeEach((to:any, from, next) => {
let herfData = window.location.search.substring(1)
if(herfData.split('=')[0] == 'noLogin' && to.name != 'homePage'){
setMurmur(herfData.split('=')[1])
// console.log(`-------------------成功${herfData.split('=')[1]}-------------------`)
return
}

View File

@@ -197,6 +197,7 @@ export default defineComponent({
payOrder,
TaskPage,
navRouter,
navRouter,
},
setup(){
const store = useStore();
@@ -611,6 +612,8 @@ export default defineComponent({
this.store.commit('clearAllData')
// window.location.reload()
window.location.href = '/home';
// window.location.reload()
window.location.href = '/home';
}
}
})

View File

@@ -277,12 +277,10 @@ export default defineComponent({
let userGroupId: any = computed(() => {
return store.state.HomeStoreModule.userGroupId;
}); //模特id //当likeDesignCollectionList长度为0时清空startdesign时清空
let beenPublished = ref(0)
let setBeenPublished = ()=>{
beenPublished.value = 1
let setPortfolio = (data:any)=>{
portfolio.value = data
}
provide('beenPublished',beenPublished)
provide('setBeenPublished',setBeenPublished)
provide('setPortfolio',setPortfolio)
let designCollectionId: any = computed(() => {
return store.state.HomeStoreModule.designCollectionId;
});
@@ -341,12 +339,14 @@ export default defineComponent({
let isMannequinShow = ref(false)
let chooseIsDesign:any = computed(()=>{
return store.state.UploadFilesModule.chooseIsDesign})
let portfolio:any = ref({})
provide('portfolio',portfolio)
return {
store,
likeDesignCollectionList,
designCollectionList,
userGroupId,
beenPublished,
setPortfolio,
designCollectionId,
designId,
contentImgMax,
@@ -361,6 +361,7 @@ export default defineComponent({
allBoardData,
isMannequinShow,
chooseIsDesign,
portfolio,
};
},
data() {
@@ -536,9 +537,10 @@ export default defineComponent({
// },
affiche(text:any){
nextTick(()=>{
let affiche:any = this.$refs.affiche
let affiche:any = this.$refs.affiche
affiche.init(text)
})
// affiche.afficheMask = true
},
dragstart (e:any, index:any) {
@@ -920,7 +922,7 @@ export default defineComponent({
Https.httpUrls.historyChoose + `?userGroupId=${userGroupId}`;
Https.axiosGet(url)
.then((rv: any) => {
this.beenPublished = rv.beenPublished
this.setPortfolio(rv.portfolioDTO)
this.store.commit("setUserGroupId", rv.userGroupId);
this.dealHistoryChooseData(rv, type);
this.isShowMark = false;
@@ -947,7 +949,7 @@ export default defineComponent({
this.isShowMark = true;
Https.axiosPost(Https.httpUrls.setPorfolioChoose, data).then(
(rv: any) => {
this.beenPublished = rv.beenPublished
this.setPortfolio(rv.portfolioDTO)
this.store.commit("setUserGroupId", rv.userGroupId);
this.dealHistoryChooseData(rv, type);
this.isShowMark = false;

View File

@@ -7,8 +7,8 @@
<div v-show="isScroll" v-for="item in worksType" :key="item" class="modal_title_text_assistant" @click="setWorksSelect(item)" :class="{active:item.value == worksSelect}">
{{ item.name }}
</div>
<!-- <div v-show="!isScroll" class="modal_title_text_assistant active">All</div> -->
<div v-show="!isScroll" class="modal_title_text_assistant" :class="{active:'all' == worksSelect}" @click="setWorksSelect({value:'all'})">All</div>
<div v-show="!isScroll" class="modal_title_text_assistant" :class="{active:'RCAworkshop_2024' == worksSelect}" @click="setWorksSelect({value:'RCAworkshop_2024'})">AiDA Workshop 2024</div>
<!-- <div class="modal_search_menu">
<generalMenu :dataList="menuList" @setprintModel="setprintModel" :item="selectMenu"></generalMenu>
</div> -->
@@ -90,8 +90,8 @@ export default defineComponent({
value: 'myWorks'
},
{
name: 'RCA Workshop',
value: 'myWorks'
name: useI18n().t('works.RCAworkshop_2024'),
value: 'RCAworkshop_2024'
},
],
worksList: [
@@ -101,6 +101,7 @@ export default defineComponent({
"getMyPortfolio": 0,
page:1,
size:10,
tagId:'',
},
isShowMark:false,
isNoData:false,//如果数据为空就不加载
@@ -137,12 +138,16 @@ export default defineComponent({
filter.worksSelect = val.value
filter.getListDate.getLikePortfolio = 0
filter.getListDate.getMyPortfolio = 0
filter.getListDate.tagId = ''
if(val.value == 'all'){
}else if(val.value == 'favoriteWorks'){
filter.getListDate.getLikePortfolio = 1
}else if(val.value == 'myWorks'){
filter.getListDate.getMyPortfolio = 1
}else if(val.value == 'RCAworkshop_2024'){
filter.getListDate.tagId = 1
}
filter.getListDate.page = 0
fall.value.clearData()
filter.isShowMark = false

View File

@@ -775,7 +775,7 @@ export default defineComponent({
if(this.selectCode != 'DesignElements'){
this.getClass()
}
if(this.selectCode == 'Sketchboard')this.getSex()
if(this.selectCode == 'Sketchboard' || this.selectCode == 'Models')this.getSex()
this.getLibraryList('')