2023-01-06 16:00:15 +08:00
< template >
< div class = "library_page" >
< div class = "page_content" >
2023-10-20 17:21:45 +08:00
<!-- < img
2023-01-06 16:00:15 +08:00
class = "page_content_bg"
src = "@/assets/images/homePage/bg.png"
2023-10-20 17:21:45 +08:00
/ > - - >
2023-01-06 16:00:15 +08:00
< div class = "page_content_body" >
2024-03-21 10:49:21 +08:00
<!-- < HeaderComponent > < / HeaderComponent > -- >
2023-01-06 16:00:15 +08:00
< div class = "library_page_body" >
< div class = "library_body_left" >
2023-10-20 17:21:45 +08:00
< div >
< div class = "library_menu_list" v-for = "(menu,index) in menuList" :key="menu.title" >
< div : class = "['menu_item', selectCode==menu.code ? 'select_menu_item' :'']" @click ="selectMenuItem(menu,index)" >
< div class = "menu_item_left" >
< i :class = "[menu.icon]" > < / i >
< div > { { menu . title } } < / div >
< / div >
2024-06-01 10:02:21 +08:00
<!-- < div v-show = "menu.children.length" :class="['icon','iconfont', 'icon-xiala', menu.showChildren?'icon_rotate':'']" > < / div > - - >
2023-10-20 17:21:45 +08:00
< / div >
< div v-show = "menu.showChildren && menu.children.length" >
< div : class = "['menu_item','child_menu_item', selectCode==child.code ? 'select_menu_item' :'']" v-for = "child in menu.children" :key="child.title" @click="selectMenuItem(child,index)" >
{ { child . title } }
< / div >
< / div >
< / div >
< / div >
2023-01-06 16:00:15 +08:00
< / div >
< div class = "library_body_right" >
< div class = "library_right_header" >
< div class = "library_header_left" >
2023-11-22 09:37:30 +08:00
< div class = "header_operate_item pointer" : class = "{operate_select:uploadGenerate == 'Upload'}" @click ="uploadGenerateOpen('Upload')" >
< div > { { $t ( 'LibraryPage.Organize' ) } } < / div >
2023-01-06 16:00:15 +08:00
< / div >
2024-06-17 09:39:01 +08:00
< div v-show = "selectCode != 'Models' && selectCode != 'DesignElements'" class='header_operate_item pointer' :class="{operate_select:uploadGenerate == 'Generate'}" @click="uploadGenerateOpen('Generate')" > {{ $ t ( ' LibraryPage.Generate ' ) }} < / div >
2023-01-06 16:00:15 +08:00
< / div >
< div class = "librart_headr_right" >
2024-06-01 10:02:21 +08:00
< div class = "select_block" v-show = "selectCode == 'Sketchboard' || selectCode == 'Models'|| selectCode == 'DesignElements'|| selectCode == 'Printboard'" >
2023-10-11 17:34:14 +08:00
< a-select
ref = "select"
2024-06-01 10:02:21 +08:00
v - show = "selectCode != 'DesignElements' && selectCode != 'Printboard'"
v - model : value = "sex"
2023-10-11 17:34:14 +08:00
: options = "sexList"
@ change = "sexChange"
>
< template # suffixIcon
> < span
class = "icon iconfont icon-xiala"
style = "color: #343579"
> < / s p a n
> < / template >
< / a-select >
2023-01-06 16:00:15 +08:00
< a-select
ref = "select"
2024-06-01 10:02:21 +08:00
v - show = "designTypeList[selectCode]?.[0]?.value && selectCode != 'Sketchboard'"
v - model : value = "designType"
: options = "designTypeList[selectCode]"
@ change = "handleChange"
: fieldNames = "{ label: 'name', value: 'value' }"
>
< template # suffixIcon
> < span
class = "icon iconfont icon-xiala"
style = "color: #343579"
> < / s p a n
> < / template >
< / a-select >
< a-select
ref = "select"
v - show = "designTypeList[selectCode]?.[0]?.value && selectCode == 'Sketchboard' && uploadGenerate != 'Generate'"
2024-06-17 09:39:01 +08:00
v - model : value = "designType"
2024-06-01 10:02:21 +08:00
: options = "designTypeList[selectCode]"
2023-01-06 16:00:15 +08:00
@ change = "handleChange"
2024-06-01 10:02:21 +08:00
: fieldNames = "{ label: 'name', value: 'value' }"
2023-01-06 16:00:15 +08:00
>
< template # suffixIcon
> < span
class = "icon iconfont icon-xiala"
style = "color: #343579"
> < / s p a n
> < / template >
< / a-select >
< / div >
< / div >
< / div >
< div class = "libray_right_content" >
2023-10-20 17:21:45 +08:00
< div class = "right_content_body" v-show = "uploadGenerate =='Upload'" >
2024-06-17 09:39:01 +08:00
< div class = "content_body_header" v-show = "selectCode == 'DesignElements'" >
2024-06-26 17:26:31 +08:00
< div style = "font-size:1.5rem;" > { { $t ( 'LibraryPage.generated' ) } } < / div >
2024-06-17 09:39:01 +08:00
< / div >
<!-- < div class = "content_body_header" > -- >
< div class = "content_body_header" v-show = "selectCode != 'DesignElements'" >
2023-10-20 17:21:45 +08:00
< div class = "content_body_header_left" >
2024-01-10 09:34:32 +08:00
< div class = "content_body_header_right" >
2023-11-22 09:37:30 +08:00
< div : class = "['header_operate_item' , 'fontSize','active']" >
< a-upload
2024-01-27 15:20:23 +08:00
: capture = "null"
2023-11-22 09:37:30 +08:00
v - show = "uploadGenerate == 'Upload'"
: before - upload = "beforeUpload"
: customRequest = "customRequest "
: multiple = "selectCode != 'Models'"
: maxCount = "15"
accept = ".jpg,.png,.jpeg,.bmp"
@ change = "fileUploadChange"
>
< div > { { $t ( 'LibraryPage.Upload' ) } } < / div >
< / a-upload >
< / div >
2023-10-30 17:26:36 +08:00
< div : class = "['header_operate_item' , 'fontSize',selectImgList.length>0?'active':'']" @click ="deleteBatchPic()" > {{ $ t ( ' LibraryPage.Delete ' ) }} < / div >
2024-01-04 14:51:57 +08:00
< div : class = "['header_operate_item' , 'fontSize',selectImgList.length>0?'active':'']" @click ="showRenameModal(selectImgList,'batch')" > {{ $ t ( ' LibraryPage.Rename ' ) }} < / div >
2023-10-20 17:21:45 +08:00
< / div >
< div class = "content_search_block" >
2024-07-02 14:15:11 +08:00
< input
class = "search_input"
: placeholder = "$t('LibraryPage.inputContent1')"
v - model = "searchPictureName"
@ keydown . enter = "getLibraryList('')" >
2023-11-16 09:44:53 +08:00
< div class = "search_cascader" >
2023-11-16 17:23:17 +08:00
< el-cascader
: options = "options"
2023-11-22 17:05:09 +08:00
filterable
2023-11-16 17:23:17 +08:00
v - model = "value.labelValue"
: collapse - tags = "true"
: show - all - levels = "false"
: clearable = "true"
2023-11-29 16:30:17 +08:00
: placeholder = "$t('LibraryPage.Select')"
2024-01-10 09:34:32 +08:00
: max - collapse - tags = 3
2023-11-16 17:23:17 +08:00
: props = "props"
: collapse - tags - tooltip = "true"
ref = "cascader"
popper - class = "libraryPageCascader"
@ visible - change = "dropdownVisibleChange"
>
2023-11-22 17:05:09 +08:00
< template # empty >
< div >
2023-11-29 16:30:17 +08:00
{ { $t ( 'LibraryPage.Select' ) } }
2023-11-22 17:05:09 +08:00
< / div >
< / template >
2023-11-16 17:23:17 +08:00
< / el-cascader >
2023-11-16 09:44:53 +08:00
< / div >
2023-11-22 09:37:30 +08:00
< div class = "intersection" >
< div :title = "$t('LibraryPage.unionSet')" @click ="()=>intersection = 1" v-show = "intersection == 0" :class="['icon', 'iconfont','icon-bingji',]" > < / div >
< div :title = "$t('LibraryPage.intersection')" @click ="()=>intersection = 0" v-show = "intersection == 1" :class="['icon', 'iconfont','icon-bingji1',]" > < / div >
< / div >
2024-02-02 17:42:39 +08:00
<!-- < div class = "search_icon_block" @click ="getLibraryList('')" > < span class = "icon iconfont icon-sousuo" > < / span > < / div > -- >
< div class = "generage_btn search_icon_block" @click ="getLibraryList('')" > < span class = "icon iconfont icon-sousuo" > < / span > < / div >
2023-10-20 17:21:45 +08:00
< / div >
< / div >
2023-01-06 16:00:15 +08:00
< div v-show = "imgList.length" :class="['check_all_block',selectImgList.length == imgList.length ? 'check_all' : '']" @click="selectAllImg()" >
< div class = "check_block" > < div class = "check_block_body" v-show = "selectImgList.length == imgList.length && imgList.length" > < / div > < / div >
2023-10-30 17:26:36 +08:00
< div > { { $t ( 'LibraryPage.all' ) } } < / div >
2023-01-06 16:00:15 +08:00
< / div >
< / div >
< div class = "content_body_table scroll_style" >
2023-11-03 11:16:42 +08:00
< div class = "content_img_item" v-for = "(img,index) in imgList" :key="img.id" @click="selectImgItem(img)" :draggable="true" >
2023-01-06 16:00:15 +08:00
< div : class = "['content_img_item_block', selectImgList.indexOf(img.id) > -1 ? 'select_item_img' :'']" >
< img v-lazy = "img.url" :key="img.url" :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" />
2024-06-17 09:39:01 +08:00
< div class = "img_item_hover" v-show = "selectCode != 'DesignElements'" >
2023-01-06 16:00:15 +08:00
< div class = "img_operate_content" >
2023-11-30 10:54:22 +08:00
< div class = "img_operate_block" :title = "t('LibraryPage.Point')" @click.stop ="editPlacementClick(img)" v-show = "selectCode === 'Models'" >
< span class = "icon iconfont icon-dianwei operate_icon" > < / span >
2023-01-06 16:00:15 +08:00
< / div >
2024-03-04 16:11:50 +08:00
< div class = "img_operate_block" :title = "t('LibraryPage.Rename')" @click.stop ="showRenameModal(img,'total')" >
2023-11-30 10:54:22 +08:00
< span class = "icon iconfont icon-tianxie operate_icon" > < / span >
2023-01-06 16:00:15 +08:00
< / div >
2023-11-30 10:54:22 +08:00
< div class = "img_operate_block" :title = "t('LibraryPage.Delete')" @click.stop ="deleteSinglePic(img,index)" >
2023-01-06 16:00:15 +08:00
< span class = "icon iconfont icon-shanchu operate_icon" > < / span >
< / div >
< / div >
< / div >
< / div >
< div class = "content_img_name" > { { img . name } } < / div >
< / div >
< div class = "no_data_block" v-show = "!imgList.length && !isShowMark" >
< img src = "@/assets/images/homePage/null_img.png" >
< / div >
< / div >
< div class = "table_pagination" v-show = "imgList.length" >
< a-pagination
v - model : current = "currentPage"
v - model : pageSize = "pageSize"
: total = "total"
: showQuickJumper = "true"
: showSizeChanger = "false"
@ change = "changePage"
/ >
< / div >
< / div >
2023-10-20 17:21:45 +08:00
< div class = "right_content_body" v-show = "uploadGenerate !='Upload'" >
< div class = "content_body_header content_body_header_generate" >
2024-06-01 10:02:21 +08:00
< div class = "content_body_header_right" > < / div >
2024-06-17 09:39:01 +08:00
< div v-show = "selectCode == 'Printboard' && scene?.value == 'Pattern'" class="printModel" >
2024-06-01 10:02:21 +08:00
< div @click.stop ="PrintModel" > {{ printModel.name }} < / div >
< ul v-show = "printModel.optype" >
< li class = "printModel_item" @click ="setprintModel(1)" > {{ $ t ( ' LibraryPage.Model1 ' ) }} < / li >
< li class = "printModel_item" @click ="setprintModel(2)" > {{ $ t ( ' LibraryPage.Model2 ' ) }} < / li >
< li class = "printModel_item" @click ="setprintModel(3)" > {{ $ t ( ' LibraryPage.Model3 ' ) }} < / li >
< / ul >
2023-10-20 17:21:45 +08:00
< / div >
2024-04-15 16:09:33 +08:00
< div class = "input_border" >
< div class = "input_box" :class = "{active:inputShow}" >
2024-06-01 10:02:21 +08:00
< div class = "input_box_btnBox" >
2024-06-17 15:15:13 +08:00
< div class = "upload_item" v-show = "selectCode !== 'Moodboard' && ((selectCode == 'Printboard' && scene?.value == 'Pattern') || (selectCode == 'Printboard' && scene?.value == 'Slogan') || selectCode == 'Sketchboard')" >
2024-06-01 10:02:21 +08:00
< div
class = "upload_file_item"
v - for = "(file, index) in selectGenerateList"
: key = "file"
>
< div
class = "upload_file_item_content"
v - show = "file?.status === 'uploading'"
>
< a-spin :indicator = "indicator" tip = "Uploading..." / >
< / div >
< div
class = "upload_file_item_content"
v - show = "file?.status === 'done' || file?.base64"
>
< img :src = "file?.imgUrl" class = "upload_img" / >
< div class = "delete_like_file_block" :class = "[driver__.driver?'hideEvents':'']" >
< span class = "icon iconfont icon-shanchu operate_icon" @click.stop ="deleteFile(index)" > < / span >
< / div >
< / div >
< / div >
< / div >
2024-06-26 17:26:31 +08:00
<!-- < a-popover >
2024-06-17 11:32:31 +08:00
< template # content >
< p > Seed < / p >
< / template >
2024-06-20 10:36:45 +08:00
< input class = "search_seed" max = "9999" v-show = "selectCode == 'Printboard' && scene?.value == 'Logo'" @input="ifSeedValue" v-model="searchPictureSeed" type="Number" placeholder='Seed' min="0" >
2024-06-26 17:26:31 +08:00
< / a-popover > -- >
2024-06-01 10:02:21 +08:00
< input
class = "search_input "
@ input = "ifMaximumLength"
: maxlength = 'inputShow?0:9999'
@ keydown . enter = "getgenerate"
@ click = "inputFocus()"
2024-07-02 14:15:11 +08:00
: placeholder = "(scene?.value == 'Slogan' && selectCode == 'Printboard')?isSloganHint:$t('LibraryPage.inputContent2')"
2024-06-01 10:02:21 +08:00
v - model = "captionGeneration" >
2024-07-03 17:32:06 +08:00
< i class = "fi fi-br-upload" :title = "$t('Generate.uploadTitle')" v-show = "!isTextarea && upload.level1Type !== 'Moodboard' && scene?.value != 'Slogan' && scene?.value != 'Logo'" >
2024-06-01 10:02:21 +08:00
< a-upload
class = "search_upImg"
: capture = "null"
: action = "uploadUrl + '/api/element/upload'"
list - type = "picture-card"
: before - upload = "beforeUpload"
: data = " {
... upload
} "
: headers = "{Authorization:token}"
v - model : file - list = "selectGenerateList"
multiple
: maxCount = "1"
accept = ".jpg,.png,.jpeg,.bmp"
@ change = "generateFileUploadChange"
>
< / a-upload >
< / i >
2024-07-03 17:32:06 +08:00
< i v-show = "selectCode == 'Printboard' && scene?.value == 'Slogan'" :title="$t('Generate.sloganTitle')" @click.stop="setSlogan" class="fi fi-rr-poll-h" > < / i >
2024-06-01 10:02:21 +08:00
< i v-show = "!isTextarea" class="fi fi-br-expand" @click.stop="setTextareaShow" > < / i >
< i v-show = "isTextarea" class="fi fi-bs-compress" @click.stop="setTextareaShow" > < / i >
< / div >
2024-05-20 13:07:42 +08:00
< textarea
v - show = "isTextarea "
class = "search_textarea "
@ input = "ifMaximumLength"
: maxlength = 'inputShow?0:9999'
2024-06-01 10:02:21 +08:00
@ keydown . enter = "getgenerate"
2024-06-17 15:15:13 +08:00
@ click . stop = ""
2024-05-20 13:07:42 +08:00
v - model = "captionGeneration"
> < / textarea >
2024-04-26 16:37:15 +08:00
< div v-show = "!isGenerate[selectCode]" class="generage_btn started_btn" @click.stop="getgenerate" >
2024-04-25 17:16:34 +08:00
{ { $t ( 'LibraryPage.Generate' ) } }
<!-- < div v-show = "isGenerate"><a-spin size="large" / > < / div > -- >
< / div >
2024-04-26 16:37:15 +08:00
< div v-show = "isGenerate[selectCode] && !remGenerate[selectCode]" class="generage_btn started_btn" @click.stop="getgenerate" >
2024-04-25 17:16:16 +08:00
< i class = "fi fi-br-loading" > < / i >
< / div >
2024-04-26 16:33:41 +08:00
< div v-show = "remGenerate[selectCode]" @click="removeGenerate" class="generage_btn started_btn" >
{ { $t ( 'Generate.Close' ) } }
< / div >
2024-06-01 10:02:21 +08:00
< span class = "inputShowText" ref = "inputShowText" > < / span >
2024-04-15 16:09:33 +08:00
< / div >
2024-06-20 10:36:45 +08:00
< div class = "search_keyword" v-if = "workspace?.allKeywordsByStyle" v-show="isInputFocus" @click.stop="" >
2024-06-01 10:02:21 +08:00
< div class = "search_keyword_center" >
< div class = "search_keyword_center_left" >
2024-06-20 10:36:45 +08:00
< div v-for = "item in workspace?.allKeywordsByStyle?.[selectCode]" @click.stop="cliSetKeyword(item)" class="search_keyword_center_item" > {{ item }} < / div >
2023-10-20 17:21:45 +08:00
< / div >
< / div >
< / div >
< / div >
< / div >
< div class = "content_body_table scroll_style" >
2024-04-30 11:45:19 +08:00
< div class = "content_img_item" v-for = "(img,index) in generateList[selectCode]" :key="img.id" :class="[img.status != 'Success'?'hideEvents':'']" v-show="img.status == 'Success'"
: draggable = "!isGenerate[selectCode]" @ dragstart = "startDrag($event,index)" @ dragover . prevent @ drop = "drop($event,index)" >
2023-10-20 17:21:45 +08:00
< div : class = "['content_img_item_block', selectImgList.indexOf(img.id) > -1 ? 'select_item_img' :'']" >
2024-04-29 15:12:27 +08:00
<!-- < img v-show = "img.status != 'Success'" :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" src="@/assets/images/homePage/loading.gif" alt="" > - - >
< img : class = "['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" v-lazy = "img.imgUrl" >
2024-04-25 14:39:28 +08:00
2024-04-29 15:12:27 +08:00
< div class = "img_item_hover" >
2023-10-20 17:21:45 +08:00
< div class = "img_operate_content" >
2024-04-30 11:45:19 +08:00
< div class = "img_operate_block" :title = "t('LibraryPage.Delete')" @click.stop ="deleteGenerate(index)" >
< span class = "icon iconfont icon-shanchu operate_icon" > < / span >
2023-10-20 17:21:45 +08:00
< / div >
< / div >
2024-01-02 13:04:57 +08:00
< div class = "img_operate_content left" :class = "[driver__.driver?'hideEvents':'']" >
< div class = "img_operate_block" >
< i class = "fi fi-bs-expand-arrows-alt" @click.stop ="scaleImage(index)" > < / i >
2024-04-30 11:45:19 +08:00
< / div >
< div class = "img_operate_block" >
< i v-if = "!img.like" class="fi fi-rr-heart operate_icon" @click.stop="likeFile(img,'like')" > < / i >
2024-05-16 09:41:16 +08:00
< i v-else class = "fi fi-sr-heart operate_icon" :adminLike = "!!img.like" @click.stop ="likeFile(img,'noLike')" > < / i >
2024-01-02 13:04:57 +08:00
< / div >
< / div >
2023-11-15 09:59:24 +08:00
< / div >
2024-06-01 10:02:21 +08:00
< sketchCategory v-show = "selectCode == 'Sketchboard'" :disignTypeList="designTypeList[selectCode]" :generateList="generateList['Sketchboard']" :item="img" > < / sketchCategory >
2023-10-20 17:21:45 +08:00
< / div >
2023-10-31 16:04:40 +08:00
< div class = "content_img_name" > < / div >
2023-10-20 17:21:45 +08:00
< / div >
2024-04-25 17:16:16 +08:00
< div class = "no_data_block" v-show = "!generateList[selectCode].length && !isShowMark" >
2023-10-20 17:21:45 +08:00
< img src = "@/assets/images/homePage/null_img.png" >
< / div >
< / div >
< / div >
2023-01-06 16:00:15 +08:00
< / div >
< / div >
< / div >
< / div >
< / div >
2024-02-19 15:30:49 +08:00
< searchLabel ref = "searchLabel" > < / searchLabel >
2024-01-02 13:04:57 +08:00
< scaleImage ref = "scaleImage" > < / scaleImage >
2023-01-06 16:00:15 +08:00
< ModelPlacement ref = "ModelPlacement" @submitModelPlacement ="getLibraryList" > < / ModelPlacement >
2023-11-28 16:21:00 +08:00
< ModelPlacementMobile ref = "ModelPlacementMobile" @submitModelPlacement ="getLibraryList" > < / ModelPlacementMobile >
2023-11-07 09:30:25 +08:00
< setLabel ref = "setLabel" > < / setLabel >
2024-06-17 09:39:01 +08:00
< createSlogan ref = "createSlogan" @setSloganData ="setSloganData" > < / createSlogan >
2023-01-06 16:00:15 +08:00
<!-- 蒙层 start -- >
< div class = "mark_loading" v-show = "isShowMark" >
< a-spin size = "large" / >
2024-04-19 10:49:05 +08:00
2024-04-26 16:33:41 +08:00
<!-- < div v-show = "remGenerate" class="mark_loading_btn" @click="removeGenerate" > {{ $ t ( ' Generate.Close ' ) }} < / div > - - >
2024-01-25 15:39:43 +08:00
2023-01-06 16:00:15 +08:00
< / div >
<!-- 蒙层 end -- >
2024-03-21 10:49:21 +08:00
<!-- < RobotAssist > < / RobotAssist > -- >
2023-10-11 17:34:14 +08:00
2023-01-06 16:00:15 +08:00
< / div >
< / template >
< script lang = "ts" >
2023-10-20 17:21:45 +08:00
import { LoadingOutlined } from "@ant-design/icons-vue" ;
2024-06-01 10:02:21 +08:00
import { defineComponent , h , ref , createVNode , nextTick , reactive , provide , computed } from 'vue'
2024-03-21 10:49:21 +08:00
// import HeaderComponent from "@/component/HomePage/Header.vue";
2023-01-06 16:00:15 +08:00
import ModelPlacement from '@/component/LibraryPage/ModelPlacement.vue' ;
2024-06-26 17:26:31 +08:00
// import ModelPlacement from '@/component/LibraryPage/ModelPlacementUpdata.vue';
2023-11-07 09:30:25 +08:00
import setLabel from '@/component/LibraryPage/setLabel.vue' ;
2023-01-06 16:00:15 +08:00
import ModelPlacementMobile from '@/component/LibraryPage/ModelPlacementMobile.vue' ;
2024-02-19 15:30:49 +08:00
import searchLabel from '@/component/LibraryPage/searchLabel.vue' ;
2024-03-21 10:49:21 +08:00
// import RobotAssist from "@/component/HomePage/RobotAssist.vue";
2023-11-03 11:16:42 +08:00
import { Modal , message , Upload , CascaderProps } from 'ant-design-vue' ;
2023-01-06 16:00:15 +08:00
import { ExclamationCircleOutlined } from '@ant-design/icons-vue' ;
import { getUploadUrl , isMoible } from '@/tool/util'
2023-10-11 17:34:14 +08:00
import { useStore } from "vuex" ;
2023-01-06 16:00:15 +08:00
import { Https } from "@/tool/https" ;
2023-10-20 17:21:45 +08:00
import { getCookie } from "@/tool/cookie" ;
2024-01-02 13:04:57 +08:00
import scaleImage from "@/component/HomePage/scaleImage.vue" ;
2024-04-25 14:39:28 +08:00
import sketchCategory from "@/component/HomePage/sketchCategory.vue" ;
2023-10-30 17:26:36 +08:00
import { useI18n } from "vue-i18n" ;
2023-11-16 17:23:17 +08:00
import { ElCascader } from 'element-plus'
2024-01-24 10:34:05 +08:00
import { remove } from "jszip" ;
2024-06-17 09:39:01 +08:00
import createSlogan from "@/component/HomePage/createSlogan.vue" ;
2023-01-06 16:00:15 +08:00
export default defineComponent ( {
components : {
2024-03-21 10:49:21 +08:00
// HeaderComponent,
2023-01-06 16:00:15 +08:00
ModelPlacement ,
2023-11-07 09:30:25 +08:00
setLabel ,
2023-01-06 16:00:15 +08:00
ModelPlacementMobile ,
2024-02-19 15:30:49 +08:00
searchLabel ,
2024-03-21 10:49:21 +08:00
// RobotAssist,
2023-11-16 17:23:17 +08:00
ElCascader ,
2024-01-02 13:04:57 +08:00
scaleImage ,
2024-04-25 14:39:28 +08:00
sketchCategory ,
2024-06-17 09:39:01 +08:00
createSlogan ,
2023-01-06 16:00:15 +08:00
} ,
setup ( ) {
2024-06-01 10:02:21 +08:00
const store = useStore ( ) ;
2023-11-16 09:44:53 +08:00
let menuList = computed ( ( ) => {
return [
{ title : useI18n ( ) . t ( 'LibraryPage.Moodboard' ) , code : 'Moodboard' , icon : 'fi fi-rr-grid' , showChildren : false , children : [ ] } ,
{ title : useI18n ( ) . t ( 'LibraryPage.Prints' ) , code : 'Printboard' , icon : 'fi fi-rs-objects-column' , showChildren : false , children : [ ] } ,
// {title:'Sketches',code:'SketchboardFirst',icon:'fi icon iconfont icon-a-waitao_changkuanwaitao11x',showChildren:false,children:[{title:'Apparel',code:'Sketchboard'}]},
{ title : useI18n ( ) . t ( 'LibraryPage.Sketches' ) , code : 'Sketchboard' , icon : 'fi icon iconfont icon-a-waitao_changkuanwaitao11x' , showChildren : false , children : [ ] } ,
2024-06-01 10:02:21 +08:00
// {title:'Market Sketch',code:'Elements',icon:'icon-fuwushichang',showChildren:false,children:[]},
2024-07-08 09:42:21 +08:00
{ title : useI18n ( ) . t ( 'LibraryPage.DesignElements' ) , code : 'DesignElements' , icon : 'fi fi-ss-puzzle-piece' , showChildren : false , children : [ ] } ,
2023-11-16 09:44:53 +08:00
{ title : useI18n ( ) . t ( 'LibraryPage.Mannequins' ) , code : 'Models' , icon : 'fi fi-rs-people' , showChildren : false , children : [ ] } ,
]
} )
2023-01-06 16:00:15 +08:00
let selectImgList : any = ref ( [ ] )
let selectCode : any = ref ( 'Moodboard' )
let searchPictureName = ref ( '' )
2024-06-17 09:39:01 +08:00
let searchPictureSeed : any = ref ( 0 ) ;
2024-06-01 10:02:21 +08:00
let designType : any = ref ( {
name : '' ,
value : ''
} )
2024-06-20 10:36:45 +08:00
let sex : any = ref ( '' )
2024-06-01 10:02:21 +08:00
const sexList : any = ref ( [ ] )
const printType = computed ( ( ) => {
return store . state . UserHabit . printType ;
} ) ;
const designElementsType = computed ( ( ) => {
return store . state . UserHabit . designElementsType ;
} ) ;
const positionType = computed ( ( ) => {
return store . state . UserHabit . Position ;
} ) ;
let designTypeList : any = ref ( {
Sketchboard : positionType ,
Moodboard : [ ] ,
Printboard : printType ,
Models : [ ] ,
DesignElements : designElementsType ,
} )
2023-01-06 16:00:15 +08:00
let imgList = ref ( [ ] )
let currentPage : any = ref ( 1 )
let pageSize : any = ref ( 18 )
let total : any = ref ( 20 )
let uploadUrl : any = ref ( '' )
let currentUploadFileNum : any = ref ( 0 ) //当次上传文件数量
let isShowMark : any = ref ( false ) //蒙层
2023-10-20 17:21:45 +08:00
let uploadGenerate : any = ref ( 'Upload' )
let inputShow = ref ( false )
let generateCheckbox : any = ref ( )
2024-06-01 10:02:21 +08:00
let captionGeneration : any = ref ( '' )
2023-10-20 17:21:45 +08:00
let inputTime = ref ( )
2024-04-25 17:16:16 +08:00
let generateList : any = ref ( {
Sketchboard : [ ] ,
Moodboard : [ ] ,
2024-04-26 16:33:41 +08:00
Printboard : [ ] ,
2024-06-01 10:02:21 +08:00
Models : [ ] ,
DesignElements : [ ] ,
2024-04-25 17:16:16 +08:00
} )
2023-10-20 17:21:45 +08:00
let selectGenerateList : any = ref ( [ ] )
2023-10-27 11:09:32 +08:00
let printModel = ref ( {
num : 1 ,
optype : false ,
2023-12-28 10:36:48 +08:00
name : useI18n ( ) . t ( 'LibraryPage.Model1' )
2023-10-27 11:09:32 +08:00
} )
2023-10-30 17:26:36 +08:00
let { t } = useI18n ( )
2023-11-09 10:16:18 +08:00
let type : any = {
selectCode : selectCode ,
}
provide ( 'type' , type )
2023-11-13 17:33:41 +08:00
let value = ref ( {
labelValue : [ ] ,
editLabelValue : [ ] ,
} )
2023-11-16 17:23:17 +08:00
2023-11-22 09:37:30 +08:00
let intersection = ref ( 1 )
2023-11-16 09:44:53 +08:00
let isTest = ref ( )
2024-01-02 13:04:57 +08:00
let driver _ _ : any = computed ( ( ) => {
return store . state . Guide . guide
} )
2024-04-26 16:33:41 +08:00
let generateTime : any = ref ( {
Sketchboard : '' ,
Moodboard : '' ,
Printboard : '' ,
2024-06-01 10:02:21 +08:00
Models : '' ,
DesignElements : '' ,
2024-04-26 16:33:41 +08:00
} )
2024-04-29 15:12:27 +08:00
let generateProceedList = ref ( [ ] )
2024-04-26 16:37:15 +08:00
let isGenerate : any = ref ( {
Sketchboard : false ,
Moodboard : false ,
Printboard : false ,
2024-06-01 10:02:21 +08:00
Models : false ,
DesignElements : false ,
2024-04-26 16:37:15 +08:00
} )
2024-04-26 16:33:41 +08:00
let remGenerate : any = ref ( {
2024-04-29 15:12:27 +08:00
Sketchboard : false ,
Moodboard : false ,
Printboard : false ,
2024-06-01 10:02:21 +08:00
Models : false ,
DesignElements : false ,
2024-04-29 15:12:27 +08:00
} )
let remGenerateTime : any = ref ( {
2024-04-26 16:33:41 +08:00
Sketchboard : '' ,
Moodboard : '' ,
Printboard : '' ,
2024-06-01 10:02:21 +08:00
Models : '' ,
DesignElements : '' ,
2024-04-26 16:33:41 +08:00
} )
2024-06-01 10:02:21 +08:00
let scene : any = ref ( { } )
2024-04-30 11:45:19 +08:00
let dragIdx : any = ref ( 0 )
2024-02-02 17:42:39 +08:00
let getLibraryListInputTime : any = ref ( )
2024-02-19 15:30:49 +08:00
const options : any = ref ( [
] ) ;
let props = {
multiple : true ,
checkStrictly : true ,
emitPath : true ,
children : 'childList' ,
value : 'id' ,
label : 'classificationName' ,
}
2024-05-20 13:07:42 +08:00
let isTextarea = ref ( false )
2024-06-01 10:02:21 +08:00
let workspace : any = ref ( { } )
2024-06-26 17:26:31 +08:00
let generateLevel2 : any = { }
2024-07-02 14:15:11 +08:00
let isSloganHint : any = ref ( '' )
2023-01-06 16:00:15 +08:00
return {
menuList ,
selectImgList ,
selectCode ,
searchPictureName ,
2024-06-17 09:39:01 +08:00
searchPictureSeed ,
2023-10-11 17:34:14 +08:00
sexList ,
sex ,
2024-06-01 10:02:21 +08:00
designTypeList ,
2023-01-06 16:00:15 +08:00
designType ,
imgList ,
currentPage ,
pageSize ,
total ,
uploadUrl ,
currentUploadFileNum ,
isShowMark ,
2023-10-20 17:21:45 +08:00
store ,
uploadGenerate ,
inputShow ,
generateCheckbox ,
captionGeneration ,
inputTime ,
generateList ,
selectGenerateList ,
2023-10-30 17:26:36 +08:00
printModel ,
2023-11-13 17:33:41 +08:00
value ,
2023-10-31 16:04:40 +08:00
t ,
2023-11-22 09:37:30 +08:00
intersection ,
2023-11-16 09:44:53 +08:00
isTest ,
2024-01-24 10:34:05 +08:00
driver _ _ ,
generateTime ,
2024-04-29 15:12:27 +08:00
generateProceedList ,
2024-01-24 10:34:05 +08:00
isGenerate ,
2024-01-26 13:16:47 +08:00
remGenerate ,
remGenerateTime ,
2024-06-01 10:02:21 +08:00
scene ,
2024-04-30 11:45:19 +08:00
dragIdx ,
2024-02-02 17:42:39 +08:00
getLibraryListInputTime ,
2024-02-19 15:30:49 +08:00
props ,
options ,
2024-05-20 13:07:42 +08:00
isTextarea ,
2024-06-01 10:02:21 +08:00
workspace ,
2024-06-26 17:26:31 +08:00
generateLevel2 ,
2024-07-02 14:15:11 +08:00
isSloganHint ,
2023-01-06 16:00:15 +08:00
}
2023-10-20 17:21:45 +08:00
} ,
data ( this _ ) {
return {
2023-11-09 10:16:18 +08:00
userInfo : { } ,
2023-10-20 17:21:45 +08:00
indicator : h ( LoadingOutlined , {
style : {
fontSize : "2.4rem" ,
} ,
spin : true ,
} ) ,
upload : {
isPin : 0 ,
2023-12-11 15:12:53 +08:00
gender : '' ,
2023-10-20 17:21:45 +08:00
level1Type : this _ . selectCode ,
timeZone : Intl . DateTimeFormat ( ) . resolvedOptions ( ) . timeZone ,
} ,
token : "" ,
2024-06-01 10:02:21 +08:00
isInputFocus : false ,
2023-10-20 17:21:45 +08:00
} ;
2023-01-06 16:00:15 +08:00
} ,
2023-12-13 16:09:17 +08:00
watch : {
sex ( newVal , oldVal ) {
2024-06-20 10:36:45 +08:00
this . upload . gender = newVal
2023-12-13 16:09:17 +08:00
} ,
2024-02-02 17:42:39 +08:00
searchPictureName ( newVal , oldVal ) {
2024-02-02 17:50:08 +08:00
// clearTimeout(this.getLibraryListInputTime)
// this.getLibraryListInputTime = setTimeout(() => {
// if(newVal != oldVal){
// this.currentPage = 1
// }
// }, 500);
2024-02-02 17:42:39 +08:00
} ,
2024-07-02 14:15:11 +08:00
scene : {
handler ( newVal , oldVal ) {
if ( this . selectCode == 'Printboard' && newVal . value == 'Slogan' ) {
let sloganType = [ 'Blue and Yellow Starry Night' , 'Green Cthulhu' , 'Red and yellow fire style' , 'Cyberpunk style' , 'City skyline buildings' , 'Red maple leaves' , 'Golden Sunflower' , 'Emerald Jungle Canopy' , 'Pink Sakura Blossom' ]
var randomNumber = Math . floor ( Math . random ( ) * sloganType . length ) ;
this . isSloganHint = sloganType [ randomNumber ]
} else {
this . isSloganHint = ''
}
}
}
2023-12-13 16:09:17 +08:00
} ,
2023-10-12 17:09:05 +08:00
async mounted ( ) {
2023-11-09 10:16:18 +08:00
let userInfo : any = getCookie ( "userInfo" )
2023-11-20 09:47:10 +08:00
let isTest : any = getCookie ( 'isTest' )
2024-01-05 16:49:49 +08:00
this . isTest = JSON . parse ( isTest )
2023-11-09 10:16:18 +08:00
this . userInfo = JSON . parse ( userInfo ) ;
2023-01-06 16:00:15 +08:00
this . uploadUrl = getUploadUrl ( )
2024-02-02 17:42:39 +08:00
this . getLibraryList ( '' )
2023-11-09 10:16:18 +08:00
this . getClass ( )
2023-10-11 17:34:14 +08:00
this . getSex ( )
2023-10-20 17:21:45 +08:00
this . token = getCookie ( "token" ) || "" ;
2024-06-01 10:02:21 +08:00
this . workspace = computed ( ( ) => {
return this . store ? . state ? . Workspace ? . workspace
} )
2023-01-06 16:00:15 +08:00
} ,
methods : {
2023-10-11 17:34:14 +08:00
getSex ( ) {
Https . axiosGet ( Https . httpUrls . workspaceenumValues , { params : { enumName : 'Sex' } } ) . then ( ( rv : any ) => {
if ( rv ) {
let arr : any = [ ]
rv . forEach ( ( item : any ) => {
2023-11-23 14:05:35 +08:00
arr . push ( {
2023-10-11 17:34:14 +08:00
value : item . name ,
2023-11-23 14:05:35 +08:00
label : item . value ,
} )
2023-10-11 17:34:14 +08:00
} ) ;
2023-12-19 16:36:48 +08:00
2024-06-20 10:36:45 +08:00
this . sex = arr [ 0 ] . value
2023-10-11 17:34:14 +08:00
this . sexList = arr
2023-10-12 17:09:05 +08:00
this . getPosition ( )
2023-10-11 17:34:14 +08:00
}
} )
} ,
async getPosition ( ) {
2024-06-01 10:02:21 +08:00
// let params
// if(this.sex.value == 'Female'){
// params = 'FemalePosition'
// }else{
// params = 'MalePosition'
// }
2024-06-20 10:36:45 +08:00
this . store . commit ( 'setPosition' , this . sex )
2024-07-09 19:10:01 +08:00
this . designType = this . designTypeList . Sketchboard ? . [ 0 ] . value
2024-06-01 10:02:21 +08:00
// await Https.axiosGet(Https.httpUrls.workspaceenumValues,{params:{enumName:params}}).then((rv: any) => {
// if (rv) {
// let arr:any = []
// rv.forEach((item:any) => {
// arr.push({
// value:item.name,
// label:item.value,
// name:item.value
// })
// });
// this.designType = arr[0]
// this.designTypeList['Sketchboard'] = arr
// // this.workspaceItem.position = this.totalTypeList[0].label
// }
// })
2023-10-11 17:34:14 +08:00
} ,
2023-11-15 09:59:24 +08:00
likeFile ( item : any , str : string ) {
2024-06-01 10:02:21 +08:00
let designType = ''
2024-07-18 11:29:59 +08:00
if ( this . selectCode == 'DesignElements' || this . selectCode == 'Printboard' ) {
2024-06-17 09:39:01 +08:00
designType = this . designType
2024-07-18 11:29:59 +08:00
} else if ( this . selectCode == 'Sketchboard' ) {
designType = item . categoryValue
2024-06-01 10:02:21 +08:00
}
2023-11-15 09:59:24 +08:00
if ( str == 'like' ) {
let data = {
generateDetailId : item . id ,
level1Type : this . selectCode ,
2023-11-16 09:44:53 +08:00
level2Type : designType ,
2024-06-20 10:36:45 +08:00
gender : this . sex ,
2023-11-15 09:59:24 +08:00
timeZone : Intl . DateTimeFormat ( ) . resolvedOptions ( ) . timeZone
}
Https . axiosPost ( Https . httpUrls . generateLike , data ) . then (
( rv ) => {
item . like = true
}
) . catch ( res => {
} ) ;
} else {
let data = {
generateDetailId : item . id ,
timeZone : Intl . DateTimeFormat ( ) . resolvedOptions ( ) . timeZone
}
Https . axiosGet ( Https . httpUrls . generateDislike , { params : data } ) . then (
( rv ) => {
item . like = false
}
) . catch ( res => {
} ) ;
}
} ,
2023-01-06 16:00:15 +08:00
selectMenuItem ( menu : any , index : any ) {
if ( menu . children ? . length ) { //证明是有子菜单
menu . showChildren = ! menu . showChildren
} else {
2023-11-16 09:44:53 +08:00
if ( menu . code != this . upload . level1Type ) {
this . selectCode = menu . code
this . currentPage = 1 ,
this . total = 0 ,
this . searchPictureName = ''
this . imgList = [ ] ,
this . selectImgList = [ ]
2024-05-20 13:07:42 +08:00
this . isTextarea = false
2023-12-13 16:09:17 +08:00
this . value . labelValue = [ ]
2024-06-01 10:02:21 +08:00
if ( this . designTypeList [ this . selectCode ] . length >= 1 ) {
2024-06-17 09:39:01 +08:00
this . designType = this . designTypeList [ this . selectCode ] [ 0 ] . value
2024-06-01 10:02:21 +08:00
} else {
2024-06-17 09:39:01 +08:00
this . designType = ''
2024-06-01 10:02:21 +08:00
}
2024-06-17 09:39:01 +08:00
if ( this . selectCode == 'DesignElements' ) this . uploadGenerate = 'Upload'
2024-06-17 15:15:13 +08:00
if ( this . selectCode == 'Printboard' ) this . uploadGenerate = 'Upload'
2024-04-26 16:33:41 +08:00
if ( this . selectCode == 'Models' ) this . uploadGenerate = 'Upload'
2024-06-01 10:02:21 +08:00
if ( this . selectCode != 'DesignElements' ) {
this . getClass ( )
}
this . getLibraryList ( '' )
2023-11-16 09:44:53 +08:00
this . captionGeneration = ''
this . selectGenerateList = [ ]
2024-04-24 13:36:27 +08:00
this . inputShow = false
2023-11-16 09:44:53 +08:00
}
2023-10-20 17:21:45 +08:00
this . upload . level1Type = menu . code
2023-01-06 16:00:15 +08:00
}
} ,
2023-10-12 17:09:05 +08:00
async sexChange ( ) {
await this . getPosition ( )
2024-06-17 09:39:01 +08:00
if ( this . uploadGenerate == 'Generate' ) return
2024-02-02 17:42:39 +08:00
this . currentPage = 1
this . getLibraryList ( '' )
2023-10-11 17:34:14 +08:00
} ,
2023-01-06 16:00:15 +08:00
handleChange ( ) {
2024-06-17 09:39:01 +08:00
this . scene = this . designTypeList [ this . selectCode ] . filter ( ( item : any ) => item . value == this . designType ) [ 0 ]
this . selectGenerateList = [ ]
2024-06-24 10:10:33 +08:00
if ( this . uploadGenerate == 'Generate' ) {
if ( this . selectCode == 'Printboard' ) {
this . captionGeneration = ''
}
return
}
2024-02-02 17:42:39 +08:00
this . currentPage = 1
this . getLibraryList ( '' )
2023-01-06 16:00:15 +08:00
} ,
fileUploadChange ( data : any ) {
let file = data . file
// let Cropper:any = this.$refs.Cropper
2023-11-20 09:47:10 +08:00
2023-01-06 16:00:15 +08:00
if ( this . selectCode == 'Models' ) {
let reader = new FileReader ( ) ;
2024-01-30 13:33:08 +08:00
//试用用户上传限制
// if(this.imgList.length+this.currentUploadFileNum > 10 && this.isTest){
// message.info(this.t('isTest.image'));
// return
// }
2023-01-06 16:00:15 +08:00
reader . onload = ( e : any ) => {
let data _new ;
if ( typeof e . target . result === 'object' ) {
// 把Array Buffer转化为blob 如果是base64不需要
data _new = window . URL . createObjectURL ( new Blob ( [ e . target . result ] ) ) ;
} else {
data _new = e . target . result ;
}
this . placementClick ( { url : data _new , file : file . originFileObj } )
} ;
// 转化为base64
// reader.readAsDataURL(file)
// 转化为blob
reader . readAsArrayBuffer ( file . originFileObj ) ;
}
} ,
//改变页码
changePage ( current : number , pageSize : number ) {
this . currentPage = current
this . pageSize = pageSize
2024-02-02 17:42:39 +08:00
this . getLibraryList ( 'page' )
2023-01-06 16:00:15 +08:00
} ,
//选择图片
selectImgItem ( imgData : any ) {
2024-06-17 09:39:01 +08:00
if ( imgData . level2Type == "DesignElements" ) return
2023-01-06 16:00:15 +08:00
if ( this . selectImgList . indexOf ( imgData . id ) === - 1 ) {
this . selectImgList . push ( imgData . id )
} else {
let index = this . selectImgList . indexOf ( imgData . id )
this . selectImgList . splice ( index , 1 )
}
} ,
//选择所有的图片
selectAllImg ( ) {
if ( this . selectImgList . length == this . imgList . length ) {
this . selectImgList = [ ]
} else {
this . selectImgList = this . imgList . map ( ( v : any ) => v . id )
}
} ,
//打开修改名称弹窗
showRenameModal ( data : any , type : any ) {
2024-02-19 15:30:49 +08:00
let searchLabel : any = this . $refs . searchLabel
searchLabel . init ( data , type )
return
2023-01-06 16:00:15 +08:00
} ,
2023-10-20 17:21:45 +08:00
uploadGenerateOpen ( str : any ) {
2024-06-17 09:39:01 +08:00
// if(str == 'Generate'){
// if(this.selectCode == 'Printboard'){
// this.scene = this.designTypeList[this.selectCode][0]
// }
// }
2024-06-28 11:50:11 +08:00
if ( this . designTypeList [ this . selectCode ] [ 0 ] ) {
this . scene = this . designTypeList [ this . selectCode ] [ 0 ]
this . designType = this . designTypeList [ this . selectCode ] [ 0 ] . value
}
2024-06-17 15:15:13 +08:00
2024-06-28 11:50:11 +08:00
2023-11-16 09:44:53 +08:00
if ( this . uploadGenerate == 'Generate' ) {
if ( str != 'Generate' ) {
2024-02-02 17:42:39 +08:00
this . getLibraryList ( '' )
2023-11-16 09:44:53 +08:00
}
2023-10-20 17:21:45 +08:00
}
2023-11-16 09:44:53 +08:00
this . uploadGenerate = str
2023-10-20 17:21:45 +08:00
} ,
2023-01-06 16:00:15 +08:00
//删除单个图片
deleteSinglePic ( data : any , index : any ) {
let _this = this
Modal . confirm ( {
2023-10-30 17:26:36 +08:00
title : this . t ( 'LibraryPage.jsContent1' ) ,
2023-01-06 16:00:15 +08:00
icon : createVNode ( ExclamationCircleOutlined ) ,
okText : 'Yes' ,
cancelText : 'No' ,
2023-10-30 17:26:36 +08:00
mask : false ,
2023-11-27 16:25:32 +08:00
centered : true ,
2023-01-06 16:00:15 +08:00
onOk ( ) {
_this . confirmDeletePic ( data , index )
}
} ) ;
} ,
2024-04-30 11:45:19 +08:00
deleteGenerate ( index : any ) {
2024-06-26 17:26:31 +08:00
// if(this.isGenerate[this.selectCode])return
let num = this . generateList [ this . selectCode ] . length
2024-04-30 11:45:19 +08:00
let _this = this
Modal . confirm ( {
title : this . t ( 'LibraryPage.jsContent1' ) ,
icon : createVNode ( ExclamationCircleOutlined ) ,
okText : 'Yes' ,
cancelText : 'No' ,
mask : false ,
centered : true ,
onOk ( ) {
2024-06-26 17:26:31 +08:00
let a = _this . generateList [ _this . selectCode ] . length - num
_this . generateList [ _this . selectCode ] . splice ( index - a , 1 )
2024-04-30 11:45:19 +08:00
}
} ) ;
} ,
startDrag ( event : any , index : any ) {
this . dragIdx = index
} ,
drop ( event : any , index : any ) {
let _teams = this . generateList [ this . selectCode ] //将hotteams存起来
let _dragitem = _teams [ this . dragIdx ] //将被拖拽的那条数据存起来
_teams . splice ( this . dragIdx , 1 ) //删除被拖拽的那条数据
_teams . splice ( index , 0 , _dragitem )
} ,
2023-01-06 16:00:15 +08:00
//批量删除图片
deleteBatchPic ( ) {
if ( ! this . selectImgList . length ) {
return
}
let _this = this
Modal . confirm ( {
2023-10-30 17:26:36 +08:00
title : this . t ( 'LibraryPage.jsContent2' ) ,
2023-01-06 16:00:15 +08:00
icon : createVNode ( ExclamationCircleOutlined ) ,
okText : 'Yes' ,
cancelText : 'No' ,
2023-11-27 16:25:32 +08:00
centered : true ,
2023-01-06 16:00:15 +08:00
onOk ( ) {
_this . confirmDeletePic ( '' , 0 )
}
} ) ;
} ,
//确定删除图片 有data则是单个
confirmDeletePic ( data : any , index : any ) {
let libraryIds = data ? [ data . id ] : this . selectImgList
let newData = {
2023-11-22 15:41:46 +08:00
libraryIds : libraryIds ,
2023-11-30 14:06:05 +08:00
deleteModelConfirm : data . level1Type == 'Models' ? data . deleteModelConfirm ? data . deleteModelConfirm : 0 : '' ,
2023-11-22 15:41:46 +08:00
timeZone : Intl . DateTimeFormat ( ) . resolvedOptions ( ) . timeZone ,
2023-01-06 16:00:15 +08:00
}
Https . axiosPost ( Https . httpUrls . batchDeleteLibrary , newData ) . then (
( rv : any ) => {
if ( data && data . id ) {
this . imgList . splice ( index , 1 )
} else {
this . selectImgList = [ ]
2024-02-02 17:42:39 +08:00
this . getLibraryList ( '' )
2023-01-06 16:00:15 +08:00
}
}
) . catch ( ( res ) => {
2023-11-30 14:06:05 +08:00
if ( data . level1Type == "Models" && res . errCode === 2 ) {
2023-11-16 17:23:17 +08:00
let _this = this
Modal . confirm ( {
title : res . errMsg ,
icon : createVNode ( ExclamationCircleOutlined ) ,
okText : 'Yes' ,
cancelText : 'No' ,
mask : false ,
zIndex : 99999 ,
2023-11-27 16:25:32 +08:00
centered : true ,
2023-11-16 17:23:17 +08:00
onOk ( ) {
data . deleteModelConfirm = 1
2024-05-22 14:08:50 +08:00
let id = _this . store . state . Workspace . workspace . id
Https . axiosGet ( Https . httpUrls . workspaceDetail , { params : { id : id } } ) . then ( ( rv : any ) => {
if ( rv ) {
if ( rv . position == "Overall" ) {
rv . overallSingle = false
} else {
rv . overallSingle = true
}
if ( rv . sexEnum . name == 'Female' ) {
rv . mannequinUrl = rv . femalePresignedUrl
rv . mannequinType = rv . mannequinFemaleType
rv . mannequinId = rv . mannequinFemaleId
} else if ( rv . sexEnum . name == 'Male' ) {
rv . mannequinUrl = rv . malePresignedUrl
rv . mannequinType = rv . mannequinMaleType
rv . mannequinId = rv . mannequinMaleId
}
_this . store . commit ( "setWorkspace" , rv ) ;
}
} )
2023-11-16 17:23:17 +08:00
_this . confirmDeletePic ( data , index )
} ,
onCancel ( ) {
}
} ) ;
}
2023-01-06 16:00:15 +08:00
} ) ;
} ,
beforeUpload ( file : any , fileList : any ) {
const isJpgOrPng = file . type === 'image/jpeg' || file . type === 'image/png' || file . type === 'image/jpg' || file . type === 'image/bmp' ;
if ( ! isJpgOrPng ) {
2023-11-16 17:23:17 +08:00
message . info ( this . t ( 'LibraryPage.jsContent3' ) ) ;
2023-01-06 16:00:15 +08:00
}
2024-06-17 09:39:01 +08:00
const isLt2M = file . size / 1024 / 1024 < 5 ;
2023-01-06 16:00:15 +08:00
if ( ! isLt2M ) {
2023-11-16 17:23:17 +08:00
message . info ( this . t ( 'LibraryPage.jsContent4' ) ) ;
2023-01-06 16:00:15 +08:00
}
2023-10-20 17:21:45 +08:00
if ( isJpgOrPng && isLt2M ) {
this . currentUploadFileNum = fileList . length
} else {
return ( isJpgOrPng && isLt2M ) || Upload . LIST _IGNORE ;
}
2023-01-06 16:00:15 +08:00
} ,
customRequest ( event : any ) {
2023-10-20 17:21:45 +08:00
if ( this . selectCode == "Models" ) {
return
}
2024-01-30 13:33:08 +08:00
//试用用户上传限制
// if(this.imgList.length+this.currentUploadFileNum > 10 && this.isTest){
// message.info(this.t('isTest.image'));
// return
// }
2024-06-01 10:02:21 +08:00
let designType = ''
if ( this . selectCode == 'Sketchboard' || this . selectCode == 'DesignElements' || this . selectCode == 'Printboard' ) {
2024-06-17 09:39:01 +08:00
designType = this . designType
2024-06-01 10:02:21 +08:00
}
2023-01-06 16:00:15 +08:00
let new _data = {
file : event . file ,
level1Type : this . selectCode ,
level2Type : designType ,
2024-06-20 10:36:45 +08:00
sex : this . selectCode == 'Sketchboard' ? this . sex : '' ,
2023-10-11 17:34:14 +08:00
modelType : '' ,
2023-10-20 17:21:45 +08:00
checkMd5 : 1 ,
2023-01-06 16:00:15 +08:00
timeZone : Intl . DateTimeFormat ( ) . resolvedOptions ( ) . timeZone ,
}
this . isShowMark = true
Https . axiosPost ( Https . httpUrls . libraryUpload , new _data , { headers : { 'Content-Type' : 'multipart/form-data' } } ) . then (
( rv : any ) => {
2023-10-20 17:21:45 +08:00
if ( ! rv . checkMd5 ) {
this . affirmCstomRequest ( new _data )
} else {
this . currentUploadFileNum --
if ( ! this . currentUploadFileNum ) {
2024-02-02 17:42:39 +08:00
this . getLibraryList ( '' )
2023-10-20 17:21:45 +08:00
}
}
2023-01-06 16:00:15 +08:00
}
) . catch ( ( res ) => {
this . currentUploadFileNum --
if ( ! this . currentUploadFileNum ) {
2024-02-02 17:42:39 +08:00
this . getLibraryList ( '' )
2023-01-06 16:00:15 +08:00
}
} ) ;
} ,
2023-10-20 17:21:45 +08:00
affirmCstomRequest ( data : any ) {
let _this = this
Modal . confirm ( {
2023-10-30 17:26:36 +08:00
title : this . t ( 'LibraryPage.jsContent5' ) ,
2023-10-20 17:21:45 +08:00
icon : createVNode ( ExclamationCircleOutlined ) ,
okText : 'Yes' ,
cancelText : 'No' ,
mask : false ,
2023-10-30 17:26:36 +08:00
zIndex : 99999 ,
2023-11-27 16:25:32 +08:00
centered : true ,
2023-10-20 17:21:45 +08:00
onOk ( ) {
data . checkMd5 = 0
Https . axiosPost ( Https . httpUrls . libraryUpload , data , { headers : { 'Content-Type' : 'multipart/form-data' } } ) . then (
( rv : any ) => {
_this . currentUploadFileNum --
if ( ! _this . currentUploadFileNum ) {
2024-02-02 17:42:39 +08:00
_this . getLibraryList ( '' )
2023-10-20 17:21:45 +08:00
}
}
) . catch ( ( res ) => {
_this . currentUploadFileNum --
if ( ! _this . currentUploadFileNum ) {
2024-02-02 17:42:39 +08:00
_this . getLibraryList ( '' )
2023-10-20 17:21:45 +08:00
}
} ) ;
} ,
onCancel ( ) {
_this . currentUploadFileNum --
if ( ! _this . currentUploadFileNum ) {
2024-02-02 17:42:39 +08:00
_this . getLibraryList ( '' )
2023-10-20 17:21:45 +08:00
}
}
} ) ;
} ,
2024-02-02 17:42:39 +08:00
getLibraryList ( str : any ) {
2023-11-13 17:33:41 +08:00
let labelArr : any = [ ]
this . value . labelValue . forEach ( ( item : any ) => {
labelArr . push ( item [ item . length - 1 ] )
} )
2024-06-01 10:02:21 +08:00
let designType = ''
if ( this . selectCode == 'Sketchboard' || this . selectCode == 'DesignElements' || this . selectCode == 'Printboard' ) {
2024-06-17 09:39:01 +08:00
designType = this . designType
2024-06-01 10:02:21 +08:00
}
2023-01-06 16:00:15 +08:00
let data = {
2023-11-15 09:59:24 +08:00
classificationIdList : labelArr ,
2023-01-06 16:00:15 +08:00
level1Type : this . selectCode ,
level2Type : designType ,
2024-02-02 17:42:39 +08:00
page : 1 ,
2024-06-20 10:36:45 +08:00
modelSex : this . sex ? this . sex : '' ,
2023-01-06 16:00:15 +08:00
pictureName : this . searchPictureName ,
size : this . pageSize ,
2023-11-22 09:37:30 +08:00
intersection : this . intersection ,
2023-01-06 16:00:15 +08:00
}
2024-02-02 17:42:39 +08:00
if ( str == 'page' ) {
data . page = this . currentPage
2024-02-02 17:54:13 +08:00
} else {
this . currentPage = 1
2024-02-02 17:42:39 +08:00
}
2023-01-06 16:00:15 +08:00
this . isShowMark = true
Https . axiosPost ( Https . httpUrls . queryLibraryPage , data ) . then (
( rv : any ) => {
2024-06-01 10:02:21 +08:00
if ( rv . content ? . length == 0 && this . currentPage != 1 ) {
2024-02-02 17:42:39 +08:00
this . currentPage = 1
this . getLibraryList ( '' )
} else {
this . imgList = rv . content
this . total = rv . total
this . isShowMark = false
}
2023-01-06 16:00:15 +08:00
}
) . catch ( ( res ) => {
this . isShowMark = false
} ) ;
} ,
//编辑模特打点
editPlacementClick ( data : any ) {
2023-12-14 15:09:07 +08:00
let name = data . name + '.' + data . url . split ( "?" ) [ 0 ] . split ( "." ) . pop ( )
2023-01-06 16:00:15 +08:00
let newData = {
... data . libraryModelPoint ,
url : data . url ,
2023-12-14 15:09:07 +08:00
name : name ,
2023-01-06 16:00:15 +08:00
}
this . placementClick ( newData )
} ,
//给模特打点编辑
placementClick ( data : any ) {
let placementModal : any = isMoible ( ) ? this . $refs . ModelPlacementMobile : this . $refs . ModelPlacement
2023-11-30 13:52:36 +08:00
placementModal . showPlacementModal ( data , this . sex )
2023-10-20 17:21:45 +08:00
} ,
2024-05-20 13:07:42 +08:00
setTextareaShow ( ) {
this . isTextarea = ! this . isTextarea
2024-06-17 15:15:13 +08:00
this . isTextarea = ! this . isTextarea
if ( this . isTextarea ) {
document . addEventListener ( 'click' , this . setTextareaShow )
} else {
document . removeEventListener ( 'click' , this . setTextareaShow )
}
2024-05-20 13:07:42 +08:00
} ,
2024-06-01 10:02:21 +08:00
cliSetKeyword ( value : any ) {
let str = ''
if ( this . captionGeneration [ this . captionGeneration . length - 1 ] != ',' && this . captionGeneration . length != 0 ) {
str = ','
}
this . captionGeneration += str + value
} ,
2024-06-17 09:39:01 +08:00
ifSeedValue ( e : any ) {
if ( this . searchPictureSeed == '' ) {
this . searchPictureSeed = 0
}
} ,
2023-10-20 17:21:45 +08:00
ifMaximumLength ( ) {
clearTimeout ( this . inputTime )
this . inputTime = setTimeout ( ( ) => {
2024-05-22 10:44:48 +08:00
if ( this . captionGeneration ? . split ( /\s+/ ) . length > 250 ) {
2024-04-24 13:36:27 +08:00
( this . $refs . inputShowText as any ) . innerHTML = this . t ( 'LibraryPage.maximumLength' )
2023-10-20 17:21:45 +08:00
this . inputShow = true
} else {
this . inputShow = false
}
} , 500 )
} ,
2024-06-17 09:39:01 +08:00
setSlogan ( ) {
let createSlogan : any = this . $refs . createSlogan
createSlogan . init ( )
} ,
setSloganData ( data : any ) {
this . selectGenerateList = data
} ,
2024-06-01 10:02:21 +08:00
inputFocus ( ) {
if ( this . isInputFocus ) return
this . isInputFocus = true
let setDomCli = ( ) => {
this . isInputFocus = false
document . removeEventListener ( 'click' , setDomCli )
}
setTimeout ( ( ) => {
document . addEventListener ( 'click' , setDomCli )
} , 200 )
} ,
2023-10-20 17:21:45 +08:00
generateFileUploadChange ( data : any ) {
let file = data . file ;
2023-12-13 16:09:17 +08:00
let bor = true
2023-10-20 17:21:45 +08:00
if ( file . status === "done" ) {
2023-12-13 16:09:17 +08:00
let res : any = JSON . parse ( file . xhr . response ) ;
if ( res . errCode == 0 ) {
2024-06-01 10:02:21 +08:00
let category : any = {
value : '' ,
name : '' ,
}
2023-12-13 16:09:17 +08:00
file . id = res . data . id ;
file . imgUrl = res . data . url ;
file . resData = res . data ;
file . type _ = "upload" ;
2024-06-01 10:02:21 +08:00
if ( this . designTypeList [ this . selectCode ] && this . selectCode == 'Sketchboard' ) {
this . designTypeList [ this . selectCode ] . forEach ( ( item : any ) => {
if ( item . name == res . data . level2Type ) {
category . value = item ? . value
category . name = item ? . name
}
} ) ;
}
file . categoryValue = category ? . value ;
file . category = category ? . name ;
2024-06-17 15:15:13 +08:00
let fileList = this . selectGenerateList . filter (
( v : any ) => v . status === "done"
) ;
this . selectGenerateList = fileList
2023-12-13 16:09:17 +08:00
} else {
bor = false
}
2023-10-20 17:21:45 +08:00
} else if ( file . status === "error" ) {
2023-12-13 16:09:17 +08:00
bor = false
}
if ( ! bor ) {
let res : any = JSON . parse ( file . xhr . response ) ;
2023-10-20 17:21:45 +08:00
let index = - 1 ;
this . selectGenerateList . forEach ( ( ele : any , index1 : any ) => {
if ( file . uid === ele . uid ) {
index = index1 ;
}
} ) ;
if ( index > - 1 ) {
this . selectGenerateList . splice ( index , 1 ) ;
}
2023-12-13 16:09:17 +08:00
// message.warning(file.name + this.t('LibraryPage.jsContent8'));
message . warning ( res . errMsg ) ;
}
2023-10-20 17:21:45 +08:00
} ,
deleteFile ( index : any ) {
2024-06-26 17:26:31 +08:00
if ( this . scene ? . value == 'Slogan' && this . selectCode == 'Printboard' ) {
let createSlogan : any = this . $refs . createSlogan
createSlogan . isDeleteSlogan = true
}
2023-10-20 17:21:45 +08:00
this . selectGenerateList . splice ( index , 1 ) ;
2023-01-06 16:00:15 +08:00
2023-10-20 17:21:45 +08:00
} ,
2023-10-27 11:09:32 +08:00
PrintModel ( ) {
if ( ! this . printModel . optype ) {
document . addEventListener ( 'click' , this . removePrintModel )
}
this . printModel . optype = ! this . printModel . optype
} ,
removePrintModel ( ) {
this . printModel . optype = false
document . removeEventListener ( 'click' , this . removePrintModel )
} ,
setprintModel ( num : any ) {
this . printModel = {
num : num ,
optype : false ,
2023-12-28 10:36:48 +08:00
name : this . t ( 'LibraryPage.Model' + num )
2023-10-27 11:09:32 +08:00
}
} ,
2023-10-20 17:21:45 +08:00
getgenerate ( ) {
2024-06-20 10:36:45 +08:00
this . isInputFocus = false
2024-06-18 10:45:15 +08:00
this . isTextarea = false
2024-04-29 15:12:27 +08:00
let selectCodeStr = JSON . parse ( JSON . stringify ( this . selectCode ) )
if ( this . isGenerate [ selectCodeStr ] ) {
2023-12-29 15:33:05 +08:00
return
}
2024-06-17 09:39:01 +08:00
clearInterval ( this . remGenerateTime [ selectCodeStr ] )
this . remGenerate [ selectCodeStr ] = false
2024-06-01 10:02:21 +08:00
let level2Type = ''
let collectionElementId = ''
let base64 = ''
if ( this . selectGenerateList ? . [ 0 ] ) {
collectionElementId = this . selectGenerateList [ 0 ] . id
if ( this . selectGenerateList [ 0 ] . base64 ) {
base64 = this . selectGenerateList [ 0 ] . imgUrl
}
2023-12-28 10:36:48 +08:00
}
2024-06-20 10:36:45 +08:00
let sloganText = ''
let arr = [ "Painting Style" , "Illustration Style" , "Real Style" ]
sloganText = this . captionGeneration
2024-06-01 10:02:21 +08:00
if ( this . selectCode == "Sketchboard" ) {
2024-06-20 10:36:45 +08:00
level2Type = this . selectGenerateList ? . [ 0 ] ? . categoryValue ? this . selectGenerateList [ 0 ] . categoryValue : ''
2024-06-26 17:26:31 +08:00
if ( this . workspace . styleName ) {
sloganText = ` ${ this . workspace . styleName } , ${ sloganText } `
}
2024-06-01 10:02:21 +08:00
} else if ( this . selectCode == "Printboard" ) {
level2Type = this . scene ? . value
2024-06-20 10:36:45 +08:00
if ( level2Type == 'Slogan' && this . captionGeneration == '' ) {
2024-07-02 14:15:11 +08:00
sloganText = this . isSloganHint
2024-06-20 10:36:45 +08:00
} else if ( level2Type == 'Pattern' ) {
sloganText = ` ${ arr [ this . printModel . num - 1 ] } , ${ sloganText } `
}
if ( ! base64 && level2Type == 'Slogan' ) {
2024-06-26 17:26:31 +08:00
message . info ( this . t ( 'Generate.jsContent10' ) ) ;
2024-06-20 10:36:45 +08:00
return
}
2024-06-01 10:02:21 +08:00
}
2023-10-20 17:21:45 +08:00
let data = {
2024-06-01 10:02:21 +08:00
generateType : 'text' ,
2024-04-24 14:37:46 +08:00
designType : 'collection' ,
2024-06-01 10:02:21 +08:00
collectionElementId : collectionElementId ,
2024-04-29 15:12:27 +08:00
level1Type : selectCodeStr ,
2024-06-01 10:02:21 +08:00
level2Type : level2Type ,
2024-01-24 10:34:05 +08:00
userId : ( this ? . userInfo as any ) . userId ,
2024-01-30 13:33:08 +08:00
isTestUser : this . driver _ _ . driver ? false : this . isTest ,
2024-06-20 10:36:45 +08:00
text : sloganText ,
2024-06-17 09:39:01 +08:00
seed : this . searchPictureSeed ,
2023-10-20 17:21:45 +08:00
timeZone : Intl . DateTimeFormat ( ) . resolvedOptions ( ) . timeZone ,
2024-01-02 13:04:57 +08:00
version : 1 , //为1就是Print
2024-06-20 10:36:45 +08:00
gender : selectCodeStr == 'Sketchboard' ? this . sex : '' ,
2024-06-17 09:39:01 +08:00
sloganBase64 : base64 ,
2023-10-20 17:21:45 +08:00
}
2024-06-26 17:26:31 +08:00
this . generateLevel2 [ selectCodeStr ] = data . level2Type
2024-04-29 15:12:27 +08:00
this . isGenerate [ selectCodeStr ] = true
2024-05-20 13:07:42 +08:00
this . isTextarea = false
2024-06-17 09:39:01 +08:00
this . remGenerateTime [ selectCodeStr ] = setTimeout ( ( ) => {
this . remGenerate [ selectCodeStr ] = true
} , 10000 )
2024-01-24 10:34:05 +08:00
Https . axiosPost ( Https . httpUrls . generatePrepare , data ) . then (
2023-11-06 15:19:52 +08:00
( rv ) => {
2024-01-30 13:33:08 +08:00
if ( data . isTestUser ) {
let str : any
2024-04-29 15:12:27 +08:00
if ( selectCodeStr == 'Moodboard' ) {
2024-01-30 13:33:08 +08:00
str = this . t ( 'collectionModal.Moodboard' )
2024-04-29 15:12:27 +08:00
} else if ( selectCodeStr == 'Printboard' ) {
2024-01-30 13:33:08 +08:00
str = this . t ( 'collectionModal.Printboard' )
2024-04-29 15:12:27 +08:00
} else if ( selectCodeStr == 'Sketchboard' ) {
2024-01-30 13:33:08 +08:00
str = this . t ( 'collectionModal.Sketchboard' )
}
if ( rv . leftUsageCount >= 1 ) {
2024-01-30 14:23:28 +08:00
message . warning ( this . t ( 'Generate.jsContent8' , { num : rv . leftUsageCount , str : str } ) ) ;
2024-01-30 13:33:08 +08:00
} else if ( rv . leftUsageCount == 0 ) {
message . warning ( this . t ( 'Generate.jsContent9' , { str : str } ) ) ;
2024-04-29 15:12:27 +08:00
this . isGenerate [ selectCodeStr ] = false
2024-04-25 17:16:16 +08:00
// this.isShowMark = false
2024-01-30 13:33:08 +08:00
return
}
2023-11-06 15:19:52 +08:00
}
2024-04-29 15:12:27 +08:00
this . setGenerate ( selectCodeStr , rv . uniqueId )
2023-11-06 15:19:52 +08:00
}
) . catch ( res => {
2024-04-25 17:16:16 +08:00
// this.isShowMark = false
2024-06-26 17:26:31 +08:00
this . generateLevel2 [ selectCodeStr ] = ''
2024-04-29 15:12:27 +08:00
this . isGenerate [ selectCodeStr ] = false
2024-06-17 09:39:01 +08:00
clearInterval ( this . remGenerateTime [ selectCodeStr ] )
this . remGenerate [ selectCodeStr ] = false
2023-11-06 15:19:52 +08:00
} ) ;
} ,
2024-04-29 15:12:27 +08:00
setGenerate ( str : any , dataList : any ) {
2024-06-17 09:39:01 +08:00
2024-04-29 15:12:27 +08:00
let data = dataList
2024-04-30 13:21:15 +08:00
let dataNum = dataList . length
2024-06-17 09:39:01 +08:00
let state = true
2024-04-26 16:33:41 +08:00
this . generateTime [ str ] = setInterval ( ( ) => {
2024-04-29 15:12:27 +08:00
// let data = this.generateList[str].filter((item:any)=>item.status != 'Success').map((obj:any) => obj.taskId);
2024-06-17 09:39:01 +08:00
if ( ! state ) return
state = false
2024-04-19 10:49:05 +08:00
Https . axiosPost ( Https . httpUrls . generateResult , data ) . then (
2024-01-24 10:34:05 +08:00
( rv ) => {
2024-06-17 09:39:01 +08:00
state = true
2024-04-29 15:12:27 +08:00
if ( this . isGenerate [ str ] ) { //防止取消后有正在执行的获取状态
this . generateProceedList = rv . filter ( ( item : any ) => item . status != 'Success' && item . status != 'Fail' && item . status != 'Invalid' )
2024-04-19 10:49:05 +08:00
rv . forEach ( ( element : any ) => {
2024-04-29 15:12:27 +08:00
if ( element . status === 'Success' ) {
element . imgUrl = element . url
2024-06-17 15:15:13 +08:00
this . designTypeList [ this . selectCode ] . forEach ( ( itemCategory : any ) => {
if ( itemCategory . value == element . category ) {
2024-06-24 09:47:59 +08:00
element . categoryValue = itemCategory ? . value
element . category = itemCategory ? . name
2024-06-17 15:15:13 +08:00
}
} ) ;
// element.categoryValue = this.scene?.name
// element.category = this.scene?.value
2024-04-29 15:12:27 +08:00
this . generateList [ str ] . unshift ( element )
data = data . filter ( ( item : any ) => item !== element . taskId ) ;
2024-06-26 17:26:31 +08:00
2024-04-29 15:12:27 +08:00
}
2024-04-19 10:49:05 +08:00
} ) ;
2024-04-30 13:11:58 +08:00
if ( ( data . length == 0 ) || ( rv . filter ( ( item : any ) => item . status == 'Invalid' ) . length == data . length ) ) {
2024-04-30 13:21:15 +08:00
if ( rv . filter ( ( item : any ) => item . status == 'Invalid' ) . length == dataNum ) {
2024-04-30 13:11:58 +08:00
message . info ( this . t ( 'Generate.effectPoor' ) ) ;
}
2024-06-28 11:50:11 +08:00
this . store . dispatch ( 'getCredits' )
2024-04-26 16:33:41 +08:00
clearInterval ( this . generateTime [ str ] )
2024-04-29 15:12:27 +08:00
clearInterval ( this . remGenerateTime [ str ] )
this . remGenerate [ str ] = false
this . isGenerate [ str ] = false
2024-06-27 17:37:49 +08:00
this . generateLevel2 [ str ] = ''
2024-04-19 10:49:05 +08:00
}
2024-01-24 10:34:05 +08:00
}
}
) . catch ( res => {
2024-04-26 16:33:41 +08:00
clearInterval ( this . generateTime [ str ] )
2024-04-29 15:12:27 +08:00
clearInterval ( this . remGenerateTime [ str ] )
2024-04-25 17:16:16 +08:00
// this.isShowMark = false
2024-04-29 15:12:27 +08:00
this . isGenerate [ str ] = false
2024-04-30 13:11:58 +08:00
this . remGenerate [ str ] = false
2024-06-26 17:26:31 +08:00
this . generateLevel2 [ str ] = ''
2024-01-24 10:34:05 +08:00
} ) ;
2024-04-19 10:49:05 +08:00
} , 1000 )
2024-01-24 10:34:05 +08:00
} ,
removeGenerate ( ) {
2024-04-25 17:16:16 +08:00
// this.isShowMark = false
2024-04-26 16:37:15 +08:00
this . isGenerate [ this . selectCode ] = false
2024-04-26 16:33:41 +08:00
this . remGenerate [ this . selectCode ] = false
clearInterval ( this . generateTime [ this . selectCode ] )
2024-04-29 15:12:27 +08:00
if ( this . generateProceedList ) {
let str = this . generateProceedList . map ( ( obj : any ) => obj . taskId ) . join ( ',' ) ;
2024-06-26 17:26:31 +08:00
let type = 'Generate'
if ( this . generateLevel2 [ str ] == 'Logo' ) {
type = 'Logo'
}
let data = {
uniqueId : str ,
userId : ( this ? . userInfo as any ) ? . userId ,
timeZone : Intl . DateTimeFormat ( ) . resolvedOptions ( ) . timeZone ,
type : type
}
2024-01-24 10:34:05 +08:00
Https . axiosGet ( Https . httpUrls . generateStopWaiting , { params : data } ) . then (
( rv ) => {
2024-04-29 15:12:27 +08:00
this . generateProceedList = [ ]
2024-01-24 10:34:05 +08:00
}
) . catch ( res => {
} ) ;
}
} ,
2023-11-06 15:19:52 +08:00
dropdownVisibleChange ( ) {
2023-11-29 16:30:17 +08:00
let element : any = this . $refs . cascader
2023-11-16 17:23:17 +08:00
nextTick ( ) . then ( ( ) => {
let cascader = document . getElementsByClassName ( 'libraryPageCascader' ) [ 0 ]
let cascaderChild = cascader
2023-11-22 17:05:09 +08:00
let element : any = this . $refs . cascader
2023-11-16 17:23:17 +08:00
if ( cascader . children . length > 3 ) {
} else {
let button1 : any = document . createElement ( "span" )
button1 . classList . add ( 'started_btn' , 'cascader_btn1' )
let button2 : any = document . createElement ( "span" )
button2 . classList . add ( 'started_btn' , 'cascader_btn2' )
let divMax : any = document . createElement ( "div" )
divMax . classList . add ( 'cascader_btn_max' )
2023-11-22 17:05:09 +08:00
button1 . textContent = 'Edit'
2023-11-16 17:23:17 +08:00
// button2.textContent = '删除'
button1 . addEventListener ( 'click' , this . removeLabel , false )
divMax . appendChild ( button1 )
// divMax.appendChild(button2)
cascaderChild ? . insertAdjacentElement ( "afterbegin" , divMax ) ;
2023-11-29 16:30:17 +08:00
2023-11-16 17:23:17 +08:00
// cascader.addEventListener('click',this.cascaderClick)
}
} )
2023-11-29 16:30:17 +08:00
let el = element . contentRef ? . getElementsByClassName ( 'el-cascader-menu__empty-text' ) ? . [ 0 ]
if ( el ) {
2023-11-30 10:54:22 +08:00
el . innerHTML = this . t ( 'LibraryPage.NoLabel' )
2023-11-29 16:30:17 +08:00
}
2023-11-06 15:19:52 +08:00
} ,
2023-11-08 09:31:40 +08:00
// cascaderClick(e:Event){
// console.log(e.target)
// },
2023-11-16 17:23:17 +08:00
removeLabel ( ) {
2023-11-07 09:30:25 +08:00
let setLabel : any = this . $refs . setLabel
2023-11-16 17:23:17 +08:00
let cascader : any = this . $refs . cascader
cascader . togglePopperVisible ( )
let event = new Event ( 'click' , { "bubbles" : true , "cancelable" : true } ) ;
document . dispatchEvent ( event ) ;
2023-11-09 13:49:10 +08:00
setLabel . init ( 'add' , this . options )
2023-11-06 15:19:52 +08:00
} ,
2023-11-13 17:33:41 +08:00
labelSearch ( ) {
nextTick ( ) . then ( ( ) => {
let cascader = document . getElementsByClassName ( 'editLabel' ) [ 0 ]
cascader . addEventListener ( 'click' , ( event ) => {
event . stopPropagation ( )
} )
} )
2023-11-09 10:16:18 +08:00
2023-11-13 17:33:41 +08:00
} ,
2023-11-09 10:16:18 +08:00
getClass ( ) {
let data = {
"classificationIdList" : [ ] ,
"classificationName" : "" ,
"createTime" : "" ,
"deleteConfirm" : '' ,
"id" : '' ,
"libraryId" : '' ,
"parentId" : '' ,
"type" : this . selectCode ,
"updateTime" : "" ,
"userId" : ''
}
Https . axiosPost ( Https . httpUrls . queryClassification , data ) . then (
( rv : any ) => {
this . options = rv
2023-11-16 09:44:53 +08:00
rv . forEach ( ( rvItem : any , rvIndex : number ) => {
this . options [ rvIndex ] . value = rvItem . id
this . options [ rvIndex ] . label = rvItem . classificationName
rvItem . childList . forEach ( ( childItem : any , index : number ) => {
this . options [ rvIndex ] . childList [ index ] . value = childItem . id
this . options [ rvIndex ] . childList [ index ] . label = childItem . classificationName
} ) ;
} ) ;
2023-11-09 10:16:18 +08:00
}
) . catch ( ( res ) => {
} ) ;
} ,
2024-01-02 13:04:57 +08:00
scaleImage ( index : any ) {
let scaleImage : any = this . $refs . scaleImage
scaleImage . scaleImageMask = true
2024-04-25 17:16:16 +08:00
scaleImage . init ( this . generateList [ this . selectCode ] , index )
2024-01-02 13:04:57 +08:00
} ,
2023-01-06 16:00:15 +08:00
}
} )
< / script >
< style lang = "less" >
2024-01-24 16:43:54 +08:00
. el - icon {
font - size : 14 px ;
}
2023-01-06 16:00:15 +08:00
. library _page {
width : 100 % ;
2023-10-11 17:34:14 +08:00
overflow : hidden ;
2023-01-06 16:00:15 +08:00
height : 100 % ;
2023-09-25 10:09:00 +08:00
padding : 0 9 rem ;
2023-11-13 09:52:57 +08:00
// min-width: 1440px;
2023-10-20 17:21:45 +08:00
position : relative ;
2023-01-06 16:00:15 +08:00
. page _content {
position : relative ;
. page _content _bg {
position : absolute ;
width : 100 % ;
height : 100 % ;
}
. page _content _body {
position : absolute ;
width : 100 % ;
height : 100 % ;
box - sizing : border - box ;
2023-10-20 17:21:45 +08:00
display : flex ;
flex - direction : column ;
2023-01-06 16:00:15 +08:00
. library _page _body {
2023-10-31 16:04:40 +08:00
overflow : hidden ;
2023-01-06 16:00:15 +08:00
width : 100 % ;
2024-03-21 10:49:21 +08:00
// height: 100%;
2023-10-20 17:21:45 +08:00
flex : 1 ;
2023-01-06 16:00:15 +08:00
box - sizing : border - box ;
display : flex ;
2023-10-20 17:21:45 +08:00
padding - top : 2 rem ;
2023-01-06 16:00:15 +08:00
. library _body _left {
2024-06-01 10:02:21 +08:00
// width: 27.5rem;
width : 36.5 rem ;
2023-01-06 16:00:15 +08:00
height : 100 % ;
background : rgba ( 255 , 255 , 255 , 0.4 ) ;
2024-01-10 09:34:32 +08:00
margin - right : 5 rem ;
2023-10-20 17:21:45 +08:00
> div {
background : # f7f8fa ;
border - radius : 2 rem ;
overflow : hidden ;
padding : 2 rem 0 ;
}
2023-01-06 16:00:15 +08:00
. library _menu _list {
2023-10-20 17:21:45 +08:00
padding - left : 2 rem ;
2023-01-06 16:00:15 +08:00
. menu _item {
width : 100 % ;
height : 6.8 rem ;
display : flex ;
2023-10-20 17:21:45 +08:00
font - weight : 900 ;
2023-01-06 16:00:15 +08:00
align - items : center ;
justify - content : space - between ;
padding : 0 1 rem 0 2.5 rem ;
border - left : 0.5 rem solid transparent ;
2023-11-28 16:21:00 +08:00
// font-size: 1.6rem;
font - size : var ( -- aida - fsize2 ) ;
2023-01-06 16:00:15 +08:00
color : # 030303 ;
cursor : pointer ;
2023-10-20 17:21:45 +08:00
transition : all .3 s ;
2023-01-06 16:00:15 +08:00
& . child _menu _item {
padding - left : 6.5 rem ;
}
& . select _menu _item {
2023-10-20 17:21:45 +08:00
background : # fff ;
border - radius : 2 rem ;
transform : translateX ( 2 rem ) ;
// background: #E6E6F6;
// border-color: #343579;;
2023-01-06 16:00:15 +08:00
}
. menu _item _left {
display : flex ;
align - items : center ;
user - select : none ;
2023-10-20 17:21:45 +08:00
. fi {
2023-01-06 16:00:15 +08:00
font - size : 2.2 rem ;
2023-10-20 17:21:45 +08:00
display : flex ;
2023-01-06 16:00:15 +08:00
color : # 030303 ;
margin - right : 1.8 rem ;
}
}
. icon _rotate {
- moz - transform : rotate ( 180 deg ) ;
- webkit - transform : rotate ( 180 deg ) ;
transform : rotate ( 180 deg ) ;
animation - direction : 0.5 s ;
}
}
}
}
. library _body _right {
2024-01-10 09:34:32 +08:00
width : calc ( 100 % - 23.5 rem ) ;
2023-01-06 16:00:15 +08:00
height : 100 % ;
2023-10-20 17:21:45 +08:00
. header _operate _item {
margin - right : 5 rem ;
color : # C2C2C2 ;
2023-11-28 16:21:00 +08:00
font - size : var ( -- aida - fsize1 - 8 ) ;
2023-10-20 17:21:45 +08:00
. ant - upload {
2023-11-22 09:37:30 +08:00
// font-size: 1.6rem;
2023-10-20 17:21:45 +08:00
// font-weight: 900;
}
. ant - upload - list - text {
display : none ;
}
& . operate _select {
color : # 333333 ;
cursor : pointer ;
font - weight : 900 ;
}
& . fontSize {
font - size : 1.4 rem ;
}
& . active {
color : # 333333 ;
cursor : pointer ;
}
& . pointer {
cursor : pointer ;
}
& : last - child {
margin - right : 11 rem ;
}
}
. content _search _block {
display : flex ;
align - items : center ;
2024-01-10 09:34:32 +08:00
width : 75 rem ;
2023-10-20 17:21:45 +08:00
. search _input {
height : 3 rem ;
border - radius : 0.5 rem ;
2023-11-03 11:16:42 +08:00
width : 20 rem ;
2023-10-20 17:21:45 +08:00
border : 1 px solid rgba ( 0 , 0 , 0 , 0.15 ) ;
padding - left : 1.5 rem ;
border : 0.1 rem solid # F1F1F1 ;
font - size : 1.2 rem ;
font - weight : 400 ;
2023-11-03 11:16:42 +08:00
margin - right : 2 rem ;
2023-10-20 17:21:45 +08:00
& : : placeholder {
color : # C2C2C2 ;
}
}
2024-05-20 10:45:30 +08:00
2023-11-16 09:44:53 +08:00
. search _cascader {
2024-01-10 09:34:32 +08:00
// width: 53%;
width : 38 rem ;
2023-11-16 09:44:53 +08:00
display : flex ;
position : relative ;
2023-11-16 17:23:17 +08:00
2023-11-16 09:44:53 +08:00
}
2023-10-20 17:21:45 +08:00
. search _icon _block {
width : 5.2 rem ;
height : 2.8 rem ;
line - height : 2.8 rem ;
text - align : center ;
background : # 343579 ;
background - color : # 39215 b ;
cursor : pointer ;
border - radius : 2 rem ;
margin - left : 3 rem ;
. icon - sousuo {
font - size : 1.6 rem ;
color : # FFFFFF ;
}
}
2023-11-22 09:37:30 +08:00
. intersection {
margin - left : 3 rem ;
cursor : pointer ;
}
2023-11-06 15:19:52 +08:00
2023-10-20 17:21:45 +08:00
}
2023-01-06 16:00:15 +08:00
. library _right _header {
display : flex ;
padding : 0 3.5 rem 0 2.8 rem ;
align - items : center ;
justify - content : space - between ;
background : rgba ( 255 , 255 , 255 , 0.4 ) ;
box - shadow : 0 0.2 rem 0.8 rem 0 rgba ( 238 , 238 , 244 , 0.25 ) ;
. library _header _left {
2023-10-20 17:21:45 +08:00
height : 4 rem ;
2023-01-06 16:00:15 +08:00
display : flex ;
align - items : center ;
2023-10-20 17:21:45 +08:00
2023-01-06 16:00:15 +08:00
}
2023-10-20 17:21:45 +08:00
2023-01-06 16:00:15 +08:00
. librart _headr _right {
display : flex ;
align - items : center ;
. select _block {
2023-10-11 17:34:14 +08:00
// background: #FFFFFF;
2023-01-06 16:00:15 +08:00
color : # 1 A1A1A ! important ;
2023-10-20 17:21:45 +08:00
. ant - select - selector {
border : 2 px solid ! important ;
}
2023-10-11 17:34:14 +08:00
. ant - select {
2023-10-13 17:06:44 +08:00
. ant - select - arrow {
. icon - xiala {
margin - left : - 2 rem ;
zoom : .7 ;
}
}
2023-10-11 17:34:14 +08:00
}
2023-01-06 16:00:15 +08:00
. icon - xiala {
color : # 1 A1A1A ! important ;
}
}
}
}
. libray _right _content {
width : 100 % ;
height : calc ( 100 % - 8 rem ) ;
padding : 0.1 rem 0 0 0.3 rem ;
box - sizing : border - box ;
. right _content _body {
width : 100 % ;
height : 100 % ;
2023-10-20 17:21:45 +08:00
background : # f6f5fa ;
2023-01-06 16:00:15 +08:00
padding : 0 2 rem 5 rem 1 rem ;
2023-10-20 17:21:45 +08:00
border - radius : 2 rem ;
overflow : hidden ;
display : flex ;
flex - direction : column ;
2023-01-06 16:00:15 +08:00
. content _body _header {
2023-10-20 17:21:45 +08:00
height : 10 rem ;
2023-01-06 16:00:15 +08:00
display : flex ;
justify - content : flex - end ;
align - items : center ;
2023-10-20 17:21:45 +08:00
// padding: 2rem 0 2rem 3rem;
2024-01-10 09:34:32 +08:00
padding - left : 3 rem ;
2023-10-20 17:21:45 +08:00
box - sizing : content - box ;
justify - content : space - between ;
. content _body _header _left {
display : flex ;
2023-11-03 11:16:42 +08:00
align - items : center ;
2023-10-20 17:21:45 +08:00
}
. content _body _header _right {
display : flex ;
2024-01-10 09:34:32 +08:00
width : 43 rem ;
2023-10-20 17:21:45 +08:00
}
2023-01-06 16:00:15 +08:00
. check _all _block {
display : flex ;
align - items : center ;
font - size : 1.6 rem ;
color : # 64686 D ;
cursor : pointer ;
& . check _all {
color : # 1 A1A1A ;
}
. check _block {
width : 2.4 rem ;
height : 2.4 rem ;
background : # EBECF4 ;
border : 0.1 rem solid # 64686 D ;
padding : 0.3 rem ;
margin - right : 0.7 rem ;
. check _block _body {
width : 100 % ;
height : 100 % ;
background : # 343579 ;
}
}
}
2023-10-20 17:21:45 +08:00
& . content _body _header _generate {
justify - content : flex - start ;
. checkboxItem {
2024-01-10 09:34:32 +08:00
margin - right : 4 rem ;
2023-10-20 17:21:45 +08:00
label {
display : flex ;
cursor : pointer ;
input {
margin - right : 0.5 rem ;
padding - left : 1.5 rem ;
}
span {
2024-01-10 09:34:32 +08:00
font - size : 1.4 rem ;
2023-10-20 17:21:45 +08:00
font - weight : 500 ;
2024-04-15 16:09:33 +08:00
bottom : - .5 rem ;
2023-10-20 17:21:45 +08:00
}
}
}
2024-04-15 16:09:33 +08:00
. input _border {
2024-06-01 10:02:21 +08:00
padding - bottom : 0 ;
2024-04-15 16:09:33 +08:00
background : rgba ( 0 , 0 , 0 , 0 ) ;
2024-06-01 10:02:21 +08:00
width : 50 rem ;
. input _box _btnBox {
background : # fff ;
align - items : center ;
. search _input {
2024-04-15 16:09:33 +08:00
height : 3 rem ;
2023-10-20 17:21:45 +08:00
}
}
}
2024-04-15 16:09:33 +08:00
2023-10-27 11:09:32 +08:00
. printModel {
2024-06-01 10:02:21 +08:00
font - size : 1.4 rem ;
font - weight : 500 ;
margin - right : 2 rem ;
> div {
width : 13 rem ;
// display: flex;
display : block ;
border - radius : 1 rem ;
margin : 0 ;
border : 2 px solid ;
cursor : pointer ;
white - space : nowrap ;
overflow : hidden ;
text - overflow : ellipsis ;
padding : 0 1 rem ;
text - align : center ;
}
ul {
position : absolute ;
width : 13 rem ;
text - align : center ;
margin - top : .3 rem ;
border - radius : 1 rem ;
overflow : hidden ;
z - index : 3 ;
li {
background : # c5c4c8 ;
line - height : 2 ;
2023-10-27 11:09:32 +08:00
cursor : pointer ;
2023-12-28 10:36:48 +08:00
white - space : nowrap ;
overflow : hidden ;
text - overflow : ellipsis ;
2023-12-28 10:40:24 +08:00
padding : 0 1 rem ;
2024-06-01 10:02:21 +08:00
& . printModel _item : hover {
background : # 949396 ;
2024-04-15 16:09:33 +08:00
}
}
2023-10-20 17:21:45 +08:00
}
}
}
2023-01-06 16:00:15 +08:00
}
. content _body _table {
width : 100 % ;
height : calc ( 100 % - 12 rem ) ;
overflow - y : auto ;
2023-10-20 17:21:45 +08:00
display : flex ;
flex - wrap : wrap ;
justify - content : flex - start ;
align - content : flex - start ;
2023-10-31 16:04:40 +08:00
& . content _body _table : : - webkit - scrollbar {
display : none ;
}
2023-01-06 16:00:15 +08:00
. content _img _item {
display : inline - block ;
vertical - align : top ;
padding : 0 1.4 rem ;
margin - bottom : 2.8 rem ;
2023-10-20 17:21:45 +08:00
width : 16.6 % ;
display : flex ;
flex - direction : column ;
align - items : center ;
2023-11-15 09:59:24 +08:00
position : relative ;
2023-01-06 16:00:15 +08:00
. content _img _item _block {
border : 0.1 rem solid transparent ;
2023-10-20 17:21:45 +08:00
// width: 16.5rem;
// height: 16.5rem;
2024-01-10 09:34:32 +08:00
width : 17 rem ;
height : 17 rem ;
2023-01-06 16:00:15 +08:00
display : flex ;
align - items : center ;
justify - content : center ;
position : relative ;
cursor : pointer ;
2023-10-20 17:21:45 +08:00
background : # fff ;
2023-01-06 16:00:15 +08:00
& . select _item _img {
2023-11-22 17:05:09 +08:00
// border-color: #343579;
opacity : 0.5 ;
border - radius : 1 rem ;
transform : scale ( 0.9 ) ;
2023-01-06 16:00:15 +08:00
}
. content _img {
max - width : 100 % ;
max - height : 100 % ;
}
. board _content _img {
2023-11-30 17:02:15 +08:00
// width: 100%;
// height: 100%;
2023-01-06 16:00:15 +08:00
}
& : hover . img _item _hover {
2024-05-16 09:41:16 +08:00
// display: block;
opacity : 1 ;
2023-01-06 16:00:15 +08:00
}
. img _item _hover {
position : absolute ;
width : 100 % ;
height : 100 % ;
left : 0 ;
top : 0 ;
background : rgba ( 0 , 0 , 0 , 0.2 ) ;
2024-05-16 09:41:16 +08:00
// display: none;
opacity : 0 ;
2023-01-06 16:00:15 +08:00
. img _operate _content {
position : absolute ;
right : 0.6 rem ;
top : 0.6 rem ;
2024-01-02 13:04:57 +08:00
& . left {
left : 0.6 rem ;
right : auto ;
}
2023-01-06 16:00:15 +08:00
}
. img _operate _block {
width : 3.6 rem ;
height : 3.6 rem ;
background : rgba ( 0 , 0 , 0 , 0.6 ) ;
border - radius : 50 % ;
text - align : center ;
line - height : 3.6 rem ;
cursor : pointer ;
margin - bottom : 0.4 rem ;
2024-05-16 09:41:16 +08:00
. operate _icon , i {
display : flex ;
justify - content : center ;
align - items : center ;
width : 100 % ;
height : 100 % ;
}
2023-01-06 16:00:15 +08:00
. operate _icon {
font - size : 1.8 rem ;
color : # fff ;
2023-11-16 09:44:53 +08:00
& . fi - sr - heart {
color : red ;
}
2023-01-06 16:00:15 +08:00
}
2024-01-02 13:04:57 +08:00
i {
font - size : 1.8 rem ;
color : # fff ;
2024-05-16 09:41:16 +08:00
2024-01-02 13:04:57 +08:00
}
2023-01-06 16:00:15 +08:00
}
2024-01-02 13:04:57 +08:00
2023-01-06 16:00:15 +08:00
}
}
. content _img _name {
width : 16.5 rem ;
height : 3.5 rem ;
line - height : 3.5 rem ;
white - space : nowrap ;
text - align : center ;
overflow : hidden ;
text - overflow : ellipsis ;
font - size : 1.4 rem ;
color : # 030303 ;
}
}
. no _data _block {
width : 100 % ;
height : 100 % ;
display : flex ;
justify - content : center ;
align - items : center ;
}
}
. table _pagination {
text - align : center ;
2023-10-31 16:04:40 +08:00
// height: 5.2rem;
2023-10-20 17:21:45 +08:00
flex : 1 ;
2023-10-31 16:04:40 +08:00
margin - top : 2 rem ;
2023-01-06 16:00:15 +08:00
}
}
}
}
}
}
}
}
. library _rename _modal _component {
. collection _rename _content {
padding : 0 6.8 rem 1.8 rem ;
2023-12-20 17:03:42 +08:00
. collection _rename _title {
margin : 2 rem 0 rem 1 rem 0 ;
font - size : var ( -- aida - fsize1 - 8 ) ;
}
2023-01-06 16:00:15 +08:00
. rename _form _content {
. rename _form _input {
width : 100 % ;
height : 4.6 rem ;
2023-12-20 17:03:42 +08:00
border : 0.1 rem solid # d9d9d9 ;
2023-01-06 16:00:15 +08:00
padding - left : 2.1 rem ;
line - height : 4.6 rem ;
font - size : 1.8 rem ;
box - sizing : border - box ;
2023-12-20 17:03:42 +08:00
border - radius : 4 px ;
2023-01-06 16:00:15 +08:00
& : : placeholder {
2023-12-20 17:03:42 +08:00
color : # adabb9
2023-01-06 16:00:15 +08:00
}
}
2024-01-05 14:12:03 +08:00
. select _block {
display : flex ;
justify - content : space - between ;
font - size : 1.8 rem ;
color : # adabb9 ;
font - weight : 300 ;
. ant - select {
border - radius : 4 px ;
width : 48 % ;
border : 0.1 rem solid # d9d9d9 ! important ;
. ant - select - arrow {
. icon - xiala {
margin - left : - 0 rem ;
}
}
}
. ant - select - selection - item {
color : # 262626 ;
font - weight : 300 ;
}
. ant - select - selector {
margin - left : 0 rem ;
color : # adabb9 ;
width : 100 % ;
padding - left : 2.1 rem ;
}
. icon - xiala {
color : # adabb9 ! important ;
font - weight : 400 ;
}
}
2023-01-06 16:00:15 +08:00
}
. rename _button _list {
display : flex ;
align - items : center ;
justify - content : flex - end ;
margin - top : 3 rem ;
. rename _button _item {
width : 8.6 rem ;
height : 3.2 rem ;
line - height : 3.2 rem ;
text - align : center ;
font - size : 1.4 rem ;
cursor : pointer ;
}
. rename _cancel _button {
background : # E4E5EB ;
color : # 030303 ;
margin - right : 1.8 rem ;
}
. rename _submit _button {
background : # 343579 ;
color : # FFFFFF ;
}
}
2023-11-16 17:23:17 +08:00
. el - cascader {
2023-12-20 17:03:42 +08:00
. el - input -- suffix {
-- el - input - hover - border - color : # d9d9d9 ;
// border: .1rem solid #d9d9d9;
}
2023-11-13 17:33:41 +08:00
height : 4.6 rem ;
2023-11-16 17:23:17 +08:00
. el - tag _ _content {
line - height : 2.5 ;
2023-12-20 17:03:42 +08:00
. el - cascader _ _tags {
}
}
. el - input _ _wrapper {
padding - left : 0 ;
}
. el - cascader _ _search - input , . el - input _ _inner {
margin : 0 ;
width : 100 % ;
height : 4.6 rem ;
padding - left : 2.1 rem ;
line - height : 4.6 rem ;
font - size : 1.8 rem ;
box - sizing : border - box ;
2023-11-13 17:33:41 +08:00
}
}
2023-01-06 16:00:15 +08:00
}
}
< / style >