feat: adicionando o cadastro de produto
This commit is contained in:
+60
-2
@@ -1,8 +1,16 @@
|
||||
package view
|
||||
|
||||
import "fmt"
|
||||
import (
|
||||
"bufio"
|
||||
"controle-de-estoque/model"
|
||||
"errors"
|
||||
"fmt"
|
||||
"os"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func ExibirMenu() {
|
||||
func ShowMenu() {
|
||||
fmt.Print(`
|
||||
============ CONTROLE DE ESTOQUE ==============
|
||||
ESCOLHA UMA DAS OPÇÕES:
|
||||
@@ -13,3 +21,53 @@ func ExibirMenu() {
|
||||
0 / sair - Sair do programa
|
||||
`)
|
||||
}
|
||||
|
||||
func ShowError(err error) {
|
||||
fmt.Println("Error: ", err)
|
||||
}
|
||||
|
||||
func ReadMenuInput() (string, error) {
|
||||
reader := bufio.NewReader(os.Stdin)
|
||||
input, err := reader.ReadString('\n')
|
||||
input = strings.TrimSpace(input)
|
||||
|
||||
if err != nil || input == "" {
|
||||
return input, errors.New("Opção Inválida!")
|
||||
}
|
||||
|
||||
return input, nil
|
||||
}
|
||||
|
||||
func ReadProdutoInput() *model.ProductInput {
|
||||
reader := bufio.NewReader(os.Stdin)
|
||||
|
||||
fmt.Print("Nome do produto: ")
|
||||
name, _ := reader.ReadString('\n')
|
||||
|
||||
fmt.Print("Categoria do produto: ")
|
||||
category, _ := reader.ReadString('\n')
|
||||
|
||||
fmt.Print("Preço: ")
|
||||
precoStr, _ := reader.ReadString('\n')
|
||||
price, _ := strconv.ParseFloat(strings.TrimSpace(precoStr), 64)
|
||||
|
||||
fmt.Print("Quantidade: ")
|
||||
qtyStr, _ := reader.ReadString('\n')
|
||||
quantity, _ := strconv.Atoi(strings.TrimSpace(qtyStr))
|
||||
|
||||
return &model.ProductInput{
|
||||
Name: name,
|
||||
Category: category,
|
||||
Price: price,
|
||||
Quantity: quantity,
|
||||
}
|
||||
}
|
||||
|
||||
func ShowMessage(msg string, args []any) {
|
||||
if args == nil {
|
||||
fmt.Println(msg)
|
||||
return
|
||||
}
|
||||
|
||||
fmt.Printf(msg, args...)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user