Advertisement
Guest User

Untitled

a guest
Apr 2nd, 2019
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.09 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4. "fmt"
  5. "time"
  6.  
  7. "github.com/go-xorm/xorm"
  8. _ "github.com/lib/pq"
  9. )
  10.  
  11. var engine *xorm.Engine
  12.  
  13. const (
  14. host = "localhost"
  15. port = 5432
  16. user = "postgres"
  17. password = ""
  18. dbname = ""
  19. )
  20.  
  21. func main() {
  22.  
  23. psqlInfo := fmt.Sprintf("host=%s port=%d user=%s "+
  24. "password=%s dbname=%s sslmode=disable",
  25. host, port, user, password, dbname)
  26.  
  27. engine, err := xorm.NewEngine("postgres", psqlInfo)
  28. if err != nil {
  29. panic(err)
  30. }
  31. p := Produto{}
  32. engine.CreateTables(p)
  33. }
  34.  
  35. type Produto struct {
  36. Id int64 `xorm:"'id' pk autoincr"`
  37. IdEmpresa int64
  38. IdFilial *int64
  39. IdGrupo *int64
  40. IdSubGrupo *int64
  41. IdIssqn *int64
  42. IdOrigemMercadoria *int64
  43. IdTipoProduto *int64
  44. IdTributacao *int64
  45. IdUnidade *string
  46. IdFabricante *int64
  47. IdMarca *int64
  48. IdPrateleira *int64
  49. Nome string `xorm:"'nome' not null ""`
  50. CodNcm *int
  51. CodCest *int
  52. IdPisEntrada *int64
  53. IdPisSaida *int64
  54. IdCofinsEntrada *int64
  55. IdCofinsSaida *int64
  56. TipoProduto *int
  57. Inativo *int
  58. CodBarras *string
  59. Referencia1 *string
  60. Referencia2 *string
  61. Referencia3 *string
  62. Referencia4 *string
  63. NaoExportaPalm *int
  64. NaoExportaPdv *int
  65. Preco1 *float64
  66. Preco2 *float64
  67. Preco3 *float64
  68. Preco4 *float64
  69. Preco5 *float64
  70. GerarComissao *int
  71. Comissao1 *float64
  72. Comissao2 *float64
  73. Comissao3 *float64
  74. PesoBruto *float64
  75. PesoLiquido *float64
  76. TaraProduto *float64
  77. ValidadeProduto *time.Time
  78. DimensaoComprimento *int64
  79. DimensaoLargura *int64
  80. DimensaoAltura *int64
  81. CodTributacaoMunicipio *int
  82. ClasseEnquadramentoIpi *int
  83. CodEnquadramentoIpi *int
  84. DataUltimaCompra *time.Time
  85. IdUsuario *int64
  86. PrecoUltimaCompra *float64
  87. QuantidadeUltimaCompra *int
  88. ValorCustoUnitario *float64
  89. QuantidadeEstoque *float64
  90. DataCadastro time.Time
  91. DataAlteracao *time.Time
  92. }
  93.  
  94. func(this Produto)GetAll()(db *sql.DB)([]*Produto, error){
  95. produtos := make([]*Produto, 0)
  96. sql := `select id,nome,tipo_produto,preco1,quantidade_estoque,inativo,datacadastro FROM cadastros.produtos WHERE id_empresa=$1 order by id`
  97.  
  98. selDB, err := db.Query(sql, this.IdEmpresa)
  99. if err != nil {
  100. return produtos, err
  101. }
  102.  
  103. for selDB.Next() {
  104. auxProduto := new(Produto)
  105. err = selDB.Scan(
  106. &auxProduto.Id,
  107. &auxProduto.Nome,
  108. &auxProduto.TipoProduto,
  109. &auxProduto.Preco1,
  110. &auxProduto.QuantidadeEstoque,
  111. &auxProduto.Inativo,
  112. &auxProduto.DataCadastro,
  113. )
  114. if err != nil {
  115. return produtos, err
  116. }
  117. produtos = append(produtos, auxAll)
  118. }
  119. return produtos, err
  120. }
  121. func (this Produto)TableName() string{
  122. return "cadastros.produtos"
  123. }
  124. /*
  125. Id int64,
  126. IdFilial int64
  127. IdGrupo int64,
  128. IdSubGrupo int64,
  129. IdISSQN int64
  130. IdOrigemMercadoria int64
  131. IdTipoProduto int64
  132. IdTributacao int64
  133. IdUnidade string
  134. IdFabricante int64
  135. IdMarca int64
  136. IdPrateleira int64
  137. CodNCM int
  138. CodCEST int
  139. IdPisEntrada int64
  140. IdPisSaida int64
  141. IdCofinsEntrada int64
  142. IdCofinsSaida int64
  143. TipoProduto int
  144. Inativo int
  145. CodBarras string
  146. Nome string
  147. Referencia1 string
  148. Referencia2 string
  149. Referencia3 string
  150. Referencia4 string
  151. NaoExportaPalm int
  152. NaoExportaPDV int
  153. Preco1 float64
  154. Preco2 float64
  155. Preco3 float64
  156. Preco4 float64
  157. Preco5 float64
  158. GerarComissao int
  159. Comissao1 float64
  160. Comissao2 float64
  161. Comissao3 float64
  162. PesoBruto float64
  163. PesoLiquido float64
  164. TaraProduto float64
  165. ValidadeProduto time.Time
  166. DimensaoComprimento int64
  167. DimensaoLargura int64
  168. DimensaoAltura int64
  169. CodTributacaoMunicipio int
  170. ClasseEnquadramentoIPI int
  171. CodEnquadramentoIPI int
  172. DataCadastro time.Time
  173. DataAlteracao time.Time
  174. DataUltimaCompra time.Time
  175. IdUsuario int64
  176. PrecoUltimaCompra float64
  177. QuantidadeUltimaCompra int
  178. ValorCustoUnitario float64
  179. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement