修改部分bug和调整布局
This commit is contained in:
@@ -216,6 +216,8 @@ export default defineComponent({
|
||||
"credits": operationsData.credits,
|
||||
"systemUser": operationsData.systemUser,
|
||||
"validEndTime": setTime(operationsData.validEndTime),
|
||||
"userName": operationsData.userName,
|
||||
"userEmail": operationsData.userEmail,
|
||||
}
|
||||
}
|
||||
let cancelDsign = ()=>{
|
||||
@@ -244,7 +246,7 @@ export default defineComponent({
|
||||
);
|
||||
}else{
|
||||
data = setEditData()
|
||||
if(!data.userName || !data.userEmail || !data.validStartTime || !data.validEndTime || !data.systemUser)return message.warning('Please check the input box marked with *')
|
||||
if(!data.userName || !data.userEmail || !data.validEndTime || !data.systemUser)return message.warning('Please check the input box marked with *')
|
||||
Https.axiosPost(Https.httpUrls.modifyUser,{},{params:data}).then(
|
||||
(rv) => {
|
||||
if (rv) {
|
||||
|
||||
@@ -371,7 +371,7 @@ export default defineComponent({
|
||||
})
|
||||
index = index? index:0
|
||||
if(!this.current.id){
|
||||
if(index){
|
||||
if(index && data?.designSingleItemDTOList){
|
||||
data.designSingleItemDTOList[index].priority = zIndex+=1
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,9 +39,9 @@
|
||||
</div>
|
||||
<div class="print_right show_print_right Guide_1_25" :class="[driver__.driver?'showEvents':'']">
|
||||
<div class="designOpenrtion_nav">
|
||||
<!-- :class="(stateOverallSingle == 'single' && item.level2Type == 'Pattern')?'isOverall':''" -->
|
||||
<div
|
||||
class="designOpenrtion_single"
|
||||
:class="(stateOverallSingle == 'single' && item.level2Type == 'Pattern')?'isOverall':''"
|
||||
v-for="item,index in designOpenrtionList" :key="item"
|
||||
:title="(stateOverallSingle == 'single' && item.level2Type == 'Pattern')? $t('DesignPrintOperation.isOverall'):''"
|
||||
>
|
||||
@@ -49,7 +49,6 @@
|
||||
</div>
|
||||
<div
|
||||
class="designOpenrtion_single"
|
||||
:class="(stateOverallSingle == 'single' && item.level2Type == 'Pattern')?'isOverall':''"
|
||||
v-for="item,index in designList" :key="item"
|
||||
:title="(stateOverallSingle == 'single' && item.level2Type == 'Pattern')? $t('DesignPrintOperation.isOverall'):''"
|
||||
>
|
||||
|
||||
@@ -198,11 +198,12 @@
|
||||
<div class="exportCanvasBox_center">
|
||||
<div class="editFrontBack_pencilbtn" v-show="!isShowMark" :style="pencilbtnStyle"></div>
|
||||
</div>
|
||||
<div class="exportCanvasBox_scroll">
|
||||
<div></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div v-if="isMoible" class="exportCanvasBox_scroll">
|
||||
<div></div>
|
||||
</div> -->
|
||||
|
||||
<div class="exportCanvasBox_bottom">
|
||||
|
||||
<div class="exportCanvasBox_left_btn Guide_1_38">
|
||||
@@ -308,6 +309,7 @@ import { useI18n } from "vue-i18n";
|
||||
import {isMoible,calculateGradientCoordinate,base64ToFile} from '@/tool/util'
|
||||
import publish from "@/component/WorksPage/publish.vue";
|
||||
import liquefaction from "@/component/modules/liquefaction.vue";
|
||||
import { getMousePosition } from "@/tool/mdEvent";
|
||||
|
||||
export default defineComponent({
|
||||
components: {
|
||||
@@ -631,6 +633,69 @@ export default defineComponent({
|
||||
driverObj__.moveNext()
|
||||
}
|
||||
|
||||
let canvasBoxDom = document.querySelector('.exportCanvasBox .exportCanvasBox_center')
|
||||
let scrollBox = document.querySelector('.exportCanvasBox_scroll div')
|
||||
let height = canvasBox.offsetHeight / (canvasWH.value.height / canvasBox.offsetHeight )
|
||||
let scale = (canvasWH.value.height - canvasBoxDom.offsetHeight) / (canvasBoxDom.offsetHeight - height)
|
||||
let mouseDownOperation = (event)=>{//按下
|
||||
console.log(canvasWH.value.height , canvasBoxDom.offsetHeight,canvasBoxDom.offsetHeight , height);
|
||||
let position = {
|
||||
y:event.screenY,
|
||||
top : scrollBox.style.marginTop?scrollBox.style.marginTop.split('px')[0]*1:0
|
||||
}
|
||||
// let top =
|
||||
let scrollMousemove = (e)=>{
|
||||
let height = scrollBox.style.height.split('px')[0]*1
|
||||
let offsetTop = position.top+e.screenY - position.y
|
||||
offsetTop = offsetTop <= 0? 0 : offsetTop
|
||||
offsetTop = height+offsetTop >= canvasBoxDom.offsetHeight? canvasBoxDom.offsetHeight - height : offsetTop
|
||||
scrollBox.style.marginTop = offsetTop+'px'
|
||||
canvasBoxDom.scroll({
|
||||
top: offsetTop*scale, // 纵向滚动距离
|
||||
left: 0, // 横向滚动距离
|
||||
});
|
||||
}
|
||||
let mouseMove = function(event){
|
||||
let e = getMousePosition(event,false)
|
||||
scrollMousemove(e)
|
||||
}
|
||||
let touchmove = function(event){
|
||||
let e = getMousePosition(event,true)
|
||||
scrollMousemove(e)
|
||||
}
|
||||
let mouseup = function(){
|
||||
document.removeEventListener('mousemove',mouseMove)
|
||||
document.removeEventListener('touchmove',touchmove)
|
||||
document.removeEventListener('mouseup',mouseup)
|
||||
document.removeEventListener('touchend',mouseup)
|
||||
//移动端
|
||||
}
|
||||
document.addEventListener('mousemove', mouseMove);
|
||||
document.addEventListener('touchmove', touchmove);
|
||||
document.addEventListener('mouseup', mouseup);
|
||||
document.addEventListener('touchend', mouseup);
|
||||
|
||||
// document.addEventListener('touchmove',scrollMousemove)
|
||||
// scrollBox.addEventListener('touchend',mouseup)
|
||||
}
|
||||
canvasBoxDom.addEventListener('scroll', function() {
|
||||
const scrollTop = canvasBoxDom.scrollTop;
|
||||
scrollBox.style.marginTop = scrollTop/scale+'px'
|
||||
});
|
||||
let mousedown = function(event){
|
||||
let e = getMousePosition(event,false)
|
||||
mouseDownOperation(e)
|
||||
}
|
||||
|
||||
let touchstart = function(event){
|
||||
let e = getMousePosition(event,true)
|
||||
mouseDownOperation(e)
|
||||
}
|
||||
scrollBox.addEventListener('mousedown',mousedown)
|
||||
scrollBox.addEventListener('touchstart',touchstart)
|
||||
// scrollBox.removeEventListener('touchstart',mousedown)
|
||||
// scrollBox.addEventListener('touchstart',mousedown)
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
@@ -2096,57 +2161,24 @@ export default defineComponent({
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
// 'canvasWH.height':{
|
||||
// handler(newVal,oldVal){
|
||||
// if(!this.isMoible){
|
||||
// return
|
||||
// }
|
||||
// return
|
||||
// let canvasBox = document.querySelector('.exportCanvasBox .exportCanvasBox_center')
|
||||
// let scrollBox = document.querySelector('.exportCanvasBox_scroll div')
|
||||
// canvasBox.scroll({
|
||||
// top: 0, // 纵向滚动距离
|
||||
// left: 0, // 横向滚动距离
|
||||
// });
|
||||
// scrollBox.style.marginTop = 0+'px'
|
||||
// let height = canvasBox.offsetHeight / (newVal / canvasBox.offsetHeight )
|
||||
// scrollBox.style.height = height +'px'
|
||||
// let scale = (newVal - canvasBox.offsetHeight) / (canvasBox.offsetHeight - height)
|
||||
|
||||
|
||||
// let mousedown = (event)=>{//按下
|
||||
// let position = {
|
||||
// y:event.touches[0].screenY,
|
||||
// top : scrollBox.style.marginTop?scrollBox.style.marginTop.split('px')[0]*1:0
|
||||
// }
|
||||
// // let top =
|
||||
// let scrollMousemove = (e)=>{
|
||||
// let height = scrollBox.style.height.split('px')[0]*1
|
||||
// let offsetTop = position.top+e.touches[0].screenY - position.y
|
||||
// offsetTop = offsetTop <= 0? 0 : offsetTop
|
||||
// offsetTop = height+offsetTop >= canvasBox.offsetHeight? canvasBox.offsetHeight - height : offsetTop
|
||||
// scrollBox.style.marginTop = offsetTop+'px'
|
||||
// canvasBox.scroll({
|
||||
// top: offsetTop*scale, // 纵向滚动距离
|
||||
// left: 0, // 横向滚动距离
|
||||
// });
|
||||
// }
|
||||
// let mouseup = ()=>{//抬起
|
||||
// window.removeEventListener('touchmove',scrollMousemove)
|
||||
// scrollBox.removeEventListener('touchend',mouseup)
|
||||
// }
|
||||
// window.addEventListener('touchmove',scrollMousemove)
|
||||
// scrollBox.addEventListener('touchend',mouseup)
|
||||
// }
|
||||
// scrollBox.removeEventListener('touchstart',mousedown)
|
||||
// scrollBox.addEventListener('touchstart',mousedown)
|
||||
|
||||
|
||||
|
||||
// }
|
||||
// },
|
||||
'canvasWH.height':{
|
||||
handler(newVal,oldVal){
|
||||
let canvasBox = document.querySelector('.exportCanvasBox .exportCanvasBox_center')
|
||||
let scrollBox = document.querySelector('.exportCanvasBox_scroll div')
|
||||
if(!canvasBox || !scrollBox)return
|
||||
canvasBox.scroll({
|
||||
top: 0, // 纵向滚动距离
|
||||
left: 0, // 横向滚动距离
|
||||
});
|
||||
scrollBox.style.marginTop = 0+'px'
|
||||
let height = canvasBox.offsetHeight / (newVal / canvasBox.offsetHeight )
|
||||
scrollBox.style.height = height +'px'
|
||||
}
|
||||
},
|
||||
},
|
||||
mounted() {},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
||||
@@ -2456,6 +2488,7 @@ export default defineComponent({
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
// overflow: hidden;
|
||||
position: relative;
|
||||
.editFrontBack_pencilbtn{
|
||||
position: absolute;
|
||||
@@ -2465,31 +2498,18 @@ export default defineComponent({
|
||||
pointer-events: none;
|
||||
transform: translate(-50%,-50%);
|
||||
}
|
||||
&.exportCanvasBox_center::-webkit-scrollbar-button:single-button{
|
||||
}
|
||||
&.exportCanvasBox_center::-webkit-scrollbar {
|
||||
/* 竖轴的宽度 */
|
||||
width: 2rem;
|
||||
/* 横轴的高度 */
|
||||
height: 1rem;
|
||||
transition: all .3s;
|
||||
}
|
||||
/* 进度 */
|
||||
&.exportCanvasBox_center::-webkit-scrollbar-thumb {
|
||||
border-radius: 1rem;
|
||||
background: #543087;
|
||||
}
|
||||
/* 轨道 */
|
||||
&.exportCanvasBox_center::-webkit-scrollbar-track {
|
||||
border-radius: 1rem;
|
||||
background: rgba(84, 48, 135,.2);
|
||||
// background: rgba(238, 238, 244, 0);
|
||||
display: none
|
||||
}
|
||||
}
|
||||
.exportCanvasBox_scroll{
|
||||
height: 100%;
|
||||
width: 2rem;
|
||||
background: #d6cfe3;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
border-radius: 1rem;
|
||||
div{
|
||||
background: #543087;
|
||||
|
||||
@@ -552,6 +552,8 @@ export default defineComponent({
|
||||
width: 47%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-shrink: 0;
|
||||
width: 50%;
|
||||
// width: 50rem*1.2);
|
||||
.switch_type_list {
|
||||
display: flex;
|
||||
|
||||
@@ -920,6 +920,9 @@ export default defineComponent({
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
&.modal_imgItem:nth-child(even) {
|
||||
margin-right: 0;
|
||||
}
|
||||
img{
|
||||
object-fit: cover;
|
||||
height: 100%;
|
||||
|
||||
@@ -891,6 +891,9 @@ export default defineComponent({
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
&.modal_imgItem:nth-child(even) {
|
||||
margin-right: 0;
|
||||
}
|
||||
&:hover .delete_like_file_block{
|
||||
display: block;
|
||||
opacity: 1;
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
</div>
|
||||
<div class="layout_centent" :class="{active:flex_direction}" id="layoutCentent">
|
||||
<div v-for="item,index in layoutList" :key="item" :class="moodbClassName[index]" class="modal_imgItem" v-layout="item" @mousedown="setpitch(item,index)" @touchstart="setpitch(item,index)" ref="content" >
|
||||
<img crossOrigin="anonymous" :src="item.imgUrl" :style="{'transform':item.angle?`translate(-50%, -50%) scale(${item.zoom}) rotateZ(${item.angle}deg)`:`translate(-50%, -50%) scale(${item.zoom}) rotateZ(${item.angle}deg)`}" draggable="false" :class="moodbClassName[index]" v-modelImg>
|
||||
<img crossOrigin="anonymous" :src="item.imgUrl" :style="{'transform':`translate(-50%, -50%) scale(${item.zoom?item.zoom:1}) rotateZ(${item.angle?item.angle:0}deg)`}" draggable="false" :class="moodbClassName[index]" v-modelImg>
|
||||
<ul v-show="item.setPitch" class="layout_btn" >
|
||||
<li class="layout_btn_top" v-compile.stop="'top'"></li>
|
||||
<li class="layout_btn_bottom" v-compile.stop="'bottom'"></li>
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
<div class="productImg_left">
|
||||
<div class="Guide_1_32">
|
||||
<div class="productImg_content_item_title productImg_content_item_title_menu">
|
||||
<span>{{$t('ProductImg.MagicTools')}}</span>
|
||||
<!-- <span>{{$t('ProductImg.MagicTools')}}</span> -->
|
||||
<generalMenu class="productImg_content_item_title_menubtn" :class="{hideEvents:driver__.driver}" :dataList="productimgMenuList" @setprintModel="setproduct" :item="productimgMenu"></generalMenu>
|
||||
</div>
|
||||
<div class="input_border productImg_content_item_generate">
|
||||
@@ -899,7 +899,11 @@ methods: {
|
||||
.productImg_content_item_imgBox{
|
||||
.content_item_imgBox_itemImg{
|
||||
width: auto;
|
||||
max-width: 9rem;
|
||||
flex-shrink: 0;
|
||||
img{
|
||||
object-fit: contain;
|
||||
}
|
||||
}
|
||||
}
|
||||
.productImg_content_item_generate{
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<div id="app">
|
||||
<div class="captcha">
|
||||
<input v-for="(c, index) in getCtData" :key="index"
|
||||
type="number"
|
||||
v-model="getCtData[index]" ref="input"
|
||||
@input="e => {onInput(e.target.value, index)}"
|
||||
@keydown.delete="e=>{onKeydown(e.target.value, index)}"
|
||||
|
||||
@@ -358,10 +358,12 @@ export default defineComponent({
|
||||
)
|
||||
exportCanvas.add(obj)
|
||||
})
|
||||
let data = exportCanvas.toDataURL('jpg')
|
||||
let data = canvas.toDataURL({
|
||||
format: 'png',
|
||||
quality: 1 // 质量参数,范围 0.0 - 1.0
|
||||
});
|
||||
cancelDsign()
|
||||
clearCanvas()
|
||||
console.log(data);
|
||||
emit('submitBase64Data',data)
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user