canql 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 935d92e9e0fa6135540db6a7acfdf127d9fdf395ddbd8f1c93f328b8e708983e
4
- data.tar.gz: 0b55234d83f824b71c66beb3e761ce0687393bb9e2695aaa21bda055883cdec0
3
+ metadata.gz: ccf9f4bc0d1fdda618a088af0682af50a2a1b54bed60509b1fb6df12e13f3edb
4
+ data.tar.gz: b6f8736ccfe310b7ca819ac75bb477dc36429e2b97df80ff5687a9bb6ea32aa0
5
5
  SHA512:
6
- metadata.gz: c97e4d469ee36061bfd75b6c27c28ec47ed63c626bfd1412a84e9d0139cc2510f2d8c429b5793eded4e174cb9ec4a7401664492ae8dc52e2bddc6ca9382bf147
7
- data.tar.gz: 6f0998e8c64dd33322c70ca72c610a5b69c96956758e94a646489bf4eb14f7ee892bd268f01e6809e0cf42356591e8cedb7a6b15ffec4529001c56b000c9c191
6
+ metadata.gz: 583b399bd9d25da314ae8d83e005566356f439b1f5a655544756bc05e7d6a5bd3ca9ece4b37a9e93124e89571da4d112c36f98143d8e93af39657fac356822f0
7
+ data.tar.gz: e76786b41521bbb50affb87a6809fd7343f84eb906fe9f3074f96a105524d85a69e294f8b9e207319a35c0d5a420eaa13161b0969e876d5b2069aed7f52e9f0b
@@ -1,6 +1,13 @@
1
1
  ## [Unreleased]
2
2
  *no unreleased changes*
3
3
 
4
+ ## 4.0.0 / 2019-09-06
5
+ ### Changed
6
+ * Added case filters for delivery and booking postcode fields and removed all simple postcode field filters (#36)
7
+
8
+ ### Added
9
+ * Added fasp and fasp plus code groups (#37)
10
+
4
11
  ## 3.0.0 / 2019-06-04
5
12
  ### Changed
6
13
  * Added new branch of CANQL for querying all patient not just child patients - modifies DIR (#29)
@@ -15,11 +15,11 @@ file safety:
15
15
  ".travis.yml":
16
16
  comments:
17
17
  reviewed_by: josh.pencheon
18
- safe_revision: 16abb8206a3d36c7532427cd7137df79d2733d1d
18
+ safe_revision: 8adb767031a19aa6b3cea3f1cb05b4a9bcc964f3
19
19
  CHANGELOG.md:
20
20
  comments:
21
21
  reviewed_by: josh.pencheon
22
- safe_revision: ff70470e8fa9613a6968a7579b206b6107ef5312
22
+ safe_revision: ba4bdef05af213f77898488fc975407114c88e82
23
23
  CODE_OF_CONDUCT.md:
24
24
  comments:
25
25
  reviewed_by: drewthorp
@@ -73,7 +73,7 @@ file safety:
73
73
  comments: It is a known issue that this is potentially susceptible to certain
74
74
  kinds of DoS attack
75
75
  reviewed_by: josh.pencheon
76
- safe_revision: 73a7dac17b20fcc77bcbd9d38777c8aa4d524816
76
+ safe_revision: b7778ca1d536022a807420cc9fe0f1c2df7f73ef
77
77
  lib/canql/grammars/batch_types.treetop:
78
78
  comments:
79
79
  reviewed_by: josh.pencheon
@@ -100,7 +100,7 @@ file safety:
100
100
  comments: It is a known issue that this is potentially susceptible to certain
101
101
  kinds of DoS attack
102
102
  reviewed_by: josh.pencheon
103
- safe_revision: 511e4238f83eb5b32839c25d94ec2a59145539bb
103
+ safe_revision: e258a1a403b7474f8919b1a76127f9ad71a640ad
104
104
  lib/canql/grammars/perinatal_hospital.treetop:
105
105
  comments:
106
106
  reviewed_by: josh.pencheon
@@ -130,7 +130,7 @@ file safety:
130
130
  lib/canql/nodes/anomaly.rb:
131
131
  comments:
132
132
  reviewed_by: josh.pencheon
133
- safe_revision: 73a7dac17b20fcc77bcbd9d38777c8aa4d524816
133
+ safe_revision: b7778ca1d536022a807420cc9fe0f1c2df7f73ef
134
134
  lib/canql/nodes/batch_types.rb:
135
135
  comments:
136
136
  reviewed_by: josh.pencheon
@@ -154,7 +154,7 @@ file safety:
154
154
  lib/canql/nodes/patient.rb:
155
155
  comments:
156
156
  reviewed_by: josh.pencheon
157
- safe_revision: 38369f1f26167f396d1705ec88611103d5262726
157
+ safe_revision: e258a1a403b7474f8919b1a76127f9ad71a640ad
158
158
  lib/canql/nodes/perinatal_hospital.rb:
159
159
  comments:
160
160
  reviewed_by: josh.pencheon
@@ -178,7 +178,7 @@ file safety:
178
178
  lib/canql/version.rb:
179
179
  comments:
180
180
  reviewed_by: josh.pencheon
181
- safe_revision: ff70470e8fa9613a6968a7579b206b6107ef5312
181
+ safe_revision: ba4bdef05af213f77898488fc975407114c88e82
182
182
  test/anomaly_test_helper.rb:
183
183
  comments:
184
184
  reviewed_by: josh.pencheon
@@ -202,11 +202,11 @@ file safety:
202
202
  test/nodes/case_test.rb:
203
203
  comments:
204
204
  reviewed_by: josh.pencheon
205
- safe_revision: 511e4238f83eb5b32839c25d94ec2a59145539bb
205
+ safe_revision: e258a1a403b7474f8919b1a76127f9ad71a640ad
206
206
  test/nodes/code_test.rb:
207
207
  comments:
208
- reviewed_by: timgentry
209
- safe_revision: 695cec7ee61f36a9ef054a4079f290421d814666
208
+ reviewed_by: josh.pencheon
209
+ safe_revision: b7778ca1d536022a807420cc9fe0f1c2df7f73ef
210
210
  test/nodes/e_base_records_test.rb:
211
211
  comments:
212
212
  reviewed_by: josh.pencheon
@@ -234,7 +234,7 @@ file safety:
234
234
  test/nodes/patient_test.rb:
235
235
  comments:
236
236
  reviewed_by: josh.pencheon
237
- safe_revision: 33597126dbd2f720bd867fc357003634b73e6d0a
237
+ safe_revision: e258a1a403b7474f8919b1a76127f9ad71a640ad
238
238
  test/nodes/perinatal_hospital_test.rb:
239
239
  comments:
240
240
  reviewed_by: josh.pencheon
@@ -250,7 +250,7 @@ file safety:
250
250
  test/parser_test.rb:
251
251
  comments:
252
252
  reviewed_by: josh.pencheon
253
- safe_revision: 511e4238f83eb5b32839c25d94ec2a59145539bb
253
+ safe_revision: e258a1a403b7474f8919b1a76127f9ad71a640ad
254
254
  test/test_helper.rb:
255
255
  comments:
256
256
  reviewed_by: josh.pencheon
@@ -43,7 +43,7 @@ module Canql
43
43
  end
44
44
 
45
45
  rule code_group
46
- ('fasp' / 'structural' / 'trisomy') <Nodes::Anomaly::SingleCodeGroupNode>
46
+ ('fasp plus' / 'plus' / 'fasp' / 'structural' / 'trisomy') <Nodes::Anomaly::SingleCodeGroupNode>
47
47
  end
48
48
  end
49
49
  end
@@ -42,7 +42,8 @@ module Canql
42
42
 
43
43
  rule case_field_names
44
44
  patient_field_name:(
45
- 'date of birth' / 'dob' / 'nhs number' / 'postcode' / 'birth weight' /
45
+ 'date of birth' / 'dob' / 'nhs number' / 'delivery postcode' /
46
+ 'booking postcode' / 'birth weight' /
46
47
  'place of delivery' / 'sex' / 'outcome' / 'edd' /
47
48
  'expected delivery date' / 'booking hospital' / 'screening status'
48
49
  )
@@ -50,7 +51,7 @@ module Canql
50
51
 
51
52
  rule patient_field_names
52
53
  patient_field_name:(
53
- 'date of birth' / 'dob' / 'nhs number' / 'postcode' / 'sex'
54
+ 'date of birth' / 'dob' / 'nhs number' / 'sex'
54
55
  )
55
56
  end
56
57
 
@@ -25,6 +25,7 @@ module Canql #:nodoc: all
25
25
  end
26
26
  anomaly_hash['icd_codes'] = code_filter[:icd_code] if code_filter[:icd_code].present?
27
27
  return anomaly_hash if code_filter[:code_group].blank?
28
+
28
29
  anomaly_hash['code_groups'] = code_filter[:code_group]
29
30
  anomaly_hash
30
31
  end
@@ -48,11 +49,13 @@ module Canql #:nodoc: all
48
49
  def code_type(code)
49
50
  return :icd_code if code.respond_to?(:to_code) && code.to_code.present?
50
51
  return :code_group if code.respond_to?(:to_code_group) && code.to_code_group.present?
52
+
51
53
  raise 'Unable to find code type'
52
54
  end
53
55
 
54
56
  def code_value(code)
55
57
  return code.to_code if :icd_code == code_type(code)
58
+
56
59
  code.to_code_group
57
60
  end
58
61
 
@@ -67,6 +70,7 @@ module Canql #:nodoc: all
67
70
  code_filters[:icd_code] = { Canql::BEGINS => code_array[:icd_code] }
68
71
  end
69
72
  return code_filters if code_array[:code_group].blank?
73
+
70
74
  code_filters[:code_group] = { Canql::EQUALS => code_array[:code_group] }
71
75
  code_filters
72
76
  end
@@ -86,6 +90,7 @@ module Canql #:nodoc: all
86
90
  module AdditionalCodeNode
87
91
  def code_type
88
92
  return :icd_code if anomalies_icd_code.respond_to?(:to_code)
93
+
89
94
  :code_group
90
95
  end
91
96
 
@@ -106,7 +111,7 @@ module Canql #:nodoc: all
106
111
 
107
112
  module SingleCodeGroupNode
108
113
  def to_code_group
109
- text_value.upcase
114
+ text_value.gsub(/( )/, '_').upcase
110
115
  end
111
116
  end
112
117
  end
@@ -25,7 +25,8 @@ module Canql #:nodoc: all
25
25
  FIELDS = {
26
26
  'date of birth': { patient: 'birthdate', mother: 'birthdate' },
27
27
  'dob': { patient: 'birthdate', mother: 'birthdate' },
28
- 'postcode': { patient: 'postcode', mother: 'postcode' },
28
+ 'delivery postcode': { patient: 'delivery_postcode' },
29
+ 'booking postcode': { patient: 'booking_postcode' },
29
30
  'nhs number': { patient: 'nhsnumber', mother: 'nhsnumber' },
30
31
  'birth weight': { patient: 'weight' },
31
32
  'place of delivery': { patient: 'placeofdelivery' },
@@ -2,5 +2,5 @@
2
2
 
3
3
  # This stores the current version of the Canql gem
4
4
  module Canql
5
- VERSION = '3.0.0'
5
+ VERSION = '4.0.0'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: canql
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - PHE NDR Development Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-06-04 00:00:00.000000000 Z
11
+ date: 2019-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chronic