zhangqian
2024-02-06 ad7fc139fb5b3a83758f07ce46b7eeaf31da68ff
proto/crm_aps/server.go
@@ -11,6 +11,7 @@
   "errors"
   "fmt"
   "github.com/shopspring/decimal"
   "gorm.io/gorm"
)
type Server struct {
@@ -127,7 +128,7 @@
         MemberName:   detail.Member.Username,
         SignTime:     detail.SignTime,
         DeliveryDate: detail.DeliveryDate,
         Source:       detail.Source,
         Source:       "CRM",
         ProductTotal: total.IntPart(),
         ProjectId:    req.ProjectId,
         Products:     products,
@@ -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("销售明细状态不正确")
   }
   salesDetail, err := model.NewSalesDetailsSearch().SetNumber(req.Number).First()
   if err == gorm.ErrRecordNotFound {
      return nil, errors.New("销售明细不存在")
   }
   salesDetail.Status = status
   err = model.NewSalesDetailsSearch().SetId(salesDetail.Id).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
}