liuxiaolong
2020-07-14 aaa7697d6ec77e03d96ce36ca66abcbbcf2bb7a3
service/SdkInstall.go
@@ -2,6 +2,7 @@
import (
   "basic.com/dbapi.git"
   "basic.com/pubsub/protomsg.git"
   "basic.com/valib/licence.git"
   "basic.com/valib/logger.git"
   "encoding/json"
@@ -213,17 +214,8 @@
                           soM[skd.Def.SdkType] = skd
                        }
                        if _,ok := aInsM[skd.Def.Id]; ok {
                           srv := SdkRegisterVo{
                              Id: skd.Def.Id,
                              SdkType: skd.Def.SdkType,
                              SdkName: skd.Def.SdkName,
                              Icon: skd.Def.Icon,
                              Url: skd.Def.Url,
                              IconBlob: skd.Def.IconBlob,
                              Version: skd.Def.Version,
                              EnTrack: skd.Def.EnTrack,
                              ArgDef: skd.Def.ArgDef,
                           }
                           srv := SdkRegisterVo{}
                           srv.SdkCommon = skd.Def.SdkCommon
                           for _,ag := range skd.Args {
                              sra := SdkRegisterArgVo{
                                 Scope: ag.Scope,
@@ -374,23 +366,41 @@
}
type Sdk struct {
   Id             string       `gorm:"column:id;primary_key;type:varchar(50);unique;not null;" json:"id"`
   IpcId         string       `gorm:"column:ipc_id" json:"ipc_id"`
   SdkType       string       `gorm:"column:sdk_type" json:"sdk_type"`
   SdkName       string       `gorm:"column:sdk_name" json:"sdk_name" example:"人脸检测"`
   Icon          string       `gorm:"column:icon" json:"icon,omitempty"`
   Url           string       `gorm:"column:url" json:"url,omitempty" example:"http://ip:port/govideo/sdk/1"`
   SdkCommon
   CreateTime       string       `gorm:"column:create_time" json:"create_time"`
   CreateBy       string       `gorm:"column:create_by" json:"create_by"`
   UpdateTime       string       `gorm:"column:update_time" json:"update_time"`
   Enable          bool       `gorm:"column:enable;default:1" json:"enable"`
   DelFlag       int       `gorm:"column:del_flag;default:0" json:"del_flag"`
   Env          string       `gorm:"column:env" json:"env"` //运行环境及结果说明,json格式,包含so_file_path,runtime,param,depends(cuda版本,opencv版本,tensorflow版本等)
   IconBlob       string       `gorm:"column:iconBlob;type:text;" json:"iconBlob"` //图片
   Version       string       `gorm:"column:version;type:varchar(50);default:'1.0';" json:"version"` //版本号
   Args          []SdkArg    `json:"args"`
   EnTrack       bool       `gorm:"column:enTrack" json:"enTrack"`
   ArgDef          string       `gorm:"column:argDef" json:"argDef"` //算法参数默认配置
}
func (sc *SdkCommon) copyFromProto(pSdk protomsg.Sdk) {
   sc.Id = pSdk.Id
   sc.IpcId = pSdk.IpcId
   sc.SdkType = pSdk.SdkType
   sc.SdkName = pSdk.SdkName
   sc.Icon = pSdk.Icon
   sc.Url = pSdk.Url
   sc.IconBlob = pSdk.IconBlob
   sc.Version = pSdk.Version
   sc.ArgDef = pSdk.ArgDef
   sc.RuleSo = pSdk.RuleSo
}
type SdkCommon struct {
   Id             string             `json:"id"`
   IpcId         string             `json:"ipc_id"`
   SdkType       string             `json:"sdk_type"`//人脸检测:FaceDetect,人脸提取:FaceExtract,人脸比对:FaceCompare,行为:Yolo
   SdkName       string             `json:"sdk_name"`    //算法名称
   Icon          string             `json:"icon"`       //算法图标
   Url           string             `json:"url"`        //算法下载地址
   IconBlob       string             `json:"iconBlob"` //图片
   Version       string             `json:"version"` //版本号
   EnTrack       bool             `json:"enTrack"`  //是否开启跟踪
   ArgDef          string             `json:"argDef"`   //算法默认参数定义
   RuleSo          string             `json:"rule_so"`
}
type SdkInsOrUpgrade struct {
@@ -422,16 +432,8 @@
type SdkRegisterVo struct {
   Id             string             `json:"id"`
   SdkType       string             `json:"sdk_type"`//人脸检测:FaceDetect,人脸提取:FaceExtract,人脸比对:FaceCompare,行为:Yolo
   SdkName       string             `json:"sdk_name"`    //算法名称
   SdkCommon
   Args          []SdkRegisterArgVo    `json:"args"` //算法参数
   Icon          string             `json:"icon"`       //算法图标
   Url           string             `json:"url"`        //算法下载地址
   IconBlob       string             `json:"iconBlob"` //图片
   Version       string             `json:"version"` //版本号
   EnTrack       bool             `json:"enTrack"`  //是否开启跟踪
   ArgDef          string             `json:"argDef"`   //算法默认参数定义
}
type SdkRegisterArgVo struct {