部署
All checks were successful
continuous-integration/drone Build is passing

This commit is contained in:
liukang 2025-02-12 10:30:36 +08:00
parent e59865044f
commit 0ee6ec5991
4 changed files with 67 additions and 35 deletions

View File

@ -38,7 +38,7 @@
"dependencies": { "dependencies": {
"@riophae/vue-treeselect": "0.4.0", "@riophae/vue-treeselect": "0.4.0",
"axios": "0.28.1", "axios": "0.28.1",
"clipboard": "2.0.8", "clipboard": "^2.0.11",
"core-js": "3.37.1", "core-js": "3.37.1",
"echarts": "5.4.0", "echarts": "5.4.0",
"element-ui": "2.15.14", "element-ui": "2.15.14",

View File

@ -25,6 +25,14 @@ export function getPerform(id) {
}) })
} }
// 查询演出详细
export function getNormalPerform(id) {
return request({
url: '/system/perform/normal/' + id,
method: 'get'
})
}
// 新增演出 // 新增演出
export function addPerform(data) { export function addPerform(data) {
return request({ return request({

View File

@ -71,7 +71,7 @@
<script> <script>
import {getUserProfile} from "@/api/system/user"; import {getUserProfile} from "@/api/system/user";
import {addApply} from "@/api/system/apply"; import {addApply} from "@/api/system/apply";
import {getPerform} from "@/api/system/perform"; import {getNormalPerform} from "@/api/system/perform";
export default { export default {
@ -116,7 +116,7 @@ export default {
return; return;
} }
getPerform(performId).then(response => { getNormalPerform(performId).then(response => {
if (!response.data) { if (!response.data) {
this.$alert('演出不存在或已结束', '提示 ', {}); this.$alert('演出不存在或已结束', '提示 ', {});
this.$router.push({path: this.redirect || "/"}) this.$router.push({path: this.redirect || "/"})

View File

@ -11,10 +11,10 @@
</el-form-item> </el-form-item>
<el-form-item label="开始时间" prop="startTime"> <el-form-item label="开始时间" prop="startTime">
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.startTime" v-model="queryParams.startTime"
type="datetime" type="datetime"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择开始时间"> placeholder="请选择开始时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status"> <el-form-item label="状态" prop="status">
@ -42,7 +42,8 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['system:perform:add']" v-hasPermi="['system:perform:add']"
>新增</el-button> >新增
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -53,7 +54,8 @@
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate"
v-hasPermi="['system:perform:edit']" v-hasPermi="['system:perform:edit']"
>修改</el-button> >修改
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -64,7 +66,8 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['system:perform:remove']" v-hasPermi="['system:perform:remove']"
>删除</el-button> >删除
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -74,16 +77,17 @@
size="mini" size="mini"
@click="handleExport" @click="handleExport"
v-hasPermi="['system:perform:export']" v-hasPermi="['system:perform:export']"
>导出</el-button> >导出
</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="performList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="performList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center"/>
<el-table-column label="id" align="center" prop="id" /> <el-table-column label="id" align="center" prop="id"/>
<el-table-column label="演出编号" align="center" prop="num" /> <el-table-column label="演出编号" align="center" prop="num"/>
<el-table-column label="团名" align="center" prop="name" /> <el-table-column label="团名" align="center" prop="name"/>
<el-table-column label="开始时间" align="center" prop="startTime" width="180"> <el-table-column label="开始时间" align="center" prop="startTime" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span> <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
@ -94,7 +98,7 @@
<dict-tag :options="dict.type.perform_status" :value="scope.row.status"/> <dict-tag :options="dict.type.perform_status" :value="scope.row.status"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="备注" align="center" prop="remark" /> <el-table-column label="备注" align="center" prop="remark"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -103,15 +107,25 @@
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['system:apply:edit']" v-hasPermi="['system:apply:edit']"
>修改</el-button> >修改
</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="copyRow(scope.row)"
v-hasPermi="['system:perform:remove']" v-hasPermi="['system:perform:remove']"
>删除</el-button> >删除
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-copy-document"
@click="copyRow(scope.row.id)"
>复制申请链接
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -128,24 +142,24 @@
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="演出编号" prop="num"> <el-form-item label="演出编号" prop="num">
<el-input v-model="form.num" placeholder="请输入演出编号" /> <el-input v-model="form.num" placeholder="请输入演出编号"/>
</el-form-item> </el-form-item>
<el-form-item label="团名" prop="name"> <el-form-item label="团名" prop="name">
<el-input v-model="form.name" placeholder="请输入团名" /> <el-input v-model="form.name" placeholder="请输入团名"/>
</el-form-item> </el-form-item>
<el-form-item label="开始时间" prop="startTime"> <el-form-item label="开始时间" prop="startTime">
<el-date-picker clearable <el-date-picker clearable
v-model="form.startTime" v-model="form.startTime"
type="datetime" type="datetime"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择开始时间"> placeholder="请选择开始时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="协议号" prop="agree"> <el-form-item label="协议号" prop="agree">
<el-input v-model="form.agree" placeholder="请输入协议号,英文逗号隔开" /> <el-input v-model="form.agree" placeholder="请输入协议号,英文逗号隔开"/>
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> <el-input v-model="form.remark" type="textarea" placeholder="请输入内容"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@ -157,7 +171,7 @@
</template> </template>
<script> <script>
import { listPerform, getPerform, delPerform, addPerform, updatePerform } from "@/api/system/perform"; import {listPerform, getPerform, delPerform, addPerform, updatePerform} from "@/api/system/perform";
export default { export default {
name: "Perform", name: "Perform",
@ -195,16 +209,16 @@ export default {
// //
rules: { rules: {
num: [ num: [
{ required: true, message: "演出编号不能为空", trigger: "blur" } {required: true, message: "演出编号不能为空", trigger: "blur"}
], ],
name: [ name: [
{ required: true, message: "团名不能为空", trigger: "blur" } {required: true, message: "团名不能为空", trigger: "blur"}
], ],
startTime: [ startTime: [
{ required: true, message: "开始时间不能为空", trigger: "blur" } {required: true, message: "开始时间不能为空", trigger: "blur"}
], ],
status: [ status: [
{ required: true, message: "状态", trigger: "change" } {required: true, message: "状态", trigger: "change"}
], ],
} }
}; };
@ -213,6 +227,15 @@ export default {
this.getList(); this.getList();
}, },
methods: { methods: {
copyRow(id) {
const text = "http://www.tixly.top:8081/weverse/apply?performId=" + id;
navigator.clipboard.writeText(text).then(() => {
this.$modal.msgSuccess("复制成功");
}).catch(err => {
this.$modal.msgError("复制失败" + err);
});
},
/** 查询演出列表 */ /** 查询演出列表 */
getList() { getList() {
this.loading = true; this.loading = true;
@ -256,7 +279,7 @@ export default {
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.id) this.ids = selection.map(item => item.id)
this.single = selection.length!==1 this.single = selection.length !== 1
this.multiple = !selection.length this.multiple = !selection.length
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
@ -298,12 +321,13 @@ export default {
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const ids = row.id || this.ids; const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除演出编号为"' + ids + '"的数据项?').then(function() { this.$modal.confirm('是否确认删除演出编号为"' + ids + '"的数据项?').then(function () {
return delPerform(ids); return delPerform(ids);
}).then(() => { }).then(() => {
this.getList(); this.getList();
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => {}); }).catch(() => {
});
}, },
/** 复制申请 */ /** 复制申请 */
onCopy() { onCopy() {