|
@ -2,6 +2,7 @@ package com.yihu.jw.service;/**
|
|
|
* Created by nature of king on 2018/4/27.
|
|
|
*/
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.yihu.base.mysql.query.BaseJpaService;
|
|
@ -11,9 +12,11 @@ import com.yihu.jw.restmodel.common.Envelop;
|
|
|
import com.yihu.jw.rm.health.bank.HealthBankMapping;
|
|
|
import com.yihu.jw.util.DateUtils;
|
|
|
import com.yihu.jw.util.ISqlUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
@ -37,6 +40,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
|
|
|
private Logger logger = LoggerFactory.getLogger(CreditsDetailService.class);
|
|
|
|
|
|
private static String STEP = "health:blank:step";
|
|
|
@Autowired
|
|
|
private CredittsLogDetailDao credittsLogDetailDao;
|
|
|
@Autowired
|
|
@ -51,6 +55,8 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
private TaskPatientDetailDao taskPatientDetailDao;
|
|
|
@Autowired
|
|
|
private TaskRuleDao taskRuleDao;
|
|
|
@Autowired
|
|
|
private StringRedisTemplate redisTemplate;
|
|
|
|
|
|
/**
|
|
|
* find creditsLogInfo
|
|
@ -622,7 +628,8 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
String sql = "select * from wlyy_health_bank_account where patient_id = '"+patientId+"'";
|
|
|
List<AccountDO> accountDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(AccountDO.class));
|
|
|
if (taskRuleDO.getTradeDirection() == -1 && taskRuleDO.getIntegrate() == 0){
|
|
|
String integrateSql = "select * from wlyy_health_bank_credits_detail where patient_id = '"+patientId+"'";
|
|
|
String integrateSql = "select * from wlyy_health_bank_credits_detail where patient_id = '"+patientId+"' " +
|
|
|
"AND transaction_id IN (SELECT id FROM wlyy_health_bank_task WHERE task_code IN ('BP_BIND','GLU_BIND','BP_MEASURE','GLU_MEASURE'))";
|
|
|
List<CreditsDetailDO> creditsDetailDOS = jdbcTemplate.query(integrateSql,new BeanPropertyRowMapper(CreditsDetailDO.class));
|
|
|
for (CreditsDetailDO creditsDetailDO:creditsDetailDOS){
|
|
|
creditsDetailDO.setStatus(0);
|
|
@ -743,10 +750,18 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
"transaction_id = '"+creditsDetailDO.getTransactionId()+"' AND create_time > '"+DateUtils.getDayBegin() +"' AND" +
|
|
|
" create_time < '"+DateUtils.getDayEnd()+"'";
|
|
|
List<CreditsDetailDO> creditsDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(CreditsDetailDO.class));
|
|
|
String step = redisTemplate.opsForValue().get(STEP);
|
|
|
if (StringUtils.isEmpty(step)){
|
|
|
throw new Exception("获取步数失败!");
|
|
|
}
|
|
|
JSONObject object = JSONObject.parseObject(step);
|
|
|
int step1 = object.getInteger("step1");
|
|
|
int step2 = object.getInteger("step2");
|
|
|
int step3 = object.getInteger("step3");
|
|
|
if (creditsDetailDOS != null && creditsDetailDOS.size() != 0){
|
|
|
CreditsDetailDO creditsDetailDO1 = creditsDetailDOS.get(0);
|
|
|
TaskRuleDO taskRuleDO = taskRuleDao.findOne(taskDO.getRuleCode());
|
|
|
if (creditsDetailDO.getStepNumber() == 50){
|
|
|
if (creditsDetailDO.getStepNumber() == step1){
|
|
|
creditsDetailDO1.setIntegrate(1);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
|
|
@ -758,7 +773,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
taskPatientDetailDao.save(taskPatientDetailDO);
|
|
|
creditsDetailDOS.clear();
|
|
|
creditsDetailDOS.add(creditsDetailDO2);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 100){
|
|
|
}else if (creditsDetailDO.getStepNumber() == step2){
|
|
|
creditsDetailDO1.setIntegrate(creditsDetailDO1.getIntegrate()+2);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
|
|
@ -770,7 +785,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
taskPatientDetailDao.save(taskPatientDetailDO);
|
|
|
creditsDetailDOS.clear();
|
|
|
creditsDetailDOS.add(creditsDetailDO2);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 500){
|
|
|
}else if (creditsDetailDO.getStepNumber() == step3){
|
|
|
if (creditsDetailDO1.getIntegrate() == 1){
|
|
|
creditsDetailDO1.setIntegrate(creditsDetailDO1.getIntegrate()+7);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
@ -800,13 +815,13 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
|
|
|
}
|
|
|
}else{
|
|
|
CreditsDetailDO creditsDetailDO1 = new CreditsDetailDO();
|
|
|
if (creditsDetailDO.getStepNumber() == 50){
|
|
|
if (creditsDetailDO.getStepNumber() == step1){
|
|
|
creditsDetailDO1.setIntegrate(1);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 100){
|
|
|
}else if (creditsDetailDO.getStepNumber() == step2){
|
|
|
creditsDetailDO1.setIntegrate(3);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
}else if (creditsDetailDO.getStepNumber() == 500){
|
|
|
}else if (creditsDetailDO.getStepNumber() == step3){
|
|
|
creditsDetailDO1.setIntegrate(8);
|
|
|
creditsDetailDO1.setTradeDirection(1);
|
|
|
}
|