limit.js 7.99 KB
/*
 *@time: 2016/2/4
 *@author: chenglong
 */


var $ = require('jquery'),
    common = require('../common/common');

var baseNum = 1;

var ENUM = {
    status: {
        0: '待审核',
        1: '审核通过',
        2: '驳回',
        3: '过期',
        4: '作废'
    }, //全部
    tips: {
        "salenum": 0,
        "notsalenum": 0,
        "hotnum": 0,
        "nothotnum": 0,
        "all": 0
    }
}
var t = new common.tab({
    el: "#basicTab",
    click: function() {
        tableGird.reload();
    },
    columns: [{
        name: "salenum",
        key: "saleFlag",
        value: "1",
        display: "已发售({salenum})"
    }, {
        name: "notsalenum",
        key: "saleFlag",
        value: "0",
        display: "未发售({notsalenum})"
    }, {
        name: "hotnum",
        key: "hotFlag",
        value: "1",
        display: "热门({hotnum})"
    }, {
        name: "nothotnum",
        key: "hotFlag",
        value: "0",
        display: "非热门({nothotnum})"
    }, {
        name: "all",
        display: "全部({all})"
    }]
}).init(ENUM.tips);



var tableGird = new common.grid({

    el: "#limit-table-box",
    parms: function() {
        var obj = {
            productName: common.util.__input("product-name"),
            productSkn: common.util.__input("skn"),
            hotFlag: $('input[name="hotFlag"]:checked').val(),
            saleFlag: $('input[name="saleFlag"]:checked').val(),
            showFlag: $('input[name="showFlag"]:checked').val()
        }
        if (t.key) {
            obj[t.key] = t.value;
        }

        return obj;
    },
    columns: [{
        display: "",
        type: 'checkbox'
    }, {
        display: "名称",
        name: "productName"
    }, {
        display: "限购商品code",
        name: "limitProductCode"
    }, {
        display: "排序",
        render: function(item) {
            return ('<input class="order-input width50" data-id="' + item.id + '" data-type="orderBy" type="text" value="' + item.orderBy + '"/>');
        }
    }, {
        display: "封面图",
        render: function(item) {
            return ('<img class="cover-img" src="' + item.attachUrl + '" />');
        }
    }, {
        display: "SKN",
        name: "productSkn",
        render: function(item) {
            return item.productSkn || '待定';
        }
    }, {
        display: "发售日期",
        name: "saleTimeStr",
        render: function(item) {
            if (item.dayFlag == 1) {
                return item.saleTimeStr;
            } else {
                return item.saleTimeStr.slice(0, 7);
            }
        }
    }, {
        display: "是否发售",
        name: "saleFlag",
        render: function(item) {
            if (item.saleFlag == 1) {
                return '是';
            } else {
                return '否';
            }
        }
    }, {
        display: "是否热门",
        name: "hotFlag",
        render: function(items) {

            if (items.hotFlag) {
                return '是';
            } else {
                return '否';
            }
        }
    }, {
        display: "是否开启",
        name: "showFlag",
        render: function(items) {
            if (items.showFlag) {
                return '是';

            } else {
                return '否';
            }
        }
    }, {
        display: "操作",
        render: function(items) {
            var HtmArr = [];
            if (items.showFlag) {
                HtmArr.push('<a href="javascript:;" data-id="' + items.id + '" class="btn btn-info btn-xs close-btn">关闭</a>');
            } else {
                HtmArr.push('<a href="javascript:;" data-id="' + items.id + '" class="btn btn-info btn-xs open-btn">开启</a>');
            }

            if (items.hotFlag) {
                HtmArr.push('<a href="javascript:;" data-id="' + items.id + '" class="btn btn-warning btn-xs hot-cancel">取消热门</a>');
            } else {
                HtmArr.push('<a href="javascript:;" data-id="' + items.id + '" class="btn btn-warning btn-xs hot-btn">设为热门</a>');
            }
            HtmArr.push('<a href="/limit/edit/' + items.id + '" data-id="' + items.id + '" class="btn btn-info btn-xs">编辑</a>');
            HtmArr.push('<a href="javascript:;" data-id="' + items.id + '" class="btn btn-danger btn-xs delete-btn">删除</a>');
            return HtmArr.join('');
        }
    }]
});

tableGird.init('/limitProduct/getLimitProductList');

var loadtab = function() {
    t.active = undefined;
    setTimeout(function() {
        common.util.__ajax({
            url: '/limitProduct/getCountByStatus',
            data: tableGird.options.parms()

        }, function(res) {
            for (var key in res.data) {
                ENUM.tips[key] = res.data[key];
            }
            t.init(ENUM.tips);
        }, true);
    }, 400);
}

loadtab();

//筛选
$("#filter-btn").click(function() {
    loadtab();
    tableGird.reload(1);
});

//导出
$('#export-btn').on('click', function() {
    var selectedArr = tableGird.selected,
        len = selectedArr.length,
        queryConf = '';
    if (len <= 0) {
        common.util.__tip('请选择要导出的商品', 'warning');
        return;
    }
    $.each(selectedArr, function(i, value) {
        queryConf += value['limitProductCode'];
        if (i < len - 1) {
            queryConf += '|';
        }
    });
    window.open("/ajax/down?queryConf=" + queryConf + "&type=limitProductReminder");
    // common.util.__ajax({
    //     url: '/ajax/down',
    //     type:'GET',
    //     data: {
    //         queryConf: '2016022517335568',
    //         type: 'limitProductReminder'
    //     }
    // }, function(res) {
    //     console.log(res);
    // })
});

//开启商品
$('#limit-table-box').on('click', '.open-btn', function() {
    var param = {
        id: $(this).data('id'),
        showFlag: '1'
    }
    common.util.__ajax({
        url: '/limitProduct/auditLimitProduct',
        data: param

    }, function(res) {
        tableGird.reload();
    });
});

//关闭商品
$('#limit-table-box').on('click', '.close-btn', function() {
    var param = {
        id: $(this).data('id'),
        showFlag: '0'
    }
    common.util.__ajax({
        url: '/limitProduct/auditLimitProduct',
        data: param

    }, function(res) {
        tableGird.reload();
    });
});

//设为热门
$('#limit-table-box').on('click', '.hot-btn', function() {
    var param = {
        id: $(this).data('id'),
        hotFlag: 1
    }
    common.util.__ajax({
        url: '/limitProduct/auditLimitProduct',
        data: param

    }, function(res) {
        tableGird.reload();
    });
});

//取消热门
$('#limit-table-box').on('click', '.hot-cancel', function() {
    var param = {
        id: $(this).data('id'),
        hotFlag: 0
    }
    common.util.__ajax({
        url: '/limitProduct/auditLimitProduct',
        data: param

    }, function(res) {
        tableGird.reload();
    });
});

//删除商品
$('#limit-table-box').on('click', '.delete-btn', function() {
    var param = {
            id: $(this).data('id')
        }
        /*common.util.__ajax({
            url:'/limit/delete',
            data:param

        },function(res){
            tableGird.reload();
        });*/

    common.dialog.confirm("温馨提示", "你确定要删除吗?", function() {
        common.util.__ajax({
            url: '/limit/delete',
            data: param
        }, function() {
            tableGird.reload();
        });
    });
});

//热门排序,未发售排序修改
$('#limit-table-box').on('change', '.order-input', function() {
    var goodsId = $(this).data('id'),
        type = $(this).data('type'),
        param = {
            id: goodsId
        };
    if (!/^(?:[1-9][0-9]*|0)$/.test($(this).val())) {
        common.util.__tip('排序只能为非负数', 'warning');
        return;
    } else {
        param[type] = $(this).val();
    }


    common.util.__ajax({
        url: '/limitProduct/auditLimitProduct',
        data: param
    }, function(res) {
        console.log(res);
    });
});