package com.bofeng.wx.controller; import com.bofeng.entity.*; import com.bofeng.service.MsReportService; import com.bofeng.service.MsSuspectedService; import com.bofeng.service.MsTripService; import com.yvan.Model; import com.yvan.ModelOps; import com.yvan.mvc.Pd; import com.yvan.platform.Conv; import com.yvan.springmvc.HttpParameterParser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; /** * @Author: xielianghe * @Date: 2020/2/4 15:38 */ @RestController public class MsReportController { @Autowired private MsSuspectedService msSuspectedService; @Autowired private MsReportService msReportService; @Autowired private MsTripService msTripService; //添加家人 @PostMapping("/home/addRibao") public MsReport saveUser(HttpServletRequest request) throws UnsupportedEncodingException { //初始化今日日报 Long suspectedId = Conv.NL(request.getParameter("suspectedId")); Long userCreate = Conv.NL(request.getParameter("userCreate")); String userName = request.getParameter("userName").trim(); byte[] utf8Bytes = userName.getBytes("UTF-8"); userName = new String(utf8Bytes, "UTF-8"); Integer grender = Conv.NI(request.getParameter("grender")); Integer age = Conv.NI(request.getParameter("age")); String familyStatus = request.getParameter("familyStatus"); String statusDesp = request.getParameter("statusDesp"); Integer medical = Conv.NI(request.getParameter("medical")); BigDecimal temperature = new BigDecimal(request.getParameter("temperature")); Integer cough = Conv.NI(request.getParameter("cough")); Integer muscle = Conv.NI(request.getParameter("muscle")); Integer dyspnea = Conv.NI(request.getParameter("dyspnea")); Integer fatigue = Conv.NI(request.getParameter("fatigue")); Integer diarrhea = Conv.NI(request.getParameter("diarrhea")); Integer singleRoom = Conv.NI(request.getParameter("singleRoom")); String others = request.getParameter("others"); Integer scoreRezult = Conv.NI(request.getParameter("scoreRezult")); Integer temperatureScore = Conv.NI(request.getParameter("temperatureScore")); Integer scoreHistroy = Conv.NI(request.getParameter("scoreHistroy")); Integer score = Conv.NI(request.getParameter("score")); MsReport msReport = new MsReport(); Long reportId = msSuspectedService.addSuspected(suspectedId, userName, grender, age, familyStatus, statusDesp, medical, temperature, cough, muscle, dyspnea, fatigue, diarrhea, singleRoom, others, userCreate, scoreRezult, temperatureScore, scoreHistroy, score); if (reportId == 2L) msReport.setMsgReport("2"); else msReport = msReportService.getByReport(reportId); return msReport; } //查询用户最近一天的一个家人 @GetMapping("/home/selectAddSuspected") public MsSuspected selectAddSuspected(HttpServletRequest request) { Long userCreate = Long.parseLong(request.getParameter("userCreate")); return msSuspectedService.selectAddSuspected(userCreate); } //查询家人 @GetMapping("/home/selectSuspected") public MsSuspected selectSuspected(HttpServletRequest request) { //初始化今日日报 Long suspectedId = Long.parseLong(request.getParameter("suspectedId")); return msSuspectedService.selectSuspected(suspectedId); } //查询出行详细 @GetMapping("/home/selectTripSuspected") public Model> selectTripSuspected(HttpServletRequest request) { //初始化今日日报 Long suspectedId = Long.parseLong(request.getParameter("suspectedId")); return Model.newSuccess(msSuspectedService.selectTripSuspected(suspectedId)); } //删除家人病例 @PostMapping("/home/deleteSuspected") public MsReport deleteSuspected(HttpServletRequest request) { Long suspectedId = Long.parseLong(request.getParameter("suspectedId")); MsSuspected msSuspected = msSuspectedService.selectSuspected(suspectedId); msSuspectedService.deleteSuspected(suspectedId); msTripService.deleteTrip(suspectedId); if (msSuspected != null) return msReportService.getByReport(msSuspected.getReportId()); else return null; } //根据点击获取家人 @GetMapping("/home/home/queryRibao") public Model> queryRibao(@Pd(name = "userCreate") Long userCreate) { Date t = new Date(); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); String reportDate = df.format(t); //今日有记录 List list = msReportService.getByReportReportDate(reportDate, userCreate); if (list != null && list.size() > 0) return Model.newSuccess(list); //获取用户最新的记录 else { // return Model.newSuccess(msSuspectedService.selectNextSuspected(userCreate)); return null; } } //根据日报获取家人 @GetMapping("/home/home/queryRibaoRefresh") public Model> queryRibaoRefresh(@Pd(name = "reportId") Long reportId, @Pd(name = "userCreate") Long userCreate) { return Model.newSuccess(msReportService.getByReportId(reportId)); } //全家报平安 @PostMapping("/home/addReport") public ModelOps addReport(HttpServletRequest request) { Long userCreate = Long.parseLong(request.getParameter("userCreate")); int re = msReportService.addReport(userCreate); if (re == 1) { return ModelOps.newSuccess(); } else if (re == 2) { //没有上报体温 return ModelOps.newFail("请填报今日体温!"); } else if (re == 3) { //没有选择家人 return ModelOps.newFail("请选择家人!"); } else if (re == 4) { return ModelOps.newFail("是否出行,请如实填写!"); } else if (re == 5) { return ModelOps.newFail("ly集团,只能选择一个人员!"); } return ModelOps.newFail("上报错误"); } //根据日期获取家人 @GetMapping("/home/home/queryRibaoReportDate") public Model> queryRibaoReportDate(@Pd(name = "reportDate") String reportDate, @Pd(name = "userCreate") Long userCreate) { return Model.newSuccess(msReportService.getByReportReportDateStatus(reportDate, userCreate)); } //通过昨天数据更新今天数据 @PostMapping("/home/getNowByYesterday") public Integer getNowByYesterday(HttpServletRequest request) { Long userCreate = Long.parseLong(request.getParameter("userCreate")); msReportService.getNowByYesterday(userCreate); return 1; } //健康评估 @PostMapping("/home/addScore") public MsSuspected addScore(HttpServletRequest request) { Long suspectedId = Conv.NL(request.getParameter("suspectedId")); String userName = request.getParameter("userName"); Long userCreate = Conv.NL(request.getParameter("userCreate")); Integer medical = Conv.NI(request.getParameter("medical")); BigDecimal temperature = new BigDecimal(request.getParameter("temperature")); Integer cough = Conv.NI(request.getParameter("cough")); Integer muscle = Conv.NI(request.getParameter("muscle")); Integer dyspnea = Conv.NI(request.getParameter("dyspnea")); Integer fatigue = Conv.NI(request.getParameter("fatigue")); Integer diarrhea = Conv.NI(request.getParameter("diarrhea")); return msSuspectedService.getScore(suspectedId, userName, medical, temperature, cough, muscle, dyspnea, fatigue, diarrhea, userCreate); } //后台专用 @GetMapping("/whepi/home/queryRibaoTest") public Model> queryRibaoTest( HttpParameterParser parser) { Long userCreate = 1231543603566841858L; return Model.newSuccess(msReportService.getByReportReportDateTest(userCreate, parser.getMap())); } @GetMapping("/whepi/home/queryRibaoTestxq") public Model> queryRibaoTestxq( HttpParameterParser parser) { return Model.newSuccess(msReportService.getByReportReportDateTestxq(parser.getMap())); } //获取上报明细 @GetMapping("/whepi/home/getRibaoDetail") public Model> getRibaoDetail(@Pd(name = "reportId") Long reportId) { return Model.newSuccess(msReportService.getByReportId(reportId)); } }