@@ -5,67 +5,70 @@ import 'package:wooapp/model/cart_response.dart';
55import 'package:wooapp/model/order.dart' ;
66import 'package:wooapp/model/payment_method.dart' ;
77import 'package:wooapp/model/shipping_method.dart' ;
8- import 'package:wooapp/screens/orders/create/create_order_model.dart' ;
8+ import 'package:wooapp/screens/orders/create/model/ create_order_model.dart' ;
99
1010class CreateOrderDataSourceImpl extends CreateOrderDataSource {
1111 final WooApiClient _api = locator <WooApiClient >();
1212 final AppDb _db = locator <AppDb >();
1313
1414 @override
1515 Future <Order > createOrder (
16- List <CartItem > cartItems,
17- CreateOrderRecipient recipient,
18- CreateOrderShipping shipping,
19- ShippingMethod shippingMethod,
20- PaymentMethod paymentMethod) =>
21- _db.getUserId ().then ((userId) => _api.dio.post ('orders' , data: {
22- 'payment_method' : paymentMethod.id,
23- 'payment_method_title' : paymentMethod.title,
24- 'set_paid' : 'false' ,
25- 'customer_id' : userId,
26- 'billing' : {
27- 'first_name' : recipient.firstName,
28- 'last_name' : recipient.lastName,
29- 'address_1' : shipping.address1,
30- 'address_2' : shipping.address2,
31- 'city' : shipping.city,
32- 'state' : shipping.state,
33- 'postcode' : shipping.index,
34- 'country' : shipping.country,
35- 'email' : recipient.email,
36- 'phone' : recipient.phone
16+ List <CartItem > cartItems,
17+ CreateOrderRecipient recipient,
18+ CreateOrderShipping shipping,
19+ ShippingMethod shippingMethod,
20+ PaymentMethod paymentMethod,
21+ ) =>
22+ _db.getUserId ().then ((userId) => _api.dio.post (
23+ 'orders' ,
24+ data: {
25+ 'payment_method' : paymentMethod.id,
26+ 'payment_method_title' : paymentMethod.title,
27+ 'set_paid' : 'false' ,
28+ 'customer_id' : userId,
29+ 'billing' : {
30+ 'first_name' : recipient.firstName,
31+ 'last_name' : recipient.lastName,
32+ 'address_1' : shipping.address1,
33+ 'address_2' : shipping.address2,
34+ 'city' : shipping.city,
35+ 'state' : shipping.state,
36+ 'postcode' : shipping.index,
37+ 'country' : shipping.country,
38+ 'email' : recipient.email,
39+ 'phone' : recipient.phone,
40+ },
41+ 'shipping' : {
42+ 'first_name' : recipient.firstName,
43+ 'last_name' : recipient.lastName,
44+ 'address_1' : shipping.address1,
45+ 'address_2' : shipping.address2,
46+ 'city' : shipping.city,
47+ 'state' : shipping.state,
48+ 'postcode' : shipping.index,
49+ 'country' : shipping.country,
50+ },
51+ 'line_items' : [
52+ for (var prd in cartItems)
53+ {'product_id' : prd.id, 'quantity' : prd.quantity.value},
54+ ],
55+ 'shipping_lines' : [
56+ {
57+ 'method_id' : shippingMethod.id,
58+ 'method_title' : shippingMethod.title,
59+ // 'total': '0'
60+ },
61+ ],
3762 },
38- 'shipping' : {
39- 'first_name' : recipient.firstName,
40- 'last_name' : recipient.lastName,
41- 'address_1' : shipping.address1,
42- 'address_2' : shipping.address2,
43- 'city' : shipping.city,
44- 'state' : shipping.state,
45- 'postcode' : shipping.index,
46- 'country' : shipping.country,
47- },
48- 'line_items' : [
49- for (var prd in cartItems)
50- {'product_id' : prd.id, 'quantity' : prd.quantity.value}
51- ],
52- 'shipping_lines' : [
53- {
54- 'method_id' : shippingMethod.id,
55- 'method_title' : shippingMethod.title,
56- // 'total': '0'
57- }
58- ]
59- })
60- .then ((response) => Order .fromJson (response.data)));
63+ ).then ((response) => Order .fromJson (response.data)));
6164}
6265
6366abstract class CreateOrderDataSource {
6467 Future <Order > createOrder (
65- List <CartItem > cartItems,
66- CreateOrderRecipient recipient,
67- CreateOrderShipping shipping,
68- ShippingMethod shippingMethod,
69- PaymentMethod paymentMethod
68+ List <CartItem > cartItems,
69+ CreateOrderRecipient recipient,
70+ CreateOrderShipping shipping,
71+ ShippingMethod shippingMethod,
72+ PaymentMethod paymentMethod,
7073 );
7174}
0 commit comments