public FarmingGraphPage(final FarmStrategy farmStrategy) { this.farmStrategy = farmStrategy; add(new Label("strategyName", farmStrategy.getStrategyName())); add( ArmoryImage.createArmoryImage( (AuctioneerWebApp) getApplication(), "icon", farmStrategy.getIconItem())); }
public FarmingGraphPage(PageParameters parameters) throws Exception { final int farmStrategyID = parameters.getInt("farmStrategyID"); farmStrategy = farmStrategyBO.getById(FarmStrategyId.farmStrategyId(farmStrategyID)); add(new Label("strategyName", farmStrategy.getStrategyName())); add( ArmoryImage.createArmoryImage( (AuctioneerWebApp) getApplication(), "icon", farmStrategy.getIconItem())); setPageTitle("Farming - " + farmStrategy.getStrategyName()); final PropertyModel<List<FarmStrategyLoot>> materialListModel = new PropertyModel<List<FarmStrategyLoot>>(this, "farmStrategy.loot"); ListView<FarmStrategyLoot> listView = new ListView<FarmStrategyLoot>("lootList", materialListModel) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<FarmStrategyLoot> item) { final FarmStrategyLoot loot = item.getModelObject(); PageParameters params = new PageParameters(); params.add("itemID", String.valueOf(loot.getItem().getArmoryId().toInt())); final Link<String> lootLine = new BookmarkablePageLink<String>("lootLine", PriceWatchGraphPage.class, params); lootLine.add(new WowheadTooltip(loot.getItem().getArmoryId())); lootLine.add( ArmoryImage.createArmoryImage( (AuctioneerWebApp) getApplication(), "icon", loot.getItem())); final String name = loot.getItemCount() + " x " + loot.getItem().getItemName(); lootLine.add(new Label("name", name)); item.add(lootLine); } }; listView.setReuseItems(true); listView.setOutputMarkupId(true); add(listView); add(new Label("minProfit", goldToString(farmStrategy.getTotalSafeProfit()))); add(new Label("medianProfit", goldToString(farmStrategy.getTotalProfit()))); }
private Highstock addMarginSeriesData(final Highstock hs) { final List<FarmStrategyProfit> profits = farmStrategy.getProfits(); // Fill Data final List<Data> medianProfit = new ArrayList<Data>(); final List<Data> minProfit = new ArrayList<Data>(); final List<Data> profitSampleSize = new ArrayList<Data>(); for (FarmStrategyProfit profit : profits) { medianProfit.add( new Data(profit.getProfitTimestamp(), profit.getMedianSalePrice().toLong() / 10000.0)); minProfit.add( new Data(profit.getProfitTimestamp(), profit.getMinSalePrice().toLong() / 10000.0)); profitSampleSize.add(new Data(profit.getProfitTimestamp(), profit.getSalePriceSampleSize())); } hs.series() .add( new Series(medianProfit) .color(MIN_SALE_PRICE_SERIES_COLOR) .name("Median Profit") .index(0) .type("area") .shadow(true)); hs.series() .add( new Series(minProfit) .color(MIN_MATERIAL_COST_SERIES_COLOR) .name("Minimaler Profit") .index(1) .type("area") .shadow(true)); hs.series() .add( new Series(profitSampleSize) .color(MATERIAL_SAMPLE_SIZE_SERIES_COLOR) .name("Samples") .index(4) .type("area") .showInLegend(false) .shadow(true) .yAxis(1)); return hs; }