aboutsummaryrefslogtreecommitdiff
path: root/server/database/database.go
diff options
context:
space:
mode:
authorMikunoNaka <bokuwakanojogahoshii@yahoo.com>2021-05-01 08:22:47 +0530
committerMikunoNaka <bokuwakanojogahoshii@yahoo.com>2021-05-01 08:22:47 +0530
commit0fa16426f56120c4eb18bc18c202703c460daed8 (patch)
tree8d3479316a31c3ca6fe689d0d8f79f0b7d99154a /server/database/database.go
parentaf6f3e5955f50699aea2868cea9400c50aee5bfd (diff)
divided package database into multiple files for ease
Diffstat (limited to 'server/database/database.go')
-rw-r--r--server/database/database.go95
1 files changed, 0 insertions, 95 deletions
diff --git a/server/database/database.go b/server/database/database.go
deleted file mode 100644
index b3c1e78..0000000
--- a/server/database/database.go
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * OpenBills - Self hosted browser app to generate and keep track of simple invoices
- * Version - 0
- * Licensed under the MIT license - https://opensource.org/licenses/MIT
- *
- * Copyright (c) 2021 Vidhu Kant Sharma
-*/
-
-// Idk how databases work this package is supposed to handle the sqlite database
-// will figure that out
-
-package database
-
-import (
- "database/sql"
- _ "github.com/mattn/go-sqlite3"
-)
-
-type Item struct {
- Model string
- Desc string `json:"Description"`
- Price float64
- HSN int
- GST float64
- Cat string `json:"Category"`
- Brand string
-}
-
-var myDatabase *sql.DB
-var register_item *sql.Stmt
-func init() {
- myDatabase, _ = sql.Open("sqlite3", "./openbills.db")
-
- init_registered_items, _ := myDatabase.Prepare(
- `CREATE TABLE IF NOT EXISTS registered_items
- (id INTEGER PRIMARY KEY AUTOINCREMENT,
- model TEXT NOT NULL,
- desc TEXT,
- price REAL,
- hsn BLOB,
- gst REAL,
- category TEXT,
- brand TEXT)`,
- )
- init_registered_items.Exec()
-
- register_item, _ = myDatabase.Prepare(
- `INSERT INTO registered_items
- (model, desc, price, hsn, gst, category, brand)
- VALUES (?, ?, ?, ?, ?, ?, ?)`,
- )
-}
-
-func GetAllItems() []Item {
- var allItems []Item
- rows, _ := myDatabase.Query(
- `SELECT model, desc, price, hsn, gst, category, brand FROM registered_items`,
- )
-
- var (
- model, desc, cat, brand string
- price, GST float64
- HSN int
- )
-
- for rows.Next() {
- rows.Scan(&model, &desc, &price, &HSN, &GST, &cat, &brand)
- allItems = append(allItems, Item{model, desc, price, HSN, GST, cat, brand})
- }
-
- return allItems
-}
-
-func RegisterItem(item Item) bool {
- itemNames, _ := myDatabase.Query("SELECT model FROM registered_items")
-
- // check if item already exists
- // probably this should be handled by front end
- // so we can check this without need of using api
- for itemNames.Next() {
- var rModel string
- itemNames.Scan(&rModel)
- if rModel == item.Model {
- return false
- }
- }
-
- register_item.Exec(
- item.Model, item.Desc,
- item.Price, item.HSN,
- item.GST, item.Cat,
- item.Brand,
- )
- return true
-}