|
@@ -1,5 +1,7 @@
|
|
|
package com.kmall.admin.controller;
|
|
|
|
|
|
+import com.google.common.collect.Lists;
|
|
|
+import com.google.common.collect.Maps;
|
|
|
import com.kmall.admin.entity.*;
|
|
|
import com.kmall.admin.service.*;
|
|
|
import com.kmall.admin.service.OrderExceptionRecordService;
|
|
@@ -9,6 +11,8 @@ import com.kmall.admin.utils.ParamUtils;
|
|
|
import com.kmall.common.constant.Dict;
|
|
|
import com.kmall.common.entity.SysUserEntity;
|
|
|
import com.kmall.common.utils.*;
|
|
|
+import com.kmall.common.utils.excel.ExcelExport;
|
|
|
+import com.kmall.common.utils.excel.ExcelUtil;
|
|
|
import com.kmall.common.utils.pingan.PinganUtil;
|
|
|
import com.kmall.common.utils.pingan.dto.PinganResponseDto;
|
|
|
import com.kmall.common.utils.print.ticket.item.Ticket;
|
|
@@ -22,16 +26,15 @@ import net.sf.json.JSONObject;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.commons.logging.Log;
|
|
|
import org.apache.commons.logging.LogFactory;
|
|
|
-import org.apache.log4j.Logger;
|
|
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
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.io.IOException;
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Objects;
|
|
|
+import java.util.*;
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -674,4 +677,57 @@ public class OrderController {
|
|
|
}
|
|
|
return r;
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 订单导出请求
|
|
|
+ */
|
|
|
+ @RequiresPermissions(value = {"order:export"})
|
|
|
+ @RequestMapping(value = "export")
|
|
|
+ public Object export(@RequestParam Map<String, Object> params, HttpServletResponse response, HttpServletRequest request) {
|
|
|
+ ParamUtils.setQueryPowerByRoleType(params, "storeId", "merchSn", false);
|
|
|
+ //查询列表数据
|
|
|
+ params.put("isOnfiilineOrder", Dict.isOnfflineOrder.item_0.getItem());
|
|
|
+ List<OrderEntity> orderList = orderService.queryExportList(params);
|
|
|
+
|
|
|
+ ExcelExport ee = new ExcelExport("订单信息");
|
|
|
+
|
|
|
+ String[] header = new String[]{"订单编号","商户订单编号", "订单状态", "保税模式", "快递公司名称", "快递单编号", "海关清单编号", "收货人姓名", "收件人手机", "收件人省份", "收件人城市", "收件人区县", "收件人地址", "下单时间", "实际支付金额", "SKU", "商品名称", "数量", "销售价"};
|
|
|
+
|
|
|
+ List<Map<String, Object>> list = new ArrayList<>();
|
|
|
+ if (orderList != null && orderList.size() != 0) {
|
|
|
+ for (OrderEntity orderEntity : orderList) {
|
|
|
+ LinkedHashMap<String, Object> map = new LinkedHashMap<>();
|
|
|
+ Integer orderStatus = orderEntity.getOrderStatus();
|
|
|
+ String orderBizType = orderEntity.getOrderBizType();
|
|
|
+
|
|
|
+ map.put("OrderSn", orderEntity.getOrderSn());
|
|
|
+ map.put("MerchOrderSn", orderEntity.getMerchOrderSn());
|
|
|
+ map.put("OrderStatus", StringUtils.isEmpty(orderStatus.toString())? "":Dict.orderStatus.valueOf("item_"+ orderStatus).getItemName());
|
|
|
+ map.put("OrderBizType", StringUtils.isEmpty(orderBizType)? "":Dict.orderBizType.valueOf("item_"+orderBizType).getItemName());
|
|
|
+ map.put("ShippingName", orderEntity.getShippingName());
|
|
|
+ map.put("ShippingNo", orderEntity.getShippingNo());
|
|
|
+ map.put("InvtNo", orderEntity.getOrderProcessRecord().getInvtNo());
|
|
|
+ map.put("Consignee", orderEntity.getConsignee());
|
|
|
+ map.put("Mobile", orderEntity.getMobile());
|
|
|
+ map.put("Province", orderEntity.getProvince());
|
|
|
+ map.put("City", orderEntity.getCity());
|
|
|
+ map.put("District", orderEntity.getDistrict());
|
|
|
+ map.put("Address", orderEntity.getAddress());
|
|
|
+
|
|
|
+ map.put("OrderStartTime", DateUtils.format(orderEntity.getOrderProcessRecord().getAddOrderStartTime(),"yyyy-MM-dd HH:mm:ss"));
|
|
|
+ map.put("ActualPrice", orderEntity.getActualPrice());
|
|
|
+ for (OrderGoodsEntity orderGoodsEntity : orderEntity.getOrderGoodsEntityList()) {
|
|
|
+ map.put("SKU", orderGoodsEntity.getSku());
|
|
|
+ map.put("GoodsName", orderGoodsEntity.getGoodsName());
|
|
|
+ map.put("Number", orderGoodsEntity.getNumber());
|
|
|
+ map.put("RetailPrice", orderGoodsEntity.getRetailPrice());
|
|
|
+ list.add(map);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ ee.addSheetByMap("订单信息", list, header);
|
|
|
+ ee.export(response);
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
}
|