Fix feedback percentage formatting.
- M jbidwatcher/trunk/src/com/jbidwatcher/auction/Seller.java view
- M jbidwatcher/trunk/src/com/jbidwatcher/ui/auctionTableModel.java view
| 355 | 600 | |
|---|---|---|
| 4 | 4 | import com.jbidwatcher.util.db.ActiveRecord; |
| 5 | 5 | import com.jbidwatcher.util.xml.XMLElement; |
| 6 | 6 | |
| 7 | import java.text.NumberFormat; | |
| 8 | ||
| 7 | 9 | /** |
| 8 | 10 | * User: Morgan |
| 9 | 11 | * Date: Sep 29, 2007 |
| --- | --- | |
| 14 | 16 | { |
| 15 | 17 | public String getSeller() { return getString("seller"); } |
| 16 | 18 | public void setSeller(String name) { setString("seller", name); } |
| 17 | public String getPositivePercentage() { return getString("feedback_percentage"); } | |
| 19 | ||
| 20 | private static NumberFormat decimalPercentage = null; | |
| 21 | public String getPositivePercentage() { | |
| 22 | if(decimalPercentage == null) { | |
| 23 | decimalPercentage = NumberFormat.getPercentInstance(); | |
| 24 | decimalPercentage.setMinimumFractionDigits(1); | |
| 25 | decimalPercentage.setMaximumFractionDigits(1); | |
| 26 | } | |
| 27 | Double x = Double.parseDouble(getString("feedback_percentage")); | |
| 28 | return decimalPercentage.format(x/100.0); | |
| 29 | } | |
| 18 | 30 | public void setPositivePercentage(String positivePercentage) { setString("feedback_percentage", positivePercentage); } |
| 19 | 31 | public int getFeedback() { return getInteger("feedback", 0); } |
| 20 | 32 | public void setFeedback(int feedback) { setInteger("feedback", feedback); } |
| --- | --- | |
| 31 | 43 | xfeedback.setContents(Integer.toString(getFeedback())); |
| 32 | 44 | xmlResult.addChild(xfeedback); |
| 33 | 45 | |
| 34 | xpercentage.setContents(getPositivePercentage()); | |
| 46 | xpercentage.setContents(getString("feedback_percentage")); | |
| 35 | 47 | xmlResult.addChild(xpercentage); |
| 36 | 48 | |
| 37 | 49 | return xmlResult; |
| --- | --- | |
| 70 | 82 | public Seller makeSeller(String sellerName, Seller oldSeller) { |
| 71 | 83 | Seller rval = makeSeller(sellerName); |
| 72 | 84 | rval.setFeedback(oldSeller.getFeedback()); |
| 73 | rval.setPositivePercentage(oldSeller.getPositivePercentage()); | |
| 85 | rval.setPositivePercentage(oldSeller.getString("feedback_percentage")); | |
| 74 | 86 | |
| 75 | 87 | rval.saveDB(); |
| 76 | 88 | return rval; |
| 560 | 600 | |
|---|---|---|
| 199 | 199 | case TableColumnController.BIDCOUNT: return aEntry.getNumBidders(); |
| 200 | 200 | case TableColumnController.JUSTPRICE: return aEntry.getUSCurBid(); |
| 201 | 201 | case TableColumnController.SELLER_POSITIVE_FEEDBACK: try { |
| 202 | return (int)(Double.parseDouble(aEntry.getPositiveFeedbackPercentage())*10.0); | |
| 202 | String feedbackPercent = aEntry.getPositiveFeedbackPercentage(); | |
| 203 | if(feedbackPercent != null) feedbackPercent = feedbackPercent.replace("%", ""); | |
| 204 | return safeConvert(feedbackPercent); | |
| 203 | 205 | } catch(Exception e) { |
| 204 | 206 | return Zero; |
| 205 | 207 | } |
| --- | --- | |
| 244 | 246 | } |
| 245 | 247 | } |
| 246 | 248 | |
| 249 | private int safeConvert(String feedbackPercent) | |
| 250 | { | |
| 251 | int rval; | |
| 252 | try { | |
| 253 | rval = (int) (Double.parseDouble(feedbackPercent) * 10.0); | |
| 254 | } catch (NumberFormatException e) { | |
| 255 | rval = 0; | |
| 256 | } | |
| 257 | return rval; | |
| 258 | } | |
| 259 | ||
| 247 | 260 | private Currency getMaxOrSnipe(AuctionEntry aEntry) { |
| 248 | 261 | if(aEntry.isSniped()) { |
| 249 | 262 | return aEntry.getSnipeAmount(); |
| --- | --- | |
| 446 | 459 | return aEntry.getFeedbackScore(); |
| 447 | 460 | case TableColumnController.SELLER_POSITIVE_FEEDBACK: |
| 448 | 461 | String fbp = aEntry.getPositiveFeedbackPercentage(); |
| 449 | return (fbp == null || fbp.length() == 0)?"--":(fbp+ '%'); | |
| 462 | return (fbp == null || fbp.length() == 0)?"--":fbp; | |
| 450 | 463 | case TableColumnController.CUR_TOTAL: |
| 451 | Currency shipping = aEntry.getShippingWithInsurance(); | |
| 464 | Currency shipping = aEntry.getShippingWithInsurance(); | |
| 452 | 465 | if(shipping.getCurrencyType() == Currency.NONE) { |
| 453 | return "--"; // shipping not set so cannot add up values | |
| 466 | return "--"; // shipping not set so cannot add up values | |
| 454 | 467 | } |
| 455 | 468 | try { |
| 456 | 469 | return aEntry.getCurBid().add(shipping); |
