From bc244ad2ce2cdab4934742506334d38b14de1eea Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期一, 05 二月 2024 17:18:25 +0800 Subject: [PATCH] 增加更改和删除销售明细grpc接口 --- proto/crm_aps/server.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-) diff --git a/proto/crm_aps/server.go b/proto/crm_aps/server.go index 9f58fac..1a45676 100644 --- a/proto/crm_aps/server.go +++ b/proto/crm_aps/server.go @@ -11,6 +11,7 @@ "errors" "fmt" "github.com/shopspring/decimal" + "gorm.io/gorm" ) type Server struct { @@ -166,3 +167,47 @@ } return resp, nil } +func (s *Server) UpdateSalesDetail(ctx context.Context, req *UpdateSalesDetailRequest) (*UpdateSalesDetailResponse, error) { + if req.Number == "" { + return nil, errors.New("閿�鍞槑缁嗙紪鍙蜂负绌�") + } + if req.Status == 0 { + return nil, errors.New("閿�鍞槑缁嗙姸鎬佷负绌�") + } + + status := constvar.SalesDetailsStatus(int(req.Status)) + if !status.Valid() { + return nil, errors.New("閿�鍞槑缁嗙姸鎬佷笉姝g‘") + } + + salesDetail, err := model.NewSalesDetailsSearch().SetNumber(req.Number).First() + if err == gorm.ErrRecordNotFound { + return nil, errors.New("閿�鍞槑缁嗕笉瀛樺湪") + } + + salesDetail.Status = status + err = model.NewSalesDetailsSearch().Update(salesDetail) + if err != nil { + return nil, errors.New("鏇存敼CRM閿�鍞槑缁嗗け璐�") + } + + return &UpdateSalesDetailResponse{}, nil +} + +func (s *Server) RemoveSalesDetail(ctx context.Context, req *RemoveSalesDetailRequest) (*RemoveSalesDetailRequest, error) { + if req.Number == "" { + return nil, errors.New("閿�鍞槑缁嗙紪鍙蜂负绌�") + } + + _, err := model.NewSalesDetailsSearch().SetNumber(req.Number).First() + if err == gorm.ErrRecordNotFound { + return nil, errors.New("閿�鍞槑缁嗕笉瀛樺湪") + } + + err = model.NewSalesDetailsSearch().SetNumber(req.Number).Delete() + if err == gorm.ErrRecordNotFound { + return nil, errors.New("閿�鍞槑缁嗗垹闄ゅけ璐�") + } + + return &RemoveSalesDetailRequest{}, nil +} -- Gitblit v1.8.0