Browse Source

Merge branch 'dev/v4.8.61_dx' of qmx/jy into feature/v4.8.61

duxin 1 year ago
parent
commit
3323773967
3 changed files with 15 additions and 5 deletions
  1. 2 0
      src/go.sum
  2. 6 1
      src/jfw/config/config.go
  3. 7 4
      src/jfw/front/pcIndex.go

+ 2 - 0
src/go.sum

@@ -611,6 +611,8 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G
 github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
 github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe h1:iruDEfMl2E6fbMZ9s0scYfZQ84/6SPL6zC8ACM2oIL0=
 github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
+github.com/mozillazg/go-pinyin v0.20.0 h1:BtR3DsxpApHfKReaPO1fCqF4pThRwH9uwvXzm+GnMFQ=
+github.com/mozillazg/go-pinyin v0.20.0/go.mod h1:iR4EnMMRXkfpFVV5FMi4FNB6wGq9NV6uDWbUuPhP4Yc=
 github.com/mschoch/smat v0.2.0 h1:8imxQsjDm8yFEAVBe7azKmKSgzSkZXDuKkSq9374khM=
 github.com/mschoch/smat v0.2.0/go.mod h1:kc9mz7DoBKqDyiRL7VZN8KvXQMWeTaVnttLRXOlotKw=
 github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=

+ 6 - 1
src/jfw/config/config.go

@@ -163,6 +163,8 @@ func GetLetterMap(names string) []map[string]interface{} {
 	return data
 }
 
+var DigitalEnglish = map[string]string{"0": "L", "1": "Y", "2": "E", "3": "S", "4": "S", "5": "W", "6": "L", "7": "Q", "8": "B", "9": "J"}
+
 // 获取单词的首字母大写
 func getFirstChar(word string) string {
 	firstChar := string(word[0])
@@ -171,7 +173,10 @@ func getFirstChar(word string) string {
 	if isEnglishLetter(firstChar) {
 		return strings.ToUpper(firstChar)
 	}
-
+	// 检查第一个字符是否是数字
+	if v, ok := DigitalEnglish[firstChar]; ok && v != "" {
+		return v
+	}
 	// 转换为拼音并获取首字母大写
 	py := convertToPinyin(word)
 	return strings.ToUpper(string(py[0]))

+ 7 - 4
src/jfw/front/pcIndex.go

@@ -895,7 +895,7 @@ func getLetterMap(nameArr []string) []*hotKeyWord {
 		nameArr1 = append(nameArr1, fmt.Sprintf(`"%s"`, v))
 	}
 	dataArr1 := public.BaseMysql.SelectBySql(fmt.Sprintf(`select a.id,a.name,b.id class_id,b.name class_1 from seo_words.seo_industry a inner join  seo_words.seo_industry_class b on  a.class_1 in (%s) and a.class_1=b.name and  a.class_2 !='药品'  order by a.class_1`, strings.Join(nameArr1, ",")))
-	dataArr2 := public.BaseMysql.SelectBySql(fmt.Sprintf(`select id,name,letter from seo_words.seo_resource where name in (%s) and state=2 order by id desc`, strings.Join(nameArr1, ",")))
+	dataArr2 := public.BaseMysql.SelectBySql(fmt.Sprintf(`select id,name,letter from seo_words.seo_resource where name in (%s) and state1=2 order by id desc`, strings.Join(nameArr1, ",")))
 	for _, v1 := range nameArr {
 		var isNormal bool
 		if dataArr1 != nil && len(*dataArr1) > 0 {
@@ -933,8 +933,8 @@ func getLetterMap(nameArr []string) []*hotKeyWord {
 		}
 	}
 	if len(nameArr2) > 0 {
-		public.BaseMysql.SelectBySql(fmt.Sprintf(`INSERT INTO seo_words.seo_resource (name, letter, state) VALUES %s`, strings.Join(nameArr4, ",")))
-		dataArr3 := public.BaseMysql.SelectBySql(fmt.Sprintf(`select id,name,letter from seo_words.seo_resource where name in (%s) and state=2 order by id desc`, strings.Join(nameArr3, ",")))
+		public.BaseMysql.SelectBySql(fmt.Sprintf(`INSERT INTO seo_words.seo_resource (name, letter, state1) VALUES %s`, strings.Join(nameArr4, ",")))
+		dataArr3 := public.BaseMysql.SelectBySql(fmt.Sprintf(`select id,name,letter from seo_words.seo_resource where name in (%s) and state1=2 order by id desc`, strings.Join(nameArr3, ",")))
 		if dataArr3 != nil {
 			for _, v3 := range *dataArr3 {
 				letter := util.ObjToString(v3["letter"])
@@ -959,7 +959,10 @@ func getFirstChar(word string) string {
 	if isEnglishLetter(firstChar) {
 		return strings.ToUpper(firstChar)
 	}
-
+	// 检查第一个字符是否是数字
+	if v, ok := config.DigitalEnglish[firstChar]; ok && v != "" {
+		return v
+	}
 	// 转换为拼音并获取首字母大写
 	py := convertToPinyin(word)
 	return strings.ToUpper(string(py[0]))