|
@ -10,7 +10,11 @@ import com.yihu.jw.entity.base.im.ConsultTeamDo;
|
|
|
import com.yihu.jw.entity.base.im.ConsultTeamDoctorDo;
|
|
|
import com.yihu.jw.entity.base.im.ConsultTeamLogDo;
|
|
|
import com.yihu.jw.entity.base.patient.BasePatientDO;
|
|
|
import com.yihu.jw.entity.base.score.BaseEvaluateDO;
|
|
|
import com.yihu.jw.entity.base.score.BaseEvaluateScoreDO;
|
|
|
import com.yihu.jw.entity.hospital.prescription.WlyyOutpatientDO;
|
|
|
import com.yihu.jw.evaluate.score.dao.BaseEvaluateDao;
|
|
|
import com.yihu.jw.evaluate.score.dao.BaseEvaluateScoreDao;
|
|
|
import com.yihu.jw.hospital.prescription.dao.OutpatientDao;
|
|
|
import com.yihu.jw.im.dao.ConsultDao;
|
|
|
import com.yihu.jw.im.dao.ConsultTeamDao;
|
|
@ -68,6 +72,11 @@ public class ImService {
|
|
|
@Autowired
|
|
|
public BasePatientDao basePatientDao;
|
|
|
|
|
|
@Autowired
|
|
|
public BaseEvaluateScoreDao baseEvaluateScoreDao;
|
|
|
@Autowired
|
|
|
public BaseEvaluateDao baseEvaluateDao;
|
|
|
|
|
|
@Autowired
|
|
|
public ImUtil imUtil;
|
|
|
|
|
@ -1097,5 +1106,71 @@ public class ImService {
|
|
|
}
|
|
|
return id;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 评价咨询
|
|
|
* @param consult
|
|
|
* @param scoreContent
|
|
|
* @param type
|
|
|
*/
|
|
|
public void evaluationByConsultCode(String consult, String scoreContent, Integer type) throws Exception{
|
|
|
JSONArray jsonArray = JSONArray.parseArray(scoreContent);
|
|
|
|
|
|
Integer totalScore = 0;
|
|
|
|
|
|
ConsultTeamDo consultTeamDo = consultTeamDao.findByConsult(consult);
|
|
|
|
|
|
if(!jsonArray.isEmpty() && jsonArray.size() >0){
|
|
|
BaseEvaluateScoreDO evaluateScoreDO = new BaseEvaluateScoreDO();
|
|
|
evaluateScoreDO.setDoctor(consultTeamDo.getDoctor());
|
|
|
evaluateScoreDO.setDoctorName(consultTeamDo.getDoctorName());
|
|
|
evaluateScoreDO.setPatient(consultTeamDo.getPatient());
|
|
|
evaluateScoreDO.setPatientName(consultTeamDo.getName());
|
|
|
evaluateScoreDO.setRelationCode(consult);
|
|
|
evaluateScoreDO.setEvaluateType(1);
|
|
|
evaluateScoreDO.setType(type);
|
|
|
evaluateScoreDO.setId(UUID.randomUUID().toString());
|
|
|
|
|
|
String content = "";//评价内容
|
|
|
|
|
|
List<BaseEvaluateDO> baseEvaluateDOS = new ArrayList<>();
|
|
|
for (int i = 0; i < jsonArray.size(); i++) {
|
|
|
JSONObject job = jsonArray.getJSONObject(i);
|
|
|
if("4".equals(job.getString("scoreType"))){//非评价类型
|
|
|
|
|
|
content = job.getString("content");
|
|
|
BaseEvaluateDO baseEvaluateDO = new BaseEvaluateDO();
|
|
|
baseEvaluateDO.setScoreType(job.getString("scoreType"));
|
|
|
baseEvaluateDO.setScore(new Double(String.valueOf(job.getInteger("score"))));
|
|
|
baseEvaluateDO.setRelationCode(evaluateScoreDO.getId());
|
|
|
baseEvaluateDO.setContent(content);
|
|
|
baseEvaluateDOS.add(baseEvaluateDO);
|
|
|
}else{
|
|
|
BaseEvaluateDO baseEvaluateDO = new BaseEvaluateDO();
|
|
|
baseEvaluateDO.setScoreType(job.getString("scoreType"));
|
|
|
baseEvaluateDO.setScore(new Double(String.valueOf(job.getInteger("score"))));
|
|
|
baseEvaluateDO.setRelationCode(evaluateScoreDO.getId());
|
|
|
totalScore += job.getInteger("score");
|
|
|
baseEvaluateDOS.add(baseEvaluateDO);
|
|
|
}
|
|
|
}
|
|
|
evaluateScoreDO.setScore((double) totalScore / 3);
|
|
|
|
|
|
evaluateScoreDO = baseEvaluateScoreDao.save(evaluateScoreDO);
|
|
|
|
|
|
for(BaseEvaluateDO baseEvaluateDO :baseEvaluateDOS){
|
|
|
baseEvaluateDao.save(baseEvaluateDO);
|
|
|
}
|
|
|
|
|
|
consultTeamDo.setEvaluate(1);//保存已评价标识
|
|
|
consultTeamDo.setEvaluateTime(new Date());
|
|
|
consultTeamDao.save(consultTeamDo);
|
|
|
|
|
|
/**
|
|
|
* todo 保存就诊记录表已评价标识
|
|
|
*/
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|