From bf52d518438982eac4072cf6f2d79c5a3d981d16 Mon Sep 17 00:00:00 2001 From: guo Date: Wed, 25 Oct 2023 09:05:41 +0800 Subject: [PATCH] =?UTF-8?q?ai=E9=A2=84=E8=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhgd/xmgl/base/entity/vo/SectorOneVo.java | 2 +- .../zhgd/xmgl/base/entity/vo/SectorVo.java | 40 ++++++++++++++++++- .../com/zhgd/xmgl/constant/DictConstant.java | 5 +++ .../controller/DictionaryItemController.java | 10 +---- .../service/IDictionaryItemService.java | 4 ++ .../impl/DictionaryItemServiceImpl.java | 29 ++++++++++++++ .../impl/PartyMemberManageServiceImpl.java | 2 +- ...iAnalyseHardWareAlarmRecordController.java | 9 +++-- .../AiAnalyseHardWareAlarmRecordMapper.java | 3 +- .../AiAnalyseHardWareAlarmRecordMapper.xml | 39 +++++++++--------- .../IAiAnalyseHardWareAlarmRecordService.java | 3 +- ...AnalyseHardWareAlarmRecordServiceImpl.java | 17 +++++--- 12 files changed, 120 insertions(+), 43 deletions(-) create mode 100644 src/main/java/com/zhgd/xmgl/constant/DictConstant.java diff --git a/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorOneVo.java b/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorOneVo.java index 3dc85592d..f645020fa 100644 --- a/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorOneVo.java +++ b/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorOneVo.java @@ -21,7 +21,7 @@ public class SectorOneVo { @ApiModelProperty("百分比") @JsonInclude(JsonInclude.Include.NON_NULL) private String percent; - @ApiModelProperty("枚举类型") + @ApiModelProperty("枚举类型和字典类型") @JsonInclude(JsonInclude.Include.NON_NULL) private Integer enumType; diff --git a/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java b/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java index 767ec9b1d..a638380b6 100644 --- a/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java +++ b/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java @@ -2,6 +2,7 @@ package com.zhgd.xmgl.base.entity.vo; import cn.hutool.core.util.NumberUtil; import com.zhgd.xmgl.enums.BaseEnum; +import com.zhgd.xmgl.modules.basicdata.entity.DictionaryItem; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; @@ -13,6 +14,9 @@ import java.util.Map; import java.util.function.Function; import java.util.stream.Collectors; +/** + * 扇形图表 + */ @Data @AllArgsConstructor @NoArgsConstructor @@ -39,7 +43,14 @@ public class SectorVo { } - public static SectorVo getSectorVo(List list, BaseEnum[] enums) { + /** + * 获取扇形图表 + * + * @param list + * @param enums + * @return + */ + public static SectorVo getSectorVoByEnum(List list, BaseEnum[] enums) { SectorVo vo = new SectorVo(); List rtList = new ArrayList<>(); Map map = list.stream().collect(Collectors.toMap(SectorOneVo::getEnumType, Function.identity())); @@ -59,6 +70,33 @@ public class SectorVo { return vo; } + /** + * 获取扇形图表 + * + * @param list + * @param dictionaryItems + * @return + */ + public static SectorVo getSectorVoByDict(List list, List dictionaryItems) { + SectorVo vo = new SectorVo(); + List rtList = new ArrayList<>(); + Map map = list.stream().collect(Collectors.toMap(SectorOneVo::getEnumType, Function.identity())); + for (DictionaryItem type : dictionaryItems) { + SectorOneVo vo1 = map.get(Integer.valueOf(type.getData())); + if (vo1 == null) { + vo1 = new SectorOneVo(); + vo1.setCount("0"); + } + vo1.setName(type.getName()); + vo1.setEnumType(Integer.valueOf(type.getData())); + rtList.add(vo1); + } + vo.setData(rtList); + vo.setCount(String.valueOf(rtList.stream().map(o -> Integer.parseInt(o.getCount())).mapToInt(value -> value).sum())); + calPercent(vo); + return vo; + } + /** * 计算总count * diff --git a/src/main/java/com/zhgd/xmgl/constant/DictConstant.java b/src/main/java/com/zhgd/xmgl/constant/DictConstant.java new file mode 100644 index 000000000..647446c25 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/constant/DictConstant.java @@ -0,0 +1,5 @@ +package com.zhgd.xmgl.constant; + +public interface DictConstant { + String AI_ANALYSE_HARD_WARE_ALARM_RECORD_TYPE = "ai_analyse_hard_ware_alarm_record_type"; +} diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DictionaryItemController.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DictionaryItemController.java index 83980501d..a2fea6dee 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DictionaryItemController.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DictionaryItemController.java @@ -62,15 +62,7 @@ public class DictionaryItemController { @GetMapping(value = "/list") public Result> queryList(DictionaryItem dictionaryItem, HttpServletRequest req) { - Result> result = new Result<>(); - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(dictionaryItem, req.getParameterMap(), null, - RefUtil.fieldNames(DictionaryItem::getName)) - .orderByAsc(RefUtil.fieldNameUlc(DictionaryItem::getOrderNum)); - queryWrapper.eq(RefUtil.fieldNameUlc(DictionaryItem::getIsEnable), 1); - List pageList = dictionaryItemService.list(queryWrapper); - result.setSuccess(true); - result.setResult(pageList); - return result; + return Result.success(dictionaryItemService.queryList(dictionaryItem, req)); } /** diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java index a3ebabf60..8ba288c83 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java @@ -4,12 +4,16 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.zhgd.xmgl.modules.basicdata.entity.DictionariesRecord; import com.zhgd.xmgl.modules.basicdata.entity.DictionaryItem; +import javax.servlet.http.HttpServletRequest; import java.util.List; public interface IDictionaryItemService extends IService { + public List getDictList(String dictionaryEncoding); void add(DictionaryItem dictionaryItem); List listEnableByConstructionStage(String projectConstructionStage); + + List queryList(DictionaryItem dictionaryItem, HttpServletRequest req); } diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java index 295d89b62..0f2d4281f 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java @@ -1,17 +1,23 @@ package com.zhgd.xmgl.modules.basicdata.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zhgd.jeecg.common.execption.OpenAlertException; +import com.zhgd.jeecg.common.system.query.QueryGenerator; import com.zhgd.xmgl.modules.basicdata.constant.DictionaryItemConstant; import com.zhgd.xmgl.modules.basicdata.entity.Dictionary; import com.zhgd.xmgl.modules.basicdata.entity.DictionaryItem; import com.zhgd.xmgl.modules.basicdata.mapper.DictionaryItemMapper; import com.zhgd.xmgl.modules.basicdata.mapper.DictionaryMapper; import com.zhgd.xmgl.modules.basicdata.service.IDictionaryItemService; +import com.zhgd.xmgl.util.RefUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; +import javax.servlet.http.HttpServletRequest; import java.util.List; @@ -22,6 +28,19 @@ public class DictionaryItemServiceImpl extends ServiceImpl getDictList(String dictionaryEncoding) { + DictionaryItem di = new DictionaryItem(); + di.setDictionaryEncoding(dictionaryEncoding); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + return queryList(di, request); + } + @Override public void add(DictionaryItem dictionaryItem) { Long dictionaryId = dictionaryItem.getDictionaryId(); @@ -40,4 +59,14 @@ public class DictionaryItemServiceImpl extends ServiceImpl queryList(DictionaryItem dictionaryItem, HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(dictionaryItem, req.getParameterMap(), null, + RefUtil.fieldNames(DictionaryItem::getName)) + .orderByAsc(RefUtil.fieldNameUlc(DictionaryItem::getOrderNum)); + queryWrapper.eq(RefUtil.fieldNameUlc(DictionaryItem::getIsEnable), 1); + List pageList = list(queryWrapper); + return pageList; + } } diff --git a/src/main/java/com/zhgd/xmgl/modules/party/service/impl/PartyMemberManageServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/party/service/impl/PartyMemberManageServiceImpl.java index d2b0f63f9..b6c0e8610 100644 --- a/src/main/java/com/zhgd/xmgl/modules/party/service/impl/PartyMemberManageServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/party/service/impl/PartyMemberManageServiceImpl.java @@ -25,6 +25,6 @@ public class PartyMemberManageServiceImpl extends ServiceImpl countPartyMemberManagePoliticalStatus(HashMap paramMap) { List list = baseMapper.countPartyMemberManagePoliticalStatus(paramMap); - return Result.success(SectorVo.getSectorVo(list, ParamEnum.PartyMemberManagePoliticalStatusEnum.values())); + return Result.success(SectorVo.getSectorVoByEnum(list, ParamEnum.PartyMemberManagePoliticalStatusEnum.values())); } } diff --git a/src/main/java/com/zhgd/xmgl/modules/video/controller/AiAnalyseHardWareAlarmRecordController.java b/src/main/java/com/zhgd/xmgl/modules/video/controller/AiAnalyseHardWareAlarmRecordController.java index 852520cc0..f6e0b6999 100644 --- a/src/main/java/com/zhgd/xmgl/modules/video/controller/AiAnalyseHardWareAlarmRecordController.java +++ b/src/main/java/com/zhgd/xmgl/modules/video/controller/AiAnalyseHardWareAlarmRecordController.java @@ -7,7 +7,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.zhgd.jeecg.common.api.vo.Result; import com.zhgd.jeecg.common.mybatis.EntityMap; -import com.zhgd.xmgl.enums.ParamEnum; +import com.zhgd.xmgl.base.entity.vo.SectorVo; import com.zhgd.xmgl.modules.basicdata.entity.SystemUser; import com.zhgd.xmgl.modules.basicdata.service.ISystemUserService; import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord; @@ -22,7 +22,10 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.Date; @@ -125,7 +128,7 @@ public class AiAnalyseHardWareAlarmRecordController { @ApiImplicitParam(name = "selectType", value = "查询类型,1近七天,2最近30天,3今日,4、24小时", paramType = "query", required = false, dataType = "String"), }) @PostMapping(value = "/getAiAnalyseHardWareAlarmTotal") - public Result getAiAnalyseHardWareAlarmTotal(@RequestBody Map map) { + public Result getAiAnalyseHardWareAlarmTotal(@RequestBody Map map) { return Result.success(aiAnalyseHardWareAlarmRecordService.getAiAnalyseHardWareAlarmTotal(map)); } diff --git a/src/main/java/com/zhgd/xmgl/modules/video/mapper/AiAnalyseHardWareAlarmRecordMapper.java b/src/main/java/com/zhgd/xmgl/modules/video/mapper/AiAnalyseHardWareAlarmRecordMapper.java index 7f5d66c7c..b8783cb46 100644 --- a/src/main/java/com/zhgd/xmgl/modules/video/mapper/AiAnalyseHardWareAlarmRecordMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/video/mapper/AiAnalyseHardWareAlarmRecordMapper.java @@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.video.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zhgd.jeecg.common.mybatis.EntityMap; +import com.zhgd.xmgl.base.entity.vo.SectorOneVo; import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord; import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTrendVo; import org.apache.ibatis.annotations.MapKey; @@ -31,7 +32,7 @@ public interface AiAnalyseHardWareAlarmRecordMapper extends BaseMapper selectAiAnalyseHardWareAlarmList(Map map); - AiAnalyseHardWareAlarmTrendVo getAiAnalyseHardWareAlarmTotal(Map map); + List getAiAnalyseHardWareAlarmTotal(Map map); List> selectAiAnalyseHardWareAlarmTypeCount(Map map); diff --git a/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml index b31c40f0a..e023b0024 100644 --- a/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml @@ -116,19 +116,16 @@