多个弹窗选中

选择商品后保存

<!DOCTYPE html>
<html xmlns:margin-bottom="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title><%= trans.index.title %></title>
    <link rel="stylesheet" type="text/css"
          href="<%= locals.webdownload %>/js/jquery-easyui-1.5.5.7/themes/bootstrap/easyui.css">
    <link rel="stylesheet" type="text/css" href="<%= locals.webdownload %>/js/jquery-easyui-1.5.5.7/themes/icon.css">
    <script type="text/javascript" src="<%= locals.webdownload %>/js/jquery-easyui-1.5.5.7/jquery.min.js"></script>
    <script type="text/javascript"
            src="<%= locals.webdownload %>/js/jquery-easyui-1.5.5.7/jquery.easyui.min.js"></script>
    <script type="text/javascript" src="<%= locals.webdownload %>/js/common.js"></script>
</head>
<body>
<div style="margin:5px;">
    <input id="name" class="easyui-textbox" prompt="活动名称">
    <a href="#" class="easyui-linkbutton" οnclick="doSearch()" iconcls="icon-search"><%= trans.common.select %></a>
    <a id="reset" href="#" οnclick="resetSearch()" class="easyui-linkbutton"
       data-options="iconCls:'icon-reload'"><%= trans.common.reset %></a>
    <div style="display: inline-block;color: #ff0000">&nbsp;&nbsp;<%=trans.common.dbClickTip%></div>

</div>
<div id="tableActivity">
    <table id="activity-list">
    </table>
</div>
<div id="activity-dialog" style="display: none; ">
    <form id="activity-form" method="post">
        <div style="margin:20px 50px; " >
            <div style="margin-bottom:10px">
                <input class="easyui-textbox" name="name"   missingMessage="该输入框为必填项" data-options="label:'活动名称:',required:true,width:500" />
            </div>
            <div style="margin-bottom:10px">
                <div style="width: 14%;float: left;">
                    <label>活动类型:</label>
                </div>
                <div style="width: 86%;float: left">
                    <div style="margin-bottom:10px">
                        <input class="easyui-radiobutton"  name="type" value="1"  data-options="label:'商品折扣',labelPosition:'after',labelWidth:70" checked/>
                        <input class="easyui-numberbox"  id="discount1" data-options="required:true,value:0,min:0.1,max:9.9,precision:1,width:100" />&nbsp;折
                    </div>
                    <div style="margin-bottom:10px">
                        <input class="easyui-radiobutton"  name="type" value="2"  data-options="label:'第二杯',labelPosition:'after',labelWidth:70" />
                        <input class="easyui-numberbox"  id="discount2" data-options="required:true,value:0,min:0.1,max:9.9,precision:1,width:100" />&nbsp;折
                    </div>
                    <div style="margin-bottom:10px">
                        <input class="easyui-radiobutton"  name="type" value="3"  data-options="label:'新用户首杯',labelPosition:'after',labelWidth:90" />
                        <input class="easyui-numberbox"  id="discount3" data-options="required:true,value:0.1,min:0.1,max:9.9,precision:1,width:100" />&nbsp;折(开发中)
                    </div>
                </div>
            </div>

            <div style="margin-bottom:10px">
                <input class="easyui-datebox" name="start_time"  missingMessage="该输入框为必填项" data-options="label:'开始时间:',required:true,width:250,editable:false">
            </div>
            <div style="margin-bottom:10px">
                <input class="easyui-datebox" name="end_time"  missingMessage="该输入框为必填项" data-options="label:'结束时间:',required:true,width:250,editable:false">
            </div>
            <div style="margin-bottom:10px">
                <div style="width: 14%;float: left;">
                    <label>可用商品:</label>
                </div>
                <div style="width: 86%;float: left">
                    <div style="margin-bottom:10px">
                        <input class="easyui-radiobutton"  name="goods_id" value="0"  data-options="label:'全部商品',labelPosition:'after'" checked />
                    </div>
                    <div style="margin-bottom:10px">
                        <input class="easyui-radiobutton" id="goods"  name="goods_id" value="1"  data-options="label:'部分商品',labelPosition:'after'" /><a href="#" οnclick="showGoodsDialog()">选择商品</a>
                    </div>
                </div>
            </div>
            <div style="margin-bottom:10px">
                <input class="easyui-textbox"  name="remark"   missingMessage="该输入框为必填项" data-options="label:'备注:',required:true,multiline:true,width:500,height:200" />
            </div>
        </div>
        </div>
    </form>
</div>
<div id="goods-dialog" style="display: none; ">
    <div id="goods-list"></div>
</div>
</body>

<script type="text/javascript">
    //日期格式
    $.fn.datebox.defaults.formatter = function (date) {
        //显示格式: 2017-05-08 17:15:15
        var year = date.getFullYear();
        var month = date.getMonth() + 1;
        var day = date.getDate();
        var hour = date.getHours();
        var min = date.getMinutes();
        var ss = date.getSeconds();
        month = month < 10 ? '0' + month : month;
        day = day < 10 ? '0' + day : day;
        // hour =hour<10 ? '0'+hour :hour;
        // min = min<10? '0'+min:min;
        // ss = ss<10? '0'+ss:ss;
        return year + "-" + month + "-" + day;
    }
    $.fn.datebox.defaults.parser = function (date) {
        //重写formatter 必须 重写parser, 否则无论选择哪天, 日期均为当天日期
        //xxxx-x-x
        if (!date) return new Date();
        var array = date.split(" ");// 分成日期和时间两部分
        var arrayDate = array[0].split("-");
        var yearStr = arrayDate[0];
        var monthStr = arrayDate[1];
        var dayStr = arrayDate[2];
        var year = parseInt(yearStr, 10);
        var month = parseInt(monthStr, 10);
        var day = parseInt(dayStr, 10);
        // var arrayTime = array[1].split(":");
        // var hour = parseInt(arrayTime[0],10);
        // var min = parseInt(arrayTime[1],10);
        // var ss = parseInt(arrayTime[2],10);
        if (!isNaN(year) && !isNaN(month) && !isNaN(day)) {
            return new Date(year, month - 1, day);
        } else {
            return new Date();
        }
    }

    //活动编号
    let activityId = null;

    //活动商品(部分商品)
    let goodsId = null;

    function doSearch() {
        $('#activity-list').datagrid('load', {
            name: $('#name').val().replace(/(^\s*)|(\s*$)/g, "")
        });
    }

    //重置
    function resetSearch() {
        $('#name').textbox("reset");
    }

    function init() {
        $('#goods-list').datagrid({
            url: '/mall/goods/list?clang=<%= lang %>',
            method: 'get',
            idField:'id',
            columns: [[
                {field: 'id', title: 'ID', width: 100, align: 'center', checkbox: true},
                {field: 'name', title: '<%= trans.goods.name %>', align: 'center', width: 150},
                {field: 'typename', title: '<%= trans.goods.bigType %>', align: 'center', width: 150},
                {field:'price',title:'<%= trans.goods.price %>',  align:'center',width:150},
                {
                    field: 'url',
                    title: '<%= trans.goods.pic %>',
                    align: 'center',
                    width: 150,
                    formatter: function (value, row, index) {
                        return '<img style="width: 100px;height: 100px" src="<%= locals.download %>/' + row.operator + '/goods/' + value + '">';
                    }
                },
                {field:'activityName',title:'所属活动',  align:'center',width:150}
            ]],
            fitColumns: false,
            fit: true
        });
        $('#goods-dialog').dialog({
            modal: true,
            top: 50,
            left: 200,
            width: 800,
            height:800,
            iconCls: 'icon-good',
            title: '<%= trans.ui.goods %>',
            closed: true,
            buttons: [{
                text: '确认',
                iconCls: 'icon-ok',
                handler: function () {
                    $('#goods-dialog').dialog('close');
                }
            }, {
                text: '关闭',
                iconCls: 'icon-cancel',
                handler: function () {
                    $('#goods-dialog').dialog('close');
                }
            }]
        })
        $('#activity-dialog').dialog({
            modal: true,
            top: 10,
            left: 100,
            width: 700,
            height:700,
            iconCls: 'icon-save',
            title: '<%= trans.common.add %>',
            closed: true,
            buttons: [{
                text: '<%= trans.common.save %>',
                iconCls: 'icon-ok',
                handler: function () {
                    saveActivity();
                }
            }, {
                text: '<%= trans.common.cancel %>',
                iconCls: 'icon-cancel',
                handler: function () {
                    $('#activity-dialog').dialog('close');
                }
            }]
        })

        //初始商品维护商品信息
        $('#activity-list').datagrid({
            url: '/mall/activity/list',
            method: 'get',
            columns: [[
                {field: 'id', title: 'ID', width: 100, align: 'center', checkbox: true},
                {field: 'name', title: '活动名称', align: 'center', width: 180},
                {field:'start_time',title:'活动开始时间',  align:'center',width:200},
                {field:'end_time',title:'活动结束时间',  align:'center',width:200},
                {
                    field: 'type',
                    title: '活动类型',
                    align: 'center',
                    width: 150,
                    formatter: function (value, row, index) {
                        switch (value) {
                            case '1':
                                return '折扣';
                            case '2':
                                return '第二杯N折';
                            case '3':
                                return '新用户首杯N折';
                            default:
                                break;
                        }
                    }
                },
                {field:'rule',title:'活动规则',  align:'center',width:150,
                    formatter: function (value, row, index) {
                        switch (row.type) {
                            case '1':
                                return value*10+'折';
                            case '2':
                                return value*10+'折';
                            case '3':
                                return value*10+'折';
                            default:
                                break;
                        }
                    }
                },
                {field: 'operator', title: '<%= trans.sys.operate %>', align: 'center', width: 150},
                {
                    field: 'auditState',
                    title: '审核状态',
                    align: 'center',
                    width: 150,
                    formatter: function (value, row, index) {
                        if(row.audit==0){
                            return '未审核';
                        }else if(row.audit==1){
                            return '审核中';
                        }else if(row.audit==2){
                            return '已审核';
                        }else if(row.audit==3){
                            return '已驳回';
                        }
                    }
                },
                {
                    field: 'status',
                    title: '<%= trans.sys.operation %>',
                    align: 'center',
                    width: 150,
                    formatter: function (value, row, index) {
                        if(row.audit==0 || row.audit==3){
                            return '<a href="#" onClick="audit(\''+ row.id +'\')">送审</a>';
                        }else if(row.audit==1){
                            return '';
                        }else if(row.enable==0){
                            return '<a href="#" onClick="able(\''+ row.id +'\',\''+row.end_time +'\',\''+row.goods_id+'\')">上线</a>';
                        }else if(row.enable==1) {
                            return '<a href="#" onClick="disable(\''+ row.id +'\')">下线</a>';
                        }else {
                            return '已过期'
                        }
                    }
                }
            ]],
            fitColumns: false,
            pagination: true,
            pageSize: 20,
            pageList: [20, 40, 60],
            fit: true,
            onDblClickRow:function (index,row) {
                activityId = row.id;
                goodsId = row.goods_id;
                $.ajax({
                    url: "/mall/activity/detail?activityId="+row.id,
                    type: "get",
                    success: function (data) {
                        let out = data.data;
                        $('#activity-form').form('load',out);
                        switch (out.type) {
                            case '1':
                                //全场折扣
                                $('#discount1').numberbox('setValue',out.rule*10);
                                break;
                            case '2':
                                //第二杯N折
                                $('#discount2').numberbox('setValue',out.rule*10);
                                break;
                            case '3':
                                $('#discount3').numberbox('setValue',out.rule*10);
                                break;
                            default:
                                break;
                        }
                        if(out.goods_id!=0){
                            $('#goods').radiobutton('check');
                        }
                        $('#activity-dialog').dialog('open');
                    },
                    error: function (out) {
                        $.messager.alert('', out.text);
                    }
                })
            },
            toolbar: [{
                iconCls: 'icon-add',
                text: '<%= trans.common.add %>',
                handler: function () {
                    activityId = null;
                    $('#activity-form').form('reset');
                    $('#activity-dialog').dialog('open');
                }
            }, '-', {
                iconCls: 'icon-remove',
                text: '<%= trans.common.del %>',
                handler: function () {
                    let rows = $('#activity-list').datagrid('getSelections');
                    if (rows.length < 1) {
                        $.messager.alert('', '<%= trans.common.selectOne %>');
                    } else {
                        $.messager.confirm("<%= trans.common.confirm %>", "<%= trans.common.confirmQ %>", function (isDelete) {
                            if (isDelete) {
                                let array = '';
                                for (let i = 0; i < rows.length; i++) {
                                    array += rows[i].id +',';
                                }
                                delCoupon(array.substring(0,array.length-1));
                            }
                        })
                    }
                }
            }, '-', {
                iconCls: 'icon-ok',
                text: '一键送审',
                handler: function () {
                    let rows = $('#activity-list').datagrid('getSelections');
                    if (rows.length < 1) {
                        $.messager.alert('', '<%= trans.common.selectOne %>');
                    } else {
                        $.messager.confirm("<%= trans.common.confirm %>", "确认一键送审", function (couponall) {
                            if (couponall) {
                                let array1 = '';
                                for (let i = 0; i < rows.length; i++) {
                                    array1 += rows[i].id +',';
                                }
                                sendactivityall(array1.substring(0,array1.length-1));
                            }
                        })
                    }
                }
            }
            ]
        });

    }

    $(document).ready(function () {
        $('#tableActivity').css('width', $(window).width() - 15)
        $('#tableActivity').css('height', $(window).height() - 51)
        init();

    });



    function saveActivity() {
        let url = '/mall/activity/add';
        if (activityId) {
            url = '/mall/activity/mod';
        }
        $('#activity-form').form('submit', {
            url: url,
            onSubmit: function (param) {
                let pass = $('#activity-form').form('validate');
                if (!pass) {
                    return false;
                }

                param.activityId = activityId;
                let json = $('#activity-form').serializeArray();
                $.each(json, function(i, field){
                    // $("#results").append(field.name + ":" + field.value + " ");
                    if(field.name=='type'){ //活动类型
                        switch (field.value) {
                            case '1':
                                param.rule = $('#discount1').numberbox('getValue')/10;
                                break;
                            case '2':
                                param.rule = $('#discount2').numberbox('getValue')/10;
                                break;
                            case '3':
                                param.rule = $('#discount3').numberbox('getValue')/10;
                                break;
                            default:
                                break;
                        }
                    }else if(field.name=='goods_id'){ //可用商品
                        if(field.value==0){ //全部商品
                            param.goodsArr = 0;
                        }else if(field.value==1){ //部分商品
                            let rows = $('#goods-list').datagrid('getSelections');
                            if(rows.length==0){
                                $.messager.alert('','请选择商品');
                                return false;
                            }else {
                                let ids = '';
                                for (let i = 0; i < rows.length; i++) {
                                    ids+=rows[i].id+',';
                                }
                                param.goodsArr = ids.substring(0,ids.length-1);
                            }
                        }
                    }
                });
            },
            success: function (data) {
                data = JSON.parse(data);
                if (data.code == 1) {
                    $.messager.alert('', 'success', 'info', function () {
                        $('#activity-dialog').dialog('close');
                        $('#activity-list').datagrid('reload');
                    })
                } else {
                    $.messager.alert('', data.text);
                    $('#activity-list').datagrid('reload');
                }
            }
        });
    }

    //显示弹窗
    function showGoodsDialog() {
        $('#goods-list').datagrid('uncheckAll');
        if(goodsId!=null && goodsId!=0 && $('#goods').radiobutton('options').checked){
            let ids = goodsId.split(',');
            for (let i = 0; i < ids.length; i++) {
                let rowIndex = $('#goods-list').datagrid('getRowIndex',ids[i]);
                $('#goods-list').datagrid('checkRow',rowIndex);
            }
        }
        $('#goods-dialog').dialog('open');
    }

</script>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值