소스 검색

xielianghe

lange 5 년 전
부모
커밋
69f18478ab

+ 16 - 3
whepi-web/src/main/java/com/bofeng/dao/MsReportMapper.java

@@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 import org.springframework.stereotype.Repository;
 
+import java.math.BigDecimal;
 import java.util.List;
 
 /**
@@ -17,13 +18,25 @@ import java.util.List;
 @Repository
 public interface MsReportMapper extends BaseMapper<MsReport> {
 
-    List<MsReport> selectByReportDate(@Param("reportDate") String reportDate,@Param("userCreate") Long userCreate);
+    List<MsReport> selectByReportDate(@Param("reportDate") String reportDate, @Param("userCreate") Long userCreate);
 
     @Select("select property_id from sys_user_role where user_id=#{userId} and role_id=1")
     long selectHouseIdByUserId(@Param("userId") Long userId);
 
-    //
+    //确诊
     @Select("select count(*) from ms_suspected where report_id=#{reportId} and  medical=#{medical}")
-    Integer selectSuspectedNum(@Param("reportId") Long reportId,@Param("medical") Integer medical);
+    Integer selectSuspectedNum(@Param("reportId") Long reportId, @Param("medical") Integer medical);
+
+    //隔离
+    @Select("select count(*) from ms_suspected where report_id=#{reportId} and  single_room=#{singleRoom}")
+    Integer selectSingleRoomNum(@Param("reportId") Long reportId, @Param("singleRoom") Integer singleRoom);
+
+    //正常
+    @Select("select count(*) from ms_suspected where report_id=#{reportId} and  36&lt;=#{temperature} and #{temperature}&lt;=37.3")
+    Integer selectisSuspectedNum(@Param("reportId") Long reportId, @Param("temperature") BigDecimal temperature);
+
+    //疑似
+    @Select("select count(*) from ms_suspected where report_id=#{reportId} and (#{temperature}&lt;36 or 37.3&lt;#{temperature})")
+    Integer selectisNoSuspectedNum(@Param("reportId") Long reportId, @Param("temperature") BigDecimal temperature);
 
 }

+ 73 - 32
whepi-web/src/main/java/com/bofeng/service/MsReportService.java

@@ -13,6 +13,7 @@ import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.text.SimpleDateFormat;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
 
@@ -33,6 +34,7 @@ public class MsReportService {
         return msSuspectedMapper.selectByReportId(reportId);
     }
 
+    //获取前一天数据
     public List<MsSuspected> getByReportReportDate(String reportDate, Long userCreate) {
 
         List<MsReport> listReport = msReportMapper.selectByReportDate(reportDate, userCreate);
@@ -43,6 +45,7 @@ public class MsReportService {
         return listSuspected;
     }
 
+    //获取今天数据
     public MsReport getReportByDateNow(Long userCreate) {
         Date t = new Date();
         SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
@@ -55,44 +58,82 @@ public class MsReportService {
         return msReport;
     }
 
+    //上报
     @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
-    public void addReport(String safetyNum, Long userCreate) {
-        //如果是当前日期 已经添加
-        Date t = new Date();
-        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
-        String reportDate = df.format(t);
-        List<MsReport> listReport = msReportMapper.selectByReportDate(reportDate, userCreate);
-        Long houseId = msReportMapper.selectHouseIdByUserId(userCreate);
-        if (listReport == null || listReport.size() == 0) {
-            MsReport msReport = new MsReport();
-            msReport.setReportId(IdWorker.getId());
-            msReport.setHouseId(houseId);
-            msReport.setSafetyNum(Integer.parseInt(safetyNum));
-            msReport.setSuspectedNum(0);
-            msReport.setRemarks("");
-            msReport.setReportDate(DateTime.now().toDate());
+    public void addReport(long reportId, Long userCreate) {
+        MsReport msReport = msReportMapper.selectById(reportId);
+        if (msReport != null) {
             msReport.setReportStatus(1);
-            msReport.setMsStatus(1);
-            msReport.setUserCreate(userCreate);
-            msReport.setTimeCreate(DateTime.now());
             msReport.setUserUpdate(userCreate);
             msReport.setTimeUpdate(DateTime.now());
-            msReportMapper.insert(msReport);
-        } else {
-            //更新居家成员
-            MsReport msReport = msReportMapper.selectById(listReport.get(0).getReportId());
+            msReportMapper.updateById(msReport);
+        }
+    }
+
+    //通过昨天数据更新今天数据
+    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
+    public void getNowByYesterday(Long userCreate) {
+
+        //判断昨天是否有数据
+        SimpleDateFormat sj = new SimpleDateFormat("yyyy-MM-dd");
+        Date d = new Date();
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(d);
+        calendar.add(Calendar.DATE, -1);
+        String reportDate = sj.format(calendar.getTime());
+        List<MsReport> listReport = msReportMapper.selectByReportDate(reportDate, userCreate);
+        //有数据
+        if (listReport != null && listReport.size() > 0) {
+            //添加到今天日报
+            MsReport msReport = msReportMapper.selectById(Long.parseLong(listReport.get(0).getReportId().toString()));
             if (msReport != null) {
-                List<MsSuspected> list= msSuspectedMapper.selectByReportId(msReport.getReportId());
-                if(list==null || list.size()==0)
-                    msReport.setMsStatus(1);
-                else
-                    msReport.setMsStatus(2);
-                msReport.setReportStatus(1);
-                msReport.setSafetyNum(Integer.parseInt(safetyNum));
-                msReport.setUserUpdate(0L);
-                msReport.setTimeUpdate(DateTime.now());
-                msReportMapper.updateById(msReport);
+                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.setMsStatus(2);
+                msReport1.setUserCreate(userCreate);
+                msReport1.setTimeCreate(DateTime.now());
+                msReport1.setUserUpdate(userCreate);
+                msReport1.setTimeUpdate(DateTime.now());
+                msReportMapper.insert(msReport);
+            }
+            //添加今日家庭
+            List<MsSuspected> listSuspected = msSuspectedMapper.selectByReportId(Long.parseLong(listReport.get(0).getReportId().toString()));
+            if (listSuspected != null && listSuspected.size() > 0) {
+                for (MsSuspected msSuspected : listSuspected) {
+
+                    MsSuspected msSuspected1 = new MsSuspected();
+                    msSuspected1.setSuspectedId(IdWorker.getId());
+                    msSuspected1.setReportId(Long.parseLong(listReport.get(0).getReportId().toString()));
+                    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(msSuspected.getTemperature());
+                    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.setUserCreate(userCreate);
+                    msSuspected1.setTimeCreate(DateTime.now());
+                    msSuspected1.setUserUpdate(userCreate);
+                    msSuspected1.setTimeUpdate(DateTime.now());
+                    msSuspectedMapper.insert(msSuspected);
+                }
             }
         }
     }
+
 }

+ 80 - 31
whepi-web/src/main/java/com/bofeng/service/MsSuspectedService.java

@@ -31,11 +31,18 @@ public class MsSuspectedService {
     @Autowired
     private MsReportMapper msReportMapper;
 
+    //查询家人
+    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
+    public MsSuspected selectSuspected(long suspectedId) {
+
+        return msSuspectedMapper.selectById(suspectedId);
+    }
 
+    //添加家人
     @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
     public void addSuspected(String userName, Integer grender, Integer age, Integer familyStatus,
                              String statusDesp, Integer medical, BigDecimal temperature, Integer cough, Integer muscle,
-                             Integer dyspnea, Integer chest, Integer fatigue, Integer diarrhea, Integer diarrheaNum, String others, Long userCreate) {
+                             Integer dyspnea, Integer fatigue, Integer diarrhea, Integer singleRoom, String others, Long userCreate) {
         Long reportId = 0L;
         //如果是当前日期 已经添加
         Date t = new Date();
@@ -43,12 +50,16 @@ public class MsSuspectedService {
         String reportDate = df.format(t);
         List<MsReport> listReport = msReportMapper.selectByReportDate(reportDate, userCreate);
         Long houseId = msReportMapper.selectHouseIdByUserId(userCreate);
+        //首次进入。没有今日报告
         if (listReport == null || listReport.size() == 0) {
             MsReport msReport = new MsReport();
             msReport.setReportId(IdWorker.getId());
             msReport.setHouseId(houseId);
             msReport.setSafetyNum(0);
+            msReport.setSureNum(0);
             msReport.setSuspectedNum(0);
+            msReport.setNormalNum(0);
+            msReport.setSingleNum(0);
             msReport.setRemarks("");
             msReport.setReportDate(DateTime.now().toDate());
             msReport.setMsStatus(2);
@@ -71,14 +82,14 @@ public class MsSuspectedService {
         msSuspected.setAge(age);
         msSuspected.setFamilyStatus(familyStatus);
         msSuspected.setStatusDesp(statusDesp);
+        msSuspected.setMedical(medical);
         msSuspected.setTemperature(temperature);
         msSuspected.setCough(cough);
         msSuspected.setMuscle(muscle);
         msSuspected.setDiarrhea(dyspnea);
-//        msSuspected.setChest(chest);
         msSuspected.setFatigue(fatigue);
         msSuspected.setDiarrhea(diarrhea);
-//        msSuspected.setDiarrheaNum(diarrheaNum);
+        msSuspected.setSingleRoom(singleRoom);
         msSuspected.setOthers(others);
         msSuspected.setUserCreate(userCreate);
         msSuspected.setTimeCreate(DateTime.now());
@@ -86,18 +97,38 @@ public class MsSuspectedService {
         msSuspected.setTimeUpdate(DateTime.now());
         msSuspectedMapper.insert(msSuspected);
 
-        //确证人数
-        Integer isTrue = msReportMapper.selectSuspectedNum(reportId, medical);
-        MsReport msReport = msReportMapper.selectById(reportId);
-        if (msReport != null) {
-            if (medical == 0)
-                msReport.setSuspectedNum(isTrue);
-            if (medical == 1)
-                msReport.setSureNum(isTrue);
-            msReport.setMsStatus(2);
-            // msReport.setUserUpdate(userCreate);
-            // msReport.setTimeUpdate(DateTime.now());
-            msReportMapper.updateById(msReport);
+        //更新今日日报
+        updateReport(msSuspected.getReportId(),msSuspected.getMedical(),msSuspected.getSingleRoom(),msSuspected.getTemperature());
+
+    }
+
+
+    //编辑家人
+    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
+    public void editSuspected(long suspectedId, String userName, Integer grender, Integer age, Integer familyStatus,
+                              String statusDesp, Integer medical, BigDecimal temperature, Integer cough, Integer muscle,
+                              Integer dyspnea, Integer fatigue, Integer diarrhea, Integer singleRoom, String others) {
+
+        MsSuspected msSuspected = msSuspectedMapper.selectById(suspectedId);
+        if (msSuspected != null) {
+            msSuspected.setUserName(userName);
+            msSuspected.setGrender(grender);//默认为家人
+            msSuspected.setAge(age);
+            msSuspected.setFamilyStatus(familyStatus);
+            msSuspected.setStatusDesp(statusDesp);
+            msSuspected.setMedical(medical);
+            msSuspected.setTemperature(temperature);
+            msSuspected.setCough(cough);
+            msSuspected.setMuscle(muscle);
+            msSuspected.setDiarrhea(dyspnea);
+            msSuspected.setFatigue(fatigue);
+            msSuspected.setDiarrhea(diarrhea);
+            msSuspected.setSingleRoom(singleRoom);
+            msSuspected.setOthers(others);
+            msSuspectedMapper.updateById(msSuspected);
+
+            //更新今日日报
+            updateReport(msSuspected.getReportId(),msSuspected.getMedical(),msSuspected.getSingleRoom(),msSuspected.getTemperature());
         }
 
     }
@@ -108,22 +139,40 @@ public class MsSuspectedService {
         MsSuspected msSuspected = msSuspectedMapper.selectById(suspectedId);
         if (msSuspected != null) {
             msSuspectedMapper.deleteById(suspectedId);
-            //确证人数
-            Integer isTrue = msReportMapper.selectSuspectedNum(msSuspected.getReportId(), msSuspected.getMedical());
-            MsReport msReport = msReportMapper.selectById(msSuspected.getReportId());
-            if (msReport != null) {
-                if (msSuspected.getMedical() == 0)
-                    msReport.setSuspectedNum(isTrue);
-                if (msSuspected.getMedical() == 1)
-                    msReport.setSureNum(isTrue);
-                if(isTrue==0)
-                    msReport.setMsStatus(1);
-                else
-                    msReport.setMsStatus(2);
-                msReport.setUserUpdate(msReport.getUserCreate());
-                msReport.setTimeUpdate(DateTime.now());
-                msReportMapper.updateById(msReport);
-            }
+            //更新今日日报
+            updateReport(msSuspected.getReportId(),msSuspected.getMedical(),msSuspected.getSingleRoom(),msSuspected.getTemperature());
+        }
+    }
+    //更新今日日报
+    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
+    public void updateReport(Long reportId, Integer medical, Integer singleRoom, BigDecimal temperature) {
+        //更新今日日报
+        //确诊
+        Integer isTrue = 0, isSingle = 0, isSuspected = 0, isNoSuspected = 0, isFamliy = 0;
+        if (medical == 1)
+            isTrue = msReportMapper.selectSuspectedNum(reportId, medical);
+        //居家隔离
+        if (singleRoom == 1)
+            isSingle = msReportMapper.selectSingleRoomNum(reportId, singleRoom);
+        //疑似
+        if (temperature.compareTo(new BigDecimal(0)) == 1) {
+            //正常
+            isSuspected = msReportMapper.selectisSuspectedNum(reportId, temperature);
+            isNoSuspected = msReportMapper.selectisNoSuspectedNum(reportId, temperature);
+        }
+        //今日居家
+        List<MsSuspected> list = msSuspectedMapper.selectByReportId(reportId);
+        if (list != null && list.size() > 0)
+            isFamliy = list.size();
+        MsReport msReport = msReportMapper.selectById(reportId);
+        if (msReport != null) {
+            msReport.setSureNum(isTrue);
+            msReport.setSingleNum(isSingle);
+            msReport.setSuspectedNum(isSuspected);
+            msReport.setNormalNum(isNoSuspected);
+            msReport.setSafetyNum(isFamliy);
+            msReport.setMsStatus(2);
+            msReportMapper.updateById(msReport);
         }
     }
 }

+ 3 - 3
whepi-web/src/main/java/com/bofeng/wx/controller/HomeController.java

@@ -49,9 +49,9 @@ public class HomeController {
     public ModelAndView home(ModelMap model) throws JsonProcessingException {
         model.put("user", new JsonWapper("{\"www\": \"er\"}"));
         //初始化今日日报
-        UserOpen userOpen = homeService.getUserOpen();
-        Long userId = userOpen.getUserId();
-       // Long userId = 1224706869998772226L;
+        // UserOpen userOpen = homeService.getUserOpen();
+        // Long userId = userOpen.getUserId();
+        Long userId = 1224706869998772226L;
         MsReport msReport = msReportService.getReportByDateNow(userId);
         model.put("msReport", new JsonWapper(msReport));
         return new ModelAndView("/home/home.ftl", model);

+ 43 - 5
whepi-web/src/main/java/com/bofeng/wx/controller/MsReportController.java

@@ -44,12 +44,42 @@ public class MsReportController {
         Integer cough = Integer.parseInt(request.getParameter("cough"));
         Integer muscle = Integer.parseInt(request.getParameter("muscle"));
         Integer dyspnea = Integer.parseInt(request.getParameter("dyspnea"));
-        Integer chest = Integer.parseInt(request.getParameter("chest"));
         Integer fatigue = Integer.parseInt(request.getParameter("fatigue"));
         Integer diarrhea = Integer.parseInt(request.getParameter("diarrhea"));
-        Integer diarrheaNum = Integer.parseInt(request.getParameter("diarrheaNum"));
+        Integer singleRoom = Integer.parseInt(request.getParameter("singleRoom"));
         String others = request.getParameter("others");
-        msSuspectedService.addSuspected(userName, grender, age, familyStatus,statusDesp,medical,temperature,cough,muscle,dyspnea,chest,fatigue,diarrhea,diarrheaNum, others, userCreate);
+        msSuspectedService.addSuspected(userName, grender, age, familyStatus, statusDesp, medical, temperature, cough, muscle, dyspnea, fatigue, diarrhea, singleRoom, others, userCreate);
+        return 1;
+    }
+
+    //查询家人
+    @GetMapping("/home/selectSuspected")
+    public MsSuspected selectSuspected(HttpServletRequest request) {
+        //初始化今日日报
+        Long suspectedId = Long.parseLong(request.getParameter("suspectedId"));
+        return msSuspectedService.selectSuspected(suspectedId);
+    }
+
+    //修改家人
+    @PostMapping("/home/updateSuspected")
+    public Integer updateSuspected(HttpServletRequest request) {
+        //初始化今日日报
+        Long suspectedId = Long.parseLong(request.getParameter("suspectedId"));
+        String userName = request.getParameter("userName");
+        Integer grender = Integer.parseInt(request.getParameter("grender"));
+        Integer age = Integer.parseInt(request.getParameter("age"));
+        Integer familyStatus = Integer.parseInt(request.getParameter("familyStatus"));
+        String statusDesp = request.getParameter("statusDesp");
+        Integer medical = Integer.parseInt(request.getParameter("medical"));
+        BigDecimal temperature = new BigDecimal(request.getParameter("temperature"));
+        Integer cough = Integer.parseInt(request.getParameter("cough"));
+        Integer muscle = Integer.parseInt(request.getParameter("muscle"));
+        Integer dyspnea = Integer.parseInt(request.getParameter("dyspnea"));
+        Integer fatigue = Integer.parseInt(request.getParameter("fatigue"));
+        Integer diarrhea = Integer.parseInt(request.getParameter("diarrhea"));
+        Integer singleRoom = Integer.parseInt(request.getParameter("singleRoom"));
+        String others = request.getParameter("others");
+        msSuspectedService.editSuspected(suspectedId, userName, grender, age, familyStatus, statusDesp, medical, temperature, cough, muscle, dyspnea, fatigue, diarrhea, singleRoom, others);
         return 1;
     }
 
@@ -80,8 +110,8 @@ public class MsReportController {
     @PostMapping("/home/addReport")
     public Integer addReport(HttpServletRequest request) {
         Long userCreate = Long.parseLong(request.getParameter("userCreate"));
-        String safetyNum = request.getParameter("safetyNum");
-        msReportService.addReport(safetyNum, userCreate);
+        Long reportId = Long.parseLong(request.getParameter("reportId"));
+        msReportService.addReport(reportId, userCreate);
         return 1;
     }
 
@@ -90,4 +120,12 @@ public class MsReportController {
     public Model<List<MsSuspected>> queryRibaoReportDate(@Pd(name = "reportDate") String reportDate, @Pd(name = "userCreate") Long userCreate) {
         return Model.newSuccess(msReportService.getByReportReportDate(reportDate, userCreate));
     }
+
+    //通过昨天数据更新今天数据
+    @PostMapping("/home/getNowByYesterday")
+    public Integer getNowByYesterday(HttpServletRequest request) {
+        Long userCreate = Long.parseLong(request.getParameter("userCreate"));
+        msReportService.getNowByYesterday(userCreate);
+        return 1;
+    }
 }