feat: atualizando os produtos

This commit is contained in:
2026-07-15 00:28:28 -03:00
parent 0315a20b2a
commit 08c83157b1
3 changed files with 111 additions and 28 deletions
+28 -10
View File
@@ -10,6 +10,8 @@ import (
"strings"
)
var reader = bufio.NewReader(os.Stdin)
func ShowMenu() {
fmt.Print(`
============ CONTROLE DE ESTOQUE ==============
@@ -37,7 +39,6 @@ func ShowMessage(msg string, args []any) {
}
func ReadMenuInput() (string, error) {
reader := bufio.NewReader(os.Stdin)
input, err := reader.ReadString('\n')
input = strings.TrimSpace(input)
@@ -48,9 +49,7 @@ func ReadMenuInput() (string, error) {
return input, nil
}
func ReadProdutoInput() *model.ProductInput {
reader := bufio.NewReader(os.Stdin)
func ReadAddProductInput() *model.ProductInput {
fmt.Print("Nome do produto: ")
name, _ := reader.ReadString('\n')
@@ -73,7 +72,26 @@ func ReadProdutoInput() *model.ProductInput {
}
}
func ShowAllProducts(products []model.Product) {
func ReadEditProductInput() (model.ProductID, string) {
fmt.Print("Informe o Id do produto que deseja atualizar: ")
productID, _ := reader.ReadString('\n')
productIDInt, _ := strconv.Atoi(strings.TrimSpace(productID))
fmt.Print("Informe o nome do campo que deseja atualizar (nome, categoria, preco, quantidade): ")
field, _ := reader.ReadString('\n')
field = strings.TrimSpace(field)
return model.ProductID(productIDInt), field
}
func ReadNewValueInput(field string) string {
fmt.Printf("Informe o novo valor para %s: ", field)
value, _ := reader.ReadString('\n')
return strings.TrimSpace(value)
}
func ShowAllProducts(products map[model.ProductID]model.Product) {
for _, p := range products {
id := p.ID
name := p.Name
@@ -83,11 +101,11 @@ func ShowAllProducts(products []model.Product) {
fmt.Printf(
"==============================================="+"\n"+
"PRODUTO: %d"+"\n"+
"NOME: %s"+"\n"+
"CATEGORIA: %s"+"\n"+
"PREÇO: %.2f"+"\n"+
"QUANTIDADE: %d"+"\n"+
"PRODUCT ID: %d"+"\n"+
"NAME: %s"+"\n"+
"CATEGORY: %s"+"\n"+
"PRICE: %.2f"+"\n"+
"QUANTITY: %d"+"\n"+
"==============================================="+"\n",
id, name, category, price, quantity)
}