@@ -22,7 +22,12 @@ def self.apply
22
22
end
23
23
24
24
def issue_supply_item_names
25
- IssueSupplyItemsPresenter . new ( issue_supply_items ) . to_s
25
+ cached_items = instance_variable_get ( "@issue_supply_items" )
26
+ if !cached_items . nil?
27
+ IssueSupplyItemsPresenter . new ( cached_items ) . to_s
28
+ else
29
+ IssueSupplyItemsPresenter . new ( issue_supply_items ) . to_s
30
+ end
26
31
end
27
32
28
33
def issue_supply_items_attributes = ( attributes = [ ] )
@@ -62,7 +67,10 @@ module ClassMethods
62
67
def load_issue_supply_items ( issues , user = User . current )
63
68
if issues . any?
64
69
issue_ids = issues . map ( &:id )
65
- _issue_supply_items = IssueSupplyItem . where ( :issue_id => issue_ids )
70
+ _issue_supply_items = IssueSupplyItem . includes ( supply_item : [ :custom_values ] ) .
71
+ where ( :issue_id => issue_ids ) .
72
+ order ( :issue_id ) .
73
+ order ( "#{ SupplyItem . table_name } .name ASC" ) . to_a
66
74
issues . each do |issue |
67
75
issue . instance_variable_set "@issue_supply_items" , _issue_supply_items . select { |s | s . issue_id == issue . id }
68
76
end
@@ -72,7 +80,9 @@ def load_issue_supply_items(issues, user=User.current)
72
80
def load_issue_human_resource_items ( issues , user = User . current )
73
81
if issues . any?
74
82
issue_ids = issues . map ( &:id )
75
- _issue_human_resource_items = IssueResourceItem . where ( resource_item_id : ResourceItem . humans . ids ) . where ( :issue_id => issue_ids )
83
+ _issue_human_resource_items = IssueResourceItem . includes ( :resource_item ) .
84
+ where ( resource_items : { type : "Human" } ) .
85
+ where ( :issue_id => issue_ids ) . to_a
76
86
issues . each do |issue |
77
87
issue . instance_variable_set "@issue_human_resource_items" , _issue_human_resource_items . select { |h | h . issue_id == issue . id }
78
88
end
@@ -82,7 +92,9 @@ def load_issue_human_resource_items(issues, user=User.current)
82
92
def load_issue_asset_resource_items ( issues , user = User . current )
83
93
if issues . any?
84
94
issue_ids = issues . map ( &:id )
85
- _issue_asset_resource_items = IssueResourceItem . where ( resource_item_id : ResourceItem . assets . ids ) . where ( :issue_id => issue_ids )
95
+ _issue_asset_resource_items = IssueResourceItem . includes ( :resource_item ) .
96
+ where ( resource_items : { type : "Asset" } ) .
97
+ where ( :issue_id => issue_ids ) . to_a
86
98
issues . each do |issue |
87
99
issue . instance_variable_set "@issue_asset_resource_items" , _issue_asset_resource_items . select { |a | a . issue_id == issue . id }
88
100
end
0 commit comments