Explorar el Código

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

LAPTOP-KB9HII50\70708 hace 1 año
padre
commit
f6d722a1a1

+ 3 - 0
business/base-service/src/main/java/com/yihu/jw/area/dao/BaseCityDao.java

@ -1,5 +1,6 @@
package com.yihu.jw.area.dao;
import com.tencentcloudapi.ecm.v20190719.models.City;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
@ -31,4 +32,6 @@ public interface BaseCityDao extends PagingAndSortingRepository<BaseCityDO, Inte
    @Query("select a from BaseCityDO a where a.province = ?1 order by id")
    Iterable<BaseCityDO> findByProvince(String province);
    @Query("select p from BaseCityDO p where p.name = ?1")
    BaseCityDO findByName(String name);
}

+ 4 - 0
business/base-service/src/main/java/com/yihu/jw/area/dao/BaseProvinceDao.java

@ -20,4 +20,8 @@ import org.springframework.data.repository.query.Param;
public interface BaseProvinceDao extends PagingAndSortingRepository<BaseProvinceDO, Integer>, JpaSpecificationExecutor<BaseProvinceDO> {
    @Query("select name from BaseProvinceDO where code =:code")
    String getNameByCode(@Param("code") String code);
    @Query("select p from BaseProvinceDO p where p.name = ?1")
    BaseProvinceDO findByName(String name);
}

+ 5 - 0
business/base-service/src/main/java/com/yihu/jw/area/dao/BaseStreetDao.java

@ -1,6 +1,7 @@
package com.yihu.jw.area.dao;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import com.yihu.jw.entity.base.area.BaseStreetDO;
@ -22,4 +23,8 @@ import java.util.List;
public interface BaseStreetDao extends PagingAndSortingRepository<BaseStreetDO, Integer>, JpaSpecificationExecutor<BaseStreetDO>  {
    List<BaseStreetDO> findByTown(String town);
    @Query("select p from BaseStreetDO p where p.name = ?1")
    BaseStreetDO findByName(String name);
}

+ 10 - 0
business/base-service/src/main/java/com/yihu/jw/area/dao/BaseTownDao.java

@ -30,4 +30,14 @@ public interface BaseTownDao extends PagingAndSortingRepository<BaseTownDO, Inte
    @Query("select a from BaseTownDO a where a.city = ?1 order by id")
    List<BaseTownDO> findByCityCode(String city);
    @Query("select a from BaseTownDO a where a.city = ?1 order by id")
    Iterable<BaseTownDO> findByCity(String province);
    @Query("select p from BaseTownDO p where p.name = ?1")
    BaseTownDO findByName(String name);
    @Query("select p from BaseTownDO p where p.name = ?1 and p.city = ?2")
    BaseTownDO findByNameAndCity(String name,String city);
}

+ 13 - 1
common/common-entity/sql/2023.sql

@ -226,9 +226,21 @@ ALTER TABLE `base`.`wlyy_door_order_item`
    ADD COLUMN `order_id` varchar(50) NULL COMMENT '订单id' AFTER `create_time`;
ALTER TABLE `base`.`base_service_package_item`
    ADD COLUMN `assign_status` varchar(10) NULL COMMENT '是否分配服务者【1是0否】' AFTER `template_code`,
ADD COLUMN `assign_status` varchar(10) NULL COMMENT '是否分配服务者【1是0否】' AFTER `template_code`,
ADD COLUMN `server_user_id` varchar(50) NULL COMMENT '服务者id' AFTER `assign_status`,
ADD COLUMN `server_user_name` varchar(50) NULL COMMENT '服务者name' AFTER `server_user_id`,
ADD COLUMN `server_user_type` varchar(10) NULL COMMENT '服务者类型' AFTER `server_user_name`;
ALTER TABLE `base`.`wlyy_door_service_order`
ADD COLUMN `sign_id` varchar(50) NULL COMMENT '签约id' AFTER `package_id`;
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000001', NULL, 'PROFESSIONAL_STATE', '0', '国家机关、党群组织、企业、事业单位负责人', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000002', NULL, 'PROFESSIONAL_STATE', '1', '专业技术人员', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000003', NULL, 'PROFESSIONAL_STATE', '2', '办事人员和有关人员', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000004', NULL, 'PROFESSIONAL_STATE', '3', '商业、服务业人员', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000005', NULL, 'PROFESSIONAL_STATE', '4', '农、林、牧、渔、水利业生产人员', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000006', NULL, 'PROFESSIONAL_STATE', '5', '生产、运输设备操作人员及有关人员', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000007', NULL, 'PROFESSIONAL_STATE', '6', '军人', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `base`.`wlyy_hospital_sys_dict`(`id`, `saas_id`, `dict_name`, `dict_code`, `dict_value`, `py_code`, `sort`, `hospital`, `create_time`, `create_user`, `create_user_name`, `update_time`, `update_user`, `update_user_name`, `img_url`, `model_name`) VALUES ('1000000008', NULL, 'PROFESSIONAL_STATE', '7', '不便分类的其他从业人员', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
===========================20231024上门服务结束====================================

+ 64 - 16
common/common-entity/src/main/java/com/yihu/jw/entity/door/WlyyDoorServiceOrderDO.java

@ -3,7 +3,6 @@ package com.yihu.jw.entity.door;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import com.yihu.jw.entity.followup.Followup;
import com.yihu.jw.entity.hospital.prescription.WlyyPrescriptionDO;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -19,14 +18,12 @@ import java.util.Map;
 * 上门服务工单实体
 *
 * @author Administrator on  2019年03月19日
 *
 */
@Entity
@Table(name = "wlyy_door_service_order")
public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    /**
     * 工单状态
     */
@ -38,7 +35,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
        accept(3, "已接单"),
        waitForServe(4, "待服务"),
        waitForCommnet(5, "待评价"),
        complete(6,"已完成");
        complete(6, "已完成");
        private Integer type;
        private String desc;
@ -64,7 +61,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public enum PayWay {
        wechat(1, "微信支付"),
        offLine(2,"线下支付");
        offLine(2, "线下支付");
        private Integer type;
        private String desc;
@ -90,7 +87,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public enum CancelType {
        dispatcher(1, "调度员取消"),
        patient(2,"居民取消"),
        patient(2, "居民取消"),
        doctor(3, "医生取消");
        private Integer type;
@ -117,7 +114,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public enum ExamPaperUploadWay {
        photo(1, "拍照补录"),
        interfaceData(2,"接口数据");
        interfaceData(2, "接口数据");
        private Integer type;
        private String desc;
@ -143,7 +140,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public enum DoctorSignWay {
        locate(1, "定位"),
        sacn(2,"扫码");
        sacn(2, "扫码");
        private Integer type;
        private String desc;
@ -169,7 +166,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public enum IsPatientConfirm {
        no(0, "未确认"),
        yes(1,"已确认");
        yes(1, "已确认");
        private Integer type;
        private String desc;
@ -195,7 +192,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public enum IsTransOtherOrg {
        no(0, "不转"),
        yes(1,"已转");
        yes(1, "已转");
        private Integer type;
        private String desc;
@ -218,6 +215,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    private String packageId;//服务包的id
    private String feeAfter;//服务后收费标识(1是0否)
    private String signId;//签约id
    /**
     * 服务编号
@ -594,6 +592,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public void setPrescriptionDOList(List<WlyyDoorPrescriptionDO> prescriptionDOList) {
        this.prescriptionDOList = prescriptionDOList;
    }
    @Transient
    public List<WlyyDoorPrescriptionDO> getAfterPrescriptionList() {
        return afterPrescriptionList;
@ -604,15 +603,11 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    }
    @Column(name = "number")
    public String getNumber() {
        return number;
    }
    public void setNumber(String number) {
        this.number = number;
    }
@ -621,6 +616,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getProxyPatient() {
        return proxyPatient;
    }
    public void setProxyPatient(String proxyPatient) {
        this.proxyPatient = proxyPatient;
    }
@ -629,6 +625,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getProxyPatientName() {
        return proxyPatientName;
    }
    public void setProxyPatientName(String proxyPatientName) {
        this.proxyPatientName = proxyPatientName;
    }
@ -637,6 +634,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getProxyPatientPhone() {
        return proxyPatientPhone;
    }
    public void setProxyPatientPhone(String proxyPatientPhone) {
        this.proxyPatientPhone = proxyPatientPhone;
    }
@ -645,6 +643,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPatient() {
        return patient;
    }
    public void setPatient(String patient) {
        this.patient = patient;
    }
@ -653,6 +652,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPatientName() {
        return patientName;
    }
    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }
@ -661,6 +661,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPatientPhone() {
        return patientPhone;
    }
    public void setPatientPhone(String patientPhone) {
        this.patientPhone = patientPhone;
    }
@ -669,6 +670,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPatientRelation() {
        return patientRelation;
    }
    public void setPatientRelation(String patientRelation) {
        this.patientRelation = patientRelation;
    }
@ -677,6 +679,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getDispatcher() {
        return dispatcher;
    }
    public void setDispatcher(String dispatcher) {
        this.dispatcher = dispatcher;
    }
@ -685,6 +688,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getDispatcherName() {
        return dispatcherName;
    }
    public void setDispatcherName(String dispatcherName) {
        this.dispatcherName = dispatcherName;
    }
@ -693,6 +697,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPatientExpectedServeTime() {
        return patientExpectedServeTime;
    }
    public void setPatientExpectedServeTime(String patientExpectedServeTime) {
        this.patientExpectedServeTime = patientExpectedServeTime;
    }
@ -701,6 +706,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getServeDesc() {
        return serveDesc;
    }
    public void setServeDesc(String serveDesc) {
        this.serveDesc = serveDesc;
    }
@ -709,6 +715,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getServeTown() {
        return serveTown;
    }
    public void setServeTown(String serveTown) {
        this.serveTown = serveTown;
    }
@ -717,6 +724,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getServeAddress() {
        return serveAddress;
    }
    public void setServeAddress(String serveAddress) {
        this.serveAddress = serveAddress;
    }
@ -725,6 +733,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getServeLat() {
        return serveLat;
    }
    public void setServeLat(String serveLat) {
        this.serveLat = serveLat;
    }
@ -733,6 +742,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getServeLon() {
        return serveLon;
    }
    public void setServeLon(String serveLon) {
        this.serveLon = serveLon;
    }
@ -741,6 +751,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
@ -749,6 +760,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getIsPatientConfirm() {
        return isPatientConfirm;
    }
    public void setIsPatientConfirm(Integer isPatientConfirm) {
        this.isPatientConfirm = isPatientConfirm;
    }
@ -757,6 +769,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Date getPatientConfirmTime() {
        return patientConfirmTime;
    }
    public void setPatientConfirmTime(Date patientConfirmTime) {
        this.patientConfirmTime = patientConfirmTime;
    }
@ -765,6 +778,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getIsTransOtherOrg() {
        return isTransOtherOrg;
    }
    public void setIsTransOtherOrg(Integer isTransOtherOrg) {
        this.isTransOtherOrg = isTransOtherOrg;
    }
@ -791,6 +805,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getTransedDispatcher() {
        return transedDispatcher;
    }
    public void setTransedDispatcher(String transedDispatcher) {
        this.transedDispatcher = transedDispatcher;
    }
@ -799,6 +814,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getTransedDispatcherName() {
        return transedDispatcherName;
    }
    public void setTransedDispatcherName(String transedDispatcherName) {
        this.transedDispatcherName = transedDispatcherName;
    }
@ -807,16 +823,17 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public BigDecimal getTotalFee() {
        return totalFee;
    }
    public void setTotalFee(BigDecimal totalFee) {
        this.totalFee = totalFee;
    }
    @Column(name = "doctor")
    public String getDoctor() {
        return doctor;
    }
    public void setDoctor(String doctor) {
        this.doctor = doctor;
    }
@ -825,6 +842,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getDoctorName() {
        return doctorName;
    }
    public void setDoctorName(String doctorName) {
        this.doctorName = doctorName;
    }
@ -833,6 +851,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getDoctorType() {
        return doctorType;
    }
    public void setDoctorType(String doctorType) {
        this.doctorType = doctorType;
    }
@ -841,6 +860,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getDoctorArrivingTime() {
        return doctorArrivingTime;
    }
    public void setDoctorArrivingTime(String doctorArrivingTime) {
        this.doctorArrivingTime = doctorArrivingTime;
    }
@ -849,6 +869,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Date getDoctorSignTime() {
        return doctorSignTime;
    }
    public void setDoctorSignTime(Date doctorSignTime) {
        this.doctorSignTime = doctorSignTime;
    }
@ -857,6 +878,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getDoctorSignWay() {
        return doctorSignWay;
    }
    public void setDoctorSignWay(Integer doctorSignWay) {
        this.doctorSignWay = doctorSignWay;
    }
@ -865,6 +887,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getDoctorSignLocation() {
        return doctorSignLocation;
    }
    public void setDoctorSignLocation(String doctorSignLocation) {
        this.doctorSignLocation = doctorSignLocation;
    }
@ -873,6 +896,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getDoctorSignImg() {
        return doctorSignImg;
    }
    public void setDoctorSignImg(String doctorSignImg) {
        this.doctorSignImg = doctorSignImg;
    }
@ -881,6 +905,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getPatientConfirmFinishWay() {
        return patientConfirmFinishWay;
    }
    public void setPatientConfirmFinishWay(Integer patientConfirmFinishWay) {
        this.patientConfirmFinishWay = patientConfirmFinishWay;
    }
@ -889,6 +914,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPatientConfirmFinishImg() {
        return patientConfirmFinishImg;
    }
    public void setPatientConfirmFinishImg(String patientConfirmFinishImg) {
        this.patientConfirmFinishImg = patientConfirmFinishImg;
    }
@ -897,6 +923,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Date getPatientConfirmFinishTime() {
        return patientConfirmFinishTime;
    }
    public void setPatientConfirmFinishTime(Date patientConfirmFinishTime) {
        this.patientConfirmFinishTime = patientConfirmFinishTime;
    }
@ -905,6 +932,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPresentImgs() {
        return presentImgs;
    }
    public void setPresentImgs(String presentImgs) {
        this.presentImgs = presentImgs;
    }
@ -913,6 +941,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getExamPaperStatus() {
        return examPaperStatus;
    }
    public void setExamPaperStatus(Integer examPaperStatus) {
        this.examPaperStatus = examPaperStatus;
    }
@ -921,6 +950,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getExamPaperImgs() {
        return examPaperImgs;
    }
    public void setExamPaperImgs(String examPaperImgs) {
        this.examPaperImgs = examPaperImgs;
    }
@ -929,6 +959,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Date getExamPaperUploadTime() {
        return examPaperUploadTime;
    }
    public void setExamPaperUploadTime(Date examPaperUploadTime) {
        this.examPaperUploadTime = examPaperUploadTime;
    }
@ -937,6 +968,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getExamPaperUploadWay() {
        return examPaperUploadWay;
    }
    public void setExamPaperUploadWay(Integer examPaperUploadWay) {
        this.examPaperUploadWay = examPaperUploadWay;
    }
@ -945,6 +977,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
@ -954,6 +987,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Date getCompleteTime() {
        return completeTime;
    }
    public void setCompleteTime(Date completeTime) {
        this.completeTime = completeTime;
    }
@ -962,6 +996,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getCancelType() {
        return cancelType;
    }
    public void setCancelType(Integer cancelType) {
        this.cancelType = cancelType;
    }
@ -970,6 +1005,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getCancelReason() {
        return cancelReason;
    }
    public void setCancelReason(String cancelReason) {
        this.cancelReason = cancelReason;
    }
@ -979,6 +1015,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Date getCancelTime() {
        return cancelTime;
    }
    public void setCancelTime(Date cancelTime) {
        this.cancelTime = cancelTime;
    }
@ -987,6 +1024,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Integer getPayWay() {
        return payWay;
    }
    public void setPayWay(Integer payWay) {
        this.payWay = payWay;
    }
@ -995,6 +1033,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public String getPayNumber() {
        return payNumber;
    }
    public void setPayNumber(String payNumber) {
        this.payNumber = payNumber;
    }
@ -1003,6 +1042,7 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public Date getPayTime() {
        return payTime;
    }
    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }
@ -1286,4 +1326,12 @@ public class WlyyDoorServiceOrderDO extends UuidIdentityEntityWithOperator {
    public void setFeeAfter(String feeAfter) {
        this.feeAfter = feeAfter;
    }
    public String getSignId() {
        return signId;
    }
    public void setSignId(String signId) {
        this.signId = signId;
    }
}

+ 100 - 0
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/district/controller/DistrictController.java

@ -0,0 +1,100 @@
package com.yihu.jw.hospital.module.district.controller;
import com.yihu.jw.hospital.module.district.service.DistrictService;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
/**
 * 省市区三级地址控制类
 *
 * @author George
 */
@Controller
@RequestMapping(value = "common", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public class DistrictController extends EnvelopRestEndpoint {
    @Autowired
    private DistrictService districtService;
    @Autowired
    HttpServletRequest request;
    /**
     * 获取人群分类
     */
    @RequestMapping(value = "getProfessionalDict", method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation("职业状态字典")
    public String getProfessionalDict() {
        try {
            // 获取医生下的患者
            return write(200, "获取成功!", "data", districtService.getProfessionalDict());
        } catch (Exception e) {
            return error(-1, "获取字典信息失败!");
        }
    }
    @RequestMapping(value = "getNationDict",method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation("获取民族信息列表")
    public String getNationDict(){
        try {
            // 获取医生下的患者
            return write(200, "获取成功!", "data",districtService.getNationDict());
        } catch (Exception e) {
            return error(-1, "获取字典信息失败!");
        }
    }
    /**
     * 省市一二三级查询接口
     *
     * @param type 1一级目录,2二级目录,3三级目录,4街道目录
     * @param code 省或市标识
     * @return
     */
    @RequestMapping(value = "district")
    @ResponseBody
    public String district(int type, String code) {
        try {
            List<?> list = districtService.findByType(type, code);
            return write(200, "查询成功!", "list", list);
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
        }
    }
    /**
     * 省市一二三级查询接口(包含权限控制)
     *
     * @param type 1一级目录,2二级目录,3三级目录,4街道目录
     * @param code 省或市标识
     * @return
     */
    @RequestMapping(value = "districtAuthority")
    @ResponseBody
    public String districtAuthority(int type, String code) {
        try {
            List<Map<String, String>> roleMap = (List<Map<String, String>>) request.getSession().getAttribute("roleMap");
            List<?> list = districtService.findByType(type, code, roleMap);
            return write(200, "查询成功!", "list", list);
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
        }
    }
}

+ 249 - 0
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/district/service/DistrictService.java

@ -0,0 +1,249 @@
package com.yihu.jw.hospital.module.district.service;
import com.yihu.jw.area.dao.BaseCityDao;
import com.yihu.jw.area.dao.BaseProvinceDao;
import com.yihu.jw.area.dao.BaseStreetDao;
import com.yihu.jw.area.dao.BaseTownDao;
import com.yihu.jw.entity.base.area.BaseCityDO;
import com.yihu.jw.entity.base.area.BaseProvinceDO;
import com.yihu.jw.entity.base.area.BaseStreetDO;
import com.yihu.jw.entity.base.area.BaseTownDO;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Sort;
import org.springframework.data.domain.Sort.Direction;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
/**
 * 省市区三级业务处理类
 *
 * @author George
 */
@Service
public class DistrictService extends EnvelopRestEndpoint {
    @Autowired
    private BaseProvinceDao provinceDao;
    @Autowired
    private BaseCityDao cityDao;
    @Autowired
    private BaseTownDao townDao;
    @Autowired
    private BaseStreetDao streetDao;
    @Autowired
    JdbcTemplate jdbcTemplate;
    /**
     * 查询省市区三级目录
     *
     * @param type 1一级目录,2二级目录,3三级目录,4街道目录
     * @param code 目录标识
     * @return
     */
    public List<?> findByType(int type, String code) {
        switch (type) {
            case 1:
                return findProvince();
            case 2:
                return findCity(code);
            case 3:
                return findTown(code);
            case 4:
                return findStreet(code);
        }
        return null;
    }
    /**
     * 查询省市区三级目录
     *
     * @param type 1一级目录,2二级目录,3三级目录,4街道目录
     * @param code 目录标识
     * @return
     */
    public List<?> findByType(int type, String code, List<Map<String, String>> roleMap) {
        switch (type) {
            case 1:
                return findProvince();
            case 2:
                return findCity(code);
            case 3:
                return findTown(code, roleMap);
            case 4:
                return findStreet(code);
        }
        return null;
    }
    /**
     * 查询所有的省份信息
     *
     * @return
     */
    public List<BaseProvinceDO> findProvince() {
        List<BaseProvinceDO> list = new ArrayList<BaseProvinceDO>();
        Iterable<BaseProvinceDO> iterable = provinceDao.findAll(new Sort(Direction.ASC, "id"));
        if (iterable != null) {
            Iterator<BaseProvinceDO> it = iterable.iterator();
            while (it != null && it.hasNext()) {
                list.add(it.next());
            }
        }
        return list;
    }
    /**
     * 查询省份下的城市信息
     *
     * @param province 省编码
     * @return
     */
    public List<BaseCityDO> findCity(String province) {
        List<BaseCityDO> list = new ArrayList<BaseCityDO>();
        Iterable<BaseCityDO> iterable = cityDao.findByProvince(province);
        if (iterable != null) {
            Iterator<BaseCityDO> it = iterable.iterator();
            while (it != null && it.hasNext()) {
                list.add(it.next());
            }
        }
        return list;
    }
    /**
     * 查询城市下的区县信息
     *
     * @param city 城市编码
     * @return
     */
    public List<BaseTownDO> findTown(String city) {
        List<BaseTownDO> list = new ArrayList<BaseTownDO>();
        Iterable<BaseTownDO> iterable = townDao.findByCity(city);
        if (iterable != null) {
            Iterator<BaseTownDO> it = iterable.iterator();
            while (it != null && it.hasNext()) {
                list.add(it.next());
            }
        }
        return list;
    }
    /**
     * 查询城市下的区县信息(包含权限控制)
     *
     * @param city 城市编码
     * @return
     */
    public List<BaseTownDO> findTown(String city, List<Map<String, String>> roleMap) {
        List<BaseTownDO> list = new ArrayList<BaseTownDO>();
        Iterable<BaseTownDO> iterable = townDao.findByCity(city);
        if (iterable != null) {
            String areaString = "";
            Boolean cityFlag = false;
            for (Map<String, String> map : roleMap) {
                String code = map.get("code");
                if ("350200".equals(code)) {
                    cityFlag = true;
                    break;
                } else if (code.length() == 6) {
                    areaString += map.get("areas") + ",";
                }
            }
            Iterator<BaseTownDO> it = iterable.iterator();
            while (it != null && it.hasNext()) {
                BaseTownDO town = it.next();
                String townCode = town.getCode();
                if (cityFlag) {
                    list.add(town);
                } else {
                    if (areaString.indexOf(townCode) >= 0) {
                        list.add(town);
                    }
                }
            }
        }
        return list;
    }
    /**
     * 查询城市下的街道信息
     *
     * @param town 区县编码
     * @return
     */
    public List<BaseStreetDO> findStreet(String town) {
        List<BaseStreetDO> list = new ArrayList<BaseStreetDO>();
        Iterable<BaseStreetDO> iterable = streetDao.findByTown(town);
        if (iterable != null) {
            Iterator<BaseStreetDO> it = iterable.iterator();
            while (it != null && it.hasNext()) {
                list.add(it.next());
            }
        }
        return list;
    }
//    /**
//     * 查询城市下的街道信息
//     *
//     * @param street 街道编码
//     * @return
//     */
//    public List<Country> findCountry(String street) {
//        List<Country> list = new ArrayList<Country>();
//        Iterable<Country> iterable = countryDao.findByStreet(street);
//        if (iterable != null) {
//            Iterator<Country> it = iterable.iterator();
//            while (it != null && it.hasNext()) {
//                list.add(it.next());
//            }
//        }
//        return list;
//    }
    public BaseProvinceDO findProvinceByName(String name) {
        return provinceDao.findByName(name);
    }
    public BaseCityDO findCityByName(String name) {
        return cityDao.findByName(name);
    }
    public BaseTownDO finTownByName(String name) {
        return townDao.findByName(name);
    }
    public BaseTownDO finTownByNameAndCity(String name, String city) {
        return townDao.findByNameAndCity(name, city);
    }
    public BaseStreetDO findStreetByName(String name) {
        return streetDao.findByName(name);
    }
    public List<Map<String, Object>> getProfessionalDict() {
        String sql = "SELECT t.dict_code 'code',t.dict_value `value` FROM `base`.`wlyy_hospital_sys_dict`  t WHERE t.dict_name='PROFESSIONAL_STATE'";
        List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
        return list;
    }
    public List<Map<String, Object>> getNationDict() {
        String sql = "SELECT t.NATION_CODE,t.NATION_NAME FROM zy_nation_dict t ";
        List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
        return list;
    }
}

+ 0 - 1
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/door/controller/DoorOrderController.java

@ -1027,7 +1027,6 @@ public class DoorOrderController extends EnvelopRestEndpoint {
    @GetMapping(value = "orderIsCancel")
    @ApiOperation(value = "查看消息时判断工单是否取消")
    public Envelop orderIsCancel(
            @ApiParam(name = "messageId", value = "消息id", required = true) @RequestParam String messageId) {
        try {

+ 26 - 0
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/door/dao/ServiceItemPlanDao.java

@ -0,0 +1,26 @@
package com.yihu.jw.hospital.module.door.dao;
import com.yihu.jw.entity.base.servicePackage.ServiceItemPlanDO;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import java.util.Date;
import java.util.List;
/**
 * Created by yeshijie on 2023/10/28.
 */
public interface ServiceItemPlanDao extends JpaRepository<ServiceItemPlanDO, String>, JpaSpecificationExecutor<ServiceItemPlanDO> {
    @Query("from ServiceItemPlanDO w where w.signId =?1 ")
    List<ServiceItemPlanDO> findBySignId(String signId);
    @Query(value = "select * from base_service_item_plan w where w.sign_id =?1 and w.service_item_id=?2 order by w.plan_time desc", nativeQuery = true)
    List<ServiceItemPlanDO> findBySignIdAndServiceItemId(String signId, String serviceItemId);
    @Modifying
    @Query(value ="UPDATE  base_service_item_plan SET status='1' ,complete_time=?3 WHERE status='0' AND sign_id=?1 AND service_pack_id=?2 ORDER BY plan_time DESC LIMIT 1", nativeQuery = true)
    void updateState(String signId, String packageId, Date date);
}

+ 12 - 2
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/door/service/DoorOrderService.java

@ -132,6 +132,8 @@ public class DoorOrderService {
    @Autowired
    BasePatientDao basePatientDao;
    @Autowired
    ServiceItemPlanDao serviceItemPlanDao;
//    @Autowired
//    private SignFamilyDao signFamilyDao;
@ -580,7 +582,7 @@ public class DoorOrderService {
            return null;
        }
        doorServiceOrderDao.save(doorServiceOrder);
        //删除407的消息
        systemMessageDao.orderMessageDel(doorServiceOrder.getDoctor(), orderId);
        if (doorServiceOrder.getType() == null || doorServiceOrder.getType() != 3) {
@ -641,7 +643,7 @@ public class DoorOrderService {
            logger.error(e.getMessage());
        }
        //  待接单消息设为已操作, 434 医生接单-- 王五接受了服务工单12345678
        //  待接单消息设为已操作, 434 医生接单-- 王五接受了服务工单12345678 ----407在上门已经删除了,这快代码其实没啥用
        List<SystemMessageDO> messages = systemMessageDao.queryByRelationCodeAndTypeIn(orderId, new String[]{"403", "407"});
        if (CollectionUtils.isEmpty(messages)) {
            logger.error("当前工单没有医生待接单消息!orderId:" + orderId);
@ -1343,6 +1345,14 @@ public class DoorOrderService {
//        BigDecimal cashPrice = this.calculateCash(String.valueOf(map.get("cashPrice")), orderId, level, times);
//        one.setTotalFee(cashPrice);
        doorServiceOrderDao.save(one);
        //
        String signId = one.getSignId();//签约id
        String packageId = one.getPackageId();//服务包id
        Date date = new Date();
        //更新计划状态为完成
        serviceItemPlanDao.updateState(signId,packageId,date);
        WlyyDoorServiceOrderDO doorServiceOrderDO = this.getDoorServiceOrderById(orderId, level);
        // 发送微信通知  待付款

+ 34 - 31
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/door/service/WlyyDoorServiceOrderService.java

@ -211,15 +211,14 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
            return result;
        }
        //资质处理 .医生填写资质信息后,生成一个已通过审核的资质
        try {
            if (jsonObjectParam.get("doorServiceApplication") != null) {
                //创建审核
                doorServiceApplicationService.create("2", jsonObjectParam.get("doorServiceApplication").toString(), doctorCode);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        /**
         * 资质处理 .医生填写资质信息后,生成一个已通过审核的资质
         * 云照护没用资质审核模块
         */
//        if (jsonObjectParam.get("doorServiceApplication") != null) {
//            //创建审核
//            doorServiceApplicationService.create("2", jsonObjectParam.get("doorServiceApplication").toString(), doctorCode);
//        }
        WlyyDoorServiceOrderDO orderDO = null;
@ -290,8 +289,8 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
            orderDO.setUpdateUser(orderDO.getProxyPatient());
            orderDO.setUpdateUserName(orderDO.getProxyPatientName());
        }
        orderDO.setStatus(2);
        orderDO.setType(3);
        orderDO.setStatus(2);//2-待(医生)接单
        orderDO.setType(3);//3医生代预约
        orderDO.setDispatcherResponseTime(new Date());
        this.save(orderDO);
        result.put("orderId", orderDO.getId());
@ -300,21 +299,24 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
            return result;
        }
        if ("1".equals(orderDO.getShortcutType())) {
//            //快捷的当前医生直接接单
//            try {
//                Doctor doctor = doctorDao.findByCode(orderDO.getDoctor());
//                Hospital hospital = hospitalDao.findByCode(doctor.getHospital());
//                doorOrderService.acceptOrder1(orderDO.getId(), doctor.getJob(), doctor.getJobName(), hospital.getLevel());
//            } catch (Exception e) {
//                e.printStackTrace();
//            }
        } else {
            // 给服务医生发接单消息
            this.createMessage(orderDO.getId(), orderDO.getProxyPatient(), orderDO.getDoctor(), 407, "服务工单待接单", "您有新的服务工单,请前往处理");
            //发送智能助手消息
            sendWeixinMessage(4, orderDO.getDoctor(), orderDO.getPatient());
        }
//        if ("1".equals(orderDO.getShortcutType())) {
////            //快捷的当前医生直接接单
////            try {
////                Doctor doctor = doctorDao.findByCode(orderDO.getDoctor());
////                Hospital hospital = hospitalDao.findByCode(doctor.getHospital());
////                doorOrderService.acceptOrder1(orderDO.getId(), doctor.getJob(), doctor.getJobName(), hospital.getLevel());
////            } catch (Exception e) {
////                e.printStackTrace();
////            }
//        } else {
//            // 给服务医生发接单消息
//            this.createMessage(orderDO.getId(), orderDO.getProxyPatient(), orderDO.getDoctor(), 407, "服务工单待接单", "您有新的服务工单,请前往处理");
//            //发送智能助手消息
//            sendWeixinMessage(4, orderDO.getDoctor(), orderDO.getPatient());
//        }
        //待预约走调度平台的模式
        result = submitDoorOrderAndSendMsg(orderDO, "5", jsonObjectParam);
        result.put(ResponseContant.resultFlag, ResponseContant.success);
        return result;
@ -493,7 +495,8 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
                    }
                    wlyyDoorFeeDetailService.delete(idStrSet.toArray());
                    totalFee = orderDO.getTotalFee().subtract(totalSubFee);
//                    orderDO.setTotalFee(totalFee);
                    orderDO.setTotalFee(totalFee);
                    wlyyDoorServiceOrderDao.save(orderDO);//保存总费用
                }
            }
            wlyyDoorDoctorService.delete(idStrSet.toArray());
@ -641,9 +644,9 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
                "	1 = 1 \n" +
                "	AND t.`code` = 'dispatcher' \n";
        if (StringUtils.isNotBlank(hospitalCode)) {
            sql += " AND a.org_code = '" + hospitalCode + "' \n";
        }
//        if (StringUtils.isNotBlank(hospitalCode)) {
//            sql += " AND a.org_code = '" + hospitalCode + "' \n";
//        }
        List<Map<String, Object>> dispatcherInfoList = jdbcTemplate.queryForList(sql);
        return dispatcherInfoList;
@ -2669,7 +2672,7 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
     */
    public JSONObject orderIsCancel(String messageId) {
        JSONObject result = new JSONObject();
        String sql = "SELECT m.* FROM `wlyy_message` m LEFT JOIN wlyy_door_service_order o on m.relation_code=o.id " +
        String sql = "SELECT m.* FROM `base_system_message` m LEFT JOIN wlyy_door_service_order o on m.relation_code=o.id " +
                "where  o.status = -1 and m.id='" + messageId + "'";
        List<Map<String, Object>> messageList = jdbcTemplate.queryForList(sql);
        if (messageList.size() == 0) {