文件
mashangyoujiu/Application/Super/View/Config/xcxtemplate.html

310 行
13 KiB
HTML
可执行文件

<!DOCTYPE html>
<html>
<!--[1.7.90]-->
<head>
<meta charset="utf-8"/>
<title>小程序模板</title>
<link rel="stylesheet" type="text/css" href="__PUBLIC__/vue/element-ui.css">
<script type="text/javascript" charset="utf-8" src="__PUBLIC__/jquery/js/jquery-3.2.1.min.js"></script>
<script type="text/javascript" charset="utf-8" src="__PUBLIC__/vue/js/vue2.5.16.js"></script>
<script type="text/javascript" charset="utf-8" src="__PUBLIC__/vue/element-ui.js"></script>
<script type="text/javascript" charset="utf-8" src="__PUBLIC__/js/common.js"></script>
<style>
[v-cloak] {
display: none;
}
th > .cell, td > .cell {
text-align: center;
}
.text {
font-size: 14px;
}
.item {
margin-bottom: 18px;
}
.clear-fix:before,
.clear-fix:after {
display: table;
content: "";
}
.clear-fix:after {
clear: both
}
.box-card {
width: 480px;
margin: 0 20px;
min-width: 100px;
}
.model-box {
display: flex;
margin: 10px 0 0;
}
.el-form-item.el-form-item--mini {
margin-bottom: 0;
}
.el-radio + .el-radio {
margin-left: 0;
}
.el-radio-group {
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}
</style>
<body>
<div class="app" id="audit" v-cloak>
<el-tabs type="border-card" v-model="tab_index" @tab-click="changeTab(tab_index)">
<el-tab-pane name="1" label="草稿箱">
<el-table
:data="draftList"
border
style="width: 100%; margin-top: 20px">
<el-table-column label="序号" type="index" width="60"></el-table-column>
<el-table-column prop="user_version" label="版本号"></el-table-column>
<el-table-column prop="user_desc" label="描述"></el-table-column>
<el-table-column prop="source_miniprogram" label="来源小程序"></el-table-column>
<el-table-column prop="developer" label="最近上传开发者"></el-table-column>
<el-table-column prop="create_time" label="最近提交时间"></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button size="mini" @click="addTemplate(scope.row.draft_id)">添加</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane name="2" label="模板库">
<el-alert :title="'最多可添加50个,还可添加'+less_count+'个'" type="warning" show-icon
:closable="false"></el-alert>
<div class="model-box">
<el-card class="box-card" v-for="item in version_info">
<div slot="header" class="clear-fix">
<span v-text="item.title"></span>
</div>
<template v-if="item.info&&item.info.id">
<el-form label-width="80px" size="mini">
<el-form-item label="版本号">{{item.info.user_version}}</el-form-item>
<el-form-item label="模板ID">{{item.info.template_id}}</el-form-item>
<el-form-item label="使用时间">{{item.info.use_time}}</el-form-item>
<el-form-item label="描述">{{item.info.user_desc}}</el-form-item>
</el-form>
</template>
<div v-else class="text item">---</div>
</el-card>
</div>
<el-table
:data="templateList"
border
style="width: 100%; margin-top: 20px">
<el-table-column label="序号" type="index" width="60"></el-table-column>
<el-table-column prop="user_version" label="版本号"></el-table-column>
<el-table-column prop="user_desc" label="描述"></el-table-column>
<el-table-column prop="template_id" label="模板ID"></el-table-column>
<el-table-column prop="source_miniprogram" label="来源小程序"></el-table-column>
<el-table-column prop="developer" label="最近上传开发者"></el-table-column>
<el-table-column prop="create_time" label="最近提交时间"></el-table-column>
<el-table-column label="操作" min-width="100px">
<template slot-scope="scope">
<span v-if="scope.row.template_id==default_version_id" style="font-size:12px;">
当前使用的普通(无直播)版
</span>
<span v-else-if="scope.row.template_id==diy_version_id" style="font-size:12px;">
当前使用的DIY(无直播)版
</span>
<span v-else-if="scope.row.template_id==default_live_version_id" style="font-size:12px;">
当前使用的普通(有直播)版
</span>
<span v-else-if="scope.row.template_id==diy_live_version_id" style="font-size:12px;">
当前使用的DIY(有直播)版
</span>
<template v-else>
<el-popover
placement="top"
width="300"
v-model="scope.row.showUse">
<p>请选择当前模板的类型</p>
<el-radio-group v-model="scope.row.model">
<el-radio :label="1">普通版(无直播)</el-radio>
<el-radio :label="2">DIY版(无直播)</el-radio>
<el-radio :label="3">普通版(有直播)</el-radio>
<el-radio :label="4">DIY版(有直播)</el-radio>
</el-radio-group>
<div style="text-align: right; margin: 20px 0 0">
<el-button size="mini" type="text" @click="scope.row.showUse = false">取消</el-button>
<el-button type="primary" size="mini"
:disabled="scope.row.model?false:true"
@click="scope.row.showUse=false;useIt(scope.row)">
使用
</el-button>
</div>
<el-button type="text" size="mini" slot="reference">使用</el-button>
</el-popover>
<el-popover
placement="top"
width="160"
v-model="scope.row.showDelete">
<p>您确定删除该模板?</p>
<div style="text-align: right; margin: 0">
<el-button size="mini" type="text" @click="scope.row.showDelete = false">取消
</el-button>
<el-button type="primary" size="mini"
@click="scope.row.showDelete=false;deleteIt(scope.row.template_id,scope.$index)">
删除
</el-button>
</div>
<el-button type="text" size="mini" style="color:#999"
slot="reference">删除
</el-button>
</el-popover>
</template>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
</div>
<script>
new Vue({
el: "#audit",
data: {
default_version_id: 0,//当前默认版使用的版本 无直播
diy_version_id: 0,//当前diy版使用的版本 无直播
default_live_version_id: 0,//当前默认版使用的版本 有直播
diy_live_version_id: 0,//当前diy版使用的版本 有直播
version_info: {},//版本信息
draftList: [],//草稿箱
templateList: [],//模板列表
tab_index: '1',
less_count: 0,
},
methods: {
changeTab(index) {
console.log(index);
if (index == 1) {
this.getDraft();
} else {
this.getTemplate();
}
},
//获取草稿箱
getDraft() {
this.sendRequest('Super/Config/getDrafts',{
data: {},
success: (res) => {
this.draftList = [];
this.draftList = res.data;
},
});
},
//获取模板
getTemplate(callback) {
this.sendRequest('Super/Config/getTemplate',{
data: {},
success: (res) => {
this.templateList = [];
this.templateList = res.data;
this.less_count = (50 - res.data.length).toFixed(0);
if (typeof callback == "function") {
callback();
}
}
})
},
//获取模板
getTemplateSet() {
this.sendRequest('Super/Config/getTemplateSet',{
success: (res) => {
this.default_version_id = res.data.default_version_id;
this.diy_version_id = res.data.diy_version_id;
this.default_live_version_id = res.data.default_live_version_id;
this.diy_live_version_id = res.data.diy_live_version_id;
this.version_info = res.data.version_info;
}
})
},
//添加到模板库
addTemplate(id) {
this.$confirm("您确定将该草稿箱模板添加到模板库?", "提示", {
confirmButtonText: "确认添加",
cancelButtonText: '取消',
type: 'info'
}).then(() => {
this.$loading({
lock: true,
text: '操作中,请等待',
spinner: 'el-icon-loading',
background: 'rgba(255, 255, 255, 0.7)'
});
this.sendRequest('Super/Config/addTemplate',{
data: {
id: id
},
success: (res) => {
this.$loading().close();
this.$message.success(res.message);
this.getDraft();
}
})
}).catch(() => {
});
},
//使用当前模板
useIt(item) {
this.$loading({
lock: true,
text: '操作中,请等待',
spinner: 'el-icon-loading',
background: 'rgba(255, 255, 255, 0.7)'
});
this.sendRequest('Super/Config/chooseTemplate',{
data: {
template_id: item.template_id,
model: item.model,
user_version: item.user_version,
user_desc: item.user_desc,
},
success: (res) => {
this.$loading().close();
this.$message.success(res.message);
this.getTemplateSet();
}
})
},
//删除当前模板
deleteIt(id, index) {
this.$loading({
lock: true,
text: '操作中,请等待',
spinner: 'el-icon-loading',
background: 'rgba(255, 255, 255, 0.7)'
});
this.sendRequest('Super/Config/del_Drafts',{
data: {
template_id: id
},
success: (res) => {
this.$loading().close();
this.$message.success(res.message);
this.templateList.splice(index, 1);
}
})
},
},
created() {
this.getTemplateSet();
this.getDraft();
}
})
</script>