瀏覽代碼

Merge branch 'dev' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

liubing 3 年之前
父節點
當前提交
27c1e14918

+ 98 - 21
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/job/data/SaveDataPushJob.java

@ -3,6 +3,7 @@ package com.yihu.jw.care.job.data;
import com.yihu.jw.care.util.DateUtil;
import com.yihu.jw.care.zhylyjkglxt.dao.*;
import com.yihu.jw.care.zhylyjkglxt.entity.*;
import org.apache.commons.lang.StringUtils;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
@ -13,7 +14,10 @@ import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class SaveDataPushJob implements Job {
@ -48,39 +52,89 @@ public class SaveDataPushJob implements Job {
        String date = DateUtil.dateToStrShort(new Date());
        //System.out.println(date);
        date = DateUtil.getNextDay(date, -1);
//        String filterOrg = "";//排除的测试机构
//        String sqltmp = "SELECT dict_code from wlyy_hospital_sys_dict WHERE dict_name = 'jkzl_org' and dict_code is not null ";
//        List<String> listtmp =  jdbcTemplate.queryForList(sqltmp,String.class);
//        Map<String,String> jkzlOrgMap = new HashMap<>();
//        if(listtmp.size()>0){
//            jkzlOrgMap = listtmp.stream().collect(Collectors.toMap(String::toString,String::toString));
//            filterOrg = " '" +String.join("','",listtmp)+ "' ";
//        }
        String filterUser = " ";//排除的测试用户
        String sqltmp = "SELECT dict_code from wlyy_hospital_sys_dict WHERE (dict_name = 'jkzl_child' or dict_name = 'jkzl_older' " +
                "  or dict_name = 'jkzl_user' or dict_name = 'jkzl_helper'  or dict_name = 'jkzl_teacher' ) and dict_code is not null";
        List<String> listtmp = jdbcTemplate.queryForList(sqltmp,String.class);
        Map<String,String> jkzlUserMap = new HashMap<>();
        if (listtmp.size() > 0) {
            jkzlUserMap = listtmp.stream().collect(Collectors.toMap(String::toString,String::toString));
            filterUser = " '" +String.join("','",listtmp)+ "' ";
        }
        //签约老人id
        String signOlderSql="SELECT " +
                " DISTINCT p.id " +
                " FROM  " +
                " base_patient p INNER JOIN base_service_package_sign_record sr on p.id = sr.patient and sr.`status`=1 and  " +
                " p.id not in ("+filterUser+") " +
                " WHERE p.del = 1 and p.archive_type =1 " ;
        List<String> signOlderList = jdbcTemplate.queryForList(signOlderSql,String.class);
        Map<String,String> signOlderMap = signOlderList.stream().collect(Collectors.toMap(String::toString,String::toString));
        //System.out.println(date);
        saveSecurityMonitoringOrder(date);
        saveEmergencyAssistanceOrder(date);
        saveDoorCoachOrder(date);
        saveSecurityMonitoringOrder(date,signOlderMap);
        saveEmergencyAssistanceOrder(date,signOlderMap);
        saveDoorCoachOrder(date,jkzlUserMap);
        saveDoorCoachFeeDetail(date);
        saveLifeCareOrder(date);
        saveLifeCareOrder(date,signOlderMap);
        saveLifeCareFeeDetail(date);
        savePatientInfo(date);
        savePatientInfo(date,signOlderMap);
        saveServicePackageItem(date);
        savePatientDevice(date);
        savePatientDevice(date,signOlderMap);
        saveWlyyDevice(date);
    }
    //安防监护工单
    public void saveSecurityMonitoringOrder(String date){
    public void saveSecurityMonitoringOrder(String date,Map<String,String> signOlderMap){
        String securityMonitoringOrderSql="SELECT id,number,patient,serve_desc,serve_town,serve_address,doctor_name,`status`,hospital,service_status from base_security_monitoring_order WHERE create_time >= '"+date+"'";
        List<ZhSecurityMonitoringOrderDO> query = jdbcTemplate.query(securityMonitoringOrderSql, new BeanPropertyRowMapper<>(ZhSecurityMonitoringOrderDO.class));
        zhSecurityMonitoringOrderDao.save(query);
        for(ZhSecurityMonitoringOrderDO orderDO:query){
            if(!signOlderMap.containsKey(orderDO.getPatient())){
                query.remove(orderDO);
            }
        }
        if(query.size()>0){
            zhSecurityMonitoringOrderDao.save(query);
        }
    }
    //紧急救助工单
    public void saveEmergencyAssistanceOrder(String date){
        String emergencyAssistanceOrderSql ="SELECT id,patient_name,patient_phone,patient_idcard,org_name,serve_address,doctor_name,doctor_address,complete_time,team_code,proxy_patient_name,proxy_patient_phone,type,order_source FROM base_emergency_assistance_order WHERE create_time >= '"+date+"'";
    public void saveEmergencyAssistanceOrder(String date,Map<String,String> signOlderMap){
        String emergencyAssistanceOrderSql ="SELECT id,patient,patient_name,patient_phone,patient_idcard,org_name,serve_address,doctor_name,doctor_address,complete_time,team_code,proxy_patient_name,proxy_patient_phone,type,order_source FROM base_emergency_assistance_order WHERE create_time >= '"+date+"'";
        List<ZhEmergencyAssistanceDO> query = jdbcTemplate.query(emergencyAssistanceOrderSql, new BeanPropertyRowMapper<>(ZhEmergencyAssistanceDO.class));
        zhEmergencyAssistanceDao.save(query);
        for(ZhEmergencyAssistanceDO orderDO:query){
            if(!signOlderMap.containsKey(orderDO.getPatient())){
                query.remove(orderDO);
            }
        }
        if(query.size()>0){
            zhEmergencyAssistanceDao.save(query);
        }
    }
    //上门辅导工单
    public void saveDoorCoachOrder(String date){
        String doorCoachOrderSql = "SELECT id,proxy_patient_name,proxy_patient_phone,patient_name,patient_relation,patient_expected_serve_time,serve_desc,serve_address,serve_town,is_trans_other_org,total_fee,doctor_name,doctor_type,doctor_sign_time,doctor_sign_location,patient_confirm_finish_time,exam_paper_imgs,`status`,expected_doctor_name,hospital,followup_date FROM base_door_coach_order WHERE create_time >= '"+date+"'";
    public void saveDoorCoachOrder(String date,Map<String,String> jkzlUserMap){
        String doorCoachOrderSql = "SELECT id,proxy_patient_name,proxy_patient_phone,patient,patient_name,patient_relation,patient_expected_serve_time,serve_desc,serve_address,serve_town,is_trans_other_org,total_fee,doctor_name,doctor_type,doctor_sign_time,doctor_sign_location,patient_confirm_finish_time,exam_paper_imgs,`status`,expected_doctor_name,hospital,followup_date FROM base_door_coach_order WHERE create_time >= '"+date+"'";
        List<ZhBaseDoorCoachOrderDO> query = jdbcTemplate.query(doorCoachOrderSql, new BeanPropertyRowMapper<>(ZhBaseDoorCoachOrderDO.class));
        zhBaseDoorCoachOrderDao.save(query);
        for (ZhBaseDoorCoachOrderDO orderDO:query){
            if(jkzlUserMap.containsKey(orderDO.getPatient())){
                query.remove(orderDO);
            }
        }
        if(query.size()>0){
            zhBaseDoorCoachOrderDao.save(query);
        }
    }
    //上门辅导 服务工单价格
@ -91,10 +145,17 @@ public class SaveDataPushJob implements Job {
    }
    // 生活照料 工单
    public void  saveLifeCareOrder(String date){
        String lifeCareOrderSql = "SELECT id,proxy_patient_name,proxy_patient_phone,patient_name,patient_phone,patient_relation,serve_desc,serve_town,serve_address,total_fee,doctor_name,doctor_type,`status`,doctor_sign_location,sign_doctor_name,conclusion_remark,pay_status FROM base_life_care_order WHERE create_time >= '"+date+"'";
    public void  saveLifeCareOrder(String date,Map<String,String> signOlderMap){
        String lifeCareOrderSql = "SELECT id,proxy_patient_name,proxy_patient_phone,patient,patient_name,patient_phone,patient_relation,serve_desc,serve_town,serve_address,total_fee,doctor_name,doctor_type,`status`,doctor_sign_location,sign_doctor_name,conclusion_remark,pay_status FROM base_life_care_order WHERE create_time >= '"+date+"'";
        List<ZhLifeCareOrderDO> query = jdbcTemplate.query(lifeCareOrderSql, new BeanPropertyRowMapper<>(ZhLifeCareOrderDO.class));
        zhLifeCareOrderDao.save(query);
        for (ZhLifeCareOrderDO orderDO:query){
            if(!signOlderMap.containsKey(orderDO.getPatient())){
                query.remove(orderDO);
            }
        }
        if(query.size()>0){
            zhLifeCareOrderDao.save(query);
        }
    }
    //生活照料 价格
@ -105,10 +166,21 @@ public class SaveDataPushJob implements Job {
    }
    //居民信息
    public void savePatientInfo(String date){
        String patientInfoSql="SELECT id,register,idcard,`name`,birthday,sex,mobile,province_name,city_name,town_name,street_name,committee_name,address,patient_status,marriage,national,blood,archive_status,archive_type,ssc,disease,home_address,sign_status,medical_state FROM base_patient WHERE create_time>= '"+date+"'";
    public void savePatientInfo(String date,Map<String,String> signOlderMap){
        //暂时只推送已签约的老人,幼儿另外建表推送
        String patientInfoSql="SELECT a.id,a.register,a.idcard,a.`name`,a.birthday,a.sex,a.mobile,a.province_name,a.city_name,a.town_name,a.street_name,a.committee_name, " +
                " a.address,a.patient_status,a.marriage,a.national,a.blood,a.archive_status,a.archive_type,a.ssc,a.disease,a.home_address,a.sign_status,a.medical_state " +
                " FROM base_patient a " +
                " WHERE a.archive_type=1 and a.idcard is not null and a.create_time>= '"+date+"' ";
        List<ZhBasePatientDO> query = jdbcTemplate.query(patientInfoSql, new BeanPropertyRowMapper<>(ZhBasePatientDO.class));
        zhBasePatientDao.save(query);
        for (ZhBasePatientDO patientDO: query){
            if(!signOlderMap.containsKey(patientDO.getId())){
                query.remove(patientDO);
            }
        }
        if(query.size()>0){
            zhBasePatientDao.save(query);
        }
    }
    //服务项
@ -119,9 +191,14 @@ public class SaveDataPushJob implements Job {
    }
    // 居民设备表
    public void savePatientDevice(String date){
    public void savePatientDevice(String date,Map<String,String> signOlderMap){
        String patientDeviceSql = "SELECT id,device_id,`user`,category_code,device_name,user_idcard,doctor_name,hospital_name,device_type from wlyy_patient_device WHERE czrq >= '"+date+"'";
        List<ZhDevicePatientDevice> query = jdbcTemplate.query(patientDeviceSql, new BeanPropertyRowMapper<>(ZhDevicePatientDevice.class));
        for (ZhDevicePatientDevice patientDO: query){
            if(!signOlderMap.containsKey(patientDO.getUser())){
                query.remove(patientDO);
            }
        }
        zhDevicePatientDeviceDao.save(query);
    }

+ 2 - 1
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhBaseDoorCoachFeeDetailDO.java

@ -1,6 +1,7 @@
package com.yihu.jw.care.zhylyjkglxt.entity;
import com.yihu.jw.entity.AssignedIdentityEntityWithOperator;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
@ -17,7 +18,7 @@ import java.math.BigDecimal;
*/
@Entity
@Table(name = "base_door_coach_fee_detail")
public class ZhBaseDoorCoachFeeDetailDO extends UuidIdentityEntityWithOperator {
public class ZhBaseDoorCoachFeeDetailDO extends AssignedIdentityEntityWithOperator {
    /**
     * 支付方式

+ 2 - 1
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhBaseDoorCoachOrderDO.java

@ -1,6 +1,7 @@
package com.yihu.jw.care.zhylyjkglxt.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.AssignedIdentityEntityWithOperator;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import com.yihu.jw.entity.care.doorCoach.BaseDoorCoachConclusionDO;
import com.yihu.jw.entity.door.WlyyDoorDoctorDO;
@ -25,7 +26,7 @@ import java.util.Map;
 */
@Entity
@Table(name = "base_door_coach_order")
public class ZhBaseDoorCoachOrderDO extends UuidIdentityEntityWithOperator {
public class ZhBaseDoorCoachOrderDO extends AssignedIdentityEntityWithOperator {

+ 2 - 2
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhBasePatientDO.java

@ -1,7 +1,7 @@
package com.yihu.jw.care.zhylyjkglxt.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import com.yihu.jw.entity.AssignedIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -17,7 +17,7 @@ import java.util.Date;
 */
@Entity
@Table(name = "base_patient")
public class ZhBasePatientDO extends UuidIdentityEntityWithOperator {
public class ZhBasePatientDO extends AssignedIdentityEntityWithOperator {
    /**
     * saas配置id

+ 2 - 1
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhEmergencyAssistanceDO.java

@ -1,6 +1,7 @@
package com.yihu.jw.care.zhylyjkglxt.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.AssignedIdentityEntityWithOperator;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import com.yihu.jw.entity.care.securitymonitoring.EmergencyWarnConclusionDO;
@ -15,7 +16,7 @@ import java.util.Date;
 */
@Entity
@Table(name="base_emergency_assistance_order")
public class ZhEmergencyAssistanceDO extends UuidIdentityEntityWithOperator {
public class ZhEmergencyAssistanceDO extends AssignedIdentityEntityWithOperator {
    /**
     * 工单状态:

+ 2 - 1
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhLifeCareFeeDetailDO.java

@ -1,6 +1,7 @@
package com.yihu.jw.care.zhylyjkglxt.entity;
import com.yihu.jw.entity.AssignedIdentityEntityWithOperator;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
@ -17,7 +18,7 @@ import java.math.BigDecimal;
*/
@Entity
@Table(name = "base_life_care_fee_detail")
public class ZhLifeCareFeeDetailDO extends UuidIdentityEntityWithOperator {
public class ZhLifeCareFeeDetailDO extends AssignedIdentityEntityWithOperator {
    /**
     * 支付方式

+ 2 - 1
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhLifeCareOrderDO.java

@ -1,6 +1,7 @@
package com.yihu.jw.care.zhylyjkglxt.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.AssignedIdentityEntityWithOperator;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import com.yihu.jw.entity.care.lifeCare.LifeCareFeeDetailDO;
@ -17,7 +18,7 @@ import java.util.List;
 */
@Entity
@Table(name = "base_life_care_order")
public class ZhLifeCareOrderDO extends UuidIdentityEntityWithOperator {
public class ZhLifeCareOrderDO extends AssignedIdentityEntityWithOperator {
    /**
     * 工单状态
     */

+ 1 - 1
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhSecurityMonitoringOrderDO.java

@ -16,7 +16,7 @@ import java.util.Date;
 */
@Entity
@Table(name = "base_security_monitoring_order")
public class ZhSecurityMonitoringOrderDO extends UuidIdentityEntityWithOperator {
public class ZhSecurityMonitoringOrderDO extends AssignedIdentityEntityWithOperator {
    /**
     * 工单状态:
     */

+ 2 - 1
svr/svr-cloud-job/src/main/java/com/yihu/jw/care/zhylyjkglxt/entity/ZhServicePackageItemDO.java

@ -1,5 +1,6 @@
package com.yihu.jw.care.zhylyjkglxt.entity;
import com.yihu.jw.entity.AssignedIdentityEntity;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Column;
@ -13,7 +14,7 @@ import java.math.BigDecimal;
 */
@Entity
@Table(name = "base_service_package_item")
public class ZhServicePackageItemDO extends UuidIdentityEntity implements java.io.Serializable {
public class ZhServicePackageItemDO extends AssignedIdentityEntity implements java.io.Serializable {
    private String servicePackageId;//服务包ID
    private String code;//服务包code