Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
simple_controller
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
open-source
simple_controller
Commits
1373a76e
Commit
1373a76e
authored
Jun 21, 2023
by
liyijie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ransack_association_chain fix
parent
47a3caab
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
6 deletions
+8
-6
base_controller.rb
lib/simple_controller/base_controller.rb
+8
-6
No files found.
lib/simple_controller/base_controller.rb
View file @
1373a76e
...
@@ -299,17 +299,19 @@ class SimpleController::BaseController < ::InheritedResources::Base
...
@@ -299,17 +299,19 @@ class SimpleController::BaseController < ::InheritedResources::Base
if
defined?
(
Com
::
CounterStorage
)
&&
Array
(
params
[
:group_keys
]).
count
>
1
if
defined?
(
Com
::
CounterStorage
)
&&
Array
(
params
[
:group_keys
]).
count
>
1
hash
=
statistics_association
.
group
(
params
[
:group_keys
]).
count
.
merge
(
count:
statistics_association
.
count
)
hash
=
statistics_association
.
group
(
params
[
:group_keys
]).
count
.
merge
(
count:
statistics_association
.
count
)
@statistics
=
Com
::
CounterStorage
.
load
(
params
[
:group_keys
],
hash
,
enum_dics:
params
[
:enum_dics
]
&
.
to_unsafe_h
||
{}).
group_sum
(
*
params
[
:group_keys
],
include_sum:
true
)
@statistics
=
Com
::
CounterStorage
.
load
(
params
[
:group_keys
],
hash
,
enum_dics:
params
[
:enum_dics
]
&
.
to_unsafe_h
||
{}).
group_sum
(
*
params
[
:group_keys
],
include_sum:
true
)
elsif
defined?
(
Com
::
Attr
::
Stat
::
Collection
)
&&
params
[
:collection_stat_condition
].
present?
# 支持collection_stat_condition
stat_condition
=
Com
::
Attr
::
Stat
::
Collection
.
new
params
.
to_unsafe_h
[
:collection_stat_condition
]
@statistics
=
statistics_association
.
ta_statistic
(
stat_condition
)
elsif
defined?
(
Com
::
Attr
::
Stat
::
Resource
)
&&
params
[
:resource_stat_condition
].
present?
@resource_stat_condition
=
Com
::
Attr
::
Stat
::
Resource
.
new
params
.
to_unsafe_h
[
:resource_stat_condition
]
else
else
@statistics
=
statistics_association
.
group
(
params
[
:group_keys
]).
count
.
merge
(
count:
statistics_association
.
count
)
@statistics
=
statistics_association
.
group
(
params
[
:group_keys
]).
count
.
merge
(
count:
statistics_association
.
count
)
end
end
end
end
if
defined?
(
Com
::
Attr
::
Stat
::
Collection
)
&&
params
[
:collection_stat_condition
].
present?
# 支持collection_stat_condition
stat_condition
=
Com
::
Attr
::
Stat
::
Collection
.
new
params
.
to_unsafe_h
[
:collection_stat_condition
]
@statistics
=
statistics_association
.
ta_statistic
(
stat_condition
)
end
@resource_stat_condition
=
Com
::
Attr
::
Stat
::
Resource
.
new
params
.
to_unsafe_h
[
:resource_stat_condition
]
if
defined?
(
Com
::
Attr
::
Stat
::
Resource
)
&&
params
[
:resource_stat_condition
].
present?
association
=
ransack_association
(
association
,
params
[
:sub_q
])
unless
self
.
class
.
instance_variable_get
(
:@ransack_off
)
||
params
[
:sub_q
].
blank?
association
=
ransack_association
(
association
,
params
[
:sub_q
])
unless
self
.
class
.
instance_variable_get
(
:@ransack_off
)
||
params
[
:sub_q
].
blank?
# 增加默认id排序
# 增加默认id排序
association
=
association
.
order
(
id: :desc
)
if
association
.
respond_to?
(
:order
)
&&
!
self
.
class
.
instance_variable_get
(
:@order_off
)
association
=
association
.
order
(
id: :desc
)
if
association
.
respond_to?
(
:order
)
&&
!
self
.
class
.
instance_variable_get
(
:@order_off
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment