mirror of
https://github.com/rjNemo/rentease.git
synced 2026-06-06 02:36:49 +00:00
27 lines
638 B
Go
27 lines
638 B
Go
package booking
|
|
|
|
import (
|
|
"github.com/rjNemo/rentease/internal/config"
|
|
)
|
|
|
|
func (bs Service) ParseFromAPI(rawContent string) (*Booking, error) {
|
|
b, err := bs.parser.Parse(rawContent)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
items := b.Items
|
|
b = bs.Create(b.From, b.To, b.Name, b.PhoneNumber, b.Email, string(b.Platform), b.CustomerNumber, b.PlatformFees, b.ExternalID)
|
|
|
|
hostItems := config.NewHost().Items
|
|
for _, itm := range items {
|
|
hostItem, ok := hostItems[itm.Item]
|
|
if !ok {
|
|
continue
|
|
}
|
|
|
|
bs.CreateItem(b.ID, hostItem, itm.Quantity, itm.Price, itm.PaymentMethod, b.CustomerNumber, string(b.Platform))
|
|
}
|
|
|
|
return b, nil
|
|
}
|