| Line 16... |
Line 16... |
| 16 |
from shop2020.clients.UserClient import UserClient
|
16 |
from shop2020.clients.UserClient import UserClient
|
| 17 |
from shop2020.clients.WarehouseClient import WarehouseClient
|
17 |
from shop2020.clients.WarehouseClient import WarehouseClient
|
| 18 |
from shop2020.config.client.ConfigClient import ConfigClient
|
18 |
from shop2020.config.client.ConfigClient import ConfigClient
|
| 19 |
from shop2020.model.v1 import order
|
19 |
from shop2020.model.v1 import order
|
| 20 |
from shop2020.model.v1.order.impl.DataService import Transaction, LineItem, \
|
20 |
from shop2020.model.v1.order.impl.DataService import Transaction, LineItem, \
|
| 21 |
Order, BatchNoGenerator, InvoiceIDGenerator, \
|
21 |
Order, BatchNoGenerator, InvoiceIDGenerator, TransactionRequiringExtraProcessing, \
|
| 22 |
TransactionRequiringExtraProcessing, OrderInventory, Alert
|
22 |
OrderInventory, Alert
|
| 23 |
from shop2020.model.v1.order.impl.model.ReturnOrder import ReturnOrder
|
23 |
from shop2020.model.v1.order.impl.model.ReturnOrder import ReturnOrder
|
| 24 |
from shop2020.thriftpy.logistics.ttypes import DeliveryType
|
24 |
from shop2020.thriftpy.logistics.ttypes import DeliveryType
|
| 25 |
from shop2020.thriftpy.model.v1.catalog.ttypes import BillingType
|
25 |
from shop2020.thriftpy.model.v1.catalog.ttypes import BillingType, \
|
| - |
|
26 |
InventoryServiceException
|
| 26 |
from shop2020.thriftpy.model.v1.order.ttypes import \
|
27 |
from shop2020.thriftpy.model.v1.order.ttypes import TransactionServiceException, \
|
| 27 |
TransactionServiceException, TransactionStatus, OrderStatus, DelayReason, \
|
28 |
TransactionStatus, OrderStatus, DelayReason, ExtraTransactionProcessingType, \
|
| 28 |
ExtraTransactionProcessingType, HotspotAction, TimeoutSummary
|
29 |
HotspotAction, TimeoutSummary
|
| 29 |
from shop2020.thriftpy.payments.ttypes import PaymentException
|
30 |
from shop2020.thriftpy.payments.ttypes import PaymentException
|
| 30 |
from shop2020.thriftpy.warehouse.ttypes import PurchaseOrder, \
|
31 |
from shop2020.thriftpy.warehouse.ttypes import PurchaseOrder, \
|
| 31 |
LineItem as POLineItem, ScanType
|
32 |
LineItem as POLineItem, ScanType
|
| 32 |
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part
|
33 |
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part
|
| 33 |
from shop2020.utils.Utils import to_py_date, to_java_date
|
34 |
from shop2020.utils.Utils import to_py_date, to_java_date
|
| Line 38... |
Line 39... |
| 38 |
from textwrap import dedent
|
39 |
from textwrap import dedent
|
| 39 |
import datetime
|
40 |
import datetime
|
| 40 |
import logging
|
41 |
import logging
|
| 41 |
import os
|
42 |
import os
|
| 42 |
import sys
|
43 |
import sys
|
| 43 |
import traceback
|
- |
|
| 44 |
import time
|
44 |
import time
|
| - |
|
45 |
import traceback
|
| 45 |
logging.basicConfig(level=logging.DEBUG)
|
46 |
logging.basicConfig(level=logging.DEBUG)
|
| 46 |
|
47 |
|
| 47 |
|
48 |
|
| 48 |
try:
|
49 |
try:
|
| 49 |
config_client = ConfigClient()
|
50 |
config_client = ConfigClient()
|
| Line 647... |
Line 648... |
| 647 |
order.statusDescription = "Order Billed"
|
648 |
order.statusDescription = "Order Billed"
|
| 648 |
order.billing_timestamp = datetime.datetime.now()
|
649 |
order.billing_timestamp = datetime.datetime.now()
|
| 649 |
order.billed_by = billedBy
|
650 |
order.billed_by = billedBy
|
| 650 |
lineitem = order.lineitems[0]
|
651 |
lineitem = order.lineitems[0]
|
| 651 |
item_id = lineitem.item_id
|
652 |
item_id = lineitem.item_id
|
| - |
|
653 |
|
| - |
|
654 |
# Not letting the billing process fail in cases where we are unable to
|
| - |
|
655 |
# fill in transfer price
|
| - |
|
656 |
item_pricing = None
|
| - |
|
657 |
try:
|
| 652 |
catalog_client = CatalogClient().get_client()
|
658 |
catalog_client = CatalogClient().get_client()
|
| 653 |
item_pricing = catalog_client.getItemPricing(item_id, vendorId)
|
659 |
item_pricing = catalog_client.getItemPricing(item_id, vendorId)
|
| - |
|
660 |
except InventoryServiceException as e:
|
| - |
|
661 |
print sys.exc_info()[0]
|
| - |
|
662 |
print e.message
|
| - |
|
663 |
|
| 654 |
order.vendorId = vendorId
|
664 |
order.vendorId = vendorId
|
| 655 |
lineitems = order.lineitems
|
665 |
lineitems = order.lineitems
|
| 656 |
for lineitem in lineitems:
|
666 |
for lineitem in lineitems:
|
| 657 |
catalog_client.reduceReservationCount(item_id, order.warehouse_id, lineitem.quantity)
|
667 |
catalog_client.reduceReservationCount(item_id, order.warehouse_id, lineitem.quantity)
|
| - |
|
668 |
|
| - |
|
669 |
# Putting NULL as transfer price for cases where its missing
|
| - |
|
670 |
if item_pricing is not None:
|
| 658 |
order.lineitems[0].transfer_price = item_pricing.transferPrice
|
671 |
order.lineitems[0].transfer_price = item_pricing.transferPrice
|
| 659 |
session.commit()
|
672 |
session.commit()
|
| 660 |
|
673 |
|
| 661 |
# For Mahipal warehouse, we need to scan out items for every billed order
|
674 |
# For Mahipal warehouse, we need to scan out items for every billed order
|
| 662 |
if order.warehouse_id == 7:
|
675 |
if order.warehouse_id == 7:
|
| 663 |
try:
|
676 |
try:
|