src/main/java/com/nanjing/water/common/util/ThreadPoolUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/nanjing/water/host/controller/AlarmHistoryController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/nanjing/water/repository/vo/WaterFacilityVO.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/test/java/com/nanjing/water/DateTimeTest.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/nanjing/water/common/util/ThreadPoolUtil.java
@@ -6,7 +6,7 @@ /** * 线程池管理类 */ public final class ThreadPoolUtil { public final class ThreadPoolUtil { /** * 多线程允许最大并发线程数的默认大小 */ src/main/java/com/nanjing/water/host/controller/AlarmHistoryController.java
对比新文件 @@ -0,0 +1,125 @@ /** # __----~~~~~~~~~~~------___ # . . ~~//====...... __--~ ~~ # -. \_|// |||\\ ~~~~~~::::... /~ # ___-==_ _-~o~ \/ ||| \\ _/~~- # __---~~~.==~||\=_ -_--~/_-~|- |\\ \\ _/~ # _-~~ .=~ | \\-_ '-~7 /- / || \ / # .~ .~ | \\ -_ / /- / || \ / # / ____ / | \\ ~-_/ /|- _/ .|| \ / # |~~ ~~|--~~~~--_ \ ~==-/ | \~--===~~ .\ # ' ~-| /| |-~\~~ __--~~ # |-~~-_/ | | ~\_ _-~ /\ # / \ \__ \/~ \__ # _--~ _/ | .-~~____--~-/ ~~==. # ((->/~ '.|||' -_| ~~-/ , . _|| # -_ ~\ ~~---l__i__i__i--~~_/ # _-~-__ ~) \--______________--~~ # //.-~~~-~_--~- |-------~~~~~~~~ # //.-~~~--\ # 神兽保佑 # 永无BUG! */ package com.nanjing.water.host.controller; import com.nanjing.water.common.ExecutedResult; import com.nanjing.water.common.PagerResult; import com.nanjing.water.common.util.ParameterUtil; import com.nanjing.water.common.validator.ParameterValidateResult; import com.nanjing.water.common.validator.ParameterValidator; import com.nanjing.water.entity.request.alarmhistory.ReqCreateAlarmHistory; import com.nanjing.water.entity.request.alarmhistory.ReqModifyAlarmHistory; import com.nanjing.water.entity.search.SearchAlarmHistory; import com.nanjing.water.host.BasicController; import com.nanjing.water.repository.vo.AlarmHistoryVO; import com.nanjing.water.service.AlarmHistoryService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; /** * 60.报警信息 * @author lin.liu * @order 60 */ @RestController @RequestMapping(value = "alarmHistory") public class AlarmHistoryController extends BasicController { @Autowired private AlarmHistoryService service; /** * 创建[报警信息] * @author lin.liu */ @PostMapping(value = "create") public ExecutedResult<String> create(@RequestBody ReqCreateAlarmHistory request) { //#region 参数验证 ParameterValidator validator = new ParameterValidator() // 非空 .addNotNullOrEmpty(ParameterUtil.named("报警参数"), request.getCode()) .addNotNullOrEmpty(ParameterUtil.named("设备id"), request.getFacilityId()) .addNotNullOrEmpty(ParameterUtil.named("设备名称"), request.getFacilityName()) .addNotNullOrEmpty(ParameterUtil.named("报警描述"), request.getDescription()) // 限制最大长度 //.addLengthMax(ParameterUtil.named("名称"), request.getName(), ConstantFactory.LENGTH_MAX50) ; ParameterValidateResult result = validator.validate(); if (result.getIsFiled()) { return failed(result.getErrorMsg()); } //#endregion return service.create(request); } /** * 编辑[报警信息] * @author lin.liu */ @PostMapping(value = "modify") public ExecutedResult<String> modify(@RequestBody ReqModifyAlarmHistory request) { //#region 参数验证 ParameterValidator validator = new ParameterValidator() // 必须大于0 .addGreater(ParameterUtil.named("[报警信息]id"), request.getId(), 0L) // 非空 //.addNotNullOrEmpty(ParameterUtil.named("名称"), request.getName()) // 限制最大长度 //.addLengthMax(ParameterUtil.named("名称"), request.getName(), ConstantFactory.LENGTH_MAX50) ; ParameterValidateResult result = validator.validate(); if (result.getIsFiled()) { return failed(result.getErrorMsg()); } //#endregion return service.modify(request); } /** * 获取[报警信息] * @author lin.liu */ @GetMapping(value = "get/{id}") public ExecutedResult<AlarmHistoryVO> get(@PathVariable Long id) { return service.get(id); } /** * 报警确认 * @author lin.liu */ @GetMapping(value = "editConfirm") public ExecutedResult<String> editConfirm(Long id,Integer status) { return service.editConfirm(id,status); } /** * 查询[报警信息] * @author lin.liu */ @PostMapping(value = "search") public ExecutedResult<PagerResult<AlarmHistoryVO>> search(@RequestBody SearchAlarmHistory request) { return service.search(request); } } src/main/java/com/nanjing/water/repository/vo/WaterFacilityVO.java
@@ -39,6 +39,7 @@ public class WaterFacilityVO extends WaterFacilityPO implements BasicVO { private String pointName; private String facilityTypeName; private String totalTime; private List<WaterFacilityParameterVO> parameterVOList; @Override src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java
@@ -264,6 +264,7 @@ List<WaterFacilityParameterPO> parameterPOList = mapper.getList(); if(ListUtil.isNotNullOrEmpty(facilityPOList)){ result = CopierUtil.mapTo(facilityPOList, WaterFacilityVO.class); int sumTime=0; for(WaterFacilityVO facilityVO:result){ List<WaterFacilityParameterPO> collect = parameterPOList.stream().filter(x -> x.getFacilityId().equals(facilityVO.getId())).collect(Collectors.toList()); if(ListUtil.isNotNullOrEmpty(collect)){ @@ -280,25 +281,36 @@ if("true".equals(parameterVO.getColumnValue())){ parameterVO.setColumnValue("开"); } // if(parameterVO.getColumnsCode().equals("B001Time")||parameterVO.getColumnsCode().equals("B002Time")){ // BigDecimal bigDecimal=new BigDecimal(parameterVO.getColumnValue()).setScale(2,RoundingMode.DOWN); // if(bigDecimal.compareTo(new BigDecimal(60).setScale(2,RoundingMode.DOWN))>0){ // BigDecimal data = bigDecimal.divide(new BigDecimal(60),2,BigDecimal.ROUND_HALF_UP); // parameterVO.setColumnValue(data+"分"); // } // if(bigDecimal.compareTo(new BigDecimal(3600))>0){ // BigDecimal data = bigDecimal.divide(new BigDecimal(3600),2,BigDecimal.ROUND_HALF_UP); // parameterVO.setColumnValue(data+"时"); // } // } if(parameterVO.getColumnsCode().equals("B001TimeSum")||parameterVO.getColumnsCode().equals("B002TimeSum")){ int time = new BigDecimal(parameterVO.getColumnValue()).intValue(); sumTime=sumTime+time; if(sumTime>0){ String timeString = timeString(sumTime); facilityVO.setTotalTime(timeString); } } if(parameterVO.getColumnsCode().equals("B001Time")||parameterVO.getColumnsCode().equals("B002Time")||parameterVO.getColumnsCode().equals("B001TimeSum")||parameterVO.getColumnsCode().equals("B002TimeSum")){ //计算时分秒 Integer time= new BigDecimal(parameterVO.getColumnValue()).intValue(); if(time>0){ String timeString = timeString(time); parameterVO.setColumnValue(timeString); } } } facilityVO.setParameterVOList(parameterVOList); } } } return ExecutedResult.success(result); } public String timeString(Integer time){ int hours=time/3600; int minutes=(time%3600)/60; int seconds=time%60; return hours+"时"+minutes+"分"+seconds+"秒"; } protected ExecutedResult<WaterFacilityParameterPO> check4Id(Long id) { WaterFacilityParameterPO exists = mapper.get(id); if (Objects.isNull(exists)) { src/test/java/com/nanjing/water/DateTimeTest.java
@@ -7,14 +7,19 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.time.Duration; @RunWith(SpringJUnit4ClassRunner.class) public class DateTimeTest { @Test public void time2BCDTest() { BigDecimal a=BigDecimal.valueOf(80); BigDecimal b = BigDecimal.valueOf(60); BigDecimal bigDecimal = a.divide(b,2,BigDecimal.ROUND_HALF_UP); System.out.println(bigDecimal); int a=100; int hours=a/3600; int minutes=(a%3600)/60; int seconds=a%60; System.out.printf("%d:%02d:%02d%n", hours, minutes, seconds); } }