瀏覽代碼

优化订单导出功能

赵冬冬 4 年之前
父節點
當前提交
247dd211e8

+ 7 - 2
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/OmsOrderQueryParam.java

@@ -3,6 +3,9 @@ package com.hwrj.cloud.admin.dto;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
 
 /**
  * 订单查询参数
@@ -25,8 +28,10 @@ public class OmsOrderQueryParam {
     private String createTime;
 
     @ApiModelProperty(value = "开始时间")
-    private String startTime;
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
+    private Date startTime;
 
     @ApiModelProperty(value = "结束时间")
-    private String endTime;
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
+    private Date endTime;
 }

+ 17 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/OmsOrderServiceImpl.java

@@ -12,9 +12,11 @@ import com.hwrj.cloud.admin.model.OmsOrder;
 import com.hwrj.cloud.admin.model.OmsOrderExample;
 import com.hwrj.cloud.admin.model.OmsOrderOperateHistory;
 import com.hwrj.cloud.admin.service.OmsOrderService;
+import com.hwrj.cloud.common.exception.GlobalException;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import java.util.Date;
 import java.util.List;
@@ -156,6 +158,21 @@ public class OmsOrderServiceImpl implements OmsOrderService {
 
     @Override
     public List<OmsOrderExcel> listExcel(OmsOrderQueryParam queryParam) {
+
+        Date endTime = queryParam.getEndTime();
+
+        Date startTime = queryParam.getStartTime();
+        if (!StringUtils.isEmpty(endTime) && !StringUtils.isEmpty(startTime)) {
+            long end = endTime.getTime();
+            long start = startTime.getTime();
+            if (end - start < 0) {
+                throw new GlobalException("开始时间不能大于结束时间!");
+            } else if (end - start > 31536000000L) {
+                throw new GlobalException("时间区间不能超过一年!");
+            }
+        } else {
+            throw new GlobalException("数据量过大,请输入开始时间和结束时间!");
+        }
         List<OmsOrder> list = orderDao.getList(queryParam);
         List<OmsOrderExcel> collect = list.stream().map(x -> {
             OmsOrderExcel omsOrderExcel = new OmsOrderExcel();

+ 0 - 1
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/PmsProductServiceImpl.java

@@ -267,7 +267,6 @@ public class PmsProductServiceImpl implements PmsProductService {
 
     @Override
     public List<PmsProduct> list(PmsProductQueryParam productQueryParam, Integer pageSize, Integer pageNum) {
-
         Long compId = CurrUserUtil.getCompIdInfo();
         PageHelper.startPage(pageNum, pageSize);
         PmsProductExample productExample = new PmsProductExample();

+ 35 - 0
forest-common/src/main/java/com/hwrj/cloud/common/util/DateUtil.java

@@ -0,0 +1,35 @@
+package com.hwrj.cloud.common.util;
+
+import java.util.Calendar;
+import java.util.Date;
+
+/**
+ * 日期工具类
+ * Created by macro on 2019/1/29.
+ */
+public class DateUtil {
+
+    /**
+     * 从Date类型的时间中提取日期部分
+     */
+    public static Date getDate(Date date) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        calendar.set(Calendar.HOUR_OF_DAY, 0);
+        calendar.set(Calendar.MINUTE, 0);
+        calendar.set(Calendar.SECOND, 0);
+        return calendar.getTime();
+    }
+
+    /**
+     * 从Date类型的时间中提取时间部分
+     */
+    public static Date getTime(Date date) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        calendar.set(Calendar.YEAR, 1970);
+        calendar.set(Calendar.MONTH, 0);
+        calendar.set(Calendar.DAY_OF_MONTH, 1);
+        return calendar.getTime();
+    }
+}