Rev 2126 | Rev 2427 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.catalog.dashboard.shared;import in.shop2020.catalog.dashboard.client.CatalogService;import in.shop2020.catalog.dashboard.client.CatalogServiceAsync;import in.shop2020.model.v1.catalog.status;import java.util.Date;import java.util.List;import java.util.Map;import java.util.Map.Entry;import com.google.gwt.core.client.GWT;import com.google.gwt.user.client.DOM;import com.google.gwt.user.client.Window;import com.google.gwt.user.client.rpc.AsyncCallback;import com.google.gwt.user.client.ui.RootPanel;public class Utils {//public static final int MODE_ADD = 0, MODE_EDIT = 1;public static final int PHASED_OUT = 0,DELETED = 1,PAUSED = 2,ACTIVE = 3,IN_PROCESS = 4,CONTENT_COMPLETE = 5;public static final int ROLE_STAGING = 0, ROLE_PRODUCTION = 1;private static Map<Long, String> vendors, warehouses;private static final CatalogServiceAsync catalogService = GWT.create(CatalogService.class);static {catalogService.getAllVendors(new AsyncCallback<Map<Long,String>>() {@Overridepublic void onSuccess(Map<Long, String> result) {vendors = result;}@Overridepublic void onFailure(Throwable caught) {caught.printStackTrace();}});catalogService.getAllWarehouses(new AsyncCallback<Map<Long,String>>() {@Overridepublic void onSuccess(Map<Long, String> result) {warehouses = result;}@Overridepublic void onFailure(Throwable caught) {caught.printStackTrace();}});}public static Map<Long, String> getAllVendors() {return vendors;}public static Map<Long, String> getAllWarehouses() {return warehouses;}public static String getVendorDesc(long id) {if(vendors == null) {return null;}return vendors.get(id);}public static String getWarehouseDesc(long id) {if(warehouses == null) {return null;}return warehouses.get(id);}public static String getDisplayableDate(Long millis){Date date = new Date();date.setTime(millis);String dateString = date.toString();dateString = dateString.substring(0, dateString.lastIndexOf(" "));dateString = dateString.substring(0, dateString.lastIndexOf(" "));return dateString;}public static long getVendorId(String vendorDesc) {if(vendors == null) {return 0;}for(Entry<Long, String> v : vendors.entrySet()) {if(v.getValue().equals(vendorDesc)) {return v.getKey();}}return 0;}public static boolean validateItem(Item item) {if(item.getProductGroup() == null || item.getProductGroup().isEmpty()) {Window.alert("Product Group cannot be empty.");return false;}if(item.getBrand() == null || item.getBrand().isEmpty()) {Window.alert("Brand cannot be empty.");return false;}if(item.getModelNumber() == null || item.getModelNumber().isEmpty()) {Window.alert("Model Number cannot be empty.");return false;}if(item.getSellingPrice() != -1 && item.getMrp() != -1 && item.getSellingPrice() > item.getMrp()) {Window.alert("Selling price cannot be more than MRP");return false;}if(item.getVendorPricesMap() != null && !item.getVendorPricesMap().isEmpty()) {for(VendorPricings v : item.getVendorPricesMap().values()) {if(item.getMrp() != -1 && item.getMrp() < v.getMop()) {Window.alert("MRP cannot be less than MOP. Vendor: " + Utils.getVendorDesc(v.getVendorId()));return false;}if(v.getTransferPrice() > v.getMop()) {Window.alert("Transfer Price cannot be more than MOP. Vendor: " + Utils.getVendorDesc(v.getVendorId()));return false;}}}if(item.getVendorKeysMap() != null && !item.getVendorKeysMap().isEmpty()) {for(VendorItemMapping v : item.getVendorKeysMap().values()) {if(v.getItemKey() == null || v.getItemKey().isEmpty()) {Window.alert("Item Key cannot be empty. Vendor: " + Utils.getVendorDesc(v.getVendorId()));return false;}}}return true;}public static boolean validateStatusChange(int fromStatus, int toStatus) {switch(toStatus) {case PHASED_OUT:switch(fromStatus) {case IN_PROCESS: return true;case CONTENT_COMPLETE: return true;case ACTIVE: return true;default: return false;}case IN_PROCESS:switch(fromStatus) {case PHASED_OUT: return true;default: return false;}case PAUSED:switch(fromStatus) {case ACTIVE: return true;default: return false;}case ACTIVE:switch(fromStatus) {case PAUSED: return true;default: return false;}}return true;}public static void showWaitCursor() {DOM.setStyleAttribute(RootPanel.getBodyElement(), "cursor", "wait");}public static void showDefaultCursor() {DOM.setStyleAttribute(RootPanel.getBodyElement(), "cursor", "default");}}