| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- class UnitsController < ApplicationController
- ##--- Abilities
- load_and_authorize_resource
- before_action :set_unit, only: [:edit, :update, :update_status]
- ##--- Breadcrum_rails
- add_breadcrumb I18n.t("breadcrumbs." + controller_name), :units_path
- ## /**Creamos el listado de las unidades de medida, esta lista es de las propuestas por SAT, por ello se hace solo la lista no CRUD**/
- def index
- @units = Unit.all.order(unit: :asc)
- end
- def new
- @unit = Unit.new
- end
- def edit; end
- def create
- @unit = Unit.new(unit_params)
- @unit.status = :active
- respond_to do |format|
- message = "Unidad de medida #{@unit.unit} creada."
- @unit.audit_comment = message
- if @unit.save
- format.js
- else
- format.html { render :new }
- format.js
- format.json { render json: @unit.errors, status: :unprocessable_entity }
- end
- end
- end
- def update
- respond_to do |format|
- message = "Unidad de medida #{@unit.unit} modificada."
- @unit.audit_comment = message
- if @unit.update(unit_params)
- format.js
- else
- format.html { render :edit }
- format.js
- format.json { render json: @unit.errors, status: :unprocessable_entity }
- end
- end
- end
- def update_status
- @unit.status =
- if @unit.active?
- 0
- else
- 1
- end
- respond_to do |format|
- message = "Se actualizó el status de la unidad de medida #{@unit.unit}."
- @unit.audit_comment = message
- if @unit.save
- format.html { redirect_to units_path, success: message }
- format.json { head :no_content }
- else
- format.html { redirect_to units_path }
- format.json { render json: @unit.errors, status: :unprocessable_entity }
- end
- end
- end
- private
- def set_unit
- @unit = Unit.find(params[:id])
- end
- def unit_params
- params.require(:unit).permit(:unit, :status)
- end
- end
|