|
@ -20,6 +20,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.transaction.Transactional;
|
|
|
import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
@ -252,6 +253,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
taskPatientDetailDO.setStatus(Integer.parseInt("0"));
|
|
|
taskPatientDetailDO.setCreateTime(new Date());
|
|
|
taskPatientDetailDO.setUpdateTime(new Date());
|
|
|
taskPatientDetailDO.setActivityId(taskDO.getTransactionId());
|
|
|
taskPatientDetailDO.setTotal(Long.parseLong("0"));
|
|
|
taskPatientDetailDao.save(taskPatientDetailDO);
|
|
|
}else if (taskPatientDetailDOS != null && taskDOList.get(0).getPeriod() == 0){
|
|
@ -265,6 +267,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
taskPatientDetailDO.setPatientId(creditsDetailDO.getPatientId());
|
|
|
taskPatientDetailDO.setPatientIdcard(creditsDetailDO.getIdCard());
|
|
|
taskPatientDetailDO.setPatientOpenid(creditsDetailDO.getOpenId());
|
|
|
taskPatientDetailDO.setActivityId(taskDO.getTransactionId());
|
|
|
taskPatientDetailDO.setStatus(Integer.parseInt("0"));
|
|
|
taskPatientDetailDO.setCreateTime(new Date());
|
|
|
taskPatientDetailDO.setUpdateTime(new Date());
|
|
@ -352,10 +355,10 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
" WHERE " +
|
|
|
" activity_id = '" + activityId +
|
|
|
"' GROUP BY " +
|
|
|
" patient_openid " +
|
|
|
" patient_id " +
|
|
|
" ORDER BY ptpd.create_time DESC " +
|
|
|
" )btpd1 " +
|
|
|
" WHERE patient_openid IN "+buffer+
|
|
|
" WHERE patient_id IN "+buffer+
|
|
|
" ORDER BY btpd1.total DESC "+" LIMIT " + (page-1)*size+","+size;
|
|
|
List<TaskPatientDetailDO> taskPatientDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(TaskPatientDetailDO.class));
|
|
|
for (TaskPatientDetailDO taskPatientDetailDO : taskPatientDetailDOS){
|
|
@ -525,7 +528,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
* @param ruleId 规则id
|
|
|
* @return
|
|
|
*/
|
|
|
public Envelop<Boolean> doctorAddIntegrate(JSONArray array, String ruleId, String description){
|
|
|
public Envelop<Boolean> doctorAddIntegrate(JSONArray array, String ruleId, String description) throws Exception {
|
|
|
Envelop<Boolean> envelop = new Envelop<>();
|
|
|
for (int i=0;i<array.size();i++){
|
|
|
TaskRuleDO taskRuleDO = taskRuleDao.findOne(ruleId);
|
|
@ -554,6 +557,24 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
}else {
|
|
|
taskDO1 = taskDOList.get(0);
|
|
|
}
|
|
|
if (taskRuleDO.getPeriod() == 1){
|
|
|
String sql = "select * from wlyy_health_bank_task_patient_detail where patient_id = '"+patientId+"'AND task_id ='"+taskDO1.getId()+"'";
|
|
|
List<TaskPatientDetailDO> taskPatientDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(TaskPatientDetailDO.class));
|
|
|
if (taskPatientDetailDOS != null && taskPatientDetailDOS.size() != 0){
|
|
|
throw new Exception("已奖励过");
|
|
|
}
|
|
|
}else if (taskRuleDO.getPeriod() == 0){
|
|
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
Date date = new Date();
|
|
|
String date1 = dateFormat.format(date);
|
|
|
String begin = DateUtils.getMinMonthDate(date1);
|
|
|
String end = DateUtils.getMaxMonthDate(date1);
|
|
|
String sql = "select * from wlyy_health_bank_task_patient_detail where patient_id = '"+patientId+"'AND task_id ='"+taskDO1.getId()+"' AND create_time > '"+begin+"' AND create_time < '"+end+"'";
|
|
|
List<TaskPatientDetailDO> taskPatientDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(TaskPatientDetailDO.class));
|
|
|
if (taskPatientDetailDOS != null && taskPatientDetailDOS.size() != 0){
|
|
|
throw new Exception("已奖励过");
|
|
|
}
|
|
|
}
|
|
|
String sql1 = "select * from wlyy_health_bank_task_patient_detail where task_id = '"+taskDO1.getId()+"' " +
|
|
|
"AND patient_idcard = '"+idCard+"' AND patient_openid = '"+openId+"' AND union_id = '"+unionId+"'";
|
|
|
List<TaskPatientDetailDO> taskPatientDetailDOS = jdbcTemplate.query(sql1,new BeanPropertyRowMapper(TaskPatientDetailDO.class));
|
|
@ -583,23 +604,23 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
creditsDetailDO.setStatus(0);
|
|
|
creditsDetailDO.setDescription(description);
|
|
|
credittsLogDetailDao.save(creditsDetailDO);
|
|
|
CreditsDetailDO creditsDetailDO1 = new CreditsDetailDO();
|
|
|
creditsDetailDO1.setStatus(1);
|
|
|
creditsDetailDO1.setAccountId(accountDOS.get(0).getId());
|
|
|
creditsDetailDO1.setHospital("350205");
|
|
|
creditsDetailDO1.setPatientId(patientId);
|
|
|
creditsDetailDO1.setIntegrate(taskRuleDO.getIntegrate());
|
|
|
creditsDetailDO1.setTradeDirection(taskRuleDO.getTradeDirection());
|
|
|
creditsDetailDO1.setDescription(description);
|
|
|
creditsDetailDO1.setCreateTime(new Date());
|
|
|
creditsDetailDO1.setUpdateTime(new Date());
|
|
|
creditsDetailDO1.setTransactionId(taskDO1.getId());
|
|
|
creditsDetailDO1.setTradeType("HEALTH_TASK");
|
|
|
credittsLogDetailDao.save(creditsDetailDO);
|
|
|
AccountDO accountDO = accountDOS.get(0);
|
|
|
accountDO.setTotal(0);
|
|
|
accountDao.save(accountDO);
|
|
|
}
|
|
|
CreditsDetailDO creditsDetailDO1 = new CreditsDetailDO();
|
|
|
creditsDetailDO1.setStatus(1);
|
|
|
creditsDetailDO1.setAccountId(accountDOS.get(0).getId());
|
|
|
creditsDetailDO1.setHospital("350205");
|
|
|
creditsDetailDO1.setPatientId(patientId);
|
|
|
creditsDetailDO1.setIntegrate(taskRuleDO.getIntegrate());
|
|
|
creditsDetailDO1.setTradeDirection(taskRuleDO.getTradeDirection());
|
|
|
creditsDetailDO1.setDescription(description);
|
|
|
creditsDetailDO1.setCreateTime(new Date());
|
|
|
creditsDetailDO1.setUpdateTime(new Date());
|
|
|
creditsDetailDO1.setTransactionId(taskDO1.getId());
|
|
|
creditsDetailDO1.setTradeType("HEALTH_TASK");
|
|
|
credittsLogDetailDao.save(creditsDetailDO1);
|
|
|
}else{
|
|
|
CreditsDetailDO creditsDetailDO = new CreditsDetailDO();
|
|
|
creditsDetailDO.setStatus(1);
|
|
@ -701,7 +722,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
if (creditsDetailDOS != null && creditsDetailDOS.size() != 0){
|
|
|
CreditsDetailDO creditsDetailDO1 = creditsDetailDOS.get(0);
|
|
|
TaskRuleDO taskRuleDO = taskRuleDao.findOne(taskDO.getRuleCode());
|
|
|
if (creditsDetailDO.getStepNumber() == 5000){
|
|
|
if (creditsDetailDO.getStepNumber() == 50){
|
|
|
creditsDetailDO1.setIntegrate(1);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
|
|
@ -713,7 +734,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
taskPatientDetailDao.save(taskPatientDetailDO);
|
|
|
creditsDetailDOS.clear();
|
|
|
creditsDetailDOS.add(creditsDetailDO2);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 10000){
|
|
|
}else if (creditsDetailDO.getStepNumber() == 100){
|
|
|
creditsDetailDO1.setIntegrate(creditsDetailDO1.getIntegrate()+2);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
|
|
@ -725,8 +746,12 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
taskPatientDetailDao.save(taskPatientDetailDO);
|
|
|
creditsDetailDOS.clear();
|
|
|
creditsDetailDOS.add(creditsDetailDO2);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 50000){
|
|
|
creditsDetailDO1.setIntegrate(creditsDetailDO1.getIntegrate()+5);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 500){
|
|
|
if (creditsDetailDO1.getIntegrate() == 1){
|
|
|
creditsDetailDO1.setIntegrate(creditsDetailDO1.getIntegrate()+7);
|
|
|
}else if(creditsDetailDO1.getIntegrate() == 3){
|
|
|
creditsDetailDO1.setIntegrate(creditsDetailDO1.getIntegrate()+5);
|
|
|
}
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
|
|
|
AccountDO accountDO = accountDao.findOne(creditsDetailDO2.getAccountId());
|
|
@ -739,14 +764,14 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
}
|
|
|
}else{
|
|
|
CreditsDetailDO creditsDetailDO1 = new CreditsDetailDO();
|
|
|
if (creditsDetailDO.getStepNumber() == 5000){
|
|
|
if (creditsDetailDO.getStepNumber() == 50){
|
|
|
creditsDetailDO1.setIntegrate(1);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
|
|
|
}else if (creditsDetailDO.getStepNumber() == 10000){
|
|
|
}else if (creditsDetailDO.getStepNumber() == 100){
|
|
|
creditsDetailDO1.setIntegrate(3);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 50000){
|
|
|
}else if (creditsDetailDO.getStepNumber() == 500){
|
|
|
creditsDetailDO1.setIntegrate(8);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
}
|