forked from free-lancers/electricity_bill_calc_service
enhance(calculate): 完善计算部分
This commit is contained in:
@@ -1,16 +0,0 @@
|
||||
package tools
|
||||
|
||||
import (
|
||||
"time"
|
||||
)
|
||||
|
||||
func DifferenceInMonth(t1, t2 time.Time) int {
|
||||
var differYear, differMonth int
|
||||
differYear = t1.Year() - t2.Year()
|
||||
differMonth = int(t1.Month() - t2.Month())
|
||||
return differYear*12 + differMonth
|
||||
}
|
||||
|
||||
func IsNextMonth(origin, t time.Time) bool {
|
||||
return DifferenceInMonth(t, origin) == 1
|
||||
}
|
@@ -1,9 +1,11 @@
|
||||
package tools
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/mozillazg/go-pinyin"
|
||||
"github.com/samber/lo"
|
||||
@@ -144,3 +146,26 @@ func NullDecimalToString(d decimal.NullDecimal, precision ...int32) *string {
|
||||
}
|
||||
return lo.ToPtr(d.Decimal.StringFixedBank(precision[0]))
|
||||
}
|
||||
|
||||
// 将sql.NullTime转换为*string
|
||||
func NullTime2PointerString(nullTime sql.NullTime) *string {
|
||||
var strPtr *string
|
||||
if nullTime.Valid {
|
||||
str := nullTime.Time.String()
|
||||
strPtr = &str
|
||||
return strPtr
|
||||
} else {
|
||||
strPtr = nil
|
||||
return strPtr
|
||||
}
|
||||
}
|
||||
|
||||
// 该方法用于将时间解析为字符串指针
|
||||
func TimeToStringPtr(t *time.Time) *string {
|
||||
if t == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
timeStr := t.Format("2006-01-02 15:04:05")
|
||||
return &timeStr
|
||||
}
|
||||
|
Reference in New Issue
Block a user