| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace IvfTl.Control.Entity.GlobalEntitys
- {
- /// <summary>
- /// TL设置表
- /// </summary>
- public class TLSetting
- {
- /// <summary>
- /// Desc:自增id
- /// Default:
- /// Nullable:False
- /// </summary>
- public long id { get; set; }
- /// <summary>
- /// Desc:设备编号
- /// Default:
- /// Nullable:False
- /// </summary>
- public string tlSn { get; set; }
- /// <summary>
- /// Desc:设备名
- /// Default:
- /// Nullable:False
- /// </summary>
- public string tlName { get; set; }
- /// <summary>
- /// Desc:运行状态 0在线空闲 1在线培养
- /// Default:
- /// Nullable:False
- /// </summary>
- public int state { get; set; }
- /// <summary>
- /// Desc:在线状态 0离线 1在线 2已剔除
- /// Default:
- /// Nullable:False
- /// </summary>
- public int online { get; set; }
- /// <summary>
- /// Desc:下位机软件版本
- /// Default:
- /// Nullable:False
- /// </summary>
- public string softwareVersion { get; set; }
- /// <summary>
- /// Desc:下位机协议地址
- /// Default:
- /// Nullable:False
- /// </summary>
- public string protocolAddress { get; set; }
- /// <summary>
- /// Desc:设备安装时间
- /// Default:
- /// Nullable:False
- /// </summary>
- public DateTime installTime { get; set; }
- /// <summary>
- /// Desc:安装地址;省、市、区
- /// Default:
- /// Nullable:False
- /// </summary>
- public string address { get; set; }
- /// <summary>
- /// Desc:socket通讯ip地址
- /// Default:
- /// Nullable:False
- /// </summary>
- public string socketIp { get; set; }
- /// <summary>
- /// Desc:socket通讯端口号
- /// Default:
- /// Nullable:False
- /// </summary>
- public string socketPort { get; set; }
- /// <summary>
- /// Desc:远程报警ip
- /// Default:
- /// Nullable:False
- /// </summary>
- public string alarmIp { get; set; }
- /// <summary>
- /// Desc:远程报警端口
- /// Default:
- /// Nullable:False
- /// </summary>
- public string alarmPort { get; set; }
- /// <summary>
- /// Desc:mqtt通信队列
- /// Default:
- /// Nullable:False
- /// </summary>
- public string mqttQueue { get; set; }
- /// <summary>
- /// Desc:kafka消息队列
- /// Default:
- /// Nullable:False
- /// </summary>
- public string kafkaTopic { get; set; }
- /// <summary>
- /// Desc:备注
- /// Default:
- /// Nullable:True
- /// </summary>
- public string remark { get; set; }
- /// <summary>
- /// Desc:下位机缓存路径(日志、图片等 盘符)
- /// Default:
- /// Nullable:False
- /// </summary>
- public string tmpDir { get; set; }
- /// <summary>
- /// Desc:自动对焦定时时间0-24
- /// Default:
- /// Nullable:False
- /// </summary>
- public int autoFocusTime { get; set; }
- /// <summary>
- /// Desc:视频帧率
- /// Default:
- /// Nullable:False
- /// </summary>
- public int videoFps { get; set; }
- /// <summary>
- /// Desc:胚胎图片水印文字
- /// Default:
- /// Nullable:False
- /// </summary>
- public string watermarking { get; set; }
- /// <summary>
- /// Desc:缓冲瓶报警设置:缓冲瓶气压上限
- /// Default:
- /// Nullable:False
- /// </summary>
- public int bufferBottlerPressureMax { get; set; }
- /// <summary>
- /// Desc:缓冲瓶报警设置:缓冲瓶气压下限
- /// Default:
- /// Nullable:False
- /// </summary>
- public int bufferBottlerPressureMin { get; set; }
- /// <summary>
- /// Desc:仓室气压报警设置:压力报警上限值
- /// Default:
- /// Nullable:False
- /// </summary>
- public decimal pressureAlarmMax { get; set; }
- /// <summary>
- /// Desc:仓室气压报警设置:压力报警下限值
- /// Default:
- /// Nullable:False
- /// </summary>
- public decimal pressureAlarmMin { get; set; }
- /// <summary>
- /// Desc:仓室温度报警设置:温度报警上限值
- /// Default:
- /// Nullable:True
- /// </summary>
- public decimal temperatureAlarmMax { get; set; }
- /// <summary>
- /// Desc:仓室温度报警设置:温度报警下限值
- /// Default:
- /// Nullable:False
- /// </summary>
- public decimal temperatureAlarmMin { get; set; }
- /// <summary>
- /// Desc:气压参数设置:缓冲瓶补气次数
- /// Default:
- /// Nullable:False
- /// </summary>
- public int bufferBottlerAerationNum { get; set; }
- /// <summary>
- /// Desc:气压参数设置:仓室补气次数
- /// Default:
- /// Nullable:False
- /// </summary>
- public int houseAerationNum { get; set; }
- /// <summary>
- /// Desc:气压参数设置:换气打开排气阀时间 /s
- /// Default:
- /// Nullable:False
- /// </summary>
- public int ventilationDelay { get; set; }
- /// <summary>
- /// Desc:气压参数设置:换气间隔时间 /min
- /// Default:
- /// Nullable:False
- /// </summary>
- public int airSwapFrequency { get; set; }
- /// <summary>
- /// Desc:气压参数设置:换气次数
- /// Default:
- /// Nullable:False
- /// </summary>
- public int airSwapTime { get; set; }
- /// <summary>
- /// Desc:气压参数设置:气阀到位延时 /ms
- /// Default:
- /// Nullable:False
- /// </summary>
- public int valueDelay { get; set; }
- /// <summary>
- /// Desc:气压参数设置:补气后等待检测时间 /s
- /// Default:
- /// Nullable:False
- /// </summary>
- public int aerationDelay { get; set; }
- /// <summary>
- /// Desc:气压参数设置:是否开启新版换气 0 关闭 1开启
- /// Default:
- /// Nullable:False
- /// </summary>
- public bool newAirSwap { get; set; }
- /// <summary>
- /// Desc:电机运动设置:电机到位延时 /ms
- /// Default:
- /// Nullable:False
- /// </summary>
- public int motorDelay { get; set; }
- /// <summary>
- /// Desc:电机运动设置:垂直电机运动上限脉冲数
- /// Default:
- /// Nullable:False
- /// </summary>
- public int verticalMotorPulseMax { get; set; }
- /// <summary>
- /// 保存原图
- /// </summary>
- public int saveSourcePic { get; set; }
- /// <summary>
- /// 合成视频
- /// </summary>
- public bool buildVideo { get; set; }
- /// <summary>
- /// Desc:相机拍照设置:每轮拍照间隔
- /// Default:
- /// Nullable:False
- /// </summary>
- public int photoIntervalPerRound { get; set; }
- /// <summary>
- /// Desc:呼吸灯开关:0关 1开
- /// Default:
- /// Nullable:False
- /// </summary>
- public int lightOn { get; set; }
- /// <summary>
- /// Desc:下次保养时间
- /// Default:
- /// Nullable:False
- /// </summary>
- public DateTime keepDate { get; set; }
- /// <summary>
- /// Desc:下次安装heap时间
- /// Default:
- /// Nullable:False
- /// </summary>
- public DateTime heapDate { get; set; }
- /// <summary>
- /// 历史曲线写入间隔秒数/(默认60秒)
- /// </summary>
- public int historyCurveInterval { get; set; }
- /// <summary>
- /// Desc:抠图失败报警次数 / (默认2次)
- /// Default:
- /// Nullable:False
- /// </summary>
- public int mattingAlarmTimes { get; set; }
- /// <summary>
- /// Desc:仓门超时报警秒数 / (默认60秒)
- /// Default:
- /// Nullable:False
- /// </summary>
- public int houseDoorAlarmTime { get; set; }
- /// <summary>
- /// Desc:温度报警秒数 / (默认180秒)
- /// Default:
- /// Nullable:False
- /// </summary>
- public int temperatureAlarmTime { get; set; }
- /// <summary>
- /// Desc:气压报警秒数 / (默认60秒)
- /// Default:
- /// Nullable:False
- /// </summary>
- public int pressureAlarmTime { get; set; }
- /// <summary>
- /// Desc:温压显示阈值 / (默认0.5)
- /// Default:
- /// Nullable:False
- /// </summary>
- public decimal chartThreshold { get; set; }
- // ────────────────────────────────────────────────────────────────
- // M2-03 本地自动对焦:设备级拍照层配置(对齐 sql/migrations/2026-06-17-autofocus-data-layer.sql 的 tl_setting 扩列)。
- // ⚠ 待验证(V-046):这些 C# 属性已加,但取数链路(DBServiceImpl/TL 初始化)是否已把库列填进来需真机/真库确认;
- // 若初始化未读这些列,focusLayerSpacingPulse 将为 null → §2.5 报错(FocusConfigMissingException),不兜底。
- // ────────────────────────────────────────────────────────────────
- /// <summary>
- /// Desc:拍照层间距脉冲(工艺值,权威来源;缺失须报错,EEPROM仅参考) focus_layer_spacing_pulse
- /// Default: 无默认(缺失报错)
- /// Nullable:True
- /// </summary>
- public int? focusLayerSpacingPulse { get; set; }
- /// <summary>
- /// Desc:拍照总层数(业务参数) focus_layer_count
- /// Default: 5
- /// Nullable:False
- /// </summary>
- public int? focusLayerCount { get; set; }
- /// <summary>
- /// Desc:对焦标定数据保留天数(清理任务用) clean_autofocus_data —— G4-1
- /// Default: 30
- /// Nullable:True
- /// </summary>
- public int? cleanAutofocusData { get; set; }
- /// <summary>
- /// Desc:对焦起点下移层数(清晰层在第几层之上) focus_layer_down
- /// Default: 2
- /// Nullable:False
- /// </summary>
- public int? focusLayerDown { get; set; }
- /// <summary>
- /// Desc:标定合格峰比阈值(不同客户可松紧) focus_peak_ratio_threshold
- /// Default: 1.2
- /// Nullable:False
- /// </summary>
- public decimal? focusPeakRatioThreshold { get; set; }
- // ────────────────────────────────────────────────────────────────
- // M2-06 场景B产线本地自动对焦安全门(设备级开关)。
- // 对齐 sql/migrations/2026-06-17-autofocus-data-layer.sql 的 tl_setting.local_autofocus_enabled。
- // 0=关闭(默认安全):StartAutoFocus 本地路径降级——按 scene=0 基准/既有位置拍照,不做实际对焦,
- // 避免算法未在真机验证通过(03 §6 三前置:74000伪峰/真胚胎峰比/EEPROM回写)时错误对焦污染拍摄。
- // 1=启用:走 M2-03 本地 CalibrationEngine 四步标定对焦(场景B 正式启用)。
- // ⚠ 待验证 V-061/V-062:安全门开关生效、关闭降级行为正确不污染拍摄。
- // 取数链同 focusLayer*(V-047):经服务器 init JSON 反序列化 / 本地缓存 ConvertHelper 回填。
- // ────────────────────────────────────────────────────────────────
- /// <summary>
- /// Desc:场景B本地自动对焦安全门 local_autofocus_enabled
- /// 0=关闭(降级按基准/既有位置拍照,默认安全) 1=启用(本地四步标定对焦)。
- /// Default: 0(安全)
- /// Nullable:False
- /// </summary>
- public int localAutofocusEnabled { get; set; }
- }
- }
|