forked from grassrootseconomics/visedriver
		
	move api calls in main to handlers package
This commit is contained in:
		
							parent
							
								
									430c5d32c8
								
							
						
					
					
						commit
						36d3f05a31
					
				
							
								
								
									
										34
									
								
								internal/server/handlers/accountstatus.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								internal/server/handlers/accountstatus.go
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,34 @@ | ||||
| package handlers | ||||
| 
 | ||||
| import ( | ||||
| 	"encoding/json" | ||||
| 	"io" | ||||
| 	"net/http" | ||||
| 
 | ||||
| 	"git.grassecon.net/urdt/ussd/config" | ||||
| 	"git.grassecon.net/urdt/ussd/internal/models" | ||||
| ) | ||||
| 
 | ||||
| 
 | ||||
| func CheckAccountStatus(trackingId string) (string, error) { | ||||
| 	resp, err := http.Get(config.TrackStatusURL + trackingId) | ||||
| 	if err != nil { | ||||
| 		return "", err | ||||
| 	} | ||||
| 	defer resp.Body.Close() | ||||
| 
 | ||||
| 	body, err := io.ReadAll(resp.Body) | ||||
| 	if err != nil { | ||||
| 		return "", err | ||||
| 	} | ||||
| 
 | ||||
| 	var trackResp models.TrackStatusResponse | ||||
| 	err = json.Unmarshal(body, &trackResp) | ||||
| 	if err != nil { | ||||
| 		return "", err | ||||
| 	} | ||||
| 
 | ||||
| 	status := trackResp.Result.Transaction.Status | ||||
| 
 | ||||
| 	return status, nil | ||||
| } | ||||
| @ -1,4 +1,33 @@ | ||||
| package handlers | ||||
| 
 | ||||
| import ( | ||||
| 	"encoding/json" | ||||
| 	"io" | ||||
| 	"net/http" | ||||
| 
 | ||||
| 	"git.grassecon.net/urdt/ussd/config" | ||||
| 	"git.grassecon.net/urdt/ussd/internal/models" | ||||
| ) | ||||
| 
 | ||||
| func CheckBalance(publicKey string) (string, error) { | ||||
| 
 | ||||
| 	resp, err := http.Get(config.BalanceURL + publicKey) | ||||
| 	if err != nil { | ||||
| 		return "0.0", err | ||||
| 	} | ||||
| 	defer resp.Body.Close() | ||||
| 
 | ||||
| 	body, err := io.ReadAll(resp.Body) | ||||
| 	if err != nil { | ||||
| 		return "0.0", err | ||||
| 	} | ||||
| 
 | ||||
| 	var balanceResp models.BalanceResponse | ||||
| 	err = json.Unmarshal(body, &balanceResp) | ||||
| 	if err != nil { | ||||
| 		return "0.0", err | ||||
| 	} | ||||
| 
 | ||||
| 	balance := balanceResp.Result.Balance | ||||
| 	return balance, nil | ||||
| } | ||||
|  | ||||
							
								
								
									
										32
									
								
								internal/server/handlers/createaccount.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								internal/server/handlers/createaccount.go
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,32 @@ | ||||
| package handlers | ||||
| 
 | ||||
| import ( | ||||
| 	"encoding/json" | ||||
| 	"io" | ||||
| 	"net/http" | ||||
| 
 | ||||
| 	"git.grassecon.net/urdt/ussd/config" | ||||
| 	"git.grassecon.net/urdt/ussd/internal/models" | ||||
| ) | ||||
| 
 | ||||
| 
 | ||||
| func CreateAccount() (*models.AccountResponse, error) { | ||||
| 	resp, err := http.Post(config.CreateAccountURL, "application/json", nil) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 	defer resp.Body.Close() | ||||
| 
 | ||||
| 	body, err := io.ReadAll(resp.Body) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 
 | ||||
| 	var accountResp models.AccountResponse | ||||
| 	err = json.Unmarshal(body, &accountResp) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 
 | ||||
| 	return &accountResp, nil | ||||
| } | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user