Просмотр исходного кода

Merge remote-tracking branch 'origin/dev' into dev

czh 2 лет назад
Родитель
Сommit
80abb9d99c

+ 71 - 15
sckw-common/sckw-common-core/src/main/java/com/sckw/core/utils/DateUtils.java

@@ -1,6 +1,8 @@
 package com.sckw.core.utils;
 
 import cn.hutool.core.date.DateUtil;
+import org.springframework.util.Assert;
+
 import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -8,10 +10,13 @@ import java.time.Duration;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
-import java.util.*;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.Objects;
 
 /**
  * 日期处理
+ *
  * @author
  */
 public class DateUtils extends DateUtil {
@@ -119,7 +124,7 @@ public class DateUtils extends DateUtil {
     /**
      * 日期格式化 日期格式为:yyyy-MM-dd
      *
-     * @param date    日期
+     * @param date 日期
      * @return 返回yyMMdd格式日期
      */
     public static Date formatDate(String date) {
@@ -128,7 +133,7 @@ public class DateUtils extends DateUtil {
                 SimpleDateFormat df = new SimpleDateFormat(DATE_TIME_PATTERN);
                 return df.parse(date);
             }
-        } catch (Exception e){
+        } catch (Exception e) {
             e.printStackTrace();
         }
         return null;
@@ -138,7 +143,7 @@ public class DateUtils extends DateUtil {
     /**
      * 日期格式化 日期格式为:yyyy-MM-dd
      *
-     * @param date    日期
+     * @param date 日期
      * @return 返回yyMMdd格式日期
      */
     public static String formatDate(Date date) {
@@ -153,7 +158,7 @@ public class DateUtils extends DateUtil {
     /**
      * 日期格式化 日期格式为:yyyy-MM-dd
      *
-     * @param expireDate    日期
+     * @param expireDate 日期
      * @return 返回yyMMdd格式日期
      */
     public static String formatDateToYYMMDD(Date expireDate) {
@@ -196,6 +201,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 方法描述:将时间转换为制定格式的日期时间字符串
+     *
      * @param date
      * @return
      */
@@ -410,6 +416,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 对日期的【分钟】进行加/减
+     *
      * @param date    日期
      * @param minutes 分钟数,负数为减
      * @return 加/减几分钟后的日期
@@ -423,6 +430,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 对日期的【小时】进行加/减
+     *
      * @param date  日期
      * @param hours 小时数,负数为减
      * @return 加/减几小时后的日期
@@ -436,6 +444,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 对日期的【天】进行加/减
+     *
      * @param date 日期
      * @param days 天数,负数为减
      * @return 加/减几天后的日期
@@ -449,6 +458,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 对日期的【周】进行加/减
+     *
      * @param date  日期
      * @param weeks 周数,负数为减
      * @return 加/减几周后的日期
@@ -462,6 +472,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 对日期的【月】进行加/减
+     *
      * @param date   日期
      * @param months 月数,负数为减
      * @return 加/减几月后的日期
@@ -475,6 +486,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 对日期的【年】进行加/减
+     *
      * @param date  日期
      * @param years 年数,负数为减
      * @return 加/减几年后的日期
@@ -488,7 +500,8 @@ public class DateUtils extends DateUtil {
 
     /**
      * 时间比较大小
-     * @param date1  日期
+     *
+     * @param date1 日期
      * @param date2 年数,负数为减
      * @return -1 date1小于date2、0 date1等于date2、1 date1大于date2
      */
@@ -506,6 +519,7 @@ public class DateUtils extends DateUtil {
     /**
      * ltf 获取
      * 获取指定日期所在周的周一
+     *
      * @param date
      * @return
      */
@@ -518,28 +532,29 @@ public class DateUtils extends DateUtil {
         c.add(Calendar.DATE, c.getFirstDayOfWeek() - c.get(Calendar.DAY_OF_WEEK) + 1);
         return c.getTime();
     }
+
     /**
      * 获取startDate日期后month月的日期
+     *
      * @param startDate 开始日期
-     * @param month  几个月后
-     * @author wenzhang
+     * @param month     几个月后
      * @return
+     * @author wenzhang
      */
-    public static Date getMonthDate(Date startDate, int month){
+    public static Date getMonthDate(Date startDate, int month) {
         LocalDateTime localDateTime = startDate.toInstant()
-                .atZone(ZoneId.systemDefault() )
+                .atZone(ZoneId.systemDefault())
                 .toLocalDateTime().plusMonths(month);
-        Date date = Date.from(localDateTime.atZone( ZoneId.systemDefault()).toInstant());
+        Date date = Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant());
         return date;
     }
 
     /**
-     *
      * @param days
-     * @author wenzhang
      * @return
+     * @author wenzhang
      */
-    public static Date getDateAdd(int days){
+    public static Date getDateAdd(int days) {
         SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
         Calendar c = Calendar.getInstance();
         c.add(Calendar.DAY_OF_MONTH, days);
@@ -549,6 +564,7 @@ public class DateUtils extends DateUtil {
 
     /**
      * 计算两个日期的月数
+     *
      * @param startDate
      * @param endDate
      * @return
@@ -564,7 +580,7 @@ public class DateUtils extends DateUtil {
         int month = endCalendar.get(Calendar.MONTH) - startCalendar.get(Calendar.MONTH);
         int day = Math.abs(endCalendar.get(Calendar.DATE) - startCalendar.get(Calendar.DATE));
 
-        if (year == 0 && month == 0){
+        if (year == 0 && month == 0) {
             startCalendar.set(Calendar.DATE, 1);
             endCalendar.set(Calendar.DATE, 1);
             endCalendar.roll(Calendar.DATE, -1);
@@ -594,4 +610,44 @@ public class DateUtils extends DateUtil {
         return monthCount;
     }
 
+    /**
+     * @desc: 获取指定时间的一周/月开始时间
+     * @author: yzc
+     * @date: 2023-09-11 16:08
+     * @Param dateType:  1周、2月
+     * @return: java.util.Date
+     */
+    public static Date getStartTimeByDateType(Integer dateType, LocalDateTime time) {
+        Assert.notNull(dateType, "获取上周/月开始时间,日期类型参数缺失");
+        Assert.notNull(time, "获取上周/月开始时间,日期类型参数缺失");
+        int days = Objects.equals(dateType, 1) ? 6 : 29;
+        LocalDateTime startTime = time.minusDays(days).with(LocalDateTime.MIN);
+        return formatDate(startTime);
+    }
+
+    /**
+     * @desc: 获取指定时间的一周/月结束时间
+     * @author: yzc
+     * @date: 2023-09-11 16:43
+     * @Param dateType: 1周、2月
+     * @return: java.util.Date
+     */
+    public static Date getEndTimeByDateType(Integer dateType, LocalDateTime time) {
+        Assert.notNull(dateType, "获取上周/月结束时间,时间参数缺失");
+        Assert.notNull(time, "获取上周/月结束时间,时间参数缺失");
+        int days = Objects.equals(dateType, 1) ? 7 : 30;
+        LocalDateTime endTime = time.minusDays(days).with(LocalDateTime.MAX);
+        return formatDate(endTime);
+    }
+
+    /**
+     * @desc: LocalDateTime转换为Date
+     * @author: yzc
+     * @date: 2023-09-11 16:42
+     * @Param time:
+     * @return: java.util.Date
+     */
+    public static Date formatDate(LocalDateTime time) {
+        return Date.from(time.atZone(ZoneId.systemDefault()).toInstant());
+    }
 }

+ 10 - 5
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/KwFleetService.java

@@ -11,6 +11,7 @@ import com.sckw.core.utils.StringUtils;
 import com.sckw.fleet.api.RemoteFleetService;
 import com.sckw.report.model.vo.KwfCapacityVo;
 import com.sckw.system.api.RemoteUserService;
+import com.sckw.system.api.model.dto.req.QueryEntInfoByCityCodeAndEntTypesWithPageReqDto;
 import com.sckw.system.api.model.dto.res.KwsEnterpriseResDto;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.stereotype.Service;
@@ -53,11 +54,15 @@ public class KwFleetService {
 
         // 企业数据查询
         List<KwfCapacityVo> list = new ArrayList<>();
-        Integer cityCode = NumberUtils.parseIntV1(params.get("cityCode"));
-        List<Integer> entTypes = new ArrayList<>(Arrays.asList(3, 4));
-        Integer page = PageResult.getPage(params);
-        Integer pageSize = PageResult.getPageSize(params);
-        PageResult pageResult = userService.queryEntInfoByCityCodeAndEntTypesWithPage(cityCode, entTypes, entIds, page, pageSize);
+        int page = PageResult.getPage(params);
+        int pageSize = PageResult.getPageSize(params);
+        QueryEntInfoByCityCodeAndEntTypesWithPageReqDto queryPage = new QueryEntInfoByCityCodeAndEntTypesWithPageReqDto();
+        queryPage.setPage(page);
+        queryPage.setPageSize(pageSize);
+        queryPage.setEntTypeList(new ArrayList<>(Arrays.asList(3, 4)));
+        queryPage.setCityCode(NumberUtils.parseIntV1(params.get("cityCode")));
+        queryPage.setEntName(StringUtils.objectStr(params.get("firmName")));
+        PageResult pageResult = userService.queryEntInfoByCityCodeAndEntTypesWithPage(queryPage);
         List<KwsEnterpriseResDto> ents = JSON.parseArray(JSON.toJSONString(pageResult.getList()), KwsEnterpriseResDto.class);
         for (KwsEnterpriseResDto ent:ents) {
             KwfCapacityVo capacity = new KwfCapacityVo();