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/salesReturn.go | 91 +++++++++++++++++++++++++++++++++------------ 1 files changed, 66 insertions(+), 25 deletions(-) diff --git a/api/v1/salesReturn.go b/api/v1/salesReturn.go index 2a55b45..70d3643 100644 --- a/api/v1/salesReturn.go +++ b/api/v1/salesReturn.go @@ -1,20 +1,24 @@ package v1 import ( + "aps_crm/constvar" "aps_crm/model" "aps_crm/model/request" "aps_crm/model/response" "aps_crm/pkg/contextx" "aps_crm/pkg/ecode" + "aps_crm/pkg/structx" + "aps_crm/utils" "github.com/gin-gonic/gin" "strconv" + "strings" ) type SalesReturnApi struct{} // Add // -// @Tags SalesReturn +// @Tags 閿�鍞��璐у崟 // @Summary 娣诲姞閿�鍞��璐� // @Produce application/json // @Param object body request.AddSalesReturnRequest true "鏌ヨ鍙傛暟" @@ -33,6 +37,23 @@ return } + count, err := model.NewSalesReturnSearch().SetNumber(salesReturn.Number).Count() + if err != nil { + ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜楠岃瘉澶辫触") + return + } + if count > 0 { + ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜宸插瓨鍦�") + return + } + + if salesReturn.MemberId == 0 { + userInfo := utils.GetUserInfo(c) + if userInfo.UserType == constvar.UserTypeSub { + salesReturn.MemberId = userInfo.CrmUserId + } + } + errCode = salesReturnService.AddSalesReturn(&salesReturn) if errCode != ecode.OK { ctx.Fail(errCode) @@ -44,7 +65,7 @@ // Delete // -// @Tags SalesReturn +// @Tags 閿�鍞��璐у崟 // @Summary 鍒犻櫎閿�鍞��璐� // @Produce application/json // @Param id path int true "鏌ヨ鍙傛暟" @@ -66,9 +87,39 @@ ctx.Ok() } +// BatchDelete +// @Tags 閿�鍞��璐у崟 +// @Summary 鎵归噺鍒犻櫎閿�鍞��璐у崟 +// @Produce application/json +// @Param object body request.CommonIds true "鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/salesReturn/delete [delete] +func (s *SalesReturnApi) BatchDelete(c *gin.Context) { + var params request.CommonIds + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + failIds, _ := salesReturnService.BatchDeleteSalesReturn(params.Ids) + if len(failIds) == 0 { + ctx.Ok() + return + } + salesReturns, code := salesReturnService.GetSalesReturnListByIds(failIds) + if code != ecode.OK { + ctx.Ok() + return + } + var numbers []string + for _, salesReturn := range salesReturns { + numbers = append(numbers, salesReturn.Number) + } + ctx.FailWithMsg(ecode.DBErr, strings.Join(numbers, ",")+"鍒犻櫎澶辫触") +} + // Update // -// @Tags SalesReturn +// @Tags 閿�鍞��璐у崟 // @Summary 鏇存柊閿�鍞��璐� // @Produce application/json // @Param object body request.UpdateSalesReturnRequest true "鏌ヨ鍙傛暟" @@ -100,33 +151,17 @@ } func checkSalesReturnParams(salesReturn request.SalesReturn) (errCode int, s model.SalesReturn) { - //if salesReturn.Number == "" { - // return ecode.InvalidParams, s - //} - // - //if salesReturn.Repository == "" { - // return ecode.InvalidParams, s - //} - // - //if salesReturn.MemberId == 0 { - // return ecode.InvalidParams, s - //} - - s.ClientId = salesReturn.ClientId - s.ReturnDate = salesReturn.ReturnDate - s.Number = salesReturn.Number - s.Repository = salesReturn.Repository - s.MemberId = salesReturn.MemberId - s.SalesReturnStatusId = salesReturn.SalesReturnStatusId - s.Reason = salesReturn.Reason - s.Products = salesReturn.Products + err := structx.AssignTo(salesReturn, &s) + if err != nil { + return ecode.ParamsErr, s + } return ecode.OK, s } // List // -// @Tags SalesReturn +// @Tags 閿�鍞��璐у崟 // @Summary 閿�鍞��璐у崟鍒楄〃 // @Produce application/json // @@ -141,7 +176,13 @@ return } - salesReturns, total, errCode := salesReturnService.GetSalesReturnList(params.Page, params.PageSize, params.KeywordType, params.Keyword) + var memberIds []int + userInfo := utils.GetUserInfo(c) + if userInfo.UserType == constvar.UserTypeSub { + memberIds = userInfo.SubUserIds + } + + salesReturns, total, errCode := salesReturnService.GetSalesReturnList(params, memberIds) if errCode != ecode.OK { ctx.Fail(errCode) return -- Gitblit v1.8.0