From 530fed8ec225453572d57b15c200ab062c335457 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期三, 01 十一月 2023 19:20:21 +0800 Subject: [PATCH] 公海member_id使用0 --- api/v1/vetting.go | 89 ++++++++++++++++++++++++++++++++++++++------ 1 files changed, 76 insertions(+), 13 deletions(-) diff --git a/api/v1/vetting.go b/api/v1/vetting.go index c5a676f..4b7a96d 100644 --- a/api/v1/vetting.go +++ b/api/v1/vetting.go @@ -1,8 +1,12 @@ package v1 import ( + "aps_crm/constvar" + "aps_crm/model" "aps_crm/model/request" "aps_crm/pkg/contextx" + "aps_crm/pkg/ecode" + "aps_crm/utils" "github.com/gin-gonic/gin" ) @@ -23,19 +27,78 @@ return } - //errCode, vetting := checkVettingParams(params.Vetting) - //if errCode != ecode.OK { - // ctx.Fail(errCode) - // return - //} - // - //// check member exist - // - //errCode = vettingService.AddVetting(vetting) - //if errCode != ecode.OK { - // ctx.Fail(errCode) - // return - //} + errCode, vetting := checkVettingParams(¶ms) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + // check member exist + + errCode = vettingService.AddVetting(vetting) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } ctx.Ok() } + +// Update +// +// @Tags Vetting +// @Summary 鏇存柊瀹℃壒 +// @Produce application/json +// @Param object body request.UpdateVetting true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/vetting/update [post] +func (vet *VettingApi) Update(c *gin.Context) { + var params request.UpdateVetting + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + vetting, err := model.NewVettingSearch().SetId(params.Id).Get() + if err != nil { + ctx.Fail(ecode.VettingNotExist) + return + } + + waitUse, _ := utils.GetClaims(c) + // 濡備綍褰撳墠鐢ㄦ埛鏄秴绾х鐞嗗憳锛屽垯涓嶉渶瑕佸垽鏂� + if waitUse.UserType != constvar.UserTypeSuper { + userId := waitUse.UserId + user, err := model.NewUserSearch(nil).SetId(userId).First() + if err != nil { + return + } + + if user.ID != vetting.UserId { + ctx.Fail(ecode.VettingNotBelongToUser) + return + } + } + + vetting.Status = params.Status + + errCode := vettingService.UpdateVetting(vetting) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.Ok() +} + +func checkVettingParams(vetting *request.AddVetting) (int, *model.Vetting) { + + v := &model.Vetting{ + Opinion: vetting.Opinion, + Status: vetting.Status, + UserId: vetting.UserId, + VettingId: vetting.VettingId, + } + + return ecode.OK, v +} -- Gitblit v1.8.0