wangpengfei
2023-07-21 357fa7bd92da576786fac0f5754cd75900d79bf7
api/v1/vetting.go
@@ -1,10 +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"
)
@@ -42,6 +44,53 @@
   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, &params)
   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{