emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/EmergencyRpcAPi.java
@@ -1,10 +1,10 @@ package com.gkhy.safePlatform.emergency.rpc.api; import com.gkhy.safePlatform.commons.vo.SearchResultVO; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteTimeRPCResp; import java.util.List; emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/EmergencyDrillExecuteCountData.java
对比新文件 @@ -0,0 +1,25 @@ package com.gkhy.safePlatform.emergency.rpc.api.model; public class EmergencyDrillExecuteCountData { private Integer num ; private String name ; public Integer getNum() { return num; } public void setNum(Integer num) { this.num = num; } public String getName() { return name; } public void setName(String name) { this.name = name; } } emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/dto/req/EmergencyExecuteNumRPCReq.java
文件名从 emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/req/EmergencyExecuteNumRPCReq.java 修改 @@ -1,12 +1,14 @@ package com.gkhy.safePlatform.emergency.rpc.api.model.req; package com.gkhy.safePlatform.emergency.rpc.api.model.dto.req; public class EmergencyExecuteNumRPCReq { /** * 1、指定年份,查该年度12个月份的 * 2、指定年份月份,查该指定月份的 */ // 部门id private Long deptId; // 查询时间类型 1-年 2-月 private Integer timeType; //年 private Integer year; @@ -20,14 +22,6 @@ public void setDeptId(Long deptId) { this.deptId = deptId; } public Integer getTimeType() { return timeType; } public void setTimeType(Integer timeType) { this.timeType = timeType; } public Integer getYear() { emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/dto/req/EmergencyExecuteTimeRPCReq.java
文件名从 emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/req/EmergencyExecuteTimeRPCReq.java 修改 @@ -1,4 +1,4 @@ package com.gkhy.safePlatform.emergency.rpc.api.model.req; package com.gkhy.safePlatform.emergency.rpc.api.model.dto.req; public class EmergencyExecuteTimeRPCReq { emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/dto/resp/EmergencyExecuteNumRPCResp.java
对比新文件 @@ -0,0 +1,54 @@ package com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp; import com.gkhy.safePlatform.emergency.rpc.api.model.EmergencyDrillExecuteCountData; import java.util.List; import java.util.Map; public class EmergencyExecuteNumRPCResp { // 部门id private Long deptId; // 部门名称 private String deptName; // 部门级别 private Integer deptLevel; // 名称+数据 private List<Map<String ,String>> data; public Long getDeptId() { return deptId; } public void setDeptId(Long deptId) { this.deptId = deptId; } public String getDeptName() { return deptName; } public void setDeptName(String deptName) { this.deptName = deptName; } public Integer getDeptLevel() { return deptLevel; } public void setDeptLevel(Integer deptLevel) { this.deptLevel = deptLevel; } public List<Map<String, String>> getData() { return data; } public void setData(List<Map<String, String>> data) { this.data = data; } } emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/dto/resp/EmergencyExecuteTimeRPCResp.java
文件名从 emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/resp/EmergencyExecuteTimeRPCResp.java 修改 @@ -1,7 +1,5 @@ package com.gkhy.safePlatform.emergency.rpc.api.model.resp; package com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp; import java.util.Date; public class EmergencyExecuteTimeRPCResp { @@ -15,7 +13,7 @@ private Integer deptLevel; //上次演练的时间 private Date lastTime; private String lastTime; // 距离上次演练的天数 private Integer days; @@ -44,11 +42,11 @@ this.deptLevel = deptLevel; } public Date getLastTime() { public String getLastTime() { return lastTime; } public void setLastTime(Date lastTime) { public void setLastTime(String lastTime) { this.lastTime = lastTime; } emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/model/resp/EmergencyExecuteNumRPCResp.java
文件已删除 emergency/emergency-rpc-provider/src/main/java/com/gkhy/safePlatform/emergency/rpc/provider/EmergencyRpcProvider.java
@@ -1,13 +1,12 @@ package com.gkhy.safePlatform.emergency.rpc.provider; import com.gkhy.safePlatform.commons.enums.ResultCodes; import com.gkhy.safePlatform.commons.vo.SearchResultVO; import com.gkhy.safePlatform.emergency.rpc.api.EmergencyRpcAPi; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.service.EmergencyCountService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyCountController.java
@@ -8,8 +8,10 @@ import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesCountRespDTO; import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.service.EmergencyCountService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -44,9 +46,9 @@ /** * 应急演练次数统计图 */ @RequestMapping(value = "/getTimeByDeptId",method = RequestMethod.POST) public SearchResultVO<EmergencyExecuteTimeRPCResp> getTimeByDeptId(@RequestBody EmergencyExecuteTimeRPCReq query){ return emergencyCountService.getTimeByDeptId(query); @RequestMapping(value = "/getNumByDeptId",method = RequestMethod.POST) public SearchResultVO<EmergencyExecuteNumRPCResp> getNumByDeptId(@RequestBody EmergencyExecuteNumRPCReq query){ return emergencyCountService.getNumByDeptId(query); } } emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/enums/EmergencyResultCodes.java
@@ -70,6 +70,8 @@ APPROVE_NOT_EXIST("A1005" , "审批记录不存在"), YEAR_NULL("Y1001" , "年份不能为空"), ERROR("A3000", "未知错误"); private String code; emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencyDrillExecuteInfoRepository.java
@@ -2,10 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteCountData; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfo; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoPageDO; import com.gkhy.safePlatform.emergency.entity.*; import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteDBQuery; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -32,4 +29,6 @@ List<EmergencyDrillExecuteCountData> selectByMonthAndDept(@Param("startTime") String startTime ,@Param("endTime")String endTime ,@Param("deptIds")List<Long> deptIds); List<EmergencyDrillExecuteCountData> selectByYearAndDept(@Param("startTime") String startTime ,@Param("endTime")String endTime ,@Param("deptIds")List<Long> deptIds); String selectEmergencyDrillExecuteIntervalTimeByDeptId(@Param("deptId")Long deptId); } emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyCountService.java
@@ -7,10 +7,10 @@ import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesCountRespDTO; import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteTimeRPCResp; import java.util.List; emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencyDrillExecuteInfoService.java
@@ -2,10 +2,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteCountData; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfo; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoPageDO; import com.gkhy.safePlatform.emergency.entity.*; import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteDBQuery; import java.util.List; @@ -30,4 +27,6 @@ List<EmergencyDrillExecuteCountData> selectByMonthAndDept(String startTime ,String endTime ,List<Long> deptIds); List<EmergencyDrillExecuteCountData> selectByYearAndDept(String startTime ,String endTime ,List<Long> deptIds); String selectEmergencyDrillExecuteIntervalTimeByDeptId(Long deptId); } emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencyDrillExecuteInfoServiceImpl.java
@@ -2,10 +2,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteCountData; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfo; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoPageDO; import com.gkhy.safePlatform.emergency.entity.*; import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteDBQuery; import com.gkhy.safePlatform.emergency.repository.EmergencyDrillExecuteInfoRepository; import com.gkhy.safePlatform.emergency.service.baseService.EmergencyDrillExecuteInfoService; @@ -65,4 +62,9 @@ return emergencyDrillExecuteInfoRepository.selectByYearAndDept(startTime,endTime,deptIds); } @Override public String selectEmergencyDrillExecuteIntervalTimeByDeptId(Long deptId) { return emergencyDrillExecuteInfoRepository.selectEmergencyDrillExecuteIntervalTimeByDeptId(deptId); } } emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyCountServiceImpl.java
@@ -10,17 +10,20 @@ import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.commons.vo.SearchResultVO; import com.gkhy.safePlatform.emergency.entity.*; import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes; import com.gkhy.safePlatform.emergency.excepiton.EmergencyException; import com.gkhy.safePlatform.emergency.model.dto.resp.*; import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.service.EmergencyCountService; import com.gkhy.safePlatform.emergency.service.baseService.EmergencyDrillExecuteInfoService; import com.gkhy.safePlatform.emergency.service.baseService.EmergencySuppliesInfoService; import com.gkhy.safePlatform.emergency.utils.TimeUtils; import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -45,17 +48,16 @@ public SearchResultVO<EmergencyExecuteTimeRPCResp> getTimeByDeptId(EmergencyExecuteTimeRPCReq query) { EmergencyExecuteTimeRPCResp emergencyExecuteTimeRPCResp = new EmergencyExecuteTimeRPCResp(); ResultVO<DepInfoRPCRespDTO> rpcResult = accountDepartmentService.getDepInfoByDepId(query.getDeptId()); if (rpcResult != null && rpcResult.getCode().equals(ResultCodes.OK.getCode())) { if (rpcResult.getData() != null) { DepInfoRPCRespDTO dep = (DepInfoRPCRespDTO) rpcResult.getData(); emergencyExecuteTimeRPCResp.setDeptId(dep.getDepId()); emergencyExecuteTimeRPCResp.setDeptName(dep.getDepName()); emergencyExecuteTimeRPCResp.setDeptLevel(dep.getDepLevel()); } } else { throw new BusinessException(ResultCodes.CLIENT_DEP_NOT_EXIST); } // 获取id对应的部门 DepInfoRPCRespDTO depInfoRPCRespDTO = getDepInfoByDepId(query.getDeptId()); emergencyExecuteTimeRPCResp.setDeptId(depInfoRPCRespDTO.getDepId()); emergencyExecuteTimeRPCResp.setDeptName(depInfoRPCRespDTO.getDepName()); emergencyExecuteTimeRPCResp.setDeptLevel(depInfoRPCRespDTO.getDepLevel()); String lastTime = emergencyDrillExecuteInfoService.selectEmergencyDrillExecuteIntervalTimeByDeptId(query.getDeptId()); emergencyExecuteTimeRPCResp.setLastTime(lastTime); emergencyExecuteTimeRPCResp.setDays(TimeUtils.differentDays(lastTime, TimeUtils.formatDate(new Date()))); return new SearchResultVO<>( false, null, @@ -75,7 +77,7 @@ null, null, null, (long)list.size(), (long) list.size(), list, ResultCodes.OK ); @@ -83,7 +85,43 @@ @Override public SearchResultVO<EmergencyExecuteNumRPCResp> getNumByDeptId(EmergencyExecuteNumRPCReq query) { return null; if (query.getYear()==null){ throw new EmergencyException(EmergencyResultCodes.YEAR_NULL); } EmergencyExecuteNumRPCResp emergencyExecuteNumRPCResp = new EmergencyExecuteNumRPCResp(); // 获取id对应的部门 DepInfoRPCRespDTO depInfoRPCRespDTO = getDepInfoByDepId(query.getDeptId()); emergencyExecuteNumRPCResp.setDeptId(depInfoRPCRespDTO.getDepId()); emergencyExecuteNumRPCResp.setDeptName(depInfoRPCRespDTO.getDepName()); emergencyExecuteNumRPCResp.setDeptLevel(depInfoRPCRespDTO.getDepLevel()); // 查到该年度对应月份的数据 List<Map<String,String>> mapList = new ArrayList<>(); String startTime = TimeUtils.getYearFirst(query.getYear()); String endTime = TimeUtils.getYearLast(query.getYear()); List<Long> deptIds = new ArrayList<>(); deptIds.add(query.getDeptId()); List<EmergencyDrillExecuteCountData> emergencyDrillExecuteCountDataList = emergencyDrillExecuteInfoService.selectByMonthAndDept(startTime, endTime, deptIds); if (!emergencyDrillExecuteCountDataList.isEmpty()){ for (EmergencyDrillExecuteCountData emergencyDrillExecuteCountData : emergencyDrillExecuteCountDataList){ Map<String ,String> map = new HashMap<>(); map.put("name",emergencyDrillExecuteCountData.getName()); map.put("num",emergencyDrillExecuteCountData.getNum().toString()); mapList.add(map); } } emergencyExecuteNumRPCResp.setData(mapList); return new SearchResultVO<>( false, null, null, null, 1L, emergencyExecuteNumRPCResp, ResultCodes.OK ); } @Override @@ -91,6 +129,18 @@ return null; } public DepInfoRPCRespDTO getDepInfoByDepId(Long deptId) { DepInfoRPCRespDTO dep = new DepInfoRPCRespDTO(); ResultVO<DepInfoRPCRespDTO> rpcResult = accountDepartmentService.getDepInfoByDepId(deptId); if (rpcResult != null && rpcResult.getCode().equals(ResultCodes.OK.getCode())) { if (rpcResult.getData() != null) { dep = (DepInfoRPCRespDTO) rpcResult.getData(); } } else { throw new BusinessException(ResultCodes.CLIENT_DEP_NOT_EXIST); } return dep; } @Override public ResultVO<EmergencyDrillExecuteCountRespDTO> countEmergencyDrillExecute(EmergencyDrillExecuteCountQuery query) { @@ -105,15 +155,15 @@ List<EmergencyDrillExecuteCountData> list = new ArrayList<>(); // 获取部门id集合 List<Long> deptIds = new ArrayList<>(); ResultVO<List<Long>> rpcResult = accountDepartmentService.listDepAndSubDepIds(query.getDeptId()); deptIds.add(query.getDeptId()); /* ResultVO<List<Long>> rpcResult = accountDepartmentService.listDepAndSubDepIds(query.getDeptId()); if (rpcResult != null && rpcResult.getCode().equals(ResultCodes.OK.getCode())) { if (rpcResult.getData() != null) { deptIds = (List<Long>) rpcResult.getData(); } } else { throw new BusinessException(ResultCodes.CLIENT_DEP_NOT_EXIST); } }*/ // 获取时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); Date date = new Date(); @@ -187,19 +237,4 @@ ); } public static void main(String[] args) { Date date = new Date();//获取当前日期 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//格式化一下 Calendar calendar1 = Calendar.getInstance();//获取对日期操作的类对象 //两种写法都可以获取到前三天的日期 calendar1.set(Calendar.DAY_OF_YEAR, calendar1.get(Calendar.DAY_OF_YEAR) - 40); //在当前时间的基础上获取前三天的日期 // calendar1.add(Calendar.DATE, -40); //add方法 参数也可传入 月份,获取的是前几月或后几月的日期 //calendar1.add(Calendar.MONTH, -3); Date today = calendar1.getTime(); String time = sdf.format(today); System.out.println(time); } } emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/utils/TimeUtils.java
@@ -1,23 +1,58 @@ package com.gkhy.safePlatform.emergency.utils; import com.gkhy.safePlatform.commons.enums.E; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class TimeUtils { public static String formatDate(Date date){ public static String formatDate(Date date) { SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd"); String sDate = f.format(date); return sDate; } public static void main(String[] args) { String XXX= "2022-09-01"; String EEE = formatDate(new Date()); int a = differentDays(XXX, EEE); System.out.println(a); } /** * 计算两个时间的间隔 * date2比date1多的天数 */ public static int differentDays(String date1, String date2) { int days = 0; try { DateFormat dft = new SimpleDateFormat("yyyy-MM-dd"); Date star = dft.parse(date1); Date end = dft.parse(date2);//结束时间 Long starTime = star.getTime(); Long endTime = end.getTime(); Long num = endTime - starTime;//时间戳相差的毫秒数 days = (int) (num / 24 / 60 / 60 / 1000); } catch (ParseException e) { e.printStackTrace(); } return days; } /** * 获取某年第一天日期 * * @param year 年份 * @return Date */ public static String getYearFirst(int year){ public static String getYearFirst(int year) { Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, year); @@ -27,10 +62,11 @@ /** * 获取某年最后一天日期 * * @param year 年份 * @return Date */ public static String getYearLast(int year){ public static String getYearLast(int year) { Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, year); @@ -42,28 +78,30 @@ /** * 获取某月第一天日期 * * @param month 年份 * @return Date */ public static String getMonthFirst(int year ,int month){ public static String getMonthFirst(int year, int month) { Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, year); calendar.set(Calendar.MONTH, month-1); calendar.set(Calendar.MONTH, month - 1); Date currYearFirst = calendar.getTime(); return formatDate(currYearFirst); } /** * 获取某月最后一天日期 * * @param month 年份 * @return Date */ public static String getMonthLast(int year ,int month){ public static String getMonthLast(int year, int month) { Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, year); calendar.set(Calendar.MONTH, month-1); calendar.set(Calendar.MONTH, month - 1); calendar.roll(Calendar.DAY_OF_MONTH, -1); Date currYearLast = calendar.getTime(); @@ -71,10 +109,4 @@ } public static void main(String[] args) { Calendar date = Calendar.getInstance(); int year = date.get(Calendar.YEAR); int month = date.get(Calendar.MONTH); System.out.println(getMonthLast(year,2)); } } emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml
@@ -172,4 +172,15 @@ GROUP BY DATE_FORMAT( a.gmt_create, '%Y' ) </select> <select id="selectEmergencyDrillExecuteIntervalTimeByDeptId" resultType="java.lang.String"> SELECT DATE_FORMAT( max( a.gmt_create ), '%Y-%m-%d' ) AS lastTime FROM `emergency_drill_execute` a INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id AND b.department_id = #{deptId} </select> </mapper>