浏览代码

营业报表修改

baiyun 10 月之前
父节点
当前提交
0fac7d9240

+ 10 - 2
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/consumption/controller/XfConsumeDetailController.java

@@ -41,6 +41,7 @@ import java.io.IOException;
 import java.net.URLEncoder;
 import java.nio.charset.StandardCharsets;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 消费明细
@@ -219,8 +220,15 @@ public class XfConsumeDetailController extends BaseController {
             //response.addHeader("Content-Length", "" + data.length);
             response.setContentType("application/pdf; charset=UTF-8");
             response.setHeader("Content-Disposition", URLEncoder.encode(fileName, StandardCharsets.UTF_8));
-
-            PdfUtil.renderPdf("bussinessTemplate1.html",hashMap, response.getOutputStream(), PageSize.A4.rotate());
+            String templateName = "bussinessTemplate1.html";//
+            Map<String,List<XfConsumeAnalyzeVo>>  mapListXfConsumeAnalyzeVo = list.stream().collect(Collectors.groupingBy(XfConsumeAnalyzeVo::getAccountName));
+            if(mapListXfConsumeAnalyzeVo.size() == 1){
+                List<String> keys = new ArrayList<>(mapListXfConsumeAnalyzeVo.keySet());
+                if(!"所有".contains(keys.get(0)) && !"蓉园".contains(keys.get(0)) && !"湘麓轩".contains(keys.get(0)) && !"品香居".contains(keys.get(0))){
+                    templateName = "bussinessTemplate2.html";
+                }
+            }
+            PdfUtil.renderPdf(templateName,hashMap, response.getOutputStream(), PageSize.A4.rotate());
         } catch (IOException e) {
             throw new RuntimeException(e);
         }

+ 67 - 0
ruoyi-modules/ruoyi-backstage/src/main/resources/template/ftl/bussinessTemplate2.html

@@ -0,0 +1,67 @@
+
+<!DOCTYPE html>
+<html lang="zh-CN">
+<head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>营业报表</title>
+</head>
+<body>
+<h3 style="text-align: center;font-size: 20px"><b>营业报表</b></h3>
+<div style="margin: 0 auto;">
+    <div style="width:100%;">
+        <div class="item-space">
+            <div>使用单位:${useUint!}</div>
+            <div>制表时间:${makeTime!}</div>
+        </div>
+        <div class="item-space">
+            <div>制表人:${makeMan!}</div>
+            <div>查询时间范围:${queryTime!}</div>
+        </div>
+    </div>
+    <table style="border: 1px solid #000;border-collapse:collapse;width: 100%;">
+        <thead>
+        <tr>
+            <th>日期</th>
+            <th>机器名称</th>
+            <th>结算账户</th>
+            <th>错扣补款金额</th>
+            <th>错扣补款笔数</th>
+            <th>金额小计</th>
+            <th>笔数小计</th>
+        </tr>
+        </thead>
+        <tbody>
+        <#list (itemList)! as item>
+            <tr>
+                <td>${(item.consumeDate)!}</td>
+                <td>${(item.termName)!}</td>
+                <td>${(item.accountName)!}</td>
+                <td>${(item.tuiKuanJinE)!}</td>
+                <td>${(item.tuiKuanCiShu)!}</td>
+                <td>${(item.xiaoJiJinE)!}</td>
+                <td>${(item.xiaoJiCiShu)!}</td>
+            </tr>
+        </#list>
+            <tr style="text-align: center;">
+                <td colspan="15"><span>金额合计:${(totalAmount)!}</span>  <span style="margin-left: 10px;">笔数合计:${(totalCount)!}</span></td>
+            </tr>
+        </tbody>
+    </table>
+</div>
+</body>
+<style>
+    body {
+        font-size: 13px;
+    }
+    td,th {
+        border: 1px solid #000;
+        text-align: center;
+    }
+    .item-space {
+        margin-left : 20px;
+        margin-right: 20px;
+        display: inline-block;
+    }
+</style>
+</html>