|
|
@ -1,8 +1,11 @@ |
|
|
|
package com.yxt.supervise.report.biz.dailysalesreport; |
|
|
|
|
|
|
|
import cn.hutool.Hutool; |
|
|
|
import cn.hutool.core.date.DateField; |
|
|
|
import cn.hutool.core.date.DateUtil; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.yxt.common.base.service.MybatisBaseService; |
|
|
|
import com.yxt.common.base.utils.StringUtils; |
|
|
|
import com.yxt.common.core.result.ResultBean; |
|
|
|
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReport; |
|
|
|
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReportQuery; |
|
|
@ -54,64 +57,72 @@ public class DailySalesReportService extends MybatisBaseService<DailySalesReport |
|
|
|
return rb; |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean getSalesByDate(DailySalesReportQuery pq) { |
|
|
|
public ResultBean getSalesByDate(String orderDate) { |
|
|
|
ResultBean rb=new ResultBean<>(); |
|
|
|
List<DailySalesReport> dailySalesReports=baseMapper.getSalesByDate(); |
|
|
|
List<List<String>> financialAnalysisChartData=convert(dailySalesReports); |
|
|
|
String startDate=""; |
|
|
|
String endDate=""; |
|
|
|
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd"); |
|
|
|
if(StringUtils.isNull(orderDate)){ |
|
|
|
startDate=ft.format(DateUtil.yesterday()); |
|
|
|
endDate=ft.format(DateUtil.offset(DateUtil.yesterday(), DateField.DAY_OF_MONTH,-7)); |
|
|
|
}else { |
|
|
|
startDate=ft.format(DateUtil.parse(orderDate)); |
|
|
|
Date ent=DateUtil.parse(orderDate); |
|
|
|
endDate=ft.format(DateUtil.offset(ent, DateField.DAY_OF_MONTH,-7)); |
|
|
|
} |
|
|
|
|
|
|
|
List<DailySalesReport> dailySalesReports=baseMapper.getSalesByDate(endDate,startDate); |
|
|
|
List<String[]> financialAnalysisChartData=convert(dailySalesReports); |
|
|
|
Map<String,Object> map=new HashMap<>(); |
|
|
|
map.put("financialAnalysisChartData",financialAnalysisChartData); |
|
|
|
List<ListSalesChannelData> listSalesChannelData=salesChanne(pq.getOrderDate()); |
|
|
|
List<ListSalesChannelData> listSalesChannelData=salesChanne(startDate); |
|
|
|
map.put("listSalesChannelData",listSalesChannelData); |
|
|
|
// List<FinancialData> financialData=new ArrayList<>();
|
|
|
|
// FinancialData financialData1=new FinancialData();
|
|
|
|
// financialData1.setName("销售商品收到的现金(元)");
|
|
|
|
// financialData1.setTotalPrice("637774.16");
|
|
|
|
// FinancialData financialData2=new FinancialData();
|
|
|
|
// financialData2.setName("销售商品收到的现金(元)");
|
|
|
|
// financialData2.setTotalPrice("637774.16");
|
|
|
|
// financialData.add(financialData1);
|
|
|
|
// financialData.add(financialData2);
|
|
|
|
// map.put("financialData",financialData);
|
|
|
|
return rb.success().setData(map); |
|
|
|
} |
|
|
|
public List<ListSalesChannelData> salesChanne(String orderDate){ |
|
|
|
List<ListSalesChannelData> list=new ArrayList<>(); |
|
|
|
double lwlsdTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getLwlsdTotalSales(); |
|
|
|
ListSalesChannelData lwlsd=new ListSalesChannelData(); |
|
|
|
lwlsd.setDeductionAccountsReceivable(String.valueOf(lwlsdTotalSales)); |
|
|
|
lwlsd.setSalesChannelCategory("连网连锁店"); |
|
|
|
lwlsd.setTotalAmount(String.valueOf(lwlsdTotalSales)); |
|
|
|
lwlsd.setAccountsReceivable("0"); |
|
|
|
double lsnjnTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getLsnjnTotalSales(); |
|
|
|
ListSalesChannelData lsnjn=new ListSalesChannelData(); |
|
|
|
lsnjn.setDeductionAccountsReceivable(String.valueOf(lsnjnTotalSales)); |
|
|
|
lsnjn.setSalesChannelCategory("连锁内加盟"); |
|
|
|
lsnjn.setTotalAmount(String.valueOf(lsnjnTotalSales)); |
|
|
|
lsnjn.setAccountsReceivable("0"); |
|
|
|
double pszxTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getPszxTotalSales(); |
|
|
|
ListSalesChannelData pszx=new ListSalesChannelData(); |
|
|
|
pszx.setDeductionAccountsReceivable(String.valueOf(pszxTotalSales)); |
|
|
|
pszx.setSalesChannelCategory("配送中心"); |
|
|
|
pszx.setTotalAmount(String.valueOf(pszxTotalSales)); |
|
|
|
pszx.setAccountsReceivable("0"); |
|
|
|
double lswjmTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getLswjmTotalSales(); |
|
|
|
ListSalesChannelData lswjm=new ListSalesChannelData(); |
|
|
|
lswjm.setDeductionAccountsReceivable(String.valueOf(lswjmTotalSales)); |
|
|
|
lswjm.setSalesChannelCategory("连锁外加盟"); |
|
|
|
lswjm.setTotalAmount(String.valueOf(lswjmTotalSales)); |
|
|
|
lswjm.setAccountsReceivable("0"); |
|
|
|
double bymdcTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getBymdcTotalSales(); |
|
|
|
ListSalesChannelData bymdc=new ListSalesChannelData(); |
|
|
|
bymdc.setDeductionAccountsReceivable(String.valueOf(bymdcTotalSales)); |
|
|
|
bymdc.setSalesChannelCategory("36524集团报烟门店仓"); |
|
|
|
bymdc.setTotalAmount(String.valueOf(bymdcTotalSales)); |
|
|
|
bymdc.setAccountsReceivable("0"); |
|
|
|
double yclswjmTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getYclswjmTotalSales(); |
|
|
|
ListSalesChannelData yclswjm=new ListSalesChannelData(); |
|
|
|
yclswjm.setDeductionAccountsReceivable(String.valueOf(yclswjmTotalSales)); |
|
|
|
yclswjm.setSalesChannelCategory("烟草连锁外加盟"); |
|
|
|
yclswjm.setTotalAmount(String.valueOf(yclswjmTotalSales)); |
|
|
|
yclswjm.setAccountsReceivable("0"); |
|
|
|
double lwlsdTotalSales=0; |
|
|
|
double lsnjnTotalSales=0; |
|
|
|
double pszxTotalSales=0; |
|
|
|
double lswjmTotalSales=0; |
|
|
|
double bymdcTotalSales=0; |
|
|
|
double yclswjmTotalSales=0; |
|
|
|
lwlsdTotalSales=baseMapper.lwlsdTotalSales(orderDate); |
|
|
|
ListSalesChannelData lwlsd=new ListSalesChannelData(); |
|
|
|
lwlsd.setDeductionAccountsReceivable(String.valueOf(lwlsdTotalSales)); |
|
|
|
lwlsd.setSalesChannelCategory("连网连锁店"); |
|
|
|
lwlsd.setTotalAmount(String.valueOf(lwlsdTotalSales)); |
|
|
|
lwlsd.setAccountsReceivable("0"); |
|
|
|
lsnjnTotalSales=baseMapper.lsnjnTotalSales(orderDate); |
|
|
|
ListSalesChannelData lsnjn=new ListSalesChannelData(); |
|
|
|
lsnjn.setDeductionAccountsReceivable(String.valueOf(lsnjnTotalSales)); |
|
|
|
lsnjn.setSalesChannelCategory("连锁内加盟"); |
|
|
|
lsnjn.setTotalAmount(String.valueOf(lsnjnTotalSales)); |
|
|
|
lsnjn.setAccountsReceivable("0"); |
|
|
|
pszxTotalSales=baseMapper.pszxTotalSales(orderDate); |
|
|
|
ListSalesChannelData pszx=new ListSalesChannelData(); |
|
|
|
pszx.setDeductionAccountsReceivable(String.valueOf(pszxTotalSales)); |
|
|
|
pszx.setSalesChannelCategory("配送中心"); |
|
|
|
pszx.setTotalAmount(String.valueOf(pszxTotalSales)); |
|
|
|
pszx.setAccountsReceivable("0"); |
|
|
|
lswjmTotalSales=baseMapper.lswjmTotalSales(orderDate); |
|
|
|
ListSalesChannelData lswjm=new ListSalesChannelData(); |
|
|
|
lswjm.setDeductionAccountsReceivable(String.valueOf(lswjmTotalSales)); |
|
|
|
lswjm.setSalesChannelCategory("连锁外加盟"); |
|
|
|
lswjm.setTotalAmount(String.valueOf(lswjmTotalSales)); |
|
|
|
lswjm.setAccountsReceivable("0"); |
|
|
|
bymdcTotalSales=baseMapper.bymdcTotalSales(orderDate); |
|
|
|
ListSalesChannelData bymdc=new ListSalesChannelData(); |
|
|
|
bymdc.setDeductionAccountsReceivable(String.valueOf(bymdcTotalSales)); |
|
|
|
bymdc.setSalesChannelCategory("36524集团报烟门店仓"); |
|
|
|
bymdc.setTotalAmount(String.valueOf(bymdcTotalSales)); |
|
|
|
bymdc.setAccountsReceivable("0"); |
|
|
|
yclswjmTotalSales=baseMapper.yclswjmTotalSales(orderDate); |
|
|
|
ListSalesChannelData yclswjm=new ListSalesChannelData(); |
|
|
|
yclswjm.setDeductionAccountsReceivable(String.valueOf(yclswjmTotalSales)); |
|
|
|
yclswjm.setSalesChannelCategory("烟草连锁外加盟"); |
|
|
|
yclswjm.setTotalAmount(String.valueOf(yclswjmTotalSales)); |
|
|
|
yclswjm.setAccountsReceivable("0"); |
|
|
|
list.add(lwlsd); |
|
|
|
list.add(lsnjn); |
|
|
|
list.add(pszx); |
|
|
@ -120,25 +131,16 @@ public class DailySalesReportService extends MybatisBaseService<DailySalesReport |
|
|
|
list.add(yclswjm); |
|
|
|
return list; |
|
|
|
} |
|
|
|
public List<List<String>> convert(List<DailySalesReport> list){ |
|
|
|
List<List<String>> lists=new ArrayList<>(); |
|
|
|
List<String> date=new ArrayList<>(); |
|
|
|
date.add("日期"); |
|
|
|
date.add("连网连锁店"); |
|
|
|
date.add("连锁内加盟"); |
|
|
|
date.add("配送中心"); |
|
|
|
date.add("连锁外加盟"); |
|
|
|
date.add("36524集团报烟门店仓"); |
|
|
|
date.add("烟草连锁外加盟"); |
|
|
|
lists.add(date); |
|
|
|
public List<String[]> convert(List<DailySalesReport> list){ |
|
|
|
List<String[]> lists=new ArrayList<>(); |
|
|
|
//List<String> date=new ArrayList<>();
|
|
|
|
String [] strings={"日期","连网连锁店","连锁内加盟","配送中心","连锁外加盟","36524集团报烟门店仓","烟草连锁外加盟"}; |
|
|
|
lists.add(strings); |
|
|
|
for(DailySalesReport dailySalesReport:list){ |
|
|
|
date.add(dailySalesReport.getOrderDate()); |
|
|
|
date.add(String.valueOf(dailySalesReport.getLwlsdTotalSales())); |
|
|
|
date.add(String.valueOf(dailySalesReport.getLsnjnTotalSales())); |
|
|
|
date.add(String.valueOf(dailySalesReport.getPszxTotalSales())); |
|
|
|
date.add(String.valueOf(dailySalesReport.getLswjmTotalSales())); |
|
|
|
date.add(String.valueOf(dailySalesReport.getBymdcTotalSales())); |
|
|
|
date.add(String.valueOf(dailySalesReport.getYclswjmTotalSales())); |
|
|
|
String [] strings1={dailySalesReport.getOrderDate(),String.valueOf(dailySalesReport.getLwlsdTotalSales()),String.valueOf(dailySalesReport.getLsnjnTotalSales()), |
|
|
|
String.valueOf(dailySalesReport.getPszxTotalSales()),String.valueOf(dailySalesReport.getLswjmTotalSales()),String.valueOf(dailySalesReport.getBymdcTotalSales()), |
|
|
|
String.valueOf(dailySalesReport.getYclswjmTotalSales())}; |
|
|
|
lists.add(strings1); |
|
|
|
} |
|
|
|
return lists; |
|
|
|
} |
|
|
|