@Override public String getIndexResult(String[] brands, Date date) { if (date != null) { DayStatus ds = dataDaoV2.getDayStatus(date); if (ds == null || ds.getStatus() == null || ds.getStatus() == 0) { SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日"); return this.getErrorResult(3002, sdf.format(date) + "没有相关数据,请重新选择日期"); } } Date yesterday = getYesterday(date); Set<String> bSet = new HashSet<String>(); for (String brand : brands) { bSet.add(brand); } List<BrandResult> indexBrandResults = dataDaoV2.getBrandResult(yesterday, brands); for (BrandResult ibr : indexBrandResults) { if (springProperty.isMockValue()) { ibr.setDayAmount(10000L); } bSet.remove(ibr.getBrand()); } for (String brand : bSet) { BrandResult ibr = new BrandResult(brand, "", 0); indexBrandResults.add(ibr); } IndexStatResult ir = new IndexStatResult(); ir.setBrands(indexBrandResults); ir.setResult(0); ir.setDate(yesterday); ir.setClientVersion(springProperty.getClientVersion()); Date realYesterday = DateUtils.addDays(DateUtils.truncate(new Date(), Calendar.DAY_OF_MONTH), -1); DayStatus ds = dataDaoV2.getDayStatus(realYesterday); if (ds != null && ds.getStatus() != null && ds.getStatus().intValue() != 0) { ir.setYesterday(true); } else { ir.setYesterday(false); } List<Date> availableDates = dataDaoV2.getAvailableDates(realYesterday); List<String> ads = new ArrayList<String>(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); for (Date ad : availableDates) { ads.add(sdf.format(ad)); } ir.setAvailableDates(ads); JsonConfig jsonConfig = new JsonConfig(); jsonConfig.registerJsonValueProcessor(Date.class, new DateJsonValueProcessor("yyyy-MM-dd")); jsonConfig.registerJsonValueProcessor(Integer.class, new IntegerJsonValueProcessor()); String result = JSONObject.fromObject(ir, jsonConfig).toString(); return result; }