MsSuspectedService.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. package com.bofeng.service;
  2. import com.baomidou.mybatisplus.toolkit.IdWorker;
  3. import com.bofeng.dao.MsReportMapper;
  4. import com.bofeng.dao.MsSuspectedMapper;
  5. import com.bofeng.entity.MsReport;
  6. import com.bofeng.entity.MsSuspected;
  7. import org.joda.time.DateTime;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import org.springframework.transaction.annotation.Propagation;
  11. import org.springframework.transaction.annotation.Transactional;
  12. import java.math.BigDecimal;
  13. import java.text.SimpleDateFormat;
  14. import java.util.Date;
  15. import java.util.List;
  16. /**
  17. * @Author: xielianghe
  18. * @Date: 2020/2/4 15:44
  19. */
  20. @Service
  21. @Transactional(readOnly = true)
  22. public class MsSuspectedService {
  23. @Autowired
  24. private MsSuspectedMapper msSuspectedMapper;
  25. @Autowired
  26. private MsReportMapper msReportMapper;
  27. @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
  28. public void addSuspected(String userName, Integer grender, Integer age, Integer familyStatus,
  29. String statusDesp, Integer medical, BigDecimal temperature, Integer cough, Integer muscle,
  30. Integer dyspnea, Integer chest, Integer fatigue, Integer diarrhea, Integer diarrheaNum, String others, Long userCreate) {
  31. Long reportId = 0L;
  32. //如果是当前日期 已经添加
  33. Date t = new Date();
  34. SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
  35. String reportDate = df.format(t);
  36. List<MsReport> listReport = msReportMapper.selectByReportDate(reportDate, userCreate);
  37. Long houseId = msReportMapper.selectHouseIdByUserId(userCreate);
  38. if (listReport == null || listReport.size() == 0) {
  39. MsReport msReport = new MsReport();
  40. msReport.setReportId(IdWorker.getId());
  41. msReport.setHouseId(houseId);
  42. msReport.setSafetyNum(0);
  43. msReport.setSuspectedNum(0);
  44. msReport.setRemarks("");
  45. msReport.setReportDate(DateTime.now().toDate());
  46. msReport.setMsStatus(2);
  47. msReport.setUserCreate(userCreate);
  48. msReport.setTimeCreate(DateTime.now());
  49. msReport.setUserUpdate(userCreate);
  50. msReport.setTimeUpdate(DateTime.now());
  51. msReportMapper.insert(msReport);
  52. reportId = msReport.getReportId();
  53. } else {
  54. reportId = listReport.get(0).getReportId();
  55. }
  56. //添加家人
  57. MsSuspected msSuspected = new MsSuspected();
  58. msSuspected.setSuspectedId(IdWorker.getId());
  59. msSuspected.setReportId(reportId);
  60. msSuspected.setUserName(userName);
  61. msSuspected.setGrender(grender);//默认为家人
  62. msSuspected.setAge(age);
  63. msSuspected.setFamilyStatus(familyStatus);
  64. msSuspected.setStatusDesp(statusDesp);
  65. msSuspected.setTemperature(temperature);
  66. msSuspected.setCough(cough);
  67. msSuspected.setMuscle(muscle);
  68. msSuspected.setDiarrhea(dyspnea);
  69. msSuspected.setChest(chest);
  70. msSuspected.setFatigue(fatigue);
  71. msSuspected.setDiarrhea(diarrhea);
  72. msSuspected.setDiarrheaNum(diarrheaNum);
  73. msSuspected.setOthers(others);
  74. msSuspected.setUserCreate(userCreate);
  75. msSuspected.setTimeCreate(DateTime.now());
  76. msSuspected.setUserUpdate(userCreate);
  77. msSuspected.setTimeUpdate(DateTime.now());
  78. msSuspectedMapper.insert(msSuspected);
  79. //确证人数
  80. Integer isTrue = msReportMapper.selectSuspectedNum(reportId, medical);
  81. MsReport msReport = msReportMapper.selectById(reportId);
  82. if (msReport != null) {
  83. if (medical == 0)
  84. msReport.setSuspectedNum(isTrue);
  85. if (medical == 1)
  86. msReport.setSureNum(isTrue);
  87. msReport.setUserUpdate(userCreate);
  88. msReport.setTimeUpdate(DateTime.now());
  89. msReportMapper.updateById(msReport);
  90. }
  91. }
  92. @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
  93. public void deleteSuspected(Long suspectedId) {
  94. MsSuspected msSuspected = msSuspectedMapper.selectById(suspectedId);
  95. if (msSuspected != null) {
  96. msSuspectedMapper.deleteById(suspectedId);
  97. //确证人数
  98. Integer isTrue = msReportMapper.selectSuspectedNum(msSuspected.getReportId(), msSuspected.getMedical());
  99. MsReport msReport = msReportMapper.selectById(msSuspected.getReportId());
  100. if (msReport != null) {
  101. if (msSuspected.getMedical() == 0)
  102. msReport.setSuspectedNum(isTrue);
  103. if (msSuspected.getMedical() == 1)
  104. msReport.setSureNum(isTrue);
  105. msReport.setUserUpdate(msReport.getUserCreate());
  106. msReport.setTimeUpdate(DateTime.now());
  107. msReportMapper.updateById(msReport);
  108. }
  109. }
  110. }
  111. }