Sfoglia il codice sorgente

Merge branch 'dev' of trick9191/patient-co-management into dev

trick9191 8 anni fa
parent
commit
711cc3e50d

+ 20 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/patient/SignFamily.java

@ -73,6 +73,26 @@ public class SignFamily extends IdEntity {
    private String specialPopulation;
    //基卫特殊人群类别名称
    private String specialPopulationName;
    //续签标志 1 医生续签 2 医生改签续签
    private String renewFlag;
    //转签原因
    private String renewChangeReason;
    public String getRenewFlag() {
        return renewFlag;
    }
    public void setRenewFlag(String renewFlag) {
        this.renewFlag = renewFlag;
    }
    public String getRenewChangeReason() {
        return renewChangeReason;
    }
    public void setRenewChangeReason(String renewChangeReason) {
        this.renewChangeReason = renewChangeReason;
    }
    public String getServerType() {
        return serverType;

+ 11 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/patient/SignFamilyRenew.java

@ -75,6 +75,17 @@ public class SignFamilyRenew extends IdEntity {
    //基卫特殊人群类别名称
    private String specialPopulationName;
    //转签原因
    private String renewChangeReason;
    public String getRenewChangeReason() {
        return renewChangeReason;
    }
    public void setRenewChangeReason(String renewChangeReason) {
        this.renewChangeReason = renewChangeReason;
    }
    public String getRenewFlag() {
        return renewFlag;
    }

+ 36 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/patient/SignFamilyRenewLog.java

@ -31,11 +31,47 @@ public class SignFamilyRenewLog extends IdEntity {
    private String   oldProId ;
    private Date   createTime;
    private Date  updateTime;
    private Integer status;
    private Date applyDate;
    private String renewChangeReason;
    private String expensesStatus;
    public String getSignCode() {
        return signCode;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public Date getApplyDate() {
        return applyDate;
    }
    public void setApplyDate(Date applyDate) {
        this.applyDate = applyDate;
    }
    public String getRenewChangeReason() {
        return renewChangeReason;
    }
    public void setRenewChangeReason(String renewChangeReason) {
        this.renewChangeReason = renewChangeReason;
    }
    public String getExpensesStatus() {
        return expensesStatus;
    }
    public void setExpensesStatus(String expensesStatus) {
        this.expensesStatus = expensesStatus;
    }
    public void setSignCode(String signCode) {
        this.signCode = signCode;
    }

+ 24 - 24
patient-co-wlyy/src/main/java/com/yihu/wlyy/job/SignEndJob.java

@ -44,31 +44,31 @@ public class SignEndJob implements Job {
                //设置已过期
                String sql = "UPDATE wlyy_sign_family t SET t.status = -4,t.apply_unsign_date='"+ DateUtil.dateToStr(new Date(),"yyyy-MM-dd HH:mm:ss")+"'  WHERE t.status>=0 AND t.sign_year='"+year+"'";
//                //数据迁移
//                String sql2 ="INSERT INTO wlyy_sign_family(" +
//                        "code,lw_code,type,patient,openid,name,idcard,ssc," +
//                        "mobile,emer_mobile,hospital,hospital_name,doctor," +
//                        "doctor_name,begin,end,images,group_code,status,reason," +
//                        "czrq,team_code,sign_type,apply_date,release_speak," +
//                        "doctor_health_name,doctor_health,family_code,patient_apply_date," +
//                        "expenses,expenses_status,sign_source,sign_doctor_code,sign_doctor_name," +
//                        "sign_doctor_level,patient_apply_unsgin_date,apply_unsign_date,expenses_type," +
//                        "sign_year,medical_insurance_num,agent_doctor_code,agent_doctor_name," +
//                        "agent_doctor_level,admin_team_code,expenses_time,server_type,server_type_name,special_population,special_population_name) " +
//                        "SELECT code,lw_code,type,patient,openid,name,idcard,ssc," +
//                        "mobile,emer_mobile,hospital,hospital_name,doctor,doctor_name," +
//                        "begin,end,images,group_code,status,reason,czrq,team_code," +
//                        "sign_type,apply_date,release_speak,doctor_health_name," +
//                        "doctor_health,family_code,patient_apply_date,expenses," +
//                        "expenses_status,sign_source,sign_doctor_code,sign_doctor_name," +
//                        "sign_doctor_level,patient_apply_unsgin_date,apply_unsign_date," +
//                        "expenses_type,sign_year,medical_insurance_num,agent_doctor_code," +
//                        "agent_doctor_name,agent_doctor_level,admin_team_code,expenses_time,server_type,server_type_name,special_population,special_population_name " +
//                        "FROM wlyy_sign_family_renew t WHERE t.is_valid =0 AND t.status =1 AND t.sign_year='"+(year+1)+"' AND t.expenses_status='1'";
//                //更改迁移状态
//                String sql3 = "UPDATE wlyy_sign_family_renew t SET t.is_valid =1 WHERE t.is_valid =0 AND t.status =1 AND t.sign_year='"+(year+1)+"' AND t.expenses_status='1'";
                String sql2 ="INSERT INTO wlyy_sign_family(" +
                        "code,lw_code,type,patient,openid,name,idcard,ssc," +
                        "mobile,emer_mobile,hospital,hospital_name,doctor," +
                        "doctor_name,begin,end,images,group_code,status,reason," +
                        "czrq,team_code,sign_type,apply_date,release_speak," +
                        "doctor_health_name,doctor_health,family_code,patient_apply_date," +
                        "expenses,expenses_status,sign_source,sign_doctor_code,sign_doctor_name," +
                        "sign_doctor_level,patient_apply_unsgin_date,apply_unsign_date,expenses_type," +
                        "sign_year,medical_insurance_num,agent_doctor_code,agent_doctor_name," +
                        "agent_doctor_level,admin_team_code,expenses_time,server_type,server_type_name,special_population,special_population_name) " +
                        "SELECT code,lw_code,type,patient,openid,name,idcard,ssc," +
                        "mobile,emer_mobile,hospital,hospital_name,doctor,doctor_name," +
                        "begin,end,images,group_code,status,reason,czrq,team_code," +
                        "sign_type,apply_date,release_speak,doctor_health_name," +
                        "doctor_health,family_code,patient_apply_date,expenses," +
                        "expenses_status,sign_source,sign_doctor_code,sign_doctor_name," +
                        "sign_doctor_level,patient_apply_unsgin_date,apply_unsign_date," +
                        "expenses_type,sign_year,medical_insurance_num,agent_doctor_code," +
                        "agent_doctor_name,agent_doctor_level,admin_team_code,expenses_time,server_type,server_type_name,special_population,special_population_name " +
                        "FROM wlyy_sign_family_renew t WHERE t.is_valid =0 AND t.status =1 AND t.sign_year='"+(year+1)+"' AND t.expenses_status='1'";
                //更改迁移状态
                String sql3 = "UPDATE wlyy_sign_family_renew t SET t.is_valid =1 WHERE t.is_valid =0 AND t.status =1 AND t.sign_year='"+(year+1)+"' AND t.expenses_status='1'";
                jdbcTemplate.execute(sql);
//                jdbcTemplate.execute(sql2);
//                jdbcTemplate.execute(sql3);
                jdbcTemplate.execute(sql2);
                jdbcTemplate.execute(sql3);
            }
            System.out.println("sign end job end");

+ 8 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/family/FamilyMemberService.java

@ -26,6 +26,8 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * 家庭成员服务
@ -826,7 +828,7 @@ public class FamilyMemberService extends BaseService {
        //2.判断手机过滤
        //判断是否绑定了手机
        if (StringUtils.isNoneBlank(p.getMobile())) {
        if (StringUtils.isNoneBlank(p.getMobile())&&isMobileNO(p.getMobile())) {
            //如果用户绑定了微信,将状态更改为4
            if (result == 1) {
                result = 3;
@ -1170,4 +1172,9 @@ public class FamilyMemberService extends BaseService {
        }
    }
    public boolean isMobileNO(String number){
        Pattern pattern = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");
        Matcher m = pattern.matcher(number);
        return m.matches();
    }
}

+ 17 - 3
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java

@ -2939,7 +2939,7 @@ public class FamilyContractService extends BaseService {
     * @return
     */
    @Transactional
    public int signRenew(String doctor,String healthDoctor, String patient) throws Exception {
    public int signRenew(String doctor,String healthDoctor, String patient, String reason) throws Exception {
        Patient p = patientDao.findByCode(patient);
        if (p == null) {
            return -1;
@ -3087,6 +3087,11 @@ public class FamilyContractService extends BaseService {
        sf.setIsValid(0);
        sf.setBegin(DateUtil.stringToDate(DateUtil.getSignYear()+"-07-01 00:00:00","yyyy-MM-dd HH:mmm:ss"));
        sf.setEnd(DateUtil.stringToDate(DateUtil.getSignYear()+1+"-07-01 00:00:00","yyyy-MM-dd HH:mmm:ss"));
        //设置转签原因
        if(StringUtils.isNotBlank(reason)){
            sf.setRenewChangeReason(reason);
        }
        SignFamilyRenew temp = signFamilyRenewDao.save(sf);
        if (temp != null) {
@ -3133,7 +3138,7 @@ public class FamilyContractService extends BaseService {
     * @return
     */
    @Transactional
    public int signRenewOverdue(String doctor,String healthDoctor, String patient) throws Exception {
    public int signRenewOverdue(String doctor,String healthDoctor, String patient, String reason) throws Exception {
        Patient p = patientDao.findByCode(patient);
        if (p == null) {
            return -1;
@ -3273,6 +3278,9 @@ public class FamilyContractService extends BaseService {
        sf.setBegin(new Date());
        sf.setEnd(DateUtil.stringToDate(year+1+"-06-30 00:00:00","yyyy-MM-dd HH:mmm:ss"));
        if(StringUtils.isNotBlank(reason)){
            sf.setRenewChangeReason(reason);
        }
        SignFamily temp = signFamilyDao.save(sf);
        if (temp != null) {
@ -3290,7 +3298,13 @@ public class FamilyContractService extends BaseService {
            message.setTitle("家庭续签申请");
            message.setType(1);//家庭签约信息
            message.setReadonly(1);//是否只读消息
            message.setSignStatus("1");//过期以后,变为1为签约
            if("1".equals(sf.getRenewFlag())){
                message.setSignStatus("8");//续签
            }else{
                message.setSignStatus("9");//改签
            }
            //message.setSignStatus("1");//过期以后,变为1为签约
            message.setSex(p.getSex());
            message.setOver("1");//未处理
            message.setData(sf.getCode());

+ 13 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/SignWebService.java

@ -2,6 +2,7 @@ package com.yihu.wlyy.service.app.sign;
import java.util.*;
import com.yihu.wlyy.entity.dict.SystemDict;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.doctor.team.admin.AdminTeam;
import com.yihu.wlyy.entity.doctor.team.sign.DoctorTeam;
@ -1720,6 +1721,13 @@ public class SignWebService extends BaseService {
        log.setNeedUpload("1");
        log.setCreateTime(new Date());
        log.setUpdateTime(new Date());
        //1.3.4新增字段
        log.setStatus(renew.getStatus());
        if(StringUtils.isNotBlank(renew.getRenewChangeReason())){
            log.setRenewChangeReason(renew.getRenewChangeReason());
        }
        log.setApplyDate(renew.getApplyDate());
        log.setExpensesStatus(renew.getExpensesStatus());
        signFamilyRenewLogDao.save(log);
        return 1;
@ -1786,4 +1794,9 @@ public class SignWebService extends BaseService {
        renew.setDoctorHealthName(hd.getName());
        renew.setDoctorHealth(hd.getCode());
    }
    public JSONArray getRenewChangeReason(){
       List<SystemDict> systemDict = systemDictService.getDictByDictName("RENEW_CHANGE_REASON");
        return new JSONArray(systemDict);
    }
}

+ 20 - 11
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/statistics/StatisticsService.java

@ -1,6 +1,7 @@
package com.yihu.wlyy.service.app.statistics;
import com.yihu.wlyy.entity.address.Town;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.doctor.team.admin.AdminTeam;
import com.yihu.wlyy.entity.organization.Hospital;
import com.yihu.wlyy.entity.statistics.PopulationBase;
@ -2933,19 +2934,17 @@ public class StatisticsService extends BaseService {
                    " GROUP BY dateNo";
            planSQL ="SELECT " +
                    " ( " +
                    "  DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('"+DateUtil.getFristDayOfMonth()+"', '%v') + 1 " +
                    " ) AS weekOfMonth,COUNT(1) AS planCount " +
                    "FROM " +
                    " left(w.create_time,10) AS dateNo,COUNT(1) AS planCount " +
                    " FROM " +
                    " wlyy_followup w " +
                    "WHERE " +
                    " WHERE " +
                    " w.admin_team_code =" +teamCode+
                    " AND w.doctor_code ='"+doctor+"'"+
                    " AND w.create_time >= '"+startDate+"' " +
                    " AND w.create_time <= '"+endDate+"' " +
                    " AND w.status ='2'"+
                    " AND w.followup_class IS NOT NULL " +
                    " GROUP BY weekOfMonth";
                    " GROUP BY dateNo";
        }else{
            //按月
            totalSQL ="SELECT " +
@ -2964,7 +2963,7 @@ public class StatisticsService extends BaseService {
            planSQL = "SELECT " +
                    " ( " +
                    "  DATE_FORMAT(w.create_time, '%v') - DATE_FORMAT('"+DateUtil.getFristDayOfMonth()+"', '%v') + 1 " +
                    " ) AS weekOfMonth,COUNT(1) AS followupCount " +
                    " ) AS weekOfMonth,COUNT(1) AS planCount " +
                    " FROM " +
                    " wlyy_followup w " +
                    " WHERE " +
@ -2998,7 +2997,7 @@ public class StatisticsService extends BaseService {
                    " WHERE " +
                    " w.admin_team_code =" +teamCode+
                    " AND w.create_time >= '"+startDate+"' " +
                    " AND w.create_time <= '"+endDate+"' " +
            " AND w.create_time <= '"+endDate+"' " +
                    " AND w.followup_class IS NOT NULL " +
                    " GROUP BY dateNo";
@ -3210,7 +3209,7 @@ public class StatisticsService extends BaseService {
            //按增量排序
            if(addList!=null&&addList.size()>0){
                //以增量为基准,合并结果集
                for(Map<String ,Object> map : totalList){
                for(Map<String ,Object> map : addList){
                    String code = (String)map.get("doctorCode");
@ -3222,7 +3221,7 @@ public class StatisticsService extends BaseService {
                        map.put("planCount",0L);
                    }
                    Map<String,Object> m2 =(Map<String,Object>)planMap.get(code);
                    Map<String,Object> m2 =(Map<String,Object>)totalMap.get(code);
                    if(m2!=null){
                        Long followupCount = (Long)m2.get("followupCount");
                        map.put("followupCount",followupCount);
@ -3240,7 +3239,7 @@ public class StatisticsService extends BaseService {
                    String code = (String)map.get("doctorCode");
                    Map<String,Object> m =(Map<String,Object>)planMap.get(code);
                    Map<String,Object> m =(Map<String,Object>)totalMap.get(code);
                    if(m!=null){
                        Long followupCount = (Long)m.get("followupCount");
                        map.put("followupCount",followupCount);
@ -3998,4 +3997,14 @@ public class StatisticsService extends BaseService {
        rs.put("addList",addList);
        return rs;
    }
    public JSONObject getDoctorInfo(String code){
       Doctor doctor =  doctorDao.findByCode(code);
        JSONObject rs = new JSONObject();
        rs.put("doctorName",doctor.getName());
        rs.put("doctor",doctor.getCode());
        rs.put("photo",doctor.getPhoto());
        return rs;
    }
}

+ 0 - 3
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/sign/DoctorSignController.java

@ -648,7 +648,4 @@ public class DoctorSignController extends WeixinBaseController {
            return error(-1, "查询失败");
        }
    }
}

+ 4 - 3
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/sign/FamilyContractController.java

@ -494,7 +494,8 @@ public class FamilyContractController extends BaseController {
    @ResponseBody
    public String signRenew(@RequestParam(required = true) String doctor,
                            @RequestParam(required = false) String healthDoctor,
                            @RequestParam(required = false) String patient) {
                            @RequestParam(required = false) String patient,
                            @RequestParam(required = false) String reason) {
        try {
            if (StringUtils.isEmpty(doctor)) {
                return error(-1, "签约医生不能为空");
@ -503,9 +504,9 @@ public class FamilyContractController extends BaseController {
            int month = cal.get(Calendar.MONTH)+1;
            int result = -1;
            if(month<7){
                result = familyContractService.signRenew(doctor,healthDoctor,patient);
                result = familyContractService.signRenew(doctor,healthDoctor,patient,reason);
            }else{
                result = familyContractService.signRenewOverdue(doctor,healthDoctor,patient);
                result = familyContractService.signRenewOverdue(doctor,healthDoctor,patient,reason);
            }

+ 16 - 3
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/sign/PatientSignController.java

@ -10,9 +10,7 @@ import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.text.SimpleDateFormat;
import java.util.Date;
@ -282,4 +280,19 @@ public class PatientSignController extends BaseController {
			return error(-1, "系统错误,请联系管理员!");
		}
	}
	/**
	 * 获取转签原因字段
	 * @return
	 */
	@RequestMapping(value = "/getRenewChangeReason", method = {RequestMethod.GET})
	@ResponseBody
	public String getRenewChangeReason(){
		try {
			JSONArray rs = signWebService.getRenewChangeReason();
			return write(200, "查询成功", "data", rs);
		} catch (Exception e) {
			return error(-1, "查询失败");
		}
	}
}

+ 10 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/statistic/StatisticsController.java

@ -1281,5 +1281,14 @@ public class StatisticsController extends BaseController {
        }
    }
    @RequestMapping("/getDotorInfo")
    @ResponseBody
    public String getDotorInfo(String code){
        try {
            return write(200, "查询成功", "data", statisticsService.getDoctorInfo(code));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
}