Service
/**
* 发票台账明细查询
* @param
* @return
*/
public List<InvoiceGeneralDetailVo> statInvoiceGeneralDetail(Integer memberId) {
Map<String,Object> params = new HashMap<String, Object>(2);
params.put("memberId",memberId);
List<InvoiceGeneralDetailVo> dataSet = new ArrayList<InvoiceGeneralDetailVo>(31);
for (int i = 1; i<32; i++){
List<String> days = getDays(i);
params.put("days",days);
InvoiceGeneralDetailVo dayData = getYearData(params);
dataSet.add(dayData);
}
return dataSet;
}
public static List<String> getDays(int day){
List<String> dayList = new ArrayList<String>(12);
String md = "";
for (int i = 1; i < 13; i++) {
if (i < 10 && day<10) {
md = "-"+"0" + i + "-" + "0" + day;
}
if (i<10 && day>10) {
md = "-"+"0" + i + "-" + day;
}
if (i>10 && day>10) {
md = "-" + i + "-" + day;
}
dayList.add(md);
}
return dayList;
}
public InvoiceGeneralDetailVo getYearData(Map<String,Object> params){
List<ZZVo> dayList = statisticsMapper.statInvoiceGeneralDetail(params);
Calendar calender = Calendar.getInstance();
InvoiceGeneralDetailVo detailVo = new InvoiceGeneralDetailVo();
for (ZZVo zzVo : dayList) {
calender.setTime(zzVo.getApplyDate());
Integer month = calender.get(Calendar.MONTH)+1;
switch (month){
case 1:
detailVo.setJanuary(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 2:
detailVo.setFebruary(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 3:
detailVo.setMarch(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 4:
detailVo.setApril(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 5:
detailVo.setMay(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 6:
detailVo.setJune(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 7:
detailVo.setJuly(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 8:
detailVo.setAugust(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 9:
detailVo.setSeptember(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 10:
detailVo.setOctober(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 11:
detailVo.setNovember(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
case 12:
detailVo.setDecember(StringUtils.defaultString(String.valueOf(zzVo.getInvoiceAmount()),"/"));
break;
}
}
return detailVo;
}
Controller
@PostMapping("invoice/general/detail")
@ResponseBody
public RestResponse generalLedgerDetail(@RequestBody InvoiceReq req) {
logger.info("memberId : "+req.getMemberId());
return RestResponse.success().setData(statService.statInvoiceGeneralDetail(req.getMemberId().intValue()));
}