Subversion Repositories SmartDukaan

Rev

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

Rev 5944 Rev 5978
Line 28... Line 28...
28
import datetime
28
import datetime
29
import sys
29
import sys
30
import threading
30
import threading
31
import urllib2
31
import urllib2
32
 
32
 
-
 
33
sourceId = int(ConfigClient().get_property("sourceid"))
33
to_addresses = ["cnc.center@shop2020.in", "ashutosh.saxena@shop2020.in"]
34
to_addresses = ["cnc.center@shop2020.in", "ashutosh.saxena@shop2020.in"]
34
from_user = "cnc.center@shop2020.in"
35
from_user = "cnc.center@shop2020.in"
35
from_pwd = "5h0p2o2o"
36
from_pwd = "5h0p2o2o"
36
skippedItems = { 175 : [27, 2160, 2175, 2163, 2158, 7128, 26, 2154],
37
skippedItems = { 175 : [27, 2160, 2175, 2163, 2158, 7128, 26, 2154],
37
                 193 : [5839] }
38
                 193 : [5839] }
Line 86... Line 87...
86
    t_item_shipping_info = ItemShippingInfo()
87
    t_item_shipping_info = ItemShippingInfo()
87
    try:
88
    try:
88
        item = get_item(item_id)
89
        item = get_item(item_id)
89
        t_item_shipping_info.isRisky = item.risky
90
        t_item_shipping_info.isRisky = item.risky
90
        client = InventoryClient().get_client()
91
        client = InventoryClient().get_client()
91
        itemInfo = client.getItemAvailabilityAtLocation(item.id)
92
        itemInfo = client.getItemAvailabilityAtLocation(item.id, sourceId)
92
        warehouse_id = itemInfo[0]
93
        warehouse_id = itemInfo[0]
93
        if item.risky and item.status == status.ACTIVE:
94
        if item.risky and item.status == status.ACTIVE:
94
            availability = client.getItemAvailibilityAtWarehouse(warehouse_id, item_id)
95
            availability = client.getItemAvailibilityAtWarehouse(warehouse_id, item_id)
95
            if availability <= 0:
96
            if availability <= 0:
96
                add_status_change_log(item, status.PAUSED_BY_RISK)
97
                add_status_change_log(item, status.PAUSED_BY_RISK)
Line 414... Line 415...
414
def check_risky_item(item_id):
415
def check_risky_item(item_id):
415
    item = get_item(item_id)
416
    item = get_item(item_id)
416
    if not item.risky:
417
    if not item.risky:
417
        return
418
        return
418
    client = InventoryClient().get_client()
419
    client = InventoryClient().get_client()
419
    itemInfo = client.getItemAvailabilityAtLocation(item.id)    
420
    itemInfo = client.getItemAvailabilityAtLocation(item.id, sourceId)    
420
    warehouse_id = itemInfo[0]
421
    warehouse_id = itemInfo[0]
421
    availability = client.getItemAvailibilityAtWarehouse(warehouse_id, item.id)
422
    availability = client.getItemAvailibilityAtWarehouse(warehouse_id, item.id)
422
    if availability <= 0:
423
    if availability <= 0:
423
        if item.status == status.ACTIVE:
424
        if item.status == status.ACTIVE:
424
            change_item_status(item.id, status.PAUSED_BY_RISK)
425
            change_item_status(item.id, status.PAUSED_BY_RISK)
Line 953... Line 954...
953
def send_product_notifications():
954
def send_product_notifications():
954
    product_notifications = ProductNotification.query.all()
955
    product_notifications = ProductNotification.query.all()
955
    for product_notification in product_notifications:
956
    for product_notification in product_notifications:
956
        item = product_notification.item
957
        item = product_notification.item
957
        client = InventoryClient().get_client()
958
        client = InventoryClient().get_client()
958
        availability = client.getItemAvailabilityAtLocation(item.id)[4]
959
        availability = client.getItemAvailabilityAtLocation(item.id, sourceId)[4]
959
        if item.status == status.ACTIVE and (not item.risky or availability > 0):
960
        if item.status == status.ACTIVE and (not item.risky or availability > 0):
960
            __enque_product_notification_email(product_notification.email, __get_product_name(item) , product_notification.addedOn, __get_product_url(item), item.id)
961
            __enque_product_notification_email(product_notification.email, __get_product_name(item) , product_notification.addedOn, __get_product_url(item), item.id)
961
            product_notification.delete()
962
            product_notification.delete()
962
    session.commit()
963
    session.commit()
963
    return True
964
    return True