zhangqian
2024-04-07 f80c6068d5e2ae5b9101125497b4de88726e1d9e
service/salesDetails.go
@@ -132,3 +132,34 @@
   }
   return contacts, total, ecode.OK
}
func (SalesDetailsService) GetSalesDetails(saleDetailID int) (*model.SalesDetails, error) {
   return model.NewSalesDetailsSearch().SetId(saleDetailID).SetPreload(true).First()
}
func (SalesDetailsService) GetSalesDetailsByNumber(number string) (*model.SalesDetails, error) {
   return model.NewSalesDetailsSearch().SetNumber(number).SetPreload(true).First()
}
func (SalesDetailsService) GetDeliveryOrder(saleDetailID int) ([]*model.DeliveryOrder, error) {
   // get contact list
   orders, err := model.NewDeliveryOrderSearch().SetSalesDetailsID(saleDetailID).FindAll()
   return orders, err
}
func (slf SalesDetailsService) GetProducts(saleDetailNumber string) (products []*model.Product, err error) {
   salesDetails, err := slf.GetSalesDetailsByNumber(saleDetailNumber)
   if err != nil {
      return nil, err
   }
   // get contact list
   salesDetailsProducts, err := model.NewSalesDetailsProductSearch().SetSalesDetailsId(salesDetails.Id).FindAll()
   if err != nil {
      return
   }
   productIDs := make([]uint, 0)
   for _, v := range salesDetailsProducts {
      productIDs = append(productIDs, v.ProductId)
   }
   return model.NewProductSearch(nil).SetIds(productIDs).FindAll()
}