|
@@ -22,8 +22,12 @@ func (d *Repo) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error)
|
|
|
limit := m["limit"].(int)
|
|
limit := m["limit"].(int)
|
|
|
page := m["page"].(int)
|
|
page := m["page"].(int)
|
|
|
|
|
|
|
|
- sqlSelect := ` SELECT A.* `
|
|
|
|
|
- sqlFrom := ` FROM repo AS A `
|
|
|
|
|
|
|
+ sqlSelect := ` SELECT A.*,
|
|
|
|
|
+ B.repo_type_title,
|
|
|
|
|
+ C.repo_cat_title `
|
|
|
|
|
+ sqlFrom := ` FROM repo AS A
|
|
|
|
|
+ LEFT JOIN repo_type AS B ON (A.repo_type_id = B.repo_type_id)
|
|
|
|
|
+ LEFT JOIN repo_cat AS C ON (A.repo_type_id = C.repo_type_id AND A.repo_cat_id = C.repo_cat_id) `
|
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
|
if keywords, ok := m["keywords"]; ok {
|
|
if keywords, ok := m["keywords"]; ok {
|
|
|
sqlWhere += ` AND A.repo_title like ` + "'%" + fmt.Sprintf("%s", keywords) + "%'"
|
|
sqlWhere += ` AND A.repo_title like ` + "'%" + fmt.Sprintf("%s", keywords) + "%'"
|
|
@@ -54,8 +58,12 @@ func (d *Repo) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func (d *Repo) GetList(m map[string]interface{}) ([]viewmodels.RepoInfo, error) {
|
|
func (d *Repo) GetList(m map[string]interface{}) ([]viewmodels.RepoInfo, error) {
|
|
|
- sqlSelect := ` SELECT A.* `
|
|
|
|
|
- sqlFrom := ` FROM repo AS A `
|
|
|
|
|
|
|
+ sqlSelect := ` SELECT A.*,
|
|
|
|
|
+ B.repo_type_title,
|
|
|
|
|
+ C.repo_cat_title `
|
|
|
|
|
+ sqlFrom := ` FROM repo AS A
|
|
|
|
|
+ LEFT JOIN repo_type AS B ON (A.repo_type_id = B.repo_type_id)
|
|
|
|
|
+ LEFT JOIN repo_cat AS C ON (A.repo_type_id = C.repo_type_id AND A.repo_cat_id = C.repo_cat_id) `
|
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
|
if keywords, ok := m["keywords"]; ok {
|
|
if keywords, ok := m["keywords"]; ok {
|
|
|
sqlWhere += ` AND A.repo_title like ` + "'%" + fmt.Sprintf("%s", keywords) + "%'"
|
|
sqlWhere += ` AND A.repo_title like ` + "'%" + fmt.Sprintf("%s", keywords) + "%'"
|
|
@@ -70,9 +78,31 @@ func (d *Repo) GetList(m map[string]interface{}) ([]viewmodels.RepoInfo, error)
|
|
|
return datalist, nil
|
|
return datalist, nil
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+func (d *Repo) GetListById(repoTypeId int64) ([]viewmodels.RepoInfo, error) {
|
|
|
|
|
+ sqlSelect := ` SELECT A.*,
|
|
|
|
|
+ B.repo_type_title,
|
|
|
|
|
+ C.repo_cat_title `
|
|
|
|
|
+ sqlFrom := ` FROM repo AS A
|
|
|
|
|
+ LEFT JOIN repo_type AS B ON (A.repo_type_id = B.repo_type_id)
|
|
|
|
|
+ LEFT JOIN repo_cat AS C ON (A.repo_type_id = C.repo_type_id AND A.repo_cat_id = C.repo_cat_id) `
|
|
|
|
|
+ sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
|
|
|
+ sqlWhere += fmt.Sprintf(" AND A.repo_type_id = %d ", repoTypeId)
|
|
|
|
|
+ sqlOrderBy := ` ORDER BY A.repo_id ASC `
|
|
|
|
|
+ datalist := make([]viewmodels.RepoInfo, 0)
|
|
|
|
|
+ err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere + sqlOrderBy).Find(&datalist)
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ return nil, err
|
|
|
|
|
+ }
|
|
|
|
|
+ return datalist, nil
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
func (d *Repo) GetAll() ([]viewmodels.RepoInfo, error) {
|
|
func (d *Repo) GetAll() ([]viewmodels.RepoInfo, error) {
|
|
|
- sqlSelect := ` SELECT A.* `
|
|
|
|
|
- sqlFrom := ` FROM repo AS A `
|
|
|
|
|
|
|
+ sqlSelect := ` SELECT A.*,
|
|
|
|
|
+ B.repo_type_title,
|
|
|
|
|
+ C.repo_cat_title `
|
|
|
|
|
+ sqlFrom := ` FROM repo AS A
|
|
|
|
|
+ LEFT JOIN repo_type AS B ON (A.repo_type_id = B.repo_type_id)
|
|
|
|
|
+ LEFT JOIN repo_cat AS C ON (A.repo_type_id = C.repo_type_id AND A.repo_cat_id = C.repo_cat_id) `
|
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
|
sqlOrderBy := ` ORDER BY A.repo_id ASC `
|
|
sqlOrderBy := ` ORDER BY A.repo_id ASC `
|
|
|
datalist := make([]viewmodels.RepoInfo, 0)
|
|
datalist := make([]viewmodels.RepoInfo, 0)
|
|
@@ -83,11 +113,16 @@ func (d *Repo) GetAll() ([]viewmodels.RepoInfo, error) {
|
|
|
return datalist, nil
|
|
return datalist, nil
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func (d *Repo) GetById(repoId int64) (*viewmodels.RepoInfo, error) {
|
|
|
|
|
- sqlSelect := ` SELECT A.* `
|
|
|
|
|
- sqlFrom := ` FROM repo AS A `
|
|
|
|
|
|
|
+func (d *Repo) GetById(repoTypeId, repoId int64) (*viewmodels.RepoInfo, error) {
|
|
|
|
|
+ sqlSelect := ` SELECT A.*,
|
|
|
|
|
+ B.repo_type_title,
|
|
|
|
|
+ C.repo_cat_title `
|
|
|
|
|
+ sqlFrom := ` FROM repo AS A
|
|
|
|
|
+ LEFT JOIN repo_type AS B ON (A.repo_type_id = B.repo_type_id)
|
|
|
|
|
+ LEFT JOIN repo_cat AS C ON (A.repo_type_id = C.repo_type_id AND A.repo_cat_id = C.repo_cat_id) `
|
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
sqlWhere := ` WHERE A.deleted_flag = 0 `
|
|
|
- sqlWhere += fmt.Sprintf(" A.repo_id = %d ", repoId)
|
|
|
|
|
|
|
+ sqlWhere += fmt.Sprintf(" AND A.repo_type_id = %d ", repoTypeId)
|
|
|
|
|
+ sqlWhere += fmt.Sprintf(" AND A.repo_id = %d ", repoId)
|
|
|
|
|
|
|
|
data := &viewmodels.RepoInfo{}
|
|
data := &viewmodels.RepoInfo{}
|
|
|
has, err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere).Get(data)
|
|
has, err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere).Get(data)
|