Browse Source

update

tags/v0
zhaohe 10 months ago
parent
commit
707ffe5012
  1. 2
      src/main/java/a8k/controler/extapi/EngineerPageControler.java
  2. 2
      src/main/java/a8k/controler/extapi/utils/EnginnerParamReader.java
  3. 2
      src/main/java/a8k/hardware/HardwareServiceSetting.java
  4. 38
      src/main/java/a8k/olddbservice/DBTableVersion.java
  5. 84
      src/main/java/a8k/olddbservice/MdbOption.java
  6. 211
      src/main/java/a8k/olddbservice/ProjectInfo.java
  7. 1
      src/main/java/a8k/service/app/AppConsumablesMgrService.java
  8. 5
      src/main/java/a8k/service/app/appstate/AppStateMgrService.java
  9. 4
      src/main/java/a8k/service/bak_appbase/A8kDeviceState.java
  10. 21
      src/main/java/a8k/type/ProjectInfoSimple.java

2
src/main/java/a8k/controler/extapi/EngineerPageControler.java

@ -2,7 +2,7 @@ package a8k.controler.extapi;
import a8k.type.appret.AppRet;
import a8k.controler.extapi.utils.*;
import a8k.olddbservice.HardwareServiceSetting;
import a8k.hardware.HardwareServiceSetting;
import a8k.utils.*;
import com.iflytop.uf.UfApplication;
import com.iflytop.uf.util.UfClassHelper;

2
src/main/java/a8k/controler/extapi/utils/EnginnerParamReader.java

@ -1,6 +1,6 @@
package a8k.controler.extapi.utils;
import a8k.olddbservice.HardwareServiceSetting;
import a8k.hardware.HardwareServiceSetting;
import a8k.type.exception.AppException;

2
src/main/java/a8k/olddbservice/HardwareServiceSetting.java → src/main/java/a8k/hardware/HardwareServiceSetting.java

@ -1,4 +1,4 @@
package a8k.olddbservice;
package a8k.hardware;
import a8k.hardware.type.a8kcanprotocol.A8kEcode;
import a8k.type.exception.AppException;

38
src/main/java/a8k/olddbservice/DBTableVersion.java

@ -1,38 +0,0 @@
package a8k.olddbservice;
import com.iflytop.uf.UfActiveRecord;
import com.iflytop.uf.UfActiveRecordField;
import java.util.Map;
public class DBTableVersion extends UfActiveRecord {
@UfActiveRecordField
public String tableName;
@UfActiveRecordField
public Integer version;
public static String getTableName() {
return DBTableVersion.class.getSimpleName() + "Table";
}
public static void setTableVersion(String tableName, Integer version) {
var dbDataVersion = UfActiveRecord.findOne(DBTableVersion.class, Map.of("tableName", tableName));
if (null == dbDataVersion) {
dbDataVersion = new DBTableVersion();
dbDataVersion.tableName = tableName;
dbDataVersion.version = version;
dbDataVersion.save();
} else {
dbDataVersion.version = version;
dbDataVersion.save();
}
}
public static Integer getTableVersion(String tableName) {
var dbDataVersion = UfActiveRecord.findOne(DBTableVersion.class, Map.of("tableName", tableName));
if (null == dbDataVersion) {
return 0;
}
return dbDataVersion.version;
}
}

84
src/main/java/a8k/olddbservice/MdbOption.java

@ -1,84 +0,0 @@
package a8k.olddbservice;
import com.iflytop.uf.UfActiveRecord;
import com.iflytop.uf.UfActiveRecordField;
import java.util.Map;
public class MdbOption extends UfActiveRecord {
@UfActiveRecordField
public String key;
@UfActiveRecordField
public String value;
@UfActiveRecordField
public String comment;
@UfActiveRecordField
public String editable;
@UfActiveRecordField
public String dataType;
@UfActiveRecordField
public String unit;
// get table name
public static String getTableName() {
return "app_options";
}
// get option
public static String getString(String key, String defaultValue ) {
var option = UfActiveRecord.findOne(MdbOption.class, Map.of("key", key));
if ( null == option ) {
return defaultValue;
}
return option.value;
}
// get option string
public static String getString( String key ) {
var option = UfActiveRecord.findOne(MdbOption.class, Map.of("key", key));
if ( null == option ) {
throw new RuntimeException("Option not found : " + key);
}
return option.value;
}
// get option
public static Integer getInteger(String key, Integer defaultValue ) {
var option = MdbOption.getString(key, defaultValue.toString());
return Integer.parseInt(option);
}
// get option
public static Integer getInteger( String key ) {
var option = MdbOption.getString(key);
return Integer.parseInt(option);
}
// get option
public static Double getDouble(String key, Double defaultValue ) {
var option = MdbOption.getString(key, defaultValue.toString());
return Double.parseDouble(option);
}
// get option value as double
public static Double getDouble( String key ) {
var option = MdbOption.getString(key);
return Double.parseDouble(option);
}
// get as boolean
public static Boolean getBoolean( String key, Boolean defaultValue ) {
var option = MdbOption.getString(key, defaultValue ? "1" : "0");
option = option.toLowerCase();
return "1".equals(option) || "true".equals(option) || "yes".equals(option) || "on".equals(option);
}
// get option value as boolean
public static Boolean getBoolean( String key ) {
var option = MdbOption.getString(key);
option = option.toLowerCase();
return "1".equals(option) || "true".equals(option) || "yes".equals(option) || "on".equals(option);
}
}

211
src/main/java/a8k/olddbservice/ProjectInfo.java

@ -1,211 +0,0 @@
package a8k.olddbservice;
import com.iflytop.uf.UfActiveRecord;
import com.iflytop.uf.UfActiveRecordField;
import java.util.Date;
//ref:https://iflytop1.feishu.cn/wiki/HvDlwbEWDi4fgkkL6qSc2iLGnte
public class ProjectInfo extends UfActiveRecord {
public static String getTableName() {
return "ProjectInfoTable";
}
@UfActiveRecordField
public Integer buildIn;//是否是内置如果是内置则不显示作为项目的默认值使用
@UfActiveRecordField
public String insertTime = new Date().toString(); //插入时间
@UfActiveRecordField
public String projectName; //项目名称
@UfActiveRecordField
public String lotName; //批次名称
@UfActiveRecordField
public String expiryDate; //有效日期
@UfActiveRecordField
public String projectCode; //项目名称代码
@UfActiveRecordField
public Integer palteCode; // 板条条码代码
@UfActiveRecordField
public Integer updateChipVersion; // 更新芯片版本号
@UfActiveRecordField
public Double QCPeakMinVal; // 质控峰最小值
@UfActiveRecordField
public Double QCPeakMaxVal; // 质控峰最大值 设置值x10最大不超过250000
@UfActiveRecordField
public Integer optType; //光学类型 光学类型(0=自动;1=F光学;2=T光学;3=F/T光学;其他=无效;)
@UfActiveRecordField
public Integer optFixedGainSetting; //光学固定增益设置
@UfActiveRecordField
public Integer optAreaPeakCount; //光学面积峰个数
@UfActiveRecordField
public Integer calculationDirection; //计算方向
@UfActiveRecordField
public Integer sampleType; //样本类型
@UfActiveRecordField
public Integer equipmentManufacturer; //设备厂商
@UfActiveRecordField
public Integer tOptIlluminationTime; //T光学持续光照时间
@UfActiveRecordField
public Integer incMultiInstruDataMerge; //是否包含多款仪器数据合并
@UfActiveRecordField
public Integer multiInstruDataMerge; //多款仪器数据合并
@UfActiveRecordField
public Integer wBloodSampleVol; //全血样本量
@UfActiveRecordField
public Integer serumSampleVol; //血清/血浆样本量
@UfActiveRecordField
public Integer tubeMixingCount; //试管混匀次数
@UfActiveRecordField
public Integer bufferBottleSize; //缓冲液瓶大小
@UfActiveRecordField
public Integer bufferBottleCapacity; //缓冲液瓶容量
@UfActiveRecordField
public Integer buffLiquidAspirMixingCnt; //缓冲液吸吐混匀次数
@UfActiveRecordField
public Integer buffLiquidAspirMixingVol; //缓冲液吐混混匀量
@UfActiveRecordField
public Integer buffLiquidReactionTime; //缓冲液反应时间
@UfActiveRecordField
public Integer reactionPlateReactionTime; //反应板反应时间
@UfActiveRecordField
public Integer reactionPlateDropletVol; //反应板滴样量
@UfActiveRecordField
public Integer resultDecimalPlaces; //结果小数点位数
@UfActiveRecordField
public Integer scanningRange; //扫描范围
//当前项目是几联卡项目
//项目1 结果曲线是否为分段函数
//项目2 结果曲线是否为分段函数
//项目3 结果曲线是否为分段函数
@UfActiveRecordField
public Integer projectNum; //当前项目是几联卡项目
@UfActiveRecordField
public Integer project1CurveType; //项目1 结果曲线是否为分段函数
@UfActiveRecordField
public Integer project2CurveType; //项目2 结果曲线是否为分段函数
@UfActiveRecordField
public Integer project3CurveType; //项目3 结果曲线是否为分段函数
//非分段函数
@UfActiveRecordField
public Integer p0FnX; //函数未知数是
@UfActiveRecordField
public Double p0FnXMin; //函数未知数下限闻值
@UfActiveRecordField
public Double p0FnXMax; //函数未知数上限闻值
@UfActiveRecordField
public Double p0FnSerumA; //A
@UfActiveRecordField
public Double p0FnSerumB; //B
@UfActiveRecordField
public Double p0FnSerumC; //C
@UfActiveRecordField
public Double p0FnSerumD; //D
@UfActiveRecordField
public Double p0FnRtSerumUpLimit; //结果上限
@UfActiveRecordField
public Double p0FnRtSerumLowLimit; //结果下限
@UfActiveRecordField
public Double p0FnBloodA; //A
@UfActiveRecordField
public Double p0FnBloodB; //B
@UfActiveRecordField
public Double p0FnBloodC; //C
@UfActiveRecordField
public Double p0FnBloodD; //D
@UfActiveRecordField
public Double p0FnRtBloodUpLimit; //结果上限
@UfActiveRecordField
public Double p0FnRtBloodLowLimit; //结果下限
//分段函数
@UfActiveRecordField
public Integer p0PwFnJudeX; //分界判断数据来源
@UfActiveRecordField
public Double p0PwFnJudeThres; //分界判断数据值
@UfActiveRecordField
public Double p0PwFnLCX; //低浓度未知数
@UfActiveRecordField
public Double p0PwFnHCX; //高浓度未知数
@UfActiveRecordField
public Double p0PwFnXMin; //函数未知数下限闻值
@UfActiveRecordField
public Double p0PwFnXMax; //函数未知数上限闻值
@UfActiveRecordField
public Double p0PwFnLCSerumA; //A
@UfActiveRecordField
public Double p0PwFnLCSerumB; //B
@UfActiveRecordField
public Double p0PwFnLCSerumC; //C
@UfActiveRecordField
public Double p0PwFnLCSerumD; //D
@UfActiveRecordField
public Double p0PwFnLCRtSerumUpLimit; //结果上限
@UfActiveRecordField
public Double p0PwFnLCRtSerumLowLimit; //结果下限
@UfActiveRecordField
public Double p0PwFnHCSerumA; //A
@UfActiveRecordField
public Double p0PwFnHCSerumB; //B
@UfActiveRecordField
public Double p0PwFnHCSerumC; //C
@UfActiveRecordField
public Double p0PwFnHCSerumD; //D
@UfActiveRecordField
public Double p0PwFnHCRtSerumUpLimit; //结果上限
@UfActiveRecordField
public Double p0PwFnHCRtSerumLowLimit; //结果下限
@UfActiveRecordField
public Double p0PwFnLCBloodA; //A
@UfActiveRecordField
public Double p0PwFnLCBloodB; //B
@UfActiveRecordField
public Double p0PwFnLCBloodC; //C
@UfActiveRecordField
public Double p0PwFnLCBloodD; //D
@UfActiveRecordField
public Double p0PwFnLCRtBloodUpLimit; //结果上限
@UfActiveRecordField
public Double p0PwFnLCRtBloodLowLimit; //结果下限
@UfActiveRecordField
public Double p0PwFnHCBloodA; //A
@UfActiveRecordField
public Double p0PwFnHCBloodB; //B
@UfActiveRecordField
public Double p0PwFnHCBloodC; //C
@UfActiveRecordField
public Double p0PwFnHCBloodD; //D
@UfActiveRecordField
public Double p0PwFnHCRtBloodUpLimit; //结果上限
@UfActiveRecordField
public Double p0PwFnHCRtBloodLowLimit; //结果下限
//结果
@UfActiveRecordField
public Integer ret1Unit; //单位
@UfActiveRecordField
public Integer ret2Unit; //单位
@UfActiveRecordField
public Integer ret3Unit; //单位
@UfActiveRecordField
public Double ret2UnitFnA; //
@UfActiveRecordField
public Double ret2UnitFnB; //
@UfActiveRecordField
public Double ret3UnitFnA; //
@UfActiveRecordField
public Double ret3UnitFnB; //
}

1
src/main/java/a8k/service/app/AppConsumablesMgrService.java

@ -122,7 +122,6 @@ public class AppConsumablesMgrService {
//解析lotVal
for (int i = 0; i < 6; i++) {
// var.reactantItems[i] = new ReactantItem();
// var.reactantItems[i].projId = "PROJECT_" + i;

5
src/main/java/a8k/service/app/appstate/AppStateMgrService.java

@ -3,8 +3,6 @@ package a8k.service.app.appstate;
import a8k.controler.extapi.utils.ExtApiTab;
import a8k.controler.extapi.utils.ExtApiFn;
import a8k.controler.extapi.pagecontrol.ExtApiTabConfig;
import a8k.olddbservice.ProjectInfo;
import a8k.service.app.app_consumables_mgr_service.ConsumableState;
import a8k.service.bak_appbase.A8kDeviceState;
import jakarta.annotation.PostConstruct;
import org.slf4j.Logger;
@ -26,9 +24,6 @@ public class AppStateMgrService {
public void init() {
}
public void setCurrentIdCardInfo(ProjectInfo projectInfo) {
deviceState.curIdCardInfo = projectInfo;
}
// public void setConsumable(ConsumableState cig) {
// deviceState.consumable = cig;

4
src/main/java/a8k/service/bak_appbase/A8kDeviceState.java

@ -1,6 +1,5 @@
package a8k.service.bak_appbase;
import a8k.olddbservice.ProjectInfo;
import a8k.service.app.app_consumables_mgr_service.ConsumableState;
import a8k.service.bak_appbase.runstate.ReactingPlateRunState;
import a8k.service.bak_appbase.runstate.EmergencyPosRunState;
@ -19,8 +18,7 @@ public class A8kDeviceState {
public TubeHolderRunState tubeHolderRunState = new TubeHolderRunState();
//温度
public Integer temperature = 25;
//当前ID卡信息
public ProjectInfo curIdCardInfo = null;
public Boolean deviceInited = false; //设备是否初始化过
public Boolean devicePoweredOffNormally = false; //设备是否正常关机

21
src/main/java/a8k/type/ProjectInfoSimple.java

@ -1,21 +0,0 @@
package a8k.type;
import a8k.olddbservice.ProjectInfo;
public class ProjectInfoSimple {
String projectName; //项目名称
String lotName; //批次名称
String expiryDate; //有效日期
public ProjectInfoSimple(String projectName, String lotName, String expiryDate) {
this.projectName = projectName;
this.lotName = lotName;
this.expiryDate = expiryDate;
}
public ProjectInfoSimple(ProjectInfo pinfo) {
this.projectName = pinfo.projectName;
this.lotName = pinfo.lotName;
this.expiryDate = pinfo.expiryDate;
}
}
Loading…
Cancel
Save