| | |
| | | package com.whyc.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.github.pagehelper.PageHelper; |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.mapper.FaultUploadMapper; |
| | | import com.whyc.pojo.BaoJiGroup; |
| | | import com.whyc.pojo.FaultUpload; |
| | | import com.whyc.pojo.UserInf; |
| | | import com.whyc.util.ActionUtil; |
| | | import com.whyc.util.DateUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | |
| | | @Resource |
| | | private FaultUploadMapper mapper; |
| | | |
| | | @Autowired |
| | | private BaoJiGroupService baoJiGroupService; |
| | | |
| | | @Autowired |
| | | private UserService userService; |
| | | |
| | | public Response add(FaultUpload fault) { |
| | | int userId = ActionUtil.getUser().getUId().intValue(); |
| | |
| | | return new Response().setII(1,"确认完成"); |
| | | } |
| | | |
| | | public Response listPage(int pageNum, int pageSize) { |
| | | public Response listPage(int pageNum, int pageSize, FaultUpload upload) { |
| | | PageHelper.startPage(pageNum,pageSize); |
| | | int userId = ActionUtil.getUser().getUId().intValue(); |
| | | /*QueryWrapper<FaultUpload> query = Wrappers.query(); |
| | | query.eq("upload_user_id",userId); |
| | | List<FaultUpload> faultUploads = mapper.selectList(query);*/ |
| | | List<FaultUpload> faultUploads = mapper.selectListInBaoJiGroup(userId); |
| | | List<FaultUpload> faultUploads = mapper.getList(userId,upload); |
| | | //联查拆分,组装 用户名 |
| | | List<UserInf> users = userService.getAll(); |
| | | Map<Long, List<UserInf>> userIdListMap = users.stream().collect(Collectors.groupingBy(UserInf::getUId)); |
| | | for (FaultUpload faultUpload : faultUploads) { |
| | | faultUpload.setUploadUserName(userIdListMap.get(Long.valueOf(faultUpload.getUploadUserId() +"")).get(0).getUName()); |
| | | if(faultUpload.getConfirmUserId()!=null) { |
| | | faultUpload.setConfirmUserName(userIdListMap.get(Long.valueOf(faultUpload.getConfirmUserId() + "")).get(0).getUName()); |
| | | } |
| | | } |
| | | |
| | | PageInfo<FaultUpload> pageInfo = new PageInfo<>(faultUploads); |
| | | return new Response().set(1,pageInfo); |
| | | } |
| | | |
| | | public Response getTypeNum() { |
| | | public Response listPage2(int pageNum, int pageSize, FaultUpload upload) { |
| | | PageHelper.startPage(pageNum,pageSize); |
| | | int userId = ActionUtil.getUser().getUId().intValue(); |
| | | List<FaultUpload> faultUploads = mapper.selectListInBaoJiGroup(userId); |
| | | List<FaultUpload> faultUploads = mapper.getList2(userId,upload); |
| | | //联查拆分,组装 用户名 |
| | | List<UserInf> users = userService.getAll(); |
| | | Map<Long, List<UserInf>> userIdListMap = users.stream().collect(Collectors.groupingBy(UserInf::getUId)); |
| | | for (FaultUpload faultUpload : faultUploads) { |
| | | faultUpload.setUploadUserName(userIdListMap.get(Long.valueOf(faultUpload.getUploadUserId() +"")).get(0).getUName()); |
| | | if(faultUpload.getConfirmUserId() !=null) { |
| | | faultUpload.setConfirmUserName(userIdListMap.get(Long.valueOf(faultUpload.getConfirmUserId() + "")).get(0).getUName()); |
| | | } |
| | | } |
| | | |
| | | PageInfo<FaultUpload> pageInfo = new PageInfo<>(faultUploads); |
| | | return new Response().set(1,pageInfo); |
| | | } |
| | | |
| | | public Response getTypeCount(Integer timeType) { |
| | | int userId = ActionUtil.getUser().getUId().intValue(); |
| | | FaultUpload upload = new FaultUpload(); |
| | | Date now = new Date(); |
| | | String uploadStartTime = null; |
| | | String uploadEndTime = null; |
| | | if(timeType == 1){ |
| | | //本月 |
| | | Calendar monthStart = Calendar.getInstance(); |
| | | monthStart.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthStart.set(Calendar.DAY_OF_MONTH,1); |
| | | monthStart.set(Calendar.HOUR_OF_DAY, 0); |
| | | monthStart.set(Calendar.MINUTE, 0); |
| | | monthStart.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar monthEnd = Calendar.getInstance(); |
| | | monthEnd.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthEnd.set(Calendar.DAY_OF_MONTH,monthEnd.getActualMaximum(Calendar.DAY_OF_MONTH)); |
| | | monthEnd.set(Calendar.HOUR_OF_DAY, 23); |
| | | monthEnd.set(Calendar.MINUTE, 59); |
| | | monthEnd.set(Calendar.SECOND, 59); |
| | | |
| | | uploadStartTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthStart.getTime()); |
| | | uploadEndTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthEnd.getTime()); |
| | | }else if(timeType == 2){ |
| | | //本季度 |
| | | Calendar monthStart = Calendar.getInstance(); |
| | | monthStart.setTime(now); |
| | | monthStart.set(Calendar.DAY_OF_MONTH,1); |
| | | monthStart.set(Calendar.HOUR_OF_DAY, 0); |
| | | monthStart.set(Calendar.MINUTE, 0); |
| | | monthStart.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar monthEnd = Calendar.getInstance(); |
| | | monthEnd.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthEnd.set(Calendar.DAY_OF_MONTH,monthEnd.getActualMaximum(Calendar.DAY_OF_MONTH)); |
| | | monthEnd.set(Calendar.HOUR_OF_DAY, 23); |
| | | monthEnd.set(Calendar.MINUTE, 59); |
| | | monthEnd.set(Calendar.SECOND, 59); |
| | | |
| | | //定位是第几季度 |
| | | int i = monthStart.get(Calendar.MONTH); |
| | | if (i<=2){ // 0,1,2 |
| | | monthStart.set(Calendar.MONTH,0); |
| | | monthEnd.set(Calendar.MONTH,2); |
| | | } |
| | | else if(i<=5){ // 3,4,5 |
| | | monthStart.set(Calendar.MONTH,3); |
| | | monthEnd.set(Calendar.MONTH,5); |
| | | } |
| | | else if(i<=8){ // 6,7,8 |
| | | monthStart.set(Calendar.MONTH,6); |
| | | monthEnd.set(Calendar.MONTH,8); |
| | | }else{ //9,10,11 |
| | | monthStart.set(Calendar.MONTH,9); |
| | | monthEnd.set(Calendar.MONTH,11); |
| | | } |
| | | uploadStartTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthStart.getTime()); |
| | | uploadEndTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthEnd.getTime()); |
| | | }else{ |
| | | //年度 |
| | | Calendar monthStart = Calendar.getInstance(); |
| | | monthStart.setTime(now); |
| | | monthStart.set(Calendar.MONTH,0); |
| | | monthStart.set(Calendar.DAY_OF_MONTH,1); |
| | | monthStart.set(Calendar.HOUR_OF_DAY, 0); |
| | | monthStart.set(Calendar.MINUTE, 0); |
| | | monthStart.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar monthEnd = Calendar.getInstance(); |
| | | monthEnd.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthEnd.set(Calendar.MONTH,11); |
| | | monthEnd.set(Calendar.DAY_OF_MONTH,monthEnd.getActualMaximum(Calendar.DAY_OF_MONTH)); |
| | | monthEnd.set(Calendar.HOUR_OF_DAY, 23); |
| | | monthEnd.set(Calendar.MINUTE, 59); |
| | | monthEnd.set(Calendar.SECOND, 59); |
| | | |
| | | uploadStartTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthStart.getTime()); |
| | | uploadEndTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthEnd.getTime()); |
| | | } |
| | | upload.setUploadStartTime(uploadStartTime); |
| | | upload.setUploadEndTime(uploadEndTime); |
| | | List<FaultUpload> faultUploads = mapper.getList(userId,upload); |
| | | Map<Integer, List<FaultUpload>> typeListMap = faultUploads.stream().collect(Collectors.groupingBy(FaultUpload::getType)); |
| | | Map<Integer,Integer> typeMap = new HashMap<>(); |
| | | typeMap.put(0,0); |
| | | int total = 0; |
| | | Set<Integer> typeSet = typeListMap.keySet(); |
| | | for (Integer type : typeSet) { |
| | | typeMap.put(type,typeListMap.get(type).size()); |
| | | int size = typeListMap.get(type).size(); |
| | | total+=size; |
| | | typeMap.put(type, size); |
| | | } |
| | | typeMap.put(0,total); |
| | | return new Response().set(1,typeMap); |
| | | |
| | | } |
| | | |
| | | public Response groupNameCount(int timeType) { |
| | | int userId = ActionUtil.getUser().getUId().intValue(); |
| | | FaultUpload upload = new FaultUpload(); |
| | | Date now = new Date(); |
| | | String uploadStartTime = null; |
| | | String uploadEndTime = null; |
| | | if(timeType == 1){ |
| | | //本月 |
| | | Calendar monthStart = Calendar.getInstance(); |
| | | monthStart.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthStart.set(Calendar.DAY_OF_MONTH,1); |
| | | monthStart.set(Calendar.HOUR_OF_DAY, 0); |
| | | monthStart.set(Calendar.MINUTE, 0); |
| | | monthStart.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar monthEnd = Calendar.getInstance(); |
| | | monthEnd.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthEnd.set(Calendar.DAY_OF_MONTH,monthEnd.getActualMaximum(Calendar.DAY_OF_MONTH)); |
| | | monthEnd.set(Calendar.HOUR_OF_DAY, 23); |
| | | monthEnd.set(Calendar.MINUTE, 59); |
| | | monthEnd.set(Calendar.SECOND, 59); |
| | | |
| | | uploadStartTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthStart.getTime()); |
| | | uploadEndTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthEnd.getTime()); |
| | | }else if(timeType == 2){ |
| | | //本季度 |
| | | Calendar monthStart = Calendar.getInstance(); |
| | | monthStart.setTime(now); |
| | | monthStart.set(Calendar.DAY_OF_MONTH,1); |
| | | monthStart.set(Calendar.HOUR_OF_DAY, 0); |
| | | monthStart.set(Calendar.MINUTE, 0); |
| | | monthStart.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar monthEnd = Calendar.getInstance(); |
| | | monthEnd.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthEnd.set(Calendar.DAY_OF_MONTH,monthEnd.getActualMaximum(Calendar.DAY_OF_MONTH)); |
| | | monthEnd.set(Calendar.HOUR_OF_DAY, 23); |
| | | monthEnd.set(Calendar.MINUTE, 59); |
| | | monthEnd.set(Calendar.SECOND, 59); |
| | | |
| | | //定位是第几季度 |
| | | int i = monthStart.get(Calendar.MONTH); |
| | | if (i<=2){ // 0,1,2 |
| | | monthStart.set(Calendar.MONTH,0); |
| | | monthEnd.set(Calendar.MONTH,2); |
| | | } |
| | | else if(i<=5){ // 3,4,5 |
| | | monthStart.set(Calendar.MONTH,3); |
| | | monthEnd.set(Calendar.MONTH,5); |
| | | } |
| | | else if(i<=8){ // 6,7,8 |
| | | monthStart.set(Calendar.MONTH,6); |
| | | monthEnd.set(Calendar.MONTH,8); |
| | | }else{ //9,10,11 |
| | | monthStart.set(Calendar.MONTH,9); |
| | | monthEnd.set(Calendar.MONTH,11); |
| | | } |
| | | uploadStartTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthStart.getTime()); |
| | | uploadEndTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthEnd.getTime()); |
| | | }else{ |
| | | //年度 |
| | | Calendar monthStart = Calendar.getInstance(); |
| | | monthStart.setTime(now); |
| | | monthStart.set(Calendar.MONTH,0); |
| | | monthStart.set(Calendar.DAY_OF_MONTH,1); |
| | | monthStart.set(Calendar.HOUR_OF_DAY, 0); |
| | | monthStart.set(Calendar.MINUTE, 0); |
| | | monthStart.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar monthEnd = Calendar.getInstance(); |
| | | monthEnd.setTime(now); |
| | | //设置为1号,当前日期既为本月第一天 |
| | | monthEnd.set(Calendar.MONTH,11); |
| | | monthEnd.set(Calendar.DAY_OF_MONTH,monthEnd.getActualMaximum(Calendar.DAY_OF_MONTH)); |
| | | monthEnd.set(Calendar.HOUR_OF_DAY, 23); |
| | | monthEnd.set(Calendar.MINUTE, 59); |
| | | monthEnd.set(Calendar.SECOND, 59); |
| | | |
| | | uploadStartTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthStart.getTime()); |
| | | uploadEndTime = DateUtil.YYYY_MM_DD_HH_MM_SS.format(monthEnd.getTime()); |
| | | } |
| | | upload.setUploadStartTime(uploadStartTime); |
| | | upload.setUploadEndTime(uploadEndTime); |
| | | |
| | | List<FaultUpload> list = mapper.getList2(userId, upload); |
| | | |
| | | Map<String, List<FaultUpload>> groupNameListMap = list.stream().collect(Collectors.groupingBy(FaultUpload::getGroupName)); |
| | | //初始化 班组列表 |
| | | Map<String,Integer> groupNameCountMap = new HashMap<>(); |
| | | groupNameCountMap.put("总数",0); |
| | | int total = 0; |
| | | List<BaoJiGroup> baoJiGroups = baoJiGroupService.getBaoJiGroupNameListByFlag(1); |
| | | for (BaoJiGroup baoJiGroup : baoJiGroups) { |
| | | groupNameCountMap.put(baoJiGroup.getBaoJiGroupName(),0); |
| | | } |
| | | |
| | | Set<String> groupNameSet = groupNameListMap.keySet(); |
| | | for (String groupName : groupNameSet) { |
| | | int size = groupNameListMap.get(groupName).size(); |
| | | total+=size; |
| | | groupNameCountMap.put(groupName, size); |
| | | } |
| | | groupNameCountMap.put("总数",total); |
| | | return new Response().set(1,groupNameCountMap); |
| | | |
| | | } |
| | | |
| | | public Response getListOfLastPeriod(int type) { |
| | | int userId = ActionUtil.getUser().getUId().intValue(); |
| | | FaultUpload upload = new FaultUpload(); |
| | | Date now = new Date(); |
| | | Calendar instance = Calendar.getInstance(); |
| | | instance.setTime(now); |
| | | if(type == 1){ |
| | | instance.add(Calendar.DATE,-7); |
| | | }else{ |
| | | instance.add(Calendar.DATE,-30); |
| | | } |
| | | |
| | | upload.setUploadStartTime(DateUtil.YYYY_MM_DD_HH_MM_SS.format(instance.getTime())); |
| | | upload.setUploadEndTime(DateUtil.YYYY_MM_DD_HH_MM_SS.format(now)); |
| | | List<FaultUpload> faultUploads = mapper.getList(userId, upload); |
| | | //联查拆分,组装 用户名 |
| | | List<UserInf> users = userService.getAll(); |
| | | Map<Long, List<UserInf>> userIdListMap = users.stream().collect(Collectors.groupingBy(UserInf::getUId)); |
| | | for (FaultUpload faultUpload : faultUploads) { |
| | | faultUpload.setUploadUserName(userIdListMap.get(Long.valueOf(faultUpload.getUploadUserId() +"")).get(0).getUName()); |
| | | } |
| | | return new Response().set(1,faultUploads); |
| | | } |
| | | |
| | | public Response getMyUploadStatusCount() { |
| | | Map<String,Integer> map = new HashMap<>(); |
| | | int userId = ActionUtil.getUser().getUId().intValue(); |
| | | FaultUpload upload = new FaultUpload(); |
| | | List<FaultUpload> list = mapper.getList(userId, upload); |
| | | List<FaultUpload> confirmedList = list.stream().filter(temp -> temp.getConfirmUserId() != null).collect(Collectors.toList()); |
| | | List<FaultUpload> myList = list.stream().filter(temp -> temp.getUploadUserId() == userId).collect(Collectors.toList()); |
| | | List<FaultUpload> myConfirmedList = myList.stream().filter(temp -> temp.getConfirmUserId() != null).collect(Collectors.toList()); |
| | | |
| | | //班组 上报总数,已确认数量 |
| | | map.put("groupUploadNum",list.size()); |
| | | map.put("groupUploadConfirmedNum",confirmedList.size()); |
| | | //我的 上报总数,已确认数量 |
| | | map.put("myUploadNum",myList.size()); |
| | | map.put("myUploadConfirmedNum",myConfirmedList.size()); |
| | | return new Response().set(1,map); |
| | | } |
| | | } |