c80_estate 0.1.0.27 → 0.1.0.28

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 186988e51e84d02566e306dad6bd211623c76def
4
- data.tar.gz: b14d9a239cb9905b2d772a8a718944acd434a9c6
3
+ metadata.gz: d08645faa1d97b3ac9cbafa6cf68655e4a5108b8
4
+ data.tar.gz: c79aa2d2f76e257f79f5f9ff8c7490edb0a92916
5
5
  SHA512:
6
- metadata.gz: cfd7e1d00a68415b299011611d8a9bb0400006b63b9ab15e1ba3b40df10f9e9cd67eff45079386b8a1575e91533fa332ded19a807ede05329003f5a892f6d1bd
7
- data.tar.gz: 3d69dc9df0d4b2d148cce2b7c5e88a3d56288ff1d59580002f35f4a8830704f91934e86f22b62725185bcc8a0cc4029c8331b659da22235422e2717b39fc9365
6
+ metadata.gz: 605ecc95640a510e7d1aa29b72d427319d5c0e1403d46556f317d2382b22548a7f3a21a4bdb8321051e7622fd52c1e51593c359cef01bde6b18fabb311844eec
7
+ data.tar.gz: 3eaac5d2ce9e94f2ee5a859f0337ad8cb39c1cf5f39d189b014b4c8bc8516e8191783caec451ef326a57c93d618b29ff1e6a7b74019710081dae8d0463816d35
@@ -12,17 +12,30 @@ module C80Estate
12
12
  list = []
13
13
 
14
14
  props.each do |prop|
15
- pp = Pstat.busy_coef(prop_id: prop.id, atype_id: atype_id)
15
+
16
+ # pp = Pstat.busy_coef(prop_id: prop.id, atype_id: atype_id)
16
17
  # Rails.logger.debug "<render_table_prop_busy_coef> pp = #{pp}"
17
- busy_coef = pp[:busy_coef]
18
- props = pp[:raw_props]
19
- list << {
20
- id: prop.id,
21
- title: prop.title,
22
- busy_coef: busy_coef,
23
- props: props
24
- }
25
- # Rails.logger.debug "<render_table_prop_busy_coef> #{prop.title}"
18
+ # busy_coef = pp[:busy_coef]
19
+ # props = pp[:raw_props]
20
+
21
+ # фиксируем последнее известное событие Pstat
22
+ # и извлекаем из него уже рассчитанные числа
23
+ pstat = prop.last_known_stats
24
+ if pstat.present? # pstat может не быть у площади, которая была создана во время испытаний с ошибкой
25
+ busy_coef = pstat.coef_busy
26
+
27
+ list << {
28
+ id: prop.id,
29
+ title: prop.title,
30
+ busy_coef: busy_coef,
31
+ props: {
32
+ all_areas: pstat.free_areas + pstat.busy_areas,
33
+ free_areas: pstat.free_areas,
34
+ busy_areas: pstat.busy_areas
35
+ }
36
+ }
37
+ # Rails.logger.debug "<render_table_prop_busy_coef> #{prop.title}"
38
+ end
26
39
  end
27
40
 
28
41
  render :partial => 'c80_estate/shared/table_properties_coef_busy',
@@ -33,25 +46,37 @@ module C80Estate
33
46
  end
34
47
 
35
48
  def render_table_prop_busy_coef_sq(atype_id: nil)
36
- # Rails.logger.debug "<render_table_prop_busy_coef_sq> atype_id = #{atype_id}"
49
+ # Rails.logger.debug "<render_table_prop_busy_coef> atype_id = #{atype_id}"
37
50
 
38
51
  props = Property.sorted_chart
39
-
40
52
  if props.count > 0
41
53
  list = []
42
54
 
43
55
  props.each do |prop|
44
- pp = Pstat.busy_coef(prop_id: prop.id, atype_id: atype_id)
56
+
57
+ # pp = Pstat.busy_coef(prop_id: prop.id, atype_id: atype_id)
45
58
  # Rails.logger.debug "<render_table_prop_busy_coef> pp = #{pp}"
46
- busy_coef_sq = pp[:busy_coef_sq]
47
- props = pp[:raw_props_sq]
48
- list << {
49
- id: prop.id,
50
- title: prop.title,
51
- busy_coef: busy_coef_sq,
52
- props: props
53
- }
54
- # Rails.logger.debug "<render_table_prop_busy_coef> #{prop.title}"
59
+ # busy_coef = pp[:busy_coef]
60
+ # props = pp[:raw_props]
61
+
62
+ # фиксируем последнее известное событие Pstat
63
+ # и извлекаем из него уже рассчитанные числа
64
+ pstat = prop.last_known_stats
65
+ if pstat.present? # pstat может не быть у площади, которая была создана во время испытаний с ошибкой
66
+ busy_coef = pstat.coef_busy_sq
67
+
68
+ list << {
69
+ id: prop.id,
70
+ title: prop.title,
71
+ busy_coef: busy_coef,
72
+ props: {
73
+ all_areas_sq: pstat.free_areas_sq + pstat.busy_areas_sq,
74
+ free_areas: pstat.free_areas_sq,
75
+ busy_areas: pstat.busy_areas_sq
76
+ }
77
+ }
78
+ # Rails.logger.debug "<render_table_prop_busy_coef> #{prop.title}"
79
+ end
55
80
  end
56
81
 
57
82
  render :partial => 'c80_estate/shared/table_properties_coef_busy_sq',
@@ -24,12 +24,24 @@ module C80Estate
24
24
  # scope :sort_chart, -> {order(:ord => :asc)}
25
25
 
26
26
  def self.sorted_chart
27
- self.all.sort_by(&:busy_koef).reverse!
27
+ self.all.sort_by(&:busy_coef).reverse!
28
28
  end
29
29
 
30
- def busy_koef
31
- pp = Pstat.busy_coef(prop_id: self.id, atype_id: nil)
32
- pp[:busy_coef].to_f
30
+ # вернуть самый свежий объект с данными события Pstat
31
+ def last_known_stats(atype_id: nil)
32
+ pstats.where(:atype_id => atype_id).ordered_by_created_at.last
33
+ end
34
+
35
+ # выдать действующий на данный момент коэф-т занятости
36
+ def busy_coef(atype_id: nil)
37
+ # необходимо обратиться к самому последнему (общему?) событию Pstat
38
+ pstats.where(:atype_id => atype_id).ordered_by_created_at.last.coef_busy
39
+ end
40
+
41
+ # выдать действующий на данный момент коэф-т занятости в метрах
42
+ def busy_coef_sq(atype_id: nil)
43
+ # необходимо обратиться к самому последнему (общему?) событию Pstat
44
+ pstats.where(:atype_id => atype_id).ordered_by_created_at.last.coef_busy_sq
33
45
  end
34
46
 
35
47
  # этот метод для ActiveRecordCollection of Properties
@@ -1,3 +1,3 @@
1
1
  module C80Estate
2
- VERSION = '0.1.0.27'
2
+ VERSION = '0.1.0.28'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: c80_estate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.27
4
+ version: 0.1.0.28
5
5
  platform: ruby
6
6
  authors:
7
7
  - C80609A
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-08-04 00:00:00.000000000 Z
11
+ date: 2016-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler