Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hilo-common
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hujiebin
hilo-common
Commits
55cc1f2a
Commit
55cc1f2a
authored
Aug 21, 2023
by
hujiebin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Revert "feat:明细去掉bef/aft"
This reverts commit
653c7e69
.
parent
653c7e69
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
34 additions
and
39 deletions
+34
-39
diamond.go
txop/diamond_tx/diamond.go
+34
-39
No files found.
txop/diamond_tx/diamond.go
View file @
55cc1f2a
...
...
@@ -96,7 +96,8 @@ func TxAddReduceDiamondAccount(model *domain.Model, userId mysql.ID, operateType
if
diamondAccount
.
Status
==
diamond_e
.
Frozen
&&
diamondOperateSet
.
AddReduce
==
mysql
.
REDUCE
{
return
fmt
.
Errorf
(
"bizerr.DiamondAccountFrozen"
)
}
err
=
model
.
Transaction
(
func
(
model
*
domain
.
Model
)
error
{
return
model
.
Transaction
(
func
(
model
*
domain
.
Model
)
error
{
// 更新diamondAccount表
var
db
*
gorm
.
DB
if
diamondOperateSet
.
AddReduce
==
mysql
.
ADD
{
...
...
@@ -122,16 +123,38 @@ func TxAddReduceDiamondAccount(model *domain.Model, userId mysql.ID, operateType
return
myerr
.
NewWaring
(
"gorm condition update.RowsAffected = 0"
)
}
// 写后读(写后缓存都会丢失,多读一次不影响)
//newAccount := new(diamond_m.DiamondAccount)
//if err := model.DB().Model(diamond_m.DiamondAccount{}).Where("id = ?", diamondAccount.ID).First(newAccount).Error; err != nil {
// model.Log.Errorf("newAccount err:%v", err)
// return err
//}
//if newAccount.DiamondNum < 0 {
// model.Log.Errorf("newAccount 0")
// return myerr.NewSysError("newAccount 0")
//}
newAccount
:=
new
(
diamond_m
.
DiamondAccount
)
if
err
:=
model
.
DB
()
.
Model
(
diamond_m
.
DiamondAccount
{})
.
Where
(
"id = ?"
,
diamondAccount
.
ID
)
.
First
(
newAccount
)
.
Error
;
err
!=
nil
{
model
.
Log
.
Errorf
(
"newAccount err:%v"
,
err
)
return
err
}
if
newAccount
.
DiamondNum
<
0
{
model
.
Log
.
Errorf
(
"newAccount 0"
)
return
myerr
.
NewSysError
(
"newAccount 0"
)
}
// 更新明细
befNum
:=
mysql
.
Num
(
0
)
if
diamondOperateSet
.
AddReduce
==
mysql
.
ADD
{
befNum
=
newAccount
.
DiamondNum
-
diamondNum
}
if
diamondOperateSet
.
AddReduce
==
mysql
.
REDUCE
{
befNum
=
newAccount
.
DiamondNum
+
diamondNum
}
if
err
:=
model
.
DB
()
.
Table
(
diamond_m
.
DiamondAccountDetail
{}
.
TableName
())
.
Create
(
&
diamond_m
.
DiamondAccountDetail
{
UserId
:
userId
,
DiamondAccountId
:
newAccount
.
ID
,
OperateId
:
diamondOperateSet
.
ID
,
OperateType
:
operateType
,
OriginId
:
originId
,
AddReduce
:
diamondOperateSet
.
AddReduce
,
Num
:
diamondNum
,
Remark
:
diamondOperateSet
.
Name
,
BefNum
:
befNum
,
AftNum
:
newAccount
.
DiamondNum
,
})
.
Error
;
err
!=
nil
{
model
.
Log
.
Errorf
(
"add detail fail:%v"
,
err
)
return
err
}
for
i
,
f
:=
range
extraTxFunc
{
if
err
:=
f
();
err
!=
nil
{
model
.
Log
.
Errorf
(
"extraFunc i:%v fail:%v"
,
i
,
err
)
...
...
@@ -140,32 +163,4 @@ func TxAddReduceDiamondAccount(model *domain.Model, userId mysql.ID, operateType
}
return
nil
})
if
err
!=
nil
{
model
.
Log
.
Errorf
(
"transaction fail:%v"
,
err
)
return
err
}
// 更新明细
//befNum := mysql.Num(0)
//if diamondOperateSet.AddReduce == mysql.ADD {
// befNum = newAccount.DiamondNum - diamondNum
//}
//if diamondOperateSet.AddReduce == mysql.REDUCE {
// befNum = newAccount.DiamondNum + diamondNum
//}
if
err
:=
model
.
DB
()
.
Table
(
diamond_m
.
DiamondAccountDetail
{}
.
TableName
())
.
Create
(
&
diamond_m
.
DiamondAccountDetail
{
UserId
:
userId
,
DiamondAccountId
:
diamondAccount
.
ID
,
OperateId
:
diamondOperateSet
.
ID
,
OperateType
:
operateType
,
OriginId
:
originId
,
AddReduce
:
diamondOperateSet
.
AddReduce
,
Num
:
diamondNum
,
Remark
:
diamondOperateSet
.
Name
,
BefNum
:
0
,
// 去掉
AftNum
:
0
,
})
.
Error
;
err
!=
nil
{
model
.
Log
.
Errorf
(
"add detail fail:%v"
,
err
)
//return err
}
return
nil
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment