From 456b1fd169a4ce68b2b75c3452ff1fe39f91e4e3 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Tue, 15 Oct 2019 14:43:14 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BA=A4=E6=98=93=E5=AF=B9=E8=B4=A6][?= =?UTF-8?q?=E4=BF=AE=E6=94=B9][=E5=AF=BC=E5=87=BA=E6=95=B0=E6=8D=AE]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/market/WxOrderController.java | 19 +++++++++++++++++++ .../java/com/iformall/domain/po/WxOrder.java | 17 ++++++++++++++++- .../com/iformall/service/WxOrderService.java | 4 ++++ .../service/impl/WxOrderServiceImpl.java | 19 ++++++++++++++----- .../main/resources/mapper/WxOrderMapper.xml | 3 ++- 5 files changed, 55 insertions(+), 7 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java index 8f79fb44a..07d539771 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java @@ -12,6 +12,7 @@ import com.iformall.domain.po.WxCoupon; import com.iformall.domain.po.WxCouponChannel; import com.iformall.domain.po.WxOrder; import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.vo.WxMerchantSubsidyVo; import com.iformall.domain.vo.WxOrderQueryVo; import com.iformall.enums.EnumCouponChannelStatus; import com.iformall.enums.EnumCouponChannelType; @@ -25,12 +26,17 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import java.util.Map; @RestController @@ -233,4 +239,17 @@ public class WxOrderController extends BaseController { return new ResultData(data); } + @ApiOperation("导出") + @GetMapping("/exportData") + @SystemControllerLog(description = "导出") + public void exportData(@ModelAttribute WxOrderQueryVo wxOrderQueryVo, HttpServletRequest request, HttpServletResponse response) { + logger.info("[" + getIpAddr() + "] WxOrderController/exportData"); + if (null == wxOrderQueryVo) { + wxOrderQueryVo = new WxOrderQueryVo(); + } + wxOrderQueryVo.setTenantId(getTenantId()); + wxOrderService.exportData(wxOrderQueryVo, request, response); + } + + } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java index d9c3e3784..02f9a9b19 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java @@ -1,5 +1,6 @@ package com.iformall.domain.po; +import cn.afterturn.easypoi.excel.annotation.Excel; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.iformall.domain.po.base.BaseEntity; @@ -7,7 +8,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; - import java.util.Date; import java.util.List; @@ -23,12 +23,15 @@ public class WxOrder extends BaseEntity { @TableField(exist = false) private String merchantName; + @Excel(name = "会员", width = 20, orderNum = "2") @TableField(exist = false) private String cUserName; + @Excel(name = "会员手机号", width = 20, orderNum = "3") @TableField(exist = false) private String phone; + @Excel(name = "订单编号", width = 20, orderNum = "1") @io.swagger.annotations.ApiModelProperty(value="订单码;正反向交易保持一致。",name="orderNumber") private Long orderNumber; @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") @@ -43,12 +46,18 @@ public class WxOrder extends BaseEntity { private Integer type; @io.swagger.annotations.ApiModelProperty(value="0: 付款 1: 退款",name="paymentType") private Integer paymentType; + + @Excel(name = "订单金额(元)", width = 20, orderNum = "6") @io.swagger.annotations.ApiModelProperty(value="支付金额(分):允许有负数,退款时为负值。",name="payment") private Integer payment; @io.swagger.annotations.ApiModelProperty(value="支付时间",name="paymentTime") private Date paymentTime; + + @Excel(name = "订单状态", width = 20, orderNum = "9", replace = {"待付款_0", "已支付_1", "已取消_2", "待退款_3", "已退款_4", "退款失败_5"}) @io.swagger.annotations.ApiModelProperty(value="订单状态:-1全部;正向交易:0-已下单/待付款;1-已支付;2-已取消(限定时间内未付款)反向交易:3-已退款; 4-退款失败,5-退款失败; 砍价:6-砍价中,7-砍价完成,8-砍价失败",name="orderStatus") private Integer orderStatus; + + @Excel(name = "订单日期", width = 20, orderNum = "7", format = "yyyy-MM-dd") @io.swagger.annotations.ApiModelProperty(value="创建时间/砍价开始时间",name="createDate") private Date createDate; @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") @@ -82,9 +91,15 @@ public class WxOrder extends BaseEntity { @TableField(exist = false) protected String statusStr; + @Excel(name = "商品名称", width = 20, orderNum = "5") @TableField(exist = false) private String title; + @Excel(name = "商品属性", width = 20, orderNum = "4", replace = {"消费卡_1", "优惠券_2", "砍价_3", "拼团_4"}) @TableField(exist = false) private Integer attribute; + + @Excel(name = "支付金额(元)", width = 20, orderNum = "8") + @TableField(exist = false) + private Integer pay; } diff --git a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java index acdf60391..a1b1153cc 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java @@ -10,6 +10,8 @@ import com.iformall.domain.vo.WxOrderCouponVo; import com.iformall.domain.vo.WxOrderQueryVo; import com.iformall.enums.EnumOrderStatus; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Map; @@ -191,4 +193,6 @@ public interface WxOrderService { Map summary(WxOrderQueryVo wxOrderQueryVo); + void exportData(WxOrderQueryVo wxOrderQueryVo, HttpServletRequest request, HttpServletResponse response); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 799144758..9561a32b7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -25,6 +25,8 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -123,6 +125,9 @@ public class WxOrderServiceImpl implements WxOrderService { @Autowired private WxCouponPasswordMapper couponPasswordMapper; + @Autowired + ExcelService excelService; + @Override public PageInfo listAsPage(WxOrder record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxOrderMapper.findList(record)); @@ -980,16 +985,20 @@ public class WxOrderServiceImpl implements WxOrderService { @Override public Map summary(WxOrderQueryVo wxOrderQueryVo) { List listOrder = wxOrderMapper.findListOrder(wxOrderQueryVo); - Long orderPay = listOrder.stream().collect(Collectors.summingLong(WxOrder::getPayment)); - Long pay = listOrder.stream().filter(o -> !o.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()) - && !o.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode())) - .collect(Collectors.summingLong(WxOrder::getPayment)); + Long payment = listOrder.stream().collect(Collectors.summingLong(WxOrder::getPayment)); + Long pay = listOrder.stream().collect(Collectors.summingLong(WxOrder::getPay)); Map data = new HashMap<>(); - data.put("orderPay", orderPay); + data.put("payment", payment); data.put("pay", pay); return data; } + @Override + public void exportData(WxOrderQueryVo wxOrderQueryVo, HttpServletRequest request, HttpServletResponse response) { + List list = wxOrderMapper.findListOrder(wxOrderQueryVo); + excelService.exportExcel(list, null, "线上交易", WxOrder.class, "线上交易.xlsx", response, false); + } + /** * 积分设置来源商户 */ diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index b8396ba75..549aaa178 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -541,12 +541,13 @@ +