Subversion Repositories SmartDukaan

Rev

Rev 2684 | Rev 2697 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2684 Rev 2687
Line 21... Line 21...
21
from reportlab.rl_config import defaultPageSize
21
from reportlab.rl_config import defaultPageSize
22
from reportlab.lib.units import inch
22
from reportlab.lib.units import inch
23
PAGE_HEIGHT=defaultPageSize[1]
23
PAGE_HEIGHT=defaultPageSize[1]
24
PAGE_WIDTH=defaultPageSize[0]
24
PAGE_WIDTH=defaultPageSize[0]
25
 
25
 
-
 
26
from shop2020.model.v1.order.impl.model.ReturnOrder import ReturnOrder
26
from shop2020.model.v1.order.impl.DataService import Transaction, LineItem,\
27
from shop2020.model.v1.order.impl.DataService import Transaction, LineItem,\
27
    Alerts, Order, BatchNoGenerator, ReturnOrder
28
    Alerts, Order, BatchNoGenerator
28
from shop2020.thriftpy.model.v1.order.ttypes import Transaction as T_Transaction,\
29
from shop2020.thriftpy.model.v1.order.ttypes import Transaction as T_Transaction,\
29
    TransactionServiceException, TransactionStatus, OrderStatus
30
    TransactionServiceException, TransactionStatus, OrderStatus
30
from shop2020.utils.Utils import to_py_date, to_java_date
31
from shop2020.utils.Utils import to_py_date, to_java_date
31
from shop2020.model.v1 import order
32
from shop2020.model.v1 import order
32
from shop2020.clients.LogisticsClient import LogisticsClient
33
from shop2020.clients.LogisticsClient import LogisticsClient
Line 799... Line 800...
799
        __create_refund(order)
800
        __create_refund(order)
800
        order.status = status_transition[order.status]
801
        order.status = status_transition[order.status]
801
        order.statusDescription = "Refunded"
802
        order.statusDescription = "Refunded"
802
    elif order.status in [OrderStatus.SUBMITTED_FOR_PROCESSING, OrderStatus.INVENTORY_LOW]:
803
    elif order.status in [OrderStatus.SUBMITTED_FOR_PROCESSING, OrderStatus.INVENTORY_LOW]:
803
        __create_refund(order)
804
        __create_refund(order)
-
 
805
        try:
-
 
806
            #Reduce the reservation count for all lineitems.
-
 
807
            catalog_client = InventoryClient().get_client()
-
 
808
            for lineitem in order.lineitems:
-
 
809
                catalog_client.reduceReservationCount(lineitem.item_id, order.warehouse_id, lineitem.quantity);
-
 
810
        except:
-
 
811
            print "Unable to reduce reservation count"
804
        order.status = status_transition[order.status]
812
        order.status = status_transition[order.status]
805
        order.statusDescription = "Refunded"
813
        order.statusDescription = "Refunded"
806
    else:
814
    else:
807
        raise TransactionServiceException(114, "This order can't be refunded")
815
        raise TransactionServiceException(114, "This order can't be refunded")
808
    
816
    
Line 877... Line 885...
877
        new_order.lineitems[0].transfer_price = item_pricing.transferPrice
885
        new_order.lineitems[0].transfer_price = item_pricing.transferPrice
878
    
886
    
879
    return new_order
887
    return new_order
880
 
888
 
881
def __create_return_order(order):
889
def __create_return_order(order):
882
    ret_order = ReturnOrder()
890
    ret_order = ReturnOrder(order)
883
    ret_order.order_id = order.id
-
 
884
    ret_order.jacket_number = order.jacket_number
-
 
885
    ret_order.invoice_number = order.invoice_number
-
 
886
    
-
 
887
    line_item = order.lineitems[0]
-
 
888
    ret_order.item_id = line_item.item_id
-
 
889
    ret_order.productGroup = line_item.productGroup
-
 
890
    ret_order.brand = line_item.brand
-
 
891
    ret_order.model_number = line_item.model_number
-
 
892
    ret_order.model_name = line_item.model_name
-
 
893
    ret_order.color = line_item.color
-
 
894
    ret_order.total_price = line_item.total_price
-
 
895
    ret_order.transfer_price = line_item.transfer_price
-
 
896
    ret_order.processed_status = False
-
 
897
    ret_order.created_timestamp = datetime.datetime.now()
-
 
898
    return ret_order
891
    return ret_order
899
 
892
 
900
def __create_refund(order):
893
def __create_refund(order):
901
    pass
894
    pass
902
 
895