feat: 添加接龙

This commit is contained in:
weifashi 2023-12-07 00:49:39 +08:00
parent abd453f2f6
commit d72ab58f98
8 changed files with 131 additions and 4 deletions

View File

@ -0,0 +1,90 @@
<template>
<Modal class-name="chain-reaction-wrapper"
v-model="show"
:mask-closable="false"
:title="$L('发起接龙')"
:closable="!isFullscreen"
:fullscreen="isFullscreen"
:footer-hide="isFullscreen">
<!-- 顶部 -->
<template #header>
<div v-if="isFullscreen" class="user-modal-header">
<div class="user-modal-close" @click="show = false">
{{ $L('关闭') }}
</div>
<div class="user-modal-title">1</div>
<div class="user-modal-submit" @click="showMultiple = true">
{{$L('多选')}}
</div>
</div>
</template>
<template #close>
<i class="ivu-icon ivu-icon-ios-close"></i>
</template>
<!-- -->
2212
<div slot="footer">
<Button type="default" @click="show=false">{{$L('取消')}}</Button>
<Button type="primary" @click="onSend">{{$L('发送')}}</Button>
</div>
<!-- <TaskDetail ref="taskDetail" :task-id="taskId" :open-task="taskData" modalMode/> -->
</Modal>
<!-- <Modal
v-model="fullInput"
:mask-closable="false"
:beforeClose="onFullBeforeClose"
class-name="chat-input-full-input"
footer-hide
fullscreen>
<div class="chat-input-box">
<div class="chat-input-wrapper">
<div ref="editorFull" class="no-dark-content"></div>
</div>
</div>
<i slot="close" class="taskfont">&#xe6ab;</i>
</Modal> -->
</template>
<script>
import {mapState} from "vuex";
export default {
name: 'ChainReaction',
props: {
disabled: {
type: Boolean,
default: false
},
},
data() {
return {
show: false, // overflow
}
},
computed: {
...mapState(['chainReaction']),
isFullscreen({ windowWidth }) {
return windowWidth < 576;
},
},
watch: {
chainReaction(data) {
if(data.type == 'create' && data.dialog_id){
this.show = true;
}
}
},
methods: {
onSend(e) {
this.$emit("on-click", e)
}
}
}
</script>

View File

@ -264,6 +264,9 @@
<MobileBack :showTabbar="showMobileTabbar"/>
<MobileNotification ref="mobileNotification"/>
<!--接龙-->
<ChainReaction/>
<!-- okr明细 -->
<MicroApps v-show="false" v-if="$route.name != 'manage-apps'" name="okr-details" :url="okrUrl" :datas="okrWindow"/>
</div>
@ -290,6 +293,7 @@ import ApproveExport from "./manage/components/ApproveExport";
import notificationKoro from "notification-koro1";
import {Store} from "le5le-store";
import MicroApps from "../components/MicroApps.vue";
import ChainReaction from "../components/ChainReaction.vue";
export default {
components: {
@ -308,7 +312,8 @@ export default {
ProjectManagement,
TeamManagement,
ProjectArchived,
MicroApps
MicroApps,
ChainReaction
},
directives: {longpress},
data() {

View File

@ -311,6 +311,7 @@ export default {
{ value: "signin", label: "签到" },
{ value: "meeting", label: "会议" },
{ value: "calendar", label: "日历" },
{ value: "jielong", label: "接龙" },
];
// wap
let appApplyList = this.windowOrientation != 'portrait' ? (
@ -400,6 +401,9 @@ export default {
case 'scan':
$A.eeuiAppScan(this.scanResult);
return;
case 'jielong':
// DOTO
return;
}
this.$emit("on-click", item.value)
},

View File

@ -106,6 +106,10 @@
<i class="taskfont">&#xe6a7;</i>
{{$L('全屏输入')}}
</div>
<div v-if="dialogData.type == 'group'" class="chat-input-popover-item" @click="onToolbar('chain-reaction')">
<i class="taskfont">&#xe6a7;</i>
{{$L('接龙')}}
</div>
</EPopover>
</li>
@ -1228,6 +1232,13 @@ export default {
case 'anon':
this.$emit('on-more', action)
break;
case 'chain-reaction':
this.$store.state.chainReaction = {
type: 'create',
dialog_id: this.dialogId
}
break;
}
},
@ -1350,7 +1361,7 @@ export default {
})
})
moreUser.sort((a, b) => a.last_at > b.last_at ? -1 : (a.last_at < b.last_at ? 1 : 0));
//
//
this.userList = list
this.userCache = [];
if (moreUser.length > 0) {

View File

@ -6,7 +6,7 @@
<div class="setting-title">
<div v-if="showMobileBox" class="common-nav-back portrait" @click="goForward({name: 'manage-application'},true)"><i class="taskfont">&#xe676;</i></div>
<h1>{{settingTitleName}}</h1>
<div v-if="!showMobileBox" class="setting-more" @click="toggleRoute('index')">
<div v-if="!showMobileBox" class="setting-more" @click="goBack()">
<Icon type="md-close" />
</div>
</div>

View File

@ -209,6 +209,9 @@ export default {
meetingid: 0
},
// 接龙
chainReaction: {},
// okr窗口
okrWindow: {
type: 'open',

View File

@ -29,4 +29,4 @@
@import "project-menu";
@import "calendar";
@import "home-calendar";
@import "home-calendar";
@import "chain-reaction";

View File

@ -0,0 +1,14 @@
.chain-reaction-wrapper {
}
body.window-portrait {
.chain-reaction-wrapper {
}
@media (max-width: 640px) {
.chain-reaction-wrapper {
}
}
}