From e6f167f6d7885b39b1788e621db38adf1407b180 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=96=BB=E4=BD=B3=E9=91=AB?= Date: Sat, 1 Apr 2023 09:55:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E8=8E=B7=E5=8F=96=E9=A1=B5=EF=BC=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E9=A1=B5=E5=A4=A7=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/mysql.go | 9 +++++++++ utils/common_utils.go | 45 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 utils/common_utils.go diff --git a/client/mysql.go b/client/mysql.go index 4af0830..5d9d8f5 100644 --- a/client/mysql.go +++ b/client/mysql.go @@ -80,3 +80,12 @@ func NumberHandler(results *sql.Rows) []int { } return numbers } + +// IsValidString 判断sql里面的数据是否合法 +func IsValidString(nullString sql.NullString) string { + if nullString.Valid { + return nullString.String + } + + return "" +} diff --git a/utils/common_utils.go b/utils/common_utils.go new file mode 100644 index 0000000..caf0e26 --- /dev/null +++ b/utils/common_utils.go @@ -0,0 +1,45 @@ +package utils + +import ( + "github.com/shootz-developer/gtool/constant" + "log" + "math" + "strconv" +) + +// EarthDistance 计算距离 +func EarthDistance(lat1, lng1, lat2, lng2 float64) float64 { + lat1 = lat1 * math.Pi / 180.0 + lng1 = lng1 * math.Pi / 180.0 + lat2 = lat2 * math.Pi / 180.0 + lng2 = lng2 * math.Pi / 180.0 + a := lat1 - lat2 + b := lng1 - lng2 + s := 2 * math.Asin( + math.Sqrt(math.Pow(math.Sin(a/2), 2)+math.Cos(lat1)*math.Cos(lat2)*math.Pow(math.Sin(b/2), 2))) + s = s * 6378.137 + s = math.Round(s*10000) / 10000 + return s +} + +// GetPage 获取页 +func GetPage(pageStr string) int { + page, err := strconv.Atoi(pageStr) + if err != nil { + log.Printf("Page string to int err: [%+v]", err) + return constant.DefaultPage + } + + return page +} + +// GetLimit 获取页大小 +func GetLimit(pageStr string) int { + limit, err := strconv.Atoi(pageStr) + if err != nil { + log.Printf("Page string to int err: [%+v]", err) + return constant.DefaultLimit + } + + return limit +}