소스 검색

xielianghe

lange 5 년 전
부모
커밋
30b1787fa0
2개의 변경된 파일86개의 추가작업 그리고 0개의 파일을 삭제
  1. 8 0
      whepi-web/src/main/java/com/bofeng/dao/MsReportMapper.java
  2. 78 0
      whepi-web/src/main/java/com/bofeng/service/MsReportService.java

+ 8 - 0
whepi-web/src/main/java/com/bofeng/dao/MsReportMapper.java

@@ -19,6 +19,12 @@ public interface MsReportMapper extends BaseMapper<MsReport> {
 
     List<MsReport> selectByReportDate(@Param("reportDate") String reportDate, @Param("userCreate") Long userCreate);
 
+    @Select("select * from ms_report where report_date<curdate()  and user_create=#{userCreate} ORDER BY time_create desc LIMIT 1")
+    List<MsReport> getNowByYesterdayDate(@Param("userCreate") Long userCreate);
+
+    @Select("select user_create  from ms_report where report_date<curdate() GROUP BY user_create")
+    List<Long> getUserByYesterdayDate();
+
     @Select("select property_id from sys_user_role where user_id=#{userId} and role_id=1")
     Long selectHouseIdByUserId(@Param("userId") Long userId);
 
@@ -43,6 +49,7 @@ public interface MsReportMapper extends BaseMapper<MsReport> {
 
     /**
      * 最近3天是否都有上报
+     *
      * @param userId
      * @return
      */
@@ -55,6 +62,7 @@ public interface MsReportMapper extends BaseMapper<MsReport> {
 
     /**
      * 用户自身的健康状态, list大于0健康,等于0不健康
+     *
      * @param userId
      * @return
      */

+ 78 - 0
whepi-web/src/main/java/com/bofeng/service/MsReportService.java

@@ -180,4 +180,82 @@ public class MsReportService {
         }
     }
 
+    //自动将用户最新的数据更新到今天
+    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
+    public void getNowByYesterdayDate() {
+        //今天以前一共有多少用户
+        List<Long> listUser = msReportMapper.getUserByYesterdayDate();
+        if (listUser != null && listUser.size() > 0) {
+            for (Long userCreate : listUser) {
+                //判断用户今天是否有数据
+                SimpleDateFormat sj = new SimpleDateFormat("yyyy-MM-dd");
+                Date d = new Date();
+                String DateNow = sj.format(d);
+                List<MsReport> listReport = msReportMapper.selectByReportDate(DateNow, userCreate);
+                if (listReport != null && listReport.size() > 0)
+                    continue;
+                //查询改用户今天以前的最近一条记录
+                List<MsReport> listReport1 = msReportMapper.getNowByYesterdayDate(userCreate);
+                if (listReport1 != null && listReport1.size() > 0) {
+                    for (MsReport msReport : listReport1) {
+                        if (msReport != null) {
+                            //添加日报
+                            MsReport msReport1 = new MsReport();
+                            msReport1.setReportId(IdWorker.getId());
+                            msReport1.setHouseId(msReport.getHouseId());
+                            msReport1.setSafetyNum(msReport.getSafetyNum());
+                            msReport1.setSureNum(msReport.getSureNum());
+                            msReport1.setSuspectedNum(msReport.getSuspectedNum());
+                            msReport1.setNormalNum(msReport.getNormalNum());
+                            msReport1.setSingleNum(msReport.getSingleNum());
+                            msReport1.setRemarks(msReport.getRemarks());
+                            msReport1.setReportDate(DateTime.now().toDate());
+                            msReport1.setReportStatus(0);//未上报
+                            msReport1.setMsStatus(msReport.getMsStatus());
+                            msReport1.setUserCreate(msReport.getUserCreate());
+                            msReport1.setTimeCreate(DateTime.now());
+                            msReport1.setUserUpdate(msReport.getUserCreate());
+                            msReport1.setTimeUpdate(DateTime.now());
+                            msReportMapper.insert(msReport1);
+                            //添加家人
+                            List<MsSuspected> listSuspected = msSuspectedMapper.selectByReportId(msReport1.getReportId());
+                            if (listSuspected != null && listSuspected.size() > 0) {
+                                for (MsSuspected msSuspected : listSuspected) {
+                                    MsSuspected msSuspected1 = new MsSuspected();
+                                    msSuspected1.setSuspectedId(IdWorker.getId());
+                                    msSuspected1.setReportId(msReport1.getReportId());
+                                    msSuspected1.setUserName(msSuspected.getUserName());
+                                    msSuspected1.setGrender(msSuspected.getGrender());
+                                    msSuspected1.setAge(msSuspected.getAge());
+                                    msSuspected1.setFamilyStatus(msSuspected.getFamilyStatus());
+                                    msSuspected1.setStatusDesp(msSuspected.getStatusDesp());
+                                    msSuspected1.setMedical(msSuspected.getMedical());
+                                    msSuspected1.setTemperature(new BigDecimal(0));//温度0
+                                    msSuspected1.setCough(msSuspected.getCough());
+                                    msSuspected1.setMuscle(msSuspected.getMuscle());
+                                    msSuspected1.setDiarrhea(msSuspected.getDiarrhea());
+                                    msSuspected1.setFatigue(msSuspected.getFatigue());
+                                    msSuspected1.setDiarrhea(msSuspected.getDiarrhea());
+                                    msSuspected1.setSingleRoom(msSuspected.getSingleRoom());
+                                    msSuspected1.setOthers(msSuspected.getOthers());
+                                    // msSuspected1.setScoreRezult(msSuspected.getScoreRezult());
+                                    // msSuspected1.setScore(msSuspected.getScore());
+                                    // msSuspected1.setScoreHistroy(msSuspected.getScoreHistroy());
+                                    // msSuspected1.setTemperatureScore(msSuspected.getTemperatureScore());
+                                    msSuspected1.setSuspectedStatus(0);
+                                    msSuspected1.setUserCreate(msSuspected.getUserCreate());
+                                    msSuspected1.setTimeCreate(DateTime.now());
+                                    msSuspected1.setUserUpdate(msSuspected.getUserUpdate());
+                                    msSuspected1.setTimeUpdate(DateTime.now());
+                                    msSuspectedMapper.insert(msSuspected1);
+                                }
+                            }
+
+                        }
+                    }
+                }
+            }
+        }
+    }
+
 }