PatientCheckTicketService.java 3.05 KB
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
package com.lyms.platform.biz.service;

import com.lyms.platform.biz.dal.PatientCheckTicketDao;
import com.lyms.platform.common.dao.operator.MongoQuery;
import com.lyms.platform.pojo.PatientCheckTicket;
import com.lyms.platform.query.PatientCheckTicketQuery;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.List;

/**
* Created by riecard on 2016/12/28.
*/
@Service
public class PatientCheckTicketService {

@Autowired
private PatientCheckTicketDao patientCheckTicketDao;

public PatientCheckTicket addTicket(PatientCheckTicket obj) {
return patientCheckTicketDao.addTicket(obj);
}

public void updateTicket(PatientCheckTicket obj) {
patientCheckTicketDao.updateTicket(obj);;
}





public String updateTicket(String id, Integer status, String cousumeHospitalId) {
PatientCheckTicket ticket = getTicket(id);
if (ticket == null) {
return "当前免费券不存在";
} else if (ticket.getStatus() == 2) {
return "当前免费券已被使用";
}else if (ticket.getStatus() == 3) {
return "当前免费券已经失效";
}
ticket.setStatus(status);
ticket.setConsumeHospitalId(cousumeHospitalId);
ticket.setConsumeDate(new Date());
updateTicket(ticket);
return null;
}

public void findAndModify(PatientCheckTicketQuery query,PatientCheckTicket ticket){
patientCheckTicketDao.findAndModify(query.convertToQuery(),ticket);
}

public PatientCheckTicket getTicket(String id) {
return patientCheckTicketDao.getTicket(id);
}

public int queryTicketCount(PatientCheckTicketQuery query) {
return patientCheckTicketDao.queryTicketCount(query.convertToQuery());
}

public List<PatientCheckTicket> queryTicket(PatientCheckTicketQuery ticketQuery) {
MongoQuery query = ticketQuery.convertToQuery();
if (StringUtils.isNotEmpty(ticketQuery.getNeed())) {
ticketQuery.mysqlBuild(patientCheckTicketDao.queryTicketCount(query));
query.start(ticketQuery.getOffset()).end(ticketQuery.getLimit());
}
if(!StringUtils.isEmpty(ticketQuery.getSort())){
return patientCheckTicketDao.queryTicket(query.addOrder(Sort.Direction.ASC, ticketQuery.getSort()));
}
return patientCheckTicketDao.queryTicket(query.addOrder(Sort.Direction.DESC, "id"));
}

public List<PatientCheckTicket> queryTicket(String patientId, String hospitalId,String consumeHospitalId,Integer status) {
PatientCheckTicketQuery query = new PatientCheckTicketQuery();
query.setNeed(null);
query.setPatientId(patientId);
query.setHospitalId(hospitalId);
query.setConsumeHospitalId(consumeHospitalId);
query.setStatus(status);
return patientCheckTicketDao.queryTicket(query.convertToQuery().addOrder(Sort.Direction.DESC, "id"));
}

}