/*
 * 账单推送
 * 2018-4-17 by liufang
 */

$(function() {
	var tpl = {
		"tbody": '<% for(var i=0;i<list.length;i++){%>\
				<tr>\
					<td><%= i+1 %></td>\
					<td><%= list[i].buildName %></td>\
					<td><%= list[i].roomNames %></td>\
					<td><%= list[i].virName %></td>\
					<td><%= list[i].userName %></td>\
					<td><%= list[i].mobile %></td>\
					<td><%= list[i].email %></td>\
					<td><%= list[i].amount %></td>\
				</tr>\
			 <% } %>'
	};
	var templateList = [];
	var layer;
	layui.use('layer', function(){
		   layer = layui.layer;  
	});
	var billPush = {
		init: function(){
			this.render();
			this.bindEvent();
		},
		render: function(){
			var _this = this;
//			$(".send-btn").attr("disabled",false)
			//导入菜单
			$(".export-file").on("change",function(){
				var fileName = $(this)[0].files[0].name;
				$(".export-file-text").val(fileName);
			});
			//点击上传
			$(".export-file-wp").on("click",function(){
				var fileName=$(".export-file").val();
				var extension=fileName.substring(fileName.lastIndexOf(".")+1,fileName.length);
				if(extension=="xlsx" || extension=="xls"){
					if(fileName == null || fileName == ""){
						layer.alert("数据导入为空,请按照模板填写资料后再导入!");
						return;
					}
					 $.ajaxFileUpload
			         (
			             {
			                 url: $("#contextPath").val()+ "/admin/push/confirmImportPushBill", //用于文件上传的服务器端请求地址
			                 secureuri: false, //是否需要安全协议，一般设置为false
			                 fileElementId: 'excelFile', //文件上传域的ID
			                 dataType: 'json', //返回值类型 一般设置为json
			                 success: function (data, status)  //服务器成功响应处理函数
			                 {
			                	 $(".export-file").on("change",function(){
			         				var fileName = $(this)[0].files[0].name;
			         				$(".export-file-text").val(fileName);
			         			});
			                     if (data.code == '200') {
			                    	if(!data.msg){
			                    		layer.alert(data.msg);
			                    	}else{
			                    		templateList = data.data;
			                    		_this.renderTemplate(data.data);
			                    	}
			                     } else {
			                    	 layer.alert(data.msg);
			                    	 
			                     }
			                 }
			             }
			         )		
				}
				else{
					layer.alert("请上传xlsx或者xls格式的文件");
				}
			});
			
			$(".radio-wp").on("click",function(){
				$("#by-date").val("");
			})	
			
		},
		bindEvent: function(){
			var _this = this;
			//计费区间
			layui.use('laydate', function(){
				  var laydate = layui.laydate;
				  
				  //执行一个laydate实例
				  laydate.render({
				    elem: '#startTime' //指定元素
			    	
				  });
				  laydate.render({
					    elem: '#endTime' //指定元素
				   
					  });
				});
//			laydate({
//	            elem: document.getElementById('startTime'),
//				
//	        });
//			 laydate({
//		            elem: document.getElementById('endTime'),				
//		            
//		        });
			//下载模板
			$(".down-btn").on("click",function(){
				location.href=$("#contextPath").val()+"/upload/PushBill.xlsx";
			});
			//点击发送
			$(".send-btn").on("click",function(){
				if(templateList.length>0){
					_this.sendBill();
				}else{
					layer.alert('请先导入文件')
				}
				
			})
		},
		/**
		 * 上传之后渲染模板
		 * @param list
		 */
		renderTemplate: function(list){
			var $wp = $(".table-wrapper tbody");
			$wp.html(template.render(tpl.tbody)({list: list}));
			this.fnCheck("#checkAll","input[name='chkBtn']");
			
		},
		/**
		 * checkbox 的全选
		 * @param selector
		 * @param container
		*/
		fnCheck: function(selector,container){
			 $(selector).click(function(){
			        var stats = $(this).prop('checked') || false;
			        $(container).each(function(idx,item){
			            $(item).prop('checked',stats);
			        });
			    });
			    
			    $(container).click(function(){
			     var chklen = $(container).filter(function(idx,el){
				     if($(el).prop('checked')){
				    	 return el;
				     }
			     }).length;
				var chkStats = $(container).length === chklen;
			 		$(selector).prop('checked',chkStats);
			    });
		},
		//发送
		sendBill: function(){
			var _this = this;
			var billType =  $(".radio-wp input:checked").data("type");
//			if(!$("#by-date").val()){
//				layer.alert("请选择账单截止时间");
//				return false;
//			};
			var orgId=$("#orgId").val();
			//账单月份
			var monthDate = $(".bill-month").val();
			if(!monthDate){
				layer.alert("请选择月份");
				return false;
			};
			//计费开始时间
			var beginTime = $("#startTime").val();
			if(!beginTime){
				layer.alert("请选择计费开始时间");
				return false;
			};
			//计费结束时间
			var endTime = $("#endTime").val();
			if(!endTime){
				layer.alert("请选择计费结束时间");
				return false;
			};
			$(".send-btn").attr("disabled",true)
//			var billUpDate = $("#by-date").val();
			var dat={
					   objList: templateList,
					   billType: billType,
					   monthDate: monthDate,
					   beginTime:beginTime,
					   endTime: endTime,
					   orgId:orgId
				   };
			 $.ajax({
				   type: "post",
				   url: $("#contextPath").val()+ "/admin/push/sendPushBill", 
				   contentType: "application/json",  
			       dataType : 'text',  
				   data:JSON.stringify(dat),
				   success: function(data){
					   var data = JSON.parse(data);debugger
					   if(data.result == 'success'){
						   templateList = [];
						   $(".export-file-text").val("");
						   _this.renderTemplate([])
						   layer.msg("发送成功")
					   }else{
						   layer.msg("发送失败")
					   } 
					   $(".send-btn").attr("disabled",false)
				   },
				   error: function(){   
					   $(".send-btn").attr("disabled",false)
				   }
			   });
		}
		
	};
	billPush.init();

});
