product.productBundle.Edit.js 8.32 KB
webpackJsonp([140],[
/* 0 */
/***/ function(module, exports, __webpack_require__) {

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

	var dropDown = new common.dropDown({
	    el: '#shop',
	    ajax: 'shopsRest'
	});

	var e = new common.edit('#editor-group');

	e.on("validate", function () {

	    var discount = $("#discount").val();

	    if (!/^1|0\.[0-9]{0,2}$/.test(discount) || discount >= 1.0 || discount <= 0.0) {
	        return "折扣格式不正确";
	    }

	    var skns = '';

	    var iptSkns = $("input[name='productSkn']");

	    for (var i = 0, l = iptSkns.length; i < l; i++) {
	        var $thiz = $(iptSkns[i]);
	        var skn = $.trim($thiz.val());
	        if (/^[1-9][0-9]{4,10}$/.test(skn)) {
	            skns = skns + skn + ",";
	        } else if(skn.length != 0) {
	            return "第 " + (i + 1) + " 个 SKN 格式错误";
	        }
	    }

	    /*var lio = skns.lastIndexOf(",");

	    if (lio == -1) {
	        return "请填写商品 SKN";
	    }*/

	    // $("#productSkn").val(skns.substring(0, lio));

	});

	e.init();

	if($("#id").val()){
	    var sknArray = $("#productSkn").val().split(",");
	    var shopName = $("#shopName").val();
	    $.each(sknArray,function(index,item){
	        $($("#budle-table").find("input[name='productSkn']")[index]).val(item);
	    })
	    $("#budle-table").find("input[name='bundleDiscount']").val($("#edit-discount").val());    

	    $("#shopLable").text(shopName);
	    $("#discount, input[name=bundleDiscount], #shop").attr('disabled', 'disabled');
	}


	// submit
	$('#add-btn').click(function(option) {

	    var bundleName = $("#bundleName").val();

	    if (bundleName == '') {
	        common.util.__tip('套餐名称必填', 'warning');
	        return false;
	    }

	    var startTime = toSeconds($("#beginTimeStr").val());
	    var endTime = toSeconds($("#endTimeStr").val());

	    if (!startTime || !endTime || startTime == '' || endTime == '') {
	        common.util.__tip('套餐有效时间必填', 'warning');
	        return false;
	    }

	    var flag = true;
	        // 判断每一行内的skn不能重复
	    $('#budle-table').find('tr').each(function(){
	        var sknArr = new Array();
	        $(this).find('input[name=productSkn]').each(function(index){
	            if ($(this).val() != '') {
	                sknArr.push($(this).val());

	                if (parseInt($(this).val()) != $(this).val()) {
	                    common.util.__tip('不合法的SKN为' + $(this).val(), 'warning');
	                    flag = false;
	                    return;
	                }
	            }
	        })
	        
	        var s = sknArr.join(",")+","; 
	        for(var i=0;i<sknArr.length;i++) { 
	            if(s.replace(sknArr[i]+",","").indexOf(sknArr[i]+",")>-1) { 
	                common.util.__tip('重复的SKN为' + sknArr[i], 'warning');
	                flag = false;
	                break;
	            } 
	        } 
	    });

	    if (!flag) {
	        return false;
	    }

	    var shopId = $("#shopId").val();
	    var id = $("#id").val();
	    

	    var bundleArray = [];
	    $("#budle-table").find("tr").each(function(){
	        var bundle = {}; 
	        var sknList = [];   
	        $(this).find("input[name='productSkn']").each(function(){
	            if ($(this).val() && $(this).val()!= '') {
	                sknList.push($(this).val());
	            }
	        });
	        bundle.productSkn = sknList.join(",");
	        bundle.discount = $(this).find("input[name='bundleDiscount']").val();
	        bundle.bundleName=bundleName;
	        bundle.startTime=startTime;
	        bundle.endTime=endTime;
	        bundle.shopId=shopId;
	        bundle.id=id;
	        bundleArray.push(bundle);
	    })
	    $.ajax({
	        type: 'POST',
	        dataType: 'json',
	        url: '/product/bundle/save',
	        data: {"boListStr":JSON.stringify(bundleArray)},
	        success: function (rs) {            
	            var data = rs;
	            // $('.historyDetail').html($(common.util.__template2($("#template2").html(), data.data)));
	           
	            if(data.code == 200){
	                common.util.__tip(data.message, 'success');
	                history.go(-1)
	            }else{
	                var msg = data.message;
	                if (msg.indexOf(',') == -1) {
	                    common.util.__tip(msg, 'warning');
	                } else {
	                    msg = msg.substring(1, msg.length - 1);
	                    common.util.__tip(msg.replace(/,/g, '<br/>').replace(/=/g, ' : '), 'warning');
	                }
	                
	            }
	        },
	        error: function (rs) {
	            // $('.historyDetail').html($(common.util.__template2($("#template2").html(), {})));
	            common.util.__tip(rs.message, 'danger');
	        }
	    });



	    /*e.submit($('#add-form').attr('action'), function(option) {

	        var data = option.data;

	        // convert date
	        data.startTime = toSeconds(data.beginTimeStr);
	        data.endTime = toSeconds(data.endTimeStr);

	        option.beforeSend = function() {
	            $('#add-btn').addClass('disabled');
	            console.log(data);
	            data.zw="123";
	            // analyzeBundleTable();
	        };

	        option.success = function(res) {
	            if (res.code == "200") {
	                e.$tip('提交成功', function() {
	                    location.href = "/product/bundle/index";
	                }, 'growl-success');
	            } else {
	                $('#add-btn').removeClass('disabled');
	                e.$tip(res.message);
	            }

	            return false;
	        }
	        option.error = function(res) {
	            e.$tip("提交失败");
	        };
	    });*/
	});


	$(".btn-up").click(function() {
	    var tr = $(this).parents("tr");
	    var ipt = tr.find("input[name='productSkn']");
	    var prev = tr.prev().find("input[name='productSkn']");
	    var val = ipt.val();
	    ipt.val(prev.val());
	    prev.val(val);
	});

	$(".btn-down").click(function() {
	    var tr = $(this).parents("tr");
	    var ipt = tr.find("input[name='productSkn']");
	    var next = tr.next().find("input[name='productSkn']");
	    var val = ipt.val();
	    ipt.val(next.val());
	    next.val(val);
	});

	function toSeconds(strDate) {
	    var seconds = new Date(strDate).getTime() / 1000;
	    return seconds;
	}



	$(".add-bundle-btn").click(function() {
	    
	    var bundleHtml = "";
	    bundleHtml += "<tr>";
	    bundleHtml += "<td>";
	    bundleHtml += "<input  type=\"text\" name=\"productSkn\" value=\"\" style=\"margin-left:5px;width:23%\"><input name=\"productSkn\" type=\"text\" value=\"\" style=\"margin-left:9px;width:23%\">";
	    bundleHtml += "<input  type=\"text\" name=\"productSkn\" value=\"\" style=\"margin-left:9px;width:23%\"><input name=\"productSkn\" type=\"text\" value=\"\" style=\"margin-left:9px;width:23%\"></td>";
	    bundleHtml += "<td align=\"center\"><input type=\"text\"  name=\"bundleDiscount\" placeholder=\"折扣\" class=\"form-control\" required maxlength=\"10\" value=\"0.95\" style=\"width:40%;padding:4px;\">";
	    bundleHtml += "</td><td align=\"center\"><input class=\"btn btn-danger delete-bundle-btn\" type=\"button\" value=\"删除\" style=\"margin:5px\"></input>";
	    bundleHtml += "</td></tr> ";
	    $("#budle-table").append(bundleHtml);
	    $(".delete-bundle-btn").click(function() {    
	        $(this).parent().parent().remove(); 
	    });

	});



	$("#shop").change(function(){
	    // console.log(dropDown.getValue().text);
	    $("#shopId").val(dropDown.getValue().id);    
	    $("#shopLable").text(dropDown.getValue().text);
	})

	$("#discount").blur(function(){
	    
	    var discount = $("#discount").val();
	    if (!/^1|0\.[0-9]{0,2}$/.test(discount) || discount >= 1.0 || discount <= 0.0) {
	        common.util.__tip("折扣格式不正确", 'warning');
	        return;
	    }

	    $("input[name='bundleDiscount']").each(function(){
	        $(this).val($("#discount").val());
	    })
	})


	// function analyzeBundleTable(){

	//     $("#budle-table").find("tr").each(function(){

	//     })
	// }



	//新版本控制
	//$("#basicInfo").html(common.util.__template2($("#template2").html(),RESPONSEDATA));

	// bundleTemplate


	/*[
	    {"bundleDiscount":12,"bundleConfig":[{"skn":1234,"discount":0.9},{"skn":1234,"discount":"0.8"}]}
	]*/

	/*var bundleTemplateData = [];
	*/

/***/ }
]);