@@ -9,18 +9,20 @@ import (
99
1010func NewProduct (product * entities.Product ) (* entities.Product , error ) {
1111 var err error
12- database .Conn .Create (& product )
13- if product . ProCod == 0 {
14- err = errors .New ("product was not created" )
12+ tx := database .Conn .Create (& product )
13+ if tx . Error != nil {
14+ err = errors .New (tx . Error . Error () )
1515 }
1616 return product , err
1717}
1818
1919func GetProduct (productId string ) (* entities.Product , error ) {
2020 var err error
2121 var product * entities.Product
22- database .Conn .Find (& product , productId )
23- if product .ProCod == 0 {
22+ tx := database .Conn .Find (& product , productId )
23+ if tx .Error != nil {
24+ err = errors .New (tx .Error .Error ())
25+ } else if product .Cod == 0 {
2426 err = errors .New ("product not found" )
2527 }
2628 return product , err
@@ -29,21 +31,33 @@ func GetProduct(productId string) (*entities.Product, error) {
2931func GetProducts () (* []entities.Product , error ) {
3032 var err error
3133 var products * []entities.Product
32- database .Conn .Find (& products )
33- if * products == nil {
34+ tx := database .Conn .Order ("pro_cod" ).Find (& products )
35+ if tx .Error != nil {
36+ err = errors .New (tx .Error .Error ())
37+ } else if * products == nil {
3438 err = errors .New ("products not found" )
3539 }
3640 return products , err
3741}
3842
3943func UpdateProduct (newProduct * entities.Product , productId string ) (* entities.Product , error ) {
4044 product , err := GetProduct (productId )
41- database .Conn .Model (product ).Updates (newProduct )
45+ if err == nil {
46+ tx := database .Conn .Model (product ).Updates (newProduct )
47+ if tx .Error != nil {
48+ err = errors .New (tx .Error .Error ())
49+ }
50+ }
4251 return product , err
4352}
4453
4554func DeleteProduct (productId string ) (* entities.Product , error ) {
4655 product , err := GetProduct (productId )
47- database .Conn .Delete (product )
56+ if err == nil {
57+ tx := database .Conn .Delete (product )
58+ if tx .Error != nil {
59+ err = errors .New (tx .Error .Error ())
60+ }
61+ }
4862 return product , err
4963}
0 commit comments