任务分成
This commit is contained in:
@@ -501,20 +501,34 @@ func AuditJob(ctx *jxcontext.Context, jobOrderID, status int, comment string) (e
|
||||
}
|
||||
if status == model.JobOrderStatusAuditPass {
|
||||
//若完成任务的人在某个群组中,则要向群主分成
|
||||
// if messageGroupMembers, err := dao.GetMessageGroupMembers(db, 0, model.GroupTypeMulit, jobOrder.UserID); err == nil {
|
||||
// if len(messageGroupMembers) > 1 {
|
||||
// return fmt.Errorf("审核异常,该任务提交人加入了多个群组!")
|
||||
// } else if len(messageGroupMembers) == 1 {
|
||||
// if messageGroupsResult, err := dao.GetMessageGroups(db, "", messageGroupMembers[0].GroupID, model.GroupTypeMulit, false, ""); err == nil {
|
||||
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//接收人账户收入
|
||||
userBillJobOrder, err := dao.GetUserBill(db, jobOrder.UserID, "")
|
||||
if err = financial.AddIncomeUpdateAccount(db, userBillJobOrder, model.BillTypeJob, job.AvgPrice); err != nil {
|
||||
dao.Rollback(db)
|
||||
return err
|
||||
if messageGroupMembers, err := dao.GetMessageGroupMembers(db, 0, model.GroupTypeMulit, jobOrder.UserID); err == nil {
|
||||
if len(messageGroupMembers) > 1 {
|
||||
return fmt.Errorf("审核异常,该任务提交人加入了多个群组!")
|
||||
} else if len(messageGroupMembers) == 1 {
|
||||
if messageGroupsResult, err := dao.GetMessageGroups(db, "", messageGroupMembers[0].GroupID, model.GroupTypeMulit, false, ""); err == nil {
|
||||
if len(messageGroupsResult) == 1 {
|
||||
if userBillGroupMaster, err := dao.GetUserBill(db, messageGroupsResult[0].UserID, ""); err == nil {
|
||||
if err = financial.AddIncomeUpdateAccount(db, userBillGroupMaster, model.BillTypeDivide, job.AvgPrice*messageGroupsResult[0].DividePercentage/100); err != nil {
|
||||
dao.Rollback(db)
|
||||
return err
|
||||
}
|
||||
}
|
||||
//接收人账户收入
|
||||
userBillJobOrder, err := dao.GetUserBill(db, jobOrder.UserID, "")
|
||||
if err = financial.AddIncomeUpdateAccount(db, userBillJobOrder, model.BillTypeJobDivide, job.AvgPrice*(100-messageGroupsResult[0].DividePercentage)/100); err != nil {
|
||||
dao.Rollback(db)
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if len(messageGroupMembers) == 0 { //若没有在某个群组,则得到全部
|
||||
//接收人账户收入
|
||||
userBillJobOrder, err := dao.GetUserBill(db, jobOrder.UserID, "")
|
||||
if err = financial.AddIncomeUpdateAccount(db, userBillJobOrder, model.BillTypeJob, job.AvgPrice); err != nil {
|
||||
dao.Rollback(db)
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
jobOrder.Status = model.JobOrderStatusFinish
|
||||
if _, err = dao.UpdateEntity(db, jobOrder, "Status"); err != nil {
|
||||
|
||||
@@ -6,6 +6,8 @@ const (
|
||||
BillTypeJobCancelOverdue = 12 //任务过期或取消
|
||||
BillTypeJobAuditUnPassWithCancelOverdue = 13 //任务不通过时,任务已取消或过期
|
||||
BillTypeSpJob = 14 //特殊任务扣除
|
||||
BillTypeDivide = 15 //群员做任务分成
|
||||
BillTypeJobDivide = 16 //做任务实得(被扣除分成后)
|
||||
|
||||
BillTypeMember = 20 //开通会员
|
||||
|
||||
|
||||
Reference in New Issue
Block a user