Subversion Repositories SmartDukaan

Rev

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

Rev 7315 Rev 7410
Line 12... Line 12...
12
    to_t_itemidwarehouseid
12
    to_t_itemidwarehouseid
13
from shop2020.model.v1.inventory.impl.DataService import Warehouse, \
13
from shop2020.model.v1.inventory.impl.DataService import Warehouse, \
14
    ItemInventoryHistory, CurrentInventorySnapshot, VendorItemPricing, \
14
    ItemInventoryHistory, CurrentInventorySnapshot, VendorItemPricing, \
15
    VendorItemMapping, Vendor, MissedInventoryUpdate, BadInventorySnapshot, \
15
    VendorItemMapping, Vendor, MissedInventoryUpdate, BadInventorySnapshot, \
16
    VendorItemProcurementDelay, VendorHolidays, ItemAvailabilityCache, \
16
    VendorItemProcurementDelay, VendorHolidays, ItemAvailabilityCache, \
17
    CurrentReservationSnapshot, IgnoredInventoryUpdateItems, \
17
    CurrentReservationSnapshot, IgnoredInventoryUpdateItems, ItemStockPurchaseParams, \
18
    ItemStockPurchaseParams, OOSStatus, AmazonInventorySnapshot
18
    OOSStatus, AmazonInventorySnapshot, StateMaster
19
from shop2020.thriftpy.model.v1.inventory.ttypes import \
19
from shop2020.thriftpy.model.v1.inventory.ttypes import \
20
    InventoryServiceException, HolidayType, InventoryType, WarehouseType
20
    InventoryServiceException, HolidayType, InventoryType, WarehouseType
21
from shop2020.thriftpy.model.v1.order.ttypes import AlertType
21
from shop2020.thriftpy.model.v1.order.ttypes import AlertType
22
from shop2020.thriftpy.purchase.ttypes import PurchaseServiceException
22
from shop2020.thriftpy.purchase.ttypes import PurchaseServiceException
23
from shop2020.utils import EmailAttachmentSender
23
from shop2020.utils import EmailAttachmentSender
24
from shop2020.utils.EmailAttachmentSender import mail
24
from shop2020.utils.EmailAttachmentSender import mail
25
from shop2020.utils.Utils import to_py_date, to_java_date
25
from shop2020.utils.Utils import to_py_date, to_java_date
26
from sqlalchemy.orm.exc import MultipleResultsFound, NoResultFound
26
from sqlalchemy.orm.exc import MultipleResultsFound, NoResultFound
-
 
27
from sqlalchemy.sql import or_
27
from sqlalchemy.sql.expression import and_, func, distinct
28
from sqlalchemy.sql.expression import and_, func, distinct
28
from sqlalchemy.sql.functions import count
29
from sqlalchemy.sql.functions import count
29
from sqlalchemy.sql import or_
-
 
30
import calendar
30
import calendar
31
import datetime
31
import datetime
32
import sys
32
import sys
33
import threading
33
import threading
34
 
34
 
Line 47... Line 47...
47
    return Warehouse.get_by(id=warehouse_id)
47
    return Warehouse.get_by(id=warehouse_id)
48
 
48
 
49
def get_vendor(vendorId):
49
def get_vendor(vendorId):
50
    return Vendor.get_by(id=vendorId)
50
    return Vendor.get_by(id=vendorId)
51
 
51
 
-
 
52
def get_state(stateId):
-
 
53
    return StateMaster.get_by(id=stateId)
-
 
54
 
52
def get_all_warehouses_by_status(status):
55
def get_all_warehouses_by_status(status):
53
    return Warehouse.query.all()
56
    return Warehouse.query.all()
54
 
57
 
55
def get_all_items_for_warehouse(warehouse_id):
58
def get_all_items_for_warehouse(warehouse_id):
56
    warehouse = get_Warehouse(warehouse_id)
59
    warehouse = get_Warehouse(warehouse_id)
Line 79... Line 82...
79
    ds_warehouse.isAvailabilityMonitored = warehouse.isAvailabilityMonitored
82
    ds_warehouse.isAvailabilityMonitored = warehouse.isAvailabilityMonitored
80
    ds_warehouse.logisticsLocation = warehouse.logisticsLocation
83
    ds_warehouse.logisticsLocation = warehouse.logisticsLocation
81
    ds_warehouse.shippingWarehouseId = warehouse.shippingWarehouseId
84
    ds_warehouse.shippingWarehouseId = warehouse.shippingWarehouseId
82
    ds_warehouse.transferDelayInHours = warehouse.transferDelayInHours
85
    ds_warehouse.transferDelayInHours = warehouse.transferDelayInHours
83
    ds_warehouse.vendor = get_vendor(warehouse.vendor.id)
86
    ds_warehouse.vendor = get_vendor(warehouse.vendor.id)
-
 
87
    ds_warehouse.state = get_state(warehouse.stateId)
84
    ds_warehouse.warehouseType = WarehouseType._VALUES_TO_NAMES[warehouse.warehouseType]    
88
    ds_warehouse.warehouseType = WarehouseType._VALUES_TO_NAMES[warehouse.warehouseType]    
85
    if warehouse.vendorString:
89
    if warehouse.vendorString:
86
        ds_warehouse.vendorString = warehouse.vendorString
90
        ds_warehouse.vendorString = warehouse.vendorString
87
    session.commit()
91
    session.commit()
88
    return ds_warehouse.id
92
    return ds_warehouse.id
Line 434... Line 438...
434
    warehouses = {}
438
    warehouses = {}
435
    ourGoodWarehouses = {}
439
    ourGoodWarehouses = {}
436
    thirdpartyWarehouses = {}
440
    thirdpartyWarehouses = {}
437
    preferredThirdpartyWarehouses = {}
441
    preferredThirdpartyWarehouses = {}
438
    for warehouse in Warehouse.query.all():
442
    for warehouse in Warehouse.query.all():
439
        if (warehouse.inventoryType == InventoryType._VALUES_TO_NAMES[InventoryType.BAD]):
443
        if (warehouse.inventoryType == InventoryType._VALUES_TO_NAMES[InventoryType.BAD] or warehouse.warehouseType == WarehouseType._VALUES_TO_NAMES[WarehouseType.OURS_THIRDPARTY]):
440
            continue
444
            continue
441
        warehouses[warehouse.id] = warehouse
445
        warehouses[warehouse.id] = warehouse
442
        if warehouse.warehouseType == WarehouseType._VALUES_TO_NAMES[WarehouseType.OURS]:
446
        if warehouse.warehouseType == WarehouseType._VALUES_TO_NAMES[WarehouseType.OURS]:
443
            if warehouse.inventoryType == InventoryType._VALUES_TO_NAMES[InventoryType.GOOD]:
447
            if warehouse.inventoryType == InventoryType._VALUES_TO_NAMES[InventoryType.GOOD]:
444
                ourGoodWarehouses[warehouse.id] = warehouse
448
                ourGoodWarehouses[warehouse.id] = warehouse