Merge branch 'august_spring' of bitbucket.org:code2lab/sxrestaurant into august_spring

This commit is contained in:
yamin
2017-08-25 18:49:02 +06:30
16 changed files with 680 additions and 425 deletions

View File

@@ -74,13 +74,18 @@ class Origami::CommissionsController < BaseOrigamiController
def select_sale_item
# byebug
sale_item_id = params[:sale_item_id]
@sale_item = SaleItem.find_by_sale_item_id(sale_item_id)
@selected_sale_item = SaleItem.find_by_sale_item_id(sale_item_id)
@product_commission = ProductCommission.find_by_sale_item_id(@selected_sale_item.id)
unless @product_commission.nil?
selected_commissioner = @product_commission.commissioner
end
@commissioners = Commissioner.active.all
respond_to do |format|
format.json {render json: @commissioners}
# format.html {render @commissioners}
end
# respond_to do |format|
# format.json {render json: {[@commissioners],[@selected_sale_item]}}
# # format.html {render @commissioners}
# end
render json: {commissioner: @commissioners, selected_commissioner: selected_commissioner}
end
private

View File

@@ -28,11 +28,11 @@ class Origami::ProductCommissionsController < ApplicationController
respond_to do |format|
if @product_commission.save
format.html { redirect_to @product_commission, notice: 'Product commission was successfully created.' }
format.json { render :show, status: :created, location: @product_commission }
format.html {redirect_to @product_commission, notice: 'Product commission was successfully created.'}
format.json {render :show, status: :created, location: @product_commission}
else
format.html { render :new }
format.json { render json: @product_commission.errors, status: :unprocessable_entity }
format.html {render :new}
format.json {render json: @product_commission.errors, status: :unprocessable_entity}
end
end
end
@@ -42,11 +42,11 @@ class Origami::ProductCommissionsController < ApplicationController
def update
respond_to do |format|
if @product_commission.update(product_commission_params)
format.html { redirect_to @product_commission, notice: 'Product commission was successfully updated.' }
format.json { render :show, status: :ok, location: @product_commission }
format.html {redirect_to @product_commission, notice: 'Product commission was successfully updated.'}
format.json {render :show, status: :ok, location: @product_commission}
else
format.html { render :edit }
format.json { render json: @product_commission.errors, status: :unprocessable_entity }
format.html {render :edit}
format.json {render json: @product_commission.errors, status: :unprocessable_entity}
end
end
end
@@ -56,19 +56,62 @@ class Origami::ProductCommissionsController < ApplicationController
def destroy
@product_commission.destroy
respond_to do |format|
format.html { redirect_to product_commissions_url, notice: 'Product commission was successfully destroyed.' }
format.json { head :no_content }
format.html {redirect_to product_commissions_url, notice: 'Product commission was successfully destroyed.'}
format.json {head :no_content}
end
end
def set_commissioner_to_sale_item
deselect = false
sale_item_id = params[:sale_item_id]
commissioner_id = params[:commissioner_id]
@sale_item = SaleItem.find(sale_item_id)
@menu_item = MenuItem.find_by_item_code(@sale_item.product_code)
@commission = Commission.where('product_id = ? AND is_active = ?', @menu_item.id, true).take
@commissioner = Commissioner.where('id = ? AND is_active = ?', commissioner_id, true).take
@product_commission = ProductCommission.where('sale_item_id = ?', @sale_item.id).take
# byebug
if !@product_commission.nil?
if @product_commission.commissioner_id == @commissioner.id
@product_commission.destroy
deselect = true
else
@product_commission.commissioner_id = @commissioner.id
deselect = false
end
else
@product_commission = ProductCommission.new
@product_commission.product_id = @menu_item.id
unless @commission.nil?
@product_commission.commission_id = @commission.id
if @commission.commission_type == 'Percentage'
@product_commission.price = @sale_item.unit_price * (@commission.amount / 100.0)
@product_commission.amount = @product_commission.price * @sale_item.qty
elsif @commission.commission_type == 'Net Amount'
@product_commission.price = @commission.amount
@product_commission.amount = @product_commission.price * @sale_item.qty
end
end
@product_commission.commissioner_id = @commissioner.id
@product_commission.qty = @sale_item.qty
@product_commission.sale_id = @sale_item.sale_id
@product_commission.sale_item_id = @sale_item.sale_item_id
end
if @product_commission.save
render json: {status: true, deselect: deselect}
else
render json: {status: false, deselect: deselect}
end
end
private
# Use callbacks to share common setup or constraints between actions.
def set_product_commission
@product_commission = ProductCommission.find(params[:id])
end
# Use callbacks to share common setup or constraints between actions.
def set_product_commission
@product_commission = ProductCommission.find(params[:id])
end
# Never trust parameters from the scary internet, only allow the white list through.
def product_commission_params
params.fetch(:product_commission, {})
end
# Never trust parameters from the scary internet, only allow the white list through.
def product_commission_params
params.fetch(:product_commission, {})
end
end