| | |
| | | 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" |
| | | ) |
| | | |
| | |
| | | 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 |
| | | } |