diff --git a/pkg/model/approval.go b/pkg/model/approval.go index 11220c3..0ed8392 100644 --- a/pkg/model/approval.go +++ b/pkg/model/approval.go @@ -686,13 +686,39 @@ func MySubmitApprovals(in *approval.ListRequest) ([]*Approval, int64) { Preload("Exhibition.ApprovalExhibitions") if in.Status != 0 { - if in.Status == 6 { - modelObj.Where("status in ?", []int{4, 5}) - } else { - modelObj = modelObj.Where(&Approval{Status: int8(in.Status)}) - } + modelObj = modelObj.Where(&Approval{Status: int8(in.Status)}) + } + + if in.Type != "" { + modelObj = modelObj.Where(&Approval{Type: in.Type}) } + modelObj = modelObj.Where(&Approval{SubmitterID: in.UserID}) + + modelObj.Count(&count) + + modelObj.Limit(int(in.PageSize)).Offset(page.GetOffset(in.Page, in.PageSize)).Order("id desc").Find(&list) + + return list, count +} + +func MyReadApprovals(in *approval.ListRequest) ([]*Approval, int64) { + var list []*Approval + var count int64 + + //list + modelObj := DB.Model(&Approval{}). + Preload("Show"). + Preload("Work.ApprovalWorks"). + Preload("Bundle"). + Preload("BundlePayPrice"). + Preload("ApprovalWorkFlows"). + Preload("ExhibitionReward.ApprovalExhibitions"). + Preload("ApprovalType.ApprovalTypeGroup"). + Preload("Exhibition.ApprovalExhibitions") + + modelObj.Where(" json_contains(copy_users,JSON_OBJECT('ID', ?))", in.UserID) + if in.Type != "" { modelObj = modelObj.Where(&Approval{Type: in.Type}) } diff --git a/pkg/service/approval.go b/pkg/service/approval.go index 28d1c10..6171157 100644 --- a/pkg/service/approval.go +++ b/pkg/service/approval.go @@ -265,6 +265,8 @@ func (a *ApprovalProvider) MyWork(ctx context.Context, in *approval.ListRequest) if in.Status == 0 && in.ApprovedBossId == 0 { list, count = model.MyAllWorkApprovals(in) + } else if in.Status == 4 && in.ApprovedBossId == 0 { + list, count = model.MyReadApprovals(in) } else { list, count = model.MyWorkApprovals(in) }