Skip to content

Commit 5af24e5

Browse files
Support BIGINT Primary Keys
Original PR: LabKey/platform#6911
1 parent c69facc commit 5af24e5

6 files changed

Lines changed: 20 additions & 13 deletions

File tree

studydesign/src/org/labkey/studydesign/model/AssaySpecimenConfigImpl.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -251,11 +251,11 @@ public static AssaySpecimenConfigImpl fromJSON(@NotNull JSONObject o, Container
251251

252252
if (o.has("RowId"))
253253
assay.setRowId(o.getInt("RowId"));
254-
if (o.has("DataSet") && o.get("DataSet") instanceof Integer && o.getInt("DataSet") > 0)
254+
if (o.has("DataSet") && (o.get("DataSet") instanceof Integer || o.get("DataSet") instanceof Long) && o.getInt("DataSet") > 0)
255255
assay.setDataset(o.getInt("DataSet"));
256256
if (o.has("Source") && !StringUtils.isEmpty(o.getString("Source")))
257257
assay.setSource(o.getString("Source"));
258-
if (o.has("LocationId") && o.get("LocationId") instanceof Integer && o.getInt("LocationId") > 0)
258+
if (o.has("LocationId") && (o.get("LocationId") instanceof Integer || o.get("LocationId") instanceof Long) && o.getInt("LocationId") > 0)
259259
assay.setLocationId(o.getInt("LocationId"));
260260
if (o.has("TubeType") && !StringUtils.isEmpty(o.getString("TubeType")))
261261
assay.setTubeType(o.getString("TubeType"));
@@ -267,9 +267,9 @@ public static AssaySpecimenConfigImpl fromJSON(@NotNull JSONObject o, Container
267267
assay.setSampleQuantity(o.getDouble("SampleQuantity"));
268268
if (o.has("SampleUnits") && !StringUtils.isEmpty(o.getString("SampleUnits")))
269269
assay.setSampleUnits(o.getString("SampleUnits"));
270-
if (o.has("PrimaryTypeId") && o.get("PrimaryTypeId") instanceof Integer)
270+
if (o.has("PrimaryTypeId") && (o.get("PrimaryTypeId") instanceof Integer || o.get("PrimaryTypeId") instanceof Long))
271271
assay.setPrimaryTypeId(o.getInt("PrimaryTypeId"));
272-
if (o.has("DerivativeTypeId") && o.get("DerivativeTypeId") instanceof Integer)
272+
if (o.has("DerivativeTypeId") && (o.get("DerivativeTypeId") instanceof Integer || o.get("DerivativeTypeId") instanceof Long))
273273
assay.setDerivativeTypeId(o.getInt("DerivativeTypeId"));
274274

275275
JSONArray visitMapJSON = o.optJSONArray("VisitMap");

studydesign/src/org/labkey/studydesign/model/TreatmentImpl.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
import java.util.List;
3030
import java.util.Map;
3131

32+
import static org.labkey.api.exp.api.ExperimentService.asInteger;
33+
3234
/**
3335
* User: cnathe
3436
* Date: 12/27/13
@@ -168,8 +170,8 @@ public static TreatmentImpl fromJSON(@NotNull JSONObject o, Container container)
168170

169171
if (o.has("RowId"))
170172
{
171-
if (o.get("RowId") instanceof Integer)
172-
treatment.setRowId(o.getInt("RowId"));
173+
if (o.get("RowId") instanceof Integer || o.get("RowId") instanceof Integer)
174+
treatment.setRowId(asInteger("RowId"));
173175
else
174176
treatment.setTempRowId(o.getString("RowId"));
175177
}

studydesign/src/org/labkey/studydesign/model/TreatmentManager.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@
6565
import java.util.Map;
6666
import java.util.Set;
6767

68+
import static org.labkey.api.exp.api.ExperimentService.asInteger;
69+
6870
/**
6971
* Created by cnathe on 1/24/14.
7072
*/
@@ -456,7 +458,7 @@ public Integer saveStudyDesignRow(Container container, User user, TableInfo tabl
456458
throw errors.getLastRowError();
457459

458460
if (updatedRows.size() == 1)
459-
return (Integer) updatedRows.get(0).get(pkColName);
461+
return asInteger(updatedRows.get(0).get(pkColName));
460462
}
461463

462464
return null;

studydesign/src/org/labkey/studydesign/model/TreatmentProductImpl.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
import java.util.HashMap;
2525
import java.util.Map;
2626

27+
import static org.labkey.api.exp.api.ExperimentService.asInteger;
28+
2729
/**
2830
* User: cnathe
2931
* Date: 12/27/13
@@ -190,10 +192,10 @@ public static TreatmentProductImpl fromJSON(@NotNull JSONObject o, Container con
190192
//treatmentProduct.setDose(o.getString("Dose"));
191193
//treatmentProduct.setRoute(o.getString("Route"));
192194
treatmentProduct.setContainer(container);
193-
if (o.has("ProductId") && o.get("ProductId") instanceof Integer productId)
194-
treatmentProduct.setProductId(productId);
195-
if (o.has("TreatmentId") && o.get("TreatmentId") instanceof Integer treatmentId)
196-
treatmentProduct.setTreatmentId(treatmentId);
195+
if (o.has("ProductId") && (o.get("ProductId") instanceof Integer || o.get("ProductId") instanceof Long))
196+
treatmentProduct.setProductId(asInteger(o.get("ProductId")));
197+
if (o.has("TreatmentId") && (o.get("TreatmentId") instanceof Integer || o.get("TreatmentId") instanceof Long))
198+
treatmentProduct.setTreatmentId(asInteger(o.get("TreatmentId")));
197199
if (o.has("RowId"))
198200
treatmentProduct.setRowId(o.getInt("RowId"));
199201
if (o.has("DoseAndRoute"))

studydesign/src/org/labkey/studydesign/model/TreatmentVisitMapImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ public static TreatmentVisitMapImpl fromJSON(@NotNull JSONObject o)
110110
visitMap.setCohortId(o.getInt("CohortId"));
111111
if (o.has("TreatmentId"))
112112
{
113-
if (o.get("TreatmentId") instanceof Integer)
113+
if (o.get("TreatmentId") instanceof Integer || o.get("TreatmentId") instanceof Long)
114114
visitMap.setTreatmentId(o.getInt("TreatmentId"));
115115
else
116116
visitMap.setTempTreatmentId(o.getString("TreatmentId"));

studydesign/src/org/labkey/studydesign/view/immunizationScheduleWebpart.jsp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
<%@ page import="java.util.HashMap" %>
3535
<%@ page import="java.util.List" %>
3636
<%@ page import="java.util.Map" %>
37+
<%@ page import="org.labkey.api.collections.IntHashMap" %>
3738
<%@ page extends="org.labkey.api.jsp.JspBase" %>
3839
<%!
3940
@Override
@@ -113,7 +114,7 @@
113114
{
114115
index++;
115116
List<? extends TreatmentVisitMap> mapping = TreatmentManager.getInstance().getStudyTreatmentVisitMap(c, cohort.getRowId());
116-
Map<Integer, Integer> visitTreatments = new HashMap<>();
117+
Map<Integer, Integer> visitTreatments = new IntHashMap<>();
117118
for (TreatmentVisitMap treatmentVisitMap : mapping)
118119
{
119120
visitTreatments.put(treatmentVisitMap.getVisitId(), treatmentVisitMap.getTreatmentId());

0 commit comments

Comments
 (0)