|
@ -205,6 +205,7 @@ public class ServicePackageService extends BaseJpaService<ServicePackageDO, Serv
|
|
|
}
|
|
|
BaseDoctorDO doctorDO = doctorDao.findById(uid);
|
|
|
signRecordDO.setCheckTime(DateUtil.getStringDate());
|
|
|
signRecordDO.setUpdateTime(new Date());
|
|
|
if(doctorDO!=null){
|
|
|
signRecordDO.setCheckDoctor(doctorDO.getId());
|
|
|
signRecordDO.setCheckDoctorName(doctorDO.getName());
|
|
@ -324,6 +325,16 @@ public class ServicePackageService extends BaseJpaService<ServicePackageDO, Serv
|
|
|
if(signRecordDO == null){
|
|
|
return null;
|
|
|
}
|
|
|
if(2==signRecordDO.getStatus()){
|
|
|
//判断是否支付过期
|
|
|
String overTime = DateUtil.getNextMinute(DateUtil.dateToStrLong(signRecordDO.getUpdateTime()),Integer.parseInt(signRecordDO.getPayTime()));
|
|
|
long over = DateUtil.compareDate(DateUtil.YYYY_MM_DD_HH_MM_SS,DateUtil.getStringDate(),overTime);
|
|
|
if(over<=0){
|
|
|
signRecordDO.setStatus(-2);
|
|
|
signRecordDO.setLostReason("超时未支付,系统自动关闭申请");
|
|
|
servicePackageSignRecordDao.save(signRecordDO);
|
|
|
}
|
|
|
}
|
|
|
ServicePackageDO servicePackageDO = servicePackageDao.findOne(signRecordDO.getServicePackageId());
|
|
|
List<ServicePackageItemDO> itemDOList = null;
|
|
|
if("1".equals(type)){
|
|
@ -349,7 +360,7 @@ public class ServicePackageService extends BaseJpaService<ServicePackageDO, Serv
|
|
|
int signNum = 0;//已签约
|
|
|
int expiredNum = 0;//已到期
|
|
|
String sql = "SELECT COUNT(sr.id) num,status from base_service_package_sign_record sr " +
|
|
|
"WHERE sr.status=1 and sr.check_doctor = '"+doctorId+"' group by status";
|
|
|
"WHERE sr.check_doctor = '"+doctorId+"' group by status";
|
|
|
List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
|
|
|
for (Map<String,Object> map :list){
|
|
|
String status = map.get("status")+"";
|
|
@ -387,7 +398,8 @@ public class ServicePackageService extends BaseJpaService<ServicePackageDO, Serv
|
|
|
public PageEnvelop signPage(String patientId,String doctorId,String name,String status,Integer page,Integer size){
|
|
|
String sql = "SELECT DISTINCT ar.level_conclusion,di2.dict_value levelConclusionName,r.id,r.`status`,di.dict_value statusName" +
|
|
|
",r.patient,p.`name`,p.sex,p.mobile,p.idcard,p.birthday,p.openid,r.service_package_id servicePackageId " +
|
|
|
",p.photo,DATE_FORMAT(r.create_time,'%Y-%m-%d %H:%i:%S') createTime,r.type,sp.`name` packageName,sp.num,sp.org_name orgName";
|
|
|
",p.photo,DATE_FORMAT(r.create_time,'%Y-%m-%d %H:%i:%S') createTime,r.type,sp.`name` packageName,sp.num,sp.org_name orgName" +
|
|
|
",DATE_FORMAT(r.update_time,'%Y-%m-%d %H:%i:%S') updateTime,r.pay_time payTime,r.lost_reason lostReason,r.refuse_type refuseType ";
|
|
|
String countSql = "select count(distinct r.id) ";
|
|
|
String filter = " from base_service_package_sign_record r " +
|
|
|
" inner JOIN base_patient p on p.id = r.patient " +
|
|
@ -411,9 +423,23 @@ public class ServicePackageService extends BaseJpaService<ServicePackageDO, Serv
|
|
|
String oderBy = " order by r.create_time desc limit "+(page-1)*size+","+size;
|
|
|
List<Map<String,Object>> list = jdbcTemplate.queryForList(sql+filter+oderBy);
|
|
|
for (Map<String,Object> map:list){
|
|
|
String id = map.get("id")+"";
|
|
|
String sta = map.get("status")+"";
|
|
|
String payTime = map.get("payTime")+"";
|
|
|
String updateTime = map.get("updateTime")+"";
|
|
|
String idcard = map.get("idcard")+"";
|
|
|
String birthday = map.get("birthday")+"";
|
|
|
map.put("age", IdCardUtil.getAgeByBirthdayStrOrIdcard(idcard,birthday));
|
|
|
if("2".equals(sta)){
|
|
|
//判断是否支付过期
|
|
|
String overTime = DateUtil.getNextMinute(updateTime,Integer.parseInt(payTime));
|
|
|
long over = DateUtil.compareDate(DateUtil.YYYY_MM_DD_HH_MM_SS,DateUtil.getStringDate(),overTime);
|
|
|
if(over<=0){
|
|
|
jdbcTemplate.execute("UPDATE base_service_package_sign_record set `status`=-2,lost_reason='超时未支付,系统自动关闭申请' where id='"+id+"'");
|
|
|
map.put("status","-2");
|
|
|
map.put("lostReason","超时未支付,系统自动关闭申请");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
long count = jdbcTemplate.queryForObject(countSql+filter,Long.class);
|
|
|
return PageEnvelop.getSuccessListWithPage("查询成功",list,page,size,count);
|