aa
This commit is contained in:
@@ -60,7 +60,7 @@ func Update(db *sqlx.DB, obj interface{}, fields ...string) (err error) {
|
|||||||
sql = strings.Builder{}
|
sql = strings.Builder{}
|
||||||
sqlParams = []interface{}{}
|
sqlParams = []interface{}{}
|
||||||
direct reflect.Value
|
direct reflect.Value
|
||||||
fieldsMap = make(map[string]string)
|
fieldsMap = make(map[string]*struct{})
|
||||||
)
|
)
|
||||||
if stype.Kind() != reflect.Struct {
|
if stype.Kind() != reflect.Struct {
|
||||||
direct = reflect.Indirect(value)
|
direct = reflect.Indirect(value)
|
||||||
@@ -74,12 +74,12 @@ func Update(db *sqlx.DB, obj interface{}, fields ...string) (err error) {
|
|||||||
fieldsStr := []string{}
|
fieldsStr := []string{}
|
||||||
for _, v := range fields {
|
for _, v := range fields {
|
||||||
fieldsStr = append(fieldsStr, v+"=?")
|
fieldsStr = append(fieldsStr, v+"=?")
|
||||||
fieldsMap[v] = v
|
fieldsMap[v] = &struct{}{}
|
||||||
}
|
}
|
||||||
sql.WriteString(strings.Join(fieldsStr, ","))
|
sql.WriteString(strings.Join(fieldsStr, ","))
|
||||||
sql.WriteString(" WHERE id = ?")
|
sql.WriteString(" WHERE id = ?")
|
||||||
for i := 1; i < stype.NumField(); i++ {
|
for i := 1; i < stype.NumField(); i++ {
|
||||||
if fieldsMap[stype.Field(i).Tag.Get("json")] != "" {
|
if fieldsMap[stype.Field(i).Tag.Get("json")] != nil {
|
||||||
if stype.Field(i).Type.String() == "*time.Time" {
|
if stype.Field(i).Type.String() == "*time.Time" {
|
||||||
if direct.Field(i).Interface().(*time.Time) != nil {
|
if direct.Field(i).Interface().(*time.Time) != nil {
|
||||||
sqlParams = append(sqlParams, direct.Field(i).Interface())
|
sqlParams = append(sqlParams, direct.Field(i).Interface())
|
||||||
@@ -96,8 +96,6 @@ func Update(db *sqlx.DB, obj interface{}, fields ...string) (err error) {
|
|||||||
} else {
|
} else {
|
||||||
sqlParams = append(sqlParams, direct.Field(0).Int())
|
sqlParams = append(sqlParams, direct.Field(0).Int())
|
||||||
}
|
}
|
||||||
fmt.Println(sql.String())
|
|
||||||
fmt.Println(sqlParams)
|
|
||||||
_, err = db.DB.Exec(sql.String(), sqlParams...)
|
_, err = db.DB.Exec(sql.String(), sqlParams...)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ var (
|
|||||||
if err == nil {
|
if err == nil {
|
||||||
order.PrepayID = result.PayInfo
|
order.PrepayID = result.PayInfo
|
||||||
order.TransactionID = result.TrxID
|
order.TransactionID = result.TrxID
|
||||||
err = dao.Update(db, order, "prepay_id", "transaction_id")
|
err = dao.Update(db, order, "transaction_id", "prepay_id")
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user