zhangqian
2024-02-05 bc244ad2ce2cdab4934742506334d38b14de1eea
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("销售明细状态不正确")
   }
   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
}