leilei
|
@ -25,20 +25,20 @@ import { reactive } from 'vue'
|
|||
const emit = defineEmits(['movecard'])
|
||||
|
||||
const icons = reactive({
|
||||
up: '/static/index/movemode/upicon.png',
|
||||
right: '/static/index/movemode/righticon.png',
|
||||
down: '/static/index/movemode/downicon.png',
|
||||
left: '/static/index/movemode/lefticon.png'
|
||||
up: '/static/index/movemode/bupicon.png',
|
||||
right: '/static/index/movemode/brighticon.png',
|
||||
down: '/static/index/movemode/bdownicon.png',
|
||||
left: '/static/index/movemode/blefticon.png'
|
||||
})
|
||||
|
||||
function handleClick(key, dir) {
|
||||
icons[key] = `/static/index/movemode/blue${key}icon.png`
|
||||
// icons[key] = `/static/index/movemode/blue${key}icon.png`
|
||||
emit('movecard', dir)
|
||||
|
||||
// 延迟一点时间再恢复图标(视觉反馈)
|
||||
setTimeout(() => {
|
||||
icons[key] = `/static/index/movemode/${key}icon.png`
|
||||
}, 150)
|
||||
// setTimeout(() => {
|
||||
// icons[key] = `/static/index/movemode/${key}icon.png`
|
||||
// }, 150)
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@ -46,11 +46,15 @@ function handleClick(key, dir) {
|
|||
.move-circle {
|
||||
position: absolute;
|
||||
bottom: 300rpx;
|
||||
left: -200rpx;
|
||||
left: 0;
|
||||
width: 350rpx;
|
||||
height: 350rpx;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(127, 127, 127, 0.3);
|
||||
// border-radius: 50%;
|
||||
background-image: url('/static/index/movemode/bj.png');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
// background-color: rgba(127, 127, 127, 0.3);
|
||||
z-index: 9999;
|
||||
}
|
||||
.container-img {
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
<template>
|
||||
<view class="all-circle">
|
||||
<view class="move-circle" @click="confirm">
|
||||
<view class="move-circle" v-show="!gray" @click="confirm">
|
||||
确认
|
||||
</view>
|
||||
<view class="move-circle-bad" v-show="gray">
|
||||
确认
|
||||
</view>
|
||||
<view v-show="clickstauts" class="delete-circle" @click="back">
|
||||
|
@ -22,7 +25,10 @@
|
|||
type: Number,
|
||||
required: true,
|
||||
},
|
||||
|
||||
gray:{
|
||||
type: Boolean,
|
||||
required: true,
|
||||
}
|
||||
});
|
||||
const confirm = () =>{
|
||||
emit('clickcircle',0)
|
||||
|
@ -56,6 +62,22 @@
|
|||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
.move-circle-bad{
|
||||
position: absolute;
|
||||
bottom: 200rpx;
|
||||
right: 40rpx;
|
||||
width: 160rpx;
|
||||
height: 160rpx;
|
||||
border-radius: 50%;
|
||||
background-color: #c2c9d3;
|
||||
// opacity:0.5;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle{
|
||||
position: absolute;
|
||||
bottom: 50rpx;
|
||||
|
|
|
@ -0,0 +1,88 @@
|
|||
<template>
|
||||
<view class="all-circle">
|
||||
<view class="move-circle" @click="confirm">
|
||||
{{ismove? `确定`:`移动`}}
|
||||
</view>
|
||||
<view class="delete-circle-bad" @click="back">
|
||||
{{ismove? `取消`:`删除`}}
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import {
|
||||
ref
|
||||
} from 'vue'
|
||||
|
||||
const props = defineProps({
|
||||
ismove: {
|
||||
type: Boolean,
|
||||
required: true,
|
||||
},
|
||||
|
||||
});
|
||||
const emit = defineEmits(['clickcard']);
|
||||
const confirm = () =>{
|
||||
emit('clickcard',0)
|
||||
}
|
||||
const back = () =>{
|
||||
emit('clickcard',1)
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.all-circle{
|
||||
position: absolute;
|
||||
bottom: 300rpx;
|
||||
right: 50rpx;
|
||||
width: 500rpx;
|
||||
height: 500rpx;
|
||||
}
|
||||
.move-circle{
|
||||
position: absolute;
|
||||
bottom: 200rpx;
|
||||
right: 40rpx;
|
||||
width: 160rpx;
|
||||
height: 160rpx;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
// opacity:0.5;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle{
|
||||
position: absolute;
|
||||
bottom: 50rpx;
|
||||
right: 150rpx;
|
||||
width: 160rpx;
|
||||
height: 160rpx;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
// opacity:0.5;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle-bad{
|
||||
position: absolute;
|
||||
bottom: 50rpx;
|
||||
right: 150rpx;
|
||||
width: 160rpx;
|
||||
height: 160rpx;
|
||||
border-radius: 50%;
|
||||
background-color: #c2c9d3;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,81 @@
|
|||
<template>
|
||||
<view class="all-circle">
|
||||
<view class="move-circle" @click="confirm">
|
||||
确定
|
||||
</view>
|
||||
<view class="delete-circle-bad" @click="back">
|
||||
取消
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import {
|
||||
ref
|
||||
} from 'vue'
|
||||
|
||||
const emit = defineEmits(['clickdelete']);
|
||||
const confirm = () =>{
|
||||
emit('clickdelete',0)
|
||||
}
|
||||
const back = () =>{
|
||||
emit('clickdelete',1)
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.all-circle{
|
||||
position: absolute;
|
||||
bottom: 300rpx;
|
||||
right: 50rpx;
|
||||
width: 500rpx;
|
||||
height: 500rpx;
|
||||
}
|
||||
.move-circle{
|
||||
position: absolute;
|
||||
bottom: 200rpx;
|
||||
right: 40rpx;
|
||||
width: 160rpx;
|
||||
height: 160rpx;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
// opacity:0.5;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle{
|
||||
position: absolute;
|
||||
bottom: 50rpx;
|
||||
right: 150rpx;
|
||||
width: 160rpx;
|
||||
height: 160rpx;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
// opacity:0.5;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle-bad{
|
||||
position: absolute;
|
||||
bottom: 50rpx;
|
||||
right: 150rpx;
|
||||
width: 160rpx;
|
||||
height: 160rpx;
|
||||
border-radius: 50%;
|
||||
background-color: #c2c9d3;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 35rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
</style>
|
|
@ -1002,7 +1002,7 @@
|
|||
margin-left: 30rpx;
|
||||
margin-right: 30rpx;
|
||||
margin-top: 20rpx;
|
||||
|
||||
|
||||
.month-one {
|
||||
width: 75rpx;
|
||||
height: 75rpx;
|
||||
|
|
|
@ -252,7 +252,7 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 拉动松手的弹出层 -->
|
||||
<!-- 点击右侧按钮的弹出层 -->
|
||||
<view v-if="songisopen" class="popup-song" @click="songisopen=false">
|
||||
<view class="popup-song-contain" :style="{opacity: songisopacity ? 1 : 0}" @click.stop>
|
||||
<view class="popup-song-father">
|
||||
|
@ -1084,7 +1084,6 @@
|
|||
//表格拖动结束
|
||||
const rulerEnd = async (res : any) => {
|
||||
isBack.value = false;
|
||||
console.log("!!!!", props.liang.index0 !== 999 && res)
|
||||
if (props.liang.index0 !== 999 && res) {
|
||||
//检测拖动是否超出范围和是否不合法
|
||||
if (redNameindex0.value.includes(props.liang.index0 + (currentNumber.value * 6)) || redNameindex1.value !== props.liang.index1) {
|
||||
|
|
|
@ -68,37 +68,40 @@
|
|||
height: 100vh;
|
||||
transition: opacity 1s ease;
|
||||
position: relative;
|
||||
|
||||
.joystick {
|
||||
position: absolute;
|
||||
bottom: 200rpx;
|
||||
left: 20rpx;
|
||||
width: 300rpx;
|
||||
height: 300rpx;
|
||||
z-index: 9999;
|
||||
position: absolute;
|
||||
bottom: 200rpx;
|
||||
left: 20rpx;
|
||||
width: 300rpx;
|
||||
height: 300rpx;
|
||||
z-index: 9999;
|
||||
}
|
||||
|
||||
|
||||
.outer-circle {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(127,127,127,0.1);
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(127, 127, 127, 0.1);
|
||||
position: relative;
|
||||
}
|
||||
|
||||
|
||||
.inner-circle {
|
||||
width: 120rpx;
|
||||
height: 120rpx;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(127,127,127,0.3);
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
width: 120rpx;
|
||||
height: 120rpx;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(127, 127, 127, 0.3);
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
.doctorsay-container-view {
|
||||
width: 100%;
|
||||
height: 1220rpx;
|
||||
display: flex;
|
||||
|
||||
.doctorsay-container-container {
|
||||
border: 2rpx solid #fff;
|
||||
width: 2050rpx;
|
||||
|
@ -457,7 +460,16 @@
|
|||
z-index: 999;
|
||||
font-size: 50rpx;
|
||||
}
|
||||
|
||||
.title-time-blue {
|
||||
position: absolute;
|
||||
top: 0rpx;
|
||||
left: 0rpx;
|
||||
z-index: 10;
|
||||
.title-time-blue-img{
|
||||
height: 209rpx;
|
||||
width: 226rpx;
|
||||
}
|
||||
}
|
||||
.title-time {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
|
@ -465,13 +477,13 @@
|
|||
|
||||
.title-time-time {
|
||||
font-size: 32rpx;
|
||||
margin-left: 20rpx;
|
||||
margin-left: 10rpx;
|
||||
margin-top: 12rpx;
|
||||
}
|
||||
|
||||
.title-time-button {
|
||||
position: absolute;
|
||||
top: -4rpx;
|
||||
top: -6rpx;
|
||||
right: -4rpx;
|
||||
width: 65rpx;
|
||||
height: 60rpx;
|
||||
|
@ -487,7 +499,7 @@
|
|||
|
||||
.title-time-font {
|
||||
position: absolute;
|
||||
top: 7rpx;
|
||||
top: 3rpx;
|
||||
right: 5rpx;
|
||||
font-size: 20rpx;
|
||||
color: #fff;
|
||||
|
@ -510,14 +522,14 @@
|
|||
|
||||
.popup-delete-content {
|
||||
position: absolute;
|
||||
right: 515rpx;
|
||||
right: 750rpx;
|
||||
display: flex;
|
||||
// justify-content: center;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
width: 800rpx;
|
||||
height: 500rpx;
|
||||
background: url("/static/index/lightbgcnew.png") center/cover, rgba(255, 255, 255, 0.7);
|
||||
background: url("/static/index/lightbgcnew.png") center/cover, rgba(255, 255, 255, 0.5);
|
||||
background-blend-mode: screen;
|
||||
border: 2rpx solid #fff;
|
||||
/* 使用 screen 混合模式,让图像与白色混合变淡 */
|
||||
|
@ -552,6 +564,7 @@
|
|||
justify-content: center;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
margin: 0 10rpx;
|
||||
}
|
||||
|
||||
.popup-delete-button-right {
|
||||
|
@ -562,7 +575,7 @@
|
|||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin-right: 20rpx;
|
||||
margin: 0 10rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -749,8 +762,9 @@
|
|||
margin-left: 30rpx;
|
||||
margin-right: 30rpx;
|
||||
margin-bottom: 60rpx;
|
||||
|
||||
.arrayindex-one {
|
||||
width: 222rpx;
|
||||
width: 285rpx;
|
||||
height: 100rpx;
|
||||
margin-left: 20rpx;
|
||||
margin-top: 20rpx;
|
||||
|
@ -764,7 +778,7 @@
|
|||
}
|
||||
|
||||
.arrayindex-one-target {
|
||||
width: 222rpx;
|
||||
width: 285rpx;
|
||||
height: 100rpx;
|
||||
margin-left: 20rpx;
|
||||
margin-top: 20rpx;
|
||||
|
@ -778,6 +792,7 @@
|
|||
font-size: 29rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.secondarrayindex {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
@ -786,6 +801,7 @@
|
|||
margin-left: 30rpx;
|
||||
margin-right: 30rpx;
|
||||
margin-bottom: 60rpx;
|
||||
|
||||
.arrayindex-one {
|
||||
width: 380rpx;
|
||||
height: 100rpx;
|
||||
|
@ -799,7 +815,7 @@
|
|||
align-items: center;
|
||||
font-size: 29rpx;
|
||||
}
|
||||
|
||||
|
||||
.arrayindex-one-target {
|
||||
width: 380rpx;
|
||||
height: 100rpx;
|
||||
|
@ -922,7 +938,7 @@
|
|||
margin-left: 30rpx;
|
||||
margin-right: 30rpx;
|
||||
margin-top: 20rpx;
|
||||
|
||||
margin-bottom: 30rpx;
|
||||
.month-one {
|
||||
width: 75rpx;
|
||||
height: 75rpx;
|
||||
|
@ -960,6 +976,7 @@
|
|||
margin-left: 30rpx;
|
||||
margin-right: 30rpx;
|
||||
margin-top: 20rpx;
|
||||
margin-bottom: 30rpx;
|
||||
|
||||
.week-one {
|
||||
width: 200rpx;
|
||||
|
@ -997,6 +1014,7 @@
|
|||
flex-wrap: wrap;
|
||||
margin-left: 75rpx;
|
||||
margin-right: 30rpx;
|
||||
/* margin-bottom: 30rpx; */
|
||||
|
||||
.radio-circle {
|
||||
margin-top: 2rpx;
|
||||
|
@ -1034,6 +1052,12 @@
|
|||
margin-right: 60rpx;
|
||||
font-size: 29rpx;
|
||||
}
|
||||
.radio-font-target {
|
||||
color: rgb(2, 171, 254);;
|
||||
margin-left: 15rpx;
|
||||
margin-right: 60rpx;
|
||||
font-size: 29rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.title-time-border {
|
||||
|
@ -1223,7 +1247,7 @@
|
|||
}
|
||||
|
||||
.down-icons {
|
||||
margin-top: 10rpx;
|
||||
margin-top: 17rpx;
|
||||
width: 100%;
|
||||
height: 60rpx;
|
||||
background-color: rgb(255, 216, 126);
|
||||
|
@ -1300,14 +1324,18 @@
|
|||
#0184db calc(50% - 1px),
|
||||
#0184db calc(50% + 1px),
|
||||
transparent calc(50% + 1px));
|
||||
.boom-title-left{
|
||||
|
||||
.boom-title-left {
|
||||
position: absolute;
|
||||
top: 40rpx;
|
||||
left: 10rpx;
|
||||
font-size: 25rpx;
|
||||
font-weight: 700;
|
||||
};
|
||||
.boom-title-right{
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
.boom-title-right {
|
||||
position: absolute;
|
||||
top: 10rpx;
|
||||
left: 60rpx;
|
||||
|
|
|
@ -6,9 +6,16 @@
|
|||
<!-- 轮盘 -->
|
||||
<joystick v-show="isEdit" @movecard="movecard" />
|
||||
<!-- 按钮 -->
|
||||
<skill v-show="isEdit && songisopen" :clickstauts="clickstauts" @clickcircle="clickcircle" />
|
||||
<skill v-show="isEdit && songisopen && !isMove && !deleteisopen" :clickstauts="clickstauts"
|
||||
:gray="cardsumit.weekTimeNumber===-1 && cardsumit.monthTimeNumber===-1&&clickstauts === 2"
|
||||
@clickcircle="clickcircle" />
|
||||
<!-- 新增 -->
|
||||
<skilladd v-show="isEdit && !songisopen" @getDownListIndex="openAdd" />
|
||||
<skilladd v-show="!haveName && isEdit && !songisopen && !isMove" @getDownListIndex="openAdd" />
|
||||
<!-- 移动 -->
|
||||
<skillmove v-show="(haveName && isEdit && !songisopen) ||(isEdit && !songisopen && isMove)" :ismove="isMove"
|
||||
@clickcard="changecard" />
|
||||
<!-- 删除 -->
|
||||
<skilmovedelete v-show="deleteisopen" @clickdelete="clickdelete" />
|
||||
<view class="right-container-title-nav">
|
||||
<text :class="darkFans?`right-container-title-no-dark`:`right-container-title-no`">
|
||||
ID:12345678
|
||||
|
@ -119,7 +126,9 @@
|
|||
@click.stop="deleteItems(item1,index0,index1)">
|
||||
-
|
||||
</view>
|
||||
|
||||
<view class="title-time-blue" v-show="saveEditIndex.index0 == index0 && saveEditIndex.index1 == index1">
|
||||
<image class="title-time-blue-img" :src="isMove?`/static/index/movemode/targetcheng.png`: `/static/index/movemode/target.png`" />
|
||||
</view>
|
||||
<view :class="getClass(item1,index0,index1)"
|
||||
style="font-size: 30rpx;overflow: hidden;"
|
||||
:style="{ animationDelay:`-${computeDelay(index0, index1).toFixed(2)}s` }">
|
||||
|
@ -127,7 +136,7 @@
|
|||
v-show=" liang.index0 !== index0 || liang.index1 !== index1 || canmove"
|
||||
style="margin-top: 5rpx;">
|
||||
<view class="title-time-time"
|
||||
style="font-size: 30rpx;">
|
||||
style="font-size: 25rpx;">
|
||||
{{item1.startTime + `-` + item1.endTime}}
|
||||
</view>
|
||||
<image class="title-time-button"
|
||||
|
@ -217,8 +226,8 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 拉动松手的弹出层 -->
|
||||
<view v-if="songisopen" class="popup-song" @click="">
|
||||
<!-- 选择的弹出层 -->
|
||||
<view v-if="songisopen" class="popup-song">
|
||||
<view class="popup-song-contain" :style="{opacity: songisopacity ? 1 : 0}" @click.stop>
|
||||
<view class="popup-song-father">
|
||||
<image class="shu-up-img" src="/static/index/cheng.png" />
|
||||
|
@ -261,24 +270,59 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="shu-container-left" v-show="clickstauts===2">
|
||||
<view class="shu-container-left-gun"></view>
|
||||
<view class="shu-container-left-font">周期类型</view>
|
||||
</view>
|
||||
<view class="radio-father" v-show="clickstauts===2">
|
||||
<view :class="isweek?`radio-circle-target`: `radio-circle`"></view>
|
||||
<view :class="isweek&&selectType? `radio-font-target` : `radio-font`">每周</view>
|
||||
<view :class="!isweek?`radio-circle-target`: `radio-circle`"></view>
|
||||
<view :class="!isweek&&selectType? `radio-font-target` : `radio-font`">每月</view>
|
||||
</view>
|
||||
<view class="week-father" v-show="isweek&&clickstauts===2">
|
||||
<view v-for="(item,index) in weekDays" :key="index">
|
||||
<view :class="cardsumit.weekTimeNumber===index?`week-one-target`:`week-one`">
|
||||
{{item}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="month-father" v-show="!isweek&&clickstauts===2">
|
||||
<view v-for="(item,index) in days" :key="index">
|
||||
<view :class="cardsumit.monthTimeNumber===index?`month-one-target`:`month-one`">
|
||||
{{item}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<!-- 删除表格的的弹出层 -->
|
||||
<view v-show="deleteisopen" class="popup-delete" @click="deleteisopen=false">
|
||||
<view class="popup-delete-content" :style="{ opacity: deleteisopacity ? 1 : 0 }" @click.stop>
|
||||
<view class="popup-delete-content" style="padding-top: 30rpx;" :style="{ opacity: deleteisopacity ? 1 : 0 }"
|
||||
@click.stop>
|
||||
<image class="popup-delete-img" src="/static/index/deleteicon.png" />
|
||||
<view class="popup-delete-text">
|
||||
<view style="margin-top: 30rpx;" class="popup-delete-text">
|
||||
确定要删除 {{deletename}} 吗?
|
||||
</view>
|
||||
<view class="popup-delete-button">
|
||||
<view class="popup-delete-button-right" @click="deleteisopen=false">
|
||||
<!-- <view class="popup-delete-button">
|
||||
<view :class="!deleteButton? `popup-delete-button-right`:`popup-delete-button-left`" @click="deleteisopen=false">
|
||||
取消
|
||||
</view>
|
||||
<view class="popup-delete-button-left" @click="deleteRuler(deleteindex[0],deleteindex[1])">
|
||||
<view :class="deleteButton? `popup-delete-button-right`:`popup-delete-button-left`" @click="deleteRuler(deleteindex[0],deleteindex[1]);isHave()">
|
||||
确定
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
</view>
|
||||
<!-- 替换表格的的弹出层 -->
|
||||
<view v-show="replacementisopen" class="popup-delete" @click="replacementisopen=false">
|
||||
<view class="popup-delete-content" style="padding-top: 30rpx;" :style="{ opacity: replacementisopacity ? 1 : 0 }"
|
||||
@click.stop>
|
||||
<image class="popup-delete-img" src="/static/index/deleteicon.png" />
|
||||
<view style="margin-top: 30rpx;" class="popup-delete-text">
|
||||
该单元格已有服务指令,是否替换旧服务指令
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -326,8 +370,6 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
|
@ -340,7 +382,8 @@
|
|||
import joystick from '@/component/public/game/joystick.vue';
|
||||
import skill from '@/component/public/game/skill.vue';
|
||||
import skilladd from '@/component/public/game/skilladd.vue'
|
||||
|
||||
import skillmove from '@/component/public/game/skilmove.vue'
|
||||
import skilmovedelete from '@/component/public/game/skilmovedelete.vue'
|
||||
const props = defineProps({
|
||||
isshow: {
|
||||
type: Boolean,
|
||||
|
@ -369,8 +412,6 @@
|
|||
bottomisShaking.value = false
|
||||
shakyTable.value = false
|
||||
})
|
||||
onMounted(() => {
|
||||
})
|
||||
const bottomItems = ref([
|
||||
{
|
||||
name: '纸尿裤',
|
||||
|
@ -417,21 +458,101 @@
|
|||
const deleteisopen = ref(false);
|
||||
const deletename = ref("")
|
||||
const deleteisopacity = ref(false)
|
||||
// 替换表格弹窗
|
||||
const replacementisopen = ref(false);
|
||||
const replacementname = ref("")
|
||||
const replacementisopacity = ref(false)
|
||||
//第几套表格
|
||||
const currentNumber = ref(1);
|
||||
const scrollKey = ref(0);
|
||||
const updo = ref(0);
|
||||
const downdo = ref(0);
|
||||
|
||||
const isMove = ref(false);
|
||||
// 替换新的
|
||||
const getNew = () =>{
|
||||
let object = JSON.parse(JSON.stringify(timearr.value[flyNumber.value.index0].children[flyNumber.value.index1]))
|
||||
indexsave.value = [saveEditIndex.value.index0 + (currentNumber.value * 8), saveEditIndex.value.index1]
|
||||
// 旧的typeName保存了
|
||||
let typeName = timearr.value[flyNumber.value.index0].children[flyNumber.value.index1].typeName
|
||||
// console.log("???",flyNumber.value.index0,flyNumber.value.index1)
|
||||
timearr.value[flyNumber.value.index0].children[flyNumber.value.index1] = { directiveName: '', typeName: typeName }
|
||||
//然后保存新的
|
||||
let newtypeName = timearr.value[indexsave.value[0]].children[indexsave.value[1]].typeName
|
||||
timearr.value[indexsave.value[0]].children[indexsave.value[1]] = object
|
||||
timearr.value[indexsave.value[0]].children[indexsave.value[1]].typeName = newtypeName
|
||||
let startTime = timearr.value[indexsave.value[0]].children[indexsave.value[1]].startTime;
|
||||
let endTime = timearr.value[indexsave.value[0]].children[indexsave.value[1]].endTime;
|
||||
let positioning = timearr.value[indexsave.value[0]].positioning
|
||||
const rest = startTime.split(":")[1]; // ":20"
|
||||
const rest0 = endTime.split(":")[1];; // ":20"
|
||||
let many = Number(rest0) - Number(rest);
|
||||
let start = newtypeName
|
||||
let end = Number(start) + many
|
||||
// 用 positioning 替换原来的小时部分
|
||||
timearr.value[indexsave.value[0]].children[indexsave.value[1]].startTime = positioning + ":" + start.padStart(2, '0'); // "9:20"
|
||||
timearr.value[indexsave.value[0]].children[indexsave.value[1]].endTime = positioning + ":" + String(end % 60).padStart(2, '0'); // "9:20"
|
||||
flyNumber.value.index0 = -1;
|
||||
flyNumber.value.index1 = -1;
|
||||
isMove.value = false;
|
||||
isHave()
|
||||
}
|
||||
const changecard = (type : number) => {
|
||||
//1是删除,0是移动
|
||||
if (isMove.value) {
|
||||
if(replacementisopen.value){
|
||||
if(type){
|
||||
flyNumber.value.index0 = -1;
|
||||
flyNumber.value.index1 = -1;
|
||||
isMove.value = false;
|
||||
}else{
|
||||
getNew()
|
||||
|
||||
}
|
||||
replacementisopen.value = false;
|
||||
}else{
|
||||
if (type) {
|
||||
flyNumber.value.index0 = -1;
|
||||
flyNumber.value.index1 = -1;
|
||||
isMove.value = false
|
||||
// deleteItems(timearr.value[saveEditIndex.value.index0 + (currentNumber.value * 8)].children[saveEditIndex.value.index1],saveEditIndex.value.index0,saveEditIndex.value.index1)
|
||||
} else {
|
||||
if(timearr.value[saveEditIndex.value.index0 + (currentNumber.value * 8)].children[saveEditIndex.value.index1].directiveName){
|
||||
replacementisopacity.value = false;
|
||||
replacementisopen.value = true;
|
||||
setTimeout(() => {
|
||||
replacementisopacity.value = true
|
||||
}, 100)
|
||||
}else{
|
||||
getNew()
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
if (type) {
|
||||
deleteItems(timearr.value[saveEditIndex.value.index0 + (currentNumber.value * 8)].children[saveEditIndex.value.index1], saveEditIndex.value.index0, saveEditIndex.value.index1)
|
||||
} else {
|
||||
flyNumber.value.index0 = saveEditIndex.value.index0 + (currentNumber.value * 8);
|
||||
flyNumber.value.index1 = saveEditIndex.value.index1;
|
||||
isMove.value = true
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
const openAdd = (index : number) => {
|
||||
selectType.value = true;
|
||||
cardsumit.value = {
|
||||
op: {
|
||||
name: "",
|
||||
index: [-1, -1, -1],
|
||||
},
|
||||
startTime: "",
|
||||
monthTimeNumber: -1,
|
||||
monthTime: "",
|
||||
weekTime: ""
|
||||
weekTime: "",
|
||||
weekTimeNumber: -1,
|
||||
}
|
||||
songisopacity.value = false;
|
||||
//虚化的动画
|
||||
|
@ -442,21 +563,12 @@
|
|||
// 存储 两个index
|
||||
cardsumit.value.op.index[0] = index
|
||||
cardsumit.value.op.index[1] = 0
|
||||
|
||||
// cardsumit.value.op.index[1] = downmenuIndex.value
|
||||
// 存储时间和二级数组
|
||||
openValue.value.time = timearr.value[saveEditIndex.value.index0 + (currentNumber.value * 8)].positioning;
|
||||
// console.log("!!!!!!!!!!!",saveEditIndex.value.index0 + (currentNumber.value * 8),)
|
||||
openValue.value.minute = timearr.value[saveEditIndex.value.index0 + (currentNumber.value * 8)].children[saveEditIndex.value.index1].typeName
|
||||
openValue.value.array = bigArray.value[index].children;
|
||||
|
||||
//将逗号换成()
|
||||
// openValue.value.array.forEach((element : any) => {
|
||||
// element.relName = element.title + (element.tagName ? element.tagName.split(",").map(item => `(${item})`).join("") : "")
|
||||
// })
|
||||
//存储选中表格的坐标
|
||||
indexsave.value = [saveEditIndex.value.index0 + (currentNumber.value * 8), saveEditIndex.value.index1]
|
||||
// clickOp(0, openValue.value.array[0])
|
||||
}
|
||||
function dosomesave() {
|
||||
cardsumit.value.op.name = secondopenValue.value[cardsumit.value.op.index[2]].relName
|
||||
|
@ -474,18 +586,22 @@
|
|||
break;
|
||||
}
|
||||
}
|
||||
const selectType = ref(true);
|
||||
const deleteButton = ref(false);
|
||||
// 给摇杆用的
|
||||
//看完迷糊不,我都迷糊了
|
||||
//0上1右2下3左
|
||||
// songisopen.value是弹窗打没打开
|
||||
// clickstauts.value是弹窗的第几步
|
||||
// selectType.value是选择周和月的状态
|
||||
const movecard = (where : number) => {
|
||||
if (songisopen.value) {
|
||||
// clickstauts.value === 1
|
||||
if (!clickstauts.value) {
|
||||
switch (where) {
|
||||
case 0:
|
||||
if (cardsumit.value.op.index[1] > 4) {
|
||||
cardsumit.value.op.index[1] = cardsumit.value.op.index[1] - 5
|
||||
|
||||
if (cardsumit.value.op.index[1] > 3) {
|
||||
cardsumit.value.op.index[1] = cardsumit.value.op.index[1] - 4
|
||||
}
|
||||
|
||||
break
|
||||
case 1:
|
||||
if (openValue.value.array.length - 1 == cardsumit.value.op.index[1]) {
|
||||
|
@ -493,15 +609,13 @@
|
|||
} else {
|
||||
cardsumit.value.op.index[1]++;
|
||||
}
|
||||
|
||||
break
|
||||
case 2:
|
||||
if (openValue.value.array.length > cardsumit.value.op.index[1] + 5) {
|
||||
cardsumit.value.op.index[1] = cardsumit.value.op.index[1] + 5
|
||||
if (openValue.value.array.length > cardsumit.value.op.index[1] + 4) {
|
||||
cardsumit.value.op.index[1] = cardsumit.value.op.index[1] + 4
|
||||
} else {
|
||||
cardsumit.value.op.index[1] = openValue.value.array.length - 1
|
||||
}
|
||||
|
||||
break
|
||||
case 3:
|
||||
if (cardsumit.value.op.index[1]) {
|
||||
|
@ -509,7 +623,6 @@
|
|||
} else {
|
||||
cardsumit.value.op.index[1] = openValue.value.array.length - 1
|
||||
}
|
||||
|
||||
break
|
||||
}
|
||||
} else if (clickstauts.value === 1) {
|
||||
|
@ -519,7 +632,6 @@
|
|||
cardsumit.value.op.index[2] = cardsumit.value.op.index[2] - 3
|
||||
dosomesave()
|
||||
}
|
||||
|
||||
break
|
||||
case 1:
|
||||
if (secondopenValue.value.length - 1 == cardsumit.value.op.index[2]) {
|
||||
|
@ -546,63 +658,192 @@
|
|||
dosomesave()
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
switch (where) {
|
||||
case 0:
|
||||
if (saveEditIndex.value.index1) {
|
||||
saveEditIndex.value.index1--
|
||||
} else if (clickstauts.value === 2) {
|
||||
if (selectType.value) {
|
||||
if (where === 1 || where === 3) {
|
||||
isweek.value = !isweek.value
|
||||
if (isweek.value) {
|
||||
cardsumit.value.monthTime = '';
|
||||
cardsumit.value.monthTimeNumber = -1;
|
||||
} else {
|
||||
cardsumit.value.weekTime = '';
|
||||
cardsumit.value.weekTimeNumber = -1;
|
||||
}
|
||||
} else if (where === 2) {
|
||||
|
||||
if (isweek.value) {
|
||||
cardsumit.value.weekTime = '周一';
|
||||
cardsumit.value.weekTimeNumber = 0
|
||||
} else {
|
||||
cardsumit.value.monthTime = '01';
|
||||
cardsumit.value.monthTimeNumber = 0
|
||||
}
|
||||
selectType.value = false;
|
||||
}
|
||||
if (updo.value) {
|
||||
updo.value--
|
||||
} else {
|
||||
if (isweek.value) {
|
||||
switch (where) {
|
||||
case 0:
|
||||
if (cardsumit.value.weekTimeNumber > 4) {
|
||||
cardsumit.value.weekTimeNumber = cardsumit.value.weekTimeNumber - 5;
|
||||
cardsumit.value.weekTime = weekDays[cardsumit.value.weekTimeNumber]
|
||||
} else {
|
||||
selectType.value = true;
|
||||
cardsumit.value.weekTime = ""
|
||||
cardsumit.value.weekTimeNumber = -1
|
||||
}
|
||||
|
||||
break
|
||||
case 1:
|
||||
if (weekDays.length - 1 == cardsumit.value.weekTimeNumber) {
|
||||
cardsumit.value.weekTimeNumber = 0;
|
||||
} else {
|
||||
cardsumit.value.weekTimeNumber++;
|
||||
}
|
||||
cardsumit.value.weekTime = weekDays[cardsumit.value.weekTimeNumber]
|
||||
break
|
||||
case 2:
|
||||
if (weekDays.length > cardsumit.value.weekTimeNumber + 5) {
|
||||
cardsumit.value.weekTimeNumber = cardsumit.value.weekTimeNumber + 5
|
||||
} else {
|
||||
cardsumit.value.weekTimeNumber = weekDays.length - 1
|
||||
}
|
||||
cardsumit.value.weekTime = weekDays[cardsumit.value.weekTimeNumber]
|
||||
break
|
||||
case 3:
|
||||
if (cardsumit.value.weekTimeNumber) {
|
||||
cardsumit.value.weekTimeNumber--;
|
||||
} else {
|
||||
cardsumit.value.weekTimeNumber = weekDays.length - 1
|
||||
}
|
||||
break
|
||||
}
|
||||
} else {
|
||||
if (saveEditIndex.value.index1 < 12) {
|
||||
scrollTop.value = (saveEditIndex.value.index1) * 104.5
|
||||
switch (where) {
|
||||
case 0:
|
||||
if (cardsumit.value.monthTimeNumber > 11) {
|
||||
cardsumit.value.monthTimeNumber = cardsumit.value.monthTimeNumber - 12;
|
||||
cardsumit.value.monthTime = days[cardsumit.value.monthTimeNumber]
|
||||
} else {
|
||||
selectType.value = true;
|
||||
cardsumit.value.monthTime = ""
|
||||
cardsumit.value.monthTimeNumber = -1
|
||||
}
|
||||
|
||||
break
|
||||
case 1:
|
||||
if (days.length - 1 == cardsumit.value.monthTimeNumber) {
|
||||
cardsumit.value.monthTimeNumber = 0;
|
||||
} else {
|
||||
cardsumit.value.monthTimeNumber++;
|
||||
}
|
||||
cardsumit.value.monthTime = days[cardsumit.value.monthTimeNumber]
|
||||
break
|
||||
case 2:
|
||||
if (days.length > cardsumit.value.monthTimeNumber + 12) {
|
||||
cardsumit.value.monthTimeNumber = cardsumit.value.monthTimeNumber + 12
|
||||
} else {
|
||||
cardsumit.value.monthTimeNumber = days.length - 1
|
||||
}
|
||||
cardsumit.value.monthTime = days[cardsumit.value.monthTimeNumber]
|
||||
break
|
||||
case 3:
|
||||
if (cardsumit.value.monthTimeNumber) {
|
||||
cardsumit.value.monthTimeNumber--;
|
||||
} else {
|
||||
cardsumit.value.monthTimeNumber = days.length - 1
|
||||
}
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (deleteisopen.value) {
|
||||
deleteButton.value = !deleteButton.value
|
||||
} else {
|
||||
switch (where) {
|
||||
case 0:
|
||||
if (saveEditIndex.value.index1) {
|
||||
saveEditIndex.value.index1--
|
||||
}
|
||||
downdo.value = 2
|
||||
}
|
||||
|
||||
break
|
||||
case 1:
|
||||
saveEditIndex.value.index0++
|
||||
if (saveEditIndex.value.index0 > 7) {
|
||||
currentNumber.value++
|
||||
saveEditIndex.value.index0 = 0;
|
||||
}
|
||||
break
|
||||
case 2:
|
||||
if (saveEditIndex.value.index1 == 11) {
|
||||
return
|
||||
}
|
||||
saveEditIndex.value.index1++
|
||||
|
||||
if (downdo.value) {
|
||||
downdo.value--
|
||||
} else {
|
||||
if (saveEditIndex.value.index1 > 1) {
|
||||
scrollTop.value = (saveEditIndex.value.index1 - 3) * 104.5
|
||||
}
|
||||
updo.value = 2
|
||||
}
|
||||
// scrollTop.value = data.index1 * 104
|
||||
break
|
||||
case 3:
|
||||
saveEditIndex.value.index0--
|
||||
if (saveEditIndex.value.index0 < 0) {
|
||||
|
||||
if (currentNumber.value) {
|
||||
currentNumber.value--
|
||||
if (updo.value) {
|
||||
updo.value--
|
||||
} else {
|
||||
currentNumber.value = 2
|
||||
if (saveEditIndex.value.index1 < 12) {
|
||||
scrollTop.value = (saveEditIndex.value.index1) * 104.5
|
||||
}
|
||||
|
||||
}
|
||||
saveEditIndex.value.index0 = 7;
|
||||
}
|
||||
break
|
||||
isHave()
|
||||
break
|
||||
case 1:
|
||||
saveEditIndex.value.index0++
|
||||
if (saveEditIndex.value.index0 > 7) {
|
||||
if (currentNumber.value == 2) {
|
||||
currentNumber.value = 0
|
||||
} else {
|
||||
currentNumber.value++
|
||||
}
|
||||
// currentNumber.value++
|
||||
saveEditIndex.value.index0 = 0;
|
||||
}
|
||||
isHave()
|
||||
break
|
||||
case 2:
|
||||
if (saveEditIndex.value.index1 == 11) {
|
||||
return
|
||||
}
|
||||
saveEditIndex.value.index1++
|
||||
updo.value = 2
|
||||
if (downdo.value) {
|
||||
downdo.value--
|
||||
} else {
|
||||
if (saveEditIndex.value.index1 > 1) {
|
||||
scrollTop.value = (saveEditIndex.value.index1 - 3) * 104.5
|
||||
}
|
||||
}
|
||||
isHave()
|
||||
break
|
||||
case 3:
|
||||
saveEditIndex.value.index0--
|
||||
if (saveEditIndex.value.index0 < 0) {
|
||||
|
||||
if (currentNumber.value) {
|
||||
currentNumber.value--
|
||||
} else {
|
||||
currentNumber.value = 2
|
||||
}
|
||||
saveEditIndex.value.index0 = 7;
|
||||
}
|
||||
isHave()
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
const haveName = ref(false);
|
||||
const isHave = () => {
|
||||
// console.log("??????",currentNumber.value * 8)
|
||||
if (timearr.value[saveEditIndex.value.index0 + (currentNumber.value * 8)].children[saveEditIndex.value.index1].directiveName) {
|
||||
haveName.value = true;
|
||||
} else {
|
||||
haveName.value = false;
|
||||
}
|
||||
}
|
||||
const clickdelete = (type : number) => {
|
||||
if (type) {
|
||||
deleteisopen.value = false;
|
||||
deleteButton.value = false;
|
||||
} else {
|
||||
deleteRuler(deleteindex.value[0], deleteindex.value[1]);
|
||||
isHave()
|
||||
}
|
||||
}
|
||||
// 给抖动用的
|
||||
function pseudoRandom(index0, index1) {
|
||||
const seed = index0 * 55.9898 + index1 * 78.233;
|
||||
|
@ -643,17 +884,17 @@
|
|||
}
|
||||
// 方法:根据条件返回不同的类名
|
||||
const getClass = (item, index0, index1) => {
|
||||
if (saveEditIndex.value.index0 == index0 && saveEditIndex.value.index1 == index1) {
|
||||
return 'title-time-border-blue';
|
||||
}
|
||||
// if (saveEditIndex.value.index0 == index0 && saveEditIndex.value.index1 == index1) {
|
||||
// return 'title-time-border-blue';
|
||||
// }
|
||||
// else if (!props.canmove && props.liang.index0 === index0 && props.liang.index1 === index1 && (redNameindex0.value.includes(index0 + (currentNumber.value * 6)) || (redNameindex1.value != index1))) {
|
||||
// return 'title-time-border-red';
|
||||
// }
|
||||
else if (!props.canmove && props.liang.index0 === index0 && props.liang.index1 === index1) {
|
||||
return 'title-time-border-blue';
|
||||
}
|
||||
else if (item.cycleType === '日常') {
|
||||
if (flyNumber.value.index0 === (index0 + (currentNumber.value * 8)) && flyNumber.value.index1 === index1 && shakyTable.value) {
|
||||
// else if (!props.canmove && props.liang.index0 === index0 && props.liang.index1 === index1) {
|
||||
// return 'title-time-border-blue';
|
||||
// }
|
||||
if (item.cycleType === '日常') {
|
||||
if (flyNumber.value.index0 === (index0 + (currentNumber.value * 8)) && flyNumber.value.index1 === index1) {
|
||||
return 'title-time-border-yellow-active-transparent';
|
||||
} else if (shakyTable.value) {
|
||||
return 'title-time-border-yellow-active';
|
||||
|
@ -662,7 +903,7 @@
|
|||
}
|
||||
} else if (item.cycleType) {
|
||||
//为啥这么写,是因为动画写行内无效!!!
|
||||
if (flyNumber.value.index0 === (index0 + (currentNumber.value * 8)) && flyNumber.value.index1 === index1 && shakyTable.value) {
|
||||
if (flyNumber.value.index0 === (index0 + (currentNumber.value * 8)) && flyNumber.value.index1 === index1) {
|
||||
return 'title-time-border-pouple-active-transparent';
|
||||
}
|
||||
else if (shakyTable.value) {
|
||||
|
@ -701,7 +942,6 @@
|
|||
const clickcircle = (index : number) => {
|
||||
if (!index) {
|
||||
clickstauts.value++
|
||||
|
||||
} else {
|
||||
if (clickstauts.value) {
|
||||
clickstauts.value--
|
||||
|
@ -709,8 +949,8 @@
|
|||
songisopen.value = false
|
||||
}
|
||||
}
|
||||
|
||||
if (clickstauts.value === 1) {
|
||||
cardsumit.value.op.index[2] = 1
|
||||
secondopenValue.value = []
|
||||
secondopenValue.value = openValue.value.array[cardsumit.value.op.index[1]].children
|
||||
secondopenValue.value.forEach((element : any) => {
|
||||
|
@ -718,7 +958,18 @@
|
|||
})
|
||||
clickOp(0, secondopenValue.value[0])
|
||||
}
|
||||
else if (clickstauts.value === 2){
|
||||
else if (clickstauts.value === 2) {
|
||||
if (openOp.value == 1) {
|
||||
cardsumit.value.weekTime = "";
|
||||
cardsumit.value.monthTime = "";
|
||||
isweek.value = true
|
||||
// clickstauts.value =
|
||||
} else {
|
||||
clickstauts.value = 0
|
||||
movetoruler()
|
||||
}
|
||||
|
||||
} else if (clickstauts.value === 3) {
|
||||
clickstauts.value = 0
|
||||
movetoruler()
|
||||
}
|
||||
|
@ -734,6 +985,7 @@
|
|||
if (isEdit.value) {
|
||||
saveEditIndex.value.index0 = 0;
|
||||
saveEditIndex.value.index1 = 0;
|
||||
isHave()
|
||||
} else {
|
||||
saveEditIndex.value.index0 = -1;
|
||||
saveEditIndex.value.index1 = -1;
|
||||
|
@ -908,14 +1160,12 @@
|
|||
let typeName = timearr.value[index0].children[index1].typeName
|
||||
timearr.value[index0].children[index1] = { directiveName: "", typeName: typeName };
|
||||
isopen.value = false;
|
||||
// saveAll()
|
||||
deleteisopen.value = false;
|
||||
}
|
||||
const longPressTimer = ref(null);
|
||||
const isScrolling = ref(false)
|
||||
//长按计时器
|
||||
let scrollTimeout = null
|
||||
|
||||
function handleScroll(e) {
|
||||
isScrolling.value = true
|
||||
// 清除之前的定时器
|
||||
|
@ -982,6 +1232,8 @@
|
|||
index: [-1, -1, -1],
|
||||
},
|
||||
startTime: "",
|
||||
weekTimeNumber: -1,
|
||||
monthTimeNumber: -1,
|
||||
monthTime: "",
|
||||
weekTime: ""
|
||||
})
|
||||
|
@ -1012,64 +1264,16 @@
|
|||
|
||||
}
|
||||
}
|
||||
const clickTime = (index : string) => {
|
||||
if (cardsumit.value.startTime == index) {
|
||||
cardsumit.value.startTime = ""
|
||||
} else {
|
||||
cardsumit.value.startTime = index
|
||||
}
|
||||
}
|
||||
// const clickTime = (index : string) => {
|
||||
// cardsumit.value.startTime = index
|
||||
// }
|
||||
const clickweek = (index : string) => {
|
||||
if (cardsumit.value.weekTime == index) {
|
||||
cardsumit.value.weekTime = ""
|
||||
} else {
|
||||
cardsumit.value.weekTime = index
|
||||
}
|
||||
cardsumit.value.weekTime = index
|
||||
}
|
||||
const clickmonth = (index : string) => {
|
||||
if (cardsumit.value.monthTime == index) {
|
||||
cardsumit.value.monthTime = ""
|
||||
} else {
|
||||
cardsumit.value.monthTime = index
|
||||
}
|
||||
cardsumit.value.monthTime = index
|
||||
}
|
||||
const indexsave = ref([-1, -1]);
|
||||
//表格拖动结束
|
||||
const rulerEnd = async (res : any) => {
|
||||
isBack.value = false;
|
||||
|
||||
if (props.liang.index0 !== 999 && res) {
|
||||
cardsumit.value = {
|
||||
op: {
|
||||
name: "",
|
||||
index: [-1, -1, -1],
|
||||
},
|
||||
startTime: "",
|
||||
monthTime: "",
|
||||
weekTime: ""
|
||||
}
|
||||
songisopacity.value = false;
|
||||
//虚化的动画
|
||||
songisopen.value = true;
|
||||
setTimeout(() => {
|
||||
songisopacity.value = true
|
||||
}, 100)
|
||||
// 存储 两个index
|
||||
cardsumit.value.op.index[0] = upmenuIndex.value
|
||||
cardsumit.value.op.index[1] = downmenuIndex.value
|
||||
// 存储时间和二级数组
|
||||
openValue.value.time = timearr.value[props.liang.index0 + (currentNumber.value * 8)].positioning;
|
||||
openValue.value.minute = timearr.value[props.liang.index0 + (currentNumber.value * 8)].children[props.liang.index1].typeName
|
||||
openValue.value.array = bigArray.value[upmenuIndex.value].children[downmenuIndex.value].children
|
||||
//将逗号换成()
|
||||
openValue.value.array.forEach((element : any) => {
|
||||
element.relName = element.title + (element.tagName ? element.tagName.split(",").map(item => `(${item})`).join("") : "")
|
||||
})
|
||||
//存储选中表格的坐标
|
||||
indexsave.value = [props.liang.index0 + (currentNumber.value * 8), props.liang.index1]
|
||||
clickOp(0, openValue.value.array[0])
|
||||
}
|
||||
}
|
||||
// (长按表格后)表格拖动结束
|
||||
const rulerMoveEnd = (object : any) => {
|
||||
if (props.liang.index0 !== 999 && object.cycleType) {
|
||||
|
@ -1158,14 +1362,13 @@
|
|||
}
|
||||
//给表格赋值
|
||||
timearr.value[indexsave.value[0]].children[indexsave.value[1]] = param;
|
||||
|
||||
isHave()
|
||||
// let allArray = [];
|
||||
// timearr.value.forEach((element : any) => {
|
||||
// element.children.forEach((res : any) => {
|
||||
// allArray.push(res)
|
||||
// })
|
||||
// })
|
||||
|
||||
// saveAll()
|
||||
}
|
||||
const saveAll = () => {
|
||||
|
@ -1295,7 +1498,7 @@
|
|||
uni.$off('where', whereEvent);
|
||||
});
|
||||
defineExpose({
|
||||
rulerEnd,
|
||||
// rulerEnd,
|
||||
rulerMoveEnd,
|
||||
nextItems,
|
||||
})
|
||||
|
|
|
@ -238,7 +238,7 @@
|
|||
if(isOld.value){
|
||||
ruler.value?.rulerEnd(savename.value);
|
||||
}else{
|
||||
rulernew.value?.rulerEnd(savename.value);
|
||||
// rulernew.value?.rulerEnd(savename.value);
|
||||
}
|
||||
} else if (saveruler.value.typeName) {
|
||||
if(isOld.value){
|
||||
|
|
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 7.3 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 4.1 KiB |
|
@ -3536,11 +3536,13 @@
|
|||
.move-circle[data-v-293b8ace] {
|
||||
position: absolute;
|
||||
bottom: 9.375rem;
|
||||
left: -6.25rem;
|
||||
left: 0;
|
||||
width: 10.9375rem;
|
||||
height: 10.9375rem;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(127, 127, 127, 0.3);
|
||||
background-image: url('../../static/index/movemode/bj.png');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
z-index: 9999;
|
||||
}
|
||||
.container-img[data-v-293b8ace] {
|
||||
|
@ -3598,6 +3600,21 @@
|
|||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
.move-circle-bad[data-v-e97a9bd6] {
|
||||
position: absolute;
|
||||
bottom: 6.25rem;
|
||||
right: 1.25rem;
|
||||
width: 5rem;
|
||||
height: 5rem;
|
||||
border-radius: 50%;
|
||||
background-color: #c2c9d3;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle[data-v-e97a9bd6] {
|
||||
position: absolute;
|
||||
bottom: 1.5625rem;
|
||||
|
@ -3674,6 +3691,112 @@
|
|||
margin-top: -0.3125rem;
|
||||
}
|
||||
|
||||
.all-circle[data-v-bcab5993] {
|
||||
position: absolute;
|
||||
bottom: 9.375rem;
|
||||
right: 1.5625rem;
|
||||
width: 15.625rem;
|
||||
height: 15.625rem;
|
||||
}
|
||||
.move-circle[data-v-bcab5993] {
|
||||
position: absolute;
|
||||
bottom: 6.25rem;
|
||||
right: 1.25rem;
|
||||
width: 5rem;
|
||||
height: 5rem;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle[data-v-bcab5993] {
|
||||
position: absolute;
|
||||
bottom: 1.5625rem;
|
||||
right: 4.6875rem;
|
||||
width: 5rem;
|
||||
height: 5rem;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle-bad[data-v-bcab5993] {
|
||||
position: absolute;
|
||||
bottom: 1.5625rem;
|
||||
right: 4.6875rem;
|
||||
width: 5rem;
|
||||
height: 5rem;
|
||||
border-radius: 50%;
|
||||
background-color: #c2c9d3;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.all-circle[data-v-4595ea88] {
|
||||
position: absolute;
|
||||
bottom: 9.375rem;
|
||||
right: 1.5625rem;
|
||||
width: 15.625rem;
|
||||
height: 15.625rem;
|
||||
}
|
||||
.move-circle[data-v-4595ea88] {
|
||||
position: absolute;
|
||||
bottom: 6.25rem;
|
||||
right: 1.25rem;
|
||||
width: 5rem;
|
||||
height: 5rem;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle[data-v-4595ea88] {
|
||||
position: absolute;
|
||||
bottom: 1.5625rem;
|
||||
right: 4.6875rem;
|
||||
width: 5rem;
|
||||
height: 5rem;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(to right, #00c9ff, #0076ff);
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-circle-bad[data-v-4595ea88] {
|
||||
position: absolute;
|
||||
bottom: 1.5625rem;
|
||||
right: 4.6875rem;
|
||||
width: 5rem;
|
||||
height: 5rem;
|
||||
border-radius: 50%;
|
||||
background-color: #c2c9d3;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 1.09375rem;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.super-card[data-v-68a73d3d] {
|
||||
display: flex;
|
||||
/* justify-content: center; */
|
||||
|
@ -4075,6 +4198,16 @@
|
|||
z-index: 999;
|
||||
font-size: 1.5625rem;
|
||||
}
|
||||
.title-time-blue[data-v-68a73d3d] {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
z-index: 10;
|
||||
}
|
||||
.title-time-blue .title-time-blue-img[data-v-68a73d3d] {
|
||||
height: 6.53125rem;
|
||||
width: 7.0625rem;
|
||||
}
|
||||
.title-time[data-v-68a73d3d] {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
|
@ -4082,12 +4215,12 @@
|
|||
}
|
||||
.title-time .title-time-time[data-v-68a73d3d] {
|
||||
font-size: 1rem;
|
||||
margin-left: 0.625rem;
|
||||
margin-left: 0.3125rem;
|
||||
margin-top: 0.375rem;
|
||||
}
|
||||
.title-time .title-time-button[data-v-68a73d3d] {
|
||||
position: absolute;
|
||||
top: -0.125rem;
|
||||
top: -0.1875rem;
|
||||
right: -0.125rem;
|
||||
width: 2.03125rem;
|
||||
height: 1.875rem;
|
||||
|
@ -4101,7 +4234,7 @@
|
|||
}
|
||||
.title-time .title-time-font[data-v-68a73d3d] {
|
||||
position: absolute;
|
||||
top: 0.21875rem;
|
||||
top: 0.09375rem;
|
||||
right: 0.15625rem;
|
||||
font-size: 0.625rem;
|
||||
color: #fff;
|
||||
|
@ -4123,13 +4256,13 @@
|
|||
}
|
||||
.popup-delete .popup-delete-content[data-v-68a73d3d] {
|
||||
position: absolute;
|
||||
right: 16.09375rem;
|
||||
right: 23.4375rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
width: 25rem;
|
||||
height: 15.625rem;
|
||||
background: url("../../static/index/lightbgcnew.png") center / cover, rgba(255, 255, 255, 0.7);
|
||||
background: url("../../static/index/lightbgcnew.png") center / cover, rgba(255, 255, 255, 0.5);
|
||||
background-blend-mode: screen;
|
||||
border: 0.0625rem solid #fff;
|
||||
/* 使用 screen 混合模式,让图像与白色混合变淡 */
|
||||
|
@ -4162,6 +4295,7 @@
|
|||
justify-content: center;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
margin: 0 0.3125rem;
|
||||
}
|
||||
.popup-delete .popup-delete-content .popup-delete-button .popup-delete-button-right[data-v-68a73d3d] {
|
||||
background-color: #ced9e8;
|
||||
|
@ -4171,7 +4305,7 @@
|
|||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin-right: 0.625rem;
|
||||
margin: 0 0.3125rem;
|
||||
}
|
||||
.popup-overlay[data-v-68a73d3d] {
|
||||
position: fixed;
|
||||
|
@ -4332,7 +4466,7 @@
|
|||
margin-bottom: 1.875rem;
|
||||
}
|
||||
.popup-song-father .arrayindex .arrayindex-one[data-v-68a73d3d] {
|
||||
width: 6.9375rem;
|
||||
width: 8.90625rem;
|
||||
height: 3.125rem;
|
||||
margin-left: 0.625rem;
|
||||
margin-top: 0.625rem;
|
||||
|
@ -4345,7 +4479,7 @@
|
|||
font-size: 0.90625rem;
|
||||
}
|
||||
.popup-song-father .arrayindex .arrayindex-one-target[data-v-68a73d3d] {
|
||||
width: 6.9375rem;
|
||||
width: 8.90625rem;
|
||||
height: 3.125rem;
|
||||
margin-left: 0.625rem;
|
||||
margin-top: 0.625rem;
|
||||
|
@ -4487,6 +4621,7 @@
|
|||
margin-left: 0.9375rem;
|
||||
margin-right: 0.9375rem;
|
||||
margin-top: 0.625rem;
|
||||
margin-bottom: 0.9375rem;
|
||||
}
|
||||
.month-father .month-one[data-v-68a73d3d] {
|
||||
width: 2.34375rem;
|
||||
|
@ -4522,6 +4657,7 @@
|
|||
margin-left: 0.9375rem;
|
||||
margin-right: 0.9375rem;
|
||||
margin-top: 0.625rem;
|
||||
margin-bottom: 0.9375rem;
|
||||
}
|
||||
.week-father .week-one[data-v-68a73d3d] {
|
||||
width: 6.25rem;
|
||||
|
@ -4556,6 +4692,7 @@
|
|||
flex-wrap: wrap;
|
||||
margin-left: 2.34375rem;
|
||||
margin-right: 0.9375rem;
|
||||
/* margin-bottom: 30rpx; */
|
||||
}
|
||||
.radio-father .radio-circle[data-v-68a73d3d] {
|
||||
margin-top: 0.0625rem;
|
||||
|
@ -4590,6 +4727,12 @@
|
|||
margin-right: 1.875rem;
|
||||
font-size: 0.90625rem;
|
||||
}
|
||||
.radio-father .radio-font-target[data-v-68a73d3d] {
|
||||
color: #02abfe;
|
||||
margin-left: 0.46875rem;
|
||||
margin-right: 1.875rem;
|
||||
font-size: 0.90625rem;
|
||||
}
|
||||
.title-time-border[data-v-68a73d3d] {
|
||||
margin-top: 0.125rem;
|
||||
margin-left: 0.125rem;
|
||||
|
@ -4731,7 +4874,7 @@
|
|||
box-shadow: 0.25rem 0.25rem 0.5rem rgba(123, 97, 255, 0.7);
|
||||
}
|
||||
.down-icons[data-v-68a73d3d] {
|
||||
margin-top: 0.3125rem;
|
||||
margin-top: 0.53125rem;
|
||||
width: 100%;
|
||||
height: 1.875rem;
|
||||
background-color: #ffd87e;
|
||||
|
|
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 7.3 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 4.1 KiB |