| | |
| | | |
| | | "model-engine/config" |
| | | "model-engine/db/es" |
| | | "model-engine/pkg/logger" |
| | | "model-engine/pkg/mysqlx" |
| | | ) |
| | | |
| | | // Init 初始化mysql和es |
| | | func Init() error { |
| | | if err := mysqlx.Init(config.MysqlConf, logger.GetLogger()); err != nil { |
| | | if err := mysqlx.Init(config.MysqlConf, nil); err != nil { |
| | | return err |
| | | } |
| | | if err := es.InitClient([]string{"http://" + config.EsInfo.Ip + ":" + config.EsInfo.Port}); err != nil { |
| | |
| | | }, |
| | | Name: "疑似聚集", |
| | | Description: "通用聚集模型", |
| | | Version: "v1.0.1", |
| | | Version: "v1.0.2", |
| | | Enabled: false, |
| | | }, |
| | | { |
| | | BaseModel: BaseModel{ |
| | | ID: ModelIdDisappear, |
| | | }, |
| | | Name: "疑似脱管", |
| | | Description: "通用脱管模型", |
| | | Version: "v1.1.0", |
| | | Enabled: false, |
| | | }, { |
| | | BaseModel: BaseModel{ |
| | | ID: ModelIdLocationAnalysis, |
| | | }, |
| | | Name: "重点场所分析", |
| | | Description: "通用场所分析模型", |
| | | Version: "v1.0.0", |
| | | Enabled: false, |
| | | }, |
| | | //{ |
| | | // BaseModel: BaseModel{ |
| | | // ID: ModelIdNightAnalysis, |
| | | // }, |
| | | // Name: "昼伏夜出分析", |
| | | // Description: "昼伏夜出分析", |
| | | // Version: "v1.0.0", |
| | | // Enabled: false, |
| | | //}, |
| | | } |
| | | |
| | | for i := range models { |
| | | if err := GetDB().Model(models[i]).First(models[i].ID).Error; err != nil { |
| | | var existingModel Model |
| | | if err := GetDB().Model(models[i]).Where("id = ?", models[i].ID).First(&existingModel).Error; err != nil { |
| | | GetDB().Model(models[i]).Create(models[i]) |
| | | } else { |
| | | GetDB().Model(models[i]).Update("version", models[i].Version) |
| | |
| | | Value: "1", |
| | | ValType: "int", |
| | | Operator: "==", |
| | | Sort: 3, |
| | | }, |
| | | }, |
| | | |
| | | // 托管 |
| | | { |
| | | Id: "7a1f0a3a-c207-4d94-bc28-cc9e017b3628", |
| | | ModelId: ModelIdDisappear, |
| | | Scope: "", |
| | | RuleArg: RuleArg{ |
| | | Alias: "disappearTime", |
| | | Name: "持续时间", |
| | | Type: "input", |
| | | Must: true, |
| | | Unit: "小时", |
| | | Range: "1,2400", |
| | | Value: "24", |
| | | ValType: "int", |
| | | Operator: ">=", |
| | | Sort: 0, |
| | | }, |
| | | }, |
| | | { |
| | | Id: "f1b99f28-1be0-4f78-b7c1-b01b1656b7fa", |
| | | ModelId: ModelIdDisappear, |
| | | Scope: "", |
| | | RuleArg: RuleArg{ |
| | | Alias: "age", |
| | | Name: "年龄段", |
| | | Type: "range", |
| | | Must: false, |
| | | Unit: "岁", |
| | | Range: "1,100", |
| | | Value: "60, 90", |
| | | ValType: "int", |
| | | Operator: "==", |
| | | Sort: 2, |
| | | }, |
| | | }, |
| | | { |
| | | Id: "47366fa6-2f61-4fe0-957a-b1e0606bb1f0", |
| | | ModelId: ModelIdDisappear, |
| | | Scope: "", |
| | | RuleArg: RuleArg{ |
| | | Alias: "lastDirection", |
| | | Name: "进出方向", |
| | | Type: "input", |
| | | Must: false, |
| | | Unit: "", |
| | | Range: "", |
| | | Value: "", |
| | | ValType: "string", |
| | | Operator: "==", |
| | | Sort: 1, |
| | | }, |
| | | }, |
| | | |
| | | // 场所分析 |
| | | { |
| | | Id: "3f667e5a-bd10-4673-be45-f385e19a9c25", |
| | | ModelId: ModelIdLocationAnalysis, |
| | | Scope: "", |
| | | RuleArg: RuleArg{ |
| | | Alias: "duration", |
| | | Name: "时间段", |
| | | Type: "input", |
| | | Must: false, |
| | | Unit: "天", |
| | | Range: "1,2400", |
| | | Value: "30", |
| | | ValType: "int", |
| | | Operator: ">=", |
| | | Sort: 2, |
| | | }, |
| | | }, |
| | | { |
| | | Id: "ce298639-0cf8-4a8f-89f9-a932034a1e86", |
| | | ModelId: ModelIdLocationAnalysis, |
| | | Scope: "", |
| | | RuleArg: RuleArg{ |
| | | Alias: "personCount", |
| | | Name: "出现人数", |
| | | Type: "input", |
| | | Must: true, |
| | | Unit: "个", |
| | | Range: "1,100", |
| | | Value: "1, 90", |
| | | ValType: "int", |
| | | Operator: ">=", |
| | | Sort: 0, |
| | | }, |
| | | }, |
| | | { |
| | | Id: "f85ae400-0114-4862-99f7-14a41530d235", |
| | | ModelId: ModelIdLocationAnalysis, |
| | | Scope: "", |
| | | RuleArg: RuleArg{ |
| | | Alias: "appearances", |
| | | Name: "出现次数", |
| | | Type: "input", |
| | | Must: true, |
| | | Unit: "", |
| | | Range: "", |
| | | Value: "", |
| | | ValType: "int", |
| | | Operator: ">=", |
| | | Sort: 1, |
| | | }, |
| | | }, |
| | | } |
| | | |
| | | for i := range rules { |