Переглянути джерело

行政区域缓存初始化

zou.yingbin 4 роки тому
батько
коміт
e48d657ba5
2 змінених файлів з 13 додано та 3 видалено
  1. 4 2
      mtpcache/division.go
  2. 9 1
      mtpcache/enumdicitem.go

+ 4 - 2
mtpcache/division.go

@@ -43,7 +43,7 @@ func (Division) TableName() string {
 
 func init() {
 	go func() {
-		time.Sleep(time.Second * 2)
+		time.Sleep(time.Second * 5)
 		vDivisionMgr.load()
 	}()
 }
@@ -57,7 +57,9 @@ func (r *DivisionMgr) load() {
 	r.mtx.Lock()
 	defer r.mtx.Unlock()
 	engine := db.GetEngine()
-
+	if engine == nil {
+		return
+	}
 	divisions := make([]Division, 0)
 	if err := engine.Find(&divisions); err == nil {
 		r.data = map[int64]Division{}

+ 9 - 1
mtpcache/enumdicitem.go

@@ -17,6 +17,7 @@ import (
 var (
 	vDicCurrency = enumdicitem{data: map[int32]string{}, nType: 2}
 	vDic         = enumdicitem{data: map[int32]string{}, nType: 1}
+	vDicCardName = enumdicitem{data: map[int32]string{}, nType: 3}
 )
 
 // IGetEnumdicName 获取字典名称接口
@@ -44,14 +45,16 @@ func (r *enumdicitem) buildSql() string {
 		" where t.enumitemstatus = 1"
 	sqlId.AndEx("t.enumdiccode", "goodsunit", r.nType == 1)
 	sqlId.AndEx("t.enumdiccode", "currency", r.nType == 2)
+	sqlId.AndEx("t.enumdiccode", "certificatetype", r.nType == 3)
 	return sqlId.String()
 }
 
 func init() {
 	go func() {
-		time.Sleep(time.Second * 1)
+		time.Sleep(time.Second * 6)
 		vDicCurrency.load()
 		vDic.load()
+		vDicCardName.load()
 	}()
 }
 
@@ -120,3 +123,8 @@ func GetEnumDicitemName(id int32) string {
 func GetCurrencyName(id int32) string {
 	return getDicEnumName(&vDicCurrency, id)
 }
+
+// GetCardName 获取卡类型名称
+func GetCardName(cardId int32) string {
+	return getDicEnumName(&vDicCardName, cardId)
+}