summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sqlite.go49
1 files changed, 31 insertions, 18 deletions
diff --git a/sqlite.go b/sqlite.go
index 40f6fd1..c304d77 100644
--- a/sqlite.go
+++ b/sqlite.go
@@ -822,19 +822,21 @@ func closeTask(loud bool) {
}
}
}
-//TODO Adapt Function to Save paymentid Or dump it completely
+
// TODO Make an uncheck function
-func checkBill(bid int) {
- boldGreen := color.New(color.FgGreen, color.Bold).SprintFunc()
+func checkBill(billid, payid, projectid int, datestr string) {
+ //boldGreen := color.New(color.FgGreen, color.Bold).SprintFunc()
boldRed := color.New(color.FgRed, color.Bold).SprintFunc()
- var custid int
- fmt.Println(frame(boldGreen("Checking Bill"),true))
- if !isBill(bid) {
- fmt.Println(nli,bid, boldRed("is not a known bill ID"))
- fmt.Println(frame(negR(),false))
+ custid := getCustomerId(projectid)
+ //var custid int
+ //fmt.Println(frame(boldGreen("Checking Bill"),true))
+ if !isBill(billid) {
+ fmt.Println(nli,billid, boldRed("is not a known bill ID"))
+ //fmt.Println(frame(negR(),false))
return
}
+ /*
bar := []int{bid}
bill := loadBills(bar)
@@ -853,13 +855,16 @@ func checkBill(bid int) {
fmt.Printf(nli+" Date: %s Hours: %.1f[h] Sum: %.2f[€]\n"+nli, bill[0].date.Local().Format("2006-01-02"), hsum, msum)
//fmt.Println(ta)
}
+ */
//timst,timstr := "1791-09-30 19:07","1791-09-30 19:07"
//zone, _ := time.Now().Zone()
- timstr := "1791-09-30 19:07"
- timin := getInterInput(sli+"Specify Date (YYYY-MM-DD): ")
+ //timstr := "1791-09-30 19:07"
+
+ //timin := getInterInput(sli+"Specify Date (YYYY-MM-DD): ")
+ /*
if isDateTime(timin) {
timstr = getDateTime(timin)
} else if isDate(timin) {
@@ -870,16 +875,19 @@ func checkBill(bid int) {
fmt.Println(frame(negR(),false))
return
}
+
fmt.Println(nli+boldGreen(timstr))
- stmt, err := db.Prepare("UPDATE bills SET paid = datetime(?,'utc') WHERE id = ?")
+ */
+ stmt, err := db.Prepare("UPDATE bills SET paid = datetime(?,'utc'), paymentid = ? WHERE id = ?")
checkErr(err)
- _, err = stmt.Exec(timstr, bid)
+ _, err = stmt.Exec(datestr, payid, billid)
checkErr(err)
+
stmt, err = db.Prepare("UPDATE customers SET lastbill = datetime(?,'utc') WHERE id = ?")
checkErr(err)
- _, err = stmt.Exec(timstr, custid)
+ _, err = stmt.Exec(datestr, custid)
checkErr(err)
- fmt.Println(frame(posR(),false))
+ //fmt.Println(frame(posR(),false))
}
func checkTasks(in []int, billid int) {
@@ -1530,13 +1538,15 @@ func AddPayment(dat string) {
fmt.Println(sub("Invoices"))
for _,bi := range mybills{
bsum := 0.0
+ hsum := 0.0
for _,it := range bi.items {
bsum += it.Money
+ hsum += it.Hours
}
- fmt.Printf("%s %s : %s (%s) %.2f[€]\n",nli,bi.identity,bi.projectname,bi.date.Format("2006-01-02 15:04"),bsum)
+ fmt.Printf("%s %s : %s (%s) %.1f[h] %.2f[€]\n",nli,bi.identity,bi.projectname,bi.date.Format("2006-01-02 15:04"),hsum,bsum)
}
if amtfl != sum {
- fmt.Println(sli,boldRed(" The sum of the billsi (",sum,"€) does not match Payment amount!"))
+ fmt.Println(sli,boldRed(" The sum of the bills (",sum,"€) does not match Payment amount!"))
if amtfl > sum {
fmt.Printf("%s %.2f € Overpaid\n",nli,(amtfl-sum) )
}
@@ -1546,11 +1556,14 @@ func AddPayment(dat string) {
}
if isInterSure(sli+"Do you want to continue?") {
paym := Payment{0,icust,amtfl,date,selids}
- SavePayment(paym)
+ pid := SavePayment(paym)
+ for _,bi := range mybills {
+ checkBill(bi.id,pid,bi.project,date.UTC().Format("2006-01-02 15:04"))
+ }
fmt.Println(frame(posR(),false))
}else{
fmt.Println(frame("Closing payment",false))
- }//fmt.Println(paym)
+ }//fmt.Println(paym)checkBill(billid, payid, projectid int, datestr string)
}
func addCustomer() {
boldRed := color.New(color.FgRed, color.Bold).SprintFunc()