|
|
@@ -1,487 +0,0 @@
|
|
|
-<template>
|
|
|
- <el-row>
|
|
|
- <el-row class="movie-list">
|
|
|
- <el-col :md="16" style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-card class="box-card">
|
|
|
- <div slot="header" class="clearfix">
|
|
|
- <span>存储配置</span>
|
|
|
- </div>
|
|
|
- <div class="text item">
|
|
|
- <el-table
|
|
|
- :data="storeConfigList"
|
|
|
- border
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- prop="id"
|
|
|
- label="ID"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="ossType"
|
|
|
- label="存储类型"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="endpoint"
|
|
|
- label="Endpoint"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="accessKeyId"
|
|
|
- label="AccessKeyId"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="accessKeySecret"
|
|
|
- label="AccessKeyIdSecret"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- fixed="right"
|
|
|
- label="操作"
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- @click="onApprove(scope.row)"
|
|
|
- >同意</el-button>
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="danger"
|
|
|
- @click="onDecline(scope.row)"
|
|
|
- >拒绝</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-col>
|
|
|
- <el-col :md="8" style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-card class="box-card">
|
|
|
- <div slot="header" class="clearfix">
|
|
|
- <span>视频分区</span>
|
|
|
- </div>
|
|
|
- <div class="text item">
|
|
|
- <el-tree
|
|
|
- :accordion="true"
|
|
|
- :data="treeNode"
|
|
|
- :props="defaultProps"
|
|
|
- highlight-current
|
|
|
- @node-click="handleNodeClick"
|
|
|
- >
|
|
|
- <span slot-scope="{ node, data }">
|
|
|
- <span :class="data.icon">{{ node.label }}</span>
|
|
|
- </span>
|
|
|
- </el-tree>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="movie-list">
|
|
|
- <el-col :md="16" style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-card class="box-card">
|
|
|
- <div slot="header" class="clearfix">
|
|
|
- <span>通知配置</span>
|
|
|
- </div>
|
|
|
- <div class="text item">
|
|
|
- <el-table
|
|
|
- :data="notifyConfigList"
|
|
|
- border
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- prop="id"
|
|
|
- label="ID"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="smtp"
|
|
|
- label="SMTP"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="username"
|
|
|
- label="帐号"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="password"
|
|
|
- label="密码"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="personal"
|
|
|
- label="发送人"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="defaultSender"
|
|
|
- label="是否默认"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- fixed="right"
|
|
|
- label="操作"
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- @click="onApprove(scope.row)"
|
|
|
- >同意</el-button>
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="danger"
|
|
|
- @click="onDecline(scope.row)"
|
|
|
- >拒绝</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-col>
|
|
|
- <el-col :md="8" style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-card class="box-card">
|
|
|
- <div slot="header" class="clearfix">
|
|
|
- <span>站点公告</span>
|
|
|
- </div>
|
|
|
- <div class="text item">
|
|
|
- {{ siteNotice }}
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="movie-list">
|
|
|
- <el-col :md="16" style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-card class="box-card">
|
|
|
- <div slot="header" class="clearfix">
|
|
|
- <span>充值请求</span>
|
|
|
- </div>
|
|
|
- <div class="text item">
|
|
|
- <el-table
|
|
|
- :data="chargeReqList"
|
|
|
- border
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- fixed="left"
|
|
|
- label="No"
|
|
|
- type="index"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="chargeId"
|
|
|
- label="充值 ID"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="quantity"
|
|
|
- label="金额"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="owner"
|
|
|
- label="用户"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- fixed="right"
|
|
|
- label="操作"
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- @click="onApprove(scope.row)"
|
|
|
- >同意</el-button>
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="danger"
|
|
|
- @click="onDecline(scope.row)"
|
|
|
- >拒绝</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-col>
|
|
|
- <el-col :md="8" style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px">
|
|
|
- <el-card class="box-card">
|
|
|
- <div slot="header" class="clearfix">
|
|
|
- <span>会员计划</span>
|
|
|
- </div>
|
|
|
- <div class="text item">
|
|
|
- <el-table
|
|
|
- :data="vipPlanList"
|
|
|
- border
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- prop="planId"
|
|
|
- label="ID"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="name"
|
|
|
- label="名字"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="price"
|
|
|
- label="价格(¥)"
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- prop="duration"
|
|
|
- label="时长(天)"
|
|
|
- />
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <el-dialog
|
|
|
- :title="updateTitle"
|
|
|
- append-to-body
|
|
|
- :visible.sync="updateMobileDialog"
|
|
|
- width="30%"
|
|
|
- center
|
|
|
- >
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px; text-align: center">
|
|
|
- <el-form ref="form" :model="updateMobileForm" label-width="100px">
|
|
|
- <el-form-item label="邮箱/手机号" label-width="100px">
|
|
|
- <el-input
|
|
|
- v-model="updateMobileForm.principal"
|
|
|
- placeholder="请输入邮箱或手机号"
|
|
|
- style="width: 45%; padding-right: 10px"
|
|
|
- clearable
|
|
|
- />
|
|
|
- <el-button :disabled="isBtn" @click="sendVerifyCode">{{ code }}</el-button>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="验证码" label-width="90px">
|
|
|
- <el-input
|
|
|
- v-model="updateMobileForm.verifyCode"
|
|
|
- placeholder="请输入短信验证码"
|
|
|
- style="padding-right: 1px"
|
|
|
- clearable
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="密码">
|
|
|
- <el-input
|
|
|
- v-model="updateMobileForm.credential"
|
|
|
- type="password"
|
|
|
- placeholder="请输入密码"
|
|
|
- style="padding-right: 1px"
|
|
|
- clearable
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item>
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- @click.native="updateUserEmail"
|
|
|
- >更新</el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- </el-row>
|
|
|
- </el-dialog>
|
|
|
- <el-dialog
|
|
|
- :title="updateTitle"
|
|
|
- append-to-body
|
|
|
- :visible.sync="updatePasswordDialog"
|
|
|
- width="30%"
|
|
|
- center
|
|
|
- >
|
|
|
- <el-row style="padding-right: 5px; padding-left: 5px; padding-bottom: 5px; text-align: center">
|
|
|
- <el-card class="box-card">
|
|
|
- <div class="text item">
|
|
|
- <el-form ref="form" :model="updatePasswordForm" label-width="100px">
|
|
|
- <el-form-item label="当前密码">
|
|
|
- <el-input
|
|
|
- v-model="updatePasswordForm.credential"
|
|
|
- type="password"
|
|
|
- placeholder="请输入当前密码"
|
|
|
- style="padding-right: 1px"
|
|
|
- clearable
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="新密码">
|
|
|
- <el-input
|
|
|
- v-model="updatePasswordForm.credential"
|
|
|
- type="password"
|
|
|
- placeholder="请输入新密码"
|
|
|
- style="padding-right: 1px"
|
|
|
- clearable
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="确认新密码">
|
|
|
- <el-input
|
|
|
- v-model="updatePasswordForm.credential"
|
|
|
- type="password"
|
|
|
- placeholder="请确认新密码"
|
|
|
- style="padding-right: 1px"
|
|
|
- clearable
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item>
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- @click.native="updateUserPassword"
|
|
|
- >更新</el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-dialog>
|
|
|
- </el-row>
|
|
|
-</template>
|
|
|
-
|
|
|
-<script>
|
|
|
-import { userMixin } from 'assets/js/mixin'
|
|
|
-import {
|
|
|
- getChargeReq,
|
|
|
- getFileStoreConfig,
|
|
|
- getNotifyConfig,
|
|
|
- getSiteNotice,
|
|
|
- getVideoCategory,
|
|
|
- getVipPlan
|
|
|
-} from '@/api/admin'
|
|
|
-import {videoCategories} from "@/api/video";
|
|
|
-
|
|
|
-export default {
|
|
|
- name: 'AdminSiteConfig',
|
|
|
- mixins: [userMixin],
|
|
|
- data() {
|
|
|
- return {
|
|
|
- storeConfigList: null,
|
|
|
- notifyConfigList: [],
|
|
|
- vipPlanList: [],
|
|
|
- siteNotice: null,
|
|
|
- videoCategory: null,
|
|
|
- chargeReqList: [],
|
|
|
- treeNode: [],
|
|
|
- defaultProps: {
|
|
|
- children: 'children',
|
|
|
- label: 'label',
|
|
|
- value: 'value'
|
|
|
- },
|
|
|
- updateType: 1,
|
|
|
- updateTitle: '',
|
|
|
- updateMobileDialog: false,
|
|
|
- updateMobileForm: {
|
|
|
- principal: null,
|
|
|
- verifyCode: null,
|
|
|
- credential: null,
|
|
|
- captchaCode: null,
|
|
|
- channel: 1,
|
|
|
- plat: 2
|
|
|
- },
|
|
|
- updatePasswordDialog: false,
|
|
|
- updatePasswordForm: {
|
|
|
- principal: null,
|
|
|
- verifyCode: null,
|
|
|
- credential: null,
|
|
|
- captchaCode: null,
|
|
|
- channel: 1,
|
|
|
- plat: 2
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- created() {
|
|
|
- document.title = '站点配置'
|
|
|
- this.getData()
|
|
|
- },
|
|
|
- mounted() {
|
|
|
- },
|
|
|
- methods: {
|
|
|
- getData() {
|
|
|
- getFileStoreConfig().then(resp => {
|
|
|
- if (resp.code === 0) {
|
|
|
- this.storeConfigList = resp.data
|
|
|
- }
|
|
|
- })
|
|
|
-
|
|
|
- getNotifyConfig().then(resp => {
|
|
|
- if (resp.code === 0) {
|
|
|
- this.notifyConfigList = resp.data
|
|
|
- }
|
|
|
- })
|
|
|
-
|
|
|
- getVipPlan().then(resp => {
|
|
|
- if (resp.code === 0) {
|
|
|
- this.vipPlanList = resp.data
|
|
|
- }
|
|
|
- })
|
|
|
-
|
|
|
- getSiteNotice().then(resp => {
|
|
|
- if (resp.code === 0) {
|
|
|
- this.siteNotice = resp.data
|
|
|
- }
|
|
|
- })
|
|
|
-
|
|
|
- getVideoCategory().then(resp => {
|
|
|
- if (resp.code === 0) {
|
|
|
- }
|
|
|
- })
|
|
|
- videoCategories().then(resp => {
|
|
|
- if (resp.code === 0) {
|
|
|
- this.treeNode = resp.data
|
|
|
- } else {
|
|
|
- this.$notify({
|
|
|
- title: '提示',
|
|
|
- message: resp.msg,
|
|
|
- type: 'error',
|
|
|
- duration: 3000
|
|
|
- })
|
|
|
- }
|
|
|
- }).catch(error => {
|
|
|
- this.$notify({
|
|
|
- title: '提示',
|
|
|
- message: error.message,
|
|
|
- type: 'warning',
|
|
|
- duration: 3000
|
|
|
- })
|
|
|
- })
|
|
|
-
|
|
|
- getChargeReq(1).then(resp => {
|
|
|
- if (resp.code === 0) {
|
|
|
- this.chargeReqList = resp.data
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- // ****************************************************************************************************************
|
|
|
- showUpdateDialog(type) {
|
|
|
- if (type === 1) {
|
|
|
- this.updateType = 1
|
|
|
- this.updateTitle = '更新用户手机号'
|
|
|
- this.updateMobileDialog = true
|
|
|
- } else if (type === 2) {
|
|
|
- this.updateType = 2
|
|
|
- this.updateTitle = '更新用户密码'
|
|
|
- this.updatePasswordDialog = true
|
|
|
- }
|
|
|
- },
|
|
|
- onUpdate() {
|
|
|
- if (this.updateType === 1) {
|
|
|
- this.updateMobileDialog = false
|
|
|
- } else {
|
|
|
- this.updatePasswordDialog = false
|
|
|
- }
|
|
|
- },
|
|
|
- sendVerifyCode() {
|
|
|
- this.$message.info('发送验证码')
|
|
|
- },
|
|
|
- updateUserEmail() {
|
|
|
- this.$message.info(this.updateMobileForm)
|
|
|
- this.updateMobileDialog = false
|
|
|
- },
|
|
|
- updateUserPassword() {
|
|
|
- this.$message.info(this.updatePasswordForm)
|
|
|
- this.updatePasswordDialog = false
|
|
|
- },
|
|
|
- onApprove(row) {
|
|
|
- this.$message.info('同意充值 ' + row.chargeId)
|
|
|
- },
|
|
|
- onDecline(row) {
|
|
|
- this.$message.info('拒绝充值' + row.chargeId)
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-</script>
|
|
|
-
|
|
|
-<style>
|
|
|
-</style>
|