创建项目的项目设置bug

This commit is contained in:
X1627315083
2025-11-04 10:44:11 +08:00
parent 2f5c6346f0
commit e9461dce56
7 changed files with 213 additions and 5 deletions

View File

@@ -97,7 +97,7 @@
></a-select>
</div>
<div class="admin_state_item">
<span>Total Amount:</span>
<span>Total Amount: {{ totalPayer }}</span>
</div>
</div>
<div class="admin_search">
@@ -210,6 +210,8 @@ export default defineComponent({
orderBy:'',
status: "",
type: "",
totalPayer:0,
});
let selectList=reactive({
platformList:[
@@ -469,6 +471,9 @@ export default defineComponent({
filter.dataList = rv.content;
filterData.total = rv.total;
filter.tableLoading = false;
rv.content.forEach((item: any) => {
filterData.totalPayer += Number(item.payerTotal)
})
// this.workspaceItem.position = this.singleTypeList[0].label
}

View File

@@ -39,6 +39,10 @@
<img src="@/assets/images/icon/details_elements.png" alt="">
<div class="detailText">{{$t('DesignPrintOperation.Elements')}}</div>
</div>
<!-- <div class="nav_item" :class="{active:currentDetailType == 'accessory'}" @click="setCurrentDetail('accessory')">
<img src="@/assets/images/icon/details_elements.png" alt="">
<div class="detailText">{{$t('DesignPrintOperation.Accessory')}}</div>
</div> -->
<div class="nav_item" v-if="selectObject.type == 'seriesDesign'" :class="{active:currentDetailType == 'models'}" @click="setCurrentDetail('models')">
<img src="@/assets/images/icon/details_model.svg" alt="">
<div class="detailText">{{$t('DesignPrintOperation.Model')}}</div>
@@ -78,6 +82,7 @@
v-show="
currentDetailType !== 'color' &&
(currentDetailType === 'element' ||
currentDetailType === 'accessory' ||
currentDetailType === 'print' ||
(currentDetailType === 'sketch' && selectDetail?.newDetail?.[currentDetailType])||
(currentDetailType === 'sketch' && selectDetail?.sketchString)||
@@ -357,6 +362,7 @@ export default defineComponent({
type:(newData && detailData.currentDetailType == 'sketch' && isCurrent && !detailData.isEditPattern.value)?newData.level2Type || newData.categoryValue:list[i].type,
sketchString:list[i].sketchString?list[i].sketchString:'',
trims:(newData && detailData.currentDetailType == 'element' && isCurrent && !detailData.isEditPattern.value)?{prints:newData}:list[i].trims?.prints?list[i].trims:{prints:[]},
accessory:(newData && detailData.currentDetailType == 'accessory' && isCurrent && !detailData.isEditPattern.value)?{prints:newData}:list[i].trims?.prints?list[i].trims:{prints:[]},
}
if((detailData.isEditPattern.value && list[i].color?.gradient) || (!detailData.isEditPattern.value && (list[i].newDetail?.color?.gradient || list[i].color?.gradient))){
gradient = list[i].newDetail?.color?.gradient || list[i].color.gradient

View File

@@ -0,0 +1,163 @@
<template>
<div class="element">
<div class="detailText">{{$t('DesignPrintOperation.CurrentAccessory')}}</div>
<div class="select_element">
<img :class="{active:elementList.length == 1}" v-for="item in elementList" @click="addElement(item)" :src="item.path" alt="">
<!-- <img :src="selectDetail.path" alt="">
{{ selectDetail }} -->
<div v-if="elementList.length == 0">
<i class="fi fi-rr-picture centent"></i>
</div>
</div>
<selectList @selectImgItem="selectImgItem" level1Type="DesignElements" type="accessory" :catecoryList="printCatecoryList"></selectList>
</div>
</template>
<script lang="ts">
import { defineComponent,computed,ref,watch,nextTick,createVNode,toRefs, reactive} from 'vue'
// import setDesignItem from '@/component/Detail/setDesignItem2.vue'
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
import { Https } from "@/tool/https";
import { useStore } from "vuex";
import { useI18n } from 'vue-i18n'
// import sketchCategory from "@/component/HomePage/sketchCategory.vue";
import selectList from './module/selectList.vue'
export default defineComponent({
components:{
selectList,
},
setup(props,{emit}) {
const store = useStore();
const detailData = reactive({
selectTitle:'current',
selectDetail:computed(()=>store.state.DesignDetail.selectDetail),
printCatecoryList:computed(()=>{
return store.state.UserHabit.designElementsType
}),
elementList:[],
currentDetailType:computed(()=>store.state.DesignDetail.currentDetailType)
})
watch(()=>detailData?.selectDetail?.trims?.prints,(newVal,oldVal)=>{
if(!newVal)return
detailData.elementList = newVal.reduce((acc:any, curr:any) => {
if (!acc.some((item:any) => item.minIOPath === curr.minIOPath)) {
acc.push(curr);
}
return acc;
}, []);
},{immediate: true})
const getDetailListData = reactive({
total:0,
pageSize:10,
currentPage:1,
})
const getDetailListDom = reactive({
libraryList:null as any,
})
const openCurrent = ()=>{
detailData.selectTitle = 'current'
}
const openUpload = ()=>{
detailData.selectTitle = 'upload'
}
const openLibrary = ()=>{
detailData.selectTitle = 'library'
getDetailListDom.libraryList.init()
}
const addElement = (data:any)=>{
let value = {
designType:data.designType,
level2Type:data.level2Type,
minIOPath:data.minIOPath,
url:data.path,
}
store.commit('DesignDetail/setCurrentPrintElement',value)
}
const selectImgItem = (data:any)=>{
let value = {
data,
}
if(detailData.currentDetailType != 'print' && detailData.currentDetailType != 'element'){
store.commit('DesignDetail/setNewDetail',value)
}else{
store.commit('DesignDetail/setCurrentPrintElement',null)
store.commit('DesignDetail/setCurrentPrintElement',data)
}
}
return{
...toRefs(detailData),
...toRefs(getDetailListData),
...toRefs(getDetailListDom),
openCurrent,
openUpload,
openLibrary,
selectImgItem,
addElement,
}
},
provide() {
return {
}
},
})
</script>
<style lang="less" scoped>
.element{
// width: 34rem;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
> .detailText{
margin-bottom: 1rem;
}
> .select_element{
width: 100%;
height: 23.5rem;
padding: 1rem;
text-align: center;
border-radius: .5rem;
border: 1px solid #000;
// border: 1px dashed transparent;
border-radius: 1.5rem;
background: linear-gradient(#fff, #fff) padding-box,repeating-linear-gradient(-45deg,#fff 0,#fff 0.3em, #000 0,#000 0.6em);
margin-bottom: 1.4rem;
display: flex;
flex-wrap: wrap;
overflow: hidden;
justify-content: space-between;
overflow-y: auto;
justify-content: flex-start;
> img{
object-fit: contain;
height: 9rem;
width: 9rem;
overflow-y: auto;
margin-bottom: 1rem;
margin: 1rem;
cursor: pointer;
}
> .active{
width: 100%;
height: 100%;
margin: 0;
margin-bottom: 0;
}
> div{
height: 100%;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
> i{
font-size: 10rem;
}
}
}
}
</style>

View File

@@ -4,6 +4,7 @@
<print v-show="currentDetailType == 'print'"></print>
<color v-if="currentDetailType == 'color'"></color>
<element v-show="currentDetailType == 'element'"></element>
<accessory v-show="currentDetailType == 'accessory'"></accessory>
<models v-show="currentDetailType == 'models'"></models>
<addDetails ref="addDetails" @setSloganData="setSloganData"></addDetails>
</div>
@@ -19,12 +20,13 @@ import sketch from './sketch.vue'
import print from './print.vue'
import color from './colorBox/index.vue'
import element from './element.vue'
import accessory from './accessory.vue'
import models from './models.vue'
import addDetails from '@/component/Detail/addDetails.vue'
export default defineComponent({
components:{
sketch,print,color,addDetails,element,models
sketch,print,color,addDetails,element,models,accessory
},
setup(props,{emit}) {
const store = useStore();

View File

@@ -164,7 +164,9 @@ export default defineComponent({
// data.selectObject = JSON.parse(JSON.stringify(newVal))
// })
const init = (storeData:any)=>{
data.selectObject = JSON.parse(JSON.stringify(storeData))
// if(props.status == 'edit'){
data.selectObject = JSON.parse(JSON.stringify(storeData))
// }
}
const dataDom = reactive({
habitSetStyle:null as any,
@@ -215,7 +217,7 @@ export default defineComponent({
sex:data.selectObject.sex,
// sex:data.show.gender?data.selectObject.sex:null,
systemDesignerPercentage:data.show.systemDesigner?data.selectObject.systemDesignerPercentage:null,
position:data.show.position?data.selectObject.position.value:'Overall',
position:data.show.position?data.selectObject.position?.value:'Overall',
ageGroup:data.show.style?data.selectObject.ageGroup:null,
userBrandDna:data.selectObject.userBrandDna,
brandPercentage:data.selectObject.brandPercentage,
@@ -280,8 +282,34 @@ export default defineComponent({
onMounted(()=>{
if(props.status != 'edit'){
store.commit('createProbject')
data.selectObject = {
name: '',
id: '',
type: '',
httpType: '',
styleName: '', //项目风格
styleId: null, //项目风格
style: '',
sex: 'Female',
ageGroup: 'Adult', //年龄组
positionList: [],
position: {}, //衣服位置
userBrandDna: '', //用户品牌
userBrandDnaImg: '', //用户品牌图片
userBrandDnaName: '', //用户品牌名字
workspaceId: -1, //worspaceId
publishData: {
id: '',
portfolioDes: '',
portfolioName: '',
tagsDTO: []
}, //发布的作品数据
systemDesignerPercentage: 30,
model: [] //模特
}
}else{
data.selectObject = JSON.parse(JSON.stringify(data.selectObject_))
}
data.selectObject = JSON.parse(JSON.stringify(data.selectObject_))
data.selectObject.style = store.state.UserHabit?.mannequinStyle?.[0]?.value
data.selectObject.styleName = store.state.UserHabit?.mannequinStyle?.[0]?.name
data.selectObject.styleId = store.state.UserHabit?.mannequinStyle?.[0]?.id

View File

@@ -657,6 +657,7 @@ export default {
Print: "印花",
Color: "颜色",
Elements: "元素",
Accessory: "装饰",
Model: "模特",
CurrentSketch: "设计服装",
CurrentPrint: "设计印花",
@@ -666,6 +667,7 @@ export default {
ColorCode: "颜色代码",
ExtractColor: "提取颜色",
CurrentElement: "设计元素",
CurrentAccessory: "设计装饰",
CurrentModel: "设计模特",
NewApparel: "新服装",
NewPrint: "新印花",

View File

@@ -657,6 +657,7 @@ export default {
Print: "Print",
Color: "Color",
Elements: "Elements",
Accessory: "Accessory",
Model: "Model",
CurrentSketch: "Current Sketch",
CurrentPrint: "Current Print",
@@ -666,6 +667,7 @@ export default {
ColorCode: "Color Code",
ExtractColor: "Extract Color",
CurrentElement: "Current Element",
CurrentAccessory: "Current Accessory",
CurrentModel: "Current Model",
NewApparel: "New Apparel",
NewPrint: "New Print",