Parcourir la source

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

chenweida il y a 8 ans
Parent
commit
5c49715bef

patient-co-wlyy/src/main/java/com/yihu/wlyy/aop/observerRequired.java → patient-co-wlyy/src/main/java/com/yihu/wlyy/aop/ObserverRequired.java


+ 135 - 135
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/patient/prenatal/PrenatalInspectorPlan.java

@ -1,135 +1,135 @@
package com.yihu.wlyy.entity.patient.prenatal;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
/**
 * 产检计划
 * Created by yeshijie on 2017/6/6.
 */
@Entity
@Table(name = "wlyy_prenatal_inspector_plan")
public class PrenatalInspectorPlan extends IdEntity implements Serializable {
    private String inspectionCode;//产检code
    private String patient;//居民code
    private String name;//名称
    private Date inspectionTime;//产检时间
    private Date inspectionStartTime;//产检开始时间(系统计算)
    private Date inspectionEndTime;//产检结束时间(系统计算)
    private String thisFocus;//本次重点
    private String checkItem;//检查项目
    private String thisNote;//本次注意
    private String status;//产检状态(0未产检,1已产检)
    private String inspectionPhase;//检查阶段(1社区检查,2医院检查)
    private String signHospital;//签约医院code(已签约且社区检查阶段才有值)
    private Date czrq;//创建日期
    public String getInspectionCode() {
        return inspectionCode;
    }
    public void setInspectionCode(String inspectionCode) {
        this.inspectionCode = inspectionCode;
    }
    public String getPatient() {
        return patient;
    }
    public void setPatient(String patient) {
        this.patient = patient;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Date getInspectionTime() {
        return inspectionTime;
    }
    public void setInspectionTime(Date inspectionTime) {
        this.inspectionTime = inspectionTime;
    }
    public Date getInspectionStartTime() {
        return inspectionStartTime;
    }
    public void setInspectionStartTime(Date inspectionStartTime) {
        this.inspectionStartTime = inspectionStartTime;
    }
    public Date getInspectionEndTime() {
        return inspectionEndTime;
    }
    public void setInspectionEndTime(Date inspectionEndTime) {
        this.inspectionEndTime = inspectionEndTime;
    }
    public String getThisFocus() {
        return thisFocus;
    }
    public void setThisFocus(String thisFocus) {
        this.thisFocus = thisFocus;
    }
    public String getCheckItem() {
        return checkItem;
    }
    public void setCheckItem(String checkItem) {
        this.checkItem = checkItem;
    }
    public String getThisNote() {
        return thisNote;
    }
    public void setThisNote(String thisNote) {
        this.thisNote = thisNote;
    }
    public String getStatus() {
        return status;
    }
    public void setStatus(String status) {
        this.status = status;
    }
    public String getInspectionPhase() {
        return inspectionPhase;
    }
    public void setInspectionPhase(String inspectionPhase) {
        this.inspectionPhase = inspectionPhase;
    }
    public String getSignHospital() {
        return signHospital;
    }
    public void setSignHospital(String signHospital) {
        this.signHospital = signHospital;
    }
    public Date getCzrq() {
        return czrq;
    }
    public void setCzrq(Date czrq) {
        this.czrq = czrq;
    }
}
//package com.yihu.wlyy.entity.patient.prenatal;
//
//import com.yihu.wlyy.entity.IdEntity;
//
//import javax.persistence.Entity;
//import javax.persistence.Table;
//import java.io.Serializable;
//import java.util.Date;
//
///**
// * 产检计划
// * Created by yeshijie on 2017/6/6.
// */
//@Entity
//@Table(name = "wlyy_prenatal_inspector_plan")
//public class PrenatalInspectorPlan extends IdEntity implements Serializable {
//
//    private String inspectionCode;//产检code
//    private String patient;//居民code
//    private String name;//名称
//    private Date inspectionTime;//产检时间
//    private Date inspectionStartTime;//产检开始时间(系统计算)
//    private Date inspectionEndTime;//产检结束时间(系统计算)
//    private String thisFocus;//本次重点
//    private String checkItem;//检查项目
//    private String thisNote;//本次注意
//    private String status;//产检状态(0未产检,1已产检)
//    private String inspectionPhase;//检查阶段(1社区检查,2医院检查)
//    private String signHospital;//签约医院code(已签约且社区检查阶段才有值)
//    private Date czrq;//创建日期
//
//    public String getInspectionCode() {
//        return inspectionCode;
//    }
//
//    public void setInspectionCode(String inspectionCode) {
//        this.inspectionCode = inspectionCode;
//    }
//
//    public String getPatient() {
//        return patient;
//    }
//
//    public void setPatient(String patient) {
//        this.patient = patient;
//    }
//
//    public String getName() {
//        return name;
//    }
//
//    public void setName(String name) {
//        this.name = name;
//    }
//
//    public Date getInspectionTime() {
//        return inspectionTime;
//    }
//
//    public void setInspectionTime(Date inspectionTime) {
//        this.inspectionTime = inspectionTime;
//    }
//
//    public Date getInspectionStartTime() {
//        return inspectionStartTime;
//    }
//
//    public void setInspectionStartTime(Date inspectionStartTime) {
//        this.inspectionStartTime = inspectionStartTime;
//    }
//
//    public Date getInspectionEndTime() {
//        return inspectionEndTime;
//    }
//
//    public void setInspectionEndTime(Date inspectionEndTime) {
//        this.inspectionEndTime = inspectionEndTime;
//    }
//
//    public String getThisFocus() {
//        return thisFocus;
//    }
//
//    public void setThisFocus(String thisFocus) {
//        this.thisFocus = thisFocus;
//    }
//
//    public String getCheckItem() {
//        return checkItem;
//    }
//
//    public void setCheckItem(String checkItem) {
//        this.checkItem = checkItem;
//    }
//
//    public String getThisNote() {
//        return thisNote;
//    }
//
//    public void setThisNote(String thisNote) {
//        this.thisNote = thisNote;
//    }
//
//    public String getStatus() {
//        return status;
//    }
//
//    public void setStatus(String status) {
//        this.status = status;
//    }
//
//    public String getInspectionPhase() {
//        return inspectionPhase;
//    }
//
//    public void setInspectionPhase(String inspectionPhase) {
//        this.inspectionPhase = inspectionPhase;
//    }
//
//    public String getSignHospital() {
//        return signHospital;
//    }
//
//    public void setSignHospital(String signHospital) {
//        this.signHospital = signHospital;
//    }
//
//    public Date getCzrq() {
//        return czrq;
//    }
//
//    public void setCzrq(Date czrq) {
//        this.czrq = czrq;
//    }
//}

+ 107 - 107
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/patient/prenatal/PrenatalInspectorPlanLibrary.java

@ -1,107 +1,107 @@
package com.yihu.wlyy.entity.patient.prenatal;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
/**
 * 产检计划库
 * Created by yeshijie on 2017/6/6.
 */
@Entity
@Table(name = "wlyy_prenatal_inspector_plan_library")
public class PrenatalInspectorPlanLibrary extends IdEntity implements Serializable {
    private String name;//名称
    private String thisFocus;//本次重点
    private String checkItem;//检查项目
    private String thisNote;//本次注意
    private String inspectionWeek;//产检孕周
    private String inspectionTimes;//产检次数
    private String inspectionPhase;//检查阶段
    private Long startDay;//开始天数(距怀孕天数)
    private Long endDay;//结束天数(距怀孕天数)
    private String czrq;//创建日期
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getThisFocus() {
        return thisFocus;
    }
    public void setThisFocus(String thisFocus) {
        this.thisFocus = thisFocus;
    }
    public String getCheckItem() {
        return checkItem;
    }
    public void setCheckItem(String checkItem) {
        this.checkItem = checkItem;
    }
    public String getThisNote() {
        return thisNote;
    }
    public void setThisNote(String thisNote) {
        this.thisNote = thisNote;
    }
    public String getInspectionWeek() {
        return inspectionWeek;
    }
    public void setInspectionWeek(String inspectionWeek) {
        this.inspectionWeek = inspectionWeek;
    }
    public String getInspectionTimes() {
        return inspectionTimes;
    }
    public void setInspectionTimes(String inspectionTimes) {
        this.inspectionTimes = inspectionTimes;
    }
    public String getInspectionPhase() {
        return inspectionPhase;
    }
    public void setInspectionPhase(String inspectionPhase) {
        this.inspectionPhase = inspectionPhase;
    }
    public Long getStartDay() {
        return startDay;
    }
    public void setStartDay(Long startDay) {
        this.startDay = startDay;
    }
    public Long getEndDay() {
        return endDay;
    }
    public void setEndDay(Long endDay) {
        this.endDay = endDay;
    }
    public String getCzrq() {
        return czrq;
    }
    public void setCzrq(String czrq) {
        this.czrq = czrq;
    }
}
//package com.yihu.wlyy.entity.patient.prenatal;
//
//import com.yihu.wlyy.entity.IdEntity;
//
//import javax.persistence.Entity;
//import javax.persistence.Table;
//import java.io.Serializable;
//
///**
// * 产检计划库
// * Created by yeshijie on 2017/6/6.
// */
//@Entity
//@Table(name = "wlyy_prenatal_inspector_plan_library")
//public class PrenatalInspectorPlanLibrary extends IdEntity implements Serializable {
//
//    private String name;//名称
//    private String thisFocus;//本次重点
//    private String checkItem;//检查项目
//    private String thisNote;//本次注意
//    private String inspectionWeek;//产检孕周
//    private String inspectionTimes;//产检次数
//    private String inspectionPhase;//检查阶段
//    private Long startDay;//开始天数(距怀孕天数)
//    private Long endDay;//结束天数(距怀孕天数)
//    private String czrq;//创建日期
//
//    public String getName() {
//        return name;
//    }
//
//    public void setName(String name) {
//        this.name = name;
//    }
//
//    public String getThisFocus() {
//        return thisFocus;
//    }
//
//    public void setThisFocus(String thisFocus) {
//        this.thisFocus = thisFocus;
//    }
//
//    public String getCheckItem() {
//        return checkItem;
//    }
//
//    public void setCheckItem(String checkItem) {
//        this.checkItem = checkItem;
//    }
//
//    public String getThisNote() {
//        return thisNote;
//    }
//
//    public void setThisNote(String thisNote) {
//        this.thisNote = thisNote;
//    }
//
//    public String getInspectionWeek() {
//        return inspectionWeek;
//    }
//
//    public void setInspectionWeek(String inspectionWeek) {
//        this.inspectionWeek = inspectionWeek;
//    }
//
//    public String getInspectionTimes() {
//        return inspectionTimes;
//    }
//
//    public void setInspectionTimes(String inspectionTimes) {
//        this.inspectionTimes = inspectionTimes;
//    }
//
//    public String getInspectionPhase() {
//        return inspectionPhase;
//    }
//
//    public void setInspectionPhase(String inspectionPhase) {
//        this.inspectionPhase = inspectionPhase;
//    }
//
//    public Long getStartDay() {
//        return startDay;
//    }
//
//    public void setStartDay(Long startDay) {
//        this.startDay = startDay;
//    }
//
//    public Long getEndDay() {
//        return endDay;
//    }
//
//    public void setEndDay(Long endDay) {
//        this.endDay = endDay;
//    }
//
//    public String getCzrq() {
//        return czrq;
//    }
//
//    public void setCzrq(String czrq) {
//        this.czrq = czrq;
//    }
//}

+ 442 - 442
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/patient/prenatal/PrenatalInspectorPreCard.java

@ -1,442 +1,442 @@
package com.yihu.wlyy.entity.patient.prenatal;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
/**
 * 产检预建卡
 * Created by yeshijie on 2017/6/6.
 */
@Entity
@Table(name = "wlyy_prenatal_inspector_pre_card")
public class PrenatalInspectorPreCard extends IdEntity implements Serializable{
    private String code;//产检code
    private String patient;//居民code
    private String name;//居民姓名
    private String ssc;//医保卡号
    private Date birthday;//出生日期
    private String mobile;//手机号码
    private Date lastMenstrualDate;//末次月经时间
    private String allergyHistory;//过敏史
    private String maritalStatus;//婚姻情况(1未婚,2已婚,3再婚,4丧偶,5离婚,6分居)
    private String residentialAddress;//现居住址
    private String residentialProvince;//住址省份
    private String residentialCity;//住址城市
    private String residentialTown;//住址区(县)
    private String permanentAddress;//户籍地址
    private String permanentProvince;//户籍省份
    private String permanentCity;//户籍城市
    private String permanentTown;//户籍区(县)
    private Date marryDate;//结婚日期
    private String spouseName;//配偶姓名
    private Date spouseBirthday;//配偶生日
    private String spouseMobile;//配偶手机
    private String eatFolate;//服用叶酸(1是,0否)
    private String eatAcyeterion;//服避孕药(1是,0否)
    private String smoke;//吸烟(1是,0否)
    private String drink;//饮酒(1是,0否)
    private String eatOtherDrugs;//服用其他药物
    private String workUnit;//工作单位
    private String height;//身高(cm)
    private String weight;//体重(kg)
    private Integer vaginalDeliveryTimes;//阴道分娩次数(次)
    private Integer caesareanSectionTimes;//剖宫产次数(次)
    private Integer menarcheAge;//初潮(岁)
    private Integer menstrualPeriod;//经期(天)
    private Integer menstrualCycle;//周期(天)
    private String diseaseHistory;//疾病史
    private String operationHistory;//手术史
    private String otherInformation;//其他
    private String effective;//是否有效(1有效,0无效)
    private String status;//状态
    private Date dueDate;//预产期
    private String hospital;//医院
    private String hospitalName;//医院名称
    private String bedNo;//床位
    private String orderBedTime;//预约床位时间
    private String inspectionPhase;//检查阶段(1社区检查,2医院检查)
    private String del;//是否删除(1正常,0废弃)
    private Date czrq;//创建日期
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getPatient() {
        return patient;
    }
    public void setPatient(String patient) {
        this.patient = patient;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSsc() {
        return ssc;
    }
    public void setSsc(String ssc) {
        this.ssc = ssc;
    }
    public Date getBirthday() {
        return birthday;
    }
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
    public String getMobile() {
        return mobile;
    }
    public void setMobile(String mobile) {
        this.mobile = mobile;
    }
    public Date getLastMenstrualDate() {
        return lastMenstrualDate;
    }
    public void setLastMenstrualDate(Date lastMenstrualDate) {
        this.lastMenstrualDate = lastMenstrualDate;
    }
    public String getAllergyHistory() {
        return allergyHistory;
    }
    public void setAllergyHistory(String allergyHistory) {
        this.allergyHistory = allergyHistory;
    }
    public String getMaritalStatus() {
        return maritalStatus;
    }
    public void setMaritalStatus(String maritalStatus) {
        this.maritalStatus = maritalStatus;
    }
    public String getResidentialAddress() {
        return residentialAddress;
    }
    public void setResidentialAddress(String residentialAddress) {
        this.residentialAddress = residentialAddress;
    }
    public String getResidentialProvince() {
        return residentialProvince;
    }
    public void setResidentialProvince(String residentialProvince) {
        this.residentialProvince = residentialProvince;
    }
    public String getResidentialCity() {
        return residentialCity;
    }
    public void setResidentialCity(String residentialCity) {
        this.residentialCity = residentialCity;
    }
    public String getResidentialTown() {
        return residentialTown;
    }
    public void setResidentialTown(String residentialTown) {
        this.residentialTown = residentialTown;
    }
    public String getPermanentAddress() {
        return permanentAddress;
    }
    public void setPermanentAddress(String permanentAddress) {
        this.permanentAddress = permanentAddress;
    }
    public String getPermanentProvince() {
        return permanentProvince;
    }
    public void setPermanentProvince(String permanentProvince) {
        this.permanentProvince = permanentProvince;
    }
    public String getPermanentCity() {
        return permanentCity;
    }
    public void setPermanentCity(String permanentCity) {
        this.permanentCity = permanentCity;
    }
    public String getPermanentTown() {
        return permanentTown;
    }
    public void setPermanentTown(String permanentTown) {
        this.permanentTown = permanentTown;
    }
    public Date getMarryDate() {
        return marryDate;
    }
    public void setMarryDate(Date marryDate) {
        this.marryDate = marryDate;
    }
    public String getSpouseName() {
        return spouseName;
    }
    public void setSpouseName(String spouseName) {
        this.spouseName = spouseName;
    }
    public Date getSpouseBirthday() {
        return spouseBirthday;
    }
    public void setSpouseBirthday(Date spouseBirthday) {
        this.spouseBirthday = spouseBirthday;
    }
    public String getSpouseMobile() {
        return spouseMobile;
    }
    public void setSpouseMobile(String spouseMobile) {
        this.spouseMobile = spouseMobile;
    }
    public String getEatFolate() {
        return eatFolate;
    }
    public void setEatFolate(String eatFolate) {
        this.eatFolate = eatFolate;
    }
    public String getEatAcyeterion() {
        return eatAcyeterion;
    }
    public void setEatAcyeterion(String eatAcyeterion) {
        this.eatAcyeterion = eatAcyeterion;
    }
    public String getSmoke() {
        return smoke;
    }
    public void setSmoke(String smoke) {
        this.smoke = smoke;
    }
    public String getDrink() {
        return drink;
    }
    public void setDrink(String drink) {
        this.drink = drink;
    }
    public String getEatOtherDrugs() {
        return eatOtherDrugs;
    }
    public void setEatOtherDrugs(String eatOtherDrugs) {
        this.eatOtherDrugs = eatOtherDrugs;
    }
    public String getWorkUnit() {
        return workUnit;
    }
    public void setWorkUnit(String workUnit) {
        this.workUnit = workUnit;
    }
    public String getHeight() {
        return height;
    }
    public void setHeight(String height) {
        this.height = height;
    }
    public String getWeight() {
        return weight;
    }
    public void setWeight(String weight) {
        this.weight = weight;
    }
    public Integer getVaginalDeliveryTimes() {
        return vaginalDeliveryTimes;
    }
    public void setVaginalDeliveryTimes(Integer vaginalDeliveryTimes) {
        this.vaginalDeliveryTimes = vaginalDeliveryTimes;
    }
    public Integer getCaesareanSectionTimes() {
        return caesareanSectionTimes;
    }
    public void setCaesareanSectionTimes(Integer caesareanSectionTimes) {
        this.caesareanSectionTimes = caesareanSectionTimes;
    }
    public Integer getMenarcheAge() {
        return menarcheAge;
    }
    public void setMenarcheAge(Integer menarcheAge) {
        this.menarcheAge = menarcheAge;
    }
    public Integer getMenstrualPeriod() {
        return menstrualPeriod;
    }
    public void setMenstrualPeriod(Integer menstrualPeriod) {
        this.menstrualPeriod = menstrualPeriod;
    }
    public Integer getMenstrualCycle() {
        return menstrualCycle;
    }
    public void setMenstrualCycle(Integer menstrualCycle) {
        this.menstrualCycle = menstrualCycle;
    }
    public String getDiseaseHistory() {
        return diseaseHistory;
    }
    public void setDiseaseHistory(String diseaseHistory) {
        this.diseaseHistory = diseaseHistory;
    }
    public String getOperationHistory() {
        return operationHistory;
    }
    public void setOperationHistory(String operationHistory) {
        this.operationHistory = operationHistory;
    }
    public String getOtherInformation() {
        return otherInformation;
    }
    public void setOtherInformation(String otherInformation) {
        this.otherInformation = otherInformation;
    }
    public String getEffective() {
        return effective;
    }
    public void setEffective(String effective) {
        this.effective = effective;
    }
    public String getStatus() {
        return status;
    }
    public void setStatus(String status) {
        this.status = status;
    }
    public Date getDueDate() {
        return dueDate;
    }
    public void setDueDate(Date dueDate) {
        this.dueDate = dueDate;
    }
    public String getHospital() {
        return hospital;
    }
    public void setHospital(String hospital) {
        this.hospital = hospital;
    }
    public String getHospitalName() {
        return hospitalName;
    }
    public void setHospitalName(String hospitalName) {
        this.hospitalName = hospitalName;
    }
    public String getBedNo() {
        return bedNo;
    }
    public void setBedNo(String bedNo) {
        this.bedNo = bedNo;
    }
    public String getOrderBedTime() {
        return orderBedTime;
    }
    public void setOrderBedTime(String orderBedTime) {
        this.orderBedTime = orderBedTime;
    }
    public String getInspectionPhase() {
        return inspectionPhase;
    }
    public void setInspectionPhase(String inspectionPhase) {
        this.inspectionPhase = inspectionPhase;
    }
    public String getDel() {
        return del;
    }
    public void setDel(String del) {
        this.del = del;
    }
    public Date getCzrq() {
        return czrq;
    }
    public void setCzrq(Date czrq) {
        this.czrq = czrq;
    }
}
//package com.yihu.wlyy.entity.patient.prenatal;
//
//import com.yihu.wlyy.entity.IdEntity;
//
//import javax.persistence.Entity;
//import javax.persistence.Table;
//import java.io.Serializable;
//import java.util.Date;
//
///**
// * 产检预建卡
// * Created by yeshijie on 2017/6/6.
// */
//@Entity
//@Table(name = "wlyy_prenatal_inspector_pre_card")
//public class PrenatalInspectorPreCard extends IdEntity implements Serializable{
//
//    private String code;//产检code
//    private String patient;//居民code
//    private String name;//居民姓名
//    private String ssc;//医保卡号
//    private Date birthday;//出生日期
//    private String mobile;//手机号码
//    private Date lastMenstrualDate;//末次月经时间
//    private String allergyHistory;//过敏史
//    private String maritalStatus;//婚姻情况(1未婚,2已婚,3再婚,4丧偶,5离婚,6分居)
//    private String residentialAddress;//现居住址
//    private String residentialProvince;//住址省份
//    private String residentialCity;//住址城市
//    private String residentialTown;//住址区(县)
//    private String permanentAddress;//户籍地址
//    private String permanentProvince;//户籍省份
//    private String permanentCity;//户籍城市
//    private String permanentTown;//户籍区(县)
//    private Date marryDate;//结婚日期
//    private String spouseName;//配偶姓名
//    private Date spouseBirthday;//配偶生日
//    private String spouseMobile;//配偶手机
//    private String eatFolate;//服用叶酸(1是,0否)
//    private String eatAcyeterion;//服避孕药(1是,0否)
//    private String smoke;//吸烟(1是,0否)
//    private String drink;//饮酒(1是,0否)
//    private String eatOtherDrugs;//服用其他药物
//    private String workUnit;//工作单位
//    private String height;//身高(cm)
//    private String weight;//体重(kg)
//    private Integer vaginalDeliveryTimes;//阴道分娩次数(次)
//    private Integer caesareanSectionTimes;//剖宫产次数(次)
//    private Integer menarcheAge;//初潮(岁)
//    private Integer menstrualPeriod;//经期(天)
//    private Integer menstrualCycle;//周期(天)
//    private String diseaseHistory;//疾病史
//    private String operationHistory;//手术史
//    private String otherInformation;//其他
//    private String effective;//是否有效(1有效,0无效)
//    private String status;//状态
//    private Date dueDate;//预产期
//    private String hospital;//医院
//    private String hospitalName;//医院名称
//    private String bedNo;//床位
//    private String orderBedTime;//预约床位时间
//    private String inspectionPhase;//检查阶段(1社区检查,2医院检查)
//    private String del;//是否删除(1正常,0废弃)
//    private Date czrq;//创建日期
//
//
//    public String getCode() {
//        return code;
//    }
//
//    public void setCode(String code) {
//        this.code = code;
//    }
//
//    public String getPatient() {
//        return patient;
//    }
//
//    public void setPatient(String patient) {
//        this.patient = patient;
//    }
//
//    public String getName() {
//        return name;
//    }
//
//    public void setName(String name) {
//        this.name = name;
//    }
//
//    public String getSsc() {
//        return ssc;
//    }
//
//    public void setSsc(String ssc) {
//        this.ssc = ssc;
//    }
//
//    public Date getBirthday() {
//        return birthday;
//    }
//
//    public void setBirthday(Date birthday) {
//        this.birthday = birthday;
//    }
//
//    public String getMobile() {
//        return mobile;
//    }
//
//    public void setMobile(String mobile) {
//        this.mobile = mobile;
//    }
//
//    public Date getLastMenstrualDate() {
//        return lastMenstrualDate;
//    }
//
//    public void setLastMenstrualDate(Date lastMenstrualDate) {
//        this.lastMenstrualDate = lastMenstrualDate;
//    }
//
//    public String getAllergyHistory() {
//        return allergyHistory;
//    }
//
//    public void setAllergyHistory(String allergyHistory) {
//        this.allergyHistory = allergyHistory;
//    }
//
//    public String getMaritalStatus() {
//        return maritalStatus;
//    }
//
//    public void setMaritalStatus(String maritalStatus) {
//        this.maritalStatus = maritalStatus;
//    }
//
//    public String getResidentialAddress() {
//        return residentialAddress;
//    }
//
//    public void setResidentialAddress(String residentialAddress) {
//        this.residentialAddress = residentialAddress;
//    }
//
//    public String getResidentialProvince() {
//        return residentialProvince;
//    }
//
//    public void setResidentialProvince(String residentialProvince) {
//        this.residentialProvince = residentialProvince;
//    }
//
//    public String getResidentialCity() {
//        return residentialCity;
//    }
//
//    public void setResidentialCity(String residentialCity) {
//        this.residentialCity = residentialCity;
//    }
//
//    public String getResidentialTown() {
//        return residentialTown;
//    }
//
//    public void setResidentialTown(String residentialTown) {
//        this.residentialTown = residentialTown;
//    }
//
//    public String getPermanentAddress() {
//        return permanentAddress;
//    }
//
//    public void setPermanentAddress(String permanentAddress) {
//        this.permanentAddress = permanentAddress;
//    }
//
//    public String getPermanentProvince() {
//        return permanentProvince;
//    }
//
//    public void setPermanentProvince(String permanentProvince) {
//        this.permanentProvince = permanentProvince;
//    }
//
//    public String getPermanentCity() {
//        return permanentCity;
//    }
//
//    public void setPermanentCity(String permanentCity) {
//        this.permanentCity = permanentCity;
//    }
//
//    public String getPermanentTown() {
//        return permanentTown;
//    }
//
//    public void setPermanentTown(String permanentTown) {
//        this.permanentTown = permanentTown;
//    }
//
//    public Date getMarryDate() {
//        return marryDate;
//    }
//
//    public void setMarryDate(Date marryDate) {
//        this.marryDate = marryDate;
//    }
//
//    public String getSpouseName() {
//        return spouseName;
//    }
//
//    public void setSpouseName(String spouseName) {
//        this.spouseName = spouseName;
//    }
//
//    public Date getSpouseBirthday() {
//        return spouseBirthday;
//    }
//
//    public void setSpouseBirthday(Date spouseBirthday) {
//        this.spouseBirthday = spouseBirthday;
//    }
//
//    public String getSpouseMobile() {
//        return spouseMobile;
//    }
//
//    public void setSpouseMobile(String spouseMobile) {
//        this.spouseMobile = spouseMobile;
//    }
//
//    public String getEatFolate() {
//        return eatFolate;
//    }
//
//    public void setEatFolate(String eatFolate) {
//        this.eatFolate = eatFolate;
//    }
//
//    public String getEatAcyeterion() {
//        return eatAcyeterion;
//    }
//
//    public void setEatAcyeterion(String eatAcyeterion) {
//        this.eatAcyeterion = eatAcyeterion;
//    }
//
//    public String getSmoke() {
//        return smoke;
//    }
//
//    public void setSmoke(String smoke) {
//        this.smoke = smoke;
//    }
//
//    public String getDrink() {
//        return drink;
//    }
//
//    public void setDrink(String drink) {
//        this.drink = drink;
//    }
//
//    public String getEatOtherDrugs() {
//        return eatOtherDrugs;
//    }
//
//    public void setEatOtherDrugs(String eatOtherDrugs) {
//        this.eatOtherDrugs = eatOtherDrugs;
//    }
//
//    public String getWorkUnit() {
//        return workUnit;
//    }
//
//    public void setWorkUnit(String workUnit) {
//        this.workUnit = workUnit;
//    }
//
//    public String getHeight() {
//        return height;
//    }
//
//    public void setHeight(String height) {
//        this.height = height;
//    }
//
//    public String getWeight() {
//        return weight;
//    }
//
//    public void setWeight(String weight) {
//        this.weight = weight;
//    }
//
//    public Integer getVaginalDeliveryTimes() {
//        return vaginalDeliveryTimes;
//    }
//
//    public void setVaginalDeliveryTimes(Integer vaginalDeliveryTimes) {
//        this.vaginalDeliveryTimes = vaginalDeliveryTimes;
//    }
//
//    public Integer getCaesareanSectionTimes() {
//        return caesareanSectionTimes;
//    }
//
//    public void setCaesareanSectionTimes(Integer caesareanSectionTimes) {
//        this.caesareanSectionTimes = caesareanSectionTimes;
//    }
//
//    public Integer getMenarcheAge() {
//        return menarcheAge;
//    }
//
//    public void setMenarcheAge(Integer menarcheAge) {
//        this.menarcheAge = menarcheAge;
//    }
//
//    public Integer getMenstrualPeriod() {
//        return menstrualPeriod;
//    }
//
//    public void setMenstrualPeriod(Integer menstrualPeriod) {
//        this.menstrualPeriod = menstrualPeriod;
//    }
//
//    public Integer getMenstrualCycle() {
//        return menstrualCycle;
//    }
//
//    public void setMenstrualCycle(Integer menstrualCycle) {
//        this.menstrualCycle = menstrualCycle;
//    }
//
//    public String getDiseaseHistory() {
//        return diseaseHistory;
//    }
//
//    public void setDiseaseHistory(String diseaseHistory) {
//        this.diseaseHistory = diseaseHistory;
//    }
//
//    public String getOperationHistory() {
//        return operationHistory;
//    }
//
//    public void setOperationHistory(String operationHistory) {
//        this.operationHistory = operationHistory;
//    }
//
//    public String getOtherInformation() {
//        return otherInformation;
//    }
//
//    public void setOtherInformation(String otherInformation) {
//        this.otherInformation = otherInformation;
//    }
//
//    public String getEffective() {
//        return effective;
//    }
//
//    public void setEffective(String effective) {
//        this.effective = effective;
//    }
//
//    public String getStatus() {
//        return status;
//    }
//
//    public void setStatus(String status) {
//        this.status = status;
//    }
//
//    public Date getDueDate() {
//        return dueDate;
//    }
//
//    public void setDueDate(Date dueDate) {
//        this.dueDate = dueDate;
//    }
//
//    public String getHospital() {
//        return hospital;
//    }
//
//    public void setHospital(String hospital) {
//        this.hospital = hospital;
//    }
//
//    public String getHospitalName() {
//        return hospitalName;
//    }
//
//    public void setHospitalName(String hospitalName) {
//        this.hospitalName = hospitalName;
//    }
//
//    public String getBedNo() {
//        return bedNo;
//    }
//
//    public void setBedNo(String bedNo) {
//        this.bedNo = bedNo;
//    }
//
//    public String getOrderBedTime() {
//        return orderBedTime;
//    }
//
//    public void setOrderBedTime(String orderBedTime) {
//        this.orderBedTime = orderBedTime;
//    }
//
//    public String getInspectionPhase() {
//        return inspectionPhase;
//    }
//
//    public void setInspectionPhase(String inspectionPhase) {
//        this.inspectionPhase = inspectionPhase;
//    }
//
//    public String getDel() {
//        return del;
//    }
//
//    public void setDel(String del) {
//        this.del = del;
//    }
//
//    public Date getCzrq() {
//        return czrq;
//    }
//
//    public void setCzrq(Date czrq) {
//        this.czrq = czrq;
//    }
//}

+ 7 - 8
patient-co-wlyy/src/main/java/com/yihu/wlyy/event/ApplicationEvent.java

@ -1,6 +1,5 @@
package com.yihu.wlyy.event;
import com.yihu.wlyy.job.PrenatalInspectorJob;
import com.yihu.wlyy.job.QuartzHelper;
import com.yihu.wlyy.job.SignAgainJob;
import com.yihu.wlyy.job.SignEndJob;
@ -50,13 +49,13 @@ public class ApplicationEvent implements ApplicationListener<ContextRefreshedEve
            }
            //启动发送产检提醒模板消息
            if (!quartzHelper.isExistJob("prenatal_inspector_job")) {
                String trigger = SystemConf.getInstance().getSystemProperties().getProperty("prenatal_inspector_job_trigger");
                quartzHelper.addJob(PrenatalInspectorJob.class, trigger, "prenatal_inspector_job", new HashMap<String, Object>());
                System.out.println("prenatal_inspector_job start success");
            } else {
                System.out.println("prenatal_inspector_job exist");
            }
//            if (!quartzHelper.isExistJob("prenatal_inspector_job")) {
//                String trigger = SystemConf.getInstance().getSystemProperties().getProperty("prenatal_inspector_job_trigger");
//                quartzHelper.addJob(PrenatalInspectorJob.class, trigger, "prenatal_inspector_job", new HashMap<String, Object>());
//                System.out.println("prenatal_inspector_job start success");
//            } else {
//                System.out.println("prenatal_inspector_job exist");
//            }
        } catch (Exception e) {
            System.out.println("sign end job start failed");
        }

+ 30 - 30
patient-co-wlyy/src/main/java/com/yihu/wlyy/job/PrenatalInspectorJob.java

@ -1,30 +1,30 @@
package com.yihu.wlyy.job;
import com.yihu.wlyy.service.app.prenatalInspector.PrenatalInspectorPreCardService;
import com.yihu.wlyy.util.DateUtil;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.context.support.SpringBeanAutowiringSupport;
import java.util.Date;
/**
 * 产检提醒(1预约提醒,2就诊提醒)
 * Created by yeshijie on 2017/6/7.
 */
public class PrenatalInspectorJob implements Job{
    @Autowired
    private PrenatalInspectorPreCardService preCardService;
    @Override
    public void execute(JobExecutionContext context) throws JobExecutionException {
        SpringBeanAutowiringSupport.processInjectionBasedOnCurrentContext(this);
        System.out.print("prenatal inspector wx message sending...");
        String date = DateUtil.dateToStrShort(new Date());
        //发送产检微信模板提醒消息
        preCardService.sendPrenatalInspectorRemind();
    }
}
//package com.yihu.wlyy.job;
//
//import com.yihu.wlyy.service.app.prenatalInspector.PrenatalInspectorPreCardService;
//import com.yihu.wlyy.util.DateUtil;
//import org.quartz.Job;
//import org.quartz.JobExecutionContext;
//import org.quartz.JobExecutionException;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.context.support.SpringBeanAutowiringSupport;
//
//import java.util.Date;
//
///**
// * 产检提醒(1预约提醒,2就诊提醒)
// * Created by yeshijie on 2017/6/7.
// */
//public class PrenatalInspectorJob implements Job{
//
//    @Autowired
//    private PrenatalInspectorPreCardService preCardService;
//
//    @Override
//    public void execute(JobExecutionContext context) throws JobExecutionException {
//        SpringBeanAutowiringSupport.processInjectionBasedOnCurrentContext(this);
//        System.out.print("prenatal inspector wx message sending...");
//        String date = DateUtil.dateToStrShort(new Date());
//        //发送产检微信模板提醒消息
//        preCardService.sendPrenatalInspectorRemind();
//    }
//}

+ 20 - 20
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/patient/PrenatalInspectorPlanDao.java

@ -1,20 +1,20 @@
package com.yihu.wlyy.repository.patient;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlan;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * Created by yeshijie on 2017/6/6.
 */
public interface PrenatalInspectorPlanDao extends PagingAndSortingRepository<PrenatalInspectorPlan, Long>{
    @Query("select a from PrenatalInspectorPlan a where a.inspectionCode = ?1 and a.status = '0' ")
    List<PrenatalInspectorPlan> findByCode(String inspectionCode);
    @Query("select a from PrenatalInspectorPlan a where a.inspectionTime is not null and a.status = '0' and ( TO_DAYS(a.inspectionTime)- TO_DAYS(NOW())=7 or TO_DAYS(a.inspectionTime)- TO_DAYS(NOW())=1 ) ")
    List<PrenatalInspectorPlan> findWxTipList();
}
//package com.yihu.wlyy.repository.patient;
//
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlan;
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
//import org.springframework.data.jpa.repository.Query;
//import org.springframework.data.repository.PagingAndSortingRepository;
//
//import java.util.List;
//
///**
// * Created by yeshijie on 2017/6/6.
// */
//public interface PrenatalInspectorPlanDao extends PagingAndSortingRepository<PrenatalInspectorPlan, Long>{
//
//    @Query("select a from PrenatalInspectorPlan a where a.inspectionCode = ?1 and a.status = '0' ")
//    List<PrenatalInspectorPlan> findByCode(String inspectionCode);
//
//    @Query("select a from PrenatalInspectorPlan a where a.inspectionTime is not null and a.status = '0' and ( TO_DAYS(a.inspectionTime)- TO_DAYS(NOW())=7 or TO_DAYS(a.inspectionTime)- TO_DAYS(NOW())=1 ) ")
//    List<PrenatalInspectorPlan> findWxTipList();
//}

+ 20 - 20
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/patient/PrenatalInspectorPlanLibraryDao.java

@ -1,20 +1,20 @@
package com.yihu.wlyy.repository.patient;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * Created by yeshijie on 2017/6/6.
 */
public interface PrenatalInspectorPlanLibraryDao extends PagingAndSortingRepository<PrenatalInspectorPlanLibrary, Long>{
    @Query("select a from PrenatalInspectorPlanLibrary a where a.endDay >= ?1 ")
    List<PrenatalInspectorPlanLibrary> findByDays(Long endDay);
}
//package com.yihu.wlyy.repository.patient;
//
//import com.yihu.wlyy.entity.patient.SignFamily;
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
//import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
//import org.springframework.data.jpa.repository.Query;
//import org.springframework.data.repository.PagingAndSortingRepository;
//
//import java.util.List;
//
///**
// * Created by yeshijie on 2017/6/6.
// */
//public interface PrenatalInspectorPlanLibraryDao extends PagingAndSortingRepository<PrenatalInspectorPlanLibrary, Long>{
//
//
//    @Query("select a from PrenatalInspectorPlanLibrary a where a.endDay >= ?1 ")
//    List<PrenatalInspectorPlanLibrary> findByDays(Long endDay);
//
//}

+ 17 - 17
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/patient/PrenatalInspectorPreCardDao.java

@ -1,17 +1,17 @@
package com.yihu.wlyy.repository.patient;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPreCard;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * Created by yeshijie on 2017/6/6.
 */
public interface PrenatalInspectorPreCardDao extends PagingAndSortingRepository<PrenatalInspectorPreCard, Long>{
    @Query("select a from PrenatalInspectorPreCard a where a.patient = ?1 and a.del='1' order by a.lastMenstrualDate desc")
    List<PrenatalInspectorPreCard> findByPatient(String patient);
}
//package com.yihu.wlyy.repository.patient;
//
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPreCard;
//import org.springframework.data.jpa.repository.Query;
//import org.springframework.data.repository.PagingAndSortingRepository;
//
//import java.util.List;
//
///**
// * Created by yeshijie on 2017/6/6.
// */
//public interface PrenatalInspectorPreCardDao extends PagingAndSortingRepository<PrenatalInspectorPreCard, Long>{
//
//    @Query("select a from PrenatalInspectorPreCard a where a.patient = ?1 and a.del='1' order by a.lastMenstrualDate desc")
//    List<PrenatalInspectorPreCard> findByPatient(String patient);
//}

+ 240 - 240
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prenatalInspector/PrenatalInspectorPreCardService.java

@ -1,240 +1,240 @@
package com.yihu.wlyy.service.app.prenatalInspector;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlan;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPreCard;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.PrenatalInspectorPlanDao;
import com.yihu.wlyy.repository.patient.PrenatalInspectorPlanLibraryDao;
import com.yihu.wlyy.repository.patient.PrenatalInspectorPreCardDao;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.service.app.sign.FamilyContractService;
import com.yihu.wlyy.task.PushMsgTask;
import com.yihu.wlyy.util.DateUtil;
import com.yihu.wlyy.wechat.util.WeiXinAccessTokenUtils;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * Created by yeshijie on 2017/6/6.
 */
@Component
@Transactional(rollbackFor = Exception.class)
public class PrenatalInspectorPreCardService extends BaseService {
    @Autowired
    private PrenatalInspectorPreCardDao prenatalInspectorPreCardDao;
    @Autowired
    private PrenatalInspectorPlanLibraryDao prenatalInspectorPlanLibraryDao;
    @Autowired
    private PrenatalInspectorPlanDao prenatalInspectorPlanDao;
    @Autowired
    private WeiXinAccessTokenUtils accessTokenUtils;
    @Autowired
    private PatientDao patientDao;
    @Autowired
    private FamilyContractService familyContractService;
    /**
     * 待产检计划
     * @param code
     * @return
     */
    public JSONArray planList(String code){
        JSONArray jsonArray = new JSONArray();
        List<PrenatalInspectorPlan> planList = prenatalInspectorPlanDao.findByCode(code);
        for (PrenatalInspectorPlan plan:planList){
            JSONObject json = new JSONObject();
            json.put("checkItem",plan.getCheckItem());
            json.put("name",plan.getName());
            json.put("thisFoucs",plan.getThisFocus());
            json.put("thisNote",plan.getThisNote());
            if(plan.getInspectionTime()==null){
                json.put("inspectionTime","");
            }else {
                json.put("inspectionTime",DateUtil.dateToStrShort(plan.getInspectionTime()));
            }
            json.put("inspectionEndTime",DateUtil.dateToStrShort(plan.getInspectionEndTime()));
            json.put("inspectionStartTime",DateUtil.dateToStrShort(plan.getInspectionStartTime()));
            jsonArray.put(json);
        }
        return jsonArray;
    }
    /**
     * 预建卡列表-孕检计划
     * @param patient
     * @return
     */
    public JSONArray preCardList(String patient){
        JSONArray jsonArray = new JSONArray();
        List<PrenatalInspectorPreCard> preCards = prenatalInspectorPreCardDao.findByPatient(patient);
        for (PrenatalInspectorPreCard preCard:preCards){
            JSONObject json = new JSONObject();
            json.put("code",preCard.getCode());
            json.put("dueDate",DateUtil.dateToStrShort(preCard.getDueDate()));//预产期
            Date date = new Date();
            Long dueDateDay = DateUtil.getDays(preCard.getDueDate(),date);
            if(dueDateDay>0){
                json.put("dueDateWeek",getWeek(dueDateDay.intValue()));//距离预产期周数
                json.put("dueDateDay",getDay(dueDateDay.intValue()));//距离预产期周数的余数
                Long pregnancyDay = DateUtil.getDays(date,preCard.getLastMenstrualDate());
                int week = getWeek(pregnancyDay.intValue());
                int day = getDay(pregnancyDay.intValue());
                String preDay = day==0?(week+"周"):(week+"周"+day+"天");//怀孕时间
                json.put("status",preDay);
            }else {
                json.put("dueDateWeek",0);//距离预产期周数
                json.put("dueDateDay",0);//距离预产期周数的余数
                json.put("status",preCard.getStatus());
            }
            json.put("hospitalName",preCard.getHospitalName());//预约床位医院
            json.put("orderBedTime",preCard.getOrderBedTime());//预约床位时间
            jsonArray.put(json);
        }
        return jsonArray;
    }
    /**
     * 把天数换算成周数
     * @param day
     * @return
     */
    private int getWeek(Integer day){
        return day/7;
    }
    /**
     * 把天数换算成周数的余数
     * @param day
     * @return
     */
    private int getDay(Integer day){
        return day%7;
    }
    /**
     * 新建产检预建卡
     */
    @Transactional
    public void addPrenatalInspectorPreCard(PrenatalInspectorPreCard preCard){
        //1、保存预建卡
        Date date = new Date();
        Date lastMenstrualDate = preCard.getLastMenstrualDate();
        preCard.setDel("1");
        preCard.setCode(getCode());
        preCard.setCzrq(date);
        preCard.setDueDate(DateUtil.getDueDate(preCard.getLastMenstrualDate()));//预产期
        preCard.setStatus("0");
        preCard.setEffective("");
        preCard.setInspectionPhase("1");//检查阶段
        prenatalInspectorPreCardDao.save(preCard);
        String patient = preCard.getPatient();
        //2、生成待产检计划
        Long days = DateUtil.getDays(date,lastMenstrualDate);
        List<PrenatalInspectorPlanLibrary> libraries = prenatalInspectorPlanLibraryDao.findByDays(days);
        List<PrenatalInspectorPlan> plans = new ArrayList<>();
        PrenatalInspectorPlan plan = null;
        for (PrenatalInspectorPlanLibrary library:libraries){
            plan = new PrenatalInspectorPlan();
            plan.setInspectionPhase(library.getInspectionPhase());
            plan.setStatus("0");
            plan.setPatient(patient);
            plan.setCzrq(date);
            plan.setCheckItem(library.getCheckItem());
            plan.setInspectionCode(preCard.getCode());
            plan.setInspectionEndTime(DateUtil.getPrenatalInspectorDate(lastMenstrualDate,library.getEndDay().intValue()));
            plan.setInspectionStartTime(DateUtil.getPrenatalInspectorDate(lastMenstrualDate,library.getStartDay().intValue()));
            plan.setName(library.getName());
            plan.setThisFocus(library.getThisFocus());
            plan.setThisNote(library.getThisNote());
            if("1".equals(plan.getInspectionPhase())){
                SignFamily jiating = familyContractService.findByPatientByType(patient, 2);
                if(jiating!=null){
                    plan.setSignHospital(jiating.getHospital());
                }
            }
            plans.add(plan);
        }
        if (plans.size()>0){
            prenatalInspectorPlanDao.save(plans);
        }
    }
    /**
     * 产检提醒(1预约提醒,2就诊提醒)
     * 1、当居民已有经医生确认过的下一次产检时间,则距离下一次产检前7天(保证居民可自行预约),发出产检预约提醒通知。点击该消息,进入预约页面
     * 2、当居民已有经医生确认过的下一次产检时间,则距离下一次产检前1天,发出产检就诊提醒,提醒居民就诊。点击该消息,进入预约记录页面
     */
    public void sendPrenatalInspectorRemind(){
        System.out.println("产检计划---running");
        List<PrenatalInspectorPlan> planList = prenatalInspectorPlanDao.findWxTipList();
        for (PrenatalInspectorPlan plan:planList){
            try {
                Patient patient = patientDao.findByCode(plan.getPatient());
                String openId = patient.getOpenid();
                String name = patient.getName();
                String patientCode = patient.getCode();
                if(StringUtils.isNotBlank(openId)){
                    Long day = DateUtil.getDays(plan.getInspectionTime(),DateUtil.getNowDateShort());
                    JSONObject json = new JSONObject();
                    if(day==7){
                        //产检提醒
                        json.put("remark","产检内容以医生实际检查为准。点击进行预约");
                        json.put("first",name+",您好!您和您的宝宝需要进行产检啦~请及时预约产检,如已预约,请忽略");
                        if("1".equals(plan.getInspectionPhase())){
                            if(StringUtils.isNotBlank(plan.getSignHospital())){
                                json.put("url","wdyy/html/hospital-dept.html?openid="+openId+"&toUser="+patientCode+"&toName="+name+"&hospitalId="+plan.getSignHospital());
                            }else {
                                json.put("url","wdyy/html/appointment-register.html?openid="+openId+"&toUser="+patientCode+"&toName="+name+"&orderType=1");
                            }
                        }else {
                            json.put("url","wdyy/html/appointment-register.html?openid="+openId+"&toUser="+patientCode+"&toName="+name);
                        }
                        json.put("keyword1","产检提醒");
                        String keyword2 = DateUtil.getStringDateShort()+"\n产检内容:"+plan.getCheckItem();
                        json.put("keyword2",keyword2);
                        PushMsgTask.getInstance().sendWeixinMessage(accessTokenUtils.getAccessToken(), 18, openId, name, json);
                    }else if(day==1){
                        //产检就诊提醒
                        json.put("remark","产检内容以医生实际检查为准。点击查看预约记录");
                        json.put("first",name+",您好!您和您的宝宝即将进行产检啦~请按时就诊,如已就诊,请忽略");
                        json.put("url","wdyy/html/my-appointment.html?openid="+openId+"&toUser="+patientCode+"&toName="+name);
                        json.put("keyword1","产检就诊提醒");
                        String keyword2 = DateUtil.getStringDateShort()+"\n产检内容:"+plan.getCheckItem();
                        json.put("keyword2",keyword2);
                        PushMsgTask.getInstance().sendWeixinMessage(accessTokenUtils.getAccessToken(), 18, openId, name, json);
                    }
                }
            }catch (Exception e){
                System.out.println("微信提醒发送失败");
                e.printStackTrace();
            }
        }
    }
}
//package com.yihu.wlyy.service.app.prenatalInspector;
//
//import com.yihu.wlyy.entity.patient.Patient;
//import com.yihu.wlyy.entity.patient.SignFamily;
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlan;
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPlanLibrary;
//import com.yihu.wlyy.entity.patient.prenatal.PrenatalInspectorPreCard;
//import com.yihu.wlyy.repository.patient.PatientDao;
//import com.yihu.wlyy.repository.patient.PrenatalInspectorPlanDao;
//import com.yihu.wlyy.repository.patient.PrenatalInspectorPlanLibraryDao;
//import com.yihu.wlyy.repository.patient.PrenatalInspectorPreCardDao;
//import com.yihu.wlyy.service.BaseService;
//import com.yihu.wlyy.service.app.sign.FamilyContractService;
//import com.yihu.wlyy.task.PushMsgTask;
//import com.yihu.wlyy.util.DateUtil;
//import com.yihu.wlyy.wechat.util.WeiXinAccessTokenUtils;
//import org.apache.commons.lang3.StringUtils;
//import org.json.JSONArray;
//import org.json.JSONObject;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Component;
//import org.springframework.transaction.annotation.Transactional;
//
//import java.util.ArrayList;
//import java.util.Date;
//import java.util.List;
//
///**
// * Created by yeshijie on 2017/6/6.
// */
//@Component
//@Transactional(rollbackFor = Exception.class)
//public class PrenatalInspectorPreCardService extends BaseService {
//
//    @Autowired
//    private PrenatalInspectorPreCardDao prenatalInspectorPreCardDao;
//    @Autowired
//    private PrenatalInspectorPlanLibraryDao prenatalInspectorPlanLibraryDao;
//    @Autowired
//    private PrenatalInspectorPlanDao prenatalInspectorPlanDao;
//    @Autowired
//    private WeiXinAccessTokenUtils accessTokenUtils;
//    @Autowired
//    private PatientDao patientDao;
//    @Autowired
//    private FamilyContractService familyContractService;
//
//    /**
//     * 待产检计划
//     * @param code
//     * @return
//     */
//    public JSONArray planList(String code){
//        JSONArray jsonArray = new JSONArray();
//        List<PrenatalInspectorPlan> planList = prenatalInspectorPlanDao.findByCode(code);
//        for (PrenatalInspectorPlan plan:planList){
//            JSONObject json = new JSONObject();
//            json.put("checkItem",plan.getCheckItem());
//            json.put("name",plan.getName());
//            json.put("thisFoucs",plan.getThisFocus());
//            json.put("thisNote",plan.getThisNote());
//            if(plan.getInspectionTime()==null){
//                json.put("inspectionTime","");
//            }else {
//                json.put("inspectionTime",DateUtil.dateToStrShort(plan.getInspectionTime()));
//            }
//            json.put("inspectionEndTime",DateUtil.dateToStrShort(plan.getInspectionEndTime()));
//            json.put("inspectionStartTime",DateUtil.dateToStrShort(plan.getInspectionStartTime()));
//
//
//            jsonArray.put(json);
//        }
//
//
//        return jsonArray;
//    }
//
//    /**
//     * 预建卡列表-孕检计划
//     * @param patient
//     * @return
//     */
//    public JSONArray preCardList(String patient){
//        JSONArray jsonArray = new JSONArray();
//        List<PrenatalInspectorPreCard> preCards = prenatalInspectorPreCardDao.findByPatient(patient);
//        for (PrenatalInspectorPreCard preCard:preCards){
//            JSONObject json = new JSONObject();
//            json.put("code",preCard.getCode());
//            json.put("dueDate",DateUtil.dateToStrShort(preCard.getDueDate()));//预产期
//            Date date = new Date();
//            Long dueDateDay = DateUtil.getDays(preCard.getDueDate(),date);
//            if(dueDateDay>0){
//                json.put("dueDateWeek",getWeek(dueDateDay.intValue()));//距离预产期周数
//                json.put("dueDateDay",getDay(dueDateDay.intValue()));//距离预产期周数的余数
//                Long pregnancyDay = DateUtil.getDays(date,preCard.getLastMenstrualDate());
//                int week = getWeek(pregnancyDay.intValue());
//                int day = getDay(pregnancyDay.intValue());
//                String preDay = day==0?(week+"周"):(week+"周"+day+"天");//怀孕时间
//                json.put("status",preDay);
//            }else {
//                json.put("dueDateWeek",0);//距离预产期周数
//                json.put("dueDateDay",0);//距离预产期周数的余数
//                json.put("status",preCard.getStatus());
//            }
//
//            json.put("hospitalName",preCard.getHospitalName());//预约床位医院
//            json.put("orderBedTime",preCard.getOrderBedTime());//预约床位时间
//
//            jsonArray.put(json);
//        }
//
//        return jsonArray;
//    }
//
//    /**
//     * 把天数换算成周数
//     * @param day
//     * @return
//     */
//    private int getWeek(Integer day){
//        return day/7;
//    }
//
//    /**
//     * 把天数换算成周数的余数
//     * @param day
//     * @return
//     */
//    private int getDay(Integer day){
//        return day%7;
//    }
//
//    /**
//     * 新建产检预建卡
//     */
//    @Transactional
//    public void addPrenatalInspectorPreCard(PrenatalInspectorPreCard preCard){
//        //1、保存预建卡
//        Date date = new Date();
//        Date lastMenstrualDate = preCard.getLastMenstrualDate();
//        preCard.setDel("1");
//        preCard.setCode(getCode());
//        preCard.setCzrq(date);
//        preCard.setDueDate(DateUtil.getDueDate(preCard.getLastMenstrualDate()));//预产期
//        preCard.setStatus("0");
//        preCard.setEffective("");
//        preCard.setInspectionPhase("1");//检查阶段
//        prenatalInspectorPreCardDao.save(preCard);
//
//        String patient = preCard.getPatient();
//
//        //2、生成待产检计划
//        Long days = DateUtil.getDays(date,lastMenstrualDate);
//        List<PrenatalInspectorPlanLibrary> libraries = prenatalInspectorPlanLibraryDao.findByDays(days);
//        List<PrenatalInspectorPlan> plans = new ArrayList<>();
//        PrenatalInspectorPlan plan = null;
//        for (PrenatalInspectorPlanLibrary library:libraries){
//            plan = new PrenatalInspectorPlan();
//            plan.setInspectionPhase(library.getInspectionPhase());
//            plan.setStatus("0");
//            plan.setPatient(patient);
//            plan.setCzrq(date);
//            plan.setCheckItem(library.getCheckItem());
//            plan.setInspectionCode(preCard.getCode());
//            plan.setInspectionEndTime(DateUtil.getPrenatalInspectorDate(lastMenstrualDate,library.getEndDay().intValue()));
//            plan.setInspectionStartTime(DateUtil.getPrenatalInspectorDate(lastMenstrualDate,library.getStartDay().intValue()));
//            plan.setName(library.getName());
//            plan.setThisFocus(library.getThisFocus());
//            plan.setThisNote(library.getThisNote());
//
//            if("1".equals(plan.getInspectionPhase())){
//                SignFamily jiating = familyContractService.findByPatientByType(patient, 2);
//                if(jiating!=null){
//                    plan.setSignHospital(jiating.getHospital());
//                }
//            }
//
//            plans.add(plan);
//        }
//        if (plans.size()>0){
//            prenatalInspectorPlanDao.save(plans);
//        }
//
//    }
//
//    /**
//     * 产检提醒(1预约提醒,2就诊提醒)
//     * 1、当居民已有经医生确认过的下一次产检时间,则距离下一次产检前7天(保证居民可自行预约),发出产检预约提醒通知。点击该消息,进入预约页面
//     * 2、当居民已有经医生确认过的下一次产检时间,则距离下一次产检前1天,发出产检就诊提醒,提醒居民就诊。点击该消息,进入预约记录页面
//     */
//    public void sendPrenatalInspectorRemind(){
//        System.out.println("产检计划---running");
//        List<PrenatalInspectorPlan> planList = prenatalInspectorPlanDao.findWxTipList();
//        for (PrenatalInspectorPlan plan:planList){
//            try {
//                Patient patient = patientDao.findByCode(plan.getPatient());
//                String openId = patient.getOpenid();
//                String name = patient.getName();
//                String patientCode = patient.getCode();
//                if(StringUtils.isNotBlank(openId)){
//                    Long day = DateUtil.getDays(plan.getInspectionTime(),DateUtil.getNowDateShort());
//                    JSONObject json = new JSONObject();
//                    if(day==7){
//                        //产检提醒
//                        json.put("remark","产检内容以医生实际检查为准。点击进行预约");
//                        json.put("first",name+",您好!您和您的宝宝需要进行产检啦~请及时预约产检,如已预约,请忽略");
//                        if("1".equals(plan.getInspectionPhase())){
//                            if(StringUtils.isNotBlank(plan.getSignHospital())){
//                                json.put("url","wdyy/html/hospital-dept.html?openid="+openId+"&toUser="+patientCode+"&toName="+name+"&hospitalId="+plan.getSignHospital());
//                            }else {
//                                json.put("url","wdyy/html/appointment-register.html?openid="+openId+"&toUser="+patientCode+"&toName="+name+"&orderType=1");
//                            }
//                        }else {
//                            json.put("url","wdyy/html/appointment-register.html?openid="+openId+"&toUser="+patientCode+"&toName="+name);
//                        }
//
//                        json.put("keyword1","产检提醒");
//                        String keyword2 = DateUtil.getStringDateShort()+"\n产检内容:"+plan.getCheckItem();
//                        json.put("keyword2",keyword2);
//                        PushMsgTask.getInstance().sendWeixinMessage(accessTokenUtils.getAccessToken(), 18, openId, name, json);
//                    }else if(day==1){
//                        //产检就诊提醒
//                        json.put("remark","产检内容以医生实际检查为准。点击查看预约记录");
//                        json.put("first",name+",您好!您和您的宝宝即将进行产检啦~请按时就诊,如已就诊,请忽略");
//                        json.put("url","wdyy/html/my-appointment.html?openid="+openId+"&toUser="+patientCode+"&toName="+name);
//                        json.put("keyword1","产检就诊提醒");
//                        String keyword2 = DateUtil.getStringDateShort()+"\n产检内容:"+plan.getCheckItem();
//                        json.put("keyword2",keyword2);
//                        PushMsgTask.getInstance().sendWeixinMessage(accessTokenUtils.getAccessToken(), 18, openId, name, json);
//                    }
//                }
//            }catch (Exception e){
//                System.out.println("微信提醒发送失败");
//                e.printStackTrace();
//            }
//        }
//
//    }
//
//}

+ 14 - 14
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/common/util/ManagerUtilController.java

@ -332,18 +332,18 @@ public class ManagerUtilController extends BaseController {
     *  每天早上六点
     * @return
     */
    @RequestMapping(value = "/start_prenatal_inspector_job")
    @ResponseBody
    public String startPrenatalInspectorJob() {
        try {
            if (!quartzHelper.isExistJob("prenatal_inspector_job")) {
                quartzHelper.addJob(PrenatalInspectorJob.class, "0 0 6 * * ?", "prenatal_inspector_job", new HashMap<String, Object>());
                return write(200, "启动成功");
            } else {
                return write(200, "任务已存在");
            }
        } catch (Exception e) {
            return error(-1, "启动失败");
        }
    }
//    @RequestMapping(value = "/start_prenatal_inspector_job")
//    @ResponseBody
//    public String startPrenatalInspectorJob() {
//        try {
//            if (!quartzHelper.isExistJob("prenatal_inspector_job")) {
//                quartzHelper.addJob(PrenatalInspectorJob.class, "0 0 6 * * ?", "prenatal_inspector_job", new HashMap<String, Object>());
//                return write(200, "启动成功");
//            } else {
//                return write(200, "任务已存在");
//            }
//        } catch (Exception e) {
//            return error(-1, "启动失败");
//        }
//    }
}

Fichier diff supprimé car celui-ci est trop grand
+ 78 - 78
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/prenatalInspector/PrenatalInspectorContoller.java