add film delete and recover function

This commit is contained in:
mubai
2024-07-11 05:35:22 +08:00
parent 3da0366237
commit 862aca9f4c
24 changed files with 519 additions and 144 deletions

View File

@@ -21,7 +21,6 @@ declare module '@vue/runtime-core' {
ElContainer: typeof import('element-plus/es')['ElContainer']
ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
ElDialog: typeof import('element-plus/es')['ElDialog']
ElDrawer: typeof import('element-plus/es')['ElDrawer']
ElDropdown: typeof import('element-plus/es')['ElDropdown']
ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem']
ElDropdownMenu: typeof import('element-plus/es')['ElDropdownMenu']

View File

@@ -15,7 +15,7 @@
"axios": "^1.3.4",
"element-plus": "^2.4.4",
"video.js": "^8.0.4",
"vue": "^3.2.47"
"vue": "^3.4.31"
},
"devDependencies": {
"@vitejs/plugin-vue": "^4.1.0",

View File

@@ -77,7 +77,7 @@ button:hover {
}
button:focus,
button:focus-visible {
outline: 4px auto -webkit-focus-ring-color;
outline: none;
}
.card {

View File

@@ -2,7 +2,7 @@
<el-container>
<el-header>
<!--<Header/>-->
<NewHeader />
<Header />
</el-header>
<el-main>
<router-view></router-view>

View File

@@ -90,7 +90,8 @@
</el-table-column>
<el-table-column prop="remarks" align="center" label="更新状态">
<template #default="scope">
<el-tag :type="scope.row.remarks == '已完结' ?'success':''" disable-transitions>{{scope.row.remarks }}</el-tag>
<el-tag v-if="scope.row.remarks == '已完结'" type="success" disable-transitions>{{scope.row.remarks }}</el-tag>
<el-tag v-else disable-transitions>{{scope.row.remarks }}</el-tag>
</template>
</el-table-column>
<el-table-column sortable prop="updateStamp" align="center" label="更新时间">
@@ -102,7 +103,7 @@
<template #default="scope">
<el-button type="success" :icon="Aim" @click="" plain circle/>
<el-button type="primary" :icon="Edit" @click="" plain circle/>
<el-button type="danger" :icon="Delete" @click="" plain circle/>
<el-button type="danger" :icon="Delete" @click="delFilm(scope.row.ID)" plain circle/>
</template>
</el-table-column>
</el-table>
@@ -178,11 +179,12 @@ const changeClass = (value: any) => {
}
}
// 生成序列号
const serialNum = (index: number) => {
return (data.page.current - 1) * data.page.pageSize + index + 1
}
// 搜索满足条件的影片
const searchFilm = ()=>{
let p = data.params
// 时间选择器参数处理 如果 dateGroup 不为空 则追加时间范围参数
@@ -197,6 +199,7 @@ const searchFilm = ()=>{
}
// 获取影片分页信息
const getFilmPage = () => {
let {current, pageSize} = data.page
let params = data.params
@@ -228,6 +231,19 @@ onMounted(() => {
getFilmPage()
})
// 删除影片信息
const delFilm = (id:number) =>{
console.log(id)
ApiGet( `/manage/film/search/del`, {id: id}).then((resp: any) => {
if (resp.code === 0) {
ElMessage.success({message: resp.msg})
getFilmPage()
} else {
ElMessage.error({message: resp.msg})
}
})
}
</script>
<style scoped>

View File

@@ -12,7 +12,8 @@
</el-table-column>
<el-table-column prop="show" align="center" label="是否展示">
<template #default="scope">
<el-switch v-model="scope.row.show" inline-prompt active-text="展示" @change="changeClassState(scope.row.id, scope.row.show)" inactive-text="隐藏"/>
<el-switch v-if="scope.row.pid == 0" v-model="scope.row.show" inline-prompt active-text="展示" inactive-text="隐藏" @change="changeClassState(scope.row.id, scope.row.show)" />
<el-switch v-else v-model="scope.row.show" inline-prompt active-text="屏蔽" inactive-text="恢复" @change="changeClassState(scope.row.id, scope.row.show)" />
</template>
</el-table-column>
<el-table-column label="操作" align="center">
@@ -54,16 +55,25 @@
</template>
<script setup lang="ts">
import { Delete, Edit,RefreshLeft,} from "@element-plus/icons-vue";
import {Delete, Edit, RefreshLeft, Warning,} from "@element-plus/icons-vue";
import {onMounted, reactive} from "vue";
import {ApiGet, ApiPost} from "../../../utils/request";
import {ElMessage} from "element-plus";
import {ElMessage,ElMessageBox} from "element-plus";
// table数据
const data = reactive({
classTree: []
})
//
const confirmShield = (id:any)=>{
ElMessageBox.confirm('Are you sure to close this dialog?').then(() => {
console.log(id)
}).catch(() => {
// catch error
})
}
// dialog 弹窗数据
const dialog = reactive({
editV: false,
@@ -120,6 +130,7 @@ const changeClassState = (id:string, show: number)=>{
}
})
}
// 对话框关闭时重置表单数据为初始值
const cancelDialog = ()=>{
dialog.editForm = {id: -99, pid: -99, name:'', show: true, children:[]}

View File

@@ -12,9 +12,8 @@ export default defineConfig({
// port: 3600,
// proxy: {
// "/api": {
// // target: `http://127.0.0.1:3601`,
// target: `http://1.94.30.26:3601`,
// // target: `http://[2408:8266:701:2271:5fc5:85b8:ac18:562e]:3601`,
// target: `http://127.0.0.1:3601`,
// // target: `http://1.94.30.26:3601`,
// changeOrigin: true, // 允许跨域
// rewrite: path => path.replace(/^\/api/, '')
// }