|
@@ -9,6 +9,7 @@ import com.caimei.modules.hehe.service.HeHeNewOrderService;
|
|
|
import com.caimei.modules.order.dao.CmDiscernReceiptDao;
|
|
|
import com.caimei.modules.order.dao.CmReceiptOrderRelationDao;
|
|
|
import com.caimei.modules.order.dao.CmReturnedPurchaseDao;
|
|
|
+import com.caimei.modules.order.dao.NewOrderProductDao;
|
|
|
import com.caimei.modules.order.entity.*;
|
|
|
import com.caimei.modules.order.service.CmDiscernReceiptService;
|
|
|
import com.caimei.modules.order.service.CmReceiptOrderRelationService;
|
|
@@ -24,14 +25,13 @@ import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.ui.Model;
|
|
|
-import org.springframework.web.bind.annotation.ModelAttribute;
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
-import org.springframework.web.bind.annotation.RequestParam;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.io.OutputStream;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
|
|
@@ -64,6 +64,8 @@ public class HeHeNewOrderController extends BaseController {
|
|
|
private CmDiscernReceiptDao cmDiscernReceiptDao;
|
|
|
@Autowired
|
|
|
private CmReceiptOrderRelationService cmReceiptOrderRelationService;
|
|
|
+ @Resource
|
|
|
+ private NewOrderProductDao newOrderProductDao;
|
|
|
|
|
|
@ModelAttribute
|
|
|
public NewOrder get(@RequestParam(required = false) String id) {
|
|
@@ -245,115 +247,57 @@ public class HeHeNewOrderController extends BaseController {
|
|
|
return "redirect:" + Global.getAdminPath() + "/hehe/new/order/detail/?id=" + orderID;
|
|
|
}
|
|
|
|
|
|
- /*@RequestMapping(value = "batchExportOrder")
|
|
|
- public void exportTest(String startTime, String endTime, CmDiscernReceipt cmDiscernReceipt, RedirectAttributes redirectAttributes, HttpServletRequest request, HttpServletResponse response) {
|
|
|
+ @RequestMapping(value = "batchExportOrder")
|
|
|
+ @ResponseBody
|
|
|
+ public String batchExportOrder(NewOrder order, RedirectAttributes redirectAttributes, HttpServletRequest request, HttpServletResponse response) {
|
|
|
//获取订单数据
|
|
|
- String fileName = "收款账单.xls";
|
|
|
+ String fileName = "呵呵订单.xls";
|
|
|
String template = Global.getConfig("export.template");
|
|
|
- String templateFileName = template + "/discern_receipt_export.xls";
|
|
|
+ String templateFileName = template + "/hehe_order_export.xls";
|
|
|
List<String> listSheetNames = new ArrayList<String>();
|
|
|
+ // 表格数据
|
|
|
ArrayList<List> objects = new ArrayList<List>();
|
|
|
- //收款时间筛查
|
|
|
- if (startTime == null) {
|
|
|
- cmDiscernReceipt.setStartTime("2019-10-01 00:00:00");
|
|
|
- } else {
|
|
|
- cmDiscernReceipt.setStartTime(startTime);
|
|
|
+ if (null != order.getStartTime() && !"".equals(order.getStartTime()) && !order.getStartTime().endsWith("00:00:00")) {
|
|
|
+ order.setStartTime(order.getStartTime() + " 00:00:00");
|
|
|
}
|
|
|
- if (endTime == null) {
|
|
|
- cmDiscernReceipt.setEndTime("2019-10-31 23:59:59");
|
|
|
- } else {
|
|
|
- cmDiscernReceipt.setEndTime(endTime);
|
|
|
+ if (null != order.getEndTime() && !"".equals(order.getEndTime()) && !order.getEndTime().endsWith("23:59:59")) {
|
|
|
+ order.setEndTime(order.getEndTime() + " 23:59:59");
|
|
|
+ }
|
|
|
+ if (null != order.getStartConfirmTime() && !"".equals(order.getStartConfirmTime()) && !order.getStartConfirmTime().endsWith("00:00:00")) {
|
|
|
+ order.setStartConfirmTime(order.getStartConfirmTime() + " 00:00:00");
|
|
|
+ }
|
|
|
+ if (null != order.getEndConfirmTime() && !"".equals(order.getEndConfirmTime()) && !order.getEndConfirmTime().endsWith("23:59:59")) {
|
|
|
+ order.setEndConfirmTime(order.getEndConfirmTime() + " 23:59:59");
|
|
|
+ }
|
|
|
+ if (null != order.getStartRefundTime() && !"".equals(order.getStartRefundTime()) && !order.getStartRefundTime().endsWith("00:00:00")) {
|
|
|
+ order.setStartRefundTime(order.getStartRefundTime() + " 00:00:00");
|
|
|
+ }
|
|
|
+ if (null != order.getEndRefundTime() && !"".equals(order.getEndRefundTime()) && !order.getEndRefundTime().endsWith("23:59:59")) {
|
|
|
+ order.setEndRefundTime(order.getEndRefundTime() + " 23:59:59");
|
|
|
+ }
|
|
|
+ if (null != order.getBuyer()) {
|
|
|
+ order.setBuyer(order.getBuyer().trim());
|
|
|
}
|
|
|
+ if (null != order.getReceiver()) {
|
|
|
+ order.setReceiver(order.getReceiver().trim());
|
|
|
+ }
|
|
|
+ //查询内部处理了已收,未付统计(包含运费)
|
|
|
+ List<NewOrder> orderList = heHeNewOrderService.findList(order);
|
|
|
+ orderList.forEach(heheOrder->{
|
|
|
+ List<NewOrderProduct> productList = newOrderProductDao.findListByOrderID(heheOrder.getOrderID());
|
|
|
+ heheOrder.setNewOrderProducts(productList);
|
|
|
+ });
|
|
|
try {
|
|
|
-
|
|
|
- List<CmMainReceiptExport> list = cmDiscernReceiptService.exportTest(cmDiscernReceipt);
|
|
|
- for (CmMainReceiptExport bean : list) {
|
|
|
- String productNames = bean.getProductNames();
|
|
|
- if (StringUtils.isNotEmpty(productNames)) {
|
|
|
- String[] productNameArr = productNames.split(",");
|
|
|
- for (int i = 0; i < productNameArr.length; i++) {
|
|
|
- productNameArr[i] = (i + 1) + "." + productNameArr[i] + "\r\n";
|
|
|
- productNames = i==0?productNameArr[i]:productNames + productNameArr[i];
|
|
|
- }
|
|
|
- bean.setProductNames(productNames);
|
|
|
- }
|
|
|
- bean.setPayType(OrderUtil.getPayTypeStr(bean.getPayType()));
|
|
|
- }
|
|
|
- //返佣数据
|
|
|
- List<CmMainReceiptExport> list1 = cmDiscernReceiptService.exportRebate(cmDiscernReceipt);
|
|
|
- for (CmMainReceiptExport export : list1) {
|
|
|
- export.setPayType(OrderUtil.getPayTypeStr(export.getPayType()));
|
|
|
- export.setOrderID(export.getOrderID() + ("5".equals(export.getReceiptType())?"(供应商退款订单)":"(返佣订单)"));
|
|
|
- list.add(export);
|
|
|
- }
|
|
|
- //非订单款
|
|
|
- List<CmMainReceiptExport> list2 = cmDiscernReceiptService.theOrder(cmDiscernReceipt);
|
|
|
- for (CmMainReceiptExport export : list2) {
|
|
|
- export.setOrderID("非订单");
|
|
|
- export.setUserName("");
|
|
|
- export.setPayType(OrderUtil.getPayTypeStr(export.getPayType()));
|
|
|
- list.add(export);
|
|
|
- }
|
|
|
-
|
|
|
- //退款记录表
|
|
|
- List<CmReturnedPurchase> purchases = cmDiscernReceiptService.exportRefund(cmDiscernReceipt);
|
|
|
- for (CmReturnedPurchase purchase : purchases) {
|
|
|
- String refundWay = "";
|
|
|
- if ("1".equals(purchase.getReturnedWay())) {
|
|
|
- if (purchase.getRefundBalanceFee() != null && purchase.getRefundBalanceFee() != 0) {
|
|
|
- refundWay += "账户余额";
|
|
|
- }
|
|
|
- if (purchase.getRefundOnlineFee() != null && purchase.getRefundOnlineFee() != 0) {
|
|
|
- refundWay += ";线上退回";
|
|
|
- }
|
|
|
- if (purchase.getRefundOfflineFee() != null && purchase.getRefundOfflineFee() != 0) {
|
|
|
- refundWay += ";线下转账";
|
|
|
- }
|
|
|
- }
|
|
|
- purchase.setReturnedWay(refundWay);
|
|
|
- String payType = OrderUtil.getPayType(purchase.getPayType());
|
|
|
- purchase.setPayType(payType);
|
|
|
- }
|
|
|
-
|
|
|
- //超级会员款
|
|
|
- List<CmMainReceiptExport> svipList = cmDiscernReceiptService.svipReceipt(cmDiscernReceipt);
|
|
|
- for (CmMainReceiptExport export : svipList) {
|
|
|
- export.setOrderID("超级会员款");
|
|
|
- export.setPayType(OrderUtil.getPayTypeStr(export.getPayType()));
|
|
|
- list.add(export);
|
|
|
- }
|
|
|
-
|
|
|
- //二手商品上架费
|
|
|
- List<CmMainReceiptExport> secondList = cmDiscernReceiptService.secondReceipt(cmDiscernReceipt);
|
|
|
- for (CmMainReceiptExport export : secondList) {
|
|
|
- export.setOrderID("二手商品上架费");
|
|
|
- export.setUserName("");
|
|
|
- export.setPayType(OrderUtil.getPayTypeStr(export.getPayType()));
|
|
|
- list.add(export);
|
|
|
- }
|
|
|
-
|
|
|
- // 收款进度 1待收 2部分收 3全收
|
|
|
- cmDiscernReceipt.setReceiptProgress("2");
|
|
|
- List<CmReceiptExportData> ListExportData1 = getListExportData(cmDiscernReceipt);
|
|
|
- cmDiscernReceipt.setReceiptProgress("3");
|
|
|
- List<CmReceiptExportData> ListExportData2 = getListExportData(cmDiscernReceipt);
|
|
|
-
|
|
|
- objects.add(list);
|
|
|
- *//*objects.add(ListExportData1);
|
|
|
- objects.add(ListExportData2);
|
|
|
- objects.add(getListOrderPayment(cmDiscernReceipt));
|
|
|
- objects.add(purchases);*//*
|
|
|
- listSheetNames.add("收款表");
|
|
|
- *//*listSheetNames.add("部分收款");
|
|
|
- listSheetNames.add("已收款");
|
|
|
- listSheetNames.add("返佣订单");
|
|
|
- listSheetNames.add("退款记录表");*//*
|
|
|
-
|
|
|
- new ExcelUtil().createMultipleSheetsExcel(templateFileName, fileName, listSheetNames, objects, response);
|
|
|
+ OutputStream outputStream = response.getOutputStream();
|
|
|
+ response.reset();
|
|
|
+ response.setHeader("Content-disposition",
|
|
|
+ "attachment; filename=" + fileName);
|
|
|
+ response.setContentType("application/vnd.ms-excel");
|
|
|
+ return heHeNewOrderService.batchExportOrder(orderList, outputStream);
|
|
|
} catch (Exception e) {
|
|
|
- addMessage(redirectAttributes, "收款列表导出失败!" + e.getMessage());
|
|
|
- logger.info(e.getMessage());
|
|
|
e.printStackTrace();
|
|
|
+ return "导出失败";
|
|
|
}
|
|
|
- }*/
|
|
|
-}
|
|
|
+
|
|
|
+ }
|
|
|
+}
|