From 0b2948f105d9f9b60d643307791e4b03087ca696 Mon Sep 17 00:00:00 2001 From: Mark Williams Date: Fri, 5 Jun 2026 10:35:22 +0100 Subject: [PATCH] LIMS-2208: Show dose on UDC strategy results --- api/src/Page/DC.php | 3 +- client/src/css/partials/_content.scss | 5 ++++ client/src/js/templates/dc/dc_strategy.html | 31 ++++++++++++++++----- 3 files changed, 31 insertions(+), 8 deletions(-) diff --git a/api/src/Page/DC.php b/api/src/Page/DC.php index a9090d59a..546fe9faf 100644 --- a/api/src/Page/DC.php +++ b/api/src/Page/DC.php @@ -1171,7 +1171,7 @@ function _dc_strategies($id) global $strat_align; $rows = $this->db->pq("SELECT s.programversion, s.comments, - st.rankingresolution as rankres, + st.rankingresolution as rankres, sssw.dosetotal, st.screeningstrategyid, ssw.wedgenumber, ssw.chi, ssw.kappa, ssw.phi, ssw.comments as sswcomments, sssw.subwedgenumber, sssw.axisstart as st, sssw.exposuretime as time, sssw.transmission as tran, sssw.oscillationrange as oscran, sssw.resolution as res, sssw.numberofimages as nimg, sssw.rotationaxis, @@ -1199,6 +1199,7 @@ function _dc_strategies($id) $output[$t] = array('CELL' => array(), 'STRATS' => array()); $r['ATRAN'] = $r['TRAN'] / 100.0 * $r['DCTRN']; + $r['ROTATION'] = $r['NIMG'] * $r['OSCRAN']; foreach ($nf as $nff => $cols) { foreach ($cols as $c) { $r[$c] = number_format($r[$c], $nff); diff --git a/client/src/css/partials/_content.scss b/client/src/css/partials/_content.scss index d1309b8ed..fca774e34 100644 --- a/client/src/css/partials/_content.scss +++ b/client/src/css/partials/_content.scss @@ -866,6 +866,11 @@ li:last-child .visit_users { table { tr { cursor: pointer; + + &.highlight { + background-color: #f7f7f7; + } + &:hover { background: $content-sub-hover-background; } diff --git a/client/src/js/templates/dc/dc_strategy.html b/client/src/js/templates/dc/dc_strategy.html index ea87dcabc..bb99aa7e4 100644 --- a/client/src/js/templates/dc/dc_strategy.html +++ b/client/src/js/templates/dc/dc_strategy.html @@ -15,6 +15,12 @@

<%-TYPE%>

var showRankingRes = _.some(STRATS, function(r) { return r.RANKRES && parseFloat(r.RANKRES) !== 0 }) + var showExposure = _.some(STRATS, function(r) { + return r.TIME && parseFloat(r.TIME) !== 0 + }) + var showDose = _.some(STRATS, function(r) { + return r.DOSETOTAL && parseFloat(r.DOSETOTAL) !== 0 + }) var displayAxis = "Axis" if (STRATS && STRATS.length > 0 && STRATS[0].ROTATIONAXIS) { @@ -66,15 +72,25 @@

<%-TYPE%>

<% if (showKappa) { %> Kappa (°) <% } %> Res (Å) <% if (showRankingRes) { %> Ranking Res (Å) <% } %> - Rel Trn (%) - Abs Trn (%) - Exposure (s) + <% if (showDose) { %> Max <% } %>Transmission (%) + <% if (showExposure) { %> Exposure (s) <% } %> No. Images + Total Rotation (°) + <% if (showDose) { %> Dose (MGy) <% } %> - <% _.each(STRATS, function(r, i) { %> - + <% + var highlight = true; + var lastId = null; + + _.each(STRATS, function(r, i) { + if (r.SCREENINGSTRATEGYID !== lastId) { + highlight = !highlight; + lastId = r.SCREENINGSTRATEGYID; + } + %> + <%-r.COM%> <%-r.COMMENTS%> <%-r.ST%> @@ -84,10 +100,11 @@

<%-TYPE%>

<% if (showKappa) { %> <%-r.KAPPA%> <% } %> <%-r.RES%> <% if (showRankingRes) { %> <%-r.RANKRES%> <% } %> - <%-r.TRAN%> <%-r.ATRAN%> - <%-r.TIME%> + <% if (showExposure) { %> <%-r.TIME%> <% } %> <%-r.NIMG%> + <%-r.ROTATION%> + <% if (showDose) { %> <%-r.DOSETOTAL%> <% } %> <% }) %>