zhuhao_dev #17

Merged
zhuhao merged 4 commits from zhuhao_dev into main 2024-07-12 17:58:47 +08:00
13 changed files with 371 additions and 56 deletions
Showing only changes of commit 12d8346896 - Show all commits

View File

@ -1,8 +1,8 @@
@font-face { @font-face {
font-family: "iconfont"; /* Project id 2794390 */ font-family: "iconfont"; /* Project id 2794390 */
src: url('iconfont.woff2?t=1720677380684') format('woff2'), src: url('iconfont.woff2?t=1720688923236') format('woff2'),
url('iconfont.woff?t=1720677380684') format('woff'), url('iconfont.woff?t=1720688923236') format('woff'),
url('iconfont.ttf?t=1720677380684') format('truetype'); url('iconfont.ttf?t=1720688923236') format('truetype');
} }
.iconfont { .iconfont {
@ -13,6 +13,94 @@
-moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale;
} }
.icon-avi:before {
content: "\e65e";
}
.icon-access:before {
content: "\e65f";
}
.icon-docx:before {
content: "\e660";
}
.icon-folder:before {
content: "\e661";
}
.icon-excel:before {
content: "\e662";
}
.icon-gif:before {
content: "\e663";
}
.icon-jpeg:before {
content: "\e664";
}
.icon-jpg:before {
content: "\e665";
}
.icon-mp:before {
content: "\e666";
}
.icon-mov:before {
content: "\e667";
}
.icon-pdf:before {
content: "\e668";
}
.icon-ppt:before {
content: "\e669";
}
.icon-papers:before {
content: "\e66a";
}
.icon-pptx:before {
content: "\e66b";
}
.icon-psd:before {
content: "\e66c";
}
.icon-rar:before {
content: "\e66d";
}
.icon-txt:before {
content: "\e66e";
}
.icon-zip:before {
content: "\e66f";
}
.icon-video:before {
content: "\e670";
}
.icon-xlsx:before {
content: "\e671";
}
.icon-png:before {
content: "\e673";
}
.icon-word:before {
content: "\e674";
}
.icon-shenglvehao:before { .icon-shenglvehao:before {
content: "\e64f"; content: "\e64f";
} }
@ -21,18 +109,6 @@
content: "\e602"; content: "\e602";
} }
.icon-pdf:before {
content: "\e803";
}
.icon-ppt:before {
content: "\e806";
}
.icon-word:before {
content: "\e807";
}
.icon-guanbi:before { .icon-guanbi:before {
content: "\e60f"; content: "\e60f";
} }

File diff suppressed because one or more lines are too long

View File

@ -5,6 +5,160 @@
"css_prefix_text": "icon-", "css_prefix_text": "icon-",
"description": "", "description": "",
"glyphs": [ "glyphs": [
{
"icon_id": "6347314",
"name": "avi",
"font_class": "avi",
"unicode": "e65e",
"unicode_decimal": 58974
},
{
"icon_id": "6347315",
"name": "access",
"font_class": "access",
"unicode": "e65f",
"unicode_decimal": 58975
},
{
"icon_id": "6347316",
"name": "docx",
"font_class": "docx",
"unicode": "e660",
"unicode_decimal": 58976
},
{
"icon_id": "6347317",
"name": "folder",
"font_class": "folder",
"unicode": "e661",
"unicode_decimal": 58977
},
{
"icon_id": "6347318",
"name": "excel",
"font_class": "excel",
"unicode": "e662",
"unicode_decimal": 58978
},
{
"icon_id": "6347319",
"name": "gif",
"font_class": "gif",
"unicode": "e663",
"unicode_decimal": 58979
},
{
"icon_id": "6347320",
"name": "jpeg",
"font_class": "jpeg",
"unicode": "e664",
"unicode_decimal": 58980
},
{
"icon_id": "6347321",
"name": "jpg",
"font_class": "jpg",
"unicode": "e665",
"unicode_decimal": 58981
},
{
"icon_id": "6347322",
"name": "mp3",
"font_class": "mp",
"unicode": "e666",
"unicode_decimal": 58982
},
{
"icon_id": "6347323",
"name": "mov",
"font_class": "mov",
"unicode": "e667",
"unicode_decimal": 58983
},
{
"icon_id": "6347324",
"name": "pdf",
"font_class": "pdf",
"unicode": "e668",
"unicode_decimal": 58984
},
{
"icon_id": "6347325",
"name": "ppt",
"font_class": "ppt",
"unicode": "e669",
"unicode_decimal": 58985
},
{
"icon_id": "6347326",
"name": "papers",
"font_class": "papers",
"unicode": "e66a",
"unicode_decimal": 58986
},
{
"icon_id": "6347327",
"name": "pptx",
"font_class": "pptx",
"unicode": "e66b",
"unicode_decimal": 58987
},
{
"icon_id": "6347328",
"name": "psd",
"font_class": "psd",
"unicode": "e66c",
"unicode_decimal": 58988
},
{
"icon_id": "6347329",
"name": "rar",
"font_class": "rar",
"unicode": "e66d",
"unicode_decimal": 58989
},
{
"icon_id": "6347331",
"name": "txt",
"font_class": "txt",
"unicode": "e66e",
"unicode_decimal": 58990
},
{
"icon_id": "6347333",
"name": "zip",
"font_class": "zip",
"unicode": "e66f",
"unicode_decimal": 58991
},
{
"icon_id": "6347334",
"name": "video",
"font_class": "video",
"unicode": "e670",
"unicode_decimal": 58992
},
{
"icon_id": "6348230",
"name": "xlsx",
"font_class": "xlsx",
"unicode": "e671",
"unicode_decimal": 58993
},
{
"icon_id": "6348231",
"name": "png",
"font_class": "png",
"unicode": "e673",
"unicode_decimal": 58995
},
{
"icon_id": "6348233",
"name": "word",
"font_class": "word",
"unicode": "e674",
"unicode_decimal": 58996
},
{ {
"icon_id": "34273050", "icon_id": "34273050",
"name": "省略号", "name": "省略号",
@ -19,27 +173,6 @@
"unicode": "e602", "unicode": "e602",
"unicode_decimal": 58882 "unicode_decimal": 58882
}, },
{
"icon_id": "11441567",
"name": "pdf",
"font_class": "pdf",
"unicode": "e803",
"unicode_decimal": 59395
},
{
"icon_id": "11447679",
"name": "ppt2",
"font_class": "ppt",
"unicode": "e806",
"unicode_decimal": 59398
},
{
"icon_id": "11447681",
"name": "word2",
"font_class": "word",
"unicode": "e807",
"unicode_decimal": 59399
},
{ {
"icon_id": "4736203", "icon_id": "4736203",
"name": "关闭", "name": "关闭",

View File

@ -101,7 +101,7 @@ const getCookie = () => {
} }
onMounted(()=>{ onMounted(()=>{
ipcRenderer.send('set-winsize',{x:888,y: 520}) // ipcRenderer.send('set-winsize',{x:888,y: 520})
getCookie() getCookie()
}) })
// //

View File

@ -0,0 +1,80 @@
<template>
<div class="create-resoure">
<el-page-header @back="goBack">
<template #content>
<span class="font-600 mr-3 header-name"> 上传备课资源 </span>
</template>
</el-page-header>
<div class="create-main">
<el-form>
<el-form-item label="目录">
<div class="create-item">第二章 地球上的大气 / 大气的组成和垂直分层</div>
</el-form-item>
<el-form-item label="文件">
<div class="create-item file-item flex">
<FileUpload/>
<!-- <el-button round size="small" color="#eeeeee" class="add-btn">
<i class="iconfont icon-jiahao"></i>
添加文件
</el-button> -->
<span class="upload-desc">说明一次最多上传5个文件单个文件大小不能大于100M</span>
</div>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script setup>
import useResoureStore from '../store'
import FileUpload from '@/components/file-upload/index.vue'
const sourceStore = useResoureStore()
const goBack = () => {
sourceStore.isCreate = false
}
</script>
<style lang="scss" scoped>
.create-resoure {
.el-page-header {
padding: 10px 15px;
border-bottom: solid #ececec 1px;
.header-name {
font-size: 16px;
}
}
.create-main{
font-size: 12px;
padding: 40px;
.el-form-item{
margin-bottom: 30px;
}
.create-item{
font-size: 13px;
width: 100%;
text-align: left;
border-bottom: solid #e0e0e0 1px;
.add-btn{
padding: 13px 11px;
}
.icon-jiahao{
font-size: 14px;
margin-right: 5px;
}
.upload-desc{
margin-left: 10px;
font-size: 12px;
color: #b7b7b7;
}
}
.file-item{
padding-bottom: 15px;
}
}
}
</style>

View File

@ -13,15 +13,17 @@
<span class="gray-text mr-10">下载3次</span> <span class="gray-text mr-10">下载3次</span>
</div> </div>
</div> </div>
<div class="item-btns"> <div class="item-btns" @click.stop>
<el-popover placement="bottom-start" :width="50" trigger="click"> <el-popover placement="bottom-start" trigger="click" popper-class="customPopper">
<template #reference> <template #reference>
<el-button link type="primary"> <i class="iconfont icon-shenglvehao"></i></el-button> <el-button link type="primary"> <i class="iconfont icon-shenglvehao"></i></el-button>
</template> </template>
<div class="item-popover"> <template #default>
<p>预览</p> <div class="item-popover">
<p>编辑</p> <div>预览</div>
</div> <div>编辑</div>
</div>
</template>
</el-popover> </el-popover>
<el-button size="small" plain round type="primary"> <el-button size="small" plain round type="primary">
@ -42,14 +44,19 @@
<script setup> <script setup>
import { ref } from 'vue' import { ref } from 'vue'
const drawer = ref(false)
const currentPage = ref(1) const currentPage = ref(1)
const pageSize = ref(100) const pageSize = ref(100)
const handleSizeChange = () => { } const handleSizeChange = () => { }
const handleCurrentChange = () => { } const handleCurrentChange = () => { }
const openDrawer = ()=>{
drawer.value = true
}
</script> </script>
<style lang="scss" scoped> <style lang="scss">
.resource-list { .resource-list {
.list-item { .list-item {
padding: 10px 20px; padding: 10px 20px;
@ -57,6 +64,7 @@ const handleCurrentChange = () => { }
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
cursor: pointer;
.item-left { .item-left {
flex-direction: column; flex-direction: column;
@ -95,17 +103,21 @@ const handleCurrentChange = () => { }
.item-btns { .item-btns {
display: flex; display: flex;
align-items: center; align-items: center;
.item-popover{
:deep(.item-popover) {
font-size: 12px; font-size: 12px;
p{ flex-direction: column;
p {
text-align: center; text-align: center;
} }
} }
.icon-shenglvehao { .icon-shenglvehao {
cursor: pointer; cursor: pointer;
font-size: 18px; font-size: 18px;
font-weight: bold; font-weight: bold;
margin-right:10px; margin-right: 10px;
} }
.icon-jiahao { .icon-jiahao {
@ -123,4 +135,8 @@ const handleCurrentChange = () => { }
justify-content: center; justify-content: center;
} }
} }
.customPopper {
min-width: 50px !important;
}
</style> </style>

View File

@ -22,7 +22,7 @@
item.text }}</el-button> item.text }}</el-button>
</div> </div>
<div> <div>
<el-button type="primary" round size="small"> <el-button type="primary" round size="small" @click="sourceStore.isCreate = true">
<i class="iconfont icon-jiahao"></i> <i class="iconfont icon-jiahao"></i>
新建资源</el-button> 新建资源</el-button>
</div> </div>

View File

@ -3,23 +3,31 @@
<ChooseTextbook @nodeClick="nodeClick" /> <ChooseTextbook @nodeClick="nodeClick" />
<div class="page-right"> <div class="page-right">
<ResoureSearch /> <template v-if="!sourceStore.isCreate">
<ResoureList /> <ResoureSearch />
<ResoureList />
</template>
<template v-else>
<CreateResoure/>
</template>
</div> </div>
</div> </div>
</template> </template>
<script setup> <script setup>
import { toRaw } from 'vue' import { toRaw } from 'vue'
import useResoureStore from './store'
import ChooseTextbook from '@/components/choose-textbook/index.vue' import ChooseTextbook from '@/components/choose-textbook/index.vue'
import ResoureSearch from './container/resoure-search.vue'; import ResoureSearch from './container/resoure-search.vue'
import ResoureList from './container/resoure-list.vue'; import ResoureList from './container/resoure-list.vue'
import CreateResoure from './container/create-resoure.vue'
const sourceStore = useResoureStore()
const { ipcRenderer } = window.electron || {} const { ipcRenderer } = window.electron || {}
// ipcRenderer.send('set-winsize',{x:1100,y: 700}) // ipcRenderer.send('set-winsize',{x:1100,y: 700})
const nodeClick = (data) => { const nodeClick = (data) => {
// console.log(toRaw(data)) console.log(toRaw(data))
} }
</script> </script>

View File

@ -61,7 +61,9 @@ export default defineStore('resource', {
curTab: 1, curTab: 1,
curType: 1, curType: 1,
curFormat: -1, curFormat: -1,
searchKey: '' searchKey: '',
// 新建资源
isCreate: false,
}), }),
actions: { actions: {
changeTab(val) { changeTab(val) {