package service import ( "encoding/json" "errors" "fmt" "io/ioutil" "net/http" "service-api/global" "service-api/model" "service-api/utils" "strings" ) //获取用户钱包 func GetUserWallet(userID string) (interface{}, error) { var ( err error data model.UserWalletDesc ) err = global.MG_DB.Model(&model.UserWallet{}).Where("user_id=?", userID).Find(&data).Error if err != nil { return data, errors.New("Wallet information not found!") } return data, nil } //创建用户钱包 func AddUserWallet(userID string) (interface{}, error) { var ( err error data model.UserWallet res model.Account ) password := utils.GetInvitationLen(10) var reqMap = make(map[string]interface{}, 0) reqMap["password"] = password mJson, _ := json.Marshal(reqMap) mString := string(mJson) resp, err := http.Post("http://139.196.93.111:32357/account", "Content-Type:application/json;charset=utf-8", strings.NewReader(mString)) if err != nil { return data, errors.New("Failed to generate Wallet!") } robots, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Println(err) } resp.Body.Close() if err3 := json.Unmarshal(robots, &res); err3 != nil { return data, errors.New("Failed to generate Wallet!") } data.WalletAddress = res.Address data.WalletName = res.ID data.PrivateKey = res.PrivateKey data.PublicKey = res.PublicKey data.Password = password data.WalletBalance = 0 err = global.MG_DB.Model(&model.UserWallet{}).Create(&data).Error if err != nil { return data, errors.New("Failed to generate Wallet!") } return data, nil }