| Line 19... |
Line 19... |
| 19 |
from shop2020.thriftpy.model.v1.inventory.ttypes import WarehouseType, \
|
19 |
from shop2020.thriftpy.model.v1.inventory.ttypes import WarehouseType, \
|
| 20 |
InventoryType, ItemStockPurchaseParams
|
20 |
InventoryType, ItemStockPurchaseParams
|
| 21 |
from shop2020.thriftpy.model.v1.order.ttypes import OrderStatus
|
21 |
from shop2020.thriftpy.model.v1.order.ttypes import OrderStatus
|
| 22 |
from shop2020.thriftpy.purchase.ttypes import PurchaseServiceException, POStatus, \
|
22 |
from shop2020.thriftpy.purchase.ttypes import PurchaseServiceException, POStatus, \
|
| 23 |
PurchaseOrder as TPurchaseOrder, LineItem as TLineItem, POType,\
|
23 |
PurchaseOrder as TPurchaseOrder, LineItem as TLineItem, POType,\
|
| 24 |
PurchaseReturnType
|
24 |
PurchaseReturnType, PurchaseReturnInventoryType
|
| 25 |
from shop2020.utils.Utils import to_py_date
|
25 |
from shop2020.utils.Utils import to_py_date
|
| 26 |
from sqlalchemy import create_engine
|
26 |
from sqlalchemy import create_engine
|
| 27 |
from sqlalchemy.sql.expression import or_
|
27 |
from sqlalchemy.sql.expression import or_
|
| 28 |
import datetime
|
28 |
import datetime
|
| 29 |
import logging
|
29 |
import logging
|
| Line 360... |
Line 360... |
| 360 |
if oosStatus.rto_orders:
|
360 |
if oosStatus.rto_orders:
|
| 361 |
rtoCount = oosStatus.rto_orders
|
361 |
rtoCount = oosStatus.rto_orders
|
| 362 |
if numDaysInStock>0:
|
362 |
if numDaysInStock>0:
|
| 363 |
avgSales = float(salesCount)/float(numDaysInStock)
|
363 |
avgSales = float(salesCount)/float(numDaysInStock)
|
| 364 |
itemStockPurchaseParam = ItemStockPurchaseParams()
|
364 |
itemStockPurchaseParam = ItemStockPurchaseParams()
|
| - |
|
365 |
try:
|
| 365 |
itemStockPurchaseParam = inventory_client.getItemStockPurchaseParams(key)
|
366 |
itemStockPurchaseParam = inventory_client.getItemStockPurchaseParams(key)
|
| - |
|
367 |
except Exception as e:
|
| - |
|
368 |
inventory_client.updateItemStockPurchaseParams(key, 0, 0)
|
| - |
|
369 |
itemStockPurchaseParam = inventory_client.getItemStockPurchaseParams(key)
|
| 366 |
advancedPOParameters[key] = [round(avgSales * itemStockPurchaseParam.numOfDaysStock), round(avgSales,2), numDaysInStock, itemStockPurchaseParam.minStockLevel, itemStockPurchaseParam.numOfDaysStock, lastXdaysSale, rtoCount]
|
370 |
advancedPOParameters[key] = [round(avgSales * itemStockPurchaseParam.numOfDaysStock), round(avgSales,2), numDaysInStock, itemStockPurchaseParam.minStockLevel, itemStockPurchaseParam.numOfDaysStock, lastXdaysSale, rtoCount]
|
| 367 |
|
371 |
|
| 368 |
cumulativeRequirementsItemIds = list(set(requirements.keys()+SKUListForPO))
|
372 |
cumulativeRequirementsItemIds = list(set(requirements.keys()+SKUListForPO))
|
| 369 |
netRequirements = {}
|
373 |
netRequirements = {}
|
| 370 |
for itemId in cumulativeRequirementsItemIds:
|
374 |
for itemId in cumulativeRequirementsItemIds:
|
| Line 711... |
Line 715... |
| 711 |
purchaseReturn.vendorId = t_purchaseReturn.vendorId
|
715 |
purchaseReturn.vendorId = t_purchaseReturn.vendorId
|
| 712 |
purchaseReturn.amount = t_purchaseReturn.amount
|
716 |
purchaseReturn.amount = t_purchaseReturn.amount
|
| 713 |
purchaseReturn.returnTimestamp = to_py_date(t_purchaseReturn.returnTimestamp)
|
717 |
purchaseReturn.returnTimestamp = to_py_date(t_purchaseReturn.returnTimestamp)
|
| 714 |
purchaseReturn.isSettled = False
|
718 |
purchaseReturn.isSettled = False
|
| 715 |
purchaseReturn.type = t_purchaseReturn.type
|
719 |
purchaseReturn.type = t_purchaseReturn.type
|
| - |
|
720 |
purchaseReturn.returnInventoryType = t_purchaseReturn.returnInventoryType
|
| 716 |
session.commit()
|
721 |
session.commit()
|
| 717 |
return purchaseReturn.id
|
722 |
return purchaseReturn.id
|
| 718 |
except Exception as e:
|
723 |
except Exception as e:
|
| 719 |
print e
|
724 |
print e
|
| 720 |
raise PurchaseServiceException(101, 'Exception while creating Purchase Return for ' + purchaseReturn.vendorId + ' for Rs' + purchaseReturn.amount)
|
725 |
raise PurchaseServiceException(101, 'Exception while creating Purchase Return for ' + purchaseReturn.vendorId + ' for Rs' + purchaseReturn.amount)
|