852 lines
38 KiB
PHP
852 lines
38 KiB
PHP
<?php
|
||
use app\models\Store;
|
||
/**
|
||
* @author Any
|
||
* @description KISS
|
||
* @date 2021年6月30日
|
||
* @version 1.0.0
|
||
*
|
||
* _____LOG_____
|
||
*
|
||
*/
|
||
use app\assets\UeditorAsset;
|
||
use app\components\SiteHelper;
|
||
use app\widgets\PickFile;
|
||
|
||
UeditorAsset::register($this);
|
||
$this->title = '活动列表';
|
||
$this->params['breadcrumbs'][] = $this->title;
|
||
|
||
$status = \Yii::$app->request->get('type');
|
||
|
||
?>
|
||
<style type="text/css">
|
||
.layui-table-cell {
|
||
height: auto;
|
||
}
|
||
.layui-input-block {
|
||
margin-left: 150px;
|
||
}
|
||
.layui-form-label {
|
||
width: 120px;
|
||
}
|
||
</style>
|
||
<div class="layui-fluid">
|
||
<div class="layui-card">
|
||
<div class="layui-card-header">
|
||
<?= $this->title ?>
|
||
</div>
|
||
<!--<div class="layui-card-header layuiadmin-card-header-auto">
|
||
<div class="layui-form-item">
|
||
<div class="layui-inline layui-float-right layui-form">
|
||
|
||
<div class="layui-inline layui-form-item">
|
||
<div class="layui-input-inline">
|
||
<select class="layui-select" name="type">
|
||
<option value="" <?/*=$status === null ? 'selected' : ''*/?>>全部类型</option>
|
||
<option value="0" <?/*=$status == '0' && $status != null ? 'selected' : ''*/?>>体验券</option>
|
||
<option value="1" <?/*=$status == '1' && $status != null ? 'selected' : ''*/?>>立减券</option>
|
||
</select>
|
||
</div>
|
||
</div>
|
||
<div class="layui-inline layui-form-item">
|
||
<div class="layui-input-inline">
|
||
<input type="text" name="keywords" placeholder="搜索卡券标题" autocomplete="off" class="layui-input" value="<?/*=\Yii::$app->request->get("keywords")*/?>">
|
||
</div>
|
||
</div>
|
||
<div class="layui-inline">
|
||
<button class="layui-btn layuiadmin-btn-useradmin" lay-submit lay-filter="dtable-search">
|
||
<i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>-->
|
||
<div class="layui-card-body">
|
||
<table id="dtable" lay-filter="dtable"></table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!--工具栏模板-->
|
||
<script type="text/html" id="toolBarTpl">
|
||
<div class="layui-btn-container">
|
||
<button class="layui-btn layui-btn-sm" lay-event="create_activity">创建活动</button>
|
||
</div>
|
||
</script>
|
||
<!--行操作列模板-->
|
||
<script type="text/html" id="rowBarTpl">
|
||
<button class="layui-btn layui-btn-xs" lay-event="showdata">查看参与</button>
|
||
<button class="layui-btn layui-btn-xs" lay-event="edit">修改</button>
|
||
<button class="layui-btn layui-btn-xs layui-btn-danger" lay-event="delete">删除</button>
|
||
</script>
|
||
|
||
|
||
<script type="text/html" id="typeTpl">
|
||
{{# if(d.type == '0'){ }}
|
||
<span class="layui-badge layui-bg-green">体验券</span>
|
||
{{# } else{ }}
|
||
<span class="layui-badge layui-bg-blue">立减券</span>
|
||
{{# } }}
|
||
</script>
|
||
|
||
|
||
|
||
<script>
|
||
<?php $this->beginBlock('js_script_wrap') ?>
|
||
|
||
layui.config({
|
||
base: '/statics/layuiadmin/' //静态资源所在路径
|
||
}).extend({
|
||
index: 'lib/index' //主入口模块
|
||
}).use(['index', 'user', 'table','form','laydate','upload'], function () {
|
||
var $ = layui.$
|
||
, form = layui.form
|
||
, table = layui.table
|
||
, admin = layui.admin
|
||
,upload = layui.upload;
|
||
|
||
var laydate = layui.laydate;
|
||
|
||
|
||
form.render();
|
||
|
||
//search
|
||
form.on('submit(dtable-search)', function (obj) {
|
||
var field = obj.field;
|
||
reload_table_data(field);
|
||
});
|
||
|
||
|
||
|
||
//重新加载表格数据
|
||
function reload_table_data(conf){
|
||
table.reload('dtable', {
|
||
url:'<?=\Yii::$app->urlManager->createUrl(['admin/activity/index'])?>'
|
||
,page: true
|
||
,where: conf
|
||
});
|
||
};
|
||
|
||
//执行渲染
|
||
table.render({
|
||
//指定原始表格元素选择器(推荐id选择器)
|
||
elem: '#dtable'
|
||
//容器高度
|
||
//,height: 315
|
||
//容器宽度
|
||
//,width: 720
|
||
//设置表头
|
||
,cols: [[
|
||
{checkbox: true}
|
||
, {field: 'id', title: 'ID', width: 80}
|
||
, {field: 'name', title: '活动名称'}
|
||
, {field: 'count_user', title: '参与人数'}
|
||
, {field: 'count_user_price', title: '已领取(人数)'}
|
||
, {field: 'count_user_price_all', title: '已领取(次数)'}
|
||
, {field: 'start_date', title: '开始时间'}
|
||
, {field: 'end_date', title: '结束时间'}
|
||
, {field: 'created_at_cn', title: '创建时间', width: 150}
|
||
, {title: '操作',fixed: 'right', toolbar: '#rowBarTpl', width:220}
|
||
]
|
||
]
|
||
, url:'<?=\Yii::$app->urlManager->createUrl(['admin/activity/index'])?>'
|
||
, page:true
|
||
//指向自定义工具栏模板选择器
|
||
, toolbar:'#toolBarTpl'
|
||
//头部工具栏右侧的图标按钮
|
||
, defaultToolbar:['filter', 'print', 'exports']
|
||
, limit: 20
|
||
, limits:[10,20,30,40,50,60,70,80,90,100]
|
||
, title:'<?=$this->title?>'
|
||
, data:[]
|
||
, done: function(res, curr, count){
|
||
setTimeout(function(){
|
||
$(".layui-table-main tr").each(function (index ,val) {
|
||
$(".layui-table-fixed").each(function () {
|
||
$($(this).find(".layui-table-body tbody tr")[index]).height($(val).height());
|
||
});
|
||
});
|
||
$(".layui-table-header tr").each(function (index ,val) {
|
||
$(".layui-table-fixed").each(function () {
|
||
$($(this).find(".layui-table-header thead tr")[index]).height($(val).height());
|
||
});
|
||
});
|
||
},500);
|
||
}
|
||
});
|
||
|
||
//监听工具条
|
||
table.on('tool(dtable)', function(obj){
|
||
var row_data = obj.data;
|
||
var lay_event = obj.event;
|
||
var id = row_data.id;
|
||
var confirm_url = null;
|
||
var confirm_tip = null;
|
||
var ids = [];
|
||
ids.push(id);
|
||
|
||
if(lay_event == "delete"){
|
||
confirm_url = "<?=\Yii::$app->urlManager->createUrl(['admin/activity/delete'])?>";
|
||
confirm_tip = "确定删除吗";
|
||
}
|
||
|
||
if(lay_event == 'edit'){
|
||
var data = (row_data.res)
|
||
return activity(data)
|
||
}
|
||
if(lay_event == 'showdata'){
|
||
return activityShow(id,row_data.name)
|
||
}
|
||
|
||
if(confirm_url != null){
|
||
layer.confirm(confirm_tip, {
|
||
btn: ['确定','取消']
|
||
}, function(){
|
||
$.ajax(confirm_url,{
|
||
type:"POST",
|
||
dataType:"json",
|
||
data:{
|
||
id:id,
|
||
_csrf:_csrf
|
||
},
|
||
success:function(res){
|
||
if(res.code == 0){
|
||
layer.msg(res.msg, {
|
||
offset: '15px'
|
||
,icon: 1
|
||
,time: 1000
|
||
}, function(){
|
||
location.reload();
|
||
});
|
||
} else {
|
||
layer.msg(res.msg, {
|
||
offset: '15px'
|
||
,icon: 2
|
||
,time: 1000
|
||
}, function(){
|
||
});
|
||
}
|
||
},
|
||
error:function(xhr,type,err){
|
||
layer.msg(xhr.responseText, {
|
||
offset: '15px'
|
||
,icon: 2
|
||
,time: 1000
|
||
}, function(){
|
||
});
|
||
}
|
||
})
|
||
}, function(){
|
||
});
|
||
}
|
||
});
|
||
|
||
// 查看参与
|
||
function activityShow(id,title){
|
||
layer.open({
|
||
type: 1,
|
||
title: title+"活动参与详情",
|
||
closeBtn: 1,
|
||
area:['70%','70%'],
|
||
content: '<table class="layui-hide" id="prize_table"></table>',
|
||
success:function(){
|
||
table.render({
|
||
elem: '#prize_table'
|
||
,url: '<?=\Yii::$app->urlManager->createUrl(['admin/activity/join-user'])?>?id='+id
|
||
,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
|
||
,cols: [[
|
||
{field: 'id', title: 'ID', width: 80}
|
||
, {field: 'nickname', title: '用户名称'}
|
||
, {field: 'mobile_phone', title: '用户手机号'}
|
||
, {field: 'all_rate', title: '目标进度'}
|
||
, {field: 'rate', title: '当前进度'}
|
||
, {field: 'count_user_price_all', title: '领奖次数'}
|
||
]],page:true,
|
||
done:function (){
|
||
$('.add_btn').click(function(){
|
||
console.log(data)
|
||
if(!data.data){
|
||
data.data = {}
|
||
}
|
||
if(!data.data.prize_arr){
|
||
data.data.prize_arr = []
|
||
}
|
||
var json_de = JSON.parse($(this).attr('data'))
|
||
layer.prompt({title:"填写数量"},function(val1, index){
|
||
var key = null
|
||
$.each(data.data.prize_arr,function(key1,val){
|
||
if(!val || !val.id){
|
||
return true
|
||
}
|
||
if(val.id == json_de.id){
|
||
key = key1
|
||
}
|
||
})
|
||
if(key == null){
|
||
// 追加
|
||
data.data.prize_arr.push({
|
||
id:json_de.id,
|
||
title:json_de.title,
|
||
num:val1
|
||
})
|
||
}else{
|
||
// 更新
|
||
data.data.prize_arr[key] = ({
|
||
id:json_de.id,
|
||
title:json_de.title,
|
||
num:val1
|
||
})
|
||
}
|
||
updata()
|
||
console.log(data)
|
||
layer.close(index);
|
||
layer.close(yhq_layer);
|
||
});
|
||
})
|
||
}
|
||
});
|
||
}
|
||
});
|
||
|
||
}
|
||
|
||
// 创建或编辑活动
|
||
function activity(data={}){
|
||
var btn_str = "添加";
|
||
if(data.data){
|
||
btn_str = "修改";
|
||
}
|
||
var html = `
|
||
<div class="layui-row layui-col-space15">
|
||
<div class="layui-col-md6">
|
||
<div class="layui-card">
|
||
<div class="layui-card-header">参数</div>
|
||
<div class="layui-card-body">
|
||
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">活动名称</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" id='name' autocomplete="off" placeholder="请输入活动名称" class="layui-input">
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">活动开始结束时间</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" id='start_time' autocomplete="off" placeholder="" class="layui-input" readonly>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">海报按钮名称</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" id='poster_btn_name' autocomplete="off" placeholder="" class="layui-input">
|
||
<p style='font-size:8px;color:#1E88E5'>‘首页弹窗展示按钮’不填写则不展示按钮</p>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">海报按钮跳转地址</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" id='poster_btn_url' value="/subpages/activityDetail" autocomplete="off" placeholder="" class="layui-input">
|
||
<p style='font-size:8px;color:#1E88E5'>默认为活动详情页,如有需要跳转其他地址,可与开发沟通</p>
|
||
</div>
|
||
</div>
|
||
<!--<div class="layui-form-item">
|
||
<label class="layui-form-label">内容按钮名称</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" id='content_btn_name' autocomplete="off" placeholder="" class="layui-input">
|
||
<p style='font-size:8px;color:#1E88E5'>‘活动详情页展示按钮’不填写则不展示按钮</p>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">内容按钮跳转地址</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" id='content_btn_url' autocomplete="off" placeholder="" class="layui-input">
|
||
<p style='font-size:8px;color:#1E88E5'>如有需要跳转地址,可与开发沟通</p>
|
||
</div>
|
||
</div>-->
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">内容</label>
|
||
<div class="layui-input-block">
|
||
<textarea id="editor" style="width: 100%"
|
||
name="content" rows="30" ></textarea>
|
||
</div>
|
||
<div class="layui-form-mid layui-word-aux"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="layui-col-md6">
|
||
<div class="layui-card">
|
||
<div class="layui-card-body">
|
||
<div class="layui-row layui-col-space15">
|
||
<div class="layui-col-md12">
|
||
<div class="layui-card">
|
||
<div class="layui-card-header">首页海报弹窗</div>
|
||
<div class="layui-card-body">
|
||
<div class="layui-upload">
|
||
<p style='font-size:8px;color:#1E88E5'>(如果未上传图片,则不展示首页弹窗)</p>
|
||
|
||
<button type="button" class="layui-btn" id="test1">上传图片</button>
|
||
<button type="button" class="layui-btn" id="delete_img">删除图片</button>
|
||
<div class="layui-upload-list">
|
||
<img class="layui-upload-img" style='max-height: 300px' id="demo1">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="layui-col-md12">
|
||
<div class="layui-card">
|
||
<div class="layui-card-header">
|
||
其他设置
|
||
</div>
|
||
<div class="layui-card-body">
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">支付订单满足数量</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" autocomplete="off" id='order_pay_num' placeholder="订单大于几单可领取奖励" class="layui-input" >
|
||
<p style='font-size:8px;color:#1E88E5'>满足领取条件的总进度,如需要购买5单,则填5</p>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">每个支付订单金额</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" autocomplete="off" id='order_min_money' placeholder="订单金额大于多少" class="layui-input" >
|
||
<p style='font-size:8px;color:#1E88E5'>订单支付金额大于{}算一个进度,如填写10,则需要满足10元真实支付才算1单</p>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">每个用户领取次数</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="title" lay-verify="title" autocomplete="off" id='max_number' placeholder="每个用户最多可领取次数" class="layui-input" >
|
||
<p style='font-size:8px;color:#1E88E5'>用户最大可领取数量</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="layui-col-md12">
|
||
<div class="layui-card">
|
||
<div class="layui-card-header">
|
||
<button type="button" class="layui-btn" id="add_prize">添加奖品</button>
|
||
</div>
|
||
<div class="layui-card-body">
|
||
<table class="layui-table">
|
||
<thead>
|
||
<tr>
|
||
<th>名称</th>
|
||
<th>数量</th>
|
||
<th>操作</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody id='prize_html'>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
`
|
||
layer.open({
|
||
type: 1,
|
||
title: "活动",
|
||
closeBtn: 1,
|
||
area:['80%','80%'],
|
||
content: html,
|
||
btn:[btn_str,'取消'],
|
||
yes:function(){
|
||
data.name = $('#name').val();
|
||
data.poster_btn_name = $('#poster_btn_name').val();
|
||
data.poster_btn_url = $('#poster_btn_url').val();
|
||
data.content_btn_name = $('#content_btn_name').val();
|
||
data.content_btn_url = $('#content_btn_url').val();
|
||
var start_time = $('#start_time').val();
|
||
if(start_time == ''){
|
||
return layer.msg('请选择活动时间')
|
||
}
|
||
if(data.name == ''){
|
||
return layer.msg('请填写活动名称')
|
||
}
|
||
|
||
data.start_time = start_time.split(' - ')[0];
|
||
data.end_time = start_time.split(' - ')[1];
|
||
if(!data.data){
|
||
data.data = {}
|
||
}
|
||
data.data.user_max = $('#max_number').val();
|
||
var pay_num = $('#order_pay_num').val()
|
||
data.data.pz = {
|
||
type:1,
|
||
data: pay_num,
|
||
order_min_money:$('#order_min_money').val()?$('#order_min_money').val():0
|
||
};
|
||
if(data.data.pz.data == ''){
|
||
return layer.msg('请填写下单数量')
|
||
}
|
||
if(data.data.user_max == ''){
|
||
return layer.msg('请填写每个用户领取次数')
|
||
}
|
||
data.content = UE.getEditor('editor').getContent();
|
||
data.data = JSON.stringify(data.data)
|
||
if(!data.poster_img_arr){
|
||
data.poster_img_arr = [];
|
||
}
|
||
data.poster_img_arr = JSON.stringify(data.poster_img_arr)
|
||
|
||
var url = '<?= \Yii::$app->urlManager->createUrl(["admin/activity/edit"]) ?>';
|
||
data._csrf = _csrf;
|
||
$.ajax(url, {
|
||
type: "POST",
|
||
dataType: "json",
|
||
data: data,
|
||
timeout: 10000,
|
||
success: function (res) {
|
||
if (res.code == 0) {
|
||
layer.msg(btn_str+"成功", {
|
||
offset: '15px'
|
||
, icon: 1
|
||
, time: 1000
|
||
}, function () {
|
||
location.reload();
|
||
});
|
||
} else {
|
||
layer.msg(res.msg, {
|
||
offset: '15px'
|
||
, icon: 2
|
||
, time: 1000
|
||
}, function () {
|
||
});
|
||
}
|
||
},
|
||
error: function (xhr, type, err) {
|
||
|
||
},
|
||
complete: function () {
|
||
submitLock = false;
|
||
}
|
||
})
|
||
|
||
},
|
||
success:function(){
|
||
console.log(data)
|
||
if(data.data){
|
||
// 添加默认数据
|
||
$.each(data,function(key,val){
|
||
$('#'+key).val(val);
|
||
});
|
||
$('#start_time').val(data.start_date+" - "+data.end_date);
|
||
$('#demo1').attr('src',data.poster_img_arr);
|
||
$('#order_pay_num').val(data.data.pz.data);
|
||
$('#max_number').val(data.data.user_max);
|
||
$('#order_min_money').val(data.data.pz.order_min_money);
|
||
updata()
|
||
if(data.content !=''){
|
||
UE.getEditor('editor').ready(function() {
|
||
UE.getEditor('editor').setContent(data.content);
|
||
});
|
||
}
|
||
}
|
||
laydate.render({
|
||
elem: '#start_time'
|
||
,type: 'datetime'
|
||
,range: true
|
||
});
|
||
$('#delete_img').click(function(){
|
||
data.poster_img_arr = [];
|
||
$('#demo1').attr('src','');
|
||
})
|
||
function updata(){ // 更新数据
|
||
if(!data.data){
|
||
data.data = {}
|
||
}
|
||
if(!data.data.prize_arr){
|
||
data.data.prize_arr = []
|
||
}
|
||
var html = ''
|
||
$.each(data.data.prize_arr,function(key,val){
|
||
console.log(val)
|
||
if(!val || !val.id){
|
||
return true
|
||
}
|
||
html += `<tr>
|
||
<td>`+val.title+`</td>
|
||
<td>`+val.num+`</td>
|
||
<td><button class='layui-btn layui-btn-xs layui-btn-danger delete_table' data='`+val.id+`'>删除</button></td>
|
||
</tr>`
|
||
})
|
||
$('#prize_html').html(html);
|
||
$('.delete_table').click(function(){
|
||
var id = $(this).attr('data')
|
||
var key2 = null
|
||
$.each(data.data.prize_arr,function(key1,v){
|
||
if(!v || !v.id){
|
||
return true
|
||
}
|
||
if(v.id == id){
|
||
key2 = key1
|
||
}
|
||
})
|
||
if(key2 !== null){
|
||
delete data.data.prize_arr[key2]
|
||
var t = []
|
||
$.each(data.data.prize_arr,function(key1,v){
|
||
if(!v || !v.id){
|
||
return true
|
||
}
|
||
t.push(v)
|
||
})
|
||
data.data.prize_arr = t
|
||
}
|
||
updata()
|
||
})
|
||
}
|
||
$('#add_prize').click(function(){
|
||
var yhq_layer = layer.open({
|
||
type: 1,
|
||
title: "选择优惠券",
|
||
closeBtn: 1,
|
||
area:['70%','70%'],
|
||
content: '<table class="layui-hide" id="prize_table"></table>',
|
||
success:function(){
|
||
table.render({
|
||
elem: '#prize_table'
|
||
,url: '<?=\Yii::$app->urlManager->createUrl(['admin/coupon/index'])?>'
|
||
,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
|
||
,cols: [[
|
||
{field: 'id', title: 'ID', width: 80}
|
||
, {field: 'title', title: '卡券名称'}
|
||
, {field: 'price', title: '金额'}
|
||
, {field: 'num', title: '发放数量'}
|
||
, {field: 'get_num', title: '已领取数量'}
|
||
, {field: 'user_get_num', title: '用户可领取数量'}
|
||
, {field: 'get_business', title: '领取日期'}
|
||
, {field: 'business', title: '使用日期'}
|
||
, {field: 'store_name_list', title: '可使用场地'}
|
||
, {field: 'type', title: '类型', templet:'#typeTpl', width: 80}
|
||
, {title: '操作', width: 150,align:'center',templet: function(d){
|
||
return "<button class='layui-btn layui-btn-xs add_btn' data='"+JSON.stringify(d)+"'>添加</button>";
|
||
}}
|
||
]],page:true,
|
||
done:function (){
|
||
$('.add_btn').click(function(){
|
||
console.log(data)
|
||
if(!data.data){
|
||
data.data = {}
|
||
}
|
||
if(!data.data.prize_arr){
|
||
data.data.prize_arr = []
|
||
}
|
||
var json_de = JSON.parse($(this).attr('data'))
|
||
layer.prompt({title:"填写数量"},function(val1, index){
|
||
var key = null
|
||
$.each(data.data.prize_arr,function(key1,val){
|
||
if(!val || !val.id){
|
||
return true
|
||
}
|
||
if(val.id == json_de.id){
|
||
key = key1
|
||
}
|
||
})
|
||
if(key == null){
|
||
// 追加
|
||
data.data.prize_arr.push({
|
||
id:json_de.id,
|
||
title:json_de.title,
|
||
num:val1
|
||
})
|
||
}else{
|
||
// 更新
|
||
data.data.prize_arr[key] = ({
|
||
id:json_de.id,
|
||
title:json_de.title,
|
||
num:val1
|
||
})
|
||
}
|
||
updata()
|
||
console.log(data)
|
||
layer.close(index);
|
||
layer.close(yhq_layer);
|
||
});
|
||
})
|
||
}
|
||
});
|
||
}
|
||
});
|
||
})
|
||
//常规使用 - 普通图片上传
|
||
var uploadInst = upload.render({
|
||
elem: '#test1'
|
||
,url: "<?= \Yii::$app->urlManager->createUrl(['file/upload']) ?>?action=uploadimage" //此处用的是第三方的 http 请求演示,实际使用时改成您自己的上传接口即可。
|
||
,before: function(obj){
|
||
//预读本地文件示例,不支持ie8
|
||
obj.preview(function(index, file, result){
|
||
$('#demo1').attr('src', result); //图片链接(base64)
|
||
});
|
||
layer.msg('上传中', {icon: 16, time: 0});
|
||
}
|
||
,done: function(res){
|
||
//如果上传失败
|
||
layer.closeAll('dialog')
|
||
if(!res.url){
|
||
return layer.msg('上传失败')
|
||
}
|
||
data.poster_img_arr = [res.url];
|
||
//上传成功的一些操作
|
||
//……
|
||
$('#demoText').html(''); //置空上传失败的状态
|
||
}
|
||
,error: function(){
|
||
//演示失败状态,并实现重传
|
||
var demoText = $('#demoText');
|
||
demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');
|
||
demoText.find('.demo-reload').on('click', function(){
|
||
uploadInst.upload();
|
||
});
|
||
}
|
||
});
|
||
|
||
|
||
var ue = UE.getEditor('editor', {
|
||
serverUrl: "<?= \Yii::$app->urlManager->createUrl(['file/upload']) ?>",
|
||
toolbars: [
|
||
[
|
||
'undo', //撤销
|
||
'redo', //重做
|
||
'bold', //加粗
|
||
'indent', //首行缩进
|
||
'italic', //斜体
|
||
'underline', //下划线
|
||
'strikethrough', //删除线
|
||
'subscript', //下标
|
||
'fontborder', //字符边框
|
||
'superscript', //上标
|
||
'formatmatch', //格式刷
|
||
'source', //源代码
|
||
'blockquote', //引用
|
||
'pasteplain', //纯文本粘贴模式
|
||
'selectall', //全选
|
||
'preview', //预览
|
||
'horizontal', //分隔线
|
||
'removeformat', //清除格式
|
||
'time', //时间
|
||
'date', //日期
|
||
'unlink', //取消链接
|
||
'cleardoc', //清空文档
|
||
'insertcode', //代码语言
|
||
'fontfamily', //字体
|
||
'fontsize', //字号
|
||
'paragraph', //段落格式
|
||
'simpleupload', //单图上传
|
||
'insertimage', //多图上传
|
||
'link', //超链接
|
||
'emotion', //表情
|
||
'spechars', //特殊字符
|
||
'justifyleft', //居左对齐
|
||
'justifyright', //居右对齐
|
||
'justifycenter', //居中对齐
|
||
'justifyjustify', //两端对齐
|
||
'forecolor', //字体颜色
|
||
'insertorderedlist', //有序列表
|
||
'insertunorderedlist', //无序列表
|
||
'fullscreen', //全屏
|
||
'rowspacingtop', //段前距
|
||
'rowspacingbottom', //段后距
|
||
'autotypeset', //自动排版
|
||
'drafts', // 从草稿箱加载
|
||
]
|
||
]
|
||
});
|
||
},
|
||
end:function(){
|
||
window.location.reload()
|
||
}
|
||
});
|
||
}
|
||
|
||
//监听工具栏
|
||
table.on('toolbar(dtable)', function(obj){
|
||
var lay_event = obj.event;
|
||
var confirm_url = null;
|
||
var confirm_tip = null;
|
||
if(lay_event == 'create_activity'){
|
||
return activity()
|
||
confirm_url = "<?=\Yii::$app->urlManager->createUrl(['admin/coupon/delete'])?>";
|
||
confirm_tip = "确定将选中卡券删除吗";
|
||
}
|
||
|
||
if(confirm_url != null){
|
||
layer.confirm(confirm_tip, {
|
||
btn: ['确定','取消']
|
||
}, function(){
|
||
$.ajax(confirm_url,{
|
||
type:"POST",
|
||
dataType:"json",
|
||
data:{
|
||
ids:ids,
|
||
_csrf:_csrf
|
||
},
|
||
success:function(res){
|
||
if(res.code == 0){
|
||
layer.msg(res.msg, {
|
||
offset: '15px'
|
||
,icon: 1
|
||
,time: 1000
|
||
}, function(){
|
||
location.reload();
|
||
});
|
||
} else {
|
||
layer.msg(res.msg, {
|
||
offset: '15px'
|
||
,icon: 2
|
||
,time: 1000
|
||
}, function(){
|
||
});
|
||
}
|
||
},
|
||
error:function(xhr,type,err){
|
||
layer.msg(xhr.responseText, {
|
||
offset: '15px'
|
||
,icon: 2
|
||
,time: 1000
|
||
}, function(){
|
||
});
|
||
}
|
||
})
|
||
}, function(){
|
||
});
|
||
}
|
||
});
|
||
|
||
});
|
||
|
||
function previewImg(obj) {
|
||
var img = new Image();
|
||
img.src = obj.src;
|
||
var imgw = img.width;
|
||
var imgh = img.height;
|
||
var img_th = imgh / imgw * 500;
|
||
var imgHtml = "<img src='" + obj.src + "' width='500px' height='"+img_th+"px'/>";
|
||
//弹出层
|
||
layer.open({
|
||
type: 1,
|
||
shade: 0.8,
|
||
offset: 'auto',
|
||
area: [500 + 'px',(img_th+50)+'px'],
|
||
shadeClose:true,
|
||
scrollbar: false,
|
||
title: "图片预览", //不显示标题
|
||
content: imgHtml, //捕获的元素,注意:最好该指定的元素要存放在body最外层,否则可能被其它的相对元素所影响
|
||
cancel: function () {
|
||
//layer.msg('捕获就是从页面已经存在的元素上,包裹layer的结构', { time: 5000, icon: 6 });
|
||
}
|
||
});
|
||
}
|
||
<?php $this->endBlock(); ?>
|
||
</script>
|
||
<?php $this->registerJs($this->blocks['js_script_wrap'], \yii\web\View::POS_END); ?>
|
||
|