From d1806d8cc6b7984a1133999c98b006dc4b46c0dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E6=B6=9B?= Date: Mon, 15 Aug 2022 18:31:55 +0800 Subject: [PATCH] =?UTF-8?q?enhance(charge):=E6=9C=8D=E5=8A=A1=E5=BB=B6?= =?UTF-8?q?=E6=9C=9F=E8=AE=B0=E5=BD=95=E5=BA=8F=E5=8F=B7=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E8=87=AA=E5=A2=9E=E9=95=BF=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- model/user_charges.go | 2 +- service/charge.go | 29 ++++++++++++++--------------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/model/user_charges.go b/model/user_charges.go index fd9af00..a157bab 100644 --- a/model/user_charges.go +++ b/model/user_charges.go @@ -8,7 +8,7 @@ import ( type UserCharge struct { Created `xorm:"extends"` - Seq int64 `xorm:"bigint pk not null" json:"seq"` + Seq int64 `xorm:"bigint pk not null autoincr" json:"seq"` UserId string `xorm:"varchar(120) not null" json:"userId"` Fee decimal.NullDecimal `xorm:"numeric(12,2)" json:"fee"` Discount decimal.NullDecimal `xorm:"numeric(5,4)" json:"discount"` diff --git a/service/charge.go b/service/charge.go index 1142d19..c1e3164 100644 --- a/service/charge.go +++ b/service/charge.go @@ -5,7 +5,6 @@ import ( "electricity_bill_calc/global" "electricity_bill_calc/model" "electricity_bill_calc/repository" - "electricity_bill_calc/utils" "time" "xorm.io/builder" @@ -17,25 +16,25 @@ type _ChargeService struct{} var ChargeService _ChargeService func (c _ChargeService) CreateChargeRecord(charge *model.UserCharge, extendWithIgnoreSettle bool) error { - var seqs = make([]int64, 0) - err := global.DBConn.Table(&model.UserCharge{}).Cols("seq").Find(&seqs) - if err != nil { - return err - } - maxSeq := utils.Reduce(seqs, 0, func(acc, elem int64) int64 { - if elem > acc { - return elem - } else { - return acc - } - }) + // var seqs = make([]int64, 0) + // err := global.DBConn.Table(&model.UserCharge{}).Cols("seq").Find(&seqs) + // if err != nil { + // return err + // } + // maxSeq := utils.Reduce(seqs, 0, func(acc, elem int64) int64 { + // if elem > acc { + // return elem + // } else { + // return acc + // } + // }) tx := global.DBConn.NewSession() defer tx.Close() if err := tx.Begin(); err != nil { return err } - charge.Seq = maxSeq + 1 - _, err = tx.Insert(charge) + charge.Seq = 0 + _, err := tx.Insert(charge) if err != nil { tx.Rollback() return err