记得上下班打卡 | git大法好,push需谨慎

Commit f9ca0721 authored by Administrator's avatar Administrator 🎨

Merge branch 'pre' into 'master'

Pre

See merge request !218
parents 1c601790 e0f525d7
package com.liquidnet.client.admin.web.controller.zhengzai.tools;
import com.liquidnet.client.admin.common.core.controller.BaseController;
import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.utils.poi.ExcelUtil;
import com.liquidnet.client.admin.zhengzai.kylin.dto.*;
import com.liquidnet.client.admin.zhengzai.kylin.service.IExportService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
@Controller
@RequestMapping("tools/export")
public class ExportDataController extends BaseController {
@Autowired
private IExportService exportService;
private String prefix = "zhengzai/financial";
@GetMapping()
public String financial() {
return prefix + "/export";
}
/**
* 导出订单明细
*
* @param exportType
* @param beginTime
* @param endTime
* @param showId
* @return
*/
@PostMapping("/export/orderInfo")
@ResponseBody
public AjaxResult exportOrderInfo(Integer exportType, String beginTime, String endTime, String showId) {
if (null == exportType) {
return error("导出类型有误!");
}
if (exportType == 1) {//按订单时间导出信息
if (!timeIsNotNull(beginTime, endTime)) {
return error("按时间类型导出,开始时间和结束时间不能为空!");
}
List<OrderDetailedExportVo> list = exportService.exportOrderByOrderTime(beginTime, endTime);
if (list.size() > 0) {
ExcelUtil<OrderDetailedExportVo> util = new ExcelUtil(OrderDetailedExportVo.class);
return util.exportExcel(list, exportType + "");
}
} else if (exportType == 2) {//按演出时间导出信息
if (!timeIsNotNull(beginTime, endTime)) {
return error("按时间类型导出,开始时间和结束时间不能为空!");
}
List<OrderDetailedByShowDateExportVo> byShowTimeList = exportService.exportOrderByShowTime(beginTime, endTime);
if (byShowTimeList.size() > 0) {
ExcelUtil<OrderDetailedByShowDateExportVo> util = new ExcelUtil(OrderDetailedByShowDateExportVo.class);
return util.exportExcel(byShowTimeList, exportType + "");
}
} else if (exportType == 3) {//按id导出信息
if (!StringUtils.isNotBlank(showId)) {
return error("演出id不能为空!");
}
List<OrderDetailedByShowIdExportVo> byShowIdList = exportService.exportOrderByShowId(showId);
if (byShowIdList.size() > 0) {
ExcelUtil<OrderDetailedByShowIdExportVo> util = new ExcelUtil(OrderDetailedByShowIdExportVo.class);
return util.exportExcel(byShowIdList, exportType + "");
}
}
return error("查无信息!");
}
private boolean timeIsNotNull(String beginTime, String endTime) {
return StringUtils.isNotBlank(beginTime) && StringUtils.isNotBlank(endTime) ? true : false;
}
/**
* 导出会员订单
*
* @param beginTime
* @param endTime
* @return
*/
@PostMapping("/export/memberOrder")
@ResponseBody
public AjaxResult exportMemberOrder(String beginTime, String endTime) {
if (!timeIsNotNull(beginTime, endTime)) {
return error("开始时间和结束时间不能为空!");
}
List<OrderMemberExportVo> list = exportService.exportMemberOrder(beginTime, endTime);
if (list.size() == 0) {
return error("查无信息");
}
ExcelUtil<OrderMemberExportVo> util = new ExcelUtil(OrderMemberExportVo.class);
return util.exportExcel(list, "会员订单");
}
/**
* 导出商品订单
*
* @param beginTime
* @param endTime
* @return
*/
@PostMapping("/export/commodityOrder")
@ResponseBody
public AjaxResult exportCommodityOrder(String beginTime, String endTime) {
if (!timeIsNotNull(beginTime, endTime)) {
return error("开始时间和结束时间不能为空!");
}
List<OrderCommodityExportVo> list = exportService.exportCommodityOrder(beginTime, endTime);
if (list.size() == 0) {
return error("查无信息");
}
ExcelUtil<OrderCommodityExportVo> util = new ExcelUtil(OrderCommodityExportVo.class);
return util.exportExcel(list, "商品订单");
}
}
...@@ -285,6 +285,9 @@ ...@@ -285,6 +285,9 @@
} else if(26 == targetType) { } else if(26 == targetType) {
Id = dataList[i].id; Id = dataList[i].id;
Title = dataList[i].name; Title = dataList[i].name;
}else if(7 == targetType || 9 == targetType) {
Id = dataList[i].spuId;
Title = dataList[i].spuName;
} else { } else {
Id = dataList[i].id; Id = dataList[i].id;
Title = dataList[i].title; Title = dataList[i].title;
......
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
<th:block th:include="include :: header('财务导出')"/>
<th:block th:include="include :: datetimepicker-css"/>
</head>
<style>
td {
horiz-align: center;
text-align: left;
padding: 10px;
}
</style>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<li>
<label>搜索类型:</label>
<select id="type" name="type">
<option value="0">请选择</option>
<option value="1">商品[订单时间]</option>
<option value="2">演出[订单时间]</option>
<option value="3">演出[演出id]</option>
<option value="4">演出[演出时间]</option>
<option value="5">会员[订单时间]</option>
</select>
</li>
<li>
<label>演出id:</label>
<input id="performanceId" type="text" name="performanceId"/>
</li>
<li>
<div class="form-group">
<label>时间范围:</label>
<input type="text" style="width: 200px;float: left"
class="form-control" id="startTime" placeholder="开始时间选择" name="timeStart"/>
<span class="control-label"
style="float: left;margin-left: 10px;margin-right: 10px"> - </span>
<input type="text" style="width: 200px;float: left"
class="form-control" id="endTime" placeholder="结束时间选择" name="timeEnd"/>
</div>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="searchExport()"><i
class="fa fa-search"></i>导出</a>
</li>
</ul>
</div>
</form>
</div>
</div>
<th:block th:include="include :: footer"/>
<th:block th:include="include :: datetimepicker-js"/>
<script th:inline="javascript">
var prefix = ctx + "tools/export";
var url = prefix;
var formData = new FormData();
$("input[name='timeStart']").datetimepicker({
format: "yyyy-mm-dd hh:ii:ss",
autoclose: true
});
$("input[name='timeEnd']").datetimepicker({
format: "yyyy-mm-dd hh:ii:ss",
autoclose: true
});
function searchExport() {
var type = document.getElementById("type").value;
var performanceId = document.getElementById("performanceId").value;
var st = document.getElementById("startTime").value;
var et = document.getElementById("endTime").value;
var exportType = 0;
if (type == 2) {
exportType = 1;
} else if (type == 3) {
exportType = 3;
} else if (type == 4) {
exportType = 2;
}
if (type == 0) {
alert("请选择导出类型");
return
} else if (type == 1) {//商品导出逻辑
if (st == "" || et == "") {
alert("请选择时间范围");
return
} else {
url = url + "/export/commodityOrder";
}
} else if (type == 2) {//演出[订单时间]
if (st == "" || et == "") {
alert("请选择时间范围");
return
} else {
url = url + "/export/orderInfo";
}
} else if (type == 3) {//演出[演出id]
if (performanceId == "") {
alert("演出id不能为空");
return
} else {
url = url + "/export/orderInfo";
}
} else if (type == 4) {//演出[演出时间]
if (st == "" || et == "") {
alert("请选择时间范围");
return
} else {
url = url + "/export/orderInfo";
}
} else if (type == 5) {//会员[订单时间]
if (st == "" || et == "") {
alert("请选择时间范围");
return
} else {
url = url + "/export/memberOrder";
}
}
var options = {
modalName: "财务导出",
exportUrl: url,
}
$.table.init(options);
var param = {
"beginTime": st,
"endTime": et,
"showId": performanceId,
"exportType": exportType
};
$.table.exportExcel("", param)
url = prefix;
}
</script>
</body>
</html>
package com.liquidnet.client.admin.zhengzai.kylin.dto;
import com.liquidnet.client.admin.common.annotation.Excel;
import com.liquidnet.service.kylin.dao.CommodityOrderExportDao;
import lombok.Data;
import java.io.Serializable;
@Data
public class OrderCommodityExportVo implements Serializable, Cloneable {
@Excel(name = "商户订单号", cellType = Excel.ColumnType.STRING)
private String code;
@Excel(name = "微信/支付宝订单号", cellType = Excel.ColumnType.STRING)
private String paymentId;
@Excel(name = "商品名称", cellType = Excel.ColumnType.STRING)
private String name;
@Excel(name = "支付平台", cellType = Excel.ColumnType.STRING)
private String paymentType;
@Excel(name = "实际支付价格", cellType = Excel.ColumnType.STRING)
private String priceActual;
@Excel(name = "创建时间", cellType = Excel.ColumnType.STRING)
private String createdAt;
@Excel(name = "快递费", cellType = Excel.ColumnType.STRING)
private String priceExpress;
@Excel(name = "退款价格", cellType = Excel.ColumnType.STRING)
private String priceRefund;
@Excel(name = "状态", cellType = Excel.ColumnType.STRING)
private String status;
@Excel(name = "退款时间", cellType = Excel.ColumnType.STRING)
private String refundAt;
private static final OrderCommodityExportVo obj = new OrderCommodityExportVo();
public static OrderCommodityExportVo getNew() {
try {
return (OrderCommodityExportVo) obj.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
return new OrderCommodityExportVo();
}
public OrderCommodityExportVo copyCommodityOrderExportVo(CommodityOrderExportDao source) {
this.setCode(source.getCode());
this.setPaymentId(source.getPaymentId());
this.setName(source.getName());
this.setPaymentType(source.getPaymentType());
this.setPriceActual(source.getPriceActual());
this.setCreatedAt(source.getCreatedAt());
this.setPriceExpress(source.getPriceExpress());
this.setPriceRefund(source.getPriceRefund());
this.setStatus(source.getStatus());
this.setRefundAt(source.getRefundAt());
return this;
}
}
package com.liquidnet.client.admin.zhengzai.kylin.dto;
import com.liquidnet.client.admin.common.annotation.Excel;
import com.liquidnet.service.kylin.dao.OrderExportDao;
import lombok.Data;
import java.io.Serializable;
@Data
public class OrderDetailedByShowDateExportVo implements Serializable, Cloneable {
@Excel(name = "订单号", cellType = Excel.ColumnType.STRING)
private String orderCode;
@Excel(name = "商户订单号", cellType = Excel.ColumnType.STRING)
private String payCode;
@Excel(name = "微信/支付宝订单号", cellType = Excel.ColumnType.STRING)
private String paymentId;
@Excel(name = "购买名称", cellType = Excel.ColumnType.STRING)
private String performanceTitle;
@Excel(name = "支付平台", cellType = Excel.ColumnType.STRING)
private String paymentType;
@Excel(name = "演出类型", cellType = Excel.ColumnType.STRING)
private String type;
@Excel(name = "票种名称", cellType = Excel.ColumnType.STRING)
private String title1;
@Excel(name = "购票数量", cellType = Excel.ColumnType.STRING)
private String number;
@Excel(name = "场次", cellType = Excel.ColumnType.STRING)
private String title2;
//todo
@Excel(name = "退款时间", cellType = Excel.ColumnType.STRING)
private String updateAt;
@Excel(name = "退款原因", cellType = Excel.ColumnType.STRING)
private String reject;
@Excel(name = "支付金额", cellType = Excel.ColumnType.STRING)
private String priceActual;
@Excel(name = "支付时间", cellType = Excel.ColumnType.STRING)
private String timePay;
private static final OrderDetailedByShowDateExportVo obj = new OrderDetailedByShowDateExportVo();
public static OrderDetailedByShowDateExportVo getNew() {
try {
return (OrderDetailedByShowDateExportVo) obj.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
return new OrderDetailedByShowDateExportVo();
}
public OrderDetailedByShowDateExportVo copyOrderExportVo(OrderExportDao source) {
this.setPerformanceTitle(source.getPerformanceTitle());
this.setOrderCode(source.getOrderCode());
this.setPayCode(source.getPayCode());
this.setPaymentId(source.getPaymentId());
this.setPaymentType(source.getPaymentType());
this.setType(source.getType());
this.setTitle1(source.getTitle1());
this.setTitle2(source.getTitle2());
this.setNumber(source.getNumber());
this.setPriceActual(source.getPriceActual());
this.setUpdateAt(source.getRefundAt());
this.setReject(source.getReject());
this.setTimePay(source.getTimePay());
return this;
}
}
package com.liquidnet.client.admin.zhengzai.kylin.dto;
import com.liquidnet.client.admin.common.annotation.Excel;
import com.liquidnet.service.kylin.dao.OrderExportDao;
import lombok.Data;
import java.io.Serializable;
@Data
public class OrderDetailedByShowIdExportVo implements Serializable, Cloneable {
@Excel(name = "订单号", cellType = Excel.ColumnType.STRING)
private String orderCode;
@Excel(name = "商户订单号", cellType = Excel.ColumnType.STRING)
private String payCode;
@Excel(name = "微信/支付宝订单号", cellType = Excel.ColumnType.STRING)
private String paymentId;
@Excel(name = "购买名称", cellType = Excel.ColumnType.STRING)
private String performanceTitle;
@Excel(name = "支付平台", cellType = Excel.ColumnType.STRING)
private String paymentType;
@Excel(name = "数量", cellType = Excel.ColumnType.STRING)
private String number;
@Excel(name = "单价", cellType = Excel.ColumnType.STRING)
private String price;
@Excel(name = "支付金额", cellType = Excel.ColumnType.STRING)
private String priceActual;
@Excel(name = "快递费", cellType = Excel.ColumnType.STRING)
private String priceExpress;
@Excel(name = "退票数量", cellType = Excel.ColumnType.STRING)
private String refundNumber;
@Excel(name = "演出类型", cellType = Excel.ColumnType.STRING)
private String type;
@Excel(name = "票种名称", cellType = Excel.ColumnType.STRING)
private String title1;
@Excel(name = "场次", cellType = Excel.ColumnType.STRING)
private String title2;
@Excel(name = "退款时间", cellType = Excel.ColumnType.STRING)
private String updateAt;
@Excel(name = "退款原因", cellType = Excel.ColumnType.STRING)
private String reject;
@Excel(name = "退款金额", cellType = Excel.ColumnType.STRING)
private String priceRefund;
@Excel(name = "支付时间", cellType = Excel.ColumnType.STRING)
private String timePay;
private static final OrderDetailedByShowIdExportVo obj = new OrderDetailedByShowIdExportVo();
public static OrderDetailedByShowIdExportVo getNew() {
try {
return (OrderDetailedByShowIdExportVo) obj.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
return new OrderDetailedByShowIdExportVo();
}
public OrderDetailedByShowIdExportVo copyOrderExportVo(OrderExportDao source) {
this.setPerformanceTitle(source.getPerformanceTitle());
this.setOrderCode(source.getOrderCode());
this.setPayCode(source.getPayCode());
this.setPaymentId(source.getPaymentId());
this.setPaymentType(source.getPaymentType());
this.setType(source.getType());
this.setTitle1(source.getTitle1());
this.setTitle2(source.getTitle2());
this.setPrice(source.getPrice());
this.setPriceExpress(source.getPriceExpress());
this.setNumber(source.getNumber());
this.setRefundNumber(source.getRefundNumber());
this.setPriceActual(source.getPriceActual());
this.setPriceRefund(source.getPriceRefund());
this.setUpdateAt(source.getRefundAt());
this.setReject(source.getReject());
this.setTimePay(source.getTimePay());
return this;
}
}
package com.liquidnet.client.admin.zhengzai.kylin.dto;
import com.liquidnet.client.admin.common.annotation.Excel;
import com.liquidnet.service.kylin.dao.OrderExportDao;
import lombok.Data;
import java.io.Serializable;
@Data
public class OrderDetailedExportVo implements Serializable, Cloneable {
@Excel(name = "订单号", cellType = Excel.ColumnType.STRING)
private String orderCode;
@Excel(name = "商户订单号", cellType = Excel.ColumnType.STRING)
private String code;
@Excel(name = "微信/支付宝订单号", cellType = Excel.ColumnType.STRING)
private String paymentId;
@Excel(name = "购买名称", cellType = Excel.ColumnType.STRING)
private String performanceTitle;
@Excel(name = "订单状态", cellType = Excel.ColumnType.STRING)
private String status;
@Excel(name = "支付平台", cellType = Excel.ColumnType.STRING)
private String paymentType;
@Excel(name = "演出类型", cellType = Excel.ColumnType.STRING)
private String type;
@Excel(name = "票种名称", cellType = Excel.ColumnType.STRING)
private String title1;
@Excel(name = "场次", cellType = Excel.ColumnType.STRING)
private String title2;
@Excel(name = "单价", cellType = Excel.ColumnType.STRING)
private String price;
@Excel(name = "快递费", cellType = Excel.ColumnType.STRING)
private String priceExpress;
@Excel(name = "购票数", cellType = Excel.ColumnType.STRING)
private String number;
@Excel(name = "退票数", cellType = Excel.ColumnType.STRING)
private String refundNumber;
@Excel(name = "实付金额", cellType = Excel.ColumnType.STRING)
private String priceActual;
@Excel(name = "退款金额", cellType = Excel.ColumnType.STRING)
private String priceRefund;
@Excel(name = "退款时间", cellType = Excel.ColumnType.STRING)
private String refundAt;
@Excel(name = "退款原因", cellType = Excel.ColumnType.STRING)
private String reject;
@Excel(name = "支付时间", cellType = Excel.ColumnType.STRING)
private String timePay;
private static final OrderDetailedExportVo obj = new OrderDetailedExportVo();
public static OrderDetailedExportVo getNew() {
try {
return (OrderDetailedExportVo) obj.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
return new OrderDetailedExportVo();
}
public OrderDetailedExportVo copyOrderExportVo(OrderExportDao source) {
this.setOrderCode(source.getOrderCode());
this.setCode(source.getCode());
this.setPaymentId(source.getPaymentId());
this.setPerformanceTitle(source.getPerformanceTitle());
this.setStatus(source.getStatus());
this.setPaymentType(source.getPaymentType());
this.setType(source.getType());
this.setTitle1(source.getTitle1());
this.setTitle2(source.getTitle2());
this.setPrice(source.getPrice());
this.setPriceExpress(source.getPriceExpress());
this.setNumber(source.getNumber());
this.setRefundNumber(source.getRefundNumber());
this.setPriceActual(source.getPriceActual());
this.setPriceRefund(source.getPriceRefund());
this.setRefundAt(source.getRefundAt());
this.setReject(source.getReject());
this.setTimePay(source.getTimePay());
return this;
}
}
package com.liquidnet.client.admin.zhengzai.kylin.dto; package com.liquidnet.client.admin.zhengzai.kylin.dto;
import com.liquidnet.client.admin.common.annotation.Excel; import com.liquidnet.client.admin.common.annotation.Excel;
import com.liquidnet.service.adam.dto.vo.AdamAddressesVo;
import com.liquidnet.service.kylin.dao.OrderExportDao; import com.liquidnet.service.kylin.dao.OrderExportDao;
import lombok.Data; import lombok.Data;
......
package com.liquidnet.client.admin.zhengzai.kylin.dto;
import com.liquidnet.client.admin.common.annotation.Excel;
import com.liquidnet.service.kylin.dao.MemberOrderExportDao;
import lombok.Data;
import java.io.Serializable;
@Data
public class OrderMemberExportVo implements Serializable, Cloneable {
@Excel(name = "商户订单号", cellType = Excel.ColumnType.STRING)
private String payCode;
@Excel(name = "微信/支付宝订单号", cellType = Excel.ColumnType.STRING)
private String paymentId;
@Excel(name = "支付方式", cellType = Excel.ColumnType.STRING)
private String payType;
@Excel(name = "订单状态", cellType = Excel.ColumnType.STRING)
private String state;
@Excel(name = "价格", cellType = Excel.ColumnType.STRING)
private String price;
@Excel(name = "支付时间", cellType = Excel.ColumnType.STRING)
private String paymentAt;
@Excel(name = "创建时间", cellType = Excel.ColumnType.STRING)
private String createdAt;
@Excel(name = "更新时间", cellType = Excel.ColumnType.STRING)
private String updatedAt;
@Excel(name = "退款时间", cellType = Excel.ColumnType.STRING)
private String refundAt;
@Excel(name = "退款金额", cellType = Excel.ColumnType.STRING)
private String refundPrice;
private static final OrderMemberExportVo obj = new OrderMemberExportVo();
public static OrderMemberExportVo getNew() {
try {
return (OrderMemberExportVo) obj.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
return new OrderMemberExportVo();
}
public OrderMemberExportVo copyMemberOrderExportVo(MemberOrderExportDao source) {
this.setPayCode(source.getPayNo());
this.setPaymentId(source.getPaymentId());
this.setPayType(source.getPayType());
this.setState(source.getState());
this.setPrice(source.getPrice());
this.setPaymentAt(source.getPaymentAt());
this.setCreatedAt(source.getCreatedAt());
this.setUpdatedAt(source.getUpdatedAt());
this.setRefundAt(source.getRefundAt());
this.setRefundPrice(source.getRefundPrice());
return this;
}
}
package com.liquidnet.client.admin.zhengzai.kylin.service; package com.liquidnet.client.admin.zhengzai.kylin.service;
import com.github.pagehelper.PageInfo; import com.liquidnet.client.admin.zhengzai.kylin.dto.*;
import com.liquidnet.client.admin.zhengzai.kylin.dto.OrderExportVo;
import com.liquidnet.client.admin.zhengzai.kylin.dto.OrderOutLineVo;
import java.util.List; import java.util.List;
...@@ -11,4 +9,19 @@ public interface IExportService { ...@@ -11,4 +9,19 @@ public interface IExportService {
List<OrderExportVo> exportOrderByPerformanceIdAll(String performancesId); List<OrderExportVo> exportOrderByPerformanceIdAll(String performancesId);
List<OrderExportVo> exportOrderByPerformanceIdPay(String performancesId); List<OrderExportVo> exportOrderByPerformanceIdPay(String performancesId);
//根据订单时间导出信息
List<OrderDetailedExportVo> exportOrderByOrderTime(String beginTime, String endTime);
//根据演出时间导出信息
List<OrderDetailedByShowDateExportVo> exportOrderByShowTime(String beginTime, String endTime);
//根据演出id导出信息
List<OrderDetailedByShowIdExportVo> exportOrderByShowId(String showId);
//导出会员订单信息
List<OrderMemberExportVo> exportMemberOrder(String beginTime, String endTime);
//导出商品订单信息
List<OrderCommodityExportVo> exportCommodityOrder(String beginTime, String endTime);
} }
package com.liquidnet.client.admin.zhengzai.kylin.service.impl; package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.fasterxml.jackson.core.type.TypeReference;
import com.github.pagehelper.PageInfo;
import com.liquidnet.client.admin.common.exception.BusinessException; import com.liquidnet.client.admin.common.exception.BusinessException;
import com.liquidnet.client.admin.common.utils.StringUtils; import com.liquidnet.client.admin.zhengzai.kylin.dto.*;
import com.liquidnet.client.admin.zhengzai.kylin.dto.OrderExportVo;
import com.liquidnet.client.admin.zhengzai.kylin.dto.OrderOutLineVo;
import com.liquidnet.client.admin.zhengzai.kylin.service.IExportService; import com.liquidnet.client.admin.zhengzai.kylin.service.IExportService;
import com.liquidnet.client.admin.zhengzai.kylin.service.IImportService; import com.liquidnet.service.kylin.dao.CommodityOrderExportDao;
import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils; import com.liquidnet.service.kylin.dao.MemberOrderExportDao;
import com.liquidnet.client.admin.zhengzai.kylin.utils.OrderUtils;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dao.OrderExportDao; import com.liquidnet.service.kylin.dao.OrderExportDao;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo; import com.liquidnet.service.kylin.mapper.KylinPerformancesMapper;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketEntitiesVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.MultiValueMap;
import java.math.BigDecimal; import java.text.ParseException;
import java.time.LocalDateTime; import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
@Service @Service
...@@ -64,4 +43,86 @@ public class ExportServiceImpl implements IExportService { ...@@ -64,4 +43,86 @@ public class ExportServiceImpl implements IExportService {
} }
return voList; return voList;
} }
@Override
public List<OrderDetailedExportVo> exportOrderByOrderTime(String beginTime, String endTime) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date beginDate = sdf.parse(beginTime);
Date endDate = sdf.parse(endTime);
List<OrderExportDao> list = performancesMapper.exportOrderByOrderTime(beginDate,endDate);
List<OrderDetailedExportVo> voList = new ArrayList();
for (OrderExportDao item :list){
voList.add(OrderDetailedExportVo.getNew().copyOrderExportVo(item));
}
return voList;
} catch (ParseException e) {
e.printStackTrace();
throw new BusinessException("导出异常,请联系网站管理员!");
}
}
@Override
public List<OrderDetailedByShowDateExportVo> exportOrderByShowTime(String beginTime, String endTime) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date beginDate = sdf.parse(beginTime);
Date endDate = sdf.parse(endTime);
List<OrderExportDao> list = performancesMapper.exportOrderByShowTime(beginDate,endDate);
List<OrderDetailedByShowDateExportVo> voList = new ArrayList();
for (OrderExportDao item :list){
voList.add(OrderDetailedByShowDateExportVo.getNew().copyOrderExportVo(item));
}
return voList;
} catch (ParseException e) {
e.printStackTrace();
throw new BusinessException("导出异常,请联系网站管理员!");
}
}
@Override
public List<OrderDetailedByShowIdExportVo> exportOrderByShowId(String showId) {
List<OrderExportDao> list = performancesMapper.exportOrderByShowId(showId);
List<OrderDetailedByShowIdExportVo> voList = new ArrayList();
for (OrderExportDao item :list){
voList.add(OrderDetailedByShowIdExportVo.getNew().copyOrderExportVo(item));
}
return voList;
}
@Override
public List<OrderMemberExportVo> exportMemberOrder(String beginTime, String endTime) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date beginDate = sdf.parse(beginTime);
Date endDate = sdf.parse(endTime);
List<MemberOrderExportDao> list = performancesMapper.exportMemberOrder(beginDate,endDate);
List<OrderMemberExportVo> voList = new ArrayList();
for (MemberOrderExportDao item :list){
voList.add(OrderMemberExportVo.getNew().copyMemberOrderExportVo(item));
}
return voList;
} catch (ParseException e) {
e.printStackTrace();
throw new BusinessException("导出异常,请联系网站管理员!");
}
}
@Override
public List<OrderCommodityExportVo> exportCommodityOrder(String beginTime, String endTime) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date beginDate = sdf.parse(beginTime);
Date endDate = sdf.parse(endTime);
List<CommodityOrderExportDao> list = performancesMapper.exportCommodityOrder(beginDate,endDate);
List<OrderCommodityExportVo> voList = new ArrayList();
for (CommodityOrderExportDao item :list){
voList.add(OrderCommodityExportVo.getNew().copyCommodityOrderExportVo(item));
}
return voList;
} catch (ParseException e) {
e.printStackTrace();
throw new BusinessException("导出Excel失败,请联系网站管理员!");
}
}
} }
package com.liquidnet.service.kylin.dao;
import lombok.Data;
@Data
public class CommodityOrderExportDao {
//商户订单号
private String code;
//微信/支付宝订单号
private String paymentId;
//商品名称
private String name;
//支付平台()
private String paymentType;
//实付金额
private String priceActual;
//创建时间
private String createdAt;
//快递费
private String priceExpress;
//退款金额
private String priceRefund;
//订单状态
private String status;
//退款时间
private String refundAt;
}
package com.liquidnet.service.kylin.dao;
import lombok.Data;
@Data
public class MemberOrderExportDao {
//商户订单号
private String payNo;
//微信/支付宝订单号
private String paymentId;
//支付方式
private String payType;
//订单状态
private String state;
//价格
private String price;
//支付时间
private String paymentAt;
//创建时间
private String createdAt;
//更新时间
private String updatedAt;
//退款时间
private String refundAt;
//退款价格
private String refundPrice;
}
...@@ -4,7 +4,47 @@ import lombok.Data; ...@@ -4,7 +4,47 @@ import lombok.Data;
@Data @Data
public class OrderExportDao { public class OrderExportDao {
//演出名称/购买名称
private String performanceTitle; private String performanceTitle;
//手机号
private String userMobile; private String userMobile;
//名称
private String userName; private String userName;
//订单号
private String orderCode;
//商户订单号
private String code;
//商户订单号
private String payCode;
//微信/支付宝订单号
private String paymentId;
//订单状态(1.以支付 3.退款中 4.以退款 6.部分退款)
private String status;
//支付平台()
private String paymentType;
//演出类型
private String type;
//票种名称
private String title1;
//场次
private String title2;
//单价
private String price;
//快递费
private String priceExpress;
//购票数
private String number;
//退票数
private String refundNumber;
//实付金额
private String priceActual;
//退款金额
private String priceRefund;
//退款时间
private String refundAt;
//退款原因
private String reject;
//支付时间
private String timePay;
} }
package com.liquidnet.service.kylin.mapper; package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.dao.*; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.entity.KylinPerformances; import com.liquidnet.service.kylin.entity.KylinPerformances;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -70,4 +71,14 @@ public interface KylinPerformancesMapper extends BaseMapper<KylinPerformances> { ...@@ -70,4 +71,14 @@ public interface KylinPerformancesMapper extends BaseMapper<KylinPerformances> {
List<KylinPerformancesDao> selectTicketIdByPerId(@Param("performancesId") String performancesId); List<KylinPerformancesDao> selectTicketIdByPerId(@Param("performancesId") String performancesId);
//订单时间查订单信息
List<OrderExportDao> exportOrderByOrderTime(@Param("beginTime") Date beginTime, @Param("endTime") Date endTime);
//演出时间查订单信息
List<OrderExportDao> exportOrderByShowTime(@Param("beginTime") Date beginTime, @Param("endTime") Date endTime);
//演出id查订单信息
List<OrderExportDao> exportOrderByShowId(@Param("showId") String showId);
//会员订单信息
List<MemberOrderExportDao> exportMemberOrder(@Param("beginTime") Date beginTime, @Param("endTime") Date endTime);
//商品订单信息
List<CommodityOrderExportDao> exportCommodityOrder(@Param("beginTime") Date beginTime, @Param("endTime") Date endTime);
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment