375 lines
16 KiB
HTML
Executable File
375 lines
16 KiB
HTML
Executable File
{include file="Public:header3"/}
|
|
|
|
<body>
|
|
<div class="layui-fluid">
|
|
<div class="layui-card">
|
|
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
|
<div class="layui-form-item">
|
|
<div class="layui-inline">
|
|
<div class="layui-input-block" style="margin-left: 0px">
|
|
<input type="text" name="title" id="searchTitle" value="{$Request.get.title}"
|
|
placeholder="请输入奖品标题" autocomplete="off" class="layui-input">
|
|
</div>
|
|
</div>
|
|
{if $type eq 9}
|
|
<div class="layui-inline">
|
|
<div class="layui-input-inline" style="width: 180px;margin-left: 0px">
|
|
<select name="lian_ji_type" id="searchLianJiType" style="width:100%">
|
|
<option value="">--奖池分类--</option>
|
|
<option value="0" {if condition="$Request.get.lian_ji_type eq 0" }selected{/if}>连击赏池
|
|
</option>
|
|
<option value="1" {if condition="$Request.get.lian_ji_type eq 1" }selected{/if}>秘宝池
|
|
</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
{/if}
|
|
<input type="hidden" id="goodsId" value="{$goods_id}">
|
|
<input type="hidden" id="goodsType" value="{$type}">
|
|
<div class="layui-inline">
|
|
<button class="layui-btn layuiadmin-btn-useradmin" id="searchBtn">
|
|
<i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
|
|
</button>
|
|
<button class="layui-btn" id="addBtn">添加奖品</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="layui-card-body">
|
|
<!-- 表格 -->
|
|
<table id="goodsListTable" lay-filter="goodsListTable"></table>
|
|
|
|
<!-- 奖品类型模板 -->
|
|
<script type="text/html" id="goodsTypeTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
{{# if(d.goods_type === 1){ }}
|
|
<span>现货</span>
|
|
{{# } else if(d.goods_type === 2){ }}
|
|
<span>预售</span>
|
|
{{# } else if(d.goods_type === 3){ }}
|
|
<span>货币</span>
|
|
{{# } else if(d.goods_type === 4){ }}
|
|
<span>宝箱</span>
|
|
{{# } }}
|
|
{{# } }}
|
|
</script>
|
|
<!-- 操作列模板 -->
|
|
<script type="text/html" id="operationTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
{{# if(d.goods_type === 4){ }}
|
|
<a class="layui-btn layui-btn-radius layui-btn-normal layui-btn-xs" lay-event="add">
|
|
<i class="layui-icon layui-icon-edit"></i>添加奖品
|
|
</a>
|
|
{{# } }}
|
|
<a class="layui-btn layui-btn-radius layui-btn-normal layui-btn-xs" lay-event="edit">
|
|
<i class="layui-icon layui-icon-edit"></i>编辑
|
|
</a>
|
|
<a class="layui-btn layui-btn-danger layui-btn-radius layui-btn-xs" lay-event="del">删除</a>
|
|
{{# } }}
|
|
</script>
|
|
|
|
<!-- 图片模板 -->
|
|
<script type="text/html" id="imgTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
<img src="{{d.imgurl}}" style="width:60px;height:60px;">
|
|
{{# } }}
|
|
|
|
</script>
|
|
|
|
<!-- 详情图模板 -->
|
|
<script type="text/html" id="imgDetailTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
{{# if(d.imgurl_detail){ }}
|
|
<img src="{{d.imgurl_detail}}" style="width:60px;height:60px;">
|
|
{{# } else { }}
|
|
<span>无</span>
|
|
{{# } }}
|
|
{{# } }}
|
|
</script>
|
|
|
|
<!-- 奖赏类型模板 -->
|
|
<script type="text/html" id="shangTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
<button class="layui-btn layui-btn-info layui-btn-radius layui-btn-sm">{{d.shang}}</button>
|
|
{{# } }}
|
|
</script>
|
|
|
|
<!-- 奖池分类模板 -->
|
|
<script type="text/html" id="lianJiTypeTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
{{# if(d.lian_ji_type === 0){ }}
|
|
<span>连击赏池</span>
|
|
{{# } else if(d.lian_ji_type === 1){ }}
|
|
<span>秘宝池</span>
|
|
{{# } }}
|
|
{{# } }}
|
|
</script>
|
|
|
|
<!-- 是否为领主模板 -->
|
|
<script type="text/html" id="isLingzhuTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
{{# if(d.is_lingzhu == 1){ }}
|
|
<span>是</span>
|
|
{{# } else { }}
|
|
<span>否</span>
|
|
{{# } }}
|
|
{{# } }}
|
|
</script>
|
|
|
|
<!-- 价格信息模板 -->
|
|
<script type="text/html" id="priceTpl">
|
|
{{# if(d.id!=-1){ }}
|
|
<div>售价: {{d.price}}</div>
|
|
<div>兑换价: {{d.money}}</div>
|
|
<div>参考价: {{d.sc_money}}</div>
|
|
<div>id: {{d.id}}</div>
|
|
<div>所属id: {{d.goods_list_id}}</div>
|
|
{{# } }}
|
|
</script>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{include file="Public:footer3"/}
|
|
|
|
<script type="text/javascript">
|
|
layui.use(function () {
|
|
var $ = layui.$,
|
|
layer = layui.layer,
|
|
table = layui.table,
|
|
form = layui.form;
|
|
var treeTable = layui.treeTable;
|
|
// 获取PHP传递的值
|
|
var goodsId = $('#goodsId').val();
|
|
var goodsType = parseInt($('#goodsType').val());
|
|
|
|
// 初始化表格
|
|
initTable();
|
|
|
|
// 初始化表格
|
|
function initTable() {
|
|
// 构建表格列配置
|
|
var columns = [];
|
|
columns.push({ field: 'id', type: 'numbers', title: '序号', width: 60 },);
|
|
// columns.push({ field: 'id', title: 'ID', minWidth: 80 });
|
|
// columns.push({ field: 'goods_list_id', title: '所属宝箱id', minWidth: 80 });
|
|
// 基础列
|
|
columns.push({ field: 'title', title: '奖品名称', minWidth: 260 });
|
|
columns.push({ field: 'goods_type', title: '奖品类型', templet: '#goodsTypeTpl', minWidth: 100 });
|
|
// 通用列
|
|
columns.push({ field: 'shang', title: '奖赏类型', templet: '#shangTpl', minWidth: 100, totalRow: false });
|
|
columns.push({ field: 'imgurl', title: '奖品图片', templet: '#imgTpl', minWidth: 100 });
|
|
columns.push({ field: 'imgurl_detail', title: '商品详情图', templet: '#imgDetailTpl', minWidth: 100 });
|
|
columns.push({ field: 'price', title: '价格信息', templet: '#priceTpl', minWidth: 150 });
|
|
|
|
// 根据类型添加特定列
|
|
if ([1, 3, 5, 6, 10, 11, 15, 17].indexOf(goodsType) > -1) {
|
|
columns.push({ field: 'stock', title: '奖品数量', minWidth: 100 });
|
|
}
|
|
|
|
if ([2, 8, 9, 16, 17].indexOf(goodsType) > -1) {
|
|
columns.push({
|
|
field: 'real_pro', title: '真实概率', templet: function (d) {
|
|
return d.real_pro + '%'
|
|
}, minWidth: 140, totalRow: '总概率:{{= d.TOTAL_ROW.real_pro }}%'
|
|
});
|
|
}
|
|
|
|
if (goodsType === 16) {
|
|
columns.push({ field: 'doubling', title: '赠送倍率', minWidth: 100 });
|
|
}
|
|
|
|
if (goodsType === 9) {
|
|
columns.push({ field: 'lian_ji_type', title: '奖池分类', templet: '#lianJiTypeTpl', minWidth: 100 });
|
|
}
|
|
|
|
if (goodsType === 8) {
|
|
columns.push({ field: 'is_lingzhu', title: '是否为领主', templet: '#isLingzhuTpl', minWidth: 100 });
|
|
}
|
|
|
|
columns.push({ field: 'sort', title: '排序', minWidth: 80, edit: 'text' });
|
|
columns.push({ title: '操作', toolbar: '#operationTpl', minWidth: 210, fixed: 'right' });
|
|
|
|
// 渲染表格
|
|
treeTable.render({
|
|
elem: '#goodsListTable',
|
|
url: '{:url("/admin/getGoodsListData")}',
|
|
method: 'get',
|
|
toolbar: true,
|
|
where: {
|
|
goods_id: goodsId
|
|
},
|
|
lineStyle: 'height:100px',
|
|
height: 'full-150',
|
|
page: true,
|
|
limit: 50,
|
|
totalRow: true,
|
|
tree: {
|
|
enable: true,
|
|
customName: {
|
|
name: 'title',
|
|
children: 'children',
|
|
isParent: 'isParent',
|
|
id: 'id'
|
|
},
|
|
view: {
|
|
indent: 20,
|
|
showIcon: false,
|
|
expandAllDefault: true
|
|
}
|
|
},
|
|
cols: [columns],
|
|
parseData: (res) => {
|
|
return {
|
|
"totalRow": {
|
|
"real_pro": res.code.real_pro,
|
|
},
|
|
"code": res.code.code, //解析接口状态
|
|
"msg": res.msg, //解析提示文本
|
|
"count": res.count, //解析数据长度
|
|
"data": res.data //解析数据列表
|
|
};
|
|
},
|
|
done: function (res) {
|
|
// 表格加载完成后的回调
|
|
}
|
|
});
|
|
}
|
|
|
|
// 搜索按钮点击事件
|
|
$('#searchBtn').on('click', function () {
|
|
var title = $('#searchTitle').val();
|
|
var lianJiType = $('#searchLianJiType').val();
|
|
|
|
// 执行重载
|
|
table.reload('goodsListTable', {
|
|
where: {
|
|
goods_id: goodsId,
|
|
title: title,
|
|
lian_ji_type: lianJiType
|
|
},
|
|
page: {
|
|
curr: 1 // 重新从第1页开始
|
|
}
|
|
});
|
|
});
|
|
|
|
// 添加奖品按钮点击事件
|
|
$('#addBtn').on('click', function () {
|
|
openAddLayer(goodsId);
|
|
});
|
|
|
|
// 监听表格工具条事件
|
|
table.on('tool(goodsListTable)', function (obj) {
|
|
var data = obj.data;
|
|
if (obj.event === 'edit') {
|
|
// 编辑
|
|
openEditLayer(data.id, data.goods_list_id);
|
|
} else if (obj.event === 'del') {
|
|
// 删除
|
|
deleteItem(data.id);
|
|
} else if (obj.event === 'add') {
|
|
console.log(data);
|
|
openAddLayer(data.goods_id, data.id);
|
|
}
|
|
});
|
|
|
|
// 监听单元格编辑
|
|
table.on('edit(goodsListTable)', function (obj) {
|
|
var value = obj.value, // 得到修改后的值
|
|
data = obj.data, // 得到所在行所有键值
|
|
field = obj.field; // 得到字段
|
|
|
|
// 排序字段修改
|
|
if (field === 'sort') {
|
|
var loadIndex = layer.load(2);
|
|
// 发送请求保存修改
|
|
$.ajax({
|
|
url: '{:url("/admin/goodslist_edit_sort")}',
|
|
type: 'POST',
|
|
data: {
|
|
id: data.id,
|
|
sort: value
|
|
},
|
|
success: function (res) {
|
|
layer.close(loadIndex);
|
|
if (res.status === 1) {
|
|
layer.msg('排序修改成功', { icon: 1, time: 1000 });
|
|
} else {
|
|
layer.msg(res.msg || '修改失败', { icon: 2, anim: 6, time: 2000 });
|
|
// 重载表格以恢复原值
|
|
table.reload('goodsListTable');
|
|
}
|
|
},
|
|
error: function () {
|
|
layer.close(loadIndex);
|
|
layer.msg('网络错误,请稍后重试', { icon: 2, anim: 6, time: 2000 });
|
|
// 重载表格以恢复原值
|
|
table.reload('goodsListTable');
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
// 打开添加层
|
|
function openAddLayer(goodsId, goods_list_id = '') {
|
|
var url = "{:url('/admin/goodslist_add')}?goods_id=" + goodsId + "&goods_list_id=" + goods_list_id;
|
|
layer.open({
|
|
type: 2,
|
|
title: '添加奖品',
|
|
shadeClose: false,
|
|
shade: 0.3,
|
|
area: ['90%', '90%'],
|
|
content: url,
|
|
end: function () {
|
|
// 刷新表格
|
|
table.reload('goodsListTable');
|
|
}
|
|
});
|
|
}
|
|
|
|
// 打开编辑层
|
|
function openEditLayer(id, goods_list_id = '') {
|
|
var url = "{:url('/admin/goodslist_edit')}?id=" + id + "&goods_list_id=" + goods_list_id;
|
|
layer.open({
|
|
type: 2,
|
|
title: '编辑奖品',
|
|
shadeClose: false,
|
|
shade: 0.3,
|
|
area: ['90%', '90%'],
|
|
content: url,
|
|
end: function () {
|
|
// 刷新表格
|
|
console.log('aaaa');
|
|
|
|
table.reload('goodsListTable');
|
|
}
|
|
});
|
|
}
|
|
|
|
// 删除项目
|
|
function deleteItem(id) {
|
|
var title = "删除";
|
|
layer.confirm('确认要执行' + title + '操作吗?', function () {
|
|
var url = "{:url('/admin/goodslist_del')}";
|
|
var load = layer.load(2);
|
|
|
|
$.post(url, { "id": id }, function (data) {
|
|
if (data.status == 1) {
|
|
layer.msg(title + '成功', { icon: 1, time: 1000 }, function () {
|
|
// 刷新表格
|
|
layer.close(load);
|
|
table.reload('goodsListTable');
|
|
});
|
|
} else {
|
|
layer.msg(data.msg, { icon: 2, anim: 6, time: 1000 }, function () {
|
|
layer.close(load);
|
|
});
|
|
}
|
|
});
|
|
});
|
|
}
|
|
});
|
|
</script>
|
|
</body>
|
|
|
|
</html> |