Guest User

Untitled

a guest
Feb 22nd, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.08 KB | None | 0 0
  1. i change pay by Sale
  2.  
  3. class SalesController < ApplicationController
  4. before_action :set_sale, only: [:create, :show, :edit, :update, :destroy]
  5. PAGE_SIZE = 10
  6.  
  7. # GET /sales
  8. # GET /sales.json
  9. def index
  10. # clear no saved sales:
  11. unsaved_sales = Sale.where(state: "draft", user: current_user)
  12. unsaved_sales.each do |sale|
  13. sale.destroy
  14. end
  15.  
  16. @page = (params[:page] || 0).to_i
  17. @keywords = params[:keywords]
  18.  
  19. search = Search.new(@page, PAGE_SIZE, @keywords, current_user)
  20. @sales, @number_of_pages = search.sales
  21. end
  22.  
  23. # GET /sales/1
  24. # GET /sales/1.json
  25. def show
  26. end
  27.  
  28. # GET /sales/new
  29. def new
  30. last_sale = Sale.where(state: "confirmed", user: current_user).maximum('number')
  31. number = (last_sale != nil) ? last_sale + 1 : 1
  32. @sale = Sale.create(date: Date::current, number: number, state: "draft", user: current_user)
  33. @sale.sale_details.build
  34. params[:sale_id] = @sale.id.to_s
  35. end
  36.  
  37. # GET /sales/1/edit
  38. def edit
  39. end
  40.  
  41. # POST /sales
  42. # POST /sales.json
  43. def create
  44. end
  45.  
  46. # PATCH/PUT /sales/1
  47. # PATCH/PUT /sales/1.json
  48. def update
  49. @sale.confirmed!
  50. respond_to do |format|
  51. if @sale.update(sale_params)
  52. format.html { redirect_to sales_url, notice: 'Venta actualizada.' }
  53. format.json { render :show, status: :ok, location: @sale }
  54. else
  55. format.html { render :edit }
  56. format.json { render json: @sale.errors, status: :unprocessable_entity }
  57. end
  58. end
  59. end
  60.  
  61. # DELETE /sales/1
  62. # DELETE /sales/1.json
  63. def destroy
  64. @sale.destroy
  65. respond_to do |format|
  66. format.html { redirect_to sales_url, notice: 'Venta eliminada.' }
  67. format.json { head :no_content }
  68. end
  69. end
  70.  
  71. private
  72. # Use callbacks to share common setup or constraints between actions.
  73. def set_sale
  74. @sale = Sale.find(params[:id])
  75. end
  76.  
  77. # Never trust parameters from the scary internet, only allow the white list through.
  78. def sale_params
  79. params.require(:sale).permit(:number, :date, sale_details_attributes: [:id, :sale_id, :item_id, :number, :qty, :price, :_destroy] )
  80. end
  81. end
Add Comment
Please, Sign In to add comment