From c42cff043c049c0b12aca91bca31cd0799ea6f7a Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期五, 11 八月 2023 13:54:19 +0800 Subject: [PATCH] 增删改收款单时更改销售明细和服务合同应收金额 --- model/salesDetails.go | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-) diff --git a/model/salesDetails.go b/model/salesDetails.go index ff92423..301794b 100644 --- a/model/salesDetails.go +++ b/model/salesDetails.go @@ -173,3 +173,45 @@ return nil } + +func (slf *SalesDetailsSearch) SetOrm(tx *gorm.DB) *SalesDetailsSearch { + slf.Orm = tx + return slf +} + +func (slf *SalesDetailsSearch) AmountReceivableAdd(tx *gorm.DB, id int, amount decimal.Decimal) error { + slf.Orm = tx + record, err := slf.SetId(id).First() + if err != nil { + return err + } + amount = record.AmountReceivable.Add(amount) + return slf.UpdateByMap(map[string]interface{}{"amount_receivable": amount}) +} +func (slf *SalesDetailsSearch) AmountReceivedAdd(tx *gorm.DB, id int, amount decimal.Decimal) error { + slf.Orm = tx + record, err := slf.SetId(id).First() + if err != nil { + return err + } + amount = record.AmountReceived.Add(amount) + return slf.UpdateByMap(map[string]interface{}{"amount_received": amount}) +} +func (slf *SalesDetailsSearch) AmountInvoicedAdd(tx *gorm.DB, id int, amount decimal.Decimal) error { + slf.Orm = tx + record, err := slf.SetId(id).First() + if err != nil { + return err + } + amount = record.AmountInvoiced.Add(amount) + return slf.UpdateByMap(map[string]interface{}{"amount_invoiced": amount}) +} +func (slf *SalesDetailsSearch) AmountNotInvoicedAdd(tx *gorm.DB, id int, amount decimal.Decimal) error { + slf.Orm = tx + record, err := slf.SetId(id).First() + if err != nil { + return err + } + amount = record.AmountUnInvoiced.Add(amount) + return slf.UpdateByMap(map[string]interface{}{"amount_not_invoiced": amount}) +} -- Gitblit v1.8.0