edit
This commit is contained in:
@@ -2,19 +2,47 @@ class BatchLineItemsController < ApplicationController
|
||||
require "csv"
|
||||
skip_before_filter :verify_authenticity_token
|
||||
before_action :authenticate_member!
|
||||
# respond_to :json, :html,:csv
|
||||
|
||||
|
||||
def index
|
||||
def index
|
||||
user_id=current_member.user_id
|
||||
@clients=Client.all.order('id desc')
|
||||
find_client=Client.select(:id).order('id desc').first
|
||||
if !find_client.nil?
|
||||
client_id=find_client.id
|
||||
|
||||
user_id=current_member.user_id
|
||||
|
||||
@clients=Client.all
|
||||
|
||||
@batches=Batch.where('user_id=?',user_id)
|
||||
@batchLineItems=BatchLineItem.joins('inner join batches on batches.id=batch_line_items.batch_id')
|
||||
.where('batches.user_id=?',user_id)
|
||||
.select('batch_line_items.*,batches.order_ref as batch_name').page(params[:page])
|
||||
sub_query="(select * from batches where user_id="+user_id.to_s+" and client_id="+client_id.to_s+")"
|
||||
@batchLineItems=BatchLineItem.joins('inner join '+sub_query+' as batches on batches.id=batch_line_items.batch_id')
|
||||
.select('batch_line_items.*,batches.order_ref as batch_name').page(params[:page]).per(10)
|
||||
else
|
||||
sub_query="(select * from batches where user_id="+user_id.to_s+")"
|
||||
@batchLineItems=BatchLineItem.joins('inner join '+ sub_query + ' as batches on batches.id=batch_line_items.batch_id')
|
||||
.select('batch_line_items.*,batches.order_ref as batch_name').page(params[:page]).per(10)
|
||||
end
|
||||
end
|
||||
def search
|
||||
user_id=current_member.user_id
|
||||
batch_list=params[:batch]
|
||||
client_id=params[:client]
|
||||
|
||||
@batchLineItems=nil
|
||||
|
||||
if !batch_list.empty?
|
||||
sub_query="(select * from batches where id in ("+batch_list+") and user_id="+user_id.to_s+" and client_id="+client_id.to_s+")"
|
||||
|
||||
@batchLineItems=BatchLineItem.joins('inner join '+ sub_query +' as batches on batches.id=batch_line_items.batch_id')
|
||||
.select('batch_line_items.*,batches.order_ref as batch_name').page(params[:page])
|
||||
|
||||
else
|
||||
sub_query="(select * from batches where user_id="+user_id.to_s+" and client_id="+client_id.to_s+")"
|
||||
@batchLineItems=BatchLineItem.joins('inner join '+ sub_query +'as batches on batches.id=batch_line_items.batch_id')
|
||||
.select('batch_line_items.*,batches.order_ref as batch_name').page(params[:page])
|
||||
|
||||
end
|
||||
# if @batchLineItems.nil?
|
||||
# @message="No search found!"
|
||||
# end
|
||||
end
|
||||
def get_batch
|
||||
client_id=params[:client_id]
|
||||
batches=Batch.where('client_id=?',client_id)
|
||||
@@ -27,25 +55,34 @@ class BatchLineItemsController < ApplicationController
|
||||
end
|
||||
def export
|
||||
batch_list=""
|
||||
@batchLineItems=""
|
||||
@batchLineItems=nil
|
||||
user_id=current_member.user_id
|
||||
|
||||
@clients=Client.all
|
||||
@batches=Batch.where('user_id=?',user_id)
|
||||
client_id=params[:client]
|
||||
|
||||
if params[:batch].present?
|
||||
batch_list=params[:batch]
|
||||
end
|
||||
client_id=params[:client]
|
||||
|
||||
|
||||
if !batch_list.empty?
|
||||
Batch.where("client_id=? and id in (?)",client_id,batch_list).update_all("export_count = export_count + 1")
|
||||
@batchLineItems = BatchLineItem.where('batch_id in (?)',batch_list).select("*,'' as secret_token")
|
||||
|
||||
else
|
||||
Batch.where("client_id=? ",client_id).update_all("export_count = export_count + 1")
|
||||
sub_query="(select * from batches where client_id ="+client_id+" and user_id="+user_id.to_s+")"
|
||||
@batchLineItems = BatchLineItem.joins('inner join '+sub_query+' as batches on batches.id=batch_line_items.batch_id').select("*,'' as secret_token")
|
||||
end
|
||||
|
||||
if !@batchLineItems.empty?
|
||||
respond_to do |format|
|
||||
format.html
|
||||
format.csv { send_data @batchLineItems.to_csv(client_id), filename: "encoder-#{Date.today}.csv" }
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
flash[:notice] = "No data to export."
|
||||
redirect_to batch_line_items_path
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user