Commit d29bea81 authored by zuoyh's avatar zuoyh

Merge remote-tracking branch 'origin/dev' into dev

parents 76acf474 305f50fb
......@@ -35,8 +35,9 @@ public class CompanyPerformanceBo {
private BigDecimal extralAmount;
private Integer departureNum;
private Integer arrivalNum;
private Date startDate;
private Date endDate;
private String startDate;
private String endDate;
private String dateStr;
public BigDecimal getMemberAmount() {
return memberAmount==null?BigDecimal.ZERO:memberAmount;
......
......@@ -43,8 +43,7 @@ public class CompanyPerformanceBiz {
*/
public void exportOrderReceivedStatisticsData(CompanyPerformanceFindDTO companyPerformanceFindDTO, ServletOutputStream outputStream) throws IOException {
//1.查询数据
PageDataVO<CompanyPerformanceBo> pageDataVO = selectCompanyPerformancePage(companyPerformanceFindDTO);
List<CompanyPerformanceBo> data = pageDataVO.getData();
List<CompanyPerformanceBo> companyPerformanceBos = selectCompanyPerformances(companyPerformanceFindDTO);
//excel相关
XSSFWorkbook hssfWorkbook = new XSSFWorkbook();
......@@ -58,7 +57,7 @@ public class CompanyPerformanceBiz {
}
//设置数据
CellStyle generalCellStyle = createGeneralCellStyle(hssfWorkbook);
List<String[]> companyStatisticsData = getCompanyStatisticsData(data, companyPerformanceFindDTO.getStatisticalWay());
List<String[]> companyStatisticsData = getCompanyStatisticsData(companyPerformanceBos, companyPerformanceFindDTO.getStatisticalWay());
createCompnayStatisticsCellData(sheet, 1, generalCellStyle, companyStatisticsData);
hssfWorkbook.write(outputStream);
hssfWorkbook.close();
......@@ -93,15 +92,13 @@ public class CompanyPerformanceBiz {
private String[] getData(CompanyPerformanceBo companyPerformanceBo, Integer statisticalWay) {
String dateStr = "";
if (statisticalWay == ReceivedStatisticsEnum.DAY.getWayCode()) {
dateStr = DateUtil.format(companyPerformanceBo.getDate(),"yyyy.MM.dd");
dateStr = companyPerformanceBo.getDateStr();
}
if (statisticalWay == ReceivedStatisticsEnum.WEEK.getWayCode()) {
String startDateStr = DateUtil.format(companyPerformanceBo.getStartDate(), "yyyy.MM.dd");
String endDateStr = DateUtil.format(companyPerformanceBo.getEndDate(), "yyyy.MM.dd");
dateStr=String.format("%s~%s",startDateStr,endDateStr);
dateStr=String.format("%s~%s",companyPerformanceBo.getStartDate(),companyPerformanceBo.getEndDate());
}
if (statisticalWay == ReceivedStatisticsEnum.MONTH.getWayCode()) {
dateStr = String.format("%d.%s",companyPerformanceBo.getYear(),companyPerformanceBo.getMonth().replace(companyPerformanceBo.getYear()+"",""));
dateStr = companyPerformanceBo.getMonth();
}
return new String[]{
dateStr,
......@@ -151,6 +148,32 @@ public class CompanyPerformanceBiz {
return font;
}
public List<CompanyPerformanceBo> selectCompanyPerformances(CompanyPerformanceFindDTO companyPerformanceFindDTO){
Map<Integer, String> companyMap = vehicleFeign.findCompanyMap();
List<CompanyPerformanceBo> companyPerformanceBos = new ArrayList<>();
//日统计
if (companyPerformanceFindDTO.getStatisticalWay() == ReceivedStatisticsEnum.DAY.getWayCode()) {
companyPerformanceBos = orderReceivedStatisticsBiz.selectCompanyPerformanceWithDay(companyPerformanceFindDTO);
}
//按周
if (companyPerformanceFindDTO.getStatisticalWay() == ReceivedStatisticsEnum.WEEK.getWayCode()) {
companyPerformanceBos = orderReceivedStatisticsBiz.selectCompanyPerformanceWithWeek(companyPerformanceFindDTO);
}
//按月
if (companyPerformanceFindDTO.getStatisticalWay() == ReceivedStatisticsEnum.MONTH.getWayCode()) {
companyPerformanceBos = orderReceivedStatisticsBiz.selectCompanyPerformanceWithMonth(companyPerformanceFindDTO);
}
if (CollectionUtils.isEmpty(companyPerformanceBos)) {
return companyPerformanceBos;
}
companyPerformanceBos = wrapCompanyPermanceBo(companyPerformanceBos, companyMap, companyPerformanceFindDTO.getStatisticalWay());
return companyPerformanceBos;
}
/**
* 分页查询公司业绩
*
......@@ -179,10 +202,16 @@ public class CompanyPerformanceBiz {
if (CollectionUtils.isEmpty(data)) {
return pageDataVO;
}
for (CompanyPerformanceBo companyPerformanceBo : data) {
List<CompanyPerformanceBo> companyPerformanceBos = wrapCompanyPermanceBo(data, companyMap, companyPerformanceFindDTO.getStatisticalWay());
pageDataVO.setData(companyPerformanceBos);
return pageDataVO;
}
public List<CompanyPerformanceBo> wrapCompanyPermanceBo(List<CompanyPerformanceBo> companyPerformanceBos,Map<Integer,String> companyMap,Integer statisticsWay){
for (CompanyPerformanceBo companyPerformanceBo : companyPerformanceBos) {
String companyName = companyMap == null ? "" : companyMap.get(companyPerformanceBo.getCompanyId());
companyPerformanceBo.setCompanyName(companyName);
if (companyPerformanceFindDTO.getStatisticalWay() == ReceivedStatisticsEnum.WEEK.getWayCode()) {
if (statisticsWay == ReceivedStatisticsEnum.WEEK.getWayCode()) {
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calendar.MONDAY);
cal.set(Calendar.YEAR, companyPerformanceBo.getYear());
......@@ -191,11 +220,19 @@ public class CompanyPerformanceBiz {
Date startDate = cal.getTime();
cal.add(Calendar.DAY_OF_WEEK, 6);
Date endDate = cal.getTime();
companyPerformanceBo.setStartDate(DateUtil.beginOfDay(startDate));
companyPerformanceBo.setEndDate(DateUtil.beginOfDay(endDate));
companyPerformanceBo.setStartDate(DateUtil.format(startDate,"yyyy.MM.dd"));
companyPerformanceBo.setEndDate(DateUtil.format(endDate,"yyyy.MM.dd"));
companyPerformanceBo.setWeekOfYear(String.format("%s.%s",companyPerformanceBo.getYear()+"",companyPerformanceBo.getWeekOfYear().replace(companyPerformanceBo.getYear()+"","")));
}
if(statisticsWay == ReceivedStatisticsEnum.DAY.getWayCode()) {
companyPerformanceBo.setDateStr(DateUtil.format(companyPerformanceBo.getDate(),"yyyy.MM.dd"));
}
if (statisticsWay == ReceivedStatisticsEnum.MONTH.getWayCode()){
companyPerformanceBo.setMonth(String.format("%s.%s",companyPerformanceBo.getYear()+"",companyPerformanceBo.getMonth().replace(companyPerformanceBo.getYear()+"","")));
}
}
return pageDataVO;
return companyPerformanceBos;
}
}
......@@ -64,6 +64,11 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
() -> mapper.selectCompanyPerformanceWithDay(companyPerformanceFindDTO));
}
public List<CompanyPerformanceBo> selectCompanyPerformanceWithDay(CompanyPerformanceFindDTO companyPerformanceFindDTO) {
List<CompanyPerformanceBo> companyPerformanceBos = mapper.selectCompanyPerformanceWithDay(companyPerformanceFindDTO);
return CollectionUtils.isEmpty(companyPerformanceBos)?Collections.EMPTY_LIST:companyPerformanceBos;
}
/**
* 公司业绩(按月统计)
*
......@@ -75,6 +80,10 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
() -> mapper.selectCompanyPerformanceWithMonth(companyPerformanceFindDTO));
}
public List<CompanyPerformanceBo> selectCompanyPerformanceWithMonth(CompanyPerformanceFindDTO companyPerformanceFindDTO) {
List<CompanyPerformanceBo> companyPerformanceBos = mapper.selectCompanyPerformanceWithMonth(companyPerformanceFindDTO);
return CollectionUtils.isEmpty(companyPerformanceBos)?Collections.EMPTY_LIST:companyPerformanceBos;
}
/**
* 公司业绩(按周统计)
*
......@@ -86,7 +95,10 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
() -> mapper.selectCompanyPerformanceWithWeek(companyPerformanceFindDTO));
}
public List<CompanyPerformanceBo> selectCompanyPerformanceWithWeek(CompanyPerformanceFindDTO companyPerformanceFindDTO) {
List<CompanyPerformanceBo> companyPerformanceBos = mapper.selectCompanyPerformanceWithWeek(companyPerformanceFindDTO);
return CollectionUtils.isEmpty(companyPerformanceBos)?Collections.EMPTY_LIST:companyPerformanceBos;
}
/**
* 订单统计数据导出
*
......
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil;
import com.xxfc.platform.order.OrderApplication;
import com.xxfc.platform.order.biz.*;
......@@ -15,6 +16,8 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Date;
import java.util.Map;
......@@ -123,6 +126,16 @@ public class ServiceTest {
@Test
@SneakyThrows
public void testOrderReceivedStatisticsJobHandler(){
orderReceivedStatisticsJobHandler.execute("");
cn.hutool.core.date.DateTime dateTime = DateUtil.parse("2019-10-01", "yyyy-MM-dd");
cn.hutool.core.date.DateTime offset = DateUtil.offset(dateTime, DateField.DAY_OF_MONTH, 1);
LocalDate startLocalDate = LocalDate.of(2019, 10, 1);
LocalDate endLocalDate = LocalDate.of(2019,11,29);
while (startLocalDate.isBefore(endLocalDate)){
startLocalDate.format(DateTimeFormatter.ofPattern("yyyy"));
orderReceivedStatisticsJobHandler.execute("");
}
}
}
......@@ -445,11 +445,11 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
//apiname=com.alipay.account.auth&app_id=xxxxx&app_name=mc&auth_type=AUTHACCOUNT&biz_type=openservice&method=alipay.open.auth.sdk.code.get&pid=xxxxx&product_id=APP_FAST_LOGIN&scope=kuaijie&sign_type=RSA2&target_id=20141225xxxx&sign=fMcp4GtiM6rxSIeFnJCVePJKV43eXrUP86CQgiLhDHH2u%2FdN75eEvmywc2ulkm7qKRetkU9fbVZtJIqFdMJcJ9Yp%2BJI%2FF%2FpESafFR6rB2fRjiQQLGXvxmDGVMjPSxHxVtIqpZy5FDoKUSjQ2%2FILDKpu3%2F%2BtAtm2jRw1rUoMhgt0%3D
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("apiname=");
stringBuilder.append(apiName);
stringBuilder.append("com.alipay.account.auth");
stringBuilder.append("&app_id=");
stringBuilder.append(SystemConfig.ALIPAY_APPID);
stringBuilder.append("&app_name=");
stringBuilder.append(appName);
stringBuilder.append("mc");
stringBuilder.append("&auth_type=AUTHACCOUNT");
stringBuilder.append("&biz_type=openservice");
stringBuilder.append("&method=alipay.open.auth.sdk.code.get");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment