TaskDetailService.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. package com.yihu.jw.service;/**
  2. * Created by nature of king on 2018/4/27.
  3. */
  4. import com.yihu.base.mysql.query.BaseJpaService;
  5. import com.yihu.jw.dao.CredittsLogDetailDao;
  6. import com.yihu.jw.dao.TaskPatientDetailDao;
  7. import com.yihu.jw.entity.health.bank.TaskPatientDetailDO;
  8. import com.yihu.jw.restmodel.common.Envelop;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.jdbc.core.JdbcTemplate;
  11. import org.springframework.stereotype.Service;
  12. import javax.transaction.Transactional;
  13. import java.text.ParseException;
  14. /**
  15. * @author wangzhinan
  16. * @create 2018-04-27 9:35
  17. * @desc health blank Service
  18. **/
  19. @Service
  20. @Transactional
  21. public class TaskDetailService extends BaseJpaService<TaskPatientDetailDO,TaskPatientDetailDao> {
  22. @Autowired
  23. private TaskPatientDetailDao taskPatientDetailDao;
  24. @Autowired
  25. private JdbcTemplate jdbcTemplate;
  26. @Autowired
  27. private CredittsLogDetailDao credittsLogDetailDao;
  28. /**
  29. * 参与任务
  30. *
  31. * @param taskPatientDetailDO
  32. * @return
  33. */
  34. public Envelop<Boolean> insert(TaskPatientDetailDO taskPatientDetailDO){
  35. taskPatientDetailDao.save(taskPatientDetailDO);
  36. Envelop<Boolean> envelop = new Envelop<>();
  37. envelop.setObj(true);
  38. return envelop;
  39. }
  40. /* *//**
  41. * insert health task
  42. *
  43. * @param taskDetailDO
  44. * @return
  45. *//*
  46. public Envelop<Boolean> insert(TaskPatientDetailDO taskDetailDO){
  47. taskPatientDetailDao.save(taskDetailDO);
  48. Envelop<Boolean> envelop = new Envelop<>();
  49. envelop.setObj(true);
  50. return envelop;
  51. }
  52. *//**
  53. * patient or doctor find health task
  54. *
  55. * @param patientId
  56. * @param page
  57. * @param size
  58. * @return
  59. * @throws ParseException
  60. *//*
  61. public Envelop<TaskPatientDetailDO> findTaskByPatient(String patientId, String doctorId, Integer page, Integer size) throws ParseException {
  62. TaskPatientDetailDO taskDetailDO = new TaskPatientDetailDO();
  63. taskDetailDO.setDoctorId(doctorId);
  64. taskDetailDO.setPatientId(patientId);
  65. String sql = new ISqlUtils().getSql(taskDetailDO,page,size,"*");
  66. List<TaskPatientDetailDO> taskDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(TaskPatientDetailDO.class));
  67. String sqlcount = new ISqlUtils().getSql(taskDetailDO,0,0,"count");
  68. List<Map<String,Object>> rstotal = jdbcTemplate.queryForList(sqlcount);
  69. Long count = 0L;
  70. if(rstotal!=null&&rstotal.size()>0){
  71. count = (Long) rstotal.get(0).get("total");
  72. }
  73. return Envelop.getSuccessListWithPage(HealthBankMapping.api_success, taskDetailDOS,page,size,count);
  74. }
  75. *//**
  76. * 修改健康任务
  77. *
  78. * @param taskDetailDO
  79. * @return
  80. *//*
  81. public Envelop<Boolean> update(TaskPatientDetailDO taskDetailDO){
  82. TaskPatientDetailDO taskDetailDO1 = taskPatientDetailDao.findOne(taskDetailDO.getId());
  83. String sql = "select cl.status as status,cl.total as total from health_bank_credits_log cl order by cl.update_time desc";
  84. List<CreditsDetailDO> creditsLogDetailDOList = jdbcTemplate.query(sql,new BeanPropertyRowMapper(CreditsDetailDO.class));
  85. taskPatientDetailDao.save(taskDetailDO);
  86. if (taskDetailDO.getStatus().equalsIgnoreCase("finished")&&!taskDetailDO1.getStatus().equalsIgnoreCase("unfinished")){
  87. CreditsDetailDO creditsLogDetailDO = new CreditsDetailDO();
  88. if (creditsLogDetailDOList == null || creditsLogDetailDOList.size() ==0){
  89. creditsLogDetailDO.setTotal(Long.parseLong(taskDetailDO.getIntegrate()));
  90. }else {
  91. creditsLogDetailDO.setTotal(Long.parseLong(taskDetailDO.getIntegrate().replace("+",""))+ creditsLogDetailDOList.get(0).getTotal());
  92. }
  93. creditsLogDetailDO.setPatientId(taskDetailDO.getPatientId());
  94. creditsLogDetailDO.setIntegrate("+"+ taskDetailDO.getIntegrate());
  95. creditsLogDetailDO.setIntegrateType("HEALTH_TASK");
  96. creditsLogDetailDO.setIntegrateId(taskDetailDO.getId());
  97. creditsLogDetailDO.setStatus("unused");
  98. credittsLogDetailDao.save(creditsLogDetailDO);
  99. }
  100. Envelop<Boolean> envelop = new Envelop<>();
  101. envelop.setObj(true);
  102. return envelop;
  103. }*/
  104. }