Добавление кнопки выхода, Изменение главной страницы на home, Выделение отдельного контроллера под организацию

This commit is contained in:
ARLakhin
2026-03-26 00:45:44 +03:00
parent df4c307e24
commit 853b82660f
14 changed files with 169 additions and 27 deletions
+7 -1
View File
@@ -2,11 +2,13 @@ module Authorization
extend ActiveSupport::Concern
included do
before_action :set_paper_trail_whodunnit
before_action :load_current_user # load user from database
before_action :set_paper_trail_whodunnit
before_action :check_authentication # check if user authenticated
before_action :check_current_user # check if user authorized
helper_method :logged_in?, :current_user
rescue_from ActionController::UnknownFormat do
request.format = :html
render_error
@@ -15,6 +17,10 @@ module Authorization
def current_login
session['zombie'] || cas_login
end
def logged_in?
current_login.present?
end
private
@@ -0,0 +1,43 @@
class OrganisationsController < ApplicationController
def index
organizations = Organization.all
@info_about_organisations = organizations.each_with_object({}) do |org, hash|
hash[org.id] = {
"ИНН" => org.inn,
"Полное наименование юридического лица" => org.full_name,
"КПП" => org.kpp,
"Код по ОКПО" => org.okpo,
"Форма собственности (по ОКФС)" => org.okfs,
"Организационно-правовая форма (по ОКОПФ)" => org.okopf,
"Вид экономической деятельности по ОКВЭД 2" => org.okved2,
"Местонахождение (адрес)" => org.address
}
end
end
def show
org = Organization.find(params[:id])
@info_about_organisation = {
"Сведения об организации" => {
"ИНН" => org.inn,
"Полное наименование юридического лица" => org.full_name,
"КПП" => org.kpp,
"Код по ОКПО" => org.okpo,
"Форма собственности (по ОКФС)" => org.okfs,
"Организационно-правовая форма (по ОКОПФ)" => org.okopf,
"Вид экономической деятельности по ОКВЭД 2" => org.okved2,
"Местонахождение (адрес)" => org.address
},
"Бухгалтерский баланс" => [["Наименование показателя", "На 31 декабря 2024 г.", "На 31 декабря 2023 г."], \
["Нематериальные активы", 10457, 9925], \
["Результаты исследований и разработок", 6969, 428571]],
"Отчёт о финансовых результатах" => [["Наименование показателя", "За 2024 г.", "За 2023 г."], \
["Выручка", 301837283, 238834307], \
["Себестоимость продаж", -228706983, -178449438]]
}
end
end
+7 -15
View File
@@ -1,19 +1,11 @@
class WelcomeController < ApplicationController
def index
organizations = Organization.all
@info_about_organisations = organizations.each_with_object({}) do |org, hash|
hash[org.id] = {
"ИНН" => org.inn,
"Полное наименование юридического лица" => org.full_name,
"КПП" => org.kpp,
"Код по ОКПО" => org.okpo,
"Форма собственности (по ОКФС)" => org.okfs,
"Организационно-правовая форма (по ОКОПФ)" => org.okopf,
"Вид экономической деятельности по ОКВЭД 2" => org.okved2,
"Местонахождение (адрес)" => org.address
}
def home
if logged_in?
if @current_user.present?
redirect_to '/organisations/index'
else
render_error
end
end
end
end
+2
View File
@@ -0,0 +1,2 @@
module OrganisationsHelper
end
+6 -1
View File
@@ -1,2 +1,7 @@
.main-header
= 'Отчетность за 2026 год'
= 'Отчетность за 2026 год'
.exit
- if logged_in?
a.link[href="/logout"]
span.text-large
= 'Выйти'
+6 -5
View File
@@ -1,5 +1,6 @@
.nav-container
a.link[href="/"]
= 'Организации'
a.link[href="/auditors/index"]
= 'Аудиторы'
- if @current_user.present?
.nav-container
a.link[href="/"]
= 'Организации'
a.link[href="/auditors/index"]
= 'Аудиторы'
@@ -13,4 +13,7 @@
.information-data
- params.keys.each do |key|
.information-elem
= "#{key}: #{params[key]}"
= "#{key}: #{params[key]}"
.information-button
a.link[href="/organisations/#{organisation}"]
= "Подробнее"
+31
View File
@@ -0,0 +1,31 @@
.header
.header-title
= "Организация"
.main-container
- unless @info_about_organisation.any?
= 'У данной организации пока не загружена отчетность'
- else
.informations-data
- @info_about_organisation.each do |organisation_name, params|
h2
= "#{organisation_name}"
- if organisation_name == "Сведения об организации"
.information-data
- params.keys.each do |key|
.information-elem
= "#{key}: #{params[key]}"
- else
.information-table
table
thead
tr
- params[0].each do |value|
th
= value
tbody
- params[1..-1].each do |values|
tr
- values.each do |value|
td
= value
+13
View File
@@ -0,0 +1,13 @@
.welcome__container__laptop
div
= 'Информационная система'
div
= '«Электронный дневник»'
- unless logged_in?
a.link[href="/auth/login"]
.welcome-login__container
span
= image_tag('auth.svg', class: 'icon')
span.text-login
= 'Войти'