fhx
8 天以前 a39ee53a8ee5754642ba4c670ee15fc3b9e7a746
Merge remote-tracking branch 'origin/fhx-base-预约整合0808' into master-jiayan-test
2个文件已修改
6个文件已添加
374 ■■■■■ 已修改文件
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentAutoMateDto.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentCrmSelfDto.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentDto.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentV2Dto.java 158 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/feign/service/platform/SPhipAppointmentService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/feign/service/platform/appointment/SPhipAppAutoMateService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/feign/service/platform/appointment/SPhipCrmSelfService.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/feign/service/platform/appointment/SPhipCrmSelfV2Service.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentAutoMateDto.java
New file
@@ -0,0 +1,64 @@
package com.hz.his.dto.appointment;
import lombok.Data;
/**
 * 预约预约dto
 * @USER: fhx
 * @DATE: 2024/3/27
 **/
@Data
public class AppointmentAutoMateDto {
    /** 操作人类型(OperatorConstants) */
    private Integer opType;
    /** 操作人标识 */
    private String opId;
    /** 操作人角色id(EmployeeRole) */
    private String opRoleId;
    /** 用户id */
    private String userId;
    /** 门店id */
    private String shopId;
    /** 医生id */
    private String doctorId;
    /** 预约id */
    private String aptId;
    /** 就诊类型 */
    private String visitType;
    /** 预约类型 */
    private Integer appType;
    /** 是否转疗 */
    private Integer isSwitch;
    /** 是否MIC同意 */
    private Integer isMicApprove;
    /** 是否特殊客户 */
    private Integer specialUser;
    /** 预约项目json字符串 */
    private String projectJson;
    /** 开始日期(yyyy-MM-dd) */
    private String arriveDate;
    /** 开始时间 */
    private String startTime;
    /** 结束时间 */
    private String endTime;
    /** 沟通时长(分) */
    private Integer comDuration;
    /** 敷麻时长(分) */
    private Integer palsyDuration;
    /** 等待时长(分) */
    private Integer waitDuration;
    /** 实际面诊时长(分) */
    private Integer realMzTime;
    /** 是否当天分隔上下午匹配(默认false) */
    private boolean isDaySpace = false;
    /** 推荐匹配数量(默认2) */
    private Integer mateNum;
}
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentCrmSelfDto.java
New file
@@ -0,0 +1,24 @@
package com.hz.his.dto.appointment;
import lombok.Data;
/**
 * CRM自助预约dto
 * @USER: fhx
 * @DATE: 2024/4/7
 **/
@Data
public class AppointmentCrmSelfDto {
    /** 用户标识 */
    private String userId;
    /** 门店标识 */
    private String shopId;
    /** 医生标识 */
    private String doctorId;
    /** 预约时间(yyyy-MM-dd) */
    private String dateTime;
    /** 预约项目json */
    private String projectJson;
}
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentDto.java
@@ -33,4 +33,6 @@
    private List preOrderItems;
    //spa预约标识
    private String id;
    //SPU标识
    private String spuId;
}
phis-feign/src/main/java/com/hz/his/dto/appointment/AppointmentV2Dto.java
New file
@@ -0,0 +1,158 @@
package com.hz.his.dto.appointment;
import lombok.Data;
/**
 * 预约V2版dto
 * @USER: fhx
 * @DATE: 2024/3/27
 **/
@Data
public class AppointmentV2Dto {
    /** 操作人类型(OperatorConstants) */
    private Integer opType;
    /** 操作人标识 */
    private String opId;
    /** 操作人角色id(EmployeeRole) */
    private String opRoleId;
    /** 预约id */
    private String id;
    private String aptId;
    /** 用户id */
    private String userId;
    /** 门店id */
    private String shopId;
    /** 医生id */
    private String doctorId;
    /** 护士id */
    private String nurseId;
    /** 预约顾问id */
    private String corpUserId;
    /** 活动日期id */
    private String activityDayId;
    /** 面诊房间id */
    private String comRoomId;
    /** 治疗房间id */
    private String treatRoomId;
    /** 添加模式(Appointment) */
    private Integer addMode;
    /** 就诊类型 */
    private String visitType;
    /** 预约类型 */
    private Integer appType;
    /** 是否转疗 */
    private Integer isSwitch;
    /** 是否MIC同意 */
    private Integer isMicApprove;
    /** 是否特殊客户 */
    private Integer specialUser;
    /** 是否服务医生安排 */
    private Integer obeyTime;
    /** 是否服务时间安排 */
    private Integer obeyDoctor;
    /** 是否发送短信(0:勾选,1:不选) */
    private Integer isSendMsg;
    /** 是否发送到店提醒短信提醒(0:否,1:是) */
    private Integer isArriveSendMsg;
    /** 匹配时间类型:1正常;2开始时间减5分钟;3结束时间减5分钟 */
    private Integer handleNum;
    /** 是否到店 */
    private Integer isArrive;
    /** 项目id(多个逗号分隔) */
    private String projectIds;
    /** 项目名称(多个逗号分隔) */
    private String projectNames;
    /** 图片(多个逗号分隔) */
    private String imgUrls;
    /** 备注 */
    private String remark;
    /** 餐食备注 */
    private String mealsRemark;
    /** 预约冲突原因 */
    private String conflictReason;
    /** 预约项目json字符串 */
    private String projectJson;
    /** 治疗时间json字符串 */
    private String zlTimeJson;
    /** 设备时间json字符串 */
    private String deviceTimeJson;
    /** 生日日期(yyyy-MM-dd) */
    private String birthday;
    /** 开始日期(yyyy-MM-dd) */
    private String arriveDate;
    /** 开始时间 */
    private String startTime;
    /** 结束时间 */
    private String endTime;
    /** 实际面诊时长(分) */
    private Integer realMzTime;
    /** 等待时长(分) */
    private Integer waitTime;
    private Integer waitDuration;
    /** 沟通时长(分) */
    private Integer gtTime;
    private Integer comDuration;
    /** 面诊时长(分) */
    private Integer mzTime;
    private Integer docComDuration;
    /** 麻敷时长(分) */
    private Integer mfTime;
    private Integer palsyDuration;
    /** 术前时长(分) */
    private Integer sqTime;
    private Integer readyDuration;
    /** 治疗时长(分) */
    private Integer zlTime;
    private Integer treatDuration;
    /** 医生治疗时长(分) */
    private Integer doctorZlTime;
    /** 真实沟通时长 */
    private Integer realComDuration;
    /** 真实面诊时长 */
    private Integer realDocComDuration;
    /** 真实预约时长 */
    private Integer realDuration;
    /** 真实手续时长 */
    private Integer realProDuration;
    /** 真实治疗时长 */
    private Integer realTreatDuration;
    /** 真实准备时长 */
    private Integer realReadyDuration;
    /** 真实等待时长 */
    private Integer realWaitDuration;
    /** 真实麻敷时长 */
    private Integer realPalsyDuration;
    /** 取消预约凭证文件路径 */
    private String annexUrl;
//    /** 编辑预约 - 是否日期有变化(0否1是) */
//    private Integer isDayChange;
//    /** 编辑预约 - 是否项目有变化(0否1是) */
//    private Integer isProjectChange;
//    /** 编辑预约 - 是否医生有变化(0否1是) */
//    private Integer isChangeDoctor;
//    /** 编辑预约 - 是否时间有变化(0否1是) */
//    private Integer isChangeTime;
    /** 后台操作预约:时长字段赋值统一字段 */
    public void timeFill(){
        this.mzTime = this.docComDuration;
        this.gtTime = this.comDuration;
        this.mfTime = this.palsyDuration;
        this.sqTime = this.readyDuration;
        this.waitTime = this.waitDuration;
        this.zlTime = treatDuration;
    }
}
phis-feign/src/main/java/com/hz/his/feign/service/platform/SPhipAppointmentService.java
@@ -2,6 +2,7 @@
import com.hx.resultTool.Result;
import com.hz.his.dto.appointment.AppointmentCrmAddDto;
import com.hz.his.dto.appointment.AppointmentV2Dto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -16,4 +17,17 @@
    /** CRM预约 */
    @PostMapping("/appointment/crm/app")
    Result crmApp(@RequestBody AppointmentCrmAddDto dto);
    /** 新增预约 */
    @PostMapping("/appointment/add")
    Result add(@RequestBody AppointmentV2Dto dto);
    /** 编辑预约 */
    @PostMapping("/appointment/edit")
    Result edit(@RequestBody AppointmentV2Dto dto);
    /** 取消预约 */
    @PostMapping("/appointment/cancel")
    Result cancel(@RequestBody AppointmentV2Dto dto);
}
phis-feign/src/main/java/com/hz/his/feign/service/platform/appointment/SPhipAppAutoMateService.java
New file
@@ -0,0 +1,20 @@
package com.hz.his.feign.service.platform.appointment;
import com.hx.resultTool.Result;
import com.hz.his.dto.appointment.AppointmentAutoMateDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
 * 预约自动匹配service
 * @USER: fhx
 * @DATE: 2023/7/6
 **/
@FeignClient(name="phi-platform-service",path = "/phip",contextId = "phip-appointment-auto-mate")
public interface SPhipAppAutoMateService {
    /** 自动匹配 - 混合项目 */
    @PostMapping("/appointment/autoMate/addApply/blend")
    Result addApplyBland(@RequestBody AppointmentAutoMateDto dto);
}
phis-feign/src/main/java/com/hz/his/feign/service/platform/appointment/SPhipCrmSelfService.java
New file
@@ -0,0 +1,41 @@
package com.hz.his.feign.service.platform.appointment;
import com.hx.resultTool.Result;
import com.hz.his.dto.appointment.AppointmentAutoMateDto;
import com.hz.his.dto.user.UserDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
 * 预约自动匹配service
 * @USER: fhx
 * @DATE: 2023/7/6
 **/
@FeignClient(name="phi-platform-service",path = "/phip",contextId = "phip-appointment-crm-self")
public interface SPhipCrmSelfService {
    /** 预约页面数据 */
    @PostMapping("/appointment/crm/self/page/data")
    Result pageData(@RequestBody UserDto dto);
    /** CRM首页预约列表 */
    @PostMapping("/appointment/crm/self/index/app/list")
    Result indexAppList(@RequestBody UserDto dto);
    /** 用户预约列表 */
    @PostMapping("/appointment/crm/self/list")
    Result selfList(@RequestBody UserDto dto);
    /** 用户自助预约项目 */
    @PostMapping("/appointment/crm/self/project/list")
    Result projectList(@RequestBody UserDto dto);
    /** 自助预约时间 */
    @PostMapping("/appointment/crm/self/getTime")
    Result getTime(@RequestBody AppointmentAutoMateDto dto);
    /** 获取一周内医生排班 */
    @PostMapping("/appointment/crm/self/get/doctor/time")
    Result getDoctorTime(@RequestBody AppointmentAutoMateDto dto);
}
phis-feign/src/main/java/com/hz/his/feign/service/platform/appointment/SPhipCrmSelfV2Service.java
New file
@@ -0,0 +1,51 @@
package com.hz.his.feign.service.platform.appointment;
import com.hx.resultTool.Result;
import com.hz.his.dto.appointment.AppointmentAutoMateDto;
import com.hz.his.dto.appointment.AppointmentDto;
import com.hz.his.dto.appointment.AppointmentV2Dto;
import com.hz.his.dto.user.UserDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
 * 预约自动匹配service
 * @USER: fhx
 * @DATE: 2023/7/6
 **/
@FeignClient(name="phi-platform-service",path = "/phip",contextId = "phip-appointment-crm-self-v2")
public interface SPhipCrmSelfV2Service {
    /** 预约门店 */
    @PostMapping("/appointment/crm/self/v2/shop/list")
    Result shopList();
    /** 医生排班 */
    @PostMapping("/appointment/crm/self/v2/doctor/time/list")
    Result doctorTimeList(@RequestBody AppointmentAutoMateDto dto);
    /** 预约项目SPU */
    @PostMapping("/appointment/crm/self/v2/spu/list")
    Result spuList();
    /** 预约项目 */
    @PostMapping("/appointment/crm/self/v2/project/list")
    Result projectList(@RequestBody AppointmentDto dto);
    /** 用户预约列表 */
    @PostMapping("/appointment/crm/self/v2/list")
    Result list(@RequestBody UserDto dto);
    /** 自助预约匹配时间 */
    @PostMapping("/appointment/crm/self/v2/mate/time")
    Result mateTime(@RequestBody AppointmentAutoMateDto dto);
    /** 新增预约 */
    @PostMapping("/appointment/crm/self/v2/add")
    Result add(@RequestBody AppointmentV2Dto dto);
    /** 取消预约 */
    @PostMapping("/appointment/crm/self/v2/cancel")
    Result cancel(@RequestBody AppointmentV2Dto dto);
}