|
@@ -27,7 +27,7 @@ import (
|
|
|
|
|
|
var ErrNoRow = gorm.ErrRecordNotFound
|
|
|
|
|
|
-//随机数种子
|
|
|
+// 随机数种子
|
|
|
var rnd = rand.New(rand.NewSource(time.Now().UnixNano()))
|
|
|
|
|
|
// GetRandString 获取随机字符串
|
|
@@ -385,8 +385,8 @@ func TrimHtml(src string) string {
|
|
|
return strings.TrimSpace(src)
|
|
|
}
|
|
|
|
|
|
-//1556164246 -> 2019-04-25 03:50:46 +0000
|
|
|
-//timestamp
|
|
|
+// 1556164246 -> 2019-04-25 03:50:46 +0000
|
|
|
+// timestamp
|
|
|
// TimeToTimestamp
|
|
|
func TimeToTimestamp() {
|
|
|
fmt.Println(time.Unix(1556164246, 0).Format("2006-01-02 15:04:05"))
|
|
@@ -437,7 +437,7 @@ func GetWilsonScore(p, n float64) float64 {
|
|
|
return toFixed(((p+1.9208)/(p+n)-1.96*math.Sqrt(p*n/(p+n)+0.9604)/(p+n))/(1+3.8416/(p+n)), 2)
|
|
|
}
|
|
|
|
|
|
-//将中文数字转化成数字,比如 第三百四十五章,返回第345章 不支持一亿及以上
|
|
|
+// 将中文数字转化成数字,比如 第三百四十五章,返回第345章 不支持一亿及以上
|
|
|
func ChangeWordsToNum(str string) (numStr string) {
|
|
|
words := ([]rune)(str)
|
|
|
num := 0
|
|
@@ -613,7 +613,7 @@ func GetMonthStartAndEnd(myYear string, myMonth string) (startDate, endDate stri
|
|
|
return t1, t2
|
|
|
}
|
|
|
|
|
|
-//TrimStr 移除字符串中的空格
|
|
|
+// TrimStr 移除字符串中的空格
|
|
|
func TrimStr(str string) (str2 string) {
|
|
|
return strings.Replace(str, " ", "", -1)
|
|
|
}
|
|
@@ -1048,6 +1048,22 @@ func GetTimeSubDay(t1, t2 time.Time) int {
|
|
|
return day
|
|
|
}
|
|
|
|
|
|
+// GetDaysBetween2Date 计算两个日期之间相差几天
|
|
|
+func GetDaysBetween2Date(format, date1Str, date2Str string) (int, error) {
|
|
|
+ // 将字符串转化为Time格式
|
|
|
+ date1, err := time.ParseInLocation(format, date1Str, time.Local)
|
|
|
+ if err != nil {
|
|
|
+ return 0, err
|
|
|
+ }
|
|
|
+ // 将字符串转化为Time格式
|
|
|
+ date2, err := time.ParseInLocation(format, date2Str, time.Local)
|
|
|
+ if err != nil {
|
|
|
+ return 0, err
|
|
|
+ }
|
|
|
+ //计算相差天数
|
|
|
+ return int(date1.Sub(date2).Hours() / 24), nil
|
|
|
+}
|
|
|
+
|
|
|
// MapSorter 对于map 排序
|
|
|
type MapSorter []Item
|
|
|
|