|
|
@@ -9,11 +9,13 @@ import com.ydtech.modules.largescreen.model.query.CompanyQuery;
|
|
|
import com.ydtech.modules.largescreen.model.query.DataQuery;
|
|
|
import com.ydtech.modules.largescreen.service.IAgreementDataService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
+import lombok.Data;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.time.LocalDate;
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
import java.util.List;
|
|
|
|
|
|
@Api(tags = "数据大屏")
|
|
|
@@ -84,8 +86,39 @@ public class DataController {
|
|
|
*/
|
|
|
@PostMapping("orderStatusData")
|
|
|
public HttpResult orderStatusData(@RequestBody(required=false) DataQuery dataQuery) {
|
|
|
- List<OrderStatusData> sumData = dataService.getOrderStatusData(dataQuery);
|
|
|
- return HttpResult.ok(sumData);
|
|
|
+ LocalDate currentDate = LocalDate.now();
|
|
|
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
|
|
+ String formattedDate = currentDate.format(formatter);
|
|
|
+ dataQuery.setStartDate(formattedDate + " 00:00:00");
|
|
|
+ dataQuery.setEndDate(formattedDate+ " 23:59:59");
|
|
|
+ List<CompanyData> sumData = dataService.getCompanyOrderStatusData(dataQuery);
|
|
|
+
|
|
|
+ //转换格式
|
|
|
+ int rows = 6;
|
|
|
+ int columns = sumData.size();
|
|
|
+ String[][] result = new String[rows][columns];
|
|
|
+ sumData.forEach(item->{
|
|
|
+ int i = sumData.indexOf(item);
|
|
|
+ result[0][i] = item.getCompanyName();
|
|
|
+ result[1][i] = checkOrderStatus(item.getOrderStatusData(),"0");
|
|
|
+ result[2][i] = checkOrderStatus(item.getOrderStatusData(),"1");
|
|
|
+ result[3][i] = checkOrderStatus(item.getOrderStatusData(),"2");
|
|
|
+ result[4][i] = checkOrderStatus(item.getOrderStatusData(),"3");
|
|
|
+ result[5][i] = checkOrderStatus(item.getOrderStatusData(),"4");
|
|
|
+ });
|
|
|
+ return HttpResult.ok(result);
|
|
|
+ }
|
|
|
+
|
|
|
+ private String checkOrderStatus(List<OrderStatusData> orderStatusData,String status){
|
|
|
+ OrderStatusData orderStatusData1 = orderStatusData.stream()
|
|
|
+ .filter(item1 -> item1.getOrderStatusCode().equals(status))
|
|
|
+ .findFirst()
|
|
|
+ .orElse(null);
|
|
|
+ if(orderStatusData1 == null){
|
|
|
+ return "0";
|
|
|
+ }else{
|
|
|
+ return String.valueOf(orderStatusData1.getSumOrderNum());
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -122,12 +155,54 @@ public class DataController {
|
|
|
return HttpResult.ok(result);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取一月内的数据
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PostMapping("monthData")
|
|
|
+ public HttpResult monthData(){
|
|
|
+ List<OrderStatusData> monthData = dataService.getMonthData();
|
|
|
+ //转换格式
|
|
|
+ int rows = 6;
|
|
|
+ int columns = monthData.size();
|
|
|
+ String[][] result = new String[rows][columns];
|
|
|
+ monthData.forEach(item->{
|
|
|
+ int i = monthData.indexOf(item);
|
|
|
+ result[0][i] = item.getDate();
|
|
|
+ result[1][i] = item.getJqPremium();
|
|
|
+ result[2][i] = item.getSyPremium();
|
|
|
+ result[3][i] = item.getTaxPremium();
|
|
|
+ result[4][i] = item.getSumPremium();
|
|
|
+ result[5][i] = item.getSumOrderNum().toString();
|
|
|
+ });
|
|
|
+ return HttpResult.ok(result);
|
|
|
+ }
|
|
|
+
|
|
|
+ @PostMapping("yearData")
|
|
|
+ public HttpResult yearData(){
|
|
|
+ List<OrderStatusData> yearData = dataService.getYearData();
|
|
|
+ //转换格式
|
|
|
+ int rows = 6;
|
|
|
+ int columns = yearData.size();
|
|
|
+ String[][] result = new String[rows][columns];
|
|
|
+ yearData.forEach(item->{
|
|
|
+ int i = yearData.indexOf(item);
|
|
|
+ result[0][i] = item.getDate();
|
|
|
+ result[1][i] = item.getJqPremium();
|
|
|
+ result[2][i] = item.getSyPremium();
|
|
|
+ result[3][i] = item.getTaxPremium();
|
|
|
+ result[4][i] = item.getSumPremium();
|
|
|
+ result[5][i] = item.getSumOrderNum().toString();
|
|
|
+ });
|
|
|
+ return HttpResult.ok(result);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 获取当天已承包数据
|
|
|
*/
|
|
|
@PostMapping("todayData")
|
|
|
public HttpResult todayData(@RequestBody DataQuery dataQuery){
|
|
|
- dataQuery.orderStatus = "3";
|
|
|
+ dataQuery.setOrderStatus("3");
|
|
|
List<OrderStatusData> orderStatusData = dataService.getOrderStatusData(dataQuery);
|
|
|
if(orderStatusData.size() == 0)
|
|
|
{
|
|
|
@@ -141,6 +216,8 @@ public class DataController {
|
|
|
}
|
|
|
|
|
|
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 获取公司数据
|
|
|
* @return
|
|
|
@@ -159,7 +236,8 @@ public class DataController {
|
|
|
companySumData.forEach(item->{
|
|
|
item.setInsurance("单交");
|
|
|
Double d = Double.parseDouble(item.getTaxSumPremium()) / Double.parseDouble(item.getJqSumPremium()) * 100;
|
|
|
- item.setRatio(String.format("%.2f%%",d));
|
|
|
+ item.setRatio(d.equals(Double.NaN) ? "0.00%" : String.format("%.2f%%",d));
|
|
|
+// item.setRatio(String.format("%.2f%%",d));
|
|
|
djCompanyInfoData.setJqSumPremium(
|
|
|
String.valueOf(Double.parseDouble(djCompanyInfoData.getJqSumPremium()) + Double.parseDouble(item.getJqSumPremium())));
|
|
|
djCompanyInfoData.setSySumPremium(
|
|
|
@@ -176,6 +254,9 @@ public class DataController {
|
|
|
//小计
|
|
|
djCompanyInfoData.setInsurance("单交");
|
|
|
djCompanyInfoData.setJqPremium("小计");
|
|
|
+ djCompanyInfoData.setTaxSumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getTaxSumPremium())));
|
|
|
+ djCompanyInfoData.setJqSumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getJqSumPremium())));
|
|
|
+ djCompanyInfoData.setSySumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getSySumPremium())));
|
|
|
companySumData.add(djCompanyInfoData);
|
|
|
//查询交三
|
|
|
CompanyInfoData jsCompanyInfoData = new CompanyInfoData();
|
|
|
@@ -184,7 +265,7 @@ public class DataController {
|
|
|
companyDataById.forEach(item->{
|
|
|
item.setInsurance("交三");
|
|
|
Double d = Double.parseDouble(item.getTaxSumPremium()) / Double.parseDouble(item.getJqSumPremium()) * 100;
|
|
|
- item.setRatio(String.format("%.2f%%",d));
|
|
|
+ item.setRatio(d.equals(Double.NaN) ? "0.00%" : String.format("%.2f%%",d));
|
|
|
jsCompanyInfoData.setJqSumPremium(
|
|
|
String.valueOf(Double.parseDouble(jsCompanyInfoData.getJqSumPremium()) + Double.parseDouble(item.getJqSumPremium())));
|
|
|
jsCompanyInfoData.setSySumPremium(
|
|
|
@@ -202,15 +283,18 @@ public class DataController {
|
|
|
//小计
|
|
|
jsCompanyInfoData.setInsurance("交三");
|
|
|
jsCompanyInfoData.setJqPremium("小计");
|
|
|
+ jsCompanyInfoData.setTaxSumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getTaxSumPremium())));
|
|
|
+ jsCompanyInfoData.setJqSumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getJqSumPremium())));
|
|
|
+ jsCompanyInfoData.setSySumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getSySumPremium())));
|
|
|
companySumData.add(jsCompanyInfoData);
|
|
|
|
|
|
//合计
|
|
|
CompanyInfoData sumCompanyInfoData = new CompanyInfoData();
|
|
|
sumCompanyInfoData.setInsurance("合计");
|
|
|
sumCompanyInfoData.setSumOrderNum(djCompanyInfoData.getSumOrderNum() + jsCompanyInfoData.getSumOrderNum());
|
|
|
- sumCompanyInfoData.setTaxSumPremium(String.valueOf(Double.parseDouble(djCompanyInfoData.getTaxSumPremium()) + Double.parseDouble(jsCompanyInfoData.getTaxSumPremium())));
|
|
|
- sumCompanyInfoData.setJqSumPremium(String.valueOf(Double.parseDouble(djCompanyInfoData.getJqSumPremium()) + Double.parseDouble(jsCompanyInfoData.getJqSumPremium())));
|
|
|
- sumCompanyInfoData.setSySumPremium(String.valueOf(Double.parseDouble(djCompanyInfoData.getSySumPremium()) + Double.parseDouble(jsCompanyInfoData.getSySumPremium())));
|
|
|
+ sumCompanyInfoData.setTaxSumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getTaxSumPremium()) + Double.parseDouble(jsCompanyInfoData.getTaxSumPremium())));
|
|
|
+ sumCompanyInfoData.setJqSumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getJqSumPremium()) + Double.parseDouble(jsCompanyInfoData.getJqSumPremium())));
|
|
|
+ sumCompanyInfoData.setSySumPremium(String.format("%.2f",Double.parseDouble(djCompanyInfoData.getSySumPremium()) + Double.parseDouble(jsCompanyInfoData.getSySumPremium())));
|
|
|
companySumData.add(sumCompanyInfoData);
|
|
|
return HttpResult.ok(companySumData);
|
|
|
}
|