Skip to content

Commit c5f958c

Browse files
authored
Merge pre-release/2024-R5.1 into master (#859)
* LIMS-139: link multiplex results to sample or sample group (#816) * LIMS-1454: Show non-automatic downstream processing (#837) * LIMS-1462: Show characterizations on Screenings tab (#844) * LIMS-1467: Allow lab contacts to have spaces in their names (#843) * LIMS-1489: Update message when trying to queue containers in uploaded shipments (#847)
1 parent f7780e9 commit c5f958c

File tree

8 files changed

+31
-14
lines changed

8 files changed

+31
-14
lines changed

api/src/Page/Contact.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ class Contact extends Page
99
{
1010

1111
public static $arg_list = array('CARDNAME' => '([\w\s\-])+',
12-
'FAMILYNAME' => '([\w\-])+',
13-
'GIVENNAME' => '([\w\-])+',
12+
'FAMILYNAME' => '([\w\s\-])+',
13+
'GIVENNAME' => '([\w\s\-])+',
1414
'PHONENUMBER' => '.*',
1515
'EMAILADDRESS' => '.*',
1616
'LABNAME' => '([\w\s\-])+',

api/src/Page/DC.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -121,11 +121,11 @@ function _data_collections($single = null)
121121

122122
$where = '';
123123
if ($this->arg('t') == 'sc')
124-
$where = ' AND (dc.overlap != 0 OR ifnull(et.name, dcg.experimenttype) = "Screening")';
124+
$where = ' AND (dc.overlap != 0 OR ifnull(et.name, dcg.experimenttype) in ("Screening", "Characterization"))';
125125
else if ($this->arg('t') == 'gr')
126126
$where = ' AND dc.axisrange = 0';
127127
else if ($this->arg('t') == 'fc')
128-
$where = ' AND dc.overlap = 0 AND dc.axisrange > 0 AND dc.numberOfImages > 1 AND ifnull(et.name, dcg.experimenttype) != "Screening"';
128+
$where = ' AND dc.overlap = 0 AND dc.axisrange > 0 AND dc.numberOfImages > 1 AND ifnull(et.name, dcg.experimenttype) not in ("Screening", "Characterization")';
129129
} else if ($this->arg('t') == 'edge') {
130130
$where2 = '';
131131
} else if ($this->arg('t') == 'mca') {
@@ -139,11 +139,11 @@ function _data_collections($single = null)
139139
$where2 = " AND es.comments LIKE '%_FLAG_%'";
140140
$where4 = " AND xrf.comments LIKE '%_FLAG_%'";
141141
} else if ($this->arg('t') == 'ap') {
142-
$where = ' AND app.processingstatus = 1';
142+
$where = " AND ifnull(et.name, dcg.experimenttype) not in ('Screening', 'Characterization') AND app.processingstatus = 1";
143143
$extj[0] .= "INNER JOIN autoprocintegration ap ON dc.datacollectionid = ap.datacollectionid
144144
INNER JOIN autoprocprogram app ON app.autoprocprogramid = ap.autoprocprogramid";
145145
} else if ($this->arg('t') == 'ph') {
146-
$where = " AND app.processingstatus = 1 AND app.processingprograms in ('big_ep', 'fast_ep')";
146+
$where = " AND ifnull(et.name, dcg.experimenttype) not in ('Screening', 'Characterization') AND app.processingstatus = 1 AND app.processingprograms in ('big_ep', 'fast_ep')";
147147
$extj[0] .= "INNER JOIN processingjob pj ON dc.datacollectionid = pj.datacollectionid
148148
INNER JOIN autoprocprogram app ON app.processingjobid = pj.processingjobid";
149149
} else if ($this->arg('t') == 'err') {

api/src/Page/Processing.php

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ function _autoproc_status($where, $ids) {
141141
INNER JOIN processingjob pj ON pj.datacollectionid = dc.datacollectionid
142142
INNER JOIN autoprocprogram app ON pj.processingjobid = app.processingjobid
143143
LEFT OUTER JOIN autoprocintegration api ON api.autoprocprogramid = app.autoprocprogramid
144-
WHERE $where AND api.autoprocintegrationid IS NULL AND pj.automatic = 1
144+
WHERE $where AND api.autoprocintegrationid IS NULL
145145
AND app.processingprograms NOT IN ('$filter')",
146146
),
147147
$ids
@@ -697,11 +697,17 @@ private function _autoprocessing_query_builder($where, $group, $order = '') {
697697
ap.refinedcell_alpha as cell_al,
698698
ap.refinedcell_beta as cell_be,
699699
ap.refinedcell_gamma as cell_ga,
700-
(SELECT COUNT(api1.autoprocintegrationid) FROM autoprocintegration api1 WHERE api1.autoprocprogramid = app.autoprocprogramid) as imagesweepcount,
700+
(SELECT COUNT(api1.autoprocintegrationid) FROM autoprocintegration api1 WHERE api1.autoprocprogramid = app.autoprocprogramid) as imagesweepcount,
701701
app.processingstatus,
702702
app.processingmessage,
703703
count(distinct pjis.datacollectionid) as dccount,
704704
max(pjis.processingjobid) as processingjobid,
705+
(SELECT IFNULL(blsg.name, bls.name) FROM processingjobparameter pjp
706+
LEFT OUTER JOIN blsample bls ON pjp.parametervalue = bls.blsampleid
707+
LEFT OUTER JOIN blsamplegroup blsg ON pjp.parametervalue = blsg.blsamplegroupid
708+
WHERE pjp.processingjobid = pj.processingjobid
709+
AND pjp.parameterkey in ('sample_id', 'sample_group_id')
710+
) as groupname,
705711
pj.automatic";
706712

707713
$from = "FROM autoprocintegration api";
@@ -751,7 +757,7 @@ private function _format_auto_processing_result($table_rows, $messages_result) {
751757
'cell_ga',
752758
);
753759
$resolution_data = array('rlow', 'rhigh');
754-
$returned_keys = array('PROCESSINGJOBID', 'IMAGESWEEPCOUNT', 'DCCOUNT', 'TYPE', 'PROCESSINGSTATUS', 'PROCESSINGMESSAGE');
760+
$returned_keys = array('PROCESSINGJOBID', 'IMAGESWEEPCOUNT', 'DCCOUNT', 'TYPE', 'PROCESSINGSTATUS', 'PROCESSINGMESSAGE', 'GROUPNAME');
755761

756762
foreach($table_rows as &$row) {
757763
if (!array_key_exists($row['AUTOPROCPROGRAMID'], $formatted_result)) {
@@ -772,6 +778,9 @@ private function _format_auto_processing_result($table_rows, $messages_result) {
772778
$prefix = preg_match('/multi/', $value) ? '' : 'multi-';
773779
$value = $row['DCCOUNT'] . 'x ' . $prefix . $value;
774780
}
781+
if ($row['GROUPNAME']) {
782+
$value .= ' ('.$row['GROUPNAME'].')';
783+
}
775784
}
776785

777786

client/src/js/models/labcontact.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ define(['backbone'], function(Backbone) {
1414
},
1515
FAMILYNAME: {
1616
required: true,
17-
pattern: 'wwdash',
17+
pattern: 'wwsdash',
1818
},
1919
GIVENNAME: {
2020
required: true,
21-
pattern: 'wwdash',
21+
pattern: 'wwsdash',
2222
},
2323
PHONENUMBER: {
2424
required: true,

client/src/js/modules/shipment/models/dispatch.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ define(['backbone'], function(Backbone) {
2424

2525
GIVENNAME: {
2626
required: function () {return this.dispatchDetailsRequired},
27-
pattern: 'wwdash',
27+
pattern: 'wwsdash',
2828
},
2929

3030
FAMILYNAME: {
3131
required: function () {return this.dispatchDetailsRequired},
32-
pattern: 'wwdash',
32+
pattern: 'wwsdash',
3333
},
3434

3535
PHONENUMBER: {

client/src/js/modules/shipment/views/dispatch.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,7 @@ define(['marionette', 'views/form',
276276
this.dispatchCountry = this.ui.country.val()
277277
this.ui.courierSection.show();
278278
this.ui.dispatchDetails.show();
279+
this.model.visitRequired = true
279280
this.model.dispatchDetailsRequired = true
280281
this.ui.submit.show();
281282
if (
@@ -334,6 +335,7 @@ define(['marionette', 'views/form',
334335
){
335336
this.model.visitRequired = false
336337
this.ui.dispatchDetails.hide()
338+
this.model.dispatchDetailsRequired = false
337339
this.ui.submit.text("Proceed")
338340
this.ui.shippingadvice.html("<mark>On clicking 'Proceed' you will be redirected to the new Diamond shipping service to book the shipment. Please ensure all stages of the form are completed.</mark><br /><br />")
339341
}

client/src/js/modules/types/mx/shipment/views/mx-container-add.vue

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,9 @@
9494
v-model="QUEUEFORUDC"
9595
name="Queue For UDC"
9696
/>
97+
<span v-else-if="shippingSafetyLevel === null">
98+
Cannot queue container until shipment safety level is set
99+
</span>
97100
<span v-else>
98101
Cannot queue containers in {{ shippingSafetyLevel }} shipments
99102
</span>
@@ -663,7 +666,7 @@ export default {
663666
664667
await this.$store.dispatch('samples/save', containerId)
665668
this.$store.commit('notifications/addNotification', {
666-
message: `New Container created, click <a href=/containers/cid/${containerId}>here</a> to view it`,
669+
message: `New Container created, click <a href=/containers/cid/${containerId}>here</a> to view it. Remember to add sequences and PDBs if needed.`,
667670
level: 'info',
668671
persist: true
669672
})

client/src/js/modules/types/mx/shipment/views/mx-container-view.vue

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,9 @@
106106
@click="onUnQueueContainer"
107107
><i class="fa fa-times" /> Unqueue</a>
108108
</span>
109+
<span v-else-if="shippingSafetyLevel === null">
110+
Cannot queue container until shipment safety level is set
111+
</span>
109112
<span v-else-if="shippingSafetyLevel != 'Green'">
110113
Cannot queue containers in {{ shippingSafetyLevel }} shipments
111114
</span>

0 commit comments

Comments
 (0)