webpackJsonp([52],[
/* 0 */
/***/ function(module, exports, __webpack_require__) {

	//yoho币
	'use strict';
	var $ = __webpack_require__(1),
	    common=__webpack_require__(2);

	var pricePercent = 0.2;  //yoho币审核比例线
	var loadModal = null;
	var importYohoCoinData = null;
	var ENUM = {
	    gender: {
	        1: '男',
	        2: '女',
	        3: '通用'
	    },
	    status: {
	        0: '未设置',
	        1: '<b style="color:#428bca">待审核</b>',
	        2: '<b style="color:#5cb85c">通过</b>',
	        3: '<b style="color:#ff0000">驳回</b>'
	    },
	    auditor: {
	        2965: 'Tracy',
	        10235: 'David Wong'
	    }
	}



	new common.dropDown({
	    el: '#shop',
	    ajax: 'shopsRest'
	});
	new common.dropDown({
	    el: '#brand',
	    ajax: 'brand',
	    params:function(){
	        return{userLimitFlag:true};
	    }
	});
	new common.dropDown({
	    el: '#supplier',
	    ajax: 'querySupplier'
	});

	//多级菜单
	var tabTree = new common.tabTree("#sortTree", {status: 1, sortLevel: 1});
	tabTree.init();

	//grid列表生成
	var g = new common.grid({
	    el: "#yohoCoin_table",
	    usepagesize:true,
	    parms: function() {
	        var select = tabTree.getAddress();
	        return {
	            productSkn: common.util.__input("skn"),
	            shopId: common.util.__input("shop"),
	            brandId: common.util.__input("brand"),
	            supplierId: common.util.__input("supplier"),
	            gender: common.util.__input("gender"),
	            auditStatus: common.util.__input("auditStatus"),
	            maxSortId: select[0] ? select[0].id : "",
	            middleSortId: select[1] ? select[1].id : "",
	            smallSortId: select[2] ? select[2].id : "",
	            sortId: select[3] ? select[3].id : "",
	            returnCoinMoney: common.util.__input("returnMoney")
	        };
	    },
	    columns: [
	        {display: '', type: 'checkbox'},
	        {display: '', render: function(item){
	            var html = "";
	            if(item.__index == 0){
	                $("#yohoCoin_table").find("thead tr th").eq(1).html($("#coinListHead").html());
	            }
	            item.genderName = ENUM.gender[item.gender];
	            item.statusName = ENUM.status[item.productPrice.coinStatus];
	            if(item.productPrice.auditorId){item.auditorName = ENUM.auditor[item.productPrice.auditorId];}
	            if(item.productPrice.auditDt){item.updateTime = getTime(item.productPrice.auditDt);}

	            html += common.util.__template2($("#coinList").html(),item);
	            return html;
	        }
	    }],
	    complete:function(){
	        new common.dropDown({
	            el: ".editor-auditor",
	            ajax: 'userProfileByRole',
	            params:function(){
	                return{roleId:20}
	            }
	        });
	    }
	}
	);
	g.init("/good/yohoCoin/queryPageList");

	//批量上传
	ajaxUpload();

	/**********************接口*************************/

	//保存接口
	function ajaxSave(productSkn, yohoCoin, auditorId, salesPrice){
	    common.util.__ajax({
	        url:'/good/yohoCoin/set',
	        data: {
	            "productSkn": productSkn,
	            "returnCoinMoney": yohoCoin,
	            "salesPrice": salesPrice,
	            "auditorId": auditorId
	        }
	    },function(rs){
	        freshYohoCoinRowData(rs.data, yohoCoin);
	    });
	}

	//批量导入接口
	function ajaxUpload(){
	    common.edit.ajaxfileupload('#yohoCoinUpload',{
	        params: {
	            type: "yohoCoin",
	            __type: "batch-import"
	        },
	        onStart: function() {
	            loadModal = common.dialog.load();
	            clearImportResult();
	        },
	        onComplete: function(response) {
	            console.log("批量接口返回数据",response);
	            if (response.code == 200 && response.data.successList) {
	                loadingClose();
	                showImportMessage("批量导入成功!", "success");
	                common.util.__tip("批量导入成功!", 'success');
	                //显示导入列表数据
	                showImportTable(response.data);
	                return true;
	            }
	            else if(response.code == 200 && response.data.failFileReason){
	                loadingClose();
	                showImportMessage(response.data.failFileReason.join('<br/>'), "error");
	                common.util.__tip("上传出错!具体请看批量上传结果。", 'warning');
	                return false;
	            }
	            else{
	                loadingClose();
	                showImportMessage(response.message, "error");
	                common.util.__tip(response.message);
	            }
	        }
	    });
	}

	//批量上传确认
	function ajaxUploadSubmit(importAuditorId){
	    common.util.__ajax({
	        url:'/good/yohoCoin/insertBatch',
	        data: {
	            auditorId: importAuditorId,
	            productPrices: JSON.stringify(importYohoCoinData)
	        }
	    },function(rs){
	        if(rs.code == 200){
	            common.util.__tip("批量导入保存成功!", "success");
	            setTimeout(function() {
	                location.href = '';
	            }, 1000);
	        }else{
	            common.util.__tip(rs.message || rs.data.message);
	        }
	    },true);
	}

	/**********************业务方法*************************/

	//显示批量导入结果
	function showImportMessage(message, statue){
	    $("#yohoCoinImportMessage").removeAttr("class").addClass(statue).show();
	    $("#detailMassage").html(message);
	}

	//显示批量导入数据表
	function showImportTable(data){
	    importYohoCoinData = data.successList;

	    $("#importResultTable").html(common.util.__template2($("#yohoCoinImportResultTable").html(),data));
	    $("#yohoCoinImportResultSet").show();
	    $("#yohoCoinImportResult").show();
	}

	//初始化批量导入结果及列表
	function clearImportResult(){
	    $("#detailMassage").empty();
	    $("#importResultTable").empty();
	    $("#importAuditor").val("");

	    $("#yohoCoinImportMessage").hide();
	    $("#yohoCoinImportResultSet").hide();
	    $("#yohoCoinImportResult").hide();
	}

	//批量导入确认—校验审核人
	function isNeedImportAuditor(){
	    for(var i=0; i < importYohoCoinData.length; i++){
	        if((importYohoCoinData[i].salesPrice * pricePercent) <= importYohoCoinData[i].needAuditCoin){
	            return true;
	        }
	    }
	    return false;
	}

	//吊牌价跟销售价校验
	function checkPrice(retailPrice, salesPrice, yohoCoin){
	    if(yohoCoin == 0){
	        return true;
	    }else{
	        if(retailPrice == salesPrice){
	            return true;
	        }else{
	            common.util.__tip("销售价与吊牌价不同,YOHO币只能为设置为0!");
	            return false;
	        }
	    }
	}

	//yoho币金额校验
	function checkYohoCoin(yohoCoin, auditor, price){
	    if(yohoCoin.val()){
	        if(!isNaN(yohoCoin.val())){
	            if(yohoCoin.val() < 0){
	                yohoCoin.focus().select().addClass("error");
	                common.util.__tip("YOHO币金额不能小于0!");
	                return false;
	            }
	            if(!/^\d+(\.\d{1,2})?$/g.test(yohoCoin.val())){
	                common.util.__tip("YOHO币的小数点最多只能2位!");
	                return false;
	            }
	            //yoho币大于等于销售额的20%需要校验审核人
	            if(yohoCoin.val() >= (price * pricePercent)){
	                return checkAuditor(auditor);
	            }
	        }else{
	            yohoCoin.focus().select().addClass("error");
	            common.util.__tip("YOHO币金额必须为数字!");
	            return false;
	        }
	    }else{
	        yohoCoin.focus().addClass("error");
	        common.util.__tip("YOHO币金额不能为空!");
	        return false;
	    }
	    return true;
	}

	//审核人校验
	function checkAuditor(auditor){
	    if(auditor.val() == ""){
	        auditor.focus().addClass("error");
	        common.util.__tip("审核人不能为空!");
	        return false;
	    }
	    return true;
	}

	//保存单行数据刷新
	function freshYohoCoinRowData(data, needAuditCoin){
	    var productSkn = data.productSkn;
	    var yohoCoin = data.returnCoinMoney;
	    var status = data.coinStatus;
	    var founderName = data.founderName;
	    var updateTime = getTime(data.auditDt);
	    var auditorId = data.auditorId;

	    var SknDom = $('._' + productSkn);
	    SknDom.find(".returnYohoCoin").text(yohoCoin);
	    SknDom.find(".coinStatus").html(ENUM.status[status]);

	    var OperatInfoHtml = "<p>操作人:"+ founderName +"</p>";
	    if(status == 1 && auditorId) OperatInfoHtml += "<p>审核金额:"+ needAuditCoin +"</p><p>审核人:"+ ENUM.auditor[auditorId] +"</p>";
	    OperatInfoHtml += "<div style='color: #999; font-size: 12px'>"+ updateTime + "</div>";
	    SknDom.find(".OperatInfo").html(OperatInfoHtml);

	    if(status == 1){
	        SknDom.find(".operation").empty();
	    }else{
	        SknDom.find(".operation").html("<button type='button' name='修改' class='btn btn-info btn-sm btn-modify'>修改</button>");
	    }
	    SknDom.find(".dataForEditor td").hide();
	}

	//找到以选中的商品的SKN
	function findCheckedSknList(){
	    var sknList = new Array();
	    var checkedItems = $("#yohoCoin_table").find(".wqt_checkbox:checked");
	    $.each(checkedItems, function(index,value){
	        var skn = $(value).parent().next().find(".dataForShow").data("skn");
	        sknList.push(skn);
	    });
	    return sknList;
	}

	//关闭loading
	function loadingClose(){
	    if (loadModal) {
	        loadModal.close();
	    }
	}

	//时间转换
	function getTime(time){
	    var t = new Date(time);
	    var formattedTime = common.util.__dateFormat(t, "yyyy-MM-dd hh:mm:ss");
	    return formattedTime;
	}

	/**********************事件*************************/

	//批量导入结果列表删除
	$(document).on('click', '.btn-delete-yohoCoin', function() {
	    var index = $(this).data("index");
	    if(importYohoCoinData){
	        [].splice.call(importYohoCoinData,index,1);
	        $("#importResultTable").html(common.util.__template2($("#yohoCoinImportResultTable").html(),{"successList":importYohoCoinData}));
	    }
	});

	//批量导入结果列表确定
	$(document).on('click', '.btn-submit-yohoCoin', function() {
	    var importAuditorIdInput = $("#importAuditor");
	    var isNeedAuditor = isNeedImportAuditor();
	    if(isNeedAuditor){
	        if(!checkAuditor(importAuditorIdInput)){
	            return false;
	        }
	    }
	    ajaxUploadSubmit(importAuditorIdInput.val());
	});

	//保存操作
	$(document).on('click', '.btn-save', function() {
	    var productSkn = $(this).data('productskn');
	    var sknDom = $('._' + productSkn);

	    var retailPrice = sknDom.find('.retailPrice').text();  //吊牌价
	    var salesPrice = sknDom.find('.salesPrice').text();  //销售价

	    var yohoCoinInput = sknDom.find('.editor-yohoCoin');
	    var auditorInput = sknDom.find('.editor-auditor');

	    if(checkYohoCoin(yohoCoinInput, auditorInput, salesPrice)){
	        if(checkPrice(retailPrice, salesPrice, yohoCoinInput.val())){
	            ajaxSave(productSkn, yohoCoinInput.val(), auditorInput.val(), salesPrice);
	        }
	    }
	});

	//显示修改
	$(document).on('click', '.btn-modify', function() {
	    if($(this).hasClass("openEditor")){
	        $(this).text($(this).attr("name")).removeClass("openEditor");
	        var dataForShow = $(this).parents(".dataForShow");
	        dataForShow.find(".dataForEditor td").hide();
	        dataForShow.find(".editor-yohoCoin").val(dataForShow.find(".returnYohoCoin").text());
	        dataForShow.find(".editor-auditor").val("");
	    }else{
	        $(this).text("收起").addClass("openEditor");
	        $(this).parents(".dataForShow").find(".dataForEditor td").show();
	    }
	});

	//查看驳回理由
	$(document).on('click', '.noCheckReason', function() {
	    var reason = $(this).data("text");
	    common.dialog.confirm("查看驳回理由", reason, function(){}, function(){});
	});

	//显示批量导入
	$(document).on('click', '#import-btn', function() {
	    $('#yohoCoin_table').hide();
	    $('#yohoCoinSearch').hide();
	    $('#yohoCoin_import').show();
	});

	//导出
	$(document).on('click', '#export-btn', function() {
	    var exportSknList = findCheckedSknList();
	    if(exportSknList.length > 0){
	        var exportSknListShow = "";
	        for(var i=0; i<exportSknList.length; i++){
	            exportSknListShow += "<span style='margin-right: 10px; font-weight: bold; color: #5cb85c; display: inline-block'>"+ exportSknList[i] +"</span>"
	        }
	        common.dialog.confirm(
	            "批量导出确认",
	            "<div><p>请确认&nbsp;&nbsp;<b style='color:#428bca'>导出</b>&nbsp;&nbsp;SKN为:</p><p>"+ exportSknListShow +"</p></div>",
	            function(){
	                window.open("/ajax/down?queryConf=" + exportSknList.join("|") + "&type=yohoCoin");
	            },
	            function(){}
	        );
	    }else{
	        common.util.__tip("没有选择任何商品!");
	    }
	});

	//返回列表
	$(document).on('click', '#return-btn', function() {
	    $('#yohoCoin_import').hide();
	    $('#yohoCoinSearch').show();
	    $('#yohoCoin_table').show();
	});


	//校验反币金额2位小数
	var isReturnMoneyOk = true;
	$(document).on('change', '#returnMoney', function() {
	    if(!/^-?\d+\.?\d{0,2}$/.test(this.value)){
	        isReturnMoneyOk = false;
	    }else{
	        isReturnMoneyOk = true;
	    }
	});

	//筛选
	$(document).on('click', '#filter-btn', function() {
	    if(isReturnMoneyOk){
	        g.reload(1);
	    }else{
	        common.util.__tip("【反币金额】请输入最多2位小数的数字!");
	    }
	});

	//全部
	$(document).on('click', '#all-btn', function() {
	    location.href = '';
	});

	//校验失败编辑
	$(document).on('change', '.error', function() {
	    $(this).removeClass('error');
	});

/***/ }
]);