From 4ca3791590a7bf50222aa5f80e53edf04739108a Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期二, 22 十月 2024 17:20:23 +0800
Subject: [PATCH] fix 1400 post floor farmat

---
 config/config.go |   77 ++++++++++++++++++++++++++++----------
 1 files changed, 57 insertions(+), 20 deletions(-)

diff --git a/config/config.go b/config/config.go
index f5e1c8b..4537ffa 100644
--- a/config/config.go
+++ b/config/config.go
@@ -9,14 +9,15 @@
 )
 
 type serve struct {
-	ID       string `mapstructure:"id"`
-	Mode     string `mapstructure:"mode"`
-	Host     string `mapstructure:"host"`
-	Port     string `mapstructure:"port"`
-	Realm    string `mapstructure:"realm"`
-	Username string `mapstructure:"username"`
-	Password string `mapstructure:"password"`
-	Role     string `mapstructure:"role"` // agent 璁惧绔�, proxy 1400涓浆 涓嶅鐞哾eivce, server 鍏ㄥ姛鑳�
+	ID        string `mapstructure:"id"`
+	Mode      string `mapstructure:"mode"`
+	Host      string `mapstructure:"host"`
+	Port      string `mapstructure:"port"`
+	Realm     string `mapstructure:"realm"`
+	Username  string `mapstructure:"username"`
+	Password  string `mapstructure:"password"`
+	Role      string `mapstructure:"role"` // agent 璁惧绔�, proxy 1400涓浆 涓嶅鐞哾eivce, server 鍏ㄥ姛鑳�
+	Keepalive bool   `mapstructure:"keepalive"`
 }
 
 type client struct {
@@ -35,7 +36,7 @@
 	Enable             bool   `mapstructure:"enable"`
 }
 
-type logConfig struct {
+type log struct {
 	LogWay string `mapstructure:"log-way"` // 鏃ュ織杈撳嚭
 	Path   string `mapstructure:"path"`    // 鏃ュ織瀛樺偍璺緞
 	Level  string `mapstructure:"level"`   // 鏃ュ織绛夌骇
@@ -47,35 +48,53 @@
 	ReportServer   string `mapstructure:"report-server"`
 	ReportInterval int    `mapstructure:"report-interval"`
 	RetryInterval  int    `mapstructure:"retry-interval"`
-
-	Enable bool `mapstructure:"enable"`
+	FTPServer      string `mapstructure:"ftp-server"`
+	RecordServer   string `mapstructure:"record-server"`
 }
 
 type image struct {
-	CutFaceImage bool    `mapstructure:"cut-face-image"`
-	OriginWidth  float64 `mapstructure:"origin-width"`
-	OriginHeight float64 `mapstructure:"origin-height"`
+	CutFaceImage   bool   `mapstructure:"cut-face-image"`
+	Enlarge        int    `mapstructure:"enlarge"`
+	ImageUriPrefix string `mapstructure:"url-prefix"`
 }
 
 // 姊帶璁惧
 type nvcs struct {
-	Model string `mapstructure:"model"` // 鍨嬪彿
-	Port  string `mapstructure:"port"`  // 绔彛
-	OSD   string `mapstructure:"osd"`
+	Mac         string `mapstructure:"mac"`
+	Model       string `mapstructure:"model"` // 鍨嬪彿
+	Port        string `mapstructure:"port"`  // 绔彛
+	OSD         string `mapstructure:"osd"`
+	RunState    bool   `mapstructure:"run-state"`
+	WaitRunTime int    `mapstructure:"wait-run-time"`
 }
 
-type rateLimitConfig struct {
+type rfid struct {
+	DevName   string `mapstructure:"dev"`
+	Baud      int    `mapstructure:"baud"`
+	ReadFloor bool   `mapstructure:"read-floor"`
+	EPC       string `mapstructure:"epc"`
+	Position  uint8  `mapstructure:"position"`
+}
+
+type rateLimit struct {
 	FillInterval int64 `mapstructure:"fill-interval" json:"fillInterval"`
 	Capacity     int64 `mapstructure:"capacity" json:"capacity"`
 }
 
+type sysTime struct {
+	NTPServer    string `mapstructure:"ntp-server" json:"ntp-server"`
+	SyncInterval int    `mapstructure:"sync-interval" json:"sync-interval"`
+}
+
 var ServeConf = &serve{}
-var LogConf = &logConfig{}
+var LogConf = &log{}
 var ForwardConf = &forward{}
-var RateLimitConf = &rateLimitConfig{}
+var RateLimitConf = &rateLimit{}
 var ClientConf = &client{}
 var NVCSConf = &nvcs{}
 var ImageConf = &image{}
+var SysTimeConf = &sysTime{}
+var RFIDConf = &rfid{}
 
 // Init is an exported method that takes the environment starts the viper
 // (external lib) and returns the configuration struct.
@@ -106,7 +125,9 @@
 	v.UnmarshalKey("rate-limit", RateLimitConf)
 	v.UnmarshalKey("client", ClientConf)
 	v.UnmarshalKey("nvcs", NVCSConf)
+	v.UnmarshalKey("rfid", RFIDConf)
 	v.UnmarshalKey("image", ImageConf)
+	v.UnmarshalKey("systime", SysTimeConf)
 
 	if LogConf.Level == "" {
 		LogConf.Level = "info"
@@ -128,5 +149,21 @@
 		ClientConf.Proto = "http"
 	}
 
+	if ImageConf.Enlarge == 0 {
+		ImageConf.Enlarge = 100
+	}
+
+	if NVCSConf.WaitRunTime == 0 {
+		NVCSConf.WaitRunTime = 60
+	}
+
+	if SysTimeConf.SyncInterval == 0 {
+		SysTimeConf.SyncInterval = 10
+	}
+
+	if SysTimeConf.NTPServer == "" {
+		SysTimeConf.NTPServer = "ntp.aliyun.com"
+	}
+
 	logger.SetLogLevel(LogConf.Level)
 }

--
Gitblit v1.8.0