Files
YwxAppThink/addon/haonav/view/backend/apply/index.html
T

186 lines
8.4 KiB
HTML

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>申请审核</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link href="/assets/layui/css/layui.css" rel="stylesheet">
<link href="/assets/ywxapp/css/ywxapp.css" rel="stylesheet">
<script type="text/javascript">
var config = { root: "/" };
</script>
</head>
<body>
<div class="layui-card">
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
<div class="layui-form-item">
<div class="layui-inline">
<select name="type">
<option value="">全部类型</option>
<option value="1">收录/友链</option>
<option value="2">广告合作</option>
</select>
</div>
<div class="layui-inline">
<select name="status">
<option value="">全部状态</option>
<option value="0">待审核</option>
<option value="1">已通过</option>
<option value="2">已拒绝</option>
</select>
</div>
<div class="layui-inline">
<button class="layui-btn layuiadmin-btn-useradmin" lay-submit lay-filter="tableSearchButton">
<i class="layui-icon layui-icon-search"></i>
</button>
</div>
</div>
</div>
<div class="layui-card-body">
<table class="layui-hide" id="dataTable" lay-filter="dataTable"></table>
</div>
</div>
<script type="text/html" id="dataBar">
<div class="layui-btn-group">
{{# if(d.status == 0){ }}
<a class="layui-btn layui-btn-sm layui-btn-normal" title="通过" lay-event="approve"><i class="layui-icon layui-icon-ok"></i></a>
<a class="layui-btn layui-btn-sm layui-btn-warm" title="拒绝" lay-event="reject"><i class="layui-icon layui-icon-close"></i></a>
{{# } }}
<a class="layui-btn layui-btn-sm layui-btn-primary" title="删除" lay-event="delete"><i class="layui-icon layui-icon-delete"></i></a>
</div>
</script>
<script type="text/html" id="typeTpl">
{{# if(d.type == 1){ }}<span class="layui-badge layui-bg-blue">收录/友链</span>{{# } else { }}<span class="layui-badge layui-bg-orange">广告合作</span>{{# } }}
</script>
<script type="text/html" id="statusTpl">
{{# if(d.status == 0){ }}<span class="layui-badge layui-bg-gray">待审核</span>
{{# } else if(d.status == 1){ }}<span class="layui-badge layui-bg-green">已通过</span>
{{# } else { }}<span class="layui-badge">已拒绝</span>{{# } }}
</script>
<!-- 通过(友链需选分类) -->
<script type="text/html" id="approveFormTpl">
<form class="layui-form" style="padding:20px 20px 0;">
<input type="hidden" name="id" value="{{d.id}}">
{{# if(d.type == 1){ }}
<div class="layui-form-item">
<label class="layui-form-label">收录分类</label>
<div class="layui-input-block">
<select name="cid" lay-verify="required">
<option value="">请选择分类</option>
{{# d.cates.forEach(function(c){ }}
<option value="{{c.id}}">{{c.title}}</option>
{{# }); }}
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">上架方式</label>
<div class="layui-input-block">
<input type="radio" name="online" value="1" title="直接上架" checked>
<input type="radio" name="online" value="0" title="进待审核">
</div>
</div>
{{# } }}
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">审核备注</label>
<div class="layui-input-block">
<textarea name="reply" placeholder="选填,将保留在申请记录中" class="layui-textarea"></textarea>
</div>
</div>
<div class="layui-form-item layui-hide">
<button class="layui-btn" lay-submit="" lay-filter="wxapp-form-submit" id="wxapp-form-submit">提交</button>
</div>
</form>
</script>
<script src="/assets/layui/layui.js"></script>
<script src="/assets/ywxapp/ywxapp.js" module="backend"></script>
<script>
layui.use(['http', 'table', 'form', 'laytpl', 'layer'], function () {
var $ = layui.$, table = layui.table, form = layui.form, laytpl = layui.laytpl, http = layui.http, layer = layui.layer;
var cates = [];
http.get('/haonav/backend/apply/create').then(function (res) {
if (res.code === 0) { cates = res.data || []; }
});
table.render({
elem: '#dataTable',
defaultToolbar: ['filter', 'exports', 'print'],
url: '/haonav/backend/apply/index',
page: true, limit: 20,
parseData: function (res) {
return { code: res.code, msg: res.message || '', count: res.count || 0, data: res.data || [] };
},
cols: [[
{ type: 'checkbox', fixed: 'left' },
{ field: 'id', title: 'ID', width: 70, sort: true },
{ field: 'type', title: '类型', width: 110, templet: '#typeTpl' },
{ field: 'title', title: '名称', minWidth: 120 },
{ field: 'url', title: '网址', minWidth: 160, templet: function (d) { return d.url ? '<a href="' + d.url + '" target="_blank" rel="nofollow" style="color:#01AAED;">' + d.url + '</a>' : '-'; } },
{ field: 'contact', title: '联系方式', width: 140 },
{ field: 'slot', title: '意向广告位', width: 110, templet: function (d) { var m = { 'home_top': '首页顶部', 'home_bottom': '首页底部', 'detail_inline': '详情页内联', 'sidebar': '侧边栏' }; return m[d.slot] || (d.slot || '-'); } },
{ field: 'description', title: '说明', minWidth: 140 },
{ field: 'status', title: '状态', width: 90, align: 'center', templet: '#statusTpl' },
{ field: 'reply', title: '审核备注', minWidth: 110, templet: function (d) { return d.reply || '-'; } },
{ field: 'ip', title: 'IP', width: 130 },
{ field: 'create_at', title: '提交时间', width: 160, align: 'center', templet: function (d) { return d.create_at || '-'; } },
{ title: '操作', width: 150, align: 'center', toolbar: '#dataBar', fixed: 'right' }
]]
});
form.on('submit(tableSearchButton)', function (data) {
table.reload('dataTable', { where: data.field });
});
table.on('tool(dataTable)', function (elem) {
var d = elem.data;
if (elem.event === 'approve') {
d.cates = cates;
var html = laytpl($('#approveFormTpl').html()).render(d);
layer.open({
title: '通过申请 #' + d.id,
content: html, anim: 'slideLeft', offset: 'r',
btnAlign: 'l', area: ['420px', '99%'], shade: 0.1, shadeClose: true,
btn: ['确定', '取消'],
success: function () { form.render(); },
yes: function (index, layero) {
layui.form.on('submit(wxapp-form-submit)', function (el) {
http.post('approve', el.field).then(function (res) {
if (res.code === 0) { layer.msg(res.message || '已通过'); layer.close(index); table.reload('dataTable', {}, true); }
else { layer.msg(res.message || '失败'); }
});
layui.off('submit(wxapp-form-submit)'); return false;
});
layero.contents().find('#wxapp-form-submit').trigger('click');
}
});
} else if (elem.event === 'reject') {
layer.prompt({ formType: 2, title: '拒绝原因(将保留在记录中,可留空)' }, function (val, index) {
http.post('reject', { id: d.id, reply: val || '' }).then(function (res) {
if (res.code === 0) { layer.msg(res.message || '已拒绝'); layer.close(index); table.reload('dataTable', {}, true); }
else { layer.msg(res.message || '失败'); }
});
});
} else if (elem.event === 'delete') {
layer.confirm('确定删除该申请吗?', function (index) {
http.delete('delete', { ids: String(d.id) }).then(function (res) {
if (res.code === 0) { layer.close(index); table.reload('dataTable', {}, true); }
else { layer.msg(res.message || '失败'); }
});
});
}
});
});
</script>
</body>
</html>