Subversion Repositories SmartDukaan

Rev

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

Rev 2832 Rev 2842
Line 34... Line 34...
34
from shop2020.clients.InventoryClient import InventoryClient
34
from shop2020.clients.InventoryClient import InventoryClient
35
from shop2020.clients.UserClient import UserClient
35
from shop2020.clients.UserClient import UserClient
36
from shop2020.clients.HelperClient import HelperClient
36
from shop2020.clients.HelperClient import HelperClient
37
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part
37
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part
38
from shop2020.clients.WarehouseClient import WarehouseClient
38
from shop2020.clients.WarehouseClient import WarehouseClient
-
 
39
from shop2020.thriftpy.model.v1.catalog.ttypes import BillingType
39
 
40
 
40
PAGE_HEIGHT=defaultPageSize[1]
41
PAGE_HEIGHT=defaultPageSize[1]
41
PAGE_WIDTH=defaultPageSize[0]
42
PAGE_WIDTH=defaultPageSize[0]
42
 
43
 
43
def get_new_transaction():
44
def get_new_transaction():
Line 439... Line 440...
439
    order.invoice_number = invoice_number
440
    order.invoice_number = invoice_number
440
    order.billed_by = billed_by
441
    order.billed_by = billed_by
441
    session.commit()
442
    session.commit()
442
    return True
443
    return True
443
 
444
 
444
def add_jacket_number(self, orderId, jacket_number, imei_number, item_number, billed_by):
445
def add_jacket_number(self, orderId, jacket_number, imei_number, item_number, billed_by, billing_type):
445
    if jacket_number is None or jacket_number <= 0:
446
    if jacket_number is None or jacket_number <= 0:
446
        raise TransactionServiceException(110, "Invalid jacket number")
447
        raise TransactionServiceException(110, "Invalid jacket number")
447
    
448
    
448
    if item_number is None or item_number.strip() == "":
449
    if item_number is None or item_number.strip() == "":
449
        raise TransactionServiceException(110, "Invalid item number")
450
        raise TransactionServiceException(110, "Invalid item number")
Line 453... Line 454...
453
    
454
    
454
    order = Order.get_by(id=orderId)
455
    order = Order.get_by(id=orderId)
455
    if not order:
456
    if not order:
456
        raise TransactionServiceException(101, "No order found for the given order id" + str(orderId))
457
        raise TransactionServiceException(101, "No order found for the given order id" + str(orderId))
457
    
458
    
458
    lineitem = order.lineitems[0]
-
 
459
    if lineitem.productGroup == "Handsets" and imei_number <= 0:
-
 
460
        raise TransactionServiceException(110, "No IMEI number supplied for a handset.")
-
 
461
    
-
 
462
    order.jacket_number = jacket_number
459
    order.jacket_number = jacket_number
-
 
460
    if billing_type == BillingType.OURS:
463
    order.invoice_number = get_next_invoice_number()
461
        order.invoice_number = get_next_invoice_number()
464
    order.billed_by = billed_by
462
        order.billed_by = billed_by
465
    order.status = OrderStatus.BILLED
463
        order.status = OrderStatus.BILLED
466
    order.statusDescription = "Order Billed"
464
        order.statusDescription = "Order Billed"
467
    order.billing_timestamp = datetime.datetime.now()
465
        order.billing_timestamp = datetime.datetime.now()
468
    
466
    
-
 
467
        lineitem = order.lineitems[0]
-
 
468
        if lineitem.productGroup == "Handsets" and imei_number <= 0:
-
 
469
            raise TransactionServiceException(110, "No IMEI number supplied for a handset.")
469
    lineitem.item_number = item_number
470
        lineitem.item_number = item_number
470
    if imei_number > 0:
471
        if imei_number > 0:
471
        lineitem.imei_number = str(imei_number)
472
            lineitem.imei_number = str(imei_number)
472
    
473
    
473
    session.commit()
474
    session.commit()
474
    return True
475
    return True
475
 
476
 
476
def batch_orders(warehouseId):
477
def batch_orders(warehouseId):