From 6ac2bedcdad585476d0682692102bea815c4c822 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Fri, 4 Oct 2024 16:58:28 +0800 Subject: [PATCH] update --- app.db | Bin 225280 -> 225280 bytes .../extapi/pagecontrol/ExtApiTabConfig.java | 1 + .../java/a8k/dbservice/SampleRecordDBService.java | 54 +++++++++++++++++++++ src/main/java/a8k/dbservice/type/SampleRecord.java | 21 ++++++++ .../appdata/AppReactionResultMgrService.java | 4 ++ .../a8k/service/appdata/AppSampleMgrService.java | 15 ++++++ .../AppEmergencySamplePosStateMgrService.java | 10 ++-- .../appstate/type/EmergencyPosRunState.java | 8 +-- .../service/appstate/type/ReactingPlateState.java | 1 - src/main/java/a8k/type/sampleinfo/SampleInfo.java | 6 --- 10 files changed, 104 insertions(+), 16 deletions(-) create mode 100644 src/main/java/a8k/dbservice/SampleRecordDBService.java create mode 100644 src/main/java/a8k/dbservice/type/SampleRecord.java create mode 100644 src/main/java/a8k/service/appdata/AppReactionResultMgrService.java create mode 100644 src/main/java/a8k/service/appdata/AppSampleMgrService.java diff --git a/app.db b/app.db index df393aeb4a7cce69bbf3da0b41663efe7c9d7992..314467eab2b06f586aac1859ef4ba6761eb766f6 100644 GIT binary patch delta 325 zcmZp8z}xVEcY?Iw5(Wkab09VYVj&=ony6#UxMX9(lKaepjLehSA1E>bDXj-LZJL<; z*u^a^8Jp!x5|eULs}c(e;u9^h3vyE9i&B&Gi&C(QDo+l4BUX>1P(edMJu^jJ zAv3QeH9fURM?oDT4H7F!ttbHsq$HLk!a1469+~MGA*D&F$a<1;^7B(dDhq&uP)!h1 zoDz$Y^HUI_rNya5B1lFT6y;}m=B1=oOn&fQfi2pLO+4Ro@&#Ur&1#QiIhon~*qYs5 oZ+CmmxXWabgTQhD1*Q$#9x$;NFbYoR2w*m6G~MnHz**qj9X2%3o0%^ diff --git a/src/main/java/a8k/controler/extapi/pagecontrol/ExtApiTabConfig.java b/src/main/java/a8k/controler/extapi/pagecontrol/ExtApiTabConfig.java index c183e4e..4e351eb 100644 --- a/src/main/java/a8k/controler/extapi/pagecontrol/ExtApiTabConfig.java +++ b/src/main/java/a8k/controler/extapi/pagecontrol/ExtApiTabConfig.java @@ -12,6 +12,7 @@ public enum ExtApiTabConfig { AppSettingsMgr("应用数据.设备配置管理", true), //OK AppProjectItemMgrService("应用数据.ID卡状态管理", true), //OK AppProjInfoMgrService("应用数据.项目信息管理", true), //OK + AppSampleMgrService("应用数据.样本管理", true), //OK ActionReactorService("基础组件.单步调试", true),//OK AppFrontEndEventRouter("基础组件.前端事件路由", true), diff --git a/src/main/java/a8k/dbservice/SampleRecordDBService.java b/src/main/java/a8k/dbservice/SampleRecordDBService.java new file mode 100644 index 0000000..574fb01 --- /dev/null +++ b/src/main/java/a8k/dbservice/SampleRecordDBService.java @@ -0,0 +1,54 @@ +package a8k.dbservice; + +import a8k.dbservice.type.A8kPresetProjInfo; +import a8k.dbservice.type.SampleRecord; +import a8k.service.appdata.UtilsProjectColorAllocer; +import a8k.utils.ZSqliteJdbcHelper; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.Resource; +import lombok.SneakyThrows; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; + +import java.sql.ResultSet; +import java.util.List; + +@Component +public class SampleRecordDBService { + private static final Logger logger = LoggerFactory.getLogger(SampleRecordDBService.class); + private static final String tableName = "zapp_a8k_sample_record"; + private static Class tClass = SampleRecord.class; + + + @Resource + JdbcTemplate jdbcTemplate; + + @Resource + UtilsProjectColorAllocer colorAllocer; + + @PostConstruct + void init() { + if (!ZSqliteJdbcHelper.isTableExist(jdbcTemplate, tableName)) { + ZSqliteJdbcHelper.createTable(jdbcTemplate, tableName, tClass); + } + } + + @SneakyThrows public SampleRecord rowMapper(ResultSet rs, int rowNum) { + return (SampleRecord) ZSqliteJdbcHelper.rowMapper(rs, tClass); + } + + public List getAll() { + return jdbcTemplate.query("select * from " + tableName, this::rowMapper); + } + + public void add(SampleRecord record) { + ZSqliteJdbcHelper.addObj(jdbcTemplate, tableName, tClass, record); + } + + public void update(SampleRecord record) { + ZSqliteJdbcHelper.updateObj(jdbcTemplate, tableName, tClass, record); + } + +} diff --git a/src/main/java/a8k/dbservice/type/SampleRecord.java b/src/main/java/a8k/dbservice/type/SampleRecord.java new file mode 100644 index 0000000..cb02605 --- /dev/null +++ b/src/main/java/a8k/dbservice/type/SampleRecord.java @@ -0,0 +1,21 @@ +package a8k.dbservice.type; + +import a8k.type.type.BloodType; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * 提交一组试管架配置时,提交10个样本的信息 + */ +public class SampleRecord { + public int id = 0; + public String sampleid; // generated by system , year%100+month+day+时分 241230_1203_01 + public Date data; + public Boolean isHighTube = false; + public BloodType bloodType = BloodType.WHOLE_BLOOD; //血液类型 + public String sampleBarcode = ""; //用于请求用户信息的条码ID + public String userid = ""; //用户输入的样本ID,不做逻辑,只做展示 + public List projIndex = new ArrayList<>(); //项目代码,逗号分隔 +} diff --git a/src/main/java/a8k/service/appdata/AppReactionResultMgrService.java b/src/main/java/a8k/service/appdata/AppReactionResultMgrService.java new file mode 100644 index 0000000..d9496ce --- /dev/null +++ b/src/main/java/a8k/service/appdata/AppReactionResultMgrService.java @@ -0,0 +1,4 @@ +package a8k.service.appdata; + +public class AppReactionResultMgrService { +} diff --git a/src/main/java/a8k/service/appdata/AppSampleMgrService.java b/src/main/java/a8k/service/appdata/AppSampleMgrService.java new file mode 100644 index 0000000..a6fb221 --- /dev/null +++ b/src/main/java/a8k/service/appdata/AppSampleMgrService.java @@ -0,0 +1,15 @@ +package a8k.service.appdata; + +import a8k.controler.extapi.pagecontrol.ExtApiTabConfig; +import a8k.controler.extapi.utils.ExtApiTab; +import a8k.dbservice.SampleRecordDBService; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Component; + +@Component +@ExtApiTab(cfg = ExtApiTabConfig.AppSettingsMgr) +public class AppSampleMgrService { + + @Resource + SampleRecordDBService sampleRecordDBService; +} diff --git a/src/main/java/a8k/service/appdevicectrl/AppEmergencySamplePosStateMgrService.java b/src/main/java/a8k/service/appdevicectrl/AppEmergencySamplePosStateMgrService.java index 883f1da..275981b 100644 --- a/src/main/java/a8k/service/appdevicectrl/AppEmergencySamplePosStateMgrService.java +++ b/src/main/java/a8k/service/appdevicectrl/AppEmergencySamplePosStateMgrService.java @@ -40,20 +40,20 @@ public class AppEmergencySamplePosStateMgrService { /** * 提交紧急样本设置 * @param userid 用户ID - * @param barcodeid 样本条码 + * @param sampleBarcode 样本条码 * @param bloodType 血型 * @param projIndexList * * 提交后就默认样本已经放置好了,所以需要前台提醒用户需要先暂停设备,放好样本 */ @ExtApiFn(name = "提交紧急样本设置", group = "紧急样本设置") - public void commitEmergencySampleSetting(String userid, String barcodeid, BloodType bloodType,// + public void commitEmergencySampleSetting(String userid, String sampleBarcode, BloodType bloodType,// @EnginnerPageActionParam(name = "逗号分割项目列表(例子1,2,3)") String projIndexList) throws AppException { EmergencyPosRunState state = gstate.getEmergencyPosRunState(); if (state.state.equals(EmergencySampleState.IDLE) || state.state.equals(EmergencySampleState.FINISHED)) { - state.userid = userid; - state.bloodType = bloodType; - state.barcodeid = barcodeid; + state.userid = userid; + state.bloodType = bloodType; + state.sampleBarcode = sampleBarcode; state.projIndex.clear(); for (String index : projIndexList.split(",")) { state.projIndex.add(Integer.parseInt(index)); diff --git a/src/main/java/a8k/service/appstate/type/EmergencyPosRunState.java b/src/main/java/a8k/service/appstate/type/EmergencyPosRunState.java index f119278..4ea6bb8 100644 --- a/src/main/java/a8k/service/appstate/type/EmergencyPosRunState.java +++ b/src/main/java/a8k/service/appstate/type/EmergencyPosRunState.java @@ -7,10 +7,10 @@ import java.util.ArrayList; import java.util.List; public class EmergencyPosRunState { - public String userid = ""; //用户输入的样本ID,不做逻辑,只做展示 - public String barcodeid = ""; //用于请求用户信息的条码ID - public List projIndex = new ArrayList<>(); //项目代码 - public BloodType bloodType = BloodType.WHOLE_BLOOD; //血型 + public String userid = ""; //用户输入的样本ID,不做逻辑,只做展示 + public String sampleBarcode = ""; //用于请求用户信息的条码ID + public List projIndex = new ArrayList<>(); //项目代码 + public BloodType bloodType = BloodType.WHOLE_BLOOD; //血型 public EmergencySampleState state = EmergencySampleState.IDLE; //急诊位状态 } diff --git a/src/main/java/a8k/service/appstate/type/ReactingPlateState.java b/src/main/java/a8k/service/appstate/type/ReactingPlateState.java index ce6e7c4..c45500e 100644 --- a/src/main/java/a8k/service/appstate/type/ReactingPlateState.java +++ b/src/main/java/a8k/service/appstate/type/ReactingPlateState.java @@ -1,7 +1,6 @@ package a8k.service.appstate.type; import a8k.service.bak_appbase.result.ReactionResult; -import a8k.type.sampleinfo.SampleInfo; import a8k.service.bak_appbase.progress.ReactionPlateProgress; import java.util.Date; diff --git a/src/main/java/a8k/type/sampleinfo/SampleInfo.java b/src/main/java/a8k/type/sampleinfo/SampleInfo.java index 8f4ee09..5303397 100644 --- a/src/main/java/a8k/type/sampleinfo/SampleInfo.java +++ b/src/main/java/a8k/type/sampleinfo/SampleInfo.java @@ -4,9 +4,3 @@ import a8k.type.type.BloodType; import java.util.List; -public class SampleInfo { - public String userid; //用户输入的样本ID,不做逻辑,只做展示 - public String barcodeid; //用于请求用户信息的条码ID - public List projIndex = null; //项目代码 - public BloodType bloodType = BloodType.WHOLE_BLOOD; //血型 -}