Compare commits
4 Commits
8b3fc5c91a
...
4294d135b5
Author | SHA1 | Date | |
---|---|---|---|
4294d135b5 | |||
5393c1b6e2 | |||
504fd4010a | |||
831113f82e |
@ -6,7 +6,7 @@ VITE_LOGIN_TITLE = '今日固始电子版 管理平台'
|
|||||||
VITE_LOGIN_EN_TITLE = 'GuShi Platform'
|
VITE_LOGIN_EN_TITLE = 'GuShi Platform'
|
||||||
VITE_WEB_BASE_API = '/api'
|
VITE_WEB_BASE_API = '/api'
|
||||||
# 本地Mock地址
|
# 本地Mock地址
|
||||||
VITE_SERVER = 'https://jinrigushi.gushitv.com/'
|
VITE_SERVER = 'http://democs.gushitv.com/'
|
||||||
# 路由模式[哈希模式 AND WEB模式 [hash | history, 这两个模式是固定死的,不能乱改值]
|
# 路由模式[哈希模式 AND WEB模式 [hash | history, 这两个模式是固定死的,不能乱改值]
|
||||||
VITE_ROUTER_MODE = hash
|
VITE_ROUTER_MODE = hash
|
||||||
# 是否使用全部去除console和debugger
|
# 是否使用全部去除console和debugger
|
||||||
|
@ -6,7 +6,7 @@ VITE_LOGIN_TITLE = '今日固始电子版 管理平台'
|
|||||||
VITE_LOGIN_EN_TITLE = 'GuShi Platform'
|
VITE_LOGIN_EN_TITLE = 'GuShi Platform'
|
||||||
VITE_WEB_BASE_API = ''
|
VITE_WEB_BASE_API = ''
|
||||||
# 后端接口地址
|
# 后端接口地址
|
||||||
VITE_SERVER = 'https://jinrigushi.gushitv.com/'
|
VITE_SERVER = 'http://democs.gushitv.com/'
|
||||||
# 路由模式[哈希模式 AND WEB模式 [hash | history, 这两个模式是固定死的,不能乱改值]
|
# 路由模式[哈希模式 AND WEB模式 [hash | history, 这两个模式是固定死的,不能乱改值]
|
||||||
VITE_ROUTER_MODE = hash
|
VITE_ROUTER_MODE = hash
|
||||||
# 是否使用全部去除console和debugger
|
# 是否使用全部去除console和debugger
|
||||||
|
46
README.md
46
README.md
@ -1,39 +1,8 @@
|
|||||||
<p align="center">
|
|
||||||
<img src="https://pic4.zhimg.com/v2-702a23ebb518199355099df77a3cfe07_b.webp" width="200" height="200" />
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h1 align="center">KOI-UI🌻</h1>
|
<h1 align="center">KOI-UI🌻</h1>
|
||||||
|
|
||||||
<p align="center">一款<b>开箱即用</b>的 Vue3 中后台管理系统框架[纯前端]</p>
|
<p align="center">一款<b>开箱即用</b>的 Vue3 中后台管理系统框架[纯前端]</p>
|
||||||
|
|
||||||
<p align="center">
|
|
||||||
<span> [ </span>
|
|
||||||
纯前端演示[开源]
|
|
||||||
<a href="http://39.107.143.109/login" target="_blank">点击这里</a>
|
|
||||||
<span> ] </span>
|
|
||||||
<p>
|
|
||||||
|
|
||||||
<p align="center">
|
|
||||||
<span> [ </span>
|
|
||||||
前后端演示[129元]
|
|
||||||
<a href="http://39.107.143.109/login" target="_blank">点击这里</a>
|
|
||||||
<span> ] </span>
|
|
||||||
<p>
|
|
||||||
|
|
||||||
<p align="center">
|
|
||||||
<span> [ </span>
|
|
||||||
博客演示[269元]
|
|
||||||
<a href="http://39.107.143.109:8188/home/index" target="_blank">点击这里</a>
|
|
||||||
<span> ] </span>
|
|
||||||
<p>
|
|
||||||
|
|
||||||
前后端版本模版[129元]:SpringBoot3、JDK17、Sa-Token等技术;
|
|
||||||
博客版本[269元]:博客 + 管理平台;
|
|
||||||
|
|
||||||
## 1、简介
|
|
||||||
|
|
||||||
KOI-UI🌻 是一款开源企业级别的中后台管理平台模板,基于 Vue3、Vite、TypeScript、Pinia、Pinia持久化插件、Unocss 和 ElementPlus等前端最新技术栈。相较于其他比较流行的后台管理模板,更加简洁、快捷和容易理解,对萌新小白十分友好。此项目学习成本非常低含有相关代码注释以及大量的案例,非常适合企业级项目、中小型项目、个人项目以及毕业设计。后续将用户、角色、菜单、字典管理和通用管理平台页面依次编写,做到直接对接后端接口即可,使之快速开发。常见的组件有小伙伴提供可提issus会依次封装进去展示。
|
|
||||||
|
|
||||||
## 2、特点
|
## 2、特点
|
||||||
|
|
||||||
- 🎯 使用 Element Plus + Vite + Vue3 + TypeScript + Uncoss + Pinia 等主流技术。
|
- 🎯 使用 Element Plus + Vite + Vue3 + TypeScript + Uncoss + Pinia 等主流技术。
|
||||||
@ -117,6 +86,10 @@ KOI-UI🌻 是一款开源企业级别的中后台管理平台模板,基于 Vu
|
|||||||
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/KOI5.png" /></td>
|
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/KOI5.png" /></td>
|
||||||
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/KOI6.png" /></td>
|
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/KOI6.png" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/KOI7.png" /></td>
|
||||||
|
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/KOI8.png" /></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
## 5、支持
|
## 5、支持
|
||||||
@ -157,3 +130,14 @@ pnpm build:prod
|
|||||||
<a href="https://github.com/yuxintao6/koi-ui.git" target="_blank">点击这里</a>
|
<a href="https://github.com/yuxintao6/koi-ui.git" target="_blank">点击这里</a>
|
||||||
<span> ] </span>
|
<span> ] </span>
|
||||||
<p>
|
<p>
|
||||||
|
|
||||||
|
## 9、入群交流
|
||||||
|
|
||||||
|
> 注意:加微信方式时记得添加备注:KOI-UI,支持知识付费。
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/WeChat.png"/></td>
|
||||||
|
<td><img src="https://gitee.com/BigCatHome/koi-photo/raw/master/photos/KOI-ADMIN/WeChatPay.png"/></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
@ -5,7 +5,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<div style="padding: 0px 20px 20px 0px;font-weight: 600">请在图片边框内选定区域</div>
|
<div style="padding: 0px 20px 20px 0px;font-weight: 600">请在图片边框内选定区域</div>
|
||||||
<el-card :body-style="{ padding: '0' }" style="padding: 0;position:relative;">
|
<el-card :body-style="{ padding: '0' }" style="padding: 0;position:relative;">
|
||||||
<div @mousedown="startDrag" @mousemove="onDrag" @mouseup="endDrag" @mouseleave="endDrag" style="width: 100%">
|
<div @mousedown="startDrag" @mousemove="onDrag" @mouseup="endDrag" @mouseleave="endDrag"
|
||||||
|
style="width: 100%">
|
||||||
<!-- 图片 -->
|
<!-- 图片 -->
|
||||||
<img draggable="false" id="image-selector" :src="bmInfoData.bm_img" ref="image" alt="image"
|
<img draggable="false" id="image-selector" :src="bmInfoData.bm_img" ref="image" alt="image"
|
||||||
@click="handleClick"
|
@click="handleClick"
|
||||||
@ -20,20 +21,23 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="16">
|
<el-col :span="16">
|
||||||
<el-form :model="form" label-width="auto">
|
<el-form :model="form" label-width="auto">
|
||||||
<el-form-item label="新闻标题">
|
<el-form-item label="新闻标题" required>
|
||||||
<el-input v-model="form.new_name" size="large"/>
|
<el-input v-model="form.new_name" placeholder="请输入新闻标题" size="large" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻副标题">
|
<el-form-item label="新闻副标题">
|
||||||
<el-input v-model="form.subtitle" size="large"/>
|
<el-input v-model="form.subtitle" placeholder="请输入新闻副标题" size="large" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻记者">
|
<el-form-item label="新闻记者" required>
|
||||||
<el-input v-model="form.reporter" size="large"/>
|
<el-input v-model="form.reporter" placeholder="请输入新闻记者" size="large" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻坐标">
|
<el-form-item label="新闻坐标" required>
|
||||||
<el-input disabled v-model="coordinate" size="large"/>
|
<el-input disabled v-model="coordinate" placeholder="请选择新闻坐标" size="large" />
|
||||||
<el-button class="mt-2" @click="allowClickTrue()">重新选择</el-button>
|
<el-button type="danger" class="mt-2" @click="allowClickTrue()">重新选择</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻详情">
|
<el-form-item label="新闻视频">
|
||||||
|
<el-input v-model="form.video" placeholder="请输入新闻视频" size="large"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="新闻详情" required>
|
||||||
<el-card shadow="hover">
|
<el-card shadow="hover">
|
||||||
<Toolbar style="border-bottom: 1px solid #ccc" :editor="editorRef" :defaultConfig="toolbarConfig" />
|
<Toolbar style="border-bottom: 1px solid #ccc" :editor="editorRef" :defaultConfig="toolbarConfig" />
|
||||||
<Editor style="height: 300px; overflow-y: hidden;" v-model="form.content" :defaultConfig="editorConfig"
|
<Editor style="height: 300px; overflow-y: hidden;" v-model="form.content" :defaultConfig="editorConfig"
|
||||||
@ -69,6 +73,7 @@ const form = reactive({
|
|||||||
reporter: '',
|
reporter: '',
|
||||||
content: '',
|
content: '',
|
||||||
coordinate_show: '',
|
coordinate_show: '',
|
||||||
|
video: '',
|
||||||
});
|
});
|
||||||
/*新闻坐标*/
|
/*新闻坐标*/
|
||||||
const coordinate = ref();
|
const coordinate = ref();
|
||||||
|
@ -20,20 +20,23 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="16">
|
<el-col :span="16">
|
||||||
<el-form :model="form" label-width="auto">
|
<el-form :model="form" label-width="auto">
|
||||||
<el-form-item label="新闻标题">
|
<el-form-item label="新闻标题" required>
|
||||||
<el-input v-model="form.new_name" size="large"/>
|
<el-input v-model="form.new_name" placeholder="请输入新闻标题" size="large"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻副标题">
|
<el-form-item label="新闻副标题">
|
||||||
<el-input v-model="form.subtitle" size="large"/>
|
<el-input v-model="form.subtitle" placeholder="请输入新闻副标题" size="large"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻记者">
|
<el-form-item label="新闻记者" required>
|
||||||
<el-input v-model="form.reporter" size="large"/>
|
<el-input v-model="form.reporter" placeholder="请输入新闻记者" size="large"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻坐标">
|
<el-form-item label="新闻坐标" required>
|
||||||
<el-input disabled v-model="coordinate" size="large"/>
|
<el-input disabled v-model="coordinate" placeholder="请选择新闻坐标" size="large"/>
|
||||||
<el-button class="mt-2" @click="allowClickTrue()">重新选择</el-button>
|
<el-button class="mt-2" @click="allowClickTrue()">重新选择</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新闻详情">
|
<el-form-item label="新闻视频">
|
||||||
|
<el-input v-model="form.video" placeholder="请输入新闻视频" size="large"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="新闻详情" required>
|
||||||
<el-card shadow="hover">
|
<el-card shadow="hover">
|
||||||
<Toolbar style="border-bottom: 1px solid #ccc" :editor="editorRef" :defaultConfig="toolbarConfig"/>
|
<Toolbar style="border-bottom: 1px solid #ccc" :editor="editorRef" :defaultConfig="toolbarConfig"/>
|
||||||
<Editor style="height: 300px; overflow-y: hidden;" v-model="form.content" :defaultConfig="editorConfig"
|
<Editor style="height: 300px; overflow-y: hidden;" v-model="form.content" :defaultConfig="editorConfig"
|
||||||
@ -69,6 +72,7 @@ const form = reactive({
|
|||||||
subtitle: '',
|
subtitle: '',
|
||||||
reporter: '',
|
reporter: '',
|
||||||
content: '',
|
content: '',
|
||||||
|
video: '',
|
||||||
});
|
});
|
||||||
/*新闻坐标 真实的*/
|
/*新闻坐标 真实的*/
|
||||||
const coordinate = ref();
|
const coordinate = ref();
|
||||||
@ -95,6 +99,7 @@ const getNewsInfo = async () => {
|
|||||||
form.bm_id = res.data.bm_id;
|
form.bm_id = res.data.bm_id;
|
||||||
form.coordinate = res.data.coordinate;
|
form.coordinate = res.data.coordinate;
|
||||||
form.coordinate_show=res.data.coordinate_show;
|
form.coordinate_show=res.data.coordinate_show;
|
||||||
|
form.video = res.data.video;
|
||||||
coordinate.value = res.data.coordinate;
|
coordinate.value = res.data.coordinate;
|
||||||
coordinateShow.value = res.data.coordinate_show;
|
coordinateShow.value = res.data.coordinate_show;
|
||||||
await getBmInfo(res.data.bm_id);
|
await getBmInfo(res.data.bm_id);
|
||||||
|
@ -58,6 +58,13 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" align="center" width="450px" fixed="right">
|
<el-table-column label="操作" align="center" width="450px" fixed="right">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
|
|
||||||
|
<el-button v-if="row.level==1"
|
||||||
|
type="info"
|
||||||
|
@click="openA(row)"
|
||||||
|
>预览
|
||||||
|
</el-button>
|
||||||
|
|
||||||
<el-button v-if="row.level==1 && row.status==1"
|
<el-button v-if="row.level==1 && row.status==1"
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="statusUpdate(row,0)"
|
@click="statusUpdate(row,0)"
|
||||||
@ -276,6 +283,14 @@ const Mp3Check = async (row) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
const openA = (item) => {
|
||||||
|
console.log(item);
|
||||||
|
var url="https://jinrigushi.gushitv.com/#/?date="+item.datetime;
|
||||||
|
if(item.status==0){
|
||||||
|
url="https://jinrigushi.gushitv.com/#/?date="+item.datetime+"&status=1";
|
||||||
|
}
|
||||||
|
window.open(url);
|
||||||
|
}
|
||||||
/*PDF上传*/
|
/*PDF上传*/
|
||||||
const getFileList = (d) => {
|
const getFileList = (d) => {
|
||||||
console.log(d);
|
console.log(d);
|
||||||
@ -480,7 +495,7 @@ const rowClick = (row, column, e) => {
|
|||||||
// 重新渲染表格状态
|
// 重新渲染表格状态
|
||||||
const refreshTreeTable = ref(true);
|
const refreshTreeTable = ref(true);
|
||||||
// 是否展开[默认折叠]
|
// 是否展开[默认折叠]
|
||||||
const isExpandAll = ref(false);
|
const isExpandAll = ref(true);
|
||||||
|
|
||||||
/** 添加 */
|
/** 添加 */
|
||||||
const handleAdd = () => {
|
const handleAdd = () => {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user