You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.7 KiB
68 lines
1.7 KiB
package com.iflytop.a800.model;
|
|
import com.iflytop.a800.device.Device;
|
|
import com.iflytop.uf.UfActiveRecord;
|
|
import com.iflytop.uf.UfActiveRecordField;
|
|
import com.iflytop.uf.util.UfJsonHelper;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
public class MdbTubeRackTestTaskTube extends UfActiveRecord {
|
|
@UfActiveRecordField
|
|
public String rackId;
|
|
|
|
@UfActiveRecordField
|
|
public String attenuation;
|
|
|
|
@UfActiveRecordField
|
|
public String barCode;
|
|
|
|
@UfActiveRecordField
|
|
public Integer index;
|
|
|
|
@UfActiveRecordField
|
|
public String projectDetectType;
|
|
|
|
@UfActiveRecordField
|
|
public String projectIds;
|
|
|
|
@UfActiveRecordField
|
|
public String sampleType;
|
|
|
|
@UfActiveRecordField
|
|
public String sampleTypeDetectType;
|
|
|
|
@UfActiveRecordField
|
|
public String sampleUid;
|
|
|
|
@UfActiveRecordField
|
|
public String status;
|
|
|
|
// get table name
|
|
public static String getTableName() {
|
|
return "app_tube_rack_test_task_tubes";
|
|
}
|
|
|
|
// get project id list
|
|
public List<String> getProjectIdList() {
|
|
var list = new ArrayList<String>();
|
|
var ids = UfJsonHelper.jsonToNode(this.projectIds);
|
|
for ( var id : ids ) {
|
|
list.add(id.asText());
|
|
}
|
|
return list;
|
|
}
|
|
|
|
// 获取项目列表
|
|
public List<MdbProject> getProjects() {
|
|
var cardMan = Device.getInstance().testCard;
|
|
var list = new ArrayList<MdbProject>();
|
|
for ( var projectId : this.getProjectIdList() ) {
|
|
var project = cardMan.getProjectById(projectId);
|
|
if ( project == null ) {
|
|
project = UfActiveRecord.findOne(MdbProject.class, projectId);
|
|
}
|
|
list.add(project);
|
|
}
|
|
return list; }
|
|
}
|