一个余额
This commit is contained in:
@@ -67,7 +67,7 @@ func PublishJob(ctx *jxcontext.Context, job *model.Job) (err error) {
|
||||
return fmt.Errorf("未查询到该用户的账单!")
|
||||
}
|
||||
job.TotalPrice = job.Count * job.AvgPrice
|
||||
if userBill.DepositBalance < job.TotalPrice {
|
||||
if userBill.AccountBalance < job.TotalPrice {
|
||||
job.Status = model.JobStatusFailed
|
||||
} else {
|
||||
job.Status = model.JobStatusDoing
|
||||
@@ -116,12 +116,12 @@ func PublishJob(ctx *jxcontext.Context, job *model.Job) (err error) {
|
||||
//发布任务要扣除任务总额的保证金,不够扣就要进行充值
|
||||
if err == nil && job.Status != model.JobStatusFailed {
|
||||
//1、账户支出增加一条记录
|
||||
if err = financial.AddBillExpend(db, userBill.BillID, model.OrderTypeDeposit, job.TotalPrice); err != nil {
|
||||
if err = financial.AddBillExpend(db, userBill.BillID, model.BillTypeDeposit, job.TotalPrice); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
//2、账户表保证金总额减少相应值
|
||||
userBill.DepositBalance -= job.TotalPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "DepositBalance"); err != nil {
|
||||
//2、账户表余额减少相应值
|
||||
userBill.AccountBalance -= job.TotalPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "AccountBalance"); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
}
|
||||
@@ -151,13 +151,13 @@ func CancelPublishJob(ctx *jxcontext.Context, jobID int) (err error) {
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
//1、根据任务剩余数量退钱到任务保证金余额中
|
||||
userBill.DepositBalance += job.SurplusCount * job.AvgPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "DepositBalance"); err != nil {
|
||||
//1、根据任务剩余数量退钱到账户余额中
|
||||
userBill.AccountBalance += job.SurplusCount * job.AvgPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "AccountBalance"); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
//2、账户收入增加一条记录
|
||||
if err = financial.AddBillIncome(db, userBill.BillID, model.OrderTypeDeposit, job.SurplusCount*job.AvgPrice); err != nil {
|
||||
if err = financial.AddBillIncome(db, userBill.BillID, model.BillTypeJobCancelOverdue, job.SurplusCount*job.AvgPrice); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
//3、任务状态被取消
|
||||
@@ -274,12 +274,12 @@ func CancelAcceptJob(ctx *jxcontext.Context, jobID int, jobOrderID int64) (err e
|
||||
}
|
||||
//如果状态不正常(取消或者过期)就要把这一笔退回去
|
||||
//1、根据任务剩余数量退钱到任务保证金余额中
|
||||
userBill.DepositBalance += job.AvgPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "DepositBalance"); err != nil {
|
||||
userBill.AccountBalance += job.AvgPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "AccountBalance"); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
//2、账户收入增加一条记录
|
||||
if err = financial.AddBillIncome(db, userBill.BillID, model.OrderTypeDeposit, job.AvgPrice); err != nil {
|
||||
if err = financial.AddBillIncome(db, userBill.BillID, model.BillTypeJobCancelOverdue, job.AvgPrice); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
//3、任务订单状态被取消
|
||||
@@ -399,19 +399,19 @@ func AuditJob(ctx *jxcontext.Context, jobOrderID, status int, comment string) (e
|
||||
dao.Rollback(db)
|
||||
}
|
||||
//接收人账户收入增加一条
|
||||
if err = financial.AddBillIncome(db, userBillJobOrder.BillID, model.OrderTypeJob, job.AvgPrice); err != nil {
|
||||
if err = financial.AddBillIncome(db, userBillJobOrder.BillID, model.BillTypeJob, job.AvgPrice); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
} else {
|
||||
if job.Status < 0 {
|
||||
userBill, err := dao.GetUserBill(db, job.UserID, "")
|
||||
//1、根据任务剩余数量退钱到任务保证金余额中
|
||||
userBill.DepositBalance += job.AvgPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "DepositBalance"); err != nil {
|
||||
userBill.AccountBalance += job.AvgPrice
|
||||
if _, err = dao.UpdateEntity(db, userBill, "AccountBalance"); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
//2、账户收入增加一条记录
|
||||
if err = financial.AddBillIncome(db, userBill.BillID, model.OrderTypeDeposit, job.AvgPrice); err != nil {
|
||||
if err = financial.AddBillIncome(db, userBill.BillID, model.BillTypeJobAuditUnPassWithCancelOverdue, job.AvgPrice); err != nil {
|
||||
dao.Rollback(db)
|
||||
}
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user