diff --git a/src/app/document-detail/document-detail.component.ts b/src/app/document-detail/document-detail.component.ts
index 4b1f05702d03cae250f8b1e8b71a4a5163f434af..2c1101f268f9f5334a1214c45c944e801184ca9f 100644
--- a/src/app/document-detail/document-detail.component.ts
+++ b/src/app/document-detail/document-detail.component.ts
@@ -220,6 +220,7 @@ export class DocumentDetailComponent implements OnInit {
const currentFinding = ({
studyid: srDomainFinding.studyid,
domain: srDomainFinding.domain,
+ section: section.name,
srseq: srDomainFinding.srseq,
srrisk: srDomainFinding.srrisk,
@@ -255,7 +256,7 @@ export class DocumentDetailComponent implements OnInit {
srDomainId: srDomainFinding.srDomainId,
findingId: srDomainFinding.findingId,
status: srDomainFinding.status,
- section: section.name,
+ sectionId: section.id,
documentId: section.annotations.documentId
});
@@ -274,8 +275,8 @@ export class DocumentDetailComponent implements OnInit {
});
});
- if (section.annotations.srdomainfindings) {
- section.annotations.srdomainfindings.forEach(newFinding => {
+ if (section.annotations.srDomainFindings) {
+ section.annotations.srDomainFindings.forEach(newFinding => {
srDomainFindingsGlobal.push(newFinding);
});
}
@@ -445,11 +446,11 @@ export class DocumentDetailComponent implements OnInit {
}
updateFinding(data) {
- const id = +this.route.snapshot.paramMap.get('id');
- if (data.status == Status.ADDED) {
- this.documentService.addFinding(id, data).subscribe(_ => { });
+ if (data.status == Status.NEW) {
+ data.status = Status.ADDED
+ this.reportService.addFinding(data.sectionId, data).subscribe(_ => { }, error => { data.status = Status.NEW });
} else {
- this.documentService.updateFinding(id, data)
+ this.reportService.updateFinding(data.sectionId, data)
.subscribe(text => {
});
}
diff --git a/src/app/documents/documents.component.ts b/src/app/documents/documents.component.ts
index ab0feb6265e6d58ec7740e82af6f9cd6f95e5232..759b5be373ad20cd06f57778e0eb4c86d3c893a5 100644
--- a/src/app/documents/documents.component.ts
+++ b/src/app/documents/documents.component.ts
@@ -82,10 +82,10 @@ export class DocumentsComponent implements OnInit {
paginationSize: 20,
paginationSizeSelector: [10, 20, 40],
columns: [
- { title: 'Name', field: 'name', headerSort: true, headerFilter: true },
- { title: 'File Name', field: 'fileName', headerSort: true, headerFilter: true },
- { title: 'Process Date', field: 'processDate', headerSort: true, headerFilter: true },
- { title: 'Status', field: 'status', headerSort: true, headerFilter: true },
+ { title: 'Name', field: 'name', headerFilter: true },
+ { title: 'File Name', field: 'fileName', headerFilter: true },
+ { title: 'Process Date', field: 'processDate', headerFilter: true },
+ { title: 'Status', field: 'status', headerFilter: true },
{
title: '', width: 5, hozAlign: 'center', headerSort: false,
cellClick: function (e, cell) {
diff --git a/src/app/model/srdomainfinding.ts b/src/app/model/srdomainfinding.ts
index 7f6dfebd42a5a2bb683bfbcc640ea575b8106b26..56897dd49c701fca40f835d8d21f3aed8102c613 100644
--- a/src/app/model/srdomainfinding.ts
+++ b/src/app/model/srdomainfinding.ts
@@ -1,34 +1,35 @@
export class SRDomainFinding {
- studyid: String;
- domain: String;
- section: String;
- srseq: String;
- srrisk: String;
- spgrpcd: String;
- srgrpnam: String;;
- srgrpdos: String;
- srsex: String;
- srstdy: String;
- srstphse: String;
- srobstdy: String;
- srendy: String;
- srenphse: String;
- srobendy: String;
- srdomain: String;
- srspec: String;
- srtstcd: String;
- srfndg: String;
- srores: String;
- srobsv: String;
- srobsq: String;
- srsev: String;
- srpcnt: String;
- srsigf: String;
- srtrtef: String;
- srcomnt: String;
+ studyid: string;
+ domain: string;
+ section: string;
+ srseq: string;
+ srrisk: string;
+ spgrpcd: string;
+ srgrpnam: string;;
+ srgrpdos: string;
+ srsex: string;
+ srstdy: string;
+ srstphse: string;
+ srobstdy: string;
+ srendy: string;
+ srenphse: string;
+ srobendy: string;
+ srdomain: string;
+ srspec: string;
+ srtstcd: string;
+ srfndg: string;
+ srores: string;
+ srobsv: string;
+ srobsq: string;
+ srsev: string;
+ srpcnt: string;
+ srsigf: string;
+ srtrtef: string;
+ srcomnt: string;
//other data
- export: String;
+ export: string;
srDomainId: number;
findingId: number;
status: string;
+ sectionId: number;
}
diff --git a/src/app/model/srdomainfindingstatus.ts b/src/app/model/srdomainfindingstatus.ts
index 85adb548e27399bb9715964b7f2f38414b681e24..5e4c6e249ede8a6110238382786b1bec60f87835 100644
--- a/src/app/model/srdomainfindingstatus.ts
+++ b/src/app/model/srdomainfindingstatus.ts
@@ -2,5 +2,6 @@ export enum Status {
NON_CURATED = "non_curated",
REJECTED = "rejected",
ACCEPTED = "accepted",
- ADDED = "added"
+ ADDED = "added",
+ NEW = "new"
}
\ No newline at end of file
diff --git a/src/app/pretoxsentences-tabulator/pretoxsentences-tabulator.component.ts b/src/app/pretoxsentences-tabulator/pretoxsentences-tabulator.component.ts
index cf298f2012258751f31d6a58a06f89aad3b58e3f..1ee9bad611e5791e38833b01685da7fd26e1ff79 100644
--- a/src/app/pretoxsentences-tabulator/pretoxsentences-tabulator.component.ts
+++ b/src/app/pretoxsentences-tabulator/pretoxsentences-tabulator.component.ts
@@ -199,11 +199,11 @@ export class PretoxsentencesTabulatorComponent implements OnInit {
{
title: 'Section', field: 'section', cssClass: "tabulator-cell non-editable-cell",
},
- { title: 'Finding', field: 'srfndg', headerSort: true, headerFilter: true },//SRFNDG
+ { title: 'Finding', field: 'srfndg', headerFilter: true },//SRFNDG
//{title: 'Finding (Free Text)', field: 'srores', headerSort: true , headerFilter: false},//SRORES
- { title: 'Test Name', field: 'srtstcd', headerSort: true, headerFilter: true },//SRTSTCD
+ { title: 'Test Name', field: 'srtstcd', headerFilter: true },//SRTSTCD
{
- title: 'Manifestation', field: 'srobsv', headerSort: true, headerFilter: true, editor: 'list', editable: false, editorParams: {
+ title: 'Manifestation', field: 'srobsv', headerFilter: true, editor: 'list', editable: false, editorParams: {
values: [
'I',
'D',
@@ -214,16 +214,16 @@ export class PretoxsentencesTabulatorComponent implements OnInit {
}
},//SROBSV
{
- title: 'Domain', field: 'srdomain', headerSort: true, headerFilter: true, editor: 'list', editable: false, editorParams: {
+ title: 'Domain', field: 'srdomain', headerFilter: true, editor: 'list', editable: false, editorParams: {
values: [
'BW', 'BG', 'CL', 'CV', 'DD', 'EG', 'FW', 'LB', 'MA', 'MI', 'OM', 'PP', 'RE', 'TF', 'VS'
],
autocomplete: true
}
},//SRDOMAIN
- { title: 'Specimen', field: 'srspec', headerSort: true, headerFilter: true },//SRSPEC
+ { title: 'Specimen', field: 'srspec', headerFilter: true },//SRSPEC
{
- title: 'Sex', field: 'srsex', headerSort: true, headerFilter: true, editor: 'list', editable: false, editorParams: {
+ title: 'Sex', field: 'srsex', headerFilter: true, editor: 'list', editable: false, editorParams: {
values: [
'F',
'M',
@@ -232,10 +232,10 @@ export class PretoxsentencesTabulatorComponent implements OnInit {
autocomplete: true
}
},//SRSEX
- { title: 'Dose', field: 'srgrpdos', headerSort: true, headerFilter: true },//SRGRPDOS
- { title: 'Group', field: 'spgrpcd', headerSort: true, headerFilter: true },//SPGRPCD
+ { title: 'Dose', field: 'srgrpdos', headerFilter: true },//SRGRPDOS
+ { title: 'Group', field: 'spgrpcd', headerFilter: true },//SPGRPCD
{
- title: 'Treatment Related?', field: 'srtrtef', headerSort: true, headerFilter: true, editor: 'list', editable: false, editorParams: {
+ title: 'Treatment Related?', field: 'srtrtef', headerFilter: true, editor: 'list', editable: false, editorParams: {
values: [
'Y',
'N',
diff --git a/src/app/reports/reports.component.ts b/src/app/reports/reports.component.ts
index 6e7459726fe92babf3728b2aa1cd11095d615675..81d9c1a8df124bbaa24cdd81e136aef2e2f57e92 100644
--- a/src/app/reports/reports.component.ts
+++ b/src/app/reports/reports.component.ts
@@ -169,9 +169,9 @@ export class ReportsComponent implements OnInit {
return '
';
}
},
- { title: 'Name', field: 'fileName', headerSort: true, headerFilter: true },
- { title: 'Upload Date', field: 'uploadDate', headerSort: true, headerFilter: true },
- { title: 'Status', field: 'status', headerSort: true, headerFilter: true },
+ { title: 'Name', field: 'fileName', headerFilter: true },
+ { title: 'Upload Date', field: 'uploadDate', headerFilter: true },
+ { title: 'Status', field: 'status', headerFilter: true },
{
title: '', width: 5, hozAlign: 'center', headerSort: false,
cellClick: function (e, cell) {
diff --git a/src/app/services/document.service.ts b/src/app/services/document.service.ts
index 6f91a5baa47553f0890c0df1d6a38765e9c752d7..42391abf4a3cdb711e68aa1df55e9c19582fbb3b 100644
--- a/src/app/services/document.service.ts
+++ b/src/app/services/document.service.ts
@@ -7,7 +7,6 @@ import { catchError, map, tap } from 'rxjs/operators';
import { Finding } from '../model/finding';
import { environment } from '../../environments/environment';
import { DocumentTracking } from '../model/document-tracking';
-import { SRDomainFinding } from '../model/srdomainfinding';
import { SRDomainDocument } from '../model/srdomaindocument';
const httpOptions = {
headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' })
@@ -97,35 +96,6 @@ export class DocumentService {
);
}
- /** Update Finding */
- updateFinding(id: number, finding: SRDomainFinding): any {
- const url = `${this.documentsUrl}${id}/srfinding/update/`;
- return this.http.put(url, finding).pipe(
- tap(_ => this.log(`updateFinding`)),
- catchError(this.handleError('updateFinding'))
- );
- /*return this.http.post(url, finding).subscribe({
- next: data => {
- alert(1);
- alert(data);
- },
- error: error => {
- //this.errorMessage = error.message;
- console.error('There was an error!', error);
- }
- })*/
-
- }
-
- addFinding(id: number, finding: SRDomainFinding): any {
- const url = `${this.documentsUrl}${id}/srfinding/add/`;
- return this.http.put(url, finding).pipe(
- tap(_ => this.log(`addFinding`)),
- catchError(this.handleError('addFinding'))
- );
- }
-
-
/** show history tracking */
getHistory(id: number): Observable {
const url = `${this.documentsUrl}${id}/tracking`;
diff --git a/src/app/services/login.service.ts b/src/app/services/login.service.ts
index ed8a6e2572f01e255ce9cc1d9eabf00085cfba3d..6fa98bca99a5acbb57c0f822fc7d6fbb6a6f7057 100644
--- a/src/app/services/login.service.ts
+++ b/src/app/services/login.service.ts
@@ -13,8 +13,8 @@ export class LoginService {
USER_NAME_SESSION_ATTRIBUTE_NAME = 'authenticatedUser';
USER_BASIC_TOKEN_ATTRIBUTE_NAME = 'tokenUser';
- public username: String;
- public password: String;
+ public username: string;
+ public password: string;
public isLogged: boolean;
diff --git a/src/app/services/report.service.ts b/src/app/services/report.service.ts
index 55db43b3786173266f1415e8cba4223d4b011b03..538f5de082cad5834986d5dcbb49f59d66013a42 100644
--- a/src/app/services/report.service.ts
+++ b/src/app/services/report.service.ts
@@ -7,6 +7,7 @@ import { Finding } from '../model/finding';
import { Annotation } from '../model/annotation';
import { Report } from '../model/report';
import { environment } from '../../environments/environment';
+import { SRDomainFinding } from '../model/srdomainfinding';
const httpOptions = {
headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' })
};
@@ -132,6 +133,22 @@ export class ReportService {
);
}
+ updateFinding(sectionId: number, finding: SRDomainFinding): any {
+ const url = `${this.reportsUrl}${sectionId}/srfinding/update/`;
+ return this.http.put(url, finding).pipe(
+ tap(_ => this.log(`updateFinding`)),
+ catchError(this.handleError('updateFinding'))
+ );
+ }
+
+ addFinding(sectionId: number, finding: SRDomainFinding): any {
+ const url = `${this.reportsUrl}${sectionId}/srfinding/add/`;
+ return this.http.put(url, finding).pipe(
+ tap(_ => this.log(`addFinding`)),
+ catchError(this.handleError('addFinding'))
+ );
+ }
+
/** Log a DocumentService message with the MessageService */
private log(message: string) {
this.messageService.add(`DocumentService: ${message}`);
diff --git a/src/app/srdomaintemplate-tabulator/srdomaintemplate-tabulator.component.ts b/src/app/srdomaintemplate-tabulator/srdomaintemplate-tabulator.component.ts
index 3c79d23ea8d1498184db3c07563f777079f9586c..68e938dbef48d1fe876990db1575e4cb043699bd 100644
--- a/src/app/srdomaintemplate-tabulator/srdomaintemplate-tabulator.component.ts
+++ b/src/app/srdomaintemplate-tabulator/srdomaintemplate-tabulator.component.ts
@@ -16,7 +16,8 @@ import { Section } from '../model/section';
})
export class SrdomaintemplateTabulatorComponent implements OnInit {
- currentSection: string;
+ currentSection: Section;
+ sections: Section[];
tableData: any[] = [];
table: Tabulator;
originalData: any[] = [];
@@ -66,15 +67,17 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
}
loadData(parentComponent, update) {
- this.currentSection = parentComponent.currentSection && parentComponent.currentSection.name;
+ this.currentSection = parentComponent.currentSection;
this.report = parentComponent.report;
this.tableData = parentComponent.tableDataSRDomainTemplate;
this.originalData = cloneDeep(parentComponent.tableDataSRDomainTemplate);
+ this.sections = parentComponent.sections;
if (update) {
this.table.setData(this.tableData);
+ this.enableAddFindingEvent.emit(true);
} else {
this.drawTable(this);
- }
+ }
}
editCheck(cell) {
@@ -86,7 +89,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
}
paramLookupGeneric(cell) {
- var v = []
+ var values = []
var field = cell.getColumn().getField();
var rowNum = cell.getRow().getData().findingId;
var originalValue = rowNum < this.originalData.length ? this.originalData[rowNum - 1][field] : null;
@@ -105,13 +108,19 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
codeLists = this.cdiscSendCTService.finding_list;
} else if (field == "srobsv") { // manifestation
constantValues = this.cdiscSendCTService.manifestation_finding_list;
+ } else if (field == "section") {
+ values = this.report.sections.map(section => section.name);
+ }
+
+ if (values[0] != undefined && values.includes(originalValue)) {
+ originalIsCodedValue = true;
}
if (codeLists != undefined && codeLists[0] != undefined) {
codeLists.forEach(codeList => {
codeList.codedValues.forEach(codedValue => {
originalIsCodedValue = originalValue == codedValue.preferredTerm;
- v.push({
+ values.push({
label: codedValue.preferredTerm,
value: codedValue.preferredTerm,
name: codedValue.name,
@@ -124,7 +133,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
if (constantValues[0] != undefined) {
constantValues.forEach(value => {
originalIsCodedValue = originalValue == value;
- v.push({
+ values.push({
label: value,
value: value,
name: value,
@@ -133,7 +142,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
})
}
- if (originalValue != null && originalValue != undefined && !originalIsCodedValue) v.push({
+ if (originalValue != null && originalValue != undefined && !originalIsCodedValue) values.push({
label: originalValue,
value: originalValue,
name: originalValue,
@@ -143,7 +152,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
return {
autocomplete: true,
freetext: true,
- values: v,
+ values: values,
sort: "asc",
listOnEmpty: true,
itemFormatter: function (label, value, item, element) {
@@ -158,24 +167,10 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
}
}
- paramLookupStudyDomain(cell) {
- return this.paramLookupGeneric(cell);
- }
-
- paramLookupManifestation(cell) {
- return this.paramLookupGeneric(cell);
- }
-
- paramLookupStudyTest(cell) {
- return this.paramLookupGeneric(cell);
- }
-
- paramLookupSpecies(cell) {
- return this.paramLookupGeneric(cell);
- }
-
- paramLookupFinding(cell) {
- return this.paramLookupGeneric(cell);
+ onSectionChange(cell) {
+ const cellData = cell.getRow().getData();
+ const selectedSection = this.sections.find(section => section.name == cellData.section);
+ cellData.sectionId = selectedSection.id;
}
onStudyDomainChange(cell) {
@@ -191,14 +186,16 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
newFinding.studyid = this.report.id + "_" + this.report.fileName;
newFinding.srDomainId = findingId;
newFinding.findingId = findingId;
- newFinding.status = Status.ADDED;
- newFinding.section = this.currentSection;
+ newFinding.status = Status.NEW;
+ newFinding.section = this.currentSection && this.currentSection.name;
+ newFinding.sectionId = this.currentSection && this.currentSection.id;
this.tableData.push(newFinding);
this.table.addRow(newFinding);
}
private drawTable(pretoxSRDomainTemplateTab): void {
+ const newStatus = Status.NEW;
const addedStatus = Status.ADDED;
const acceptedStatus = Status.ACCEPTED;
const rejectedStatus = Status.REJECTED
@@ -215,7 +212,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
title: '', width: 5, hozAlign: 'center', headerSort: false, cssClass: "tabulator-cell non-editable-cell",
cellClick: function (e, cell) {
var data = cell.getRow().getData();
- if (data.status != addedStatus) {
+ if (data.status != addedStatus || data.status != newStatus) {
if (data.status == acceptedStatus) {
data.status = rejectedStatus;
cell.getElement().innerHTML = '
';
@@ -232,7 +229,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
},
formatter: function (cell, formatterParams, onRendered) {
var data = cell.getRow().getData();
- if (data.status == addedStatus) {
+ if (data.status == addedStatus || data.status == newStatus) {
return '
';
} else if (data.status == acceptedStatus) {
return '
';
@@ -247,7 +244,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
title: '', width: 5, hozAlign: 'center', headerSort: false, cssClass: "tabulator-cell non-editable-cell",
cellClick: function (e, cell) {
var data = cell.getRow().getData();
- if (data.status != addedStatus) {
+ if (data.status != addedStatus || data.status != newStatus) {
if (data.export == undefined || data.export == true) {
data.export = false;
cell.getElement().innerHTML = '
';
@@ -261,7 +258,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
},
formatter: function (cell, formatterParams, onRendered) {
var data = cell.getRow().getData();
- if (data.status == addedStatus) {
+ if (data.status == addedStatus || data.status == newStatus) {
return '
';
}
@@ -275,17 +272,18 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
{
title: '', width: 5, hozAlign: 'center', headerSort: false, cssClass: "tabulator-cell non-editable-cell",
cellClick: function (e, cell) {
- if (cell.getRow().getData().status != addedStatus && cell.getRow().getData().selected != true) {
- cell.getRow().getData().selected = true;
+ const cellData = cell.getRow().getData();
+ if (cellData.status != addedStatus && cellData.status != newStatus && cellData.selected != true) {
+ cellData.selected = true;
cell.getRow().getElement().className = "tabulator-row evidence-selected";
pretoxSRDomainTemplateTab.rowClickEventSRDomainTemplateEvidence.emit(cell.getData());
} else {
- cell.getRow().getData().selected = false;
+ cellData.selected = false;
cell.getRow().getElement().className = "tabulator-row";
}
},
formatter: function (cell, formatterParams, onRendered) {
- if (cell.getRow().getData().status == addedStatus) {
+ if (cell.getRow().getData().status == addedStatus || cell.getRow().getData().status == newStatus) {
return '
';
}
@@ -331,7 +329,7 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
cellClick: function (e, cell) {
var row = cell.getRow();
var data = cell.getRow().getData();
- if (data.inEdition == true) {
+ if (data.inEdition == true && data.sectionId != undefined) {
data.inEdition = false;
pretoxSRDomainTemplateTab.report.findingInEdition = -1;
pretoxSRDomainTemplateTab.enableAddFindingEvent.emit(true);
@@ -352,42 +350,43 @@ export class SrdomaintemplateTabulatorComponent implements OnInit {
title: '', width: 5, field: 'srDomainId', cssClass: "tabulator-cell non-editable-cell",
},
{
- title: 'Section', field: 'section', cssClass: "tabulator-cell non-editable-cell",
+ title: 'Section', field: 'section', cssClass: "tabulator-cell non-editable-cell", editor: 'list', editable: this.editCheck.bind(this),
+ editorParams: this.paramLookupGeneric.bind(this), sorter: "string", cellEdited: this.onSectionChange.bind(this)
},
{
- title: 'Finding', field: 'srfndg', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'list', editable: this.editCheck.bind(this),
- editorParams: this.paramLookupFinding.bind(this), sorter: "string", formatter: this.ellipsisFormatter
+ title: 'Finding', field: 'srfndg', cssClass: "tabulator-cell non-editable-cell", editor: 'list', editable: this.editCheck.bind(this),
+ editorParams: this.paramLookupGeneric.bind(this), sorter: "string", formatter: this.ellipsisFormatter
},
{
- title: 'Test Name', field: 'srtstcd', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'list', editable: this.editCheck.bind(this),
- editorParams: this.paramLookupStudyTest.bind(this), sorter: "string", formatter: this.ellipsisFormatter
+ title: 'Test Name', field: 'srtstcd', cssClass: "tabulator-cell non-editable-cell", editor: 'list', editable: this.editCheck.bind(this),
+ editorParams: this.paramLookupGeneric.bind(this), sorter: "string", formatter: this.ellipsisFormatter
},
{
- title: 'Manifestation', field: 'srobsv', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editable: this.editCheck.bind(this), editor: 'list',
- editorParams: this.paramLookupManifestation.bind(this)
+ title: 'Manifestation', field: 'srobsv', cssClass: "tabulator-cell non-editable-cell", editable: this.editCheck.bind(this), editor: 'list',
+ editorParams: this.paramLookupGeneric.bind(this)
},
{
- title: 'Domain', field: 'srdomain', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'list', editable: this.editCheck.bind(this),
- editorParams: this.paramLookupStudyDomain.bind(this), sorter: "string", formatter: this.ellipsisFormatter,
+ title: 'Domain', field: 'srdomain', cssClass: "tabulator-cell non-editable-cell", editor: 'list', editable: this.editCheck.bind(this),
+ editorParams: this.paramLookupGeneric.bind(this), sorter: "string", formatter: this.ellipsisFormatter,
cellEdited: this.onStudyDomainChange.bind(this)
},
{
- title: 'Specimen', field: 'srspec', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'list', editable: this.editCheck.bind(this),
- editorParams: this.paramLookupSpecies.bind(this), sorter: "string", formatter: this.ellipsisFormatter
+ title: 'Specimen', field: 'srspec', cssClass: "tabulator-cell non-editable-cell", editor: 'list', editable: this.editCheck.bind(this),
+ editorParams: this.paramLookupGeneric.bind(this), sorter: "string", formatter: this.ellipsisFormatter
},
{
- title: 'Sex', field: 'srsex', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'list', editable: this.editCheck.bind(this), editorParams: {
+ title: 'Sex', field: 'srsex', cssClass: "tabulator-cell non-editable-cell", editor: 'list', editable: this.editCheck.bind(this), editorParams: {
values: ['Female', 'Male', 'Both']
}
},
{
- title: 'Dose', field: 'srgrpdos', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'input', editable: this.editCheck.bind(this)
+ title: 'Dose', field: 'srgrpdos', cssClass: "tabulator-cell non-editable-cell", editor: 'input', editable: this.editCheck.bind(this)
},
{
- title: 'Group', field: 'spgrpcd', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'input', editable: this.editCheck.bind(this),
+ title: 'Group', field: 'spgrpcd', cssClass: "tabulator-cell non-editable-cell", editor: 'input', editable: this.editCheck.bind(this),
},
{
- title: 'Treatment Related?', field: 'srtrtef', cssClass: "tabulator-cell non-editable-cell", headerSort: true, editor: 'list', editable: this.editCheck.bind(this), editorParams: {
+ title: 'Treatment Related?', field: 'srtrtef', cssClass: "tabulator-cell non-editable-cell", editor: 'list', editable: this.editCheck.bind(this), editorParams: {
values: ['Yes', 'No', 'Uncertain']
}
},