fine-tune the new UI theme, merge the code and fixed conflicts

This commit is contained in:
RockYang
2024-12-24 16:13:36 +08:00
26 changed files with 141 additions and 139 deletions

View File

@@ -19,7 +19,7 @@
</template>
</el-input>
</div>
<el-scrollbar :height="{ height: +'px' }">
<el-scrollbar :height="chatBoxHeight">
<div class="content">
<el-row v-for="chat in chatList" :key="chat.chat_id">
<div :class="chat.chat_id === chatId ? 'chat-list-item active' : 'chat-list-item'" @click="loadChat(chat)">
@@ -262,24 +262,24 @@
</div>
</template>
<script setup>
import { nextTick, onMounted, onUnmounted, ref, watch } from "vue";
import {nextTick, onMounted, onUnmounted, ref, watch} from "vue";
import ChatPrompt from "@/components/ChatPrompt.vue";
import ChatReply from "@/components/ChatReply.vue";
import { Delete, Edit, InfoFilled, More, Plus, Promotion, Search, Share, VideoPause } from "@element-plus/icons-vue";
import {Delete, Edit, InfoFilled, More, Plus, Promotion, Search, Share, VideoPause} from "@element-plus/icons-vue";
import "highlight.js/styles/a11y-dark.css";
import { isMobile, randString, removeArrayItem, UUID } from "@/utils/libs";
import { ElMessage, ElMessageBox } from "element-plus";
import { httpGet, httpPost } from "@/utils/http";
import { useRouter } from "vue-router";
import {isMobile, randString, removeArrayItem, UUID} from "@/utils/libs";
import {ElMessage, ElMessageBox} from "element-plus";
import {httpGet, httpPost} from "@/utils/http";
import {useRouter} from "vue-router";
import Clipboard from "clipboard";
import { checkSession, getClientId, getSystemInfo } from "@/store/cache";
import {checkSession, getClientId, getSystemInfo} from "@/store/cache";
import Welcome from "@/components/Welcome.vue";
import { useSharedStore } from "@/store/sharedata";
import {useSharedStore} from "@/store/sharedata";
import FileSelect from "@/components/FileSelect.vue";
import FileList from "@/components/FileList.vue";
import ChatSetting from "@/components/ChatSetting.vue";
import BackTop from "@/components/BackTop.vue";
import { closeLoading, showLoading, showMessageError } from "@/utils/dialog";
import {closeLoading, showLoading, showMessageError} from "@/utils/dialog";
const title = ref("GeekAI-智能助手");
const models = ref([]);

View File

@@ -38,15 +38,6 @@
</div>
</li>
<!-- <li
class="menu-list-item flex-center-col"
v-for="item in 5"
:key="item"
>
<el-icon><Location /></el-icon>
<div>首页</div>
</li> -->
<!-- 更多 -->
<div class="bot" :style="{ width: isCollapse ? '65px' : '170px' }">
<div class="bot-line"></div>
@@ -116,13 +107,11 @@
</a>
<ThemeChange />
<!-- <div v-if="!isCollapse">会员</div> -->
</li>
</div>
</ul>
</div>
</div>
<!-- :style="{ 'padding-left': isCollapse ? '65px' : '170px' }" -->
<el-scrollbar class="right-main">
<div
v-if="loginUser.id === undefined || !loginUser.id"
@@ -133,7 +122,6 @@
<div class="topheader" v-if="loginUser.id === undefined || !loginUser.id">
<el-button @click="router.push('/login')" class="btn-go animate__animated animate__pulse animate__infinite" round>登录</el-button>
</div>
<!-- <div class="content custom-scroll"> -->
<div class="content custom-scroll">
<router-view :key="routerViewKey" v-slot="{ Component }">
<transition name="move" mode="out-in">
@@ -155,25 +143,24 @@
</template>
<script setup>
import { CirclePlus, Setting, UserFilled } from "@element-plus/icons-vue";
import {CirclePlus, Setting, UserFilled} from "@element-plus/icons-vue";
import ThemeChange from "@/components/ThemeChange.vue";
import avatarImg from "@/assets/img/avatar.jpg";
import { useRouter } from "vue-router";
import { onMounted, ref, watch } from "vue";
import { httpGet } from "@/utils/http";
import { ElMessage } from "element-plus";
import { checkSession, getLicenseInfo, getSystemInfo } from "@/store/cache";
import { removeUserToken } from "@/store/session";
import { useSharedStore } from "@/store/sharedata";
import {useRouter} from "vue-router";
import {onMounted, ref, watch} from "vue";
import {httpGet} from "@/utils/http";
import {ElMessage} from "element-plus";
import {checkSession, getLicenseInfo, getSystemInfo} from "@/store/cache";
import {removeUserToken} from "@/store/session";
import {useSharedStore} from "@/store/sharedata";
import ConfigDialog from "@/components/UserInfoDialog.vue";
import { showMessageError } from "@/utils/dialog";
import {showMessageError} from "@/utils/dialog";
const isCollapse = ref(true);
const router = useRouter();
const logo = ref("");
const mainNavs = ref([]);
const moreNavs = ref([]);
// const curPath = ref(router.currentRoute.value.path);
const curPath = ref();
const title = ref("");

View File

@@ -82,11 +82,12 @@
</el-col>
</el-row>
</div>
<div class="box-card">
<h2>您推荐的用户</h2>
<h2>您推荐的用户</h2>
<div class="invite-logs">
<invite-list v-if="isLogin" />
<div class="invite-logs">
<invite-list v-if="isLogin" />
</div>
</div>
</div>
</div>

View File

@@ -87,18 +87,25 @@
</div>
<div class="chat-box">
<div class="top-bar">
<!-- <div class="top-bar">
<el-button @click="downloadImage" type="primary">
<el-icon>
<Download />
</el-icon>
<span>下载图片</span>
<span>下载图片-</span>
</el-button>
</div>
</div> -->
<div class="body" id="markmap">
<svg ref="svgRef" :style="{ height: rightBoxHeight + 'px' }" />
<div id="toolbar"></div>
<div id="toolbar">
<el-button @click="downloadImage" type="primary">
<el-icon>
<Download />
</el-icon>
<span>下载图片</span>
</el-button>
</div>
</div>
</div>
<!-- end task list box -->
@@ -119,7 +126,8 @@ import { Toolbar } from "markmap-toolbar";
import { useSharedStore } from "@/store/sharedata";
const leftBoxHeight = ref(window.innerHeight - 105);
const rightBoxHeight = ref(window.innerHeight - 115);
//const rightBoxHeight = ref(window.innerHeight - 115);
const rightBoxHeight = ref(window.innerHeight);
const prompt = ref("");
const text = ref("");

View File

@@ -87,11 +87,12 @@
</el-col>
</el-row>
<el-empty description="暂无数据" v-else :image="nodata" />
<div class="box-card">
<h2 class="headline">消费账单</h2>
<h2 class="headline">消费账单</h2>
<div class="user-order">
<user-order v-if="isLogin" :key="userOrderKey" />
<div class="user-order">
<user-order v-if="isLogin" :key="userOrderKey" />
</div>
</div>
</div>
</div>

View File

@@ -358,7 +358,7 @@
</div>
</el-tab-pane>
<el-tab-pane label="公告配置" name="notice">
<md-editor class="mgb20" v-model="notice" @on-upload-img="onUploadImg"/>
<md-editor class="mgb20" v-model="notice" :theme="store.theme" @on-upload-img="onUploadImg"/>
<el-form-item>
<div style="padding-top: 10px;margin-left: 150px;">
<el-button type="primary" @click="save('notice')">保存</el-button>
@@ -366,7 +366,7 @@
</el-form-item>
</el-tab-pane>
<el-tab-pane label="思维导图" name="mark_map">
<md-editor class="mgb20" v-model="system['mark_map_text']" @on-upload-img="onUploadImg"/>
<md-editor class="mgb20" :theme="store.theme" v-model="system['mark_map_text']" @on-upload-img="onUploadImg"/>
<el-form-item>
<div style="padding-top: 10px;margin-left: 150px;">
<el-button type="primary" @click="save('system')">保存</el-button>
@@ -440,7 +440,8 @@
<el-tab-pane label="修复数据" name="fixData">
<div class="container">
<!-- <p class="text">有些版本升级的时候更新了数据库的结构比如字段名字改了需要把之前的字段的值转移到其他字段这些无法通过简单的 SQL 语句可以实现的需要手动写程序修正数据</p>-->
<p class="text">有些版本升级的时候更新了数据库的结构比如字段名字改了需要把之前的字段的值转移到其他字段这些无法通过简单的
SQL 语句可以实现的需要手动写程序修正数据</p>
<!-- <p class="text">当前版本 v4.1.4 需要修正用户数据增加了 mobile email 字段需要把之前用手机号或者邮箱注册的用户的 username 字段数据初始化到 mobile 或者 email 字段另外需要把订单的支付渠道从名字称修正为 key</p>-->
@@ -464,6 +465,7 @@ import 'md-editor-v3/lib/style.css';
import Menu from "@/views/admin/Menu.vue";
import {copyObj, dateFormat} from "@/utils/libs";
import ItemsInput from "@/components/ui/ItemsInput.vue";
import {useSharedStore} from "@/store/sharedata";
const activeName = ref('basic')
const system = ref({models: []})
@@ -479,6 +481,7 @@ const mjModels = ref([
{name: "快速Fast", value: "fast"},
{name: "急速Turbo", value: "turbo"},
])
const store = useSharedStore()
onMounted(() => {
// 加载系统配置