zhaoqingang
2025-02-10 bc37c44c45d08c2cb42822e08adf429f4bcffb51
db/db.go
@@ -63,7 +63,7 @@
         },
         Name:        "疑似聚集",
         Description: "通用聚集模型",
         Version:     "v1.0.1",
         Version:     "v1.0.2",
         Enabled:     false,
      },
      {
@@ -72,13 +72,31 @@
         },
         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)
@@ -154,6 +172,8 @@
            Sort:     3,
         },
      },
      // 托管
      {
         Id:      "7a1f0a3a-c207-4d94-bc28-cc9e017b3628",
         ModelId: ModelIdDisappear,
@@ -179,13 +199,13 @@
            Alias:    "age",
            Name:     "年龄段",
            Type:     "range",
            Must:     true,
            Must:     false,
            Unit:     "岁",
            Range:    "1,100",
            Value:    "60, 90",
            ValType:  "int",
            Operator: "==",
            Sort:     1,
            Sort:     2,
         },
      },
      {
@@ -193,7 +213,7 @@
         ModelId: ModelIdDisappear,
         Scope:   "",
         RuleArg: RuleArg{
            Alias:    "age",
            Alias:    "lastDirection",
            Name:     "进出方向",
            Type:     "input",
            Must:     false,
@@ -202,9 +222,62 @@
            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 {