From 4443efe6c81fc974c26909d5debe00658ce8112a Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Wed, 10 Jan 2024 13:28:36 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E6=8A=A5=E8=A1=A8=E5=AD=98?= =?UTF-8?q?=E5=82=A8=E6=AF=94=E9=87=8D=E6=96=B0=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/sysstaffinfo/SysStaffinfoMapper.xml | 1 + .../api/dailyreport/DailyReport.java | 21 ++- .../api/dailyreport/DailyReportListVo.java | 2 + .../api/dailyreport/DailyReportVo.java | 20 ++- .../api/dailyreport/ReportVo.java | 2 + .../biz/dailyreport/DailyReportMapper.xml | 16 +- .../biz/dailyreport/DailyReportService.java | 161 +++++++++++++++++- .../api/loanoverduefin/ExcelFinVo.java | 21 +++ .../loanoverduefin/LoanOverdueFinFeign.java | 6 + .../loanoverduefin/LoanOverdueFinRest.java | 7 + .../loanoverduefin/LoanOverdueFinService.java | 6 + doc/databases/报表中心.sql | 39 ++++- 12 files changed, 270 insertions(+), 32 deletions(-) create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanoverduefin/ExcelFinVo.java diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml index 4da2389b65..59a0beca8d 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml @@ -372,6 +372,7 @@ left join sys_staff_post ssp on si.sid = ssp.staffSid left join sys_post sp on sp.sid = ssp.postSid + 1=1 and find_in_set(#{userOrgSid} , replace(sso.orgSidPath diff --git a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReport.java b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReport.java index 123791e0f9..122ed7fba6 100644 --- a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReport.java +++ b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReport.java @@ -113,31 +113,34 @@ public class DailyReport { @ApiModelProperty("本日交付贷款") - private String deliver_loan_day; + private int deliver_loan_day; @ApiModelProperty("本日交付全款") - private String deliver_full_day; + private int deliver_full_day; @ApiModelProperty("本日交付小计") - private String deliver_subtotal_day; + private int deliver_subtotal_day; @ApiModelProperty("本月交付贷款") - private String deliver_loan_month; + private int deliver_loan_month; @ApiModelProperty("本月交付全款") - private String deliver_full_month; + private int deliver_full_month; @ApiModelProperty("本月交付小计") - private String deliver_subtotal_month; + private int deliver_subtotal_month; @ApiModelProperty("全年交付贷款") - private String deliver_loan_year; + private int deliver_loan_year; @ApiModelProperty("全年交付全款") - private String deliver_full_year; + private int deliver_full_year; @ApiModelProperty("全年交付小计") - private String deliver_subtotal_year; + private int deliver_subtotal_year; + + @ApiModelProperty("前三个月销售台数之和") + private int saleAllToThree; } diff --git a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportListVo.java b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportListVo.java index 1a6adbcd62..94e640b115 100644 --- a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportListVo.java +++ b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportListVo.java @@ -33,4 +33,6 @@ public class DailyReportListVo { private int buyout_day; private String useOrgSid; + @ApiModelProperty("前三个月销售台数之和") + private String saleAllToThree; } diff --git a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportVo.java b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportVo.java index 1c8c556aa8..436f7191be 100644 --- a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportVo.java +++ b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportVo.java @@ -116,31 +116,33 @@ public class DailyReportVo implements Vo { private String remarks; @ApiModelProperty("本日交付贷款") - private String deliver_loan_day; + private int deliver_loan_day; @ApiModelProperty("本日交付全款") - private String deliver_full_day; + private int deliver_full_day; @ApiModelProperty("本日交付小计") - private String deliver_subtotal_day; + private int deliver_subtotal_day; @ApiModelProperty("本月交付贷款") - private String deliver_loan_month; + private int deliver_loan_month; @ApiModelProperty("本月交付全款") - private String deliver_full_month; + private int deliver_full_month; @ApiModelProperty("本月交付小计") - private String deliver_subtotal_month; + private int deliver_subtotal_month; @ApiModelProperty("全年交付贷款") - private String deliver_loan_year; + private int deliver_loan_year; @ApiModelProperty("全年交付全款") - private String deliver_full_year; + private int deliver_full_year; @ApiModelProperty("全年交付小计") - private String deliver_subtotal_year; + private int deliver_subtotal_year; + @ApiModelProperty("前三个月的销售台数之和") + private int saleAllToThree; //=========================================================车型配置相关参数 @ApiModelProperty("车身颜色") private String carColor; diff --git a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/ReportVo.java b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/ReportVo.java index b9586f22e7..b8a212dce4 100644 --- a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/ReportVo.java +++ b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/ReportVo.java @@ -107,4 +107,6 @@ public class ReportVo implements Vo { private int loan_not_count; @ApiModelProperty("金融未放款-金额") private String loan_not_amount; + @ApiModelProperty("前三个月销售台数之和") + private String saleAllToThree; } diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml index 1a2b938f3e..8e0d568675 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml @@ -180,7 +180,8 @@ ifnull(sum(dr.deliver_subtotal_month), 0) as deliver_subtotal_month, ifnull(sum(dr.deliver_loan_year), 0) as deliver_loan_year, ifnull(sum(dr.deliver_full_year), 0) as deliver_full_year, - ifnull(sum(dr.deliver_subtotal_year), 0) as deliver_subtotal_year + ifnull(sum(dr.deliver_subtotal_year), 0) as deliver_subtotal_year, + ifnull(sum(dr.saleAllToThree), 0) as saleAllToThree , bm.fuelTypeValue, bm.emissionStandardValue @@ -210,6 +211,7 @@ sum(arrears_carry_veh_amount) as arrears_carry_veh_amount, sum(loan_not_amount) as loan_not_amount, sum(buyout_day) as buyout_day, + sum(saleAllToThree) as saleAllToThree, useOrgSid from daily_report @@ -270,7 +272,8 @@ ifnull(sum(arrears_carry_veh_count), 0) as arrears_carry_veh_count, ifnull(sum(arrears_carry_veh_amount), 0) as arrears_carry_veh_amount, ifnull(sum(loan_not_count), 0) as loan_not_count, - ifnull(sum(loan_not_amount), 0) as loan_not_amount + ifnull(sum(loan_not_amount), 0) as loan_not_amount, + ifnull(sum(saleAllToThree), 0) as saleAllToThree from daily_report ${ew.sqlSegment} @@ -327,7 +330,8 @@ ifnull(sum(arrears_carry_veh_count), 0) as arrears_carry_veh_count, ifnull(sum(arrears_carry_veh_amount), 0) as arrears_carry_veh_amount, ifnull(sum(loan_not_count), 0) as loan_not_count, - ifnull(sum(loan_not_amount), 0) as loan_not_amount + ifnull(sum(loan_not_amount), 0) as loan_not_amount, + ifnull(sum(saleAllToThree), 0) as saleAllToThree from daily_report where createTime like concat('%', #{date}, '%') group by busOrgSid @@ -401,7 +405,8 @@ ifnull(sum(arrears_carry_veh_count), 0) as arrears_carry_veh_count, ifnull(sum(arrears_carry_veh_amount), 0) as arrears_carry_veh_amount, ifnull(sum(loan_not_count), 0) as loan_not_count, - ifnull(sum(loan_not_amount), 0) as loan_not_amount + ifnull(sum(loan_not_amount), 0) as loan_not_amount, + ifnull(sum(saleAllToThree), 0) as saleAllToThree from daily_report where createTime like concat('%', #{date}, '%') and busOrgSid = #{busOrgSid} @@ -532,7 +537,8 @@ ifnull(sum(dr.deliver_subtotal_month), 0) as deliver_subtotal_month, ifnull(sum(dr.deliver_loan_year), 0) as deliver_loan_year, ifnull(sum(dr.deliver_full_year), 0) as deliver_full_year, - ifnull(sum(dr.deliver_subtotal_year), 0) as deliver_subtotal_year + ifnull(sum(dr.deliver_subtotal_year), 0) as deliver_subtotal_year, + ifnull(sum(dr.saleAllToThree), 0) as saleAllToThree , bm.fuelTypeValue, bm.emissionStandardValue, diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java index 424654c1bd..7b2670426a 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java @@ -333,7 +333,7 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> + /*List row4 = dailyReportVoList.stream().map(v -> v.getSaleOfStockRatio() + ":1" ).collect(Collectors.toList()); BigDecimal row4All = dailyReportVoList.stream().map(v -> @@ -341,6 +341,38 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + try { + + Field field = v.getClass().getDeclaredField(String.valueOf(v.getSaleAllToThree())); + field.setAccessible(true); + String saleAllToThree = (String) field.get(v);//前三个月销售台数之和 + Field fieldStockTotal = v.getClass().getDeclaredField(String.valueOf(v.getStock_total())); + fieldStockTotal.setAccessible(true); + String stock_total = (String) fieldStockTotal.get(v);//库存总计 + if(StringUtils.isBlank(saleAllToThree)){ + saleOfStockRatio =stock_total+":1"; + }else{ + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + return saleOfStockRatio; + + } catch (NoSuchFieldException | IllegalAccessException e) { + e.printStackTrace(); + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v->v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v->v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if(saleAllToThreeAll == 0){ + saleOfStockRatioString = stock_totalAll+":1"; + }else{ + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + row4.add(saleOfStockRatioString); dailyReportAppVo.setRow4(row4); //库存总计 List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); @@ -584,8 +616,16 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> + /*List row4 = dailyReportVoList.stream().map(v -> v.getSaleOfStockRatio() + ":1" ).collect(Collectors.toList()); BigDecimal row4All = dailyReportVoList.stream().map(v -> @@ -639,6 +688,38 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + try { + + Field field = v.getClass().getDeclaredField(String.valueOf(v.getSaleAllToThree())); + field.setAccessible(true); + String saleAllToThree = (String) field.get(v);//前三个月销售台数之和 + Field fieldStockTotal = v.getClass().getDeclaredField(String.valueOf(v.getStock_total())); + fieldStockTotal.setAccessible(true); + String stock_total = (String) fieldStockTotal.get(v);//库存总计 + if(StringUtils.isBlank(saleAllToThree)){ + saleOfStockRatio =stock_total+":1"; + }else{ + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + return saleOfStockRatio; + + } catch (NoSuchFieldException | IllegalAccessException e) { + e.printStackTrace(); + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v->v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v->v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if(saleAllToThreeAll == 0){ + saleOfStockRatioString = stock_totalAll+":1"; + }else{ + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + row4.add(saleOfStockRatioString); dailyReportAppVo.setRow4(row4); //库存总计 List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); @@ -893,7 +974,7 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> + /*List row4 = dailyReportVoList.stream().map(v -> v.getSaleOfStockRatio() + ":1" ).collect(Collectors.toList()); BigDecimal row4All = dailyReportVoList.stream().map(v -> @@ -901,6 +982,38 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + try { + + Field field = v.getClass().getDeclaredField(String.valueOf(v.getSaleAllToThree())); + field.setAccessible(true); + String saleAllToThree = (String) field.get(v);//前三个月销售台数之和 + Field fieldStockTotal = v.getClass().getDeclaredField(String.valueOf(v.getStock_total())); + fieldStockTotal.setAccessible(true); + String stock_total = (String) fieldStockTotal.get(v);//库存总计 + if(StringUtils.isBlank(saleAllToThree)){ + saleOfStockRatio =stock_total+":1"; + }else{ + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + return saleOfStockRatio; + + } catch (NoSuchFieldException | IllegalAccessException e) { + e.printStackTrace(); + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v->v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v->v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if(saleAllToThreeAll == 0){ + saleOfStockRatioString = stock_totalAll+":1"; + }else{ + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + row4.add(saleOfStockRatioString); dailyReportAppVo.setRow4(row4); //库存总计 List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); @@ -1181,7 +1294,7 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> + /* List row4 = dailyReportVoList.stream().map(v -> v.getSaleOfStockRatio() + ":1" ).collect(Collectors.toList()); BigDecimal row4All = dailyReportVoList.stream().map(v -> @@ -1189,7 +1302,40 @@ public class DailyReportService extends MybatisBaseService row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + try { + + Field field = v.getClass().getDeclaredField(String.valueOf(v.getSaleAllToThree())); + field.setAccessible(true); + String saleAllToThree = (String) field.get(v);//前三个月销售台数之和 + Field fieldStockTotal = v.getClass().getDeclaredField(String.valueOf(v.getStock_total())); + fieldStockTotal.setAccessible(true); + String stock_total = (String) fieldStockTotal.get(v);//库存总计 + if(StringUtils.isBlank(saleAllToThree)){ + saleOfStockRatio =stock_total+":1"; + }else{ + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + return saleOfStockRatio; + + } catch (NoSuchFieldException | IllegalAccessException e) { + e.printStackTrace(); + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v->v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v->v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if(saleAllToThreeAll == 0){ + saleOfStockRatioString = stock_totalAll+":1"; + }else{ + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3),4,BigDecimal.ROUND_HALF_UP)),2,BigDecimal.ROUND_HALF_UP).toString()+":1"; + } + row4.add(saleOfStockRatioString); dailyReportAppVo.setRow4(row4); + //库存总计 List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -1443,7 +1589,6 @@ public class DailyReportService extends MybatisBaseService> getExcelInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request); + @ApiOperation("删除/批量删除") @DeleteMapping("/delBySids") ResultBean delBySids(@RequestBody String[] sids); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinRest.java index 521c6a9e56..551c269855 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinRest.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinRest.java @@ -16,7 +16,9 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; @@ -74,6 +76,11 @@ public class LoanOverdueFinRest implements LoanOverdueFinFeign { ExportExcelUtils.export(fileNameURL, list, DownloadExcelVo.class, response); } + @Override + public ResultBean> getExcelInfo(MultipartFile file, HttpServletRequest request) { + return loanOverdueFinService.getExcelInfo(file,request); + } + @Override public ResultBean delBySids(String[] sids) { return loanOverdueFinService.delAllBySids(sids); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinService.java index 1fa8993704..47373eb794 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduefin/LoanOverdueFinService.java @@ -39,7 +39,9 @@ import org.apache.commons.lang3.StringUtils; import org.apache.tomcat.util.threads.ThreadPoolExecutor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletRequest; import java.util.*; import java.util.concurrent.*; import java.util.stream.Collectors; @@ -595,4 +597,8 @@ public class LoanOverdueFinService extends MybatisBaseService> getExcelInfo(MultipartFile file, HttpServletRequest request) { + return null; + } } diff --git a/doc/databases/报表中心.sql b/doc/databases/报表中心.sql index 8d3beaf9b7..d39db5a641 100644 --- a/doc/databases/报表中心.sql +++ b/doc/databases/报表中心.sql @@ -643,7 +643,8 @@ update daily_report r inner join ( OR DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 3 MONTH), '%Y-%m') ) - and (bvoa.saleTypeKey = '001' or bvoa.saleTypeKey = '002') + and (bvoa.saleTypeKey = '001' or bvoa.saleTypeKey = '002') and (bvo.materialTypeKey = '001' or bvo.materialTypeValue is null or + length(bvo.materialTypeValue) = 0) group by bv.useOrgSid, bv.modelSid, bv.modelConfigSid) ss where ss.useOrgSid = ddr.useOrgSid and ss.modelSid = ddr.vehModelSid @@ -660,6 +661,42 @@ set saleOfStockRatio =if(ROUND(s.subtotal / 3, 2) = 0, ROUND((stock_subtotal + pcOrder_subtotal) / ROUND(s.subtotal / 3, 2), 2)) where DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE(); +-- 前三个月的销售台数之和 +update daily_report r inner join ( + select ddr.useOrgSid, + ddr.vehModelSid, + ddr.vehMConfigSid, + (select ifnull(sum(ss.scount), 0) as scount + from (select count(bv.id) as scount, bv.modelSid, bv.modelConfigSid, bv.useOrgSid + from anrui_base.base_vehicle bv + left join anrui_base.base_vehicle_out bvo on bv.sid = bvo.vinSid + left join anrui_base.base_vehicle_out_apply bvoa on bvoa.sid = bvo.mainSid + where (DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE + DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m') + OR DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE + DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 2 MONTH), '%Y-%m') + OR DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE + DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 3 MONTH), '%Y-%m') + ) + and (bvoa.saleTypeKey = '001' or bvoa.saleTypeKey = '002') and (bvo.materialTypeKey = '001' or bvo.materialTypeValue is null or + length(bvo.materialTypeValue) = 0) + group by bv.useOrgSid, bv.modelSid, bv.modelConfigSid) ss + where ss.useOrgSid = ddr.useOrgSid + and ss.modelSid = ddr.vehModelSid + and ss.modelConfigSid = ddr.vehMConfigSid) as subtotal + from daily_report ddr + where DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE() + group by ddr.useOrgSid, ddr.vehModelSid, ddr.vehMConfigSid +) s + on r.useOrgSid = s.useOrgSid + and r.vehModelSid = s.vehModelSid + and r.vehMConfigSid = s.vehMConfigSid +set saleAllToThree =s.subtotal +where DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE(); + + + + -- 库存小计 update daily_report