From d4bf53dd19a45ef09a367babcf7a2ac04ae1d08f Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期二, 17 十月 2023 14:31:31 +0800 Subject: [PATCH] bug修改 --- api/v1/salesRefund.go | 68 +++++++++++++++++++++++++++++++-- 1 files changed, 63 insertions(+), 5 deletions(-) diff --git a/api/v1/salesRefund.go b/api/v1/salesRefund.go index 1027e34..cbce386 100644 --- a/api/v1/salesRefund.go +++ b/api/v1/salesRefund.go @@ -1,20 +1,23 @@ 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/utils" "github.com/gin-gonic/gin" "strconv" + "strings" ) type SalesRefundApi struct{} // Add // -// @Tags SalesRefund +// @Tags 閿�鍞��娆惧崟 // @Summary 娣诲姞閿�鍞��娆� // @Produce application/json // @Param object body request.AddSalesRefundRequest true "鏌ヨ鍙傛暟" @@ -33,10 +36,25 @@ return } + if salesRefund.MemberId == 0 { + userInfo := utils.GetUserInfo(c) + if userInfo.UserType == constvar.UserTypeSub { + salesRefund.MemberId = userInfo.CrmUserId + } + } + errCode = salesRefundService.AddSalesRefund(&salesRefund) if errCode != ecode.OK { ctx.Fail(errCode) return + } + + if params.SalesRefund.CodeRule.Method == 1 { + autoCode := model.GetAutoCode(salesRefund.Id, ¶ms.SalesRefund.CodeRule) + m := map[string]interface{}{ + "number": autoCode, + } + _ = model.NewSalesRefundSearch().SetId(salesRefund.Id).UpdateByMap(m) } ctx.Ok() @@ -44,7 +62,7 @@ // Delete // -// @Tags SalesRefund +// @Tags 閿�鍞��娆惧崟 // @Summary 鍒犻櫎閿�鍞��娆� // @Produce application/json // @Param id path int true "鏌ヨ鍙傛暟" @@ -66,9 +84,40 @@ ctx.Ok() } +// BatchDelete +// @Tags 閿�鍞��娆惧崟 +// @Summary 鎵归噺鍒犻櫎閿�鍞��娆惧崟 +// @Produce application/json +// @Param object body request.CommonIds true "鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/salesRefund/delete [delete] +func (s *SalesRefundApi) BatchDelete(c *gin.Context) { + var params request.CommonIds + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + failIds, _ := salesRefundService.BatchDeleteSalesRefund(params.Ids) + if len(failIds) == 0 { + ctx.Ok() + return + } + salesReturns, code := salesRefundService.GetSalesRefundListByIds(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 SalesRefund +// @Tags 閿�鍞��娆惧崟 // @Summary 鏇存柊閿�鍞��娆� // @Produce application/json // @Param object body request.UpdateSalesRefundRequest true "鏌ヨ鍙傛暟" @@ -108,13 +157,16 @@ salesRefundRes.IsInvoice = salesRefund.IsInvoice salesRefundRes.Reason = salesRefund.Reason salesRefundRes.Products = salesRefund.Products + salesRefundRes.SourceType = salesRefund.SourceType + salesRefundRes.SourceId = salesRefund.SourceId + salesRefundRes.CodeStandID = salesRefund.CodeStandID return ecode.OK, salesRefundRes } // List // -// @Tags SalesRefund +// @Tags 閿�鍞��娆惧崟 // @Summary 閿�鍞��娆惧崟鍒楄〃 // @Produce application/json // @Param object body request.GetSalesRefundList true "鍙傛暟" @@ -127,7 +179,13 @@ return } - salesRefunds, total, errCode := salesRefundService.GetSalesRefundList(params.Page, params.PageSize, params.Keyword) + var memberIds []int + userInfo := utils.GetUserInfo(c) + if userInfo.UserType == constvar.UserTypeSub { + memberIds = []int{userInfo.CrmUserId} + } + + salesRefunds, total, errCode := salesRefundService.GetSalesRefundList(params.Page, params.PageSize, params.KeywordType, params.Keyword, params.SourceId, memberIds) if errCode != ecode.OK { ctx.Fail(errCode) return -- Gitblit v1.8.0