From 661e56eb85e3bd0e35e94fca2d2ec59e77772da5 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Thu, 01 Feb 2024 15:30:57 +0800 Subject: [PATCH] fix:补充提交 --- screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 54 insertions(+), 5 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java index d6ceef5..44190f4 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.moral.api.config.Interceptor.UserHelper; import com.moral.api.entity.*; import com.moral.api.mapper.DailyMapper; import com.moral.api.mapper.HistorySecondCruiserMapper; @@ -14,7 +15,9 @@ import com.moral.api.pojo.dto.historySecondCruiser.HistorySecondCruiserResultCountDTO; import com.moral.api.pojo.dto.historySecondCruiser.HistorySecondCruiserResultDTO; import com.moral.api.pojo.enums.SysDictTypeEnum; +import com.moral.api.pojo.vo.device.AppDeviceVo; import com.moral.api.pojo.vo.excel.DailyVo; +import com.moral.api.pojo.vo.user.QxUser; import com.moral.api.service.OrganizationService; import com.moral.api.service.SpecialDeviceHistoryService; import com.moral.api.service.SpecialDeviceService; @@ -110,9 +113,10 @@ orgIds.add(orgId); integerList.addAll(orgIds); QueryWrapper<SpecialDeviceHistory> queryWrapper = new QueryWrapper<>(); - queryWrapper.select("mac", "name") + queryWrapper.select("DISTINCT mac, name").lambda(); + //.eq("special_type", Constants.SPECIAL_DEVICE_CRUISER) - .eq("is_delete", Constants.NOT_DELETE) + queryWrapper.eq("is_delete", Constants.NOT_DELETE) .in("organization_id", integerList); return specialDeviceHistoryService.listMaps(queryWrapper); } @@ -206,7 +210,7 @@ }); } }else { - BigDecimal dataValue = Objects.nonNull(list.getDataValue())?BigDecimal.valueOf(Integer.parseInt(list.getDataValue())):BigDecimal.ZERO; + BigDecimal dataValue = Objects.nonNull(list.getDataValue())?BigDecimal.valueOf(Double.parseDouble(list.getDataValue())):BigDecimal.ZERO; result.forEach(it->{ it.setAvgNum(it.getAvgNum().add(dataValue)); }); @@ -220,8 +224,8 @@ private BigDecimal numAvg(List<String> list , BigDecimal num){ int nums = 1; for (int i=0;i<list.size();i=i+2){ - if(num.compareTo(BigDecimal.valueOf(Integer.parseInt(list.get(i))))>= 0 ){ - return num.add(BigDecimal.valueOf(Integer.parseInt(list.get(nums)))); + if(num.compareTo(BigDecimal.valueOf(Double.parseDouble(list.get(i))))>= 0 ){ + return num.add(BigDecimal.valueOf(Double.parseDouble(list.get(i+1)))); } nums+=2; } @@ -506,6 +510,20 @@ return excelBOS; } + @Override + public List<AppDeviceVo> selectSpecialDevice() { + QxUser user = UserHelper.getCurrentUser(); + Integer organizationId = user.getOrganizationId(); +// Integer organizationId=71; + List<AppDeviceVo> appDeviceVos; + if (organizationId!=24){ + appDeviceVos = specialDeviceMapper.selectSpecialDevice(organizationId); + }else { + appDeviceVos = specialDeviceMapper.selectSpecialDevice(null); + } + return appDeviceVos; + } + //��������������������������� private HashMap<String, Object> getStringObjectHashMap(List<Map<String, Object>> maps) { HashMap<String, Object> rsMap = new HashMap<>(); @@ -732,4 +750,35 @@ } + + /** + * + */ + private double getDivisor(String code,double num){ + double rs = 0.0; + if (code.contains("-")){ + String data = code.substring(1); + rs = num - Double.parseDouble(data); + } else if (code.contains("*")){ + String data = code.substring(1); + rs = num * Double.parseDouble(data); + } else if (code.contains("/")){ + String data = code.substring(1); + rs = num / Double.parseDouble(data); + } else if (code.contains(",")){ + String[] split = code.split(","); + for (String s : split) { + String[] split1 = s.split("<"); + double sp1 = Double.parseDouble(split1[0]); + double sp2 = Double.parseDouble(split1[1]); + double sp3 = Double.parseDouble(split1[2]); + if (num>=sp1 && num<=sp2){ + rs = num + sp3; + } + } + }else { + rs = num + Double.parseDouble(code); + } + return rs; + } } -- Gitblit v1.8.0