From 138d775a5df0214caf83cb5c5ee5060b107fa69b Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 13 十月 2023 14:47:54 +0800
Subject: [PATCH] 销售退货单简单数据权限
---
api/v1/salesRefund.go | 10 +++++++++-
model/salesRefund.go | 10 ++++++++++
service/salesRefund.go | 3 ++-
3 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/api/v1/salesRefund.go b/api/v1/salesRefund.go
index 866b9dc..6a6f019 100644
--- a/api/v1/salesRefund.go
+++ b/api/v1/salesRefund.go
@@ -1,11 +1,13 @@
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"
@@ -161,7 +163,13 @@
return
}
- salesRefunds, total, errCode := salesRefundService.GetSalesRefundList(params.Page, params.PageSize, params.KeywordType, 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, memberIds)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
diff --git a/model/salesRefund.go b/model/salesRefund.go
index c68a0e9..f62582c 100644
--- a/model/salesRefund.go
+++ b/model/salesRefund.go
@@ -42,6 +42,7 @@
PageSize int
Preload bool
Ids []int
+ MemberIds []int
}
)
@@ -107,6 +108,10 @@
db = db.Where("amount_total like ?", fmt.Sprintf("%%%s%%", slf.Keyword))
}
+ }
+
+ if len(slf.MemberIds) > 0 {
+ db = db.Where("member_id in ?", slf.MemberIds)
}
return db
@@ -205,3 +210,8 @@
slf.OrderBy = order
return slf
}
+
+func (slf *SalesRefundSearch) SetMemberIds(memberIds []int) *SalesRefundSearch {
+ slf.MemberIds = memberIds
+ return slf
+}
diff --git a/service/salesRefund.go b/service/salesRefund.go
index d3fe5f8..9271249 100644
--- a/service/salesRefund.go
+++ b/service/salesRefund.go
@@ -168,12 +168,13 @@
return ecode.OK
}
-func (SalesRefundService) GetSalesRefundList(page, pageSize int, keywordType constvar.SalesRefundKeywordType, keyword string) ([]*model.SalesRefund, int64, int) {
+func (SalesRefundService) GetSalesRefundList(page, pageSize int, keywordType constvar.SalesRefundKeywordType, keyword string, memberIds []int) ([]*model.SalesRefund, int64, int) {
// get contact list
contacts, total, err := model.NewSalesRefundSearch().
SetKeywordType(keywordType).
SetKeyword(keyword).
SetPreload(true).
+ SetMemberIds(memberIds).
SetPage(page, pageSize).FindAll()
if err != nil {
return nil, 0, ecode.SalesRefundListErr
--
Gitblit v1.8.0