Rev 10177 | Blame | Compare with Previous | Last modification | View Log | RSS feed
/****/package in.shop2020.inventory.controllers;import in.shop2020.model.v1.inventory.Warehouse;import in.shop2020.thrift.clients.CatalogClient;import in.shop2020.thrift.clients.InventoryClient;import in.shop2020.thrift.clients.WarehouseClient;import in.shop2020.utils.ModelUtils;import in.shop2020.warehouse.InventoryItem;import in.shop2020.warehouse.Scan;import in.shop2020.warehouse.ScanType;import in.shop2020.warehouse.WarehouseService.Client;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Date;import java.util.List;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;/*** @author mandeep**/public class DoaInController extends BaseController {private Log logger = LogFactory.getLog(DoaInController.class);private List<InventoryItem> inventoryItems;private String id;private String output;public String index() {try {List<InventoryItem> tobeRemovedInventoryItems = new ArrayList<InventoryItem>();Client warehouseClient = new WarehouseClient().getClient();inventoryItems = warehouseClient.getInventoryItemsFromLastScanType(ScanType.DOA_IN);for(InventoryItem inventoryItem:inventoryItems) {if(inventoryItem.getId()<47129 ||inventoryItem.getCurrentWarehouseId() == 1 ||inventoryItem.getCurrentWarehouseId() == 9) {//removing doa_in entries before 2013 and all hotspot entriestobeRemovedInventoryItems.add(inventoryItem);}}for(InventoryItem inventoryItem:tobeRemovedInventoryItems) {inventoryItems.remove(inventoryItem);}} catch (Exception e) {logger.error("Could not fetch inventory items", e);}return INDEX;}public String update() {try {Client warehouseClient = new WarehouseClient().getClient();InventoryItem inventoryItem = warehouseClient.getInventoryItemFromId(Long.valueOf(id));in.shop2020.model.v1.inventory.InventoryService.Client inventoryClient = new InventoryClient().getClient();Warehouse warehouse = inventoryClient.getWarehouse(inventoryItem.getCurrentWarehouseId());warehouseClient.scan(inventoryItem, ScanType.DOA_OUT, 1, warehouse.getBillingWarehouseId(), 0);} catch (Exception e) {logger.error("Could not fetch inventory items", e);}return index();}public String getWarehouseDisplayName(long warehouseId) {try {in.shop2020.model.v1.inventory.InventoryService.Client inventoryClient = new InventoryClient().getClient();return inventoryClient.getWarehouse(warehouseId).getDisplayName();} catch (Exception e) {return "N/A";}}public String getModelName(long itemId) {try {in.shop2020.model.v1.catalog.CatalogService.Client catalogClient = new CatalogClient().getClient();return ModelUtils.extractProductNameFromItem(catalogClient.getItem(itemId));} catch (Exception e) {return "N/A";}}public String getOrderIdDOAInItem(){try{Client warehouseClient = new WarehouseClient().getClient();List<Scan> scanList = warehouseClient.getScansForInventoryItem(Long.valueOf(id), ScanType.DOA_IN);Scan lastScan = scanList.get(scanList.size()-1);SimpleDateFormat df= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String doaInOrderIdDiv = "<div id = 'doa-in-order-id-div' align='center'><table id = 'doa-in-order-id-table'><tr><th>OrderId</th><th>DOA-In Time</th></tr>";doaInOrderIdDiv = doaInOrderIdDiv + "<tr><td>" + lastScan.getOrderId()+ "</td><td>" + df.format(new Date(lastScan.getScannedAt())) +"</td></tr></table></div>";setOutput(doaInOrderIdDiv);} catch(Exception e){logger.error("Error while getting order Id for DOA In item", e);}return OUTPUT;}public Log getLogger() {return logger;}public void setLogger(Log logger) {this.logger = logger;}public List<InventoryItem> getInventoryItems() {return inventoryItems;}public void setInventoryItems(List<InventoryItem> inventoryItems) {this.inventoryItems = inventoryItems;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getOutput() {return output;}public void setOutput(String output) {this.output = output;}}