Subversion Repositories SmartDukaan

Rev

Rev 9452 | Rev 10308 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5185 mandeep.dh 1
/**
2
 * 
3
 */
4
package in.shop2020.inventory.controllers;
5
 
5945 mandeep.dh 6
import in.shop2020.model.v1.inventory.Warehouse;
5185 mandeep.dh 7
import in.shop2020.thrift.clients.CatalogClient;
5945 mandeep.dh 8
import in.shop2020.thrift.clients.InventoryClient;
5185 mandeep.dh 9
import in.shop2020.thrift.clients.PurchaseClient;
10
import in.shop2020.thrift.clients.WarehouseClient;
11
import in.shop2020.utils.ModelUtils;
12
import in.shop2020.warehouse.InventoryItem;
13
import in.shop2020.warehouse.ScanType;
14
import in.shop2020.warehouse.WarehouseService.Client;
15
 
9429 amar.kumar 16
import java.util.ArrayList;
5185 mandeep.dh 17
import java.util.List;
18
 
19
import org.apache.commons.logging.Log;
20
import org.apache.commons.logging.LogFactory;
21
 
22
/**
23
 * @author mandeep
24
 *
25
 */
26
public class DoaOutController extends BaseController {
27
    private Log logger = LogFactory.getLog(DoaOutController.class);
28
    private String id;
29
    List<InventoryItem> inventoryItems;
30
 
31
    public String index() {
32
        try {
9452 amar.kumar 33
        	//List<InventoryItem> tobeRemovedInventoryItems = new ArrayList<InventoryItem>();
5185 mandeep.dh 34
            Client warehouseClient = new WarehouseClient().getClient();
35
            inventoryItems = warehouseClient
36
                    .getInventoryItemsFromLastScanType(ScanType.DOA_OUT);
9452 amar.kumar 37
           /* for(InventoryItem inventoryItem:inventoryItems) {
9428 amar.kumar 38
            	if(inventoryItem.getId()<59078 ||  
39
            			inventoryItem.getCurrentWarehouseId() == 1 || 
9429 amar.kumar 40
            			inventoryItem.getCurrentWarehouseId() == 9) {//removing doa_in entries before 2013 and all hotspot entries
41
            		tobeRemovedInventoryItems.add(inventoryItem);
9428 amar.kumar 42
            	}
43
            }
9429 amar.kumar 44
            for(InventoryItem inventoryItem:tobeRemovedInventoryItems) {
45
            	inventoryItems.remove(inventoryItem);
9452 amar.kumar 46
            }*/
5185 mandeep.dh 47
        } catch (Exception e) {
48
            logger.error("Could not fetch inventory items", e);
49
        }
50
 
51
        return INDEX;
52
    }
53
 
54
    public String update() {
55
        try {
56
            Client warehouseClient = new WarehouseClient().getClient();
57
            InventoryItem inventoryItem = warehouseClient.getInventoryItemFromId(Long.valueOf(id));
5945 mandeep.dh 58
            in.shop2020.model.v1.inventory.InventoryService.Client catalogClient = new InventoryClient().getClient();
5185 mandeep.dh 59
            Warehouse warehouse = catalogClient.getWarehouse(inventoryItem.getCurrentWarehouseId());
9572 amar.kumar 60
            warehouseClient.scan(inventoryItem, ScanType.DOA_REPLACED, 1, warehouse.getBillingWarehouseId(), 0);
5185 mandeep.dh 61
            in.shop2020.purchase.PurchaseService.Client purchaseClient = new PurchaseClient().getClient();
62
            purchaseClient.unFulfillPO(inventoryItem.getPurchaseId(), inventoryItem.getItemId(), 1);
63
        } catch (Exception e) {
64
            logger.error("Could not fetch inventory items", e);
65
        }
66
 
67
        return index();
68
    }
5235 mandeep.dh 69
 
70
    public String getPONumber(long purchaseId) {
71
        try {
72
            in.shop2020.purchase.PurchaseService.Client purchaseClient = new PurchaseClient().getClient();
73
            return purchaseClient.getPurchaseOrderForPurchase(purchaseId).getPoNumber();
74
        } catch (Exception e) {
75
            return "N/A";
76
        }
77
    }
78
 
5185 mandeep.dh 79
    public String getWarehouseDisplayName(long warehouseId) {
80
        try {
5945 mandeep.dh 81
            in.shop2020.model.v1.inventory.InventoryService.Client catalogClient = new InventoryClient().getClient();
5185 mandeep.dh 82
            return catalogClient.getWarehouse(warehouseId).getDisplayName();
83
        } catch (Exception e) {
84
            return "N/A";
85
        }
86
    }
87
 
88
    public String getModelName(long itemId) {
89
        try {
5945 mandeep.dh 90
            in.shop2020.model.v1.catalog.CatalogService.Client catalogClient = new CatalogClient()
5185 mandeep.dh 91
                    .getClient();
92
            return ModelUtils.extractProductNameFromItem(catalogClient
93
                    .getItem(itemId));
94
        } catch (Exception e) {
95
            return "N/A";
96
        }
97
    }
98
 
99
    public String getId() {
100
        return id;
101
    }
102
 
103
    public void setId(String id) {
104
        this.id = id;
105
    }
106
 
107
    public List<InventoryItem> getInventoryItems() {
108
        return inventoryItems;
109
    }
110
 
111
    public void setInventoryItems(List<InventoryItem> inventoryItems) {
112
        this.inventoryItems = inventoryItems;
113
    }
114
 
115
}