ziwen před 1 rokem
rodič
revize
20dfd98725
2 změnil soubory, kde provedl 26 přidání a 5 odebrání
  1. 25 4
      controllers/home.go
  2. 1 1
      models/article.go

+ 25 - 4
controllers/home.go

@@ -307,14 +307,21 @@ func (this *MobileHomeController) NewList() {
 		}
 	}
 
-	activityTypes = strings.TrimRight(activityTypes,",")
 	articleTypes = strings.TrimRight(articleTypes,",")
+	activityTypes = strings.TrimRight(activityTypes,",")
 	industries = strings.TrimRight(industries,",")
 	subjectNames = strings.TrimRight(subjectNames,",")
 
 	articleTypesCond := ``
 	if articleTypes != "" {
-		articleTypesCond += ` AND art.sub_category_name In (`+ articleTypes +`) `
+		articleTypeSlice := strings.Split(articleTypes, ",")
+		newArticleTypeSlice := make([]string,0)
+		for _, s := range articleTypeSlice {
+			newArticleTypeSlice = append(newArticleTypeSlice, "'"+ s + "'")
+		}
+		articleTypeStr := strings.Join(newArticleTypeSlice, ",")
+		articleTypeStr = strings.TrimRight(articleTypeStr,",")
+		articleTypesCond += ` AND art.sub_category_name In (`+ articleTypeStr +`) `
 	}
 	//activityTypesCond := ``
 	//if activityTypes != "" {
@@ -322,11 +329,25 @@ func (this *MobileHomeController) NewList() {
 	//}
 	industriesCond := ``
 	if industries != "" {
-		industriesCond += ` AND im.industry_name In (`+ industries +`) `
+		industrieSlice := strings.Split(industries, ",")
+		newIndustrieSlice := make([]string,0)
+		for _, s := range industrieSlice {
+			newIndustrieSlice = append(newIndustrieSlice, "'"+ s + "'")
+		}
+		industrieStr := strings.Join(newIndustrieSlice, ",")
+		industrieStr = strings.TrimRight(industrieStr, ",")
+		industriesCond += ` AND im.industry_name In (`+ industrieStr +`) `
 	}
 	subjectNamesCond := ``
 	if subjectNames != "" {
-		subjectNamesCond += ` AND is.subject_name In (`+ subjectNames +`) `
+		subjectNameSlice := strings.Split(subjectNames, ",")
+		newSubjectNameSlice := make([]string,0)
+		for _, s := range subjectNameSlice {
+			newSubjectNameSlice = append(newSubjectNameSlice, "'"+ s + "'")
+		}
+		subjectNameStr := strings.Join(newSubjectNameSlice, ",")
+		subjectNameStr = strings.TrimRight(subjectNameStr, ",")
+		subjectNamesCond += ` AND cis.subject_name In (`+ subjectNameStr +`) `
 	}
 
 	articleIntIds, err := models.GetCygxCygxArticleListByCondition(articleTypesCond, industriesCond, subjectNamesCond)

+ 1 - 1
models/article.go

@@ -338,7 +338,7 @@ func GetCygxCygxArticleListByCondition(articleTypesCond, industriesCond, subject
 	}
 	if subjectNamesCond != ""{
 		sql += ` INNER JOIN cygx_industrial_article_group_subject  AS ias ON ias.cygx_article_id = art.id 
-				INNER JOIN cygx_industrial_subject AS is ON is.industrial_subject_id=ias.industrial_subject_id  `
+				INNER JOIN cygx_industrial_subject AS cis ON cis.industrial_subject_id=ias.industrial_subject_id  `
 	}
 	sql += ` WHERE 1=1 `