<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<!--<head th:replace="common/common_header :: common_header"></head>-->

<head>
    <meta charset="UTF-8">
    <title>后台管理系统</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <link rel="shortcut icon" th:href="@{/images/logo.jpg}"/>
    <link rel="stylesheet" th:href="@{/js/layui/css/layui.css}">
    <link rel="stylesheet" th:href="@{/js/layui/css/admin.css}">
    <script type="text/javascript" th:src="@{/js/jquery-3.3.1.min.js}"></script>
    <script th:src="@{/js/layui/layui.js}" charset="utf-8"></script>
    <style type="text/css">
        img {
            height: 25px;
        }
    </style>
</head>
<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">
                <!--                <input type="hidden" name="isLease" id="isLease" class="layui-input" th:value="${isLease}">-->
                <div class="layui-inline">
                    <div class="layui-input-block">
                        <input type="text" name="groupBuyCode" class="layui-input" placeholder="请输入活动编码">
                    </div>
                </div>
                <div class="layui-inline">
                    <div class="layui-input-block">
                        <input type="text" name="groupBuyTitle" class="layui-input" placeholder="请输入活动标题">
                    </div>
                </div>
                <!--<div class="layui-inline">-->
                <!--<label class="layui-form-label"><span style="color: red">*</span>分类</label>-->
                <!--<div class="layui-input-inline">-->
                <!--<select name="goodsClassPid" id="goodsClassPid" lay-filter="goodsClassPid" lay-search>-->
                <!--<option value="">全部</option>-->
                <!--<option th:each="list:${goodsClassList}" th:value="${list.goodsClassId}"-->
                <!--th:text="${list.goodsClassName }"></option>-->
                <!--</select>-->
                <!--</div>-->
                <!--</div>-->

                <!--                <div class="layui-inline">-->
                <!--                    <label class="layui-form-label">状态</label>-->
                <!--                    <div class="layui-input-block">-->
                <!--                        <select name="abolishState">-->
                <!--                            <option value="">全部</option>-->
                <!--                            <option value="0">在售</option>-->
                <!--                            <option value="1">已删除</option>-->
                <!--                        </select>-->
                <!--                    </div>-->
                <!--                </div>-->
                <div class="layui-inline">
                    <button class="layui-btn layuiadmin-button-btn" lay-submit lay-filter="The-search">
                        <i class="layui-icon layui-icon-search layuiadmin-button-btn">
                        </i>
                    </button>
                </div>
                <div class="layui-inline">
                    <button class="layui-btn layuiadmin-button-btn"
                            onclick="javascript:location.replace(location.href);">
                        <i class="layui-icon layui-icon-refresh-3 layuiadmin-button-btn">
                        </i>
                    </button>
                </div>
            </div>

        </div>

    </div>
    <div class="layui-card-body">
        <table class="layui-hide" id="tableId" lay-filter="tableId"></table>
    </div>
</div>
</div>
<script type="text/html" id="toolbarUtil">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn" lay-event="add">新增</button>
    </div>
</script>

<script type="text/html" id="table-handle">
    <i class="layui-icon layui-icon-edit" lay-event="edit" title="编辑"></i>
    <i class="layui-icon layui-icon-delete" lay-event="del" title="删除"></i>

<!--    {{#if (d.ishot == 0) { }}-->
<!--    <i class="layui-icon layui-icon-cart" lay-event="setTj" title="设为推荐"></i>-->
<!--    {{# }else if(d.ishot == 1){ }}-->
<!--    <i class="layui-icon layui-icon-form" lay-event="calTj" title="取消推荐"></i>-->
<!--    {{# } }}-->

<!--    {{#if (d.istatus == 3) { }}-->
<!--    <i class="layui-icon layui-icon-upload-circle" lay-event="setSj" title="上架"></i>-->
<!--    {{# }else if(d.istatus == 1){ }}-->
<!--    <i class="layui-icon layui-icon-download-circle" lay-event="setXj" title="下架"></i>-->
<!--    {{# } }}-->

</script>
<script type="text/html" id="sshortpic">
    {{#if (d.sshortpic !=null && d.sshortpic !='') { }}
    <img src="{{d.sshortpic }}">
    {{# }else if(d.sshortpic ==null || d.sshortpic ==''){ }}
    <span>无</span>
    {{# } }}
</script>

<script type="text/html" id="istatus">
    {{#if (d.istatus == 3) { }}
    <span>已下架</span>
    {{# }else if(d.istatus == 1){ }}
    <span>在售</span>
    {{# } }}
</script>

<script>

    var field;
    layui.use(['table', 'form'], function () {
        var form = layui.form, table = layui.table;
        //监听搜索
        form.on('submit(The-search)', function (data) {
            field = data.field;
            //执行重载
            table.reload('tableId', {
                where: field
                , page: {
                    curr: 1
                }
            });
        });
        table.render({
            elem: '#tableId'
            , url: 'findPageList'
            , where: field
            , method: 'post'
            , contentType: "application/json" // 内容编码, json格式
            , height: 500
            , toolbar: '#toolbarUtil' //开启头部工具栏,并为其绑定左侧模板
            , defaultToolbar: ['filter']
            , cellMinWidth: 20 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
            , skin: 'line ' //表格风格 line (行边框风格)row (列边框风格)nob (无边框风格)
            , even: true    //隔行换色
            , limit: 20 //每页默认显示的数量
            , page:true
            ,request: {
                pageName: "curpage", // 页码的参数名称,默认:page
                limitName: "pagesize" // 每页数据量的参数名,默认:limit
            }
            ,response: {
                statusName: "code", // 规定数据状态的字段名称,默认:code
                statusCode: 100, // 规定成功的状态码,默认:0
                msgName: "msg", // 规定状态信息的字段名称,默认:msg
                countName: "count", // 规定数据总数的字段名称,默认:count
                dataName: "data" // 规定数据列表的字段名称,默认:data
            }

            ,parseData: function(res) { // res 即为原始返回的数据
                return {
                    "code": res.code, // 解析接口状态
                    "msg": res.msg, // 解析提示文本
                    "count": res.data.pageinfo.totalRecords, // 解析数据长度
                    "data": res.data.items // 解析数据列表
                };
            }

            , limits: [10, 20, 50, 100]  //每页条数的选择项,默认:[10,20,30,40,50,60,70,80,90]。
            , cols: [
                [
                    {type: 'checkbox', field: 'id'}
                    , {field: 'id',  title: '编码'}
                    , {field: 'groupBuyTitle',  title: '活动标题'}
                    , {field: 'startAndEndTime',  title: '活动日期'}
                    ,
                    {
                        title: "状态",
                        width: 100,
                        templet: function(d) {

                            var str = "";
                            str += '<div>';
                            //订单状态
                            var status = "";
                            if (d.groupStatus == 2) status = "<span class='layui-badge layui-bg-green'>待生效</span>";
                            if (d.groupStatus == 3) status = "<span class='layui-badge layui-bg-orange'>生效中</span>";
                            if (d.groupStatus == 4) status = "<span class='layui-badge layui-bg-black'>已失效</span>";
                            str += ' <span>' + status + '</span>';
                            str += '</div>';
                            return str ? str : "";
                        }
                    }
                    // , {field: 'sicon', title: '图片', toolbar: '#sicon'}
                    , {field: '', width: 100, title: '操作', toolbar: '#table-handle', fixed: 'right'}
                ]
            ]
        });

        //头工具栏事件
        table.on('toolbar(tableId)', function (obj) {
            var checkStatus = table.checkStatus(obj.config.id);
            switch (obj.event) {
                case 'add':
                    var w = ($(window).width() * 0.9);
                    var h = ($(window).height() * 0.9);
                    layer.open({
                        type: 2
                        , title: '新增'
                        , content: 'addOrEdit'
                        , area: [w + 'px', h + 'px']
                        , fix: false //不固定
                        , maxmin: true
                        , shadeClose: true
                        , shade: 0.4
                        , btn: ['保存', '关闭']
                        , yes: function (index, layero) {
                            var body = layer.getChildFrame('body', index); //得到iframe页面层的BODY
                            var iframeBtn = body.find('#saveBtn');//得到iframe页面层的提交按钮
                            iframeBtn.click();//模拟iframe页面层的提交按钮点击
                        }
                    });
                    break;
                case 'del':
                    var data = checkStatus.data;
                    var id = '';
                    if (data.length > 0) {
                        for (var j = 0; j < data.length; j++) {
                            id = id + "," + data[j].goodsId;
                        }
                    } else {
                        layer.msg("请至少选择一条数据!");
                        return false;
                    }
                    layer.confirm('确定要彻底删除选中的数据吗?', function (index) {
                        $.ajax({
                            url: "changeDeleteState",
                            data: {"id": id},
                            type: "POST",
                            dataType: "json",
                            success: function (result) {
                                if (result.code == 100) {
                                    layer.msg(result.msg, {icon: 6, time: 1000}, function () {
                                        layer.close(index);
                                        table.reload('tableId');
                                    });
                                } else {
                                    layer.msg(result.msg, {icon: 5});
                                }
                            }
                        });
                    });
                    break;
            }
            ;
        });

        //监听行工具事件
        table.on('tool(tableId)', function (obj) {
            var data = obj.data;
            if (obj.event === 'del') {
                layer.confirm('删除后无法撤销,确定继续吗?', function (index) {
                    $.ajax({
                        url: ""+obj.data.id+"/deleteById",
                        type: "GET",
                        dataType: "json",
                        success: function (result) {
                            if (result.code == 100) {
                                layer.msg(result.msg, {icon: 6, time: 1000}, function () {
                                    table.reload('tableId');
                                });
                            } else {
                                layer.msg(result.msg, {icon: 5});
                            }
                        }
                    });
                });
            } else if (obj.event === 'edit') {
                var id = obj.data.id;
                var w = ($(window).width() * 0.9);
                var h = ($(window).height() * 0.9);
                layer.open({
                    type: 2
                    , title: '编辑产品'
                    , content: 'addOrEdit?id=' + id
                    , area: [w + 'px', h + 'px']
                    , fix: false //不固定
                    , maxmin: true
                    , shadeClose: true
                    , shade: 0.4
                    , btn: ['保存', '关闭']
                    , yes: function (index, layero) {
                        var body = layer.getChildFrame('body', index); //得到iframe页面层的BODY
                        var iframeBtn = body.find('#saveBtn');//得到iframe页面层的提交按钮
                        iframeBtn.click();//模拟iframe页面层的提交按钮点击
                    }
                });
            } else if (obj.event === 'spec') {
                var id = obj.data.id;
                var w = ($(window).width() * 0.9);
                var h = ($(window).height() * 0.9);
                layer.open({
                    type: 2
                    , title: '添加商品规格'
                    , content: 'toSpec?id=' + id
                    , area: [w + 'px', h + 'px']
                    , fix: false //不固定
                    , maxmin: true
                    , shadeClose: true
                    , shade: 0.4
                    , btn: ['保存', '关闭']
                    , yes: function (index, layero) {
                        var body = layer.getChildFrame('body', index); //得到iframe页面层的BODY
                        var iframeBtn = body.find('#saveBtn');//得到iframe页面层的提交按钮
                        iframeBtn.click();//模拟iframe页面层的提交按钮点击
                    }
                });
            } else if (obj.event === 'abolish1') {
                var data = 'abolishState=0&goodsId=' + obj.data.goodsId
                updateAbolishState(data);

            } else if (obj.event === 'abolish0') {
                var data = 'abolishState=1&goodsId=' + obj.data.goodsId
                updateAbolishState(data);
            }

            else if (obj.event === 'setTj') {
                layer.confirm('确定设为推荐吗?', function (index) {

                    var param = {};
                    param.id = obj.data.id;
                    param.ishot = 1;

                    $.ajax({
                        url: "update",
                        data: JSON.stringify(param),
                        type: "POST",
                        dataType: "json",
                        contentType: "application/json;charset=utf-8",
                        success: function (result) {
                            if (result.code == 100) {
                                layer.msg("设置成功", {icon: 6, time: 1000}, function () {
                                    table.reload('tableId');
                                });

                            } else {
                                layer.msg(result.msg, {icon: 5});
                            }
                        }
                    });
                });
            }else if (obj.event === 'calTj') {
                layer.confirm('确定设为推荐吗?', function (index) {

                    var param = {};
                    param.id = obj.data.id;
                    param.ishot = 0;

                    $.ajax({
                        url: "update",
                        data: JSON.stringify(param),
                        type: "POST",
                        dataType: "json",
                        contentType: "application/json;charset=utf-8",
                        success: function (result) {
                            if (result.code == 100) {
                                layer.msg("设置成功", {icon: 6, time: 1000}, function () {
                                    table.reload('tableId');
                                });

                            } else {
                                layer.msg(result.msg, {icon: 5});
                            }
                        }
                    });
                });
            }

            else if (obj.event === 'setXj') {
                layer.confirm('确定要下架吗?', function (index) {

                    var param = {};
                    param.id = obj.data.id;
                    param.istatus = 3;

                    $.ajax({
                        url: "update",
                        data: JSON.stringify(param),
                        type: "POST",
                        dataType: "json",
                        contentType: "application/json;charset=utf-8",
                        success: function (result) {
                            if (result.code == 100) {
                                layer.msg("下架成功", {icon: 6, time: 1000}, function () {
                                    table.reload('tableId');
                                });

                            } else {
                                layer.msg(result.msg, {icon: 5});
                            }
                        }
                    });
                });
            }else if (obj.event === 'setSj') {
                layer.confirm('确定要上架吗?', function (index) {

                    var param = {};
                    param.id = obj.data.id;
                    param.istatus = 1;

                    $.ajax({
                        url: "update",
                        data: JSON.stringify(param),
                        type: "POST",
                        dataType: "json",
                        contentType: "application/json;charset=utf-8",
                        success: function (result) {
                            if (result.code == 100) {
                                layer.msg("上架成功", {icon: 6, time: 1000}, function () {
                                    table.reload('tableId');
                                });

                            } else {
                                layer.msg(result.msg, {icon: 5});
                            }
                        }
                    });
                });
            }

        });

    });


    function updateAbolishState(data) {
        $.ajax({
            url: "changeAbolishState",
            data: data,
            type: "POST",
            dataType: "json",
            success: function (result) {
                if (result.code == 100) {
                    layer.msg(result.msg, {icon: 6, time: 1000}, function () {
                        location.replace(location.href)
                    });

                } else {
                    layer.msg(result.msg, {icon: 5});
                }
            }
        });
    }


</script>

</body>

</html>