| Line 7... |
Line 7... |
| 7 |
from shop2020.clients.CatalogClient import CatalogClient
|
7 |
from shop2020.clients.CatalogClient import CatalogClient
|
| 8 |
from shop2020.clients.TransactionClient import TransactionClient
|
8 |
from shop2020.clients.TransactionClient import TransactionClient
|
| 9 |
from shop2020.purchase.main.model.LineItem import LineItem
|
9 |
from shop2020.purchase.main.model.LineItem import LineItem
|
| 10 |
from shop2020.purchase.main.model.Purchase import Purchase
|
10 |
from shop2020.purchase.main.model.Purchase import Purchase
|
| 11 |
from shop2020.purchase.main.model.PurchaseOrder import PurchaseOrder
|
11 |
from shop2020.purchase.main.model.PurchaseOrder import PurchaseOrder
|
| 12 |
from shop2020.purchase.main.model.RevisionedPurchaseOrder import RevisionedPurchaseOrder
|
12 |
from shop2020.purchase.main.model.RevisionedPurchaseOrder import \
|
| - |
|
13 |
RevisionedPurchaseOrder
|
| 13 |
from shop2020.purchase.main.model.Supplier import Supplier
|
14 |
from shop2020.purchase.main.model.Supplier import Supplier
|
| - |
|
15 |
from shop2020.thriftpy.model.v1.catalog.ttypes import WarehouseType, \
|
| - |
|
16 |
InventoryType
|
| 14 |
from shop2020.thriftpy.model.v1.order.ttypes import OrderStatus
|
17 |
from shop2020.thriftpy.model.v1.order.ttypes import OrderStatus
|
| 15 |
from shop2020.thriftpy.purchase.ttypes import PurchaseServiceException, POStatus, \
|
18 |
from shop2020.thriftpy.purchase.ttypes import PurchaseServiceException, POStatus, \
|
| 16 |
PurchaseOrder as TPurchaseOrder, LineItem as TLineItem
|
19 |
PurchaseOrder as TPurchaseOrder, LineItem as TLineItem
|
| 17 |
from sqlalchemy import create_engine
|
20 |
from sqlalchemy import create_engine
|
| 18 |
import datetime
|
21 |
import datetime
|
| Line 136... |
Line 139... |
| 136 |
"""
|
139 |
"""
|
| 137 |
try:
|
140 |
try:
|
| 138 |
if open:
|
141 |
if open:
|
| 139 |
purchases = Purchase.query.filter_by(purchaseOrder_id = purchaseOrderId, receivedOn = None).all()
|
142 |
purchases = Purchase.query.filter_by(purchaseOrder_id = purchaseOrderId, receivedOn = None).all()
|
| 140 |
else:
|
143 |
else:
|
| 141 |
purchases = Purchase.query.filter_by(purchaseOrder_id = purchaseOrderId).filter(receivedOn != None).all()
|
144 |
purchases = Purchase.query.filter_by(purchaseOrder_id = purchaseOrderId).filter(Purchase.receivedOn != None).all()
|
| 142 |
|
145 |
|
| 143 |
return [purchase.to_thrift_object() for purchase in purchases]
|
146 |
return [purchase.to_thrift_object() for purchase in purchases]
|
| 144 |
finally:
|
147 |
finally:
|
| 145 |
self.close_session()
|
148 |
self.close_session()
|
| 146 |
|
149 |
|
| Line 174... |
Line 177... |
| 174 |
if not pending_orders:
|
177 |
if not pending_orders:
|
| 175 |
return purchaseOrders
|
178 |
return purchaseOrders
|
| 176 |
|
179 |
|
| 177 |
catalog_client = CatalogClient().get_client()
|
180 |
catalog_client = CatalogClient().get_client()
|
| 178 |
availability = {}
|
181 |
availability = {}
|
| - |
|
182 |
|
| - |
|
183 |
warehouses = catalog_client.getWarehouses(WarehouseType.OURS, InventoryType.GOOD, 0, None, warehouseId)
|
| - |
|
184 |
for warehouse in warehouses:
|
| - |
|
185 |
goodWarehouseId = warehouse.id
|
| 179 |
for item in catalog_client.getAllItemsForWarehouse(warehouseId):
|
186 |
for item in catalog_client.getAllItemsForWarehouse(goodWarehouseId):
|
| - |
|
187 |
if availability.has_key(item.id):
|
| - |
|
188 |
availability[item.id] = [availability[item.id][0] + item.itemInventory.availability[goodWarehouseId], item]
|
| - |
|
189 |
else:
|
| 180 |
availability[item.id] = [item.itemInventory.availability[warehouseId], item]
|
190 |
availability[item.id] = [item.itemInventory.availability[goodWarehouseId], item]
|
| 181 |
|
191 |
|
| 182 |
codRequirements = {}
|
192 |
codRequirements = {}
|
| 183 |
requirements = {}
|
193 |
requirements = {}
|
| 184 |
for order in pending_orders:
|
194 |
for order in pending_orders:
|
| 185 |
if order.purchaseOrderId:
|
195 |
if order.purchaseOrderId:
|