浏览代码

Merge branch 'dev' into debug

qzyReal 3 年之前
父节点
当前提交
0f08d540cb

+ 8 - 1
sp-admin/sa-view/tb-fee-statistics/month-statistcs-list.html

@@ -58,7 +58,14 @@
 						   :jv="{1: '核酸检测',2: '消杀作业', 3: '装卸作业', 4: '停车费', 5: '过磅费', 6: '入场管理费', 7: '充电打冷作业'}"></sa-td>
 					<sa-td name="月份" prop="month" ></sa-td>
 					<sa-td name="数量" prop="num" ></sa-td>
-					<sa-td name="收入(元)" prop="statisticsMoney"></sa-td>
+					<sa-td name="含税收入(元)" prop="statisticsMoney"></sa-td>
+					<el-table-column label="税率(%)" >
+						<template slot-scope="s">
+							<span>{{s.row.taxRate * 100}}</span>
+						</template>
+					</el-table-column>
+					<sa-td name="税款(元)" prop="taxes" ></sa-td>
+					<sa-td name="不含税收入(元)" prop="noTaxMoney" ></sa-td>
 					<!--					<el-table-column label="操作" fixed="right"  width="240px">-->
 					<!--						<template slot-scope="s">-->
 					<!--							<el-button class="c-btn" type="success" icon="el-icon-view" @click="get(s.row)">查看</el-button>-->

+ 7 - 0
sp-admin/sa-view/tb-fee-statistics/tb-fee-statistics-list.html

@@ -68,6 +68,13 @@
 							<span>{{s.row.taxRate * 100}}</span>
 						</template>
 					</el-table-column>
+<!--					<sa-td name="税款(元)" prop="taxes" ></sa-td>-->
+					<el-table-column label="税款(元)" >
+						<template slot-scope="s">
+							<span v-if="s.row.taxes != null" >{{s.row.taxes}}</span>
+							<span v-else >{{Math.round((s.row.taxMoney-s.row.noTaxMoney)*100)/100}}</span>
+						</template>
+					</el-table-column>
 					<sa-td name="不含税收入(元)" prop="noTaxMoney" ></sa-td>
 					<sa-td name="支付方式" prop="payType" type="enum" :jv="{3: '微信支付'}"></sa-td>
 <!--					<el-table-column label="操作" fixed="right"  width="240px">-->

+ 8 - 1
sp-admin/sa-view/tb-fee-statistics/year-statistcs-list.html

@@ -51,7 +51,14 @@
 						   :jv="{1: '核酸检测',2: '消杀作业', 3: '装卸作业', 4: '停车费', 5: '过磅费', 6: '入场管理费', 7: '充电打冷作业'}"></sa-td>
 					<sa-td name="年份" prop="year"></sa-td>
 					<sa-td name="数量" prop="num" ></sa-td>
-					<sa-td name="收入(元)" prop="statisticsMoney"></sa-td>
+					<sa-td name="含税收入(元)" prop="statisticsMoney"></sa-td>
+					<el-table-column label="税率(%)" >
+						<template slot-scope="s">
+							<span>{{s.row.taxRate * 100}}</span>
+						</template>
+					</el-table-column>
+					<sa-td name="税款(元)" prop="taxes" ></sa-td>
+					<sa-td name="不含税收入(元)" prop="noTaxMoney" ></sa-td>
 					<!--					<el-table-column label="操作" fixed="right"  width="240px">-->
 					<!--						<template slot-scope="s">-->
 					<!--							<el-button class="c-btn" type="success" icon="el-icon-view" @click="get(s.row)">查看</el-button>-->

+ 0 - 1
sp-server/app.pid

@@ -1 +0,0 @@
-25324

+ 3 - 1
sp-server/src/main/java/com/pj/project/tb_fee_details/TbFeeDetailsService.java

@@ -11,6 +11,7 @@ import cn.hutool.core.util.StrUtil;
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.excel.ExcelWriter;
 import com.alibaba.excel.write.metadata.WriteSheet;
+import com.alibaba.excel.write.metadata.fill.FillConfig;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -245,8 +246,9 @@ public class TbFeeDetailsService extends ServiceImpl<TbFeeDetailsMapper, TbFeeDe
         ExcelWriter excelWriter = EasyExcel.write(savePath + fileName, ExportFeeDetailDTO.class)
                 .withTemplate(tempInputStream).build();
         WriteSheet writeSheet = EasyExcel.writerSheet().build();
-        excelWriter.fill(exportList, writeSheet);
+        FillConfig fillConfig = FillConfig.builder().forceNewRow(true).build();//换行
         excelWriter.fill(head, writeSheet);
+        excelWriter.fill(exportList, fillConfig, writeSheet);
         excelWriter.finish();
         return prefix + "/feeDetails/" + today + "/收费明细表_" + time + ".xlsx";
     }

+ 9 - 4
sp-server/src/main/java/com/pj/project/tb_fee_statistics/TbFeeStatistics.java

@@ -87,16 +87,21 @@ public class TbFeeStatistics implements Serializable {
 	/**
 	 * 含税收入
 	 */
-	public BigDecimal taxMoney = new BigDecimal(0);
+    private BigDecimal taxMoney = new BigDecimal(0);
 
 	/**
 	 * 税率 
 	 */
     private BigDecimal taxRate = new BigDecimal(0);
 
-	/**
-	 * 不含税款 
-	 */
+    /**
+     * 税款
+     */
+    private BigDecimal taxes = new BigDecimal(0);
+
+    /**
+     * 不含税款
+     */
     private BigDecimal noTaxMoney = new BigDecimal(0);
 
 	/**

+ 9 - 0
sp-server/src/main/java/com/pj/project/tb_fee_statistics/TbFeeStatisticsController.java

@@ -3,6 +3,7 @@ package com.pj.project.tb_fee_statistics;
 import java.util.List;
 
 import com.pj.utils.so.SoMap;
+import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
@@ -89,6 +90,14 @@ public class TbFeeStatisticsController {
         List<TbFeeStatistics> list = tbFeeStatisticsService.getYear(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }
+
+    @RequestMapping("updateParkNum")
+    public AjaxJson updateParkNum(){
+        SoMap so = SoMap.getRequestSoMap();
+        String day = so.getString("day");
+        TbFeeStatistics feeStatistics = tbFeeStatisticsService.updateParkNum(day);
+        return AjaxJson.getSuccessData(feeStatistics);
+    }
 	
 	
 	

+ 41 - 4
sp-server/src/main/java/com/pj/project/tb_fee_statistics/TbFeeStatisticsService.java

@@ -88,11 +88,33 @@ public class TbFeeStatisticsService extends ServiceImpl<TbFeeStatisticsMapper, T
     }
 
     List<TbFeeStatistics> getMonth(SoMap so) {
-        return tbFeeStatisticsMapper.getMonth(so);
+        List<TbFeeStatistics> monthFees = tbFeeStatisticsMapper.getMonth(so);
+        for (TbFeeStatistics fee : monthFees) {
+            BigDecimal taxRate = BigDecimal.valueOf(TbFeeStatistics.taxRate.BUSINESS.getValue());
+            if(fee.getFeeType() == TbFeeStatistics.feeType.PARK_FEE.getCode()){
+                taxRate = BigDecimal.valueOf(TbFeeStatistics.taxRate.PARK.getValue());
+            }
+            BigDecimal taxes = fee.getStatisticsMoney().divide(taxRate.add(BigDecimal.valueOf(1)),2, BigDecimal.ROUND_HALF_UP).multiply(taxRate);
+            taxes = taxes.setScale(2, BigDecimal.ROUND_HALF_UP);
+            BigDecimal noTaxMoney = fee.getStatisticsMoney().subtract(taxes);
+            fee.setTaxRate(taxRate).setTaxes(taxes).setNoTaxMoney(noTaxMoney);
+        }
+        return monthFees;
     }
 
     List<TbFeeStatistics> getYear(SoMap so) {
-        return tbFeeStatisticsMapper.getYear(so);
+        List<TbFeeStatistics> yearFees = tbFeeStatisticsMapper.getYear(so);
+        for (TbFeeStatistics fee : yearFees) {
+            BigDecimal taxRate = BigDecimal.valueOf(TbFeeStatistics.taxRate.BUSINESS.getValue());
+            if(fee.getFeeType() == TbFeeStatistics.feeType.PARK_FEE.getCode()){
+                taxRate = BigDecimal.valueOf(TbFeeStatistics.taxRate.PARK.getValue());
+            }
+            BigDecimal taxes = fee.getStatisticsMoney().divide(taxRate.add(BigDecimal.valueOf(1)),2, BigDecimal.ROUND_HALF_UP).multiply(taxRate);
+            taxes = taxes.setScale(2, BigDecimal.ROUND_HALF_UP);
+            BigDecimal noTaxMoney = fee.getStatisticsMoney().subtract(taxes);
+            fee.setTaxRate(taxRate).setTaxes(taxes).setNoTaxMoney(noTaxMoney);
+        }
+        return yearFees;
     }
 
     public TbFeeStatistics getByDayAndFeeType(String day, Integer feeType) {
@@ -135,7 +157,7 @@ public class TbFeeStatisticsService extends ServiceImpl<TbFeeStatisticsMapper, T
                 .multiply(parkFee.getTaxRate());
         BigDecimal noTaxMoney = parkFee.getTaxMoney().subtract(taxes);
 //        BigDecimal noTaxMoney = parkFee.getTaxMoney().subtract(parkFee.getTaxMoney().multiply(parkFee.getTaxRate()));
-        parkFee.setNoTaxMoney(noTaxMoney);
+        parkFee.setNoTaxMoney(noTaxMoney).setTaxes(taxes);
         parkFee.setDayTime(now).setMonth(thisMonth).setYear(thisYear).setDay(toDay)
                 .setFeeType(TbFeeStatistics.feeType.PARK_FEE.getCode()).setItemTypeName(TbFeeStatistics.feeType.PARK_FEE.getDesc())
                 .setPayType(3);
@@ -178,7 +200,7 @@ public class TbFeeStatisticsService extends ServiceImpl<TbFeeStatisticsMapper, T
                     .multiply(businessFee.getTaxRate());
             BigDecimal noTaxMoney = businessFee.getTaxMoney().subtract(taxes);
 
-            businessFee.setNoTaxMoney(noTaxMoney);
+            businessFee.setNoTaxMoney(noTaxMoney).setTaxes(taxes);
             businessFee.setDayTime(now).setMonth(thisMonth).setYear(thisYear).setDay(toDay)
                     .setFeeType(feeType)
                     //.setItemTypeName(itemType)
@@ -221,5 +243,20 @@ public class TbFeeStatisticsService extends ServiceImpl<TbFeeStatisticsMapper, T
         }
     }
 
+    public TbFeeStatistics updateParkNum(String day){
+        QueryWrapper<TbFeeDetails> qw = new QueryWrapper<>();
+        qw.like("create_time", day);
+        List<TbFeeDetails> list = tbFeeDetailsService.list(qw);
+        Integer totalNum = 0;
+        for (TbFeeDetails feeDetail : list) {
+            if(feeDetail.getFeeType() == TbFeeStatistics.feeType.PARK_FEE.getCode()){
+                totalNum = totalNum + feeDetail.getNum();
+            }
+        }
+        TbFeeStatistics feeStatistics = getByDayAndFeeType(day, TbFeeStatistics.feeType.PARK_FEE.getCode());
+        feeStatistics.setNum(totalNum);
+        this.updateById(feeStatistics);
+        return feeStatistics;
+    }
 
 }

二进制
sp-server/src/main/resources/static/day-fee-new.xlsx