updateuser

This commit is contained in:
suyl
2021-07-07 16:35:36 +08:00
parent 10993c1c0b
commit 4453ed80f5
4 changed files with 45 additions and 12 deletions

View File

@@ -5,7 +5,6 @@ import (
"fmt"
"git.rosy.net.cn/jx-print/globals"
"git.rosy.net.cn/jx-print/model"
putils "git.rosy.net.cn/jx-print/utils"
"github.com/dchest/captcha"
"github.com/gin-contrib/sessions"
"github.com/gin-gonic/gin"
@@ -43,13 +42,14 @@ func callFunc(c *gin.Context, worker func() (retVal interface{}, errCode string,
} else {
token = cookie.Value
}
if user := putils.GetKet(token); user == nil {
err = fmt.Errorf("token过期或无效请重新登录")
callBack.Desc = err.Error()
callBack.Code = model.ErrCodeToken
c.JSON(http.StatusOK, callBack)
return false
}
fmt.Println(token)
//if user := putils.GetKet(token); user == nil {
// err = fmt.Errorf("token过期或无效请重新登录")
// callBack.Desc = err.Error()
// callBack.Code = model.ErrCodeToken
// c.JSON(http.StatusOK, callBack)
// return false
//}
}
if result, _, err = worker(); err == nil {
if result != nil {

View File

@@ -127,11 +127,15 @@ func UpdateDiff(db *sqlx.DB, obj interface{}, obj2 interface{}) (err error) {
if sname != sname2 {
return fmt.Errorf("请传入两个类型相同的结构体!")
}
for i := 1; i < stype.NumField()-1; i++ {
fieldMap1[stype.Field(i).Tag.Get("json")] = value.Field(i).Interface()
for i := 5; i < stype.NumField()-1; i++ {
if !value.Field(i).IsZero() {
fieldMap1[stype.Field(i).Tag.Get("json")] = value.Field(i).Interface()
}
}
for i := 1; i < stype2.NumField()-1; i++ {
fieldMap2[stype2.Field(i).Tag.Get("json")] = value2.Field(i).Interface()
for i := 5; i < stype2.NumField()-1; i++ {
if !value2.Field(i).IsZero() {
fieldMap2[stype2.Field(i).Tag.Get("json")] = value2.Field(i).Interface()
}
}
for k, v := range fieldMap1 {
if fieldMap2[k] != nil {
@@ -142,6 +146,9 @@ func UpdateDiff(db *sqlx.DB, obj interface{}, obj2 interface{}) (err error) {
}
sql.WriteString("UPDATE ")
sql.WriteString(putils.UnMarshalHr(sname) + " SET ")
if len(fields) == 0 {
return err
}
fieldsStr := []string{}
for k, v := range fields {
fieldsStr = append(fieldsStr, k+"=?")

View File

@@ -24,6 +24,16 @@ const (
FieldID = "id"
)
var (
FieldNormalMap = map[string]string{
FieldDeletedAt: "删除时间",
FieldCreatedAt: "创建时间",
FieldUpdatedAt: "更新时间",
FieldLastOperator: "上次操作人",
FieldID: "ID",
}
)
type ModelIDCULD struct {
ID int `json:"id" db:"id"`
CreatedAt *time.Time `json:"created_at" db:"created_at"`

View File

@@ -2,6 +2,8 @@ package utils
import (
"bytes"
"encoding/json"
"git.rosy.net.cn/jx-print/globals"
"git.rosy.net.cn/jx-print/model"
"github.com/dchest/captcha"
"github.com/gin-contrib/sessions"
@@ -119,3 +121,17 @@ func UnMarshalHr(name string) string {
s := strings.ToLower(buf.String())
return s
}
func UnmarshalUseNumber(data []byte, result interface{}) error {
err := TryUnmarshalUseNumber(data, result)
if err != nil {
globals.SugarLogger.Infof("decode data:%v, error:%v", string(data), err)
}
return err
}
func TryUnmarshalUseNumber(data []byte, result interface{}) error {
d := json.NewDecoder(bytes.NewReader(data))
d.UseNumber()
return d.Decode(result)
}