From 2f51e3a238163109d867dc6b5bbef0c861c201f4 Mon Sep 17 00:00:00 2001 From: luozukai Date: Mon, 2 Sep 2019 11:10:58 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=90=88=E5=90=8C][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E5=BC=80=E5=8F=91=E8=B4=A6=E5=8D=95=E7=BB=93=E7=AE=97]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/domain/po/WxBillSettle.java | 4 +- .../iformall/domain/vo/WxBillSettleVo.java | 44 +++++++++++++++++++ .../com/iformall/enums/EnumSettleStatus.java | 37 ++++++++++++++++ .../service/impl/WxBillSettleServiceImpl.java | 26 ++++++++--- .../java/com/iformall/utils/DateUtils.java | 5 +++ .../resources/mapper/WxBillSettleMapper.xml | 6 +-- 6 files changed, 112 insertions(+), 10 deletions(-) create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxBillSettleVo.java create mode 100644 mallinkService/src/main/java/com/iformall/enums/EnumSettleStatus.java diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxBillSettle.java b/mallinkService/src/main/java/com/iformall/domain/po/WxBillSettle.java index 8ce1db80a..5c40af608 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxBillSettle.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxBillSettle.java @@ -79,8 +79,8 @@ public class WxBillSettle extends BaseEntity { @Transient @io.swagger.annotations.ApiModelProperty(value="开始时间",name="starttime") - private Date starttime; + private Date startTime; @Transient @io.swagger.annotations.ApiModelProperty(value="结束时间",name="endtime") - private Date endtime; + private Date endTime; } diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxBillSettleVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxBillSettleVo.java new file mode 100644 index 000000000..fe55ed2c8 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxBillSettleVo.java @@ -0,0 +1,44 @@ +package com.iformall.domain.vo; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +/** + * @author luozukai + */ +@Data +@ToString(callSuper = true) +public class WxBillSettleVo { + + @Excel(name="结算单号",width = 20,orderNum = "1") + private String settleNumber; + + @Excel(name="结算商户",width = 20,orderNum = "2") + private String merchantName; + + @Excel(name="创建时间",width = 20,orderNum = "3") + private String createtime; + + @Excel(name="收款(元)",width = 20,orderNum = "4") + private String receiveMoney; + + @Excel(name="承付(元)",width = 20,orderNum = "5") + private String payMoney; + + @Excel(name="结算金额(元)",width = 20,orderNum = "6") + private String balance; + + @Excel(name="结算时间",width = 20,orderNum = "7") + private String settletime; + + @Excel(name="结算状态",width = 20,orderNum = "8") + private String status; + + @Excel(name="审批状态",width = 20,orderNum = "9") + private String applyStatus; + + + +} diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumSettleStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumSettleStatus.java new file mode 100644 index 000000000..7580b04ec --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumSettleStatus.java @@ -0,0 +1,37 @@ +package com.iformall.enums; + +/** + * luozukai + */ +public enum EnumSettleStatus { + //0待确认1未清算结余金额2结算完成 + DEF(0, "待确认"), + NOT_FINISH(1, "未清算结余金额"), + FINISH(2, "结算完成"), + ; + + public static EnumSettleStatus getEnum(Integer code) { + for (EnumSettleStatus value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumSettleStatus(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } +} diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java index 5045feb97..8d9b14d85 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java @@ -5,20 +5,21 @@ import com.github.pagehelper.PageInfo; import com.iformall.common.IdWorker; import com.iformall.common.ResultData; import com.iformall.domain.po.*; -import com.iformall.enums.EnumBillRentStatus; -import com.iformall.enums.EnumBillType; -import com.iformall.enums.EnumFreezeType; -import com.iformall.enums.EnumSettleBillType; +import com.iformall.domain.vo.WxBillSettleVo; +import com.iformall.enums.*; import com.iformall.mapper.*; import com.iformall.service.ExcelService; import com.iformall.service.WxBillSettleService; import com.iformall.service.WxFlowService; +import com.iformall.utils.DateUtils; import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.math.BigDecimal; +import java.util.ArrayList; import java.util.List; /** @@ -187,7 +188,22 @@ public class WxBillSettleServiceImpl implements WxBillSettleService { @Override public void exportBill(HttpServletRequest request, HttpServletResponse response, WxBillSettle wxBillSettle) { List list = wxBillSettleMapper.findList(wxBillSettle); - excelService.exportExcel(list, null, "补贴记录", WxBillSettle.class, "补贴记录.xlsx", response, false); + List voList = new ArrayList<>(); + + for (WxBillSettle s:list) { + WxBillSettleVo vo = new WxBillSettleVo(); + vo.setSettleNumber(s.getSettleNumber()); + vo.setMerchantName(s.getMerchantName()); + vo.setCreatetime(DateUtils.formatDateTime(s.getCreatetime())); + vo.setReceiveMoney(new BigDecimal(s.getReceiveMoney()).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP).toString()); + vo.setPayMoney(new BigDecimal(s.getPayMoney()).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP).toString()); + vo.setBalance(new BigDecimal(s.getReceiveMoney()).subtract(new BigDecimal(s.getPayMoney())).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP).toString()); + vo.setSettletime(DateUtils.formatDateTime(s.getSettletime())); + vo.setStatus(EnumSettleStatus.getEnum(s.getStatus()).getMessage()); + vo.setApplyStatus(EnumRentContractAppStatus.getEnum(s.getApplyStatus()).getMessage()); + voList.add(vo); + } + excelService.exportExcel(voList, null, "结算单", WxBillSettleVo.class, "结算单.xlsx", response, false); } @Override diff --git a/mallinkService/src/main/java/com/iformall/utils/DateUtils.java b/mallinkService/src/main/java/com/iformall/utils/DateUtils.java index 4a612bbd6..ea224abba 100755 --- a/mallinkService/src/main/java/com/iformall/utils/DateUtils.java +++ b/mallinkService/src/main/java/com/iformall/utils/DateUtils.java @@ -28,6 +28,11 @@ public class DateUtils { return format(date, DATE_PATTERN); } + public static String formatDateTime(Date date) { + return format(date, DATE_TIME_PATTERN); + } + + public static String format(Date date, String pattern) { if(date != null){ SimpleDateFormat df = new SimpleDateFormat(pattern); diff --git a/mallinkService/src/main/resources/mapper/WxBillSettleMapper.xml b/mallinkService/src/main/resources/mapper/WxBillSettleMapper.xml index 859cc693e..9525049f9 100644 --- a/mallinkService/src/main/resources/mapper/WxBillSettleMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBillSettleMapper.xml @@ -28,14 +28,14 @@ and s.`tenant_id` = #{tenantId} and m.name like concat('%', #{merchantName},'%') - and day_date >= #{startTime} + and createtime >= #{startTime} - and day_date <= #{endTime} + and createtime <= #{endTime} and s.`settle_number` = #{settleNumber} and s.`status` = #{status} - and s.`apply_status` = #{applyStatus} + and s.`apply_status` = #{applyStatus} order by ${sortColumns}