| Line 60... |
Line 60... |
| 60 |
t_purchaseOrder.type = POType.VIRTUAL
|
60 |
t_purchaseOrder.type = POType.VIRTUAL
|
| 61 |
purchaseOrder = PurchaseOrder(t_purchaseOrder)
|
61 |
purchaseOrder = PurchaseOrder(t_purchaseOrder)
|
| 62 |
session.commit()
|
62 |
session.commit()
|
| 63 |
return purchaseOrder.id
|
63 |
return purchaseOrder.id
|
| 64 |
|
64 |
|
| 65 |
def updatelineItemforOursExternalBilling(self, poId, itemId, unitPrice):
|
65 |
def updatelineItemforOursExternalBilling(self, poId, itemId, unitPrice, nlc):
|
| 66 |
lineItem = LineItem.get_by(purchaseOrder_id=poId, itemId=itemId)
|
66 |
lineItem = LineItem.get_by(purchaseOrder_id=poId, itemId=itemId)
|
| 67 |
if lineItem is None:
|
67 |
if lineItem is None:
|
| 68 |
purchaseOrder = PurchaseOrder.get_by(id=poId)
|
68 |
purchaseOrder = PurchaseOrder.get_by(id=poId)
|
| 69 |
t_lineItem = TLineItem()
|
69 |
t_lineItem = TLineItem()
|
| 70 |
t_lineItem.itemId = itemId
|
70 |
t_lineItem.itemId = itemId
|
| 71 |
t_lineItem.quantity = 1
|
71 |
t_lineItem.quantity = 1
|
| 72 |
t_lineItem.unfulfilledQuantity = 1
|
72 |
t_lineItem.unfulfilledQuantity = 1
|
| 73 |
t_lineItem.createdAt = datetime.datetime.now()
|
73 |
t_lineItem.createdAt = datetime.datetime.now()
|
| 74 |
t_lineItem.unitPrice = unitPrice
|
74 |
t_lineItem.unitPrice = unitPrice
|
| - |
|
75 |
t_lineItem.nlc = nlc
|
| 75 |
t_lineItem.fulfilled = False
|
76 |
t_lineItem.fulfilled = False
|
| 76 |
lineItem = LineItem(purchaseOrder, t_lineItem)
|
77 |
lineItem = LineItem(purchaseOrder, t_lineItem)
|
| 77 |
else:
|
78 |
else:
|
| 78 |
lineItem.quantity = lineItem.quantity + 1
|
79 |
lineItem.quantity = lineItem.quantity + 1
|
| 79 |
lineItem.fulfilled = False
|
80 |
lineItem.fulfilled = False
|
| Line 423... |
Line 424... |
| 423 |
vendor = self.getSupplier(vendorId)
|
424 |
vendor = self.getSupplier(vendorId)
|
| 424 |
print 'Could not find transfer price for Item id: ' + str(item.id) + ' and vendor id: ' + str(vendorId)
|
425 |
print 'Could not find transfer price for Item id: ' + str(item.id) + ' and vendor id: ' + str(vendorId)
|
| 425 |
print e
|
426 |
print e
|
| 426 |
raise PurchaseServiceException(101, 'Transfer price missing for ' + vendor.name + ' and ' + " ".join([item.brand, item.modelName, item.modelNumber, item.color]))
|
427 |
raise PurchaseServiceException(101, 'Transfer price missing for ' + vendor.name + ' and ' + " ".join([item.brand, item.modelName, item.modelNumber, item.color]))
|
| 427 |
t_po_lineitem.unitPrice = item_pricing.transferPrice
|
428 |
t_po_lineitem.unitPrice = item_pricing.transferPrice
|
| - |
|
429 |
t_po_lineitem.nlc = item_pricing.nlc
|
| 428 |
t_purchase_order.lineitems.append(t_po_lineitem)
|
430 |
t_purchase_order.lineitems.append(t_po_lineitem)
|
| 429 |
purchaseOrders.append(t_purchase_order)
|
431 |
purchaseOrders.append(t_purchase_order)
|
| 430 |
return purchaseOrders
|
432 |
return purchaseOrders
|
| 431 |
except Exception as e:
|
433 |
except Exception as e:
|
| 432 |
print e
|
434 |
print e
|
| Line 531... |
Line 533... |
| 531 |
revisionedPurchaseOrder.purchaseOrderId = purchaseOrder.id
|
533 |
revisionedPurchaseOrder.purchaseOrderId = purchaseOrder.id
|
| 532 |
revisionedPurchaseOrder.revision = maxRevision
|
534 |
revisionedPurchaseOrder.revision = maxRevision
|
| 533 |
revisionedPurchaseOrder.itemId = lineitem.itemId
|
535 |
revisionedPurchaseOrder.itemId = lineitem.itemId
|
| 534 |
revisionedPurchaseOrder.unfulfilledQuantity = lineitem.unfulfilledQuantity
|
536 |
revisionedPurchaseOrder.unfulfilledQuantity = lineitem.unfulfilledQuantity
|
| 535 |
revisionedPurchaseOrder.unitPrice = lineitem.unitPrice
|
537 |
revisionedPurchaseOrder.unitPrice = lineitem.unitPrice
|
| - |
|
538 |
revisionedPurchaseOrder.nlc = lineitem.nlc
|
| 536 |
revisionedPurchaseOrder.createdAt = lineitem.createdAt
|
539 |
revisionedPurchaseOrder.createdAt = lineitem.createdAt
|
| 537 |
revisionedPurchaseOrder.quantity = lineitem.quantity
|
540 |
revisionedPurchaseOrder.quantity = lineitem.quantity
|
| 538 |
lineitem.delete()
|
541 |
lineitem.delete()
|
| 539 |
existingPurchaseOrder.lineitems = [LineItem(existingPurchaseOrder, t_lineitem) for t_lineitem in purchaseOrder.lineitems]
|
542 |
existingPurchaseOrder.lineitems = [LineItem(existingPurchaseOrder, t_lineitem) for t_lineitem in purchaseOrder.lineitems]
|
| 540 |
existingPurchaseOrder.totalCost = sum([t_lineitem.quantity * t_lineitem.unitPrice for t_lineitem in purchaseOrder.lineitems])
|
543 |
existingPurchaseOrder.totalCost = sum([t_lineitem.quantity * t_lineitem.unitPrice for t_lineitem in purchaseOrder.lineitems])
|
| Line 721... |
Line 724... |
| 721 |
print e
|
724 |
print e
|
| 722 |
raise PurchaseServiceException(101, 'Exception while settling Purchase Return Id : ' + id)
|
725 |
raise PurchaseServiceException(101, 'Exception while settling Purchase Return Id : ' + id)
|
| 723 |
finally:
|
726 |
finally:
|
| 724 |
self.close_session()
|
727 |
self.close_session()
|
| 725 |
|
728 |
|
| 726 |
def createPurchaseForOurExtBilling(self, invoiceNumber, unitPrice, itemId):
|
729 |
def createPurchaseForOurExtBilling(self, invoiceNumber, unitPrice, nlc, itemId):
|
| 727 |
try:
|
730 |
try:
|
| 728 |
poId = self.getPOforOurExternalBilling()
|
731 |
poId = self.getPOforOurExternalBilling()
|
| 729 |
self.updatelineItemforOursExternalBilling(poId, itemId, unitPrice)
|
732 |
self.updatelineItemforOursExternalBilling(poId, itemId, unitPrice, nlc)
|
| 730 |
self.receiveinvoiceforOursExternalBilling(invoiceNumber)
|
733 |
self.receiveinvoiceforOursExternalBilling(invoiceNumber)
|
| 731 |
return self.createPurchaseforOursExternalBilling(poId, invoiceNumber)
|
734 |
return self.createPurchaseforOursExternalBilling(poId, invoiceNumber)
|
| 732 |
except Exception as e:
|
735 |
except Exception as e:
|
| 733 |
print e
|
736 |
print e
|
| 734 |
raise PurchaseServiceException(101, '')
|
737 |
raise PurchaseServiceException(101, '')
|