From 90ebefc0ce4306bdc96f34ea9503ca986a59bbe7 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期三, 31 一月 2024 14:12:00 +0800
Subject: [PATCH] 客户列表grpc接口

---
 proto/crm_aps/server.go |   29 +++++++++++++++++++++++++++++
 1 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/proto/crm_aps/server.go b/proto/crm_aps/server.go
index b626b02..d199c7b 100644
--- a/proto/crm_aps/server.go
+++ b/proto/crm_aps/server.go
@@ -4,8 +4,12 @@
 	"aps_crm/constvar"
 	"aps_crm/model"
 	"aps_crm/model/grpc_init"
+	"aps_crm/pkg/ecode"
 	"aps_crm/proto/product_inventory"
+	"aps_crm/service"
 	"context"
+	"errors"
+	"fmt"
 	"github.com/shopspring/decimal"
 )
 
@@ -137,3 +141,28 @@
 	}
 	return new(SendSalesDetailsAndProjectToCrmResponse), nil
 }
+
+func (s *Server) GetClientList(ctx context.Context, req *GetClientListRequest) (*GetClientListResponse, error) {
+	if req.Page <= 0 || req.PageSize == 0 {
+		return nil, errors.New("鍙傛暟閿欒")
+	}
+	clientService := new(service.ClientService)
+	params := map[string]interface{}{}
+	if req.Keyword != "" {
+		params["name"] = req.Keyword
+	}
+	clients, total, errCode := clientService.GetClientList(int(req.Page), int(req.PageSize), params)
+	if errCode != ecode.OK {
+		return nil, errors.New(fmt.Sprintf("鍐呴儴閿欒, code:%v", errCode))
+	}
+	resp := new(GetClientListResponse)
+	resp.Total = total
+	resp.List = make([]*Client, 0, len(clients))
+	for _, client := range clients {
+		resp.List = append(resp.List, &Client{
+			Number: client.Number,
+			Name:   client.Name,
+		})
+	}
+	return resp, nil
+}

--
Gitblit v1.8.0