diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalLineDetailResultDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalLineDetailResultDTO.java new file mode 100644 index 000000000..ebe49918e --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalLineDetailResultDTO.java @@ -0,0 +1,35 @@ +package com.elink.esua.epdc.dto.item.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 大屏-解决趋势-SQL返回值DTO + * @Author wgf + * @Date 2022-10-11 + */ +@Data +public class ResolveTotalLineDetailResultDTO implements Serializable { + private static final long serialVersionUID = -2494874960456321677L; + + /** + * 时间 + */ + private String time; + + /** + * 解决 + */ + private String jj; + + /** + * 基本解决 + */ + private String jbjj; + + /** + * 未解决 + */ + private String wjj; +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalLineResultDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalLineResultDTO.java new file mode 100644 index 000000000..6348b54fe --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalLineResultDTO.java @@ -0,0 +1,36 @@ +package com.elink.esua.epdc.dto.item.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * 大屏-极倔趋势-返回值DTO + * @Author wgf + * @Date 2022-10-11 + */ +@Data +public class ResolveTotalLineResultDTO implements Serializable { + private static final long serialVersionUID = -2494874960456321677L; + + /** + * 横坐标 + */ + private List xValue; + + /** + * 解决 + */ + private List jjArr; + + /** + * 基本解决 + */ + private List jbjjArr; + + /** + * 未解决 + */ + private List wjjArr; +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalPieResultDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalPieResultDTO.java new file mode 100644 index 000000000..1f4da884d --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ResolveTotalPieResultDTO.java @@ -0,0 +1,30 @@ +package com.elink.esua.epdc.dto.item.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 大屏-解决统计-返回值DTO + * @Author wgf + * @Date 2022-10-10 + */ +@Data +public class ResolveTotalPieResultDTO implements Serializable { + private static final long serialVersionUID = -2494874960456321677L; + + /** + * 名称 + */ + private String name; + + /** + * 值 + */ + private String value; + + /** + * 占比 + */ + private String proportion; +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemScreenCountController.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemScreenCountController.java index e09fb1c5e..d5498719d 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemScreenCountController.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemScreenCountController.java @@ -117,5 +117,32 @@ public class ItemScreenCountController { } + /** + * @Description: 大屏-解决统计 + * @param formDTO: + * @Return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: lichao + * @Date: 2023/5/31 13:54 + */ + @GetMapping("resolveTotal") + public Result> resolveTotal(ScreenTotalFormDTO formDTO) { + List list = itemService.resolveTotal(formDTO); + return new Result>().ok(list); + } + + /** + * @Description: 大屏-解决趋势 + * @param formDTO: + * @Return com.elink.esua.epdc.commons.tools.utils.Result + * @Author: lichao + * @Date: 2023/5/31 13:54 + */ + @GetMapping("resolveTrend") + public Result resolveTrend(ScreenTotalFormDTO formDTO) { + ResolveTotalLineResultDTO list = itemService.resolveTrend(formDTO); + return new Result().ok(list); + } + + } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java index 07b3e3d5d..198cbec31 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java @@ -502,6 +502,14 @@ public interface ItemDao extends BaseDao { */ List evaluationTotal(ScreenTotalFormDTO formDTO); + /** + * 解决统计 + * + * @param formDTO + * @return + */ + ListresolveTotal(ScreenTotalFormDTO formDTO); + /** * 满意度趋势-日数据 * @@ -510,6 +518,14 @@ public interface ItemDao extends BaseDao { */ List getEvaluationDataListByDays(ScreenTotalFormDTO formDTO); + /** + * 解决趋势-日数据 + * + * @param formDTO + * @return + */ + List getResolveDataListByDays(ScreenTotalFormDTO formDTO); + /** * 满意度趋势-月数据 * @@ -517,6 +533,13 @@ public interface ItemDao extends BaseDao { * @return */ List getEvaluationDataListByMonths(ScreenTotalFormDTO formDTO); + /** + * 解决趋势-月数据 + * + * @param formDTO + * @return + */ + List getResolveDataListByMonths(ScreenTotalFormDTO formDTO); List getItemStatisListPage(Map params); diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java index 2e318f841..dc389b3fb 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java @@ -783,4 +783,22 @@ public interface ItemService extends BaseService { Result changeRepeat(ItemChangeRepeatDTO dto); Result changeCategory(ItemChangeCategoryDTO dto); + + /** + * @Description: 解决统计 + * @param formDTO: + * @Return java.util.List + * @Author: lichao + * @Date: 2023/5/31 16:06 + */ + List resolveTotal(ScreenTotalFormDTO formDTO); + + /** + * @Description: 解决趋势 + * @param formDTO: + * @Return com.elink.esua.epdc.dto.item.result.ResolveTotalLineResultDTO + * @Author: lichao + * @Date: 2023/5/31 16:06 + */ + ResolveTotalLineResultDTO resolveTrend(ScreenTotalFormDTO formDTO); } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java index fe3eeccd3..ac219ae81 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java @@ -2240,6 +2240,11 @@ public class ItemServiceImpl extends BaseServiceImpl implem */ private SendEventResultDto reportCaseNew(ItemHandleSubmitFormDTO dto) throws Exception { ItemEntity entity = baseDao.selectById(dto.getId()); + // 删除& 符号 + if (StringUtils.isNotBlank(entity.getIssueAddress()) && entity.getIssueAddress().contains("&")){ + String address = entity.getIssueAddress().replace("&", "-"); + entity.setIssueAddress(address); + } // 组装上报信息 SendEventFormDto sendEventFormDto = packageSendEventEntity(entity, dto); // 接口请求返回实体,getCode 1失败 0成功(非空) @@ -5185,6 +5190,70 @@ public class ItemServiceImpl extends BaseServiceImpl implem return new Result(); } + @Override + public List resolveTotal(ScreenTotalFormDTO formDTO) { + List list = baseDao.resolveTotal(formDTO); + + return list; + } + + @Override + public ResolveTotalLineResultDTO resolveTrend(ScreenTotalFormDTO formDTO) { + ResolveTotalLineResultDTO resultDTO = new ResolveTotalLineResultDTO(); + + // 时间数组 + List timeArr = new ArrayList<>(); + // 解决数组 + List jjArr = new ArrayList<>(); + // 未解决数组 + List wjjArr = new ArrayList<>(); + // 基本解决数组 + List jbjjArr = new ArrayList<>(); + + List dataList = new ArrayList<>(); + if (formDTO.getYearMonth().length() > 4) { + String[] arr = formDTO.getYearMonth().split("-"); + // 按日统计 + timeArr = YearMonthUtils.getMonthFullDay(Integer.parseInt(arr[0]), Integer.parseInt(arr[1])); + formDTO.setTimeArr(timeArr); + dataList = baseDao.getResolveDataListByDays(formDTO); + + } else { + // 按月统计 + timeArr = YearMonthUtils.getMonthBetween(formDTO.getYearMonth() + "-01", formDTO.getYearMonth() + "-12"); + formDTO.setTimeArr(timeArr); + dataList = baseDao.getResolveDataListByMonths(formDTO); + + } + + for (int i = 0; i < timeArr.size(); i++) { + Boolean flag = false; // 是否完成该时间赋值 + for (ResolveTotalLineDetailResultDTO dto : dataList) { + if (timeArr.get(i).equals(dto.getTime())) { + jjArr.add(dto.getJj()); + jbjjArr.add(dto.getJbjj()); + wjjArr.add(dto.getWjj()); + flag = true; + break; + } + } + // 判断该时间是否赋值 + if (!flag) { + jjArr.add("0"); + jbjjArr.add("0"); + wjjArr.add("0"); + } + } + + // 组装数据 + resultDTO.setXValue(timeArr); + resultDTO.setWjjArr(wjjArr); + resultDTO.setJjArr(jbjjArr); + resultDTO.setJjArr(jjArr); + + return resultDTO; + } + /** * 重新上报 * diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml index bcad612eb..4ec660e97 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml @@ -2890,10 +2890,10 @@ + + + + + UPDATE