|
|
@@ -8,6 +8,14 @@ import ( |
|
|
|
"xorm.io/builder" |
|
|
|
) |
|
|
|
|
|
|
|
const ( |
|
|
|
TechHide = 1 |
|
|
|
TechShow = 2 |
|
|
|
TechMigrateFailed = 3 |
|
|
|
) |
|
|
|
|
|
|
|
const DefaultTechStatus = 2 |
|
|
|
|
|
|
|
type TechConvergeBaseInfo struct { |
|
|
|
ID int64 `xorm:"pk autoincr"` |
|
|
|
ProjectNumber string `xorm:"UNIQUE NOT NULL"` //项目立项编号 |
|
|
@@ -66,6 +74,16 @@ type RepoConvergeInfo struct { |
|
|
|
BaseInfo *TechConvergeBaseInfo `xorm:"-"` |
|
|
|
} |
|
|
|
|
|
|
|
func (r *RepoConvergeInfo) InsertOrUpdate() error { |
|
|
|
if r.ID != 0 { |
|
|
|
_, err := x.ID(r.ID).Update(r) |
|
|
|
return err |
|
|
|
} else { |
|
|
|
_, err := x.InsertOne(r) |
|
|
|
return err |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
func GetTechConvergeBaseInfoByProjectNumber(projectNumber string) (*TechConvergeBaseInfo, error) { |
|
|
|
tb := &TechConvergeBaseInfo{ProjectNumber: projectNumber} |
|
|
|
return getTechConvergeBaseInfo(tb) |
|
|
@@ -139,3 +157,15 @@ func FindTech(opt FindTechOpt) ([]*TechConvergeBaseInfo, error) { |
|
|
|
} |
|
|
|
return r, nil |
|
|
|
} |
|
|
|
|
|
|
|
func GetTechByTechNo(techNo string) (*TechConvergeBaseInfo, error) { |
|
|
|
var tech *TechConvergeBaseInfo |
|
|
|
has, err := x.Where("project_number = ?", techNo).Get(&tech) |
|
|
|
if err != nil { |
|
|
|
return nil, err |
|
|
|
} else if !has { |
|
|
|
return nil, ErrTechConvergeBaseInfoNotExist{} |
|
|
|
} |
|
|
|
return tech, nil |
|
|
|
|
|
|
|
} |