| Line 33... |
Line 33... |
| 33 |
from shop2020.thriftpy.model.v1.order.ttypes import Transaction as T_Transaction,\
|
33 |
from shop2020.thriftpy.model.v1.order.ttypes import Transaction as T_Transaction,\
|
| 34 |
TransactionServiceException, TransactionStatus, OrderStatus
|
34 |
TransactionServiceException, TransactionStatus, OrderStatus
|
| 35 |
from shop2020.utils.Utils import to_py_date, to_java_date
|
35 |
from shop2020.utils.Utils import to_py_date, to_java_date
|
| 36 |
from shop2020.model.v1 import order
|
36 |
from shop2020.model.v1 import order
|
| 37 |
from shop2020.clients.LogisticsClient import LogisticsClient
|
37 |
from shop2020.clients.LogisticsClient import LogisticsClient
|
| 38 |
from shop2020.clients.InventoryClient import InventoryClient
|
38 |
from shop2020.clients.CatalogClient import CatalogClient
|
| 39 |
from shop2020.clients.UserClient import UserClient
|
39 |
from shop2020.clients.UserClient import UserClient
|
| 40 |
from shop2020.clients.HelperClient import HelperClient
|
40 |
from shop2020.clients.HelperClient import HelperClient
|
| 41 |
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part
|
41 |
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part
|
| 42 |
from shop2020.clients.WarehouseClient import WarehouseClient
|
42 |
from shop2020.clients.WarehouseClient import WarehouseClient
|
| 43 |
from shop2020.thriftpy.model.v1.catalog.ttypes import BillingType
|
43 |
from shop2020.thriftpy.model.v1.catalog.ttypes import BillingType
|
| Line 184... |
Line 184... |
| 184 |
order.logistics_provider_id = logistics_info.providerId
|
184 |
order.logistics_provider_id = logistics_info.providerId
|
| 185 |
order.airwaybill_no = logistics_info.airway_billno
|
185 |
order.airwaybill_no = logistics_info.airway_billno
|
| 186 |
order.tracking_id = order.airwaybill_no
|
186 |
order.tracking_id = order.airwaybill_no
|
| 187 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
187 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
| 188 |
|
188 |
|
| 189 |
catalog_client = InventoryClient().get_client()
|
189 |
catalog_client = CatalogClient().get_client()
|
| 190 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
190 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
| 191 |
|
191 |
|
| 192 |
item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
|
192 |
item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
|
| 193 |
order.lineitems[0].transfer_price = item_pricing.transferPrice
|
193 |
order.lineitems[0].transfer_price = item_pricing.transferPrice
|
| 194 |
elif new_status == TransactionStatus.COD_IN_PROCESS:
|
194 |
elif new_status == TransactionStatus.COD_IN_PROCESS:
|
| Line 209... |
Line 209... |
| 209 |
order.logistics_provider_id = logistics_info.providerId
|
209 |
order.logistics_provider_id = logistics_info.providerId
|
| 210 |
order.airwaybill_no = logistics_info.airway_billno
|
210 |
order.airwaybill_no = logistics_info.airway_billno
|
| 211 |
order.tracking_id = order.airwaybill_no
|
211 |
order.tracking_id = order.airwaybill_no
|
| 212 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
212 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
| 213 |
|
213 |
|
| 214 |
catalog_client = InventoryClient().get_client()
|
214 |
catalog_client = CatalogClient().get_client()
|
| 215 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
215 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
| 216 |
|
216 |
|
| 217 |
item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
|
217 |
item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
|
| 218 |
order.lineitems[0].transfer_price = item_pricing.transferPrice
|
218 |
order.lineitems[0].transfer_price = item_pricing.transferPrice
|
| 219 |
|
219 |
|
| Line 714... |
Line 714... |
| 714 |
from_user = 'cnc.center@shop2020.in'
|
714 |
from_user = 'cnc.center@shop2020.in'
|
| 715 |
from_pwd = '5h0p2o2o'
|
715 |
from_pwd = '5h0p2o2o'
|
| 716 |
|
716 |
|
| 717 |
subject = "Pickup request"
|
717 |
subject = "Pickup request"
|
| 718 |
try:
|
718 |
try:
|
| 719 |
catalog_client = InventoryClient().get_client()
|
719 |
catalog_client = CatalogClient().get_client()
|
| 720 |
warehouse = catalog_client.getWarehouse(order.warehouse_id)
|
720 |
warehouse = catalog_client.getWarehouse(order.warehouse_id)
|
| 721 |
|
721 |
|
| 722 |
logistics_client = LogisticsClient().get_client()
|
722 |
logistics_client = LogisticsClient().get_client()
|
| 723 |
provider = logistics_client.getProvider(order.logistics_provider_id)
|
723 |
provider = logistics_client.getProvider(order.logistics_provider_id)
|
| 724 |
to_addr = provider.details[DeliveryType.PREPAID].email
|
724 |
to_addr = provider.details[DeliveryType.PREPAID].email
|
| Line 768... |
Line 768... |
| 768 |
from_user = 'help@shop2020.in'
|
768 |
from_user = 'help@shop2020.in'
|
| 769 |
from_pwd = '5h0p2o2o'
|
769 |
from_pwd = '5h0p2o2o'
|
| 770 |
subject = 'Pickup details'
|
770 |
subject = 'Pickup details'
|
| 771 |
filename = "/tmp/" + str(order.id) +".pdf"
|
771 |
filename = "/tmp/" + str(order.id) +".pdf"
|
| 772 |
try:
|
772 |
try:
|
| 773 |
catalog_client = InventoryClient().get_client()
|
773 |
catalog_client = CatalogClient().get_client()
|
| 774 |
warehouse = catalog_client.getWarehouse(order.warehouse_id)
|
774 |
warehouse = catalog_client.getWarehouse(order.warehouse_id)
|
| 775 |
|
775 |
|
| 776 |
logistics_client = LogisticsClient().get_client()
|
776 |
logistics_client = LogisticsClient().get_client()
|
| 777 |
provider = logistics_client.getProvider(order.logistics_provider_id)
|
777 |
provider = logistics_client.getProvider(order.logistics_provider_id)
|
| 778 |
provider_name = provider.name
|
778 |
provider_name = provider.name
|
| Line 940... |
Line 940... |
| 940 |
order.statusDescription = "Refunded"
|
940 |
order.statusDescription = "Refunded"
|
| 941 |
elif order.status in [OrderStatus.SUBMITTED_FOR_PROCESSING, OrderStatus.INVENTORY_LOW]:
|
941 |
elif order.status in [OrderStatus.SUBMITTED_FOR_PROCESSING, OrderStatus.INVENTORY_LOW]:
|
| 942 |
__create_cancellation(order)
|
942 |
__create_cancellation(order)
|
| 943 |
try:
|
943 |
try:
|
| 944 |
#Reduce the reservation count for all lineitems.
|
944 |
#Reduce the reservation count for all lineitems.
|
| 945 |
catalog_client = InventoryClient().get_client()
|
945 |
catalog_client = CatalogClient().get_client()
|
| 946 |
for lineitem in order.lineitems:
|
946 |
for lineitem in order.lineitems:
|
| 947 |
catalog_client.reduceReservationCount(lineitem.item_id, order.warehouse_id, lineitem.quantity);
|
947 |
catalog_client.reduceReservationCount(lineitem.item_id, order.warehouse_id, lineitem.quantity);
|
| 948 |
except:
|
948 |
except:
|
| 949 |
print "Unable to reduce reservation count"
|
949 |
print "Unable to reduce reservation count"
|
| 950 |
order.status = status_transition[order.status]
|
950 |
order.status = status_transition[order.status]
|
| Line 1015... |
Line 1015... |
| 1015 |
new_order.accepted_timestamp = current_time
|
1015 |
new_order.accepted_timestamp = current_time
|
| 1016 |
new_order.billing_timestamp = current_time
|
1016 |
new_order.billing_timestamp = current_time
|
| 1017 |
new_order.status = OrderStatus.BILLED
|
1017 |
new_order.status = OrderStatus.BILLED
|
| 1018 |
new_order.statusDescription = 'Order Billed'
|
1018 |
new_order.statusDescription = 'Order Billed'
|
| 1019 |
else:
|
1019 |
else:
|
| 1020 |
catalog_client = InventoryClient().get_client()
|
1020 |
catalog_client = CatalogClient().get_client()
|
| 1021 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, new_order.lineitems[0].quantity)
|
1021 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, new_order.lineitems[0].quantity)
|
| 1022 |
|
1022 |
|
| 1023 |
item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
|
1023 |
item_pricing = catalog_client.getItemPricing(item_id, order.warehouse_id)
|
| 1024 |
new_order.lineitems[0].transfer_price = item_pricing.transferPrice
|
1024 |
new_order.lineitems[0].transfer_price = item_pricing.transferPrice
|
| 1025 |
|
1025 |
|