优化统计相关程序

This commit is contained in:
GoEdgeLab
2023-03-12 10:20:56 +08:00
parent 9388ffce6c
commit d5a807b51f
11 changed files with 43 additions and 287 deletions

View File

@@ -18,8 +18,6 @@ const (
RegionProvinceStateDisabled = 0 // 已禁用
)
var regionProvinceNameAndIdCacheMap = map[string]int64{} // province name @ country id => province id
type RegionProvinceDAO dbs.DAO
func NewRegionProvinceDAO() *RegionProvinceDAO {
@@ -98,31 +96,6 @@ func (this *RegionProvinceDAO) FindProvinceIdWithName(tx *dbs.Tx, countryId int6
FindInt64Col(0)
}
// FindProvinceIdWithNameCacheable 根据省份名查找省份ID并可使用缓存
func (this *RegionProvinceDAO) FindProvinceIdWithNameCacheable(tx *dbs.Tx, countryId int64, provinceName string) (int64, error) {
var key = provinceName + "@" + numberutils.FormatInt64(countryId)
SharedCacheLocker.RLock()
provinceId, ok := regionProvinceNameAndIdCacheMap[key]
if ok {
SharedCacheLocker.RUnlock()
return provinceId, nil
}
SharedCacheLocker.RUnlock()
provinceId, err := this.FindProvinceIdWithName(tx, countryId, provinceName)
if err != nil {
return 0, err
}
if provinceId > 0 {
SharedCacheLocker.Lock()
regionProvinceNameAndIdCacheMap[key] = provinceId
SharedCacheLocker.Unlock()
}
return provinceId, nil
}
// CreateProvince 创建省份
func (this *RegionProvinceDAO) CreateProvince(tx *dbs.Tx, countryId int64, name string, dataId string) (int64, error) {
var op = NewRegionProvinceOperator()
@@ -175,13 +148,6 @@ func (this *RegionProvinceDAO) UpdateProvinceCustom(tx *dbs.Tx, provinceId int64
return err
}
// 清空缓存
defer func() {
SharedCacheLocker.Lock()
regionProvinceNameAndIdCacheMap = map[string]int64{}
SharedCacheLocker.Unlock()
}()
return this.Query(tx).
Pk(provinceId).
Set("customName", customName).