<div class="container-fluid">
	<div class="page-header">
	  <ol class="breadcrumb">
	    <li class="breadcrumb-item"><a href="<%= root_path %>"><%= t("views.right_panel.button.home") %></a></li>
	    <li class="breadcrumb-item active"><%= t("views.right_panel.detail.receipt_no_report") %> Details</li>
	    <span class="float-right">
	      <%= link_to 'Back', dashboard_path %>
	    </span>
	  </ol>
	</div>
	<div class="row">
		<div class="col-md-12">
			<%= render :partial=>'shift_sale_report_filter',
			:locals=>{ 	:period_type => true, :shift_name => true,:payments => true, :report_path =>reports_receipt_no_detail_index_path} %>
			<hr />
			<div class="text-right">
				<a href="javascript:export_to('<%=reports_receipt_no_detail_index_path%>.xls')" class = "btn btn-info wave-effects"><%= t("views.btn.exp_to_excel") %></a>
			</div>

			<div class="margin-top-20 mbl-table">
				<div class="card mbl-table-card">
					<table class="table table-striped" border="0">
						<thead>
						  	<tr>
								<th colspan="7"> <%= t("views.right_panel.detail.from_date") %> : <%= @from.strftime("%Y-%b-%d") rescue '-' %>  - <%= t("views.right_panel.detail.to_date") %> : <%= @to.strftime("%Y-%b-%d")  rescue '-'%>
								</th>
							</tr>
							<% if @shift_from %>
								<tr>
									<% if @shift_data.employee %>
									<% cashier_name = !@shift_data.nil? ? @shift_data.employee.name : '-' %>
									<% end %>
									<th colspan="7"><%= t("views.right_panel.detail.shift_name") %> =  <%= @shift_from %> - <%= @shift_to %> ( <%= cashier_name %> )</th>
								</tr>
							<% end %>
								<tr>
				        	<th><b><%= t("views.right_panel.detail.receipt_no") %></b></th>
									<th><b><%= t("views.right_panel.detail.receipt_date") %></b></th>
									<th><b><%= t("views.right_panel.detail.shift_name") %></b></th>
									<th><b><%= t :cashier %></b></th>
									<th><b><%= t("views.right_panel.detail.table") %></b></th>
					        <th><b><%= t("views.right_panel.detail.revenue") %></b></th>
								<th>&nbsp;</th>
						    </tr>
						</thead>
						<tbody>
							<% grand_total = 0 %>
						    <% @sale_data.each do |result| %>
						    <% grand_total = grand_total + result.grand_total %>
								<tr style="border-top:4px double #666;">
									<td><%= result.receipt_no rescue '-' %> </td>
									<td><%=l result.receipt_date.getlocal, :format => :short rescue '-' %> </td>
									<td><%= @shift_from %> -  <%= @shift_to  %></td>
									<td><%= result.cashier_name rescue '-' %></td>
									<td><%= result.table_type %> -  <%= result.table_name  %></td>
				  		  	<td><%= number_format(result.grand_total, precision: precision, delimiter: delimiter) %></td>
									<!-- <td>&nbsp;</td> -->
								</tr>
								<tr>
									<th>&nbsp;</th>
									<th><b><%= t("views.right_panel.detail.product") %></b></th>
									<th><b><%= t("views.right_panel.detail.qty") %></b></th>
									<th><b><%= t("views.right_panel.detail.unit_price") %></b></th>
									<th colspan="2"><b><%= t("views.right_panel.detail.total_price") %></b></th>
								</tr>

								<% result.sale_items.each do |item|%>
									<tr>
										<td>&nbsp;</td>
										<td>
											<% if item.price < 0 %>
												<% if item.qty < 0 %>
													[PROMO QTY]<%= item.product_name rescue '-' %>
												<% else %>
													[PROMO PRICE]<%= item.product_name rescue '-' %>
												<% end %>
											<% else %>
												<%= item.product_name rescue '-' %>
											<% end %>
										</td>
										<td><%= item.qty rescue '-' %></td>
										<td><%= number_format(item.unit_price, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) rescue '-' %></td>
										<td colspan="2"><%= number_format(item.price, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) rescue '-' %></td>
									</tr>
								<% end %>

								<tr><td colspan="6">&nbsp;</td></tr>

								<%survey = result.survey%>
								<% if !survey.nil?%>
									<tr>
									    <td>&nbsp;</td>
									    <td>&nbsp;</td>
											<td>&nbsp;</td>
									    <td>No. of Guest</td>
									    <td><%= survey.total_customer rescue '-' %></td>
									    <td>&nbsp;</td>
									</tr>
								<% end %>

								<% if !result.total_amount.nil?%>
									<tr>
										<td>&nbsp;</td>
										<td>&nbsp;</td>
										<td>&nbsp;</td>
										<td><%= t("views.right_panel.detail.total") %> <%= t("views.right_panel.detail.amount") %></td>
										<td><%= number_format(result.total_amount, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) %></td>
										<td>&nbsp;</td>
									</tr>
								<% end %>

								<% if result.total_discount > 0 %>
									<tr>
										<td>&nbsp;</td>
										<td>&nbsp;</td>
										<td>&nbsp;</td>
										<td><%= t("views.right_panel.detail.total") %>
											<%= t("views.right_panel.detail.discount") %>
											<%= t("views.right_panel.detail.amount") %></td>
										<td> - <%= number_format(result.total_discount, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) %> </td>
										<td>&nbsp;</td>
									</tr>
								<% end %>

								<% if !result.total_tax.nil? %>
									<tr>
										<td>&nbsp;</td>
										<td>&nbsp;</td>
										<td>&nbsp;</td>
										<td>Tax Amount </td>
										<td><%= number_format(result.total_tax, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) %> </td>
										<td>&nbsp;</td>
									</tr>
								<% end %>
								<% sale_payments = result.sale_payments %>
								<% if sale_payments.length > 0%>
									<% sale_payments.each do |rec| %>
										<% if rec.payment_amount > 0 %>
											<tr>
												<td>&nbsp;</td>
												<td>&nbsp;</td>
												<td>&nbsp;</td>
												<td>Payment <%= rec.payment_method.upcase %> ( <%= rec.payment_status %> )</td>
												<td><%= number_format(rec.payment_amount, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) %></td>
												<td>&nbsp;</td>
											</tr>

											<% if !rec.payment_reference.nil? %>
												<tr>
													<td>&nbsp;</td>
													<td>&nbsp;</td>
													<td>&nbsp;</td>
													<td>Payment Ref.</td>
													<td><%= rec.payment_reference %></td>
													<td>&nbsp;</td>
												</tr>
											<% end %>
										<% end %>
									<% end %>
									<% if result.amount_changed != 0 %>
										<tr>
											<td>&nbsp;</td>
											<td>&nbsp;</td>
											<td>&nbsp;</td>
											<td><%= t("views.right_panel.detail.change") %> <%= t("views.right_panel.detail.amount") %></td>
											<td><%= number_format(result.amount_changed, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) %></td>
											<td>&nbsp;</td>
										</tr>
									<% end %>
									<% if !result.customer_id.nil?%>
										<tr>
											<td>&nbsp;</td>
											<td>&nbsp;</td>
											<td>&nbsp;</td>
											<td>Customer</td>
											<td><%= result.customer_name rescue '-'%>
													<% if result.customer_company.present? %>
											    (<%= result.customer_company rescue '-' %>)
													<% end %>
									    </td>
											<td>&nbsp;</td>
										</tr>
									<% end %>
									<tr><td colspan="6">&nbsp;</td></tr>
								<% end %>
						    <% end %>
							<tr style="border-top:4px double #666;">
								<td>&nbsp;</td>
								<td>&nbsp;</td>
								<td>&nbsp;</td>
								<td>&nbsp;</td>
								<td><b>Total Nett</b> - <b><%= number_format(grand_total, precision: precision, delimiter: delimiter, strip_insignificant_zeros: strip_insignificant_zeros) %></b></td>
								<td>&nbsp;</td>
							</tr>
						  </tbody>
						</table>
				</div>
			</div>
		</div>
	</div>
</div>
<script>
	$(function(){

		var check_arr = [];
		search_by_period();
		$('#sel_period').change(function(){

			search_by_period();

		});

		function search_by_period(){
			var period = $('#sel_period').val();
			var period_type = 0;
			var from = "";
			var to = "";

			show_shift_name(period,period_type,from,to,'shift_item');
		}

		// OK button is clicked
		$('#from').bootstrapMaterialDatePicker().on('beforeChange', function(e, date){
			new_date = new Date(date) ;
			month    = parseInt(new_date.getMonth()+1)
			from = new_date.getDate() + "-" + month + "-" + new_date.getFullYear();
			$('#from').val(from)
			search_by_date();
		});
		$('#to').bootstrapMaterialDatePicker().on('beforeChange', function(e, date){
			new_date = new Date(date) ;
			month    = parseInt(new_date.getMonth()+1)
			to = new_date.getDate() + "-" + month + "-" + new_date.getFullYear();
			$('#to').val(to)
			search_by_date();
		});

		function search_by_date(){

	  		from = $("#from").val();
	  		to   = $("#to").val();

			var period = 0;
			var period_type = 1;

			if(to != '' && from != ''){
				shift_name = from + ',' + to;

				check_arr.push(to);

				if(check_arr.length == 1){
					show_shift_name(period,period_type,from,to,'shift_item');
				}
				if(check_arr.length == 3){
					check_arr = [];
				}
			}

		}

		function show_shift_name(period,period_type,from,to,shift_item){
			var shift = $('#shift_name');

			shift.empty();

			var str = '';
			var param_shift = '';
			var param_shift = '<%= params[:shift_name] rescue '-'%>';
			if (from == '' && to == '') {
				from = $("#from").val();
	  		    to   = $("#to").val();
			}
			url = '<%= reports_get_shift_by_date_path %>';

			$.get(url, {period :period, period_type :period_type, from :from, to :to, report_type :shift_item} , function(data){

				str = '<option value="0">--- All Shift ---</option>';
				$(data.message).each(function(index){

					var local_date = data.message[index].local_opening_date + ' - ' + data.message[index].local_closing_date;
					var sh_date = data.message[index].opening_date + ' - ' + data.message[index].closing_date;
					var shift_id = data.message[index].shift_id ;
					if(param_shift != ''){
						if(shift_id == param_shift){
							selected = 'selected = "selected"';
						}
						else{
							selected = '';
						}
					}else{
						selected = '';
					}
					str += '<option value="'+ shift_id +'" '+ selected +'>' + local_date + '</option>';

			   // console.log(sh_date)
			})
				shift.append(str);
			});
		}

	});
</script>
