|  | @ -5,12 +5,15 @@ import com.alibaba.fastjson.JSONArray;
 | 
												
													
														
															|  | import com.alibaba.fastjson.JSONObject;
 |  | import com.alibaba.fastjson.JSONObject;
 | 
												
													
														
															|  | import com.alibaba.fastjson.serializer.SerializerFeature;
 |  | import com.alibaba.fastjson.serializer.SerializerFeature;
 | 
												
													
														
															|  | import com.fasterxml.jackson.databind.ObjectMapper;
 |  | import com.fasterxml.jackson.databind.ObjectMapper;
 | 
												
													
														
															|  | 
 |  | import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ;
 | 
												
													
														
															|  | import com.yihu.jw.care.dao.device.PatientDeviceDao;
 |  | import com.yihu.jw.care.dao.device.PatientDeviceDao;
 | 
												
													
														
															|  | import com.yihu.jw.care.dao.security.*;
 |  | import com.yihu.jw.care.dao.security.*;
 | 
												
													
														
															|  | import com.yihu.jw.care.service.sign.ServicePackageService;
 |  | import com.yihu.jw.care.service.sign.ServicePackageService;
 | 
												
													
														
															|  | import com.yihu.jw.care.util.MessageUtil;
 |  | import com.yihu.jw.care.util.MessageUtil;
 | 
												
													
														
															|  | import com.yihu.jw.doctor.dao.BaseDoctorDao;
 |  | import com.yihu.jw.doctor.dao.BaseDoctorDao;
 | 
												
													
														
															|  | 
 |  | import com.yihu.jw.doctor.dao.BaseDoctorHospitalDao;
 | 
												
													
														
															|  | import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
 |  | import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
 | 
												
													
														
															|  | 
 |  | import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO;
 | 
												
													
														
															|  | import com.yihu.jw.entity.base.patient.BasePatientDO;
 |  | import com.yihu.jw.entity.base.patient.BasePatientDO;
 | 
												
													
														
															|  | import com.yihu.jw.entity.base.servicePackage.ServicePackageRecordDO;
 |  | import com.yihu.jw.entity.base.servicePackage.ServicePackageRecordDO;
 | 
												
													
														
															|  | import com.yihu.jw.entity.care.device.PatientDevice;
 |  | import com.yihu.jw.entity.care.device.PatientDevice;
 | 
												
											
												
													
														
															|  | @ -18,6 +21,7 @@ import com.yihu.jw.entity.care.securitymonitoring.*;
 | 
												
													
														
															|  | import com.yihu.jw.hospital.message.dao.SystemMessageDao;
 |  | import com.yihu.jw.hospital.message.dao.SystemMessageDao;
 | 
												
													
														
															|  | import com.yihu.jw.patient.dao.BasePatientDao;
 |  | import com.yihu.jw.patient.dao.BasePatientDao;
 | 
												
													
														
															|  | import com.yihu.jw.restmodel.ResponseContant;
 |  | import com.yihu.jw.restmodel.ResponseContant;
 | 
												
													
														
															|  | 
 |  | import com.yihu.jw.rm.base.BaseRequestMapping;
 | 
												
													
														
															|  | import com.yihu.jw.util.common.IdCardUtil;
 |  | import com.yihu.jw.util.common.IdCardUtil;
 | 
												
													
														
															|  | import com.yihu.jw.util.date.DateUtil;
 |  | import com.yihu.jw.util.date.DateUtil;
 | 
												
													
														
															|  | import com.yihu.jw.util.entity.EntityUtils;
 |  | import com.yihu.jw.util.entity.EntityUtils;
 | 
												
											
												
													
														
															|  | @ -63,6 +67,8 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |     private BaseDoctorDao baseDoctorDao;
 |  |     private BaseDoctorDao baseDoctorDao;
 | 
												
													
														
															|  |     @Autowired
 |  |     @Autowired
 | 
												
													
														
															|  |     private SecurityMonitoringConclusionDao securityMonitoringConclusionDao;
 |  |     private SecurityMonitoringConclusionDao securityMonitoringConclusionDao;
 | 
												
													
														
															|  | 
 |  |     @Autowired
 | 
												
													
														
															|  | 
 |  |     private BaseDoctorHospitalDao baseDoctorHospitalDao;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     private Logger logger = LoggerFactory.getLogger(SecurityMonitoringOrderService.class);
 |  |     private Logger logger = LoggerFactory.getLogger(SecurityMonitoringOrderService.class);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
											
												
													
														
															|  | @ -115,10 +121,13 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         //签约防走失服务包
 |  |         //签约防走失服务包
 | 
												
													
														
															|  |         List<ServicePackageRecordDO> signRecords = servicePackageService.servicePackageByPatient(orderDO.getPatient(),"3");
 |  | 
 | 
												
													
														
															|  |         if (signRecords.size()==0) {
 |  | 
 | 
												
													
														
															|  | 
 |  |         String sql ="SELECT i.code from base_service_package_sign_record sr,base_service_package_record r, base_service_package_item i  \n" +
 | 
												
													
														
															|  | 
 |  |                 "where  sr.id = r.sign_id and sr.status=1 and r.service_package_id = i.service_package_id   and i.del = 1 and sr.`status`=1 \n" +
 | 
												
													
														
															|  | 
 |  |                 "and  sr.patient  = '"+orderDO.getPatient()+"' and i.code=8 ";
 | 
												
													
														
															|  | 
 |  |        List<String> items = jdbcTemplate.queryForList(sql,String.class);
 | 
												
													
														
															|  | 
 |  |         if (items.size()==0) {
 | 
												
													
														
															|  |             result.put("resultFlag", 0);
 |  |             result.put("resultFlag", 0);
 | 
												
													
														
															|  |             String failMsg = "当前服务对象未签约防走失服务包,请完成签约后再发起工单!";
 |  | 
 | 
												
													
														
															|  | 
 |  |             String failMsg = "当前服务对象未签约防走失服务,请签约后再发起预警!";
 | 
												
													
														
															|  |             result.put("resultMsg", failMsg);
 |  |             result.put("resultMsg", failMsg);
 | 
												
													
														
															|  |             logger.error(failMsg);
 |  |             logger.error(failMsg);
 | 
												
													
														
															|  |             return result;
 |  |             return result;
 | 
												
											
												
													
														
															|  | @ -173,7 +182,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |                 orderDO.setMonitoringConclusion(conclusionDO);
 |  |                 orderDO.setMonitoringConclusion(conclusionDO);
 | 
												
													
														
															|  |             }
 |  |             }
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(orderDO, SerializerFeature.WriteMapNullValue));
 |  | 
 | 
												
													
														
															|  | 
 |  |         JSONObject jsonObject = JSON.parseObject(JSON.toJSONStringWithDateFormat(orderDO,"yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue));
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         jsonObject.put("conclusionStatusName",conclusionStatusName);
 |  |         jsonObject.put("conclusionStatusName",conclusionStatusName);
 | 
												
													
														
															|  |         Integer statustemp = Integer.valueOf(orderDO.getStatus()+"");
 |  |         Integer statustemp = Integer.valueOf(orderDO.getStatus()+"");
 | 
												
											
												
													
														
															|  | @ -188,28 +197,42 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |             case 6:statusName="待评价";break;
 |  |             case 6:statusName="待评价";break;
 | 
												
													
														
															|  |             case 7:statusName="已完成";break;
 |  |             case 7:statusName="已完成";break;
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  | 
 |  |         BasePatientDO patientDO = basePatientDao.findById(orderDO.getPatient());
 | 
												
													
														
															|  | 
 |  |         if (patientDO!=null){
 | 
												
													
														
															|  | 
 |  |             jsonObject.put("patientAddress",patientDO.getAddress());
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         else {
 | 
												
													
														
															|  | 
 |  |             jsonObject.put("patientAddress",null);
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  |         jsonObject.put("statusName",statusName);
 |  |         jsonObject.put("statusName",statusName);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         result.put("resultFlag", 1);
 |  |         result.put("resultFlag", 1);
 | 
												
													
														
															|  |         result.put("resultMsg",jsonObject);
 |  |         result.put("resultMsg",jsonObject);
 | 
												
													
														
															|  |         return result;
 |  |         return result;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     public JSONArray getSecurityOrderList(String doctor, String patient, String status, Integer page, Integer pageSize){
 |  | 
 | 
												
													
														
															|  |         String sql = " select p.id patientCode,p.name,p.sex,p.idcard,ord.id orderId,ord.number,ord.serve_desc,ord.create_time,ord.`status`,ord.doctor," +
 |  | 
 | 
												
													
														
															|  | 
 |  |     public JSONArray getSecurityOrderList(String doctor,String serverDoctor,String patientName, String patient, String status, Integer page, Integer pageSize){
 | 
												
													
														
															|  | 
 |  |         String sql = " select p.id patientCode,p.name,p.sex,p.photo,p.idcard,ord.id orderId,ord.number,ord.serve_desc,ord.create_time,ord.`status`,ord.doctor," +
 | 
												
													
														
															|  |                 "ord.doctor_name,ord.patient_phone,ord.conclusion_status from base_security_monitoring_order ord INNER JOIN base_patient p on p.id = ord.patient " +
 |  |                 "ord.doctor_name,ord.patient_phone,ord.conclusion_status from base_security_monitoring_order ord INNER JOIN base_patient p on p.id = ord.patient " +
 | 
												
													
														
															|  |                 "where 1=1 ";
 |  |                 "where 1=1 ";
 | 
												
													
														
															|  |         if (StringUtils.isNotBlank(doctor)){
 |  | 
 | 
												
													
														
															|  |             sql +=" and ord.doctor = '"+doctor+"' ";
 |  | 
 | 
												
													
														
															|  | 
 |  |         List<BaseDoctorHospitalDO> hospitalDOs = baseDoctorHospitalDao.findByDoctorCode(doctor);
 | 
												
													
														
															|  | 
 |  |         if (hospitalDOs.size()>0){
 | 
												
													
														
															|  | 
 |  |             sql += "and ord.hospital = '"+hospitalDOs.get(0).getOrgCode()+"' ";
 | 
												
													
														
															|  | 
 |  |         }else  {
 | 
												
													
														
															|  | 
 |  |             return new JSONArray();
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         if (StringUtils.isNotBlank(serverDoctor)){
 | 
												
													
														
															|  | 
 |  |             sql +=" and ord.doctor = '"+serverDoctor+"' ";
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         if (StringUtils.isNotBlank(patientName)){
 | 
												
													
														
															|  | 
 |  |             sql+=" and (ord.patient_name like '%"+patientName+"%' or p.idcard='"+patientName+"')  ";
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if (StringUtils.isNotBlank(patient)){
 |  |         if (StringUtils.isNotBlank(patient)){
 | 
												
													
														
															|  |             sql+=" and ord.patient_name= like '%"+patient+"%' ";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql+=" and ord.patient='"+patient+"' ";
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if (StringUtils.isNotBlank(status)){
 |  |         if (StringUtils.isNotBlank(status)){
 | 
												
													
														
															|  |             sql+=" and ord.status='"+Integer.parseInt(status)+"' ";
 |  |             sql+=" and ord.status='"+Integer.parseInt(status)+"' ";
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         if (StringUtils.isBlank(status)||status.equals("1")){//状态为空或待处置时 查询该医生签约团队居民的预警
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         sql+=" order by ord.create_time desc limit " + (page*pageSize) + "," + pageSize;
 |  |         sql+=" order by ord.create_time desc limit " + (page*pageSize) + "," + pageSize;
 | 
												
													
														
															|  |         List<Map<String,Object>> sqlResult = jdbcTemplate.queryForList(sql);
 |  |         List<Map<String,Object>> sqlResult = jdbcTemplate.queryForList(sql);
 | 
												
											
												
													
														
															|  | @ -220,6 +243,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |             tmp.put("patientCode",one.get("patientCode"));
 |  |             tmp.put("patientCode",one.get("patientCode"));
 | 
												
													
														
															|  |             tmp.put("patientName",one.get("name"));
 |  |             tmp.put("patientName",one.get("name"));
 | 
												
													
														
															|  |             tmp.put("sex",one.get("sex"));
 |  |             tmp.put("sex",one.get("sex"));
 | 
												
													
														
															|  | 
 |  |             tmp.put("photo",one.get("photo"));
 | 
												
													
														
															|  |             tmp.put("idcard",one.get("idcard"));
 |  |             tmp.put("idcard",one.get("idcard"));
 | 
												
													
														
															|  |             tmp.put("number",one.get("number"));
 |  |             tmp.put("number",one.get("number"));
 | 
												
													
														
															|  |             tmp.put("id",one.get("orderId"));
 |  |             tmp.put("id",one.get("orderId"));
 | 
												
											
												
													
														
															|  | @ -228,7 +252,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |             tmp.put("createTime", DateUtil.dateToStr(date,"yyyy-MM-dd hh:mm:ss"));
 |  |             tmp.put("createTime", DateUtil.dateToStr(date,"yyyy-MM-dd hh:mm:ss"));
 | 
												
													
														
															|  |             tmp.put("status",one.get("status"));
 |  |             tmp.put("status",one.get("status"));
 | 
												
													
														
															|  |             tmp.put("doctor",one.get("doctor"));
 |  |             tmp.put("doctor",one.get("doctor"));
 | 
												
													
														
															|  |             tmp.put("doctorName",one.get("doctor_ame"));
 |  | 
 | 
												
													
														
															|  | 
 |  |             tmp.put("doctorName",one.get("doctor_name"));
 | 
												
													
														
															|  |             tmp.put("patientPhone",one.get("patient_phone"));
 |  |             tmp.put("patientPhone",one.get("patient_phone"));
 | 
												
													
														
															|  |             tmp.put("conclusionStatus",one.get("conclusion_status"));
 |  |             tmp.put("conclusionStatus",one.get("conclusion_status"));
 | 
												
													
														
															|  |             Integer conclusionStatus = Integer.valueOf(one.get("conclusion_status")==null?"0":(one.get("conclusion_status")+""));
 |  |             Integer conclusionStatus = Integer.valueOf(one.get("conclusion_status")==null?"0":(one.get("conclusion_status")+""));
 | 
												
											
												
													
														
															|  | @ -265,6 +289,33 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         return result;
 |  |         return result;
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  |     public List<Map<String,Object>> getSecurityOrderUnCompleteList(String doctor){
 | 
												
													
														
															|  | 
 |  |         List<BaseDoctorHospitalDO> hospitalDOs = baseDoctorHospitalDao.findByDoctorCode(doctor);
 | 
												
													
														
															|  | 
 |  |         List<Map<String,Object>> result = new ArrayList<>();
 | 
												
													
														
															|  | 
 |  |         if (hospitalDOs.size()>0){
 | 
												
													
														
															|  | 
 |  |             for (BaseDoctorHospitalDO obj:hospitalDOs){
 | 
												
													
														
															|  | 
 |  |                 String sql = " select p.id patientCode,p.name,p.sex,p.idcard,p.photo,ord.id orderId,ord.number,ord.serve_desc,DATE_FORMAT(ord.create_time,'%Y-%m-%d %H:%i:%S') create_time,ord.`status`,ord.doctor," +
 | 
												
													
														
															|  | 
 |  |                         "ord.doctor_name,ord.patient_phone,ord.conclusion_status from base_security_monitoring_order ord INNER JOIN base_patient p on p.id = ord.patient " +
 | 
												
													
														
															|  | 
 |  |                         "where ord.status <>-1 and ord.status<> 7  ";
 | 
												
													
														
															|  | 
 |  |                 sql += "and ord.hospital = '"+obj.getOrgCode()+"' ";
 | 
												
													
														
															|  | 
 |  |                 sql +=" order by ord.create_time asc ";
 | 
												
													
														
															|  | 
 |  |                 List<Map<String,Object>> tmp= jdbcTemplate.queryForList(sql);
 | 
												
													
														
															|  | 
 |  |                 for (Map<String,Object> map:tmp){
 | 
												
													
														
															|  | 
 |  |                     if (map.get("idcard")==null){
 | 
												
													
														
															|  | 
 |  |                         map.put("age",null);
 | 
												
													
														
															|  | 
 |  |                     }
 | 
												
													
														
															|  | 
 |  |                     else{
 | 
												
													
														
															|  | 
 |  |                         Integer age  = IdCardUtil.getAgeForIdcard(map.get("idcard").toString());
 | 
												
													
														
															|  | 
 |  |                         map.put("age",age);
 | 
												
													
														
															|  | 
 |  |                     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                 }
 | 
												
													
														
															|  | 
 |  |                 result.addAll(tmp);
 | 
												
													
														
															|  | 
 |  |             }
 | 
												
													
														
															|  | 
 |  |             result.sort(Comparator.comparing(obj -> ((Map<String,Object>) obj).get("create_time").toString()));
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         return result;
 | 
												
													
														
															|  | 
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  |     /**
 | 
												
													
														
															|  |      * 系统更新医生上门服务工单状态
 |  |      * 系统更新医生上门服务工单状态
 | 
												
											
												
													
														
															|  | @ -423,8 +474,8 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |             logger.error(failMsg);
 |  |             logger.error(failMsg);
 | 
												
													
														
															|  |             return result;
 |  |             return result;
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         result.put(ResponseContant.resultFlag, ResponseContant.success);
 |  | 
 | 
												
													
														
															|  |         result.put(ResponseContant.resultMsg, doorServiceOrder);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |         result = getSecurityOrderDetail(orderId);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         // 发送微信模板消息通知患者医生已接单
 |  |         // 发送微信模板消息通知患者医生已接单
 | 
												
													
														
															|  | //        BasePatientDO patient = basePatientDao.findById(doorServiceOrder.getPatient());//
 |  | //        BasePatientDO patient = basePatientDao.findById(doorServiceOrder.getPatient());//
 | 
												
											
												
													
														
															|  | @ -536,8 +587,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  | //        }
 |  | //        }
 | 
												
													
														
															|  | //        pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 30, patient.getOpenid(), patient.getName(), json);
 |  | //        pushMsgTask.putWxMsg(tokenUtils.getAccessToken(), 30, patient.getOpenid(), patient.getName(), json);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         result.put("resultFlag", 1);
 |  | 
 | 
												
													
														
															|  |         result.put("resultMsg", orderDO);
 |  | 
 | 
												
													
														
															|  | 
 |  |         result = getSecurityOrderDetail(orderId);
 | 
												
													
														
															|  |         return result;
 |  |         return result;
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
											
												
													
														
															|  | @ -580,7 +630,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |      * @param signImg
 |  |      * @param signImg
 | 
												
													
														
															|  |      * @return
 |  |      * @return
 | 
												
													
														
															|  |      */
 |  |      */
 | 
												
													
														
															|  |     public SecurityMonitoringOrderDO signIn(String orderId, String signTime, Integer signWay, String signLocation,
 |  | 
 | 
												
													
														
															|  | 
 |  |     public JSONObject signIn(String orderId, String signTime, Integer signWay, String signLocation,
 | 
												
													
														
															|  |                                          String signImg, String twoDimensionalCode,String doctorId) throws Exception {
 |  |                                          String signImg, String twoDimensionalCode,String doctorId) throws Exception {
 | 
												
													
														
															|  |         SecurityMonitoringOrderDO doorServiceOrder = securityMonitoringOrderDao.findOne(orderId);
 |  |         SecurityMonitoringOrderDO doorServiceOrder = securityMonitoringOrderDao.findOne(orderId);
 | 
												
													
														
															|  |         doorServiceOrder.setDoctorSignTime(DateUtil.strToDate(signTime));
 |  |         doorServiceOrder.setDoctorSignTime(DateUtil.strToDate(signTime));
 | 
												
											
												
													
														
															|  | @ -596,7 +646,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |                 doorServiceOrder = securityMonitoringOrderDao.save(doorServiceOrder);
 |  |                 doorServiceOrder = securityMonitoringOrderDao.save(doorServiceOrder);
 | 
												
													
														
															|  |                 // 修改医生上门服务工单状态 4服务中
 |  |                 // 修改医生上门服务工单状态 4服务中
 | 
												
													
														
															|  |                 this.updateDispatchStatusBySystem(doorServiceOrder.getDoctor(), 4);//服务中
 |  |                 this.updateDispatchStatusBySystem(doorServiceOrder.getDoctor(), 4);//服务中
 | 
												
													
														
															|  |                 return doorServiceOrder;
 |  | 
 | 
												
													
														
															|  | 
 |  |                 return  getSecurityOrderDetail(orderId);
 | 
												
													
														
															|  |             }else {
 |  |             }else {
 | 
												
													
														
															|  |                 logger.info("扫码签到失败");
 |  |                 logger.info("扫码签到失败");
 | 
												
													
														
															|  |                 return null;
 |  |                 return null;
 | 
												
											
												
													
														
															|  | @ -606,7 +656,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |             doorServiceOrder = securityMonitoringOrderDao.save(doorServiceOrder);
 |  |             doorServiceOrder = securityMonitoringOrderDao.save(doorServiceOrder);
 | 
												
													
														
															|  |             // 修改医生上门服务工单状态 4服务中
 |  |             // 修改医生上门服务工单状态 4服务中
 | 
												
													
														
															|  |             this.updateDispatchStatusBySystem(doorServiceOrder.getDoctor(), 4);
 |  |             this.updateDispatchStatusBySystem(doorServiceOrder.getDoctor(), 4);
 | 
												
													
														
															|  |             return doorServiceOrder;
 |  | 
 | 
												
													
														
															|  | 
 |  |             return getSecurityOrderDetail(orderId);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
											
												
													
														
															|  | @ -626,14 +676,28 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |      * @return
 |  |      * @return
 | 
												
													
														
															|  |      * @throws Exception
 |  |      * @throws Exception
 | 
												
													
														
															|  |      */
 |  |      */
 | 
												
													
														
															|  |     public SecurityMonitoringConclusionDO updateDoorConclusion(Integer manageStatus,String orderId,String conclusion,Integer examPapeStatus) throws Exception {
 |  | 
 | 
												
													
														
															|  | 
 |  |     public JSONObject updateDoorConclusion(Integer manageStatus,String orderId,String conclusion,Integer examPapeStatus) throws Exception {
 | 
												
													
														
															|  | 
 |  |         JSONObject result = new JSONObject();
 | 
												
													
														
															|  |         ObjectMapper objectMapper = new ObjectMapper();
 |  |         ObjectMapper objectMapper = new ObjectMapper();
 | 
												
													
														
															|  |         objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd"));
 |  |         objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd"));
 | 
												
													
														
															|  |         SecurityMonitoringConclusionDO doorConclusion = new SecurityMonitoringConclusionDO();
 |  | 
 | 
												
													
														
															|  |         SecurityMonitoringOrderDO one = securityMonitoringOrderDao.findOne(orderId);
 |  |         SecurityMonitoringOrderDO one = securityMonitoringOrderDao.findOne(orderId);
 | 
												
													
														
															|  |         if (one==null){
 |  |         if (one==null){
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |             String failMsg = "工单不存在" ;
 | 
												
													
														
															|  | 
 |  |             result.put("resultFlag", 0);
 | 
												
													
														
															|  | 
 |  |             result.put("resultMsg", failMsg);
 | 
												
													
														
															|  | 
 |  |             return result;
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         SecurityMonitoringConclusionDO doorConclusion =  securityMonitoringConclusionDao.findByOrderId(orderId);
 | 
												
													
														
															|  | 
 |  |         if (doorConclusion==null){
 | 
												
													
														
															|  | 
 |  |             doorConclusion = new SecurityMonitoringConclusionDO();
 | 
												
													
														
															|  | 
 |  |             doorConclusion.setOrderId(orderId);
 | 
												
													
														
															|  | 
 |  |             doorConclusion.setPatient(one.getPatient());
 | 
												
													
														
															|  | 
 |  |             doorConclusion.setPatientName(one.getPatientName());
 | 
												
													
														
															|  | 
 |  |             doorConclusion.setDoctor(one.getDoctor());
 | 
												
													
														
															|  | 
 |  |             doorConclusion.setDoctorName(one.getDoctorName());
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  | 
 |  |         doorConclusion.setStatus(manageStatus);
 | 
												
													
														
															|  | 
 |  |         doorConclusion.setConclusion(conclusion);
 | 
												
													
														
															|  |         BaseDoctorDO doctorVO = baseDoctorDao.findById(one.getDoctor());
 |  |         BaseDoctorDO doctorVO = baseDoctorDao.findById(one.getDoctor());
 | 
												
													
														
															|  |         if (doorConclusion != null && org.apache.commons.lang.StringUtils.isNotEmpty(doorConclusion.getId())) {
 |  |         if (doorConclusion != null && org.apache.commons.lang.StringUtils.isNotEmpty(doorConclusion.getId())) {
 | 
												
													
														
															|  |             doorConclusion.setUpdateTime(new Date());
 |  |             doorConclusion.setUpdateTime(new Date());
 | 
												
											
												
													
														
															|  | @ -651,15 +715,16 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |         one.setExamPaperStatus(examPapeStatus);
 |  |         one.setExamPaperStatus(examPapeStatus);
 | 
												
													
														
															|  |         one.setConclusionStatus(2);
 |  |         one.setConclusionStatus(2);
 | 
												
													
														
															|  |         securityMonitoringOrderDao.save(one);
 |  |         securityMonitoringOrderDao.save(one);
 | 
												
													
														
															|  |         return doorConclusion;
 |  | 
 | 
												
													
														
															|  | 
 |  |         return getSecurityOrderDetail(orderId);
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  |     /**
 | 
												
													
														
															|  |      * 跳过登记服务小结
 |  |      * 跳过登记服务小结
 | 
												
													
														
															|  |      * @param orderId
 |  |      * @param orderId
 | 
												
													
														
															|  |      */
 |  |      */
 | 
												
													
														
															|  |     public void cancelConclusion(String orderId) {
 |  | 
 | 
												
													
														
															|  | 
 |  |     public JSONObject cancelConclusion(String orderId) {
 | 
												
													
														
															|  |         securityMonitoringOrderDao.updateConclusionStatus(orderId);
 |  |         securityMonitoringOrderDao.updateConclusionStatus(orderId);
 | 
												
													
														
															|  | 
 |  |         return getSecurityOrderDetail(orderId);
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  |     /**
 | 
												
											
												
													
														
															|  | @ -693,11 +758,12 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |         return doorConclusion;
 |  |         return doorConclusion;
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     public SecurityMonitoringOrderDO saveOrderFinishBydoctor(String orderId ,String finishImg) throws Exception {
 |  | 
 | 
												
													
														
															|  | 
 |  |     public JSONObject saveOrderFinishBydoctor(String orderId ,String finishImg) throws Exception {
 | 
												
													
														
															|  |         SecurityMonitoringOrderDO one = securityMonitoringOrderDao.findOne(orderId);
 |  |         SecurityMonitoringOrderDO one = securityMonitoringOrderDao.findOne(orderId);
 | 
												
													
														
															|  |         one.setDoctorConfirmFinishImg(finishImg);
 |  |         one.setDoctorConfirmFinishImg(finishImg);
 | 
												
													
														
															|  |         one.setStatus(SecurityMonitoringOrderDO.Status.complete.getType());
 |  |         one.setStatus(SecurityMonitoringOrderDO.Status.complete.getType());
 | 
												
													
														
															|  |         one.setDoctorConfirmFinishTime(new Date());
 |  |         one.setDoctorConfirmFinishTime(new Date());
 | 
												
													
														
															|  | 
 |  |         one.setCompleteTime(one.getDoctorConfirmFinishTime());
 | 
												
													
														
															|  |         // 更新记录
 |  |         // 更新记录
 | 
												
													
														
															|  |         this.setUpdateColumnInfo(one);
 |  |         this.setUpdateColumnInfo(one);
 | 
												
													
														
															|  |         securityMonitoringOrderDao.save(one);
 |  |         securityMonitoringOrderDao.save(one);
 | 
												
											
												
													
														
															|  | @ -733,7 +799,7 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |         }catch (Exception e){
 |  |         }catch (Exception e){
 | 
												
													
														
															|  |             logger.error(e.getMessage());
 |  |             logger.error(e.getMessage());
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         return doorServiceOrderDO;
 |  | 
 | 
												
													
														
															|  | 
 |  |         return getSecurityOrderDetail(orderId);
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  |     /**
 | 
												
											
												
													
														
															|  | @ -812,6 +878,27 @@ public class SecurityMonitoringOrderService extends BaseJpaService<SecurityMonit
 | 
												
													
														
															|  |         return doorServiceOrder;
 |  |         return doorServiceOrder;
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |     public List<Map<String,Object>> getSecurityServerDoctor(String patient){
 | 
												
													
														
															|  | 
 |  |         //获取患者签约防走失服务的团队
 | 
												
													
														
															|  | 
 |  |         String sql="SELECT DISTINCT i.team_code from base_service_package_sign_record sr,base_service_package_record r, base_service_package_item i  \n" +
 | 
												
													
														
															|  | 
 |  |                 "where  sr.id = r.sign_id and sr.status=1 and r.service_package_id = i.service_package_id   and i.del = 1 and sr.`status`=1 \n" +
 | 
												
													
														
															|  | 
 |  |                 "and  sr.patient  = '"+patient+"' and i.code=8";
 | 
												
													
														
															|  | 
 |  |         List<String> teams = jdbcTemplate.queryForList(sql,String.class);
 | 
												
													
														
															|  | 
 |  |         List<Map<String,Object>> result = new ArrayList<>();
 | 
												
													
														
															|  | 
 |  |         if (teams.size()==0){
 | 
												
													
														
															|  | 
 |  |             return new ArrayList<>();
 | 
												
													
														
															|  | 
 |  |         }else {
 | 
												
													
														
															|  | 
 |  |             for (String team:teams){
 | 
												
													
														
															|  | 
 |  |                 sql = "select DISTINCT doc.id doctor,CONCAT(doc.`name`,\n" +
 | 
												
													
														
															|  | 
 |  |                         "CASE WHEN doc.`level`=1 THEN '(社区医生)' ELSE '(助老员)' END) as name,doc.photo,doc.mobile from base_team_member mem " +
 | 
												
													
														
															|  | 
 |  |                         "INNER JOIN base_doctor doc on mem.doctor_code = doc.id and mem.del=1 and mem.team_code='"+team+"'";
 | 
												
													
														
															|  | 
 |  |                 List<Map<String,Object>>tmp = jdbcTemplate.queryForList(sql);
 | 
												
													
														
															|  | 
 |  |                 result.addAll(tmp);
 | 
												
													
														
															|  | 
 |  |             }
 | 
												
													
														
															|  | 
 |  |         }
 | 
												
													
														
															|  | 
 |  |         return result;
 | 
												
													
														
															|  | 
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     private String getRandomIntStr(){
 |  |     private String getRandomIntStr(){
 | 
												
													
														
															|  |         Random rand = new Random();
 |  |         Random rand = new Random();
 | 
												
													
														
															|  |         int i = rand.nextInt(); //int范围类的随机数
 |  |         int i = rand.nextInt(); //int范围类的随机数
 |