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

1 year ago
1 year ago
1 year ago
  1. package com.iflytop.a800.model;
  2. import com.iflytop.a800.device.Device;
  3. import com.iflytop.uf.UfActiveRecord;
  4. import com.iflytop.uf.UfActiveRecordField;
  5. import com.iflytop.uf.util.UfJsonHelper;
  6. import java.util.ArrayList;
  7. import java.util.List;
  8. public class MdbTubeRackTestTaskTube extends UfActiveRecord {
  9. @UfActiveRecordField
  10. public String rackId;
  11. @UfActiveRecordField
  12. public String attenuation;
  13. @UfActiveRecordField
  14. public String barCode;
  15. @UfActiveRecordField
  16. public Integer index;
  17. @UfActiveRecordField
  18. public String projectDetectType;
  19. @UfActiveRecordField
  20. public String projectIds;
  21. @UfActiveRecordField
  22. public String sampleType;
  23. @UfActiveRecordField
  24. public String sampleTypeDetectType;
  25. @UfActiveRecordField
  26. public String sampleUid;
  27. @UfActiveRecordField
  28. public String status;
  29. // get table name
  30. public static String getTableName() {
  31. return "app_tube_rack_test_task_tubes";
  32. }
  33. // get project id list
  34. public List<String> getProjectIdList() {
  35. var list = new ArrayList<String>();
  36. var ids = UfJsonHelper.jsonToNode(this.projectIds);
  37. for ( var id : ids ) {
  38. list.add(id.asText());
  39. }
  40. return list;
  41. }
  42. // 获取项目列表
  43. public List<MdbProject> getProjects() {
  44. var cardMan = Device.getInstance().testCard;
  45. var list = new ArrayList<MdbProject>();
  46. for ( var projectId : this.getProjectIdList() ) {
  47. var project = cardMan.getProjectById(projectId);
  48. if ( project == null ) {
  49. project = UfActiveRecord.findOne(MdbProject.class, projectId);
  50. }
  51. list.add(project);
  52. }
  53. return list; }
  54. }