| | |
| | | import com.ruoyi.app.patrolplan.domain.ArdAppPatrolplan; |
| | | import com.ruoyi.app.patrolplan.domain.ArdAppPatrolpointRecordImg; |
| | | import com.ruoyi.app.patrolplan.domain.ArdAppPatroluser; |
| | | import com.ruoyi.app.patrolplan.domain.param.ArdAppPatrolpointRecordParam; |
| | | import com.ruoyi.app.patrolplan.domain.param.*; |
| | | import com.ruoyi.app.patrolplan.mapper.ArdAppPatrolplanMapper; |
| | | import com.ruoyi.app.patrolplan.mapper.ArdAppPatrolpointRecordImgMapper; |
| | | import com.ruoyi.app.patrolplan.mapper.ArdAppPatroluserMapper; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Results recordMonth(ArdAppPatrolpointRecordParam ardAppPatrolpointRecordParam) throws ParseException { |
| | | public Results recordMonth(RecordMonthParam recordMonthParam) throws ParseException { |
| | | //è·ååç«¯åæ° |
| | | String begin = ardAppPatrolpointRecordParam.getBegin(); |
| | | String end = ardAppPatrolpointRecordParam.getEnd(); |
| | | String planId = ardAppPatrolpointRecordParam.getPlanId(); |
| | | String begin = recordMonthParam.getBegin(); |
| | | String end = recordMonthParam.getEnd(); |
| | | String planId = recordMonthParam.getPlanId(); |
| | | //æ¥è¯¢è®¡å表 |
| | | ArdAppPatrolplan ardAppPatrolplan = patrolplanMapper.selectById(planId); |
| | | //æ¥è¯¢åºæææå¡æ°æ® |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Results recordDetails(ArdAppPatrolpointRecordParam ardAppPatrolpointRecordParam) throws ParseException { |
| | | public Results recordDetails(RecordDetailsParam recordDetailsParam) throws ParseException { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat dateFormatTime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); |
| | | //è·ååæ° |
| | | String planId = ardAppPatrolpointRecordParam.getPlanId(); |
| | | String toDay = ardAppPatrolpointRecordParam.getToDay(); |
| | | String planId = recordDetailsParam.getPlanId(); |
| | | String toDay = recordDetailsParam.getToDay(); |
| | | //æ¥è¯¢è®¡å表 |
| | | ArdAppPatrolplan ardAppPatrolplan = patrolplanMapper.selectById(planId); |
| | | String cycle = ardAppPatrolplan.getCycle(); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Results recordSolo(ArdAppPatrolpointRecordParam ardAppPatrolpointRecordParam) { |
| | | String toDay = ardAppPatrolpointRecordParam.getToDay(); |
| | | String planId = ardAppPatrolpointRecordParam.getPlanId(); |
| | | String userId = ardAppPatrolpointRecordParam.getUserId(); |
| | | String planName = ardAppPatrolpointRecordParam.getPlanName(); |
| | | String userName = ardAppPatrolpointRecordParam.getUserName(); |
| | | public Results recordSolo(RecordSoloParam recordSoloParam) { |
| | | String toDay = recordSoloParam.getToDay(); |
| | | String planId = recordSoloParam.getPlanId(); |
| | | String userId = recordSoloParam.getUserId(); |
| | | String planName = recordSoloParam.getPlanName(); |
| | | String userName = recordSoloParam.getUserName(); |
| | | QueryWrapper<ArdAppPatrolpointRecord> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("plan_id", planId).eq("user_id",userId).like("record_time", toDay); |
| | | //å½å计åé䏿¶é´éæ¤ç¨æ·çæå¡è®°å½ |
| | | List<ArdAppPatrolpointRecord> list = ardAppPatrolpointRecordMapper.selectList(queryWrapper); |
| | | //æ¥è¯¢è¯¥è®¡åçææå
´è¶£ç¹ |
| | | List<ArdAlarmpointsWell> wellList = wellMapper.wellByPlanId(planId); |
| | | if(list.size()==0){ |
| | | |
| | | for (ArdAlarmpointsWell ardAlarmpointsWell : wellList) { |
| | | ArdAppPatrolpointRecord ardAppPatrolpointRecord = new ArdAppPatrolpointRecord(); |
| | | ardAppPatrolpointRecord.setAppPatrolpointsId(ardAlarmpointsWell.getId()); |
| | | ardAppPatrolpointRecord.setAppPatrolpointsName(ardAlarmpointsWell.getWellId()); |
| | | ardAppPatrolpointRecord.setPlanId(planId); |
| | | ardAppPatrolpointRecord.setPlanName(planName); |
| | | ardAppPatrolpointRecord.setUserId(userId); |
| | | ardAppPatrolpointRecord.setUserName(userName); |
| | | ardAppPatrolpointRecord.setLatitude(String.valueOf(ardAlarmpointsWell.getLatitude())); |
| | | ardAppPatrolpointRecord.setLongitude(String.valueOf(ardAlarmpointsWell.getLongitude().toString())); |
| | | list.add(ardAppPatrolpointRecord); |
| | | } |
| | | return Results.succeed(list); |
| | | } |
| | | for (ArdAppPatrolpointRecord appPatrolpointRecord : list) { |
| | | QueryWrapper<ArdAppPatrolpointRecordImg> queryWrapper1 = new QueryWrapper<>(); |
| | |
| | | for (ArdAppPatrolpointRecord appPatrolpointRecord : list) { |
| | | pointList.add(appPatrolpointRecord.getAppPatrolpointsId()); |
| | | } |
| | | //æ¥è¯¢è¯¥è®¡åçææå
´è¶£ç¹ |
| | | List<ArdAlarmpointsWell> wellList = wellMapper.wellByPlanId(planId); |
| | | for (ArdAlarmpointsWell ardAlarmpointsWell : wellList) { |
| | | //ææåºè¯¥æå¡çå°ç¹ID |
| | | String well = ardAlarmpointsWell.getId(); |
| | | //妿æå¼å°ç¹ä¸å
å«åºæå¡å°ç¹ï¼é£è¯´åè¿åå¿æ²¡æå¡ |
| | | //妿æå¡å°ç¹ä¸å
å«åºæå¡å°ç¹ï¼é£è¯´åè¿åå¿æ²¡æå¡ |
| | | if (!pointList.contains(well)) { |
| | | ArdAppPatrolpointRecord ardAppPatrolpointRecord = new ArdAppPatrolpointRecord(); |
| | | ardAppPatrolpointRecord.setAppPatrolpointsId(well); |
| | |
| | | return Results.succeed(list); |
| | | } |
| | | |
| | | @Override |
| | | public Results executeMonth(RecordMonthParam RecordMonthParam) throws ParseException { |
| | | //è·ååç«¯åæ° |
| | | String begin = RecordMonthParam.getBegin(); |
| | | String end = RecordMonthParam.getEnd(); |
| | | String planId = RecordMonthParam.getPlanId(); |
| | | //æ¥è¯¢è®¡å表 |
| | | ArdAppPatrolplan ardAppPatrolplan = patrolplanMapper.selectById(planId); |
| | | //æ¥è¯¢åºæææå¡æ°æ® |
| | | String userId = SecurityUtils.getUserId(); |
| | | QueryWrapper<ArdAppPatrolpointRecord> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.between("record_time",begin,end).eq("plan_id",planId).eq("user_id",userId); |
| | | List<ArdAppPatrolpointRecord> list = ardAppPatrolpointRecordMapper.selectList(queryWrapper); |
| | | //æ¶é´æå |
| | | String[] parts = end.split("[-\\s:]"); |
| | | int year = Integer.parseInt(parts[0]); |
| | | int month = Integer.parseInt(parts[1]); |
| | | int day = Integer.parseInt(parts[2]); |
| | | String monthZero; |
| | | if(month<10){ |
| | | monthZero = String.format("%02d", month); |
| | | }else { |
| | | monthZero = String.valueOf(month); |
| | | } |
| | | JSONArray jsonArray = new JSONArray(); |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | for (int i = 1; i <= day; i++) { |
| | | String di; |
| | | if(i<10){ |
| | | di = String.format("%02d", i); |
| | | }else { |
| | | di = String.valueOf(i); |
| | | } |
| | | JSONObject jsonObject = new JSONObject(); |
| | | Boolean planBoolean = false; |
| | | //å¾ªç¯æ¯ä¸å¤© |
| | | String ymd = year+"-"+monthZero+"-"+di; |
| | | //å¹é
è®¡åæ¶é´ |
| | | String cycle = ardAppPatrolplan.getCycle(); |
| | | if(cycle.equals("day")){ |
| | | String createTime = ardAppPatrolplan.getCreateTime(); |
| | | int d = ymd.compareTo(createTime); |
| | | if(d>=0){ |
| | | planBoolean = true; |
| | | } |
| | | }else if(cycle.equals("once")){ |
| | | String onceBegin = ardAppPatrolplan.getPatroBeginTime(); |
| | | String onceEnd = ardAppPatrolplan.getPatroEndTime(); |
| | | int bd = ymd.compareTo(onceBegin); |
| | | int ed = ymd.compareTo(onceEnd); |
| | | if(bd>=0 && ed<=0){ |
| | | planBoolean = true; |
| | | } |
| | | } |
| | | //å¹é
æå¡æ¶é´ |
| | | Boolean or = false; |
| | | if(planBoolean){ |
| | | for (int j = 0; j < list.size(); j++) { |
| | | //æå¡æ¶é´æå |
| | | String recordTime = list.get(j).getRecordTime(); |
| | | String[] part = recordTime.split("[-\\s:]"); |
| | | int recordYear = Integer.parseInt(part[0]); |
| | | int recordMonth = Integer.parseInt(part[1]); |
| | | String recordMonthZero; |
| | | if(recordMonth<10){ |
| | | recordMonthZero = String.format("%02d", recordMonth); |
| | | }else { |
| | | recordMonthZero = String.valueOf(recordMonth); |
| | | } |
| | | int recordDay = Integer.parseInt(part[2]); |
| | | String recordDayZero; |
| | | if(recordDay<10){ |
| | | recordDayZero = String.format("%02d", recordDay); |
| | | }else { |
| | | recordDayZero = String.valueOf(recordDay); |
| | | } |
| | | String recordDate = recordYear+"-"+recordMonthZero+"-"+recordDayZero; |
| | | //妿ç¸ç说æè¿å¤©ææå¡è®°å½è®°å½ |
| | | if(ymd.equals(recordDate)){ |
| | | or = true; |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | jsonObject.put("toDay",ymd ); |
| | | jsonObject.put("plan",planBoolean); |
| | | jsonObject.put("record",or); |
| | | jsonArray.add(jsonObject); |
| | | } |
| | | return Results.succeed(jsonArray); |
| | | } |
| | | |
| | | @Override |
| | | public Results executeDetails(RecordDetailsParam recordDetailsParam) throws ParseException { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat dateFormatTime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); |
| | | String userId = SecurityUtils.getUserId(); |
| | | //è·ååæ° |
| | | String planId = recordDetailsParam.getPlanId(); |
| | | String toDay = recordDetailsParam.getToDay(); |
| | | //æ¥è¯¢è®¡å表 |
| | | ArdAppPatrolplan ardAppPatrolplan = patrolplanMapper.selectById(planId); |
| | | String cycle = ardAppPatrolplan.getCycle(); |
| | | String begin = ardAppPatrolplan.getPatroBeginTime(); |
| | | String end = ardAppPatrolplan.getPatroEndTime(); |
| | | String create = ardAppPatrolplan.getCreateTime(); |
| | | JSONArray jsonArray = new JSONArray(); |
| | | int c = 0; |
| | | if(cycle.equals("day")){ |
| | | //æ¯å¤©è®¡ååå建æ¶é´ |
| | | c = toDay.compareTo(create.substring(0,10)); |
| | | }else if(cycle.equals("once")){ |
| | | //忬¡è®¡ååå¼å§æ¶é´ |
| | | c = toDay.compareTo(begin.substring(0,10)); |
| | | } |
| | | if(cycle.equals("once") && c>0){ |
| | | //忬¡è®¡å大äºå¼å§æ¶é´==跨天ï¼å¨è®¡åæ¶é´å¤ |
| | | return Results.succeed("[]"); |
| | | } |
| | | if(c<0){ |
| | | //æ¯æ¥è®¡åå°äºå建æ¶é´æå次计åå°äºå¼å§æ¶é´ï¼å¨è®¡åæ¶é´å¤ |
| | | return Results.succeed("[]"); |
| | | }else{ |
| | | //卿¯æ¥è®¡åçæ¶é´èå´å
|
| | | String date = dateFormat.format(new Date()); |
| | | //æ¯è¾éä¸çæ¥æåä»å¤©æ¥æ |
| | | int d = toDay.compareTo(date); |
| | | //æ¥è¯¢è¯¥è®¡åçææäººå |
| | | List<SysUser> users = sysUserMapper.userByPlanId(planId); |
| | | //æ¥è¯¢è¯¥è®¡åçææå
´è¶£ç¹ |
| | | List<ArdAlarmpointsWell> wellList = wellMapper.wellByPlanId(planId); |
| | | //大äº0代表æ¥è¯¢ä»¥åçè®°å½ |
| | | if(d>0){ |
| | | //æ¥è¯¢è®¡åå
çæ¯æ¥æªæ¥æ°æ® |
| | | for (int i = 0; i < users.size(); i++) { |
| | | JSONObject jsonObject = new JSONObject(); |
| | | jsonObject.put("wellId",wellList.get(i).getId()); |
| | | jsonObject.put("wellName",wellList.get(i).getWellId()); |
| | | jsonObject.put("type",false); |
| | | jsonArray.add(jsonObject); |
| | | } |
| | | return Results.succeed(jsonArray); |
| | | }else{ |
| | | //æ¥è¯¢è®¡åå
çå®é
å岿塿°æ® |
| | | QueryWrapper<ArdAppPatrolpointRecord> recordQueryWrapper = new QueryWrapper<>(); |
| | | if(d<0){ |
| | | //å°äº0æ¯åå² |
| | | recordQueryWrapper.select("app_patrolpoints_id","app_patrolpoints_name").eq("plan_id", planId).eq("user_id",userId).like("record_time", toDay); |
| | | }else{ |
| | | //çäº0éä¸çæ¥æå°±æ¯ä»å¤©ï¼éè¦è¿ä¸æ¥å¤æå°äºå½åæ¶åç§çè®°å½ |
| | | recordQueryWrapper.select("app_patrolpoints_id","app_patrolpoints_name").eq("plan_id", planId).eq("user_id",userId).le("record_time", dateFormatTime.format(new Date())); |
| | | } |
| | | List<ArdAppPatrolpointRecord> list = ardAppPatrolpointRecordMapper.selectList(recordQueryWrapper); |
| | | //å¾ªç¯æå¡å°ç¹ |
| | | for (int i = 0; i < wellList.size(); i++) { |
| | | String id = wellList.get(i).getId(); |
| | | JSONObject jsonObject = new JSONObject(); |
| | | jsonObject.put("wellId",wellList.get(i).getId()); |
| | | jsonObject.put("wellName",wellList.get(i).getWellId()); |
| | | if(list.size()>0){ |
| | | for (int j = 0; j < list.size(); j++) { |
| | | if(id.equals(list.get(j).getAppPatrolpointsId())){ |
| | | jsonObject.put("type",true); |
| | | break; |
| | | } |
| | | if(j==list.size()-1){ |
| | | jsonObject.put("type",false); |
| | | } |
| | | } |
| | | }else { |
| | | jsonObject.put("type",false); |
| | | } |
| | | jsonArray.add(jsonObject); |
| | | } |
| | | return Results.succeed(jsonArray); |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public Results executeSolo(RecordSoloExParam recordSoloExParam) { |
| | | QueryWrapper<ArdAppPatrolpointRecord> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("plan_id",recordSoloExParam.getPlanId()) |
| | | .eq("app_patrolpoints_id",recordSoloExParam.getWellId()) |
| | | .eq("user_id",recordSoloExParam.getUserId()) |
| | | .like("record_time",recordSoloExParam.getToDay()); |
| | | List<ArdAppPatrolpointRecord> list = ardAppPatrolpointRecordMapper.selectList(queryWrapper); |
| | | for (ArdAppPatrolpointRecord appPatrolpointRecord : list) { |
| | | QueryWrapper<ArdAppPatrolpointRecordImg> queryWrapper1 = new QueryWrapper<>(); |
| | | queryWrapper1.eq("app_patrolponit_record_id", appPatrolpointRecord.getId()); |
| | | List<ArdAppPatrolpointRecordImg> list1 = recordImgMapper.selectList(queryWrapper1); |
| | | List<String> strings = new ArrayList<>(); |
| | | for (ArdAppPatrolpointRecordImg ardAppPatrolpointRecordImg : list1) { |
| | | strings.add(ardAppPatrolpointRecordImg.getImg()); |
| | | } |
| | | appPatrolpointRecord.setImg(strings); |
| | | } |
| | | return Results.succeed(list); |
| | | } |
| | | |
| | | } |