Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
M
medical-server
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
aiming-medical
medical-server
Commits
34794915
提交
34794915
authored
10月 10, 2023
作者:
zhu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1.增加测试微信小程序配置
2.第三方电话回调接口(50%) 3.接口逻辑丰富
上级
5fb169d8
隐藏空白字符变更
内嵌
并排
正在显示
33 个修改的文件
包含
633 行增加
和
117 行删除
+633
-117
build.gradle
build.gradle
+5
-5
SaTokenConfig.java
...in/java/com/xwd/hospital/server/config/SaTokenConfig.java
+2
-0
MedicalQualifications.java
...com/xwd/hospital/server/domain/MedicalQualifications.java
+14
-0
CallDto.java
src/main/java/com/xwd/hospital/server/dto/CallDto.java
+51
-0
MedicalQualificationDto.java
.../com/xwd/hospital/server/dto/MedicalQualificationDto.java
+4
-0
ReportDto.java
src/main/java/com/xwd/hospital/server/dto/ReportDto.java
+63
-0
SysSettingEnum.java
...in/java/com/xwd/hospital/server/enums/SysSettingEnum.java
+27
-0
DoctorInfoMapper.java
.../com/xwd/hospital/server/repository/DoctorInfoMapper.java
+1
-1
MedicalQualificationsPictureMapper.java
...server/repository/MedicalQualificationsPictureMapper.java
+1
-1
MedicalReportController.java
...com/xwd/hospital/server/rest/MedicalReportController.java
+12
-0
OrderController.java
...in/java/com/xwd/hospital/server/rest/OrderController.java
+1
-1
SmsController.java
...main/java/com/xwd/hospital/server/rest/SmsController.java
+36
-5
UserController.java
...ain/java/com/xwd/hospital/server/rest/UserController.java
+15
-1
BindNumberReq.java
.../xwd/hospital/server/rest/thirdPartReq/BindNumberReq.java
+3
-4
UnbindNumberReq.java
...wd/hospital/server/rest/thirdPartReq/UnbindNumberReq.java
+10
-0
CallApiService.java
.../java/com/xwd/hospital/server/service/CallApiService.java
+2
-1
MedicalReportService.java
...com/xwd/hospital/server/service/MedicalReportService.java
+3
-0
OrderService.java
...in/java/com/xwd/hospital/server/service/OrderService.java
+1
-1
SmsService.java
...main/java/com/xwd/hospital/server/service/SmsService.java
+9
-1
UserService.java
...ain/java/com/xwd/hospital/server/service/UserService.java
+2
-0
DepartmentInfoServiceImpl.java
...spital/server/service/impl/DepartmentInfoServiceImpl.java
+1
-1
MedicalQualificationsServiceImpl.java
...server/service/impl/MedicalQualificationsServiceImpl.java
+52
-4
MedicalReportServiceImpl.java
...ospital/server/service/impl/MedicalReportServiceImpl.java
+33
-0
OrderServiceImpl.java
...om/xwd/hospital/server/service/impl/OrderServiceImpl.java
+52
-10
PatientPrescriptionInfoServiceImpl.java
...rver/service/impl/PatientPrescriptionInfoServiceImpl.java
+1
-1
SmsServiceImpl.java
.../com/xwd/hospital/server/service/impl/SmsServiceImpl.java
+106
-11
UserServiceImpl.java
...com/xwd/hospital/server/service/impl/UserServiceImpl.java
+42
-2
CallUtil.java
src/main/java/com/xwd/hospital/server/util/CallUtil.java
+41
-51
application-dev.yml
src/main/resources/application-dev.yml
+23
-11
application.yml
src/main/resources/application.yml
+1
-1
DoctorInfoMapper.xml
src/main/resources/mappers/DoctorInfoMapper.xml
+8
-2
MedicalQualificationsPictureMapper.xml
.../resources/mappers/MedicalQualificationsPictureMapper.xml
+7
-0
MedicalQualificationsBaseMapper.xml
...esources/mappers/base/MedicalQualificationsBaseMapper.xml
+4
-2
没有找到文件。
build.gradle
浏览文件 @
34794915
...
@@ -102,12 +102,12 @@ dependencyManagement {
...
@@ -102,12 +102,12 @@ dependencyManagement {
flyway
{
flyway
{
driver
=
'com.mysql.cj.jdbc.Driver'
driver
=
'com.mysql.cj.jdbc.Driver'
// url = 'jdbc:mysql://localhost:3306/aiming-hospital?serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&useSSL=false'
url
=
'jdbc:mysql://localhost:3306/aiming-hospital?serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&useSSL=false'
// user = 'root'
// password = '123456'
url
=
'jdbc:mysql://175.24.172.212:3306/hospital-server?serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&useSSL=false'
user
=
'root'
user
=
'root'
password
=
'jgx2vgk0p!15'
password
=
'123456'
// url = 'jdbc:mysql://175.24.172.212:3306/hospital-server?serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&useSSL=false'
// user = 'root'
// password = 'jgx2vgk0p!15'
}
}
tasks
.
named
(
'test'
)
{
tasks
.
named
(
'test'
)
{
...
...
src/main/java/com/xwd/hospital/server/config/SaTokenConfig.java
浏览文件 @
34794915
...
@@ -40,6 +40,8 @@ public class SaTokenConfig implements WebMvcConfigurer {
...
@@ -40,6 +40,8 @@ public class SaTokenConfig implements WebMvcConfigurer {
.
excludePathPatterns
(
"/v1/system/user/register"
)
.
excludePathPatterns
(
"/v1/system/user/register"
)
.
excludePathPatterns
(
"/v1/system/user/miniAppLogin"
)
.
excludePathPatterns
(
"/v1/system/user/miniAppLogin"
)
.
excludePathPatterns
(
"/v1/system/user/miniAppRegister"
)
.
excludePathPatterns
(
"/v1/system/user/miniAppRegister"
)
.
excludePathPatterns
(
"/v1/system/user/wxUpdate"
)
.
excludePathPatterns
(
"/v1/system/user/getPhoneNumber"
)
.
excludePathPatterns
(
"/v1/system/sms/sendSms"
)
.
excludePathPatterns
(
"/v1/system/sms/sendSms"
)
// swagger 放行
// swagger 放行
.
excludePathPatterns
(
"/webjars/**"
)
.
excludePathPatterns
(
"/webjars/**"
)
...
...
src/main/java/com/xwd/hospital/server/domain/MedicalQualifications.java
浏览文件 @
34794915
...
@@ -116,6 +116,20 @@ public class MedicalQualifications extends BaseDomain {
...
@@ -116,6 +116,20 @@ public class MedicalQualifications extends BaseDomain {
@Schema
(
description
=
"更新时间"
,
nullable
=
false
)
@Schema
(
description
=
"更新时间"
,
nullable
=
false
)
private
java
.
util
.
Date
updateTime
;
private
java
.
util
.
Date
updateTime
;
/**
* 资质图片
*/
@Schema
(
description
=
"资质图片"
)
@TableField
(
exist
=
false
)
private
List
<
MedicalQualificationsPicture
>
pictureList
;
/**
* 医生姓名
*/
@Schema
(
description
=
"医生姓名"
)
@TableField
(
exist
=
false
)
private
String
doctorName
;
/**
/**
* 设置默认值
* 设置默认值
*/
*/
...
...
src/main/java/com/xwd/hospital/server/dto/CallDto.java
0 → 100644
浏览文件 @
34794915
package
com
.
xwd
.
hospital
.
server
.
dto
;
import
lombok.Data
;
@Data
public
class
CallDto
{
private
String
alertingTime
;
private
String
called
;
private
String
recorderId
;
private
String
callerArea
;
private
String
beginTime
;
private
String
calledArea
;
private
String
caller
;
private
String
calledShow
;
private
String
connectTime
;
private
String
result
;
private
String
releaseTime
;
private
String
account
;
private
String
mappingId
;
private
String
appId
;
private
String
callDuration
;
private
String
userData
;
private
String
answerTime
;
private
String
smallNumberType
;
private
String
calldisplay
;
public
CallDto
()
{
}
public
CallDto
(
String
alertingTime
,
String
called
,
String
recorderId
,
String
callerArea
,
String
beginTime
,
String
calledArea
,
String
caller
,
String
calledShow
,
String
connectTime
,
String
result
,
String
releaseTime
,
String
account
,
String
mappingId
,
String
appId
,
String
callDuration
,
String
userData
,
String
answerTime
,
String
smallNumberType
,
String
calldisplay
)
{
this
.
alertingTime
=
alertingTime
;
this
.
called
=
called
;
this
.
recorderId
=
recorderId
;
this
.
callerArea
=
callerArea
;
this
.
beginTime
=
beginTime
;
this
.
calledArea
=
calledArea
;
this
.
caller
=
caller
;
this
.
calledShow
=
calledShow
;
this
.
connectTime
=
connectTime
;
this
.
result
=
result
;
this
.
releaseTime
=
releaseTime
;
this
.
account
=
account
;
this
.
mappingId
=
mappingId
;
this
.
appId
=
appId
;
this
.
callDuration
=
callDuration
;
this
.
userData
=
userData
;
this
.
answerTime
=
answerTime
;
this
.
smallNumberType
=
smallNumberType
;
this
.
calldisplay
=
calldisplay
;
}
}
src/main/java/com/xwd/hospital/server/dto/MedicalQualificationDto.java
浏览文件 @
34794915
...
@@ -11,6 +11,8 @@ import com.xwd.hospital.server.enums.DoctorTitleEnum;
...
@@ -11,6 +11,8 @@ import com.xwd.hospital.server.enums.DoctorTitleEnum;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.Data
;
import
java.util.List
;
@Data
@Data
public
class
MedicalQualificationDto
{
public
class
MedicalQualificationDto
{
/**
/**
...
@@ -39,4 +41,6 @@ public class MedicalQualificationDto {
...
@@ -39,4 +41,6 @@ public class MedicalQualificationDto {
@Schema
(
description
=
"职称"
,
nullable
=
false
)
@Schema
(
description
=
"职称"
,
nullable
=
false
)
private
DoctorTitleEnum
title
;
private
DoctorTitleEnum
title
;
private
List
<
String
>
pictureList
;
}
}
src/main/java/com/xwd/hospital/server/dto/ReportDto.java
0 → 100644
浏览文件 @
34794915
package
com
.
xwd
.
hospital
.
server
.
dto
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.xwd.hospital.server.enums.SexTypeEnum
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ReportDto
{
/**
* 患者姓名
*/
@TableField
(
value
=
"patient_name"
)
@Schema
(
description
=
"患者姓名"
,
nullable
=
false
)
private
String
patientName
;
/**
* 患者身份证号码
*/
@TableField
(
value
=
"patient_id_no"
)
@Schema
(
description
=
"患者身份证号码"
,
nullable
=
false
)
private
String
patientIdNo
;
/**
* 性别
*/
@TableField
(
value
=
"sex"
)
@Schema
(
description
=
"性别"
,
nullable
=
false
)
private
SexTypeEnum
sex
;
/**
* 患者年龄
*/
@TableField
(
value
=
"age"
)
@Schema
(
description
=
"患者年龄"
,
nullable
=
false
)
private
Integer
age
;
/**
* 影像报告项目
*/
@TableField
(
value
=
"report_item"
,
select
=
false
)
@Schema
(
description
=
"影像报告项目"
,
nullable
=
false
)
private
String
reportItem
;
/**
* 影像说明
*/
@TableField
(
value
=
"report_declare"
,
select
=
false
)
@Schema
(
description
=
"影像说明"
,
nullable
=
false
)
private
String
reportDeclare
;
/**
* 报告医院
*/
@TableField
(
value
=
"report_hospital"
)
@Schema
(
description
=
"报告医院"
,
nullable
=
false
)
private
String
reportHospital
;
/**
* 报告医生
*/
@TableField
(
value
=
"report_doctor"
)
@Schema
(
description
=
"报告医生"
,
nullable
=
false
)
private
String
reportDoctor
;
private
List
<
String
>
pictureList
;
}
src/main/java/com/xwd/hospital/server/enums/SysSettingEnum.java
0 → 100644
浏览文件 @
34794915
/**
* 项目:互联网医疗
* @Author: xiongwei
* @Date: 2023-09-05 09:42:00
*/
package
com
.
xwd
.
hospital
.
server
.
enums
;
/**
* 审核状态
*/
public
enum
SysSettingEnum
{
PROXY_PHONE
(
"匿名小号"
);
SysSettingEnum
(
String
name
)
{
this
.
name
=
name
;
}
private
String
name
;
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
}
src/main/java/com/xwd/hospital/server/repository/DoctorInfoMapper.java
浏览文件 @
34794915
...
@@ -31,5 +31,5 @@ public interface DoctorInfoMapper extends DoctorInfoBaseMapper {
...
@@ -31,5 +31,5 @@ public interface DoctorInfoMapper extends DoctorInfoBaseMapper {
DoctorInfoDto
queryDoctorDetail
(
@Param
(
"doctorId"
)
Long
doctorId
);
DoctorInfoDto
queryDoctorDetail
(
@Param
(
"doctorId"
)
Long
doctorId
);
String
selectNameById
(
Long
doctorId
);
}
}
src/main/java/com/xwd/hospital/server/repository/MedicalQualificationsPictureMapper.java
浏览文件 @
34794915
...
@@ -23,5 +23,5 @@ import com.xwd.hospital.server.repository.base.MedicalQualificationsPictureBaseM
...
@@ -23,5 +23,5 @@ import com.xwd.hospital.server.repository.base.MedicalQualificationsPictureBaseM
@Repository
@Repository
public
interface
MedicalQualificationsPictureMapper
extends
MedicalQualificationsPictureBaseMapper
{
public
interface
MedicalQualificationsPictureMapper
extends
MedicalQualificationsPictureBaseMapper
{
List
<
MedicalQualificationsPicture
>
selectByQualificationId
(
Long
id
);
}
}
src/main/java/com/xwd/hospital/server/rest/MedicalReportController.java
浏览文件 @
34794915
...
@@ -22,6 +22,8 @@ import com.xwd.hospital.server.annotation.ApiCommon;
...
@@ -22,6 +22,8 @@ import com.xwd.hospital.server.annotation.ApiCommon;
import
com.xwd.hospital.server.annotation.AuthUser
;
import
com.xwd.hospital.server.annotation.AuthUser
;
import
com.xwd.hospital.server.base.BaseController
;
import
com.xwd.hospital.server.base.BaseController
;
import
com.xwd.hospital.server.domain.User
;
import
com.xwd.hospital.server.domain.User
;
import
com.xwd.hospital.server.dto.MedicalQualificationDto
;
import
com.xwd.hospital.server.dto.ReportDto
;
import
com.xwd.hospital.server.rest.res.ApiCode
;
import
com.xwd.hospital.server.rest.res.ApiCode
;
import
com.xwd.hospital.server.domain.MedicalReport
;
import
com.xwd.hospital.server.domain.MedicalReport
;
import
com.xwd.hospital.server.rest.req.MedicalReportParam
;
import
com.xwd.hospital.server.rest.req.MedicalReportParam
;
...
@@ -87,5 +89,15 @@ public class MedicalReportController extends BaseController<MedicalReportService
...
@@ -87,5 +89,15 @@ public class MedicalReportController extends BaseController<MedicalReportService
return
ApiResponse
.
ok
(
this
.
service
.
saveBatch
(
entityList
));
return
ApiResponse
.
ok
(
this
.
service
.
saveBatch
(
entityList
));
}
}
/**
* 上传影像报告
*
*/
@PostMapping
(
"/uploadReport"
)
@Operation
(
summary
=
"上传影像报告"
)
public
ApiResponse
uploadReport
(
@RequestBody
ReportDto
dto
,
@AuthUser
User
user
)
{
return
ApiResponse
.
ok
(
this
.
service
.
uploadReport
(
dto
));
}
}
}
src/main/java/com/xwd/hospital/server/rest/OrderController.java
浏览文件 @
34794915
...
@@ -155,7 +155,7 @@ public class OrderController extends BaseController<OrderService, Order, OrderPa
...
@@ -155,7 +155,7 @@ public class OrderController extends BaseController<OrderService, Order, OrderPa
@PostMapping
(
"/callPhone"
)
@PostMapping
(
"/callPhone"
)
@Operation
(
summary
=
"患者端发起通话"
)
@Operation
(
summary
=
"患者端发起通话"
)
@ApiCommon
@ApiCommon
public
ApiResponse
<
Order
>
callPhone
(
@RequestParam
String
orderNo
,
@AuthUser
User
user
)
{
public
ApiResponse
callPhone
(
@RequestParam
String
orderNo
,
@AuthUser
User
user
)
{
return
ApiResponse
.
ok
(
this
.
service
.
callPhone
(
orderNo
));
return
ApiResponse
.
ok
(
this
.
service
.
callPhone
(
orderNo
));
}
}
...
...
src/main/java/com/xwd/hospital/server/rest/SmsController.java
浏览文件 @
34794915
...
@@ -8,10 +8,7 @@ import io.swagger.v3.oas.annotations.Operation;
...
@@ -8,10 +8,7 @@ import io.swagger.v3.oas.annotations.Operation;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
jakarta.annotation.Resource
;
import
jakarta.annotation.Resource
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
@Slf4j
@Slf4j
@RestController
@RestController
...
@@ -42,6 +39,40 @@ public class SmsController {
...
@@ -42,6 +39,40 @@ public class SmsController {
@PostMapping
(
"/bindPhone"
)
@PostMapping
(
"/bindPhone"
)
@ApiCommon
@ApiCommon
public
ApiResponse
bindPhone
(
@RequestParam
(
"phone"
)
String
phone
)
{
public
ApiResponse
bindPhone
(
@RequestParam
(
"phone"
)
String
phone
)
{
return
ApiResponse
.
ok
(
smsService
.
bindPhone
(
phone
));
String
proxyNumber
=
"17085298640"
;
return
ApiResponse
.
ok
(
smsService
.
bindPhone
(
proxyNumber
,
phone
));
}
/**
* <pre>
* 容联七陌回调接口
* </pre>
*/
@Operation
(
summary
=
"容联七陌回调接口"
)
@GetMapping
(
"/callback"
)
@ApiCommon
public
ApiResponse
callback
(
@RequestParam
(
value
=
"alerting_time"
,
required
=
false
)
String
alertingTime
,
@RequestParam
(
value
=
"called"
,
required
=
false
)
String
called
,
@RequestParam
(
value
=
"recorder_id"
,
required
=
false
)
String
recorderId
,
@RequestParam
(
value
=
"caller_area"
,
required
=
false
)
String
callerArea
,
@RequestParam
(
value
=
"begin_time"
,
required
=
false
)
String
beginTime
,
@RequestParam
(
value
=
"called_area"
,
required
=
false
)
String
calledArea
,
@RequestParam
(
value
=
"caller"
,
required
=
false
)
String
caller
,
@RequestParam
(
value
=
"called_show"
,
required
=
false
)
String
calledShow
,
@RequestParam
(
value
=
"connect_time"
,
required
=
false
)
String
connectTime
,
@RequestParam
(
value
=
"result"
,
required
=
false
)
String
result
,
@RequestParam
(
value
=
"release_time"
,
required
=
false
)
String
releaseTime
,
@RequestParam
(
value
=
"account"
,
required
=
false
)
String
account
,
@RequestParam
(
value
=
"mappingId"
,
required
=
false
)
String
mappingId
,
@RequestParam
(
value
=
"appId"
,
required
=
false
)
String
appId
,
@RequestParam
(
value
=
"call_duration"
,
required
=
false
)
String
callDuration
,
@RequestParam
(
value
=
"userData"
,
required
=
false
)
String
userData
,
@RequestParam
(
value
=
"answerTime"
,
required
=
false
)
String
answerTime
,
@RequestParam
(
value
=
"smallNumberType"
,
required
=
false
)
String
smallNumberType
,
@RequestParam
(
value
=
"calldisplay"
,
required
=
false
)
String
calldisplay
)
{
return
ApiResponse
.
ok
(
smsService
.
callback
(
alertingTime
,
called
,
recorderId
,
callerArea
,
beginTime
,
calledArea
,
caller
,
calledShow
,
connectTime
,
result
,
releaseTime
,
account
,
mappingId
,
appId
,
callDuration
,
userData
,
answerTime
,
smallNumberType
,
calldisplay
));
}
}
}
}
src/main/java/com/xwd/hospital/server/rest/UserController.java
浏览文件 @
34794915
...
@@ -221,8 +221,10 @@ public class UserController extends BaseController<UserService, User, UserParam>
...
@@ -221,8 +221,10 @@ public class UserController extends BaseController<UserService, User, UserParam>
public
ApiResponse
<
Map
>
miniAppLogin
(
@RequestBody
LoginDto
loginDto
)
{
public
ApiResponse
<
Map
>
miniAppLogin
(
@RequestBody
LoginDto
loginDto
)
{
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
UserDto
userDto
=
this
.
service
.
miniAppLogin
(
loginDto
);
UserDto
userDto
=
this
.
service
.
miniAppLogin
(
loginDto
);
result
.
put
(
"userDto"
,
userDto
);
result
.
put
(
"userDto"
,
userDto
);
if
(
userDto
.
isRegisterFlag
()){
return
ApiResponse
.
ok
(
result
);
}
var
loginModel
=
new
SaLoginModel
();
var
loginModel
=
new
SaLoginModel
();
loginModel
.
setExtra
(
"userId"
,
userDto
.
getUser
().
getId
());
loginModel
.
setExtra
(
"userId"
,
userDto
.
getUser
().
getId
());
StpUtil
.
login
(
userDto
.
getUser
().
getUsername
(),
loginModel
);
StpUtil
.
login
(
userDto
.
getUser
().
getUsername
(),
loginModel
);
...
@@ -252,6 +254,18 @@ public class UserController extends BaseController<UserService, User, UserParam>
...
@@ -252,6 +254,18 @@ public class UserController extends BaseController<UserService, User, UserParam>
return
ApiResponse
.
ok
(
result
);
return
ApiResponse
.
ok
(
result
);
}
}
/**
* <pre>
* 微信信息修改
* </pre>
*/
@Operation
(
summary
=
"微信信息修改"
)
@PostMapping
(
"/wxUpdate"
)
@ApiCommon
public
ApiResponse
wxUpdate
(
@RequestBody
UpdateInfoDto
updateUserDto
)
{
return
ApiResponse
.
ok
(
this
.
service
.
wxUpdate
(
updateUserDto
));
}
/**
/**
* <pre>
* <pre>
* 查询当前登录的用户信息
* 查询当前登录的用户信息
...
...
src/main/java/com/xwd/hospital/server/rest/thirdPartReq/BindNumberReq.java
浏览文件 @
34794915
...
@@ -7,8 +7,7 @@ import retrofit2.http.Body;
...
@@ -7,8 +7,7 @@ import retrofit2.http.Body;
public
class
BindNumberReq
{
public
class
BindNumberReq
{
private
String
midNum
;
private
String
midNum
;
private
String
called
;
private
String
called
;
private
Integer
icDisplayFlag
=
1
;
private
String
icDisplayFlag
=
"1"
;
private
Boolean
needRecord
=
true
;
private
String
needRecord
=
"true"
;
private
Integer
expiration
=
0
;
private
String
expiration
=
"0"
;
}
}
src/main/java/com/xwd/hospital/server/rest/thirdPartReq/UnbindNumberReq.java
0 → 100644
浏览文件 @
34794915
package
com
.
xwd
.
hospital
.
server
.
rest
.
thirdPartReq
;
import
lombok.Data
;
@Data
public
class
UnbindNumberReq
{
private
String
mappingId
;
private
String
midNum
;
}
src/main/java/com/xwd/hospital/server/service/CallApiService.java
浏览文件 @
34794915
...
@@ -2,6 +2,7 @@ package com.xwd.hospital.server.service;
...
@@ -2,6 +2,7 @@ package com.xwd.hospital.server.service;
import
com.google.gson.JsonObject
;
import
com.google.gson.JsonObject
;
import
com.xwd.hospital.server.rest.thirdPartReq.BindNumberReq
;
import
com.xwd.hospital.server.rest.thirdPartReq.BindNumberReq
;
import
com.xwd.hospital.server.rest.thirdPartReq.UnbindNumberReq
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
retrofit2.Call
;
import
retrofit2.Call
;
import
retrofit2.http.*
;
import
retrofit2.http.*
;
...
@@ -16,5 +17,5 @@ public interface CallApiService {
...
@@ -16,5 +17,5 @@ public interface CallApiService {
@FormUrlEncoded
@FormUrlEncoded
@POST
(
"/v20160818/rlxh/midNumUnBinding/{account}"
)
@POST
(
"/v20160818/rlxh/midNumUnBinding/{account}"
)
Call
<
String
>
unbindNumber
(
@HeaderMap
Map
<
String
,
String
>
headers
,
@FieldMap
Map
<
String
,
Object
>
map
,
@Path
(
"account"
)
String
account
);
Call
<
JsonObject
>
unbindNumber
(
@HeaderMap
Map
<
String
,
String
>
headers
,
@Body
UnbindNumberReq
body
,
@Path
(
"account"
)
String
account
,
@Query
(
"sig"
)
String
sig
);
}
}
src/main/java/com/xwd/hospital/server/service/MedicalReportService.java
浏览文件 @
34794915
...
@@ -11,8 +11,11 @@ package com.xwd.hospital.server.service;
...
@@ -11,8 +11,11 @@ package com.xwd.hospital.server.service;
import
java.util.List
;
import
java.util.List
;
import
com.xwd.hospital.server.base.BaseService
;
import
com.xwd.hospital.server.base.BaseService
;
import
com.xwd.hospital.server.domain.MedicalReport
;
import
com.xwd.hospital.server.domain.MedicalReport
;
import
com.xwd.hospital.server.dto.ReportDto
;
import
com.xwd.hospital.server.rest.req.MedicalReportParam
;
import
com.xwd.hospital.server.rest.req.MedicalReportParam
;
public
interface
MedicalReportService
extends
BaseService
<
MedicalReport
>
{
public
interface
MedicalReportService
extends
BaseService
<
MedicalReport
>
{
boolean
uploadReport
(
ReportDto
dto
);
}
}
src/main/java/com/xwd/hospital/server/service/OrderService.java
浏览文件 @
34794915
...
@@ -30,7 +30,7 @@ public interface OrderService extends BaseService<Order> {
...
@@ -30,7 +30,7 @@ public interface OrderService extends BaseService<Order> {
Order
stratImChat
(
String
orderNo
);
Order
stratImChat
(
String
orderNo
);
Order
callPhone
(
String
orderNo
);
String
callPhone
(
String
orderNo
);
Order
submitPrescriptionInfo
(
PrescriptionInfoDto
prescriptionInfoDto
);
Order
submitPrescriptionInfo
(
PrescriptionInfoDto
prescriptionInfoDto
);
...
...
src/main/java/com/xwd/hospital/server/service/SmsService.java
浏览文件 @
34794915
package
com
.
xwd
.
hospital
.
server
.
service
;
package
com
.
xwd
.
hospital
.
server
.
service
;
import
org.springframework.web.bind.annotation.RequestParam
;
public
interface
SmsService
{
public
interface
SmsService
{
/**
/**
* 发送短信验证码
* 发送短信验证码
...
@@ -9,5 +11,11 @@ public interface SmsService {
...
@@ -9,5 +11,11 @@ public interface SmsService {
*/
*/
String
sendSms
(
String
phoneNumber
);
String
sendSms
(
String
phoneNumber
);
String
bindPhone
(
String
phoneNumber
);
String
bindPhone
(
String
proxyNumber
,
String
phoneNumber
);
void
unbindPhone
(
String
proxyNumber
,
String
mappingId
);
boolean
callback
(
String
alertingTime
,
String
called
,
String
recorderId
,
String
callerArea
,
String
beginTime
,
String
calledArea
,
String
caller
,
String
calledShow
,
String
connectTime
,
String
result
,
String
releaseTime
,
String
account
,
String
mappingId
,
String
appId
,
String
callDuration
,
String
userData
,
String
answerTime
,
String
smallNumberType
,
String
calldisplay
);
}
}
src/main/java/com/xwd/hospital/server/service/UserService.java
浏览文件 @
34794915
...
@@ -69,6 +69,8 @@ public interface UserService extends BaseService<User> {
...
@@ -69,6 +69,8 @@ public interface UserService extends BaseService<User> {
*/
*/
UserDto
updateUserInfo
(
UpdateUserInfoDto
updateInfoDto
);
UserDto
updateUserInfo
(
UpdateUserInfoDto
updateInfoDto
);
UserDto
wxUpdate
(
UpdateInfoDto
updateUserDto
);
/**
/**
* 微信获取手机号码
* 微信获取手机号码
* @return
* @return
...
...
src/main/java/com/xwd/hospital/server/service/impl/DepartmentInfoServiceImpl.java
浏览文件 @
34794915
...
@@ -67,7 +67,7 @@ public class DepartmentInfoServiceImpl extends ServiceImpl<DepartmentInfoMapper,
...
@@ -67,7 +67,7 @@ public class DepartmentInfoServiceImpl extends ServiceImpl<DepartmentInfoMapper,
}
}
for
(
DepartmentDto
departmentDto
:
departmentList
)
{
for
(
DepartmentDto
departmentDto
:
departmentList
)
{
if
(
departmentDto
.
getParentId
()
!=
null
)
{
if
(
departmentDto
.
getParentId
()
!=
null
&&
departmentDto
.
getParentId
()
!=
0
)
{
DepartmentDto
parent
=
departmentMap
.
get
(
departmentDto
.
getParentId
());
DepartmentDto
parent
=
departmentMap
.
get
(
departmentDto
.
getParentId
());
if
(
parent
!=
null
)
{
if
(
parent
!=
null
)
{
parent
.
getChildList
().
add
(
departmentDto
);
parent
.
getChildList
().
add
(
departmentDto
);
...
...
src/main/java/com/xwd/hospital/server/service/impl/MedicalQualificationsServiceImpl.java
浏览文件 @
34794915
...
@@ -13,8 +13,11 @@ import java.util.List;
...
@@ -13,8 +13,11 @@ import java.util.List;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collection
;
import
com.xwd.hospital.server.domain.DoctorInfo
;
import
cn.dev33.satoken.stp.StpUtil
;
import
com.xwd.hospital.server.domain.*
;
import
com.xwd.hospital.server.dto.MedicalQualificationDto
;
import
com.xwd.hospital.server.dto.MedicalQualificationDto
;
import
com.xwd.hospital.server.enums.AuditStateEnum
;
import
com.xwd.hospital.server.service.*
;
import
jakarta.annotation.Resource
;
import
jakarta.annotation.Resource
;
import
com.baomidou.mybatisplus.core.enums.SqlMethod
;
import
com.baomidou.mybatisplus.core.enums.SqlMethod
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
...
@@ -22,14 +25,18 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
...
@@ -22,14 +25,18 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import
com.baomidou.mybatisplus.extension.toolkit.SqlHelper
;
import
com.baomidou.mybatisplus.extension.toolkit.SqlHelper
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.xwd.hospital.server.service.MedicalQualificationsService
;
import
com.xwd.hospital.server.repository.MedicalQualificationsMapper
;
import
com.xwd.hospital.server.repository.MedicalQualificationsMapper
;
import
com.xwd.hospital.server.repository.base.MedicalQualificationsBaseMapper
;
import
com.xwd.hospital.server.repository.base.MedicalQualificationsBaseMapper
;
import
com.xwd.hospital.server.domain.MedicalQualifications
;
import
com.xwd.hospital.server.rest.req.MedicalQualificationsParam
;
import
com.xwd.hospital.server.rest.req.MedicalQualificationsParam
;
@Service
@Service
public
class
MedicalQualificationsServiceImpl
extends
ServiceImpl
<
MedicalQualificationsMapper
,
MedicalQualifications
>
implements
MedicalQualificationsService
{
public
class
MedicalQualificationsServiceImpl
extends
ServiceImpl
<
MedicalQualificationsMapper
,
MedicalQualifications
>
implements
MedicalQualificationsService
{
@Resource
private
DoctorInfoService
doctorInfoService
;
@Resource
private
UserService
userService
;
@Resource
private
MedicalQualificationsPictureService
pictureService
;
@Override
@Override
public
int
updateAllFieldsById
(
MedicalQualifications
entity
)
{
public
int
updateAllFieldsById
(
MedicalQualifications
entity
)
{
...
@@ -52,7 +59,48 @@ public class MedicalQualificationsServiceImpl extends ServiceImpl<MedicalQualifi
...
@@ -52,7 +59,48 @@ public class MedicalQualificationsServiceImpl extends ServiceImpl<MedicalQualifi
@Override
@Override
public
DoctorInfo
uploadQualification
(
MedicalQualificationDto
dto
)
{
public
DoctorInfo
uploadQualification
(
MedicalQualificationDto
dto
)
{
//当前用户
Object
userId
=
StpUtil
.
getExtra
(
"userId"
);
DoctorInfo
doctorInfo
=
doctorInfoService
.
getOne
(
Wrappers
.<
DoctorInfo
>
query
().
eq
(
"user_id"
,
Long
.
valueOf
(
userId
.
toString
())));
if
(
null
==
doctorInfo
){
return
null
;
}
User
sysUser
=
userService
.
getById
(
Long
.
valueOf
(
userId
.
toString
()));
return
null
;
//查询医生资质信息
MedicalQualifications
qualifications
=
this
.
getOne
(
Wrappers
.<
MedicalQualifications
>
query
().
eq
(
"doctor_id"
,
doctorInfo
.
getId
()));
if
(
null
==
qualifications
){
qualifications
=
new
MedicalQualifications
();
qualifications
.
setDoctorId
(
doctorInfo
.
getId
());
}
qualifications
.
setHospitalId
(
dto
.
getHospitalId
());
qualifications
.
setDepartmentId
(
dto
.
getDepartmentId
());
qualifications
.
setTitle
(
dto
.
getTitle
());
qualifications
.
setEditorId
(
sysUser
.
getId
());
qualifications
.
setEditorName
(
sysUser
.
getUsername
());
qualifications
.
setAuditState
(
AuditStateEnum
.
TO_AUDIT
);
this
.
saveOrUpdate
(
qualifications
);
if
(
null
!=
dto
.
getPictureList
()
&&
dto
.
getPictureList
().
size
()>
0
){
//删除原有的照片
pictureService
.
remove
(
Wrappers
.<
MedicalQualificationsPicture
>
query
().
eq
(
"doctor_id"
,
doctorInfo
.
getId
()));
//再插入新的图片
ArrayList
<
MedicalQualificationsPicture
>
pictureList
=
new
ArrayList
<>();
for
(
String
picUrl:
dto
.
getPictureList
())
{
MedicalQualificationsPicture
picture
=
new
MedicalQualificationsPicture
();
picture
.
setDoctorId
(
doctorInfo
.
getId
());
picture
.
setMedicalQualificationId
(
qualifications
.
getId
());
picture
.
setCertificatePicture
(
picUrl
);
picture
.
setEditorId
(
sysUser
.
getId
());
picture
.
setEditorName
(
sysUser
.
getUsername
());
pictureList
.
add
(
picture
);
}
pictureService
.
saveBatch
(
pictureList
);
}
doctorInfo
.
setMedicalQualificationId
(
qualifications
.
getId
());
doctorInfoService
.
saveOrUpdate
(
doctorInfo
);
return
doctorInfo
;
}
}
}
}
src/main/java/com/xwd/hospital/server/service/impl/MedicalReportServiceImpl.java
浏览文件 @
34794915
...
@@ -13,6 +13,9 @@ import java.util.List;
...
@@ -13,6 +13,9 @@ import java.util.List;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collection
;
import
com.xwd.hospital.server.domain.MedicalReportPicture
;
import
com.xwd.hospital.server.dto.ReportDto
;
import
com.xwd.hospital.server.service.MedicalReportPictureService
;
import
jakarta.annotation.Resource
;
import
jakarta.annotation.Resource
;
import
com.baomidou.mybatisplus.core.enums.SqlMethod
;
import
com.baomidou.mybatisplus.core.enums.SqlMethod
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
...
@@ -29,6 +32,9 @@ import com.xwd.hospital.server.rest.req.MedicalReportParam;
...
@@ -29,6 +32,9 @@ import com.xwd.hospital.server.rest.req.MedicalReportParam;
@Service
@Service
public
class
MedicalReportServiceImpl
extends
ServiceImpl
<
MedicalReportMapper
,
MedicalReport
>
implements
MedicalReportService
{
public
class
MedicalReportServiceImpl
extends
ServiceImpl
<
MedicalReportMapper
,
MedicalReport
>
implements
MedicalReportService
{
@Resource
private
MedicalReportPictureService
pictureService
;
@Override
@Override
public
int
updateAllFieldsById
(
MedicalReport
entity
)
{
public
int
updateAllFieldsById
(
MedicalReport
entity
)
{
return
this
.
getBaseMapper
().
updateAllFieldsById
(
entity
);
return
this
.
getBaseMapper
().
updateAllFieldsById
(
entity
);
...
@@ -48,5 +54,32 @@ public class MedicalReportServiceImpl extends ServiceImpl<MedicalReportMapper, M
...
@@ -48,5 +54,32 @@ public class MedicalReportServiceImpl extends ServiceImpl<MedicalReportMapper, M
return
executeBatch
(
entityList
,
batchSize
,
(
sqlSession
,
entity
)
->
sqlSession
.
insert
(
sqlStatement
,
entity
));
return
executeBatch
(
entityList
,
batchSize
,
(
sqlSession
,
entity
)
->
sqlSession
.
insert
(
sqlStatement
,
entity
));
}
}
@Override
public
boolean
uploadReport
(
ReportDto
dto
)
{
MedicalReport
medicalReport
=
new
MedicalReport
();
medicalReport
.
setAge
(
dto
.
getAge
());
medicalReport
.
setPatientName
(
dto
.
getPatientName
());
medicalReport
.
setReportDoctor
(
dto
.
getReportDoctor
());
medicalReport
.
setReportHospital
(
dto
.
getReportHospital
());
medicalReport
.
setPatientIdNo
(
dto
.
getPatientIdNo
());
medicalReport
.
setSex
(
dto
.
getSex
());
medicalReport
.
setReportItem
(
dto
.
getReportItem
());
medicalReport
.
setReportDeclare
(
dto
.
getReportDeclare
());
this
.
save
(
medicalReport
);
if
(
null
!=
dto
.
getPictureList
()
&&
dto
.
getPictureList
().
size
()>
0
){
ArrayList
<
MedicalReportPicture
>
pictureList
=
new
ArrayList
<>();
for
(
String
picUrl:
dto
.
getPictureList
())
{
MedicalReportPicture
picture
=
new
MedicalReportPicture
();
picture
.
setMedicalReportId
(
medicalReport
.
getId
());
picture
.
setReportPicture
(
picUrl
);
pictureList
.
add
(
picture
);
}
pictureService
.
saveBatch
(
pictureList
);
}
return
true
;
}
}
}
src/main/java/com/xwd/hospital/server/service/impl/OrderServiceImpl.java
浏览文件 @
34794915
...
@@ -14,19 +14,19 @@ import java.text.SimpleDateFormat;
...
@@ -14,19 +14,19 @@ import java.text.SimpleDateFormat;
import
java.util.*
;
import
java.util.*
;
import
cn.dev33.satoken.stp.StpUtil
;
import
cn.dev33.satoken.stp.StpUtil
;
import
cn.hutool.core.date.DateUtil
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.xwd.hospital.server.domain.*
;
import
com.xwd.hospital.server.domain.*
;
import
com.xwd.hospital.server.dto.*
;
import
com.xwd.hospital.server.dto.*
;
import
com.xwd.hospital.server.enums.OrderOperationEnum
;
import
com.xwd.hospital.server.enums.*
;
import
com.xwd.hospital.server.enums.OrderStateEnum
;
import
com.xwd.hospital.server.enums.OrderTypeEnum
;
import
com.xwd.hospital.server.enums.YesNoEnum
;
import
com.xwd.hospital.server.service.*
;
import
com.xwd.hospital.server.service.*
;
import
com.xwd.hospital.server.util.DateUtils
;
import
jakarta.annotation.Resource
;
import
jakarta.annotation.Resource
;
import
com.baomidou.mybatisplus.core.enums.SqlMethod
;
import
com.baomidou.mybatisplus.core.enums.SqlMethod
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.toolkit.SqlHelper
;
import
com.baomidou.mybatisplus.extension.toolkit.SqlHelper
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.xwd.hospital.server.repository.OrderMapper
;
import
com.xwd.hospital.server.repository.OrderMapper
;
...
@@ -55,6 +55,12 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
...
@@ -55,6 +55,12 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
private
OrderOperationService
orderOperationService
;
private
OrderOperationService
orderOperationService
;
@Resource
@Resource
private
OrderPictureService
orderPictureService
;
private
OrderPictureService
orderPictureService
;
@Resource
private
SmsService
smsService
;
@Resource
private
PhoneOrderRecordService
phoneOrderRecordService
;
@Resource
private
SettingService
settingService
;
@Override
@Override
public
int
updateAllFieldsById
(
Order
entity
)
{
public
int
updateAllFieldsById
(
Order
entity
)
{
...
@@ -78,7 +84,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
...
@@ -78,7 +84,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
@Override
@Override
public
List
<
OrderDto
>
queryOrderListForMiniApp
(
OrderStateEnum
param
)
{
public
List
<
OrderDto
>
queryOrderListForMiniApp
(
OrderStateEnum
param
)
{
Object
userId
=
StpUtil
.
getExtra
(
"userId"
);
Object
userId
=
StpUtil
.
getExtra
(
"userId"
);
UserInfo
userInfo
=
userInfoService
.
getOne
(
Wrappers
.<
UserInfo
>
query
().
eq
(
"user_id"
,
userId
));
UserInfo
userInfo
=
userInfoService
.
getOne
(
Wrappers
.<
UserInfo
>
query
().
eq
(
"user_id"
,
Long
.
valueOf
(
userId
.
toString
())
));
if
(
null
==
userInfo
){
if
(
null
==
userInfo
){
return
null
;
return
null
;
}
}
...
@@ -90,7 +96,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
...
@@ -90,7 +96,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
public
Order
createOrder
(
CreateOrderDto
createOrderDto
)
{
public
Order
createOrder
(
CreateOrderDto
createOrderDto
)
{
//当前用户
//当前用户
Object
userId
=
StpUtil
.
getExtra
(
"userId"
);
Object
userId
=
StpUtil
.
getExtra
(
"userId"
);
UserInfo
userInfo
=
userInfoService
.
getOne
(
Wrappers
.<
UserInfo
>
query
().
eq
(
"user_id"
,
userId
));
UserInfo
userInfo
=
userInfoService
.
getOne
(
Wrappers
.<
UserInfo
>
query
().
eq
(
"user_id"
,
Long
.
valueOf
(
userId
.
toString
())
));
if
(
null
==
userInfo
){
if
(
null
==
userInfo
){
return
null
;
return
null
;
}
}
...
@@ -319,7 +325,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
...
@@ -319,7 +325,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
phoneOrderRecord
.
setOrderId
(
order
.
getId
());
phoneOrderRecord
.
setOrderId
(
order
.
getId
());
phoneOrderRecord
.
setOrderNo
(
orderNo
);
phoneOrderRecord
.
setOrderNo
(
orderNo
);
phoneOrderRecord
.
setPatientPhoneNo
(
order
.
getPatientPhoneNumber
());
phoneOrderRecord
.
setPatientPhoneNo
(
order
.
getPatientPhoneNumber
());
phoneOrderRecordService
.
save
(
phoneOrderRecord
);
}
}
return
order
;
return
order
;
...
@@ -342,10 +348,46 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
...
@@ -342,10 +348,46 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
* @return
* @return
*/
*/
@Override
@Override
public
Order
callPhone
(
String
orderNo
)
{
public
String
callPhone
(
String
orderNo
)
{
//todo sdk接入
String
proxyNumber
=
null
;
//判断订单状态是否为服务中
Order
order
=
this
.
getOne
(
Wrappers
.<
Order
>
query
().
eq
(
"order_no"
,
orderNo
));
if
(
order
.
getOrderState
()
==
OrderStateEnum
.
IN_SERVICE
){
//判断预约日期是否到达
Date
now
=
new
Date
();
Date
appointmentDate
=
order
.
getAppointmentDate
();
int
compare
=
DateUtil
.
compare
(
now
,
appointmentDate
,
"yyyy-MM-dd"
);
if
(
0
!=
compare
){
return
null
;
}
//绑定小号和患者号码并返回小号
PhoneOrderRecord
record
=
phoneOrderRecordService
.
getOne
(
Wrappers
.<
PhoneOrderRecord
>
query
().
eq
(
"order_no"
,
orderNo
));
if
(!
StringUtils
.
isBlank
(
record
.
getProxyPhoneNo
()
)
&&
record
.
getMappingState
()
==
YesNoEnum
.
NO
){
return
record
.
getProxyPhoneNo
();
return
null
;
}
//todo 从小号列表中获取到合适的小号(sys_setting表)
List
<
Setting
>
settingList
=
settingService
.
list
(
Wrappers
.<
Setting
>
query
().
eq
(
"code"
,
SysSettingEnum
.
PROXY_PHONE
).
eq
(
"remark"
,
"usable"
));
if
(
null
==
settingList
||
settingList
.
size
()
==
0
){
//暂无可用来绑定的小号
return
null
;
}
Setting
setting
=
settingList
.
get
(
0
);
proxyNumber
=
setting
.
getValue
();
//绑定小号和患者号码
String
mappingId
=
smsService
.
bindPhone
(
proxyNumber
,
record
.
getPatientPhoneNo
());
record
.
setMappingId
(
mappingId
);
record
.
setProxyPhoneNo
(
proxyNumber
);
phoneOrderRecordService
.
saveOrUpdate
(
record
);
//小号改为已使用
setting
.
setRemark
(
"used"
);
settingService
.
saveOrUpdate
(
setting
);
}
return
proxyNumber
;
}
}
/**
/**
...
...
src/main/java/com/xwd/hospital/server/service/impl/PatientPrescriptionInfoServiceImpl.java
浏览文件 @
34794915
...
@@ -65,7 +65,7 @@ public class PatientPrescriptionInfoServiceImpl extends ServiceImpl<PatientPresc
...
@@ -65,7 +65,7 @@ public class PatientPrescriptionInfoServiceImpl extends ServiceImpl<PatientPresc
@Override
@Override
public
PatientPrescriptionInfo
create
(
CreatePrescriptionDto
dto
)
{
public
PatientPrescriptionInfo
create
(
CreatePrescriptionDto
dto
)
{
Object
userId
=
StpUtil
.
getExtra
(
"userId"
);
Object
userId
=
StpUtil
.
getExtra
(
"userId"
);
UserInfo
userInfo
=
userInfoService
.
getOne
(
Wrappers
.<
UserInfo
>
query
().
eq
(
"user_id"
,
userId
));
UserInfo
userInfo
=
userInfoService
.
getOne
(
Wrappers
.<
UserInfo
>
query
().
eq
(
"user_id"
,
Long
.
valueOf
(
userId
.
toString
())
));
if
(
null
==
userInfo
){
if
(
null
==
userInfo
){
return
null
;
return
null
;
}
}
...
...
src/main/java/com/xwd/hospital/server/service/impl/SmsServiceImpl.java
浏览文件 @
34794915
...
@@ -11,7 +11,9 @@ import com.tencentcloudapi.sms.v20210111.SmsClient;
...
@@ -11,7 +11,9 @@ import com.tencentcloudapi.sms.v20210111.SmsClient;
import
com.tencentcloudapi.sms.v20210111.models.SendSmsRequest
;
import
com.tencentcloudapi.sms.v20210111.models.SendSmsRequest
;
import
com.tencentcloudapi.sms.v20210111.models.SendSmsResponse
;
import
com.tencentcloudapi.sms.v20210111.models.SendSmsResponse
;
import
com.xwd.hospital.server.constants.Constant
;
import
com.xwd.hospital.server.constants.Constant
;
import
com.xwd.hospital.server.dto.CallDto
;
import
com.xwd.hospital.server.rest.thirdPartReq.BindNumberReq
;
import
com.xwd.hospital.server.rest.thirdPartReq.BindNumberReq
;
import
com.xwd.hospital.server.rest.thirdPartReq.UnbindNumberReq
;
import
com.xwd.hospital.server.service.CallApiService
;
import
com.xwd.hospital.server.service.CallApiService
;
import
com.xwd.hospital.server.service.RedisService
;
import
com.xwd.hospital.server.service.RedisService
;
import
com.xwd.hospital.server.service.SmsService
;
import
com.xwd.hospital.server.service.SmsService
;
...
@@ -20,6 +22,9 @@ import jakarta.annotation.Resource;
...
@@ -20,6 +22,9 @@ import jakarta.annotation.Resource;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
okhttp3.OkHttpClient
;
import
okhttp3.OkHttpClient
;
import
okhttp3.RequestBody
;
import
okhttp3.RequestBody
;
import
org.apache.commons.codec.binary.Base64
;
import
org.apache.commons.codec.digest.DigestUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
retrofit2.Call
;
import
retrofit2.Call
;
import
retrofit2.Response
;
import
retrofit2.Response
;
...
@@ -27,6 +32,8 @@ import retrofit2.Retrofit;
...
@@ -27,6 +32,8 @@ import retrofit2.Retrofit;
import
retrofit2.converter.gson.GsonConverterFactory
;
import
retrofit2.converter.gson.GsonConverterFactory
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Random
;
import
java.util.Random
;
...
@@ -38,10 +45,21 @@ public class SmsServiceImpl implements SmsService {
...
@@ -38,10 +45,21 @@ public class SmsServiceImpl implements SmsService {
@Resource
@Resource
private
RedisService
redisService
;
private
RedisService
redisService
;
private
static
final
String
secretId
=
"AKIDZzDD2e4IURBhy2sUrzsXxXu4zf7LL7ex"
;
@Value
(
"${tencent.cloud.secretId}"
)
private
static
final
String
secretKey
=
"A52lGXaTAev274oMk4CBzay9C6nIbjeM"
;
private
String
secretId
;
private
static
final
String
sdkAppId
=
"1400859846"
;
@Value
(
"${tencent.cloud.secretKey}"
)
private
static
final
String
templateId
=
"1946431"
;
private
String
secretKey
;
@Value
(
"${tencent.cloud.sms.sdkAppId}"
)
private
String
sdkAppId
;
@Value
(
"${tencent.cloud.sms.templateId}"
)
private
String
templateId
;
@Value
(
"${ronglian.cloud.account}"
)
public
String
account
;
//替换为您的账户
@Value
(
"${ronglian.cloud.secret}"
)
public
String
secret
;
//替换为您的api密码
@Value
(
"${ronglian.cloud.host}"
)
public
String
host
;
@Override
@Override
public
String
sendSms
(
String
phoneNumber
)
{
public
String
sendSms
(
String
phoneNumber
)
{
...
@@ -50,13 +68,14 @@ public class SmsServiceImpl implements SmsService {
...
@@ -50,13 +68,14 @@ public class SmsServiceImpl implements SmsService {
// 生成一个100000到999999之间的随机整数
// 生成一个100000到999999之间的随机整数
int
randomNumber
=
random
.
nextInt
(
900000
)
+
100000
;
int
randomNumber
=
random
.
nextInt
(
900000
)
+
100000
;
//调用短信sdk发送短信
//调用短信sdk发送短信
// sendAuth(String.valueOf(randomNumber),phoneNumber);
//todo 暂时屏蔽短信接口
sendAuth
(
String
.
valueOf
(
randomNumber
),
phoneNumber
);
//存入redis中,缓存默认5分钟失效
//存入redis中,缓存默认5分钟失效
redisService
.
setExpire
(
Constant
.
SMS_PREFIX
+
phoneNumber
,
String
.
valueOf
(
randomNumber
),
5
,
TimeUnit
.
MINUTES
);
redisService
.
setExpire
(
Constant
.
SMS_PREFIX
+
phoneNumber
,
String
.
valueOf
(
randomNumber
),
5
,
TimeUnit
.
MINUTES
);
return
String
.
valueOf
(
randomNumber
);
return
String
.
valueOf
(
randomNumber
);
}
}
public
static
void
sendAuth
(
String
authNumber
,
String
phone
)
{
public
void
sendAuth
(
String
authNumber
,
String
phone
)
{
try
{
try
{
Credential
cred
=
new
Credential
(
secretId
,
secretKey
);
Credential
cred
=
new
Credential
(
secretId
,
secretKey
);
// 实例化一个http选项,可选,没有特殊需求可以跳过
// 实例化一个http选项,可选,没有特殊需求可以跳过
...
@@ -119,25 +138,25 @@ public class SmsServiceImpl implements SmsService {
...
@@ -119,25 +138,25 @@ public class SmsServiceImpl implements SmsService {
}
}
@Override
@Override
public
String
bindPhone
(
String
phoneNumber
)
{
public
String
bindPhone
(
String
p
roxyNumber
,
String
p
honeNumber
)
{
String
mappingId
=
""
;
String
mappingId
=
""
;
Retrofit
retrofit
=
new
Retrofit
.
Builder
()
Retrofit
retrofit
=
new
Retrofit
.
Builder
()
.
baseUrl
(
CallUtil
.
host
)
.
baseUrl
(
host
)
.
addConverterFactory
(
GsonConverterFactory
.
create
())
.
addConverterFactory
(
GsonConverterFactory
.
create
())
.
client
(
new
OkHttpClient
.
Builder
().
build
())
.
client
(
new
OkHttpClient
.
Builder
().
build
())
.
build
();
.
build
();
CallApiService
service
=
retrofit
.
create
(
CallApiService
.
class
);
CallApiService
service
=
retrofit
.
create
(
CallApiService
.
class
);
Map
<
String
,
String
>
sigAndAuth
=
CallUtil
.
getSigAndAuth
();
Map
<
String
,
String
>
sigAndAuth
=
getSigAndAuth
();
HashMap
<
String
,
String
>
headers
=
new
HashMap
<>();
HashMap
<
String
,
String
>
headers
=
new
HashMap
<>();
headers
.
put
(
"Authorization"
,
sigAndAuth
.
get
(
"auth"
));
headers
.
put
(
"Authorization"
,
sigAndAuth
.
get
(
"auth"
));
BindNumberReq
bindNumberReq
=
new
BindNumberReq
();
BindNumberReq
bindNumberReq
=
new
BindNumberReq
();
bindNumberReq
.
setMidNum
(
"17085298640"
);
//小号
bindNumberReq
.
setMidNum
(
proxyNumber
);
//小号
bindNumberReq
.
setCalled
(
phoneNumber
);
//被叫号码
bindNumberReq
.
setCalled
(
phoneNumber
);
//被叫号码
Call
<
JsonObject
>
call
=
service
.
bindNumber
(
headers
,
bindNumberReq
,
CallUtil
.
account
,
sigAndAuth
.
get
(
"sig"
));
Call
<
JsonObject
>
call
=
service
.
bindNumber
(
headers
,
bindNumberReq
,
account
,
sigAndAuth
.
get
(
"sig"
));
try
{
try
{
Response
<
JsonObject
>
execute
=
call
.
execute
();
Response
<
JsonObject
>
execute
=
call
.
execute
();
mappingId
=
execute
.
body
().
get
(
"mappingId"
).
getAsString
();
mappingId
=
execute
.
body
().
get
(
"mappingId"
).
getAsString
();
...
@@ -147,4 +166,80 @@ public class SmsServiceImpl implements SmsService {
...
@@ -147,4 +166,80 @@ public class SmsServiceImpl implements SmsService {
}
}
return
mappingId
;
return
mappingId
;
}
}
@Override
public
void
unbindPhone
(
String
proxyNumber
,
String
mappingId
)
{
Retrofit
retrofit
=
new
Retrofit
.
Builder
()
.
baseUrl
(
host
)
.
addConverterFactory
(
GsonConverterFactory
.
create
())
.
client
(
new
OkHttpClient
.
Builder
().
build
())
.
build
();
CallApiService
service
=
retrofit
.
create
(
CallApiService
.
class
);
Map
<
String
,
String
>
sigAndAuth
=
getSigAndAuth
();
HashMap
<
String
,
String
>
headers
=
new
HashMap
<>();
headers
.
put
(
"Authorization"
,
sigAndAuth
.
get
(
"auth"
));
UnbindNumberReq
req
=
new
UnbindNumberReq
();
req
.
setMappingId
(
mappingId
);
req
.
setMidNum
(
proxyNumber
);
Call
<
JsonObject
>
call
=
service
.
unbindNumber
(
headers
,
req
,
account
,
sigAndAuth
.
get
(
"sig"
));
try
{
Response
<
JsonObject
>
execute
=
call
.
execute
();
log
.
info
(
execute
.
body
().
toString
());
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
public
Map
<
String
,
String
>
getSigAndAuth
()
{
String
time
=
getDateTime
();
String
sig
=
md5
(
account
+
secret
+
time
);
String
auth
=
base64
(
account
+
":"
+
time
);
HashMap
<
String
,
String
>
map
=
new
HashMap
<>();
map
.
put
(
"sig"
,
sig
);
map
.
put
(
"auth"
,
auth
);
return
map
;
}
public
static
String
md5
(
String
text
)
{
return
DigestUtils
.
md5Hex
(
text
).
toUpperCase
();
}
public
static
String
base64
(
String
text
)
{
byte
[]
b
=
text
.
getBytes
();
Base64
base64
=
new
Base64
();
b
=
base64
.
encode
(
b
);
String
s
=
new
String
(
b
);
return
s
;
}
public
static
String
getDateTime
(){
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyyMMddHHmmss"
);
return
sdf
.
format
(
new
Date
());
}
@Override
public
boolean
callback
(
String
alertingTime
,
String
called
,
String
recorderId
,
String
callerArea
,
String
beginTime
,
String
calledArea
,
String
caller
,
String
calledShow
,
String
connectTime
,
String
result
,
String
releaseTime
,
String
account
,
String
mappingId
,
String
appId
,
String
callDuration
,
String
userData
,
String
answerTime
,
String
smallNumberType
,
String
calldisplay
)
{
CallDto
callDto
=
new
CallDto
(
alertingTime
,
called
,
recorderId
,
callerArea
,
beginTime
,
calledArea
,
caller
,
calledShow
,
connectTime
,
result
,
releaseTime
,
account
,
mappingId
,
appId
,
callDuration
,
userData
,
answerTime
,
smallNumberType
,
calldisplay
);
if
(
result
.
equals
(
"0"
)){
//通话成功
//解绑
unbindPhone
(
calledShow
,
mappingId
);
//todo 修改sys_setting表,小号状态
//todo 修改phone——order——record表状态
}
log
.
info
(
"容联通话回调:------"
);
return
false
;
}
}
}
src/main/java/com/xwd/hospital/server/service/impl/UserServiceImpl.java
浏览文件 @
34794915
...
@@ -9,6 +9,7 @@
...
@@ -9,6 +9,7 @@
package
com
.
xwd
.
hospital
.
server
.
service
.
impl
;
package
com
.
xwd
.
hospital
.
server
.
service
.
impl
;
import
java.lang.reflect.Field
;
import
java.lang.reflect.Field
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collection
;
...
@@ -19,6 +20,7 @@ import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
...
@@ -19,6 +20,7 @@ import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
import
cn.binarywang.wx.miniapp.bean.WxMaUserInfo
;
import
cn.binarywang.wx.miniapp.bean.WxMaUserInfo
;
import
cn.binarywang.wx.miniapp.util.WxMaConfigHolder
;
import
cn.binarywang.wx.miniapp.util.WxMaConfigHolder
;
import
cn.dev33.satoken.stp.StpUtil
;
import
cn.dev33.satoken.stp.StpUtil
;
import
com.xwd.hospital.server.config.WxMaProperties
;
import
com.xwd.hospital.server.constants.Constant
;
import
com.xwd.hospital.server.constants.Constant
;
import
com.xwd.hospital.server.domain.*
;
import
com.xwd.hospital.server.domain.*
;
import
com.xwd.hospital.server.dto.LoginDto
;
import
com.xwd.hospital.server.dto.LoginDto
;
...
@@ -54,6 +56,8 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -54,6 +56,8 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
@Resource
@Resource
private
WxMaService
wxMaService
;
private
WxMaService
wxMaService
;
@Resource
@Resource
private
WxMaProperties
wxMaProperties
;
@Resource
private
RedisService
redisService
;
private
RedisService
redisService
;
@Resource
@Resource
private
UserInfoService
userInfoService
;
private
UserInfoService
userInfoService
;
...
@@ -61,11 +65,13 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -61,11 +65,13 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
private
DoctorInfoService
doctorInfoService
;
private
DoctorInfoService
doctorInfoService
;
@Resource
@Resource
private
PatientInfoService
patientInfoService
;
private
PatientInfoService
patientInfoService
;
@Resource
private
DoctorServiceInfoService
doctorServiceInfoService
;
@Value
(
"$
(wx.miniapp.configs[0].appid)
"
)
@Value
(
"$
{wx.miniapp.configs[0].appid}
"
)
private
String
patientAppId
;
private
String
patientAppId
;
@Value
(
"$
(wx.miniapp.configs[1].appid)
"
)
@Value
(
"$
{wx.miniapp.configs[1].appid}
"
)
private
String
doctorAppId
;
private
String
doctorAppId
;
@Override
@Override
...
@@ -211,6 +217,9 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -211,6 +217,9 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
doctorInfoService
.
save
(
doctorInfo
);
doctorInfoService
.
save
(
doctorInfo
);
userDto
.
setDoctorInfo
(
doctorInfo
);
userDto
.
setDoctorInfo
(
doctorInfo
);
user
.
setObjId
(
doctorInfo
.
getId
());
user
.
setObjId
(
doctorInfo
.
getId
());
createService
(
doctorInfo
.
getId
());
}
}
super
.
saveOrUpdate
(
user
);
super
.
saveOrUpdate
(
user
);
Role
defaultRole
=
this
.
roleMapper
.
selectOne
(
Wrappers
.<
Role
>
lambdaQuery
().
eq
(
Role:
:
getName
,
roleName
));
Role
defaultRole
=
this
.
roleMapper
.
selectOne
(
Wrappers
.<
Role
>
lambdaQuery
().
eq
(
Role:
:
getName
,
roleName
));
...
@@ -234,10 +243,13 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -234,10 +243,13 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
//根据小程序登录源,切换相应配置
//根据小程序登录源,切换相应配置
if
(
loginDto
.
getUserType
()
==
UserTypeEnum
.
PATIENT
){
if
(
loginDto
.
getUserType
()
==
UserTypeEnum
.
PATIENT
){
wxMaService
.
switchover
(
patientAppId
);
wxMaService
.
switchover
(
patientAppId
);
log
.
debug
(
patientAppId
);
}
else
if
(
loginDto
.
getUserType
()
==
UserTypeEnum
.
DOCTOR
){
}
else
if
(
loginDto
.
getUserType
()
==
UserTypeEnum
.
DOCTOR
){
wxMaService
.
switchover
(
doctorAppId
);
wxMaService
.
switchover
(
doctorAppId
);
log
.
debug
(
doctorAppId
);
}
}
try
{
try
{
String
appid
=
wxMaProperties
.
getConfigs
().
get
(
0
).
getAppid
();
WxMaJscode2SessionResult
session
=
wxMaService
.
getUserService
().
getSessionInfo
(
loginDto
.
getCode
());
WxMaJscode2SessionResult
session
=
wxMaService
.
getUserService
().
getSessionInfo
(
loginDto
.
getCode
());
log
.
debug
(
session
.
getSessionKey
());
log
.
debug
(
session
.
getSessionKey
());
log
.
debug
(
session
.
getOpenid
());
log
.
debug
(
session
.
getOpenid
());
...
@@ -269,6 +281,28 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -269,6 +281,28 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
return
userDto
;
return
userDto
;
};
};
void
createService
(
Long
doctorId
){
ArrayList
<
DoctorServiceInfo
>
serviceList
=
new
ArrayList
<>(
3
);
DoctorServiceEnum
[]
serviceEnums
=
{
DoctorServiceEnum
.
ONLINE_INQUIRY
,
DoctorServiceEnum
.
PRESCRIPTION
,
DoctorServiceEnum
.
TELEPHONE
};
for
(
int
i
=
0
;
i
<
3
;
i
++)
{
DoctorServiceInfo
doctorServiceInfo
=
new
DoctorServiceInfo
();
doctorServiceInfo
.
setDoctorId
(
doctorId
);
doctorServiceInfo
.
setServiceState
(
YesNoEnum
.
NO
);
doctorServiceInfo
.
setServicePrice
(
new
BigDecimal
(
"100"
));
doctorServiceInfo
.
setServiceStartTime
(
"00:00"
);
doctorServiceInfo
.
setServiceEndTime
(
"23:59"
);
doctorServiceInfo
.
setServicePhoneNumber
(
""
);
doctorServiceInfo
.
setServiceName
(
serviceEnums
[
i
]);
serviceList
.
add
(
doctorServiceInfo
);
}
doctorServiceInfoService
.
saveBatch
(
serviceList
);
}
@Override
@Override
public
UserDto
miniAppRegister
(
RegisterDto
registserDto
)
{
public
UserDto
miniAppRegister
(
RegisterDto
registserDto
)
{
UserDto
userDto
=
new
UserDto
();
UserDto
userDto
=
new
UserDto
();
...
@@ -326,6 +360,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -326,6 +360,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
doctorInfoService
.
save
(
doctorInfo
);
doctorInfoService
.
save
(
doctorInfo
);
userDto
.
setDoctorInfo
(
doctorInfo
);
userDto
.
setDoctorInfo
(
doctorInfo
);
user
.
setObjId
(
doctorInfo
.
getId
());
user
.
setObjId
(
doctorInfo
.
getId
());
createService
(
doctorInfo
.
getId
());
}
}
Role
defaultRole
=
this
.
roleMapper
.
selectOne
(
Wrappers
.<
Role
>
lambdaQuery
().
eq
(
Role:
:
getName
,
roleName
));
Role
defaultRole
=
this
.
roleMapper
.
selectOne
(
Wrappers
.<
Role
>
lambdaQuery
().
eq
(
Role:
:
getName
,
roleName
));
...
@@ -409,6 +444,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -409,6 +444,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
return
userDto
;
return
userDto
;
}
}
@Override
public
UserDto
wxUpdate
(
UpdateInfoDto
updateUserDto
)
{
public
UserDto
wxUpdate
(
UpdateInfoDto
updateUserDto
)
{
UserDto
userDto
=
new
UserDto
();
UserDto
userDto
=
new
UserDto
();
...
@@ -483,4 +519,8 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
...
@@ -483,4 +519,8 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
// 如果所有字段都不为null,则返回true
// 如果所有字段都不为null,则返回true
return
true
;
return
true
;
}
}
public
void
test
(){
}
}
}
src/main/java/com/xwd/hospital/server/util/CallUtil.java
浏览文件 @
34794915
...
@@ -12,6 +12,7 @@ import org.apache.http.entity.StringEntity;
...
@@ -12,6 +12,7 @@ import org.apache.http.entity.StringEntity;
import
org.apache.http.impl.client.CloseableHttpClient
;
import
org.apache.http.impl.client.CloseableHttpClient
;
import
org.apache.http.impl.client.HttpClientBuilder
;
import
org.apache.http.impl.client.HttpClientBuilder
;
import
org.apache.http.util.EntityUtils
;
import
org.apache.http.util.EntityUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
retrofit2.Retrofit
;
import
retrofit2.Retrofit
;
import
java.io.IOException
;
import
java.io.IOException
;
...
@@ -23,60 +24,49 @@ import java.util.Map;
...
@@ -23,60 +24,49 @@ import java.util.Map;
@Slf4j
@Slf4j
public
class
CallUtil
{
public
class
CallUtil
{
public
static
final
String
account
=
"T00000029722"
;
//替换为您的账户
public
static
final
String
secret
=
"88275dd0-6667-11ee-a6e8-a9e02a8e273e"
;
//替换为您的api密码
public
static
final
String
host
=
"https://openapis.7moor.com"
;
public
static
void
call
()
{
String
time
=
getDateTime
();
String
sig
=
md5
(
account
+
secret
+
time
);
//查询坐席状态接口
String
interfacePath
=
"/v20160818/user/queryUserState/"
;
String
url
=
host
+
interfacePath
+
account
+
"?sig="
+
sig
;
// public void call() {
// String time = getDateTime();
// String sig = md5(account + secret + time);
// //查询坐席状态接口
// String interfacePath = "/v20160818/user/queryUserState/";
// String url = host + interfacePath + account + "?sig=" + sig;
//
//
// String auth = base64(account + ":" + time);
//
//
// HttpClientBuilder builder = HttpClientBuilder.create();
// CloseableHttpClient client = builder.build();
// HttpPost post = new HttpPost(url);
// post.addHeader("Accept", "application/json");
// post.addHeader("Content-Type","application/json;charset=utf-8");
// post.addHeader("Authorization",auth);
//
//
// StringEntity requestEntity = null;
// //根据需要发送的数据做相应替换
// requestEntity = new StringEntity("{\"exten\":\"8000\"}","UTF-8");
// post.setEntity(requestEntity);
// CloseableHttpResponse response = null;
// try {
// response = client.execute(post);
// HttpEntity entity = response.getEntity();
// log.info("the response is : " + EntityUtils.toString(entity,"utf8"));
// } catch (Exception e) {
// e.printStackTrace();
// } finally {
// if (response != null){
// try {
// response.close();
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
// }
// }
String
auth
=
base64
(
account
+
":"
+
time
);
HttpClientBuilder
builder
=
HttpClientBuilder
.
create
();
CloseableHttpClient
client
=
builder
.
build
();
HttpPost
post
=
new
HttpPost
(
url
);
post
.
addHeader
(
"Accept"
,
"application/json"
);
post
.
addHeader
(
"Content-Type"
,
"application/json;charset=utf-8"
);
post
.
addHeader
(
"Authorization"
,
auth
);
StringEntity
requestEntity
=
null
;
//根据需要发送的数据做相应替换
requestEntity
=
new
StringEntity
(
"{\"exten\":\"8000\"}"
,
"UTF-8"
);
post
.
setEntity
(
requestEntity
);
CloseableHttpResponse
response
=
null
;
try
{
response
=
client
.
execute
(
post
);
HttpEntity
entity
=
response
.
getEntity
();
log
.
info
(
"the response is : "
+
EntityUtils
.
toString
(
entity
,
"utf8"
));
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
finally
{
if
(
response
!=
null
){
try
{
response
.
close
();
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}
}
public
static
Map
<
String
,
String
>
getSigAndAuth
()
{
String
time
=
getDateTime
();
String
sig
=
md5
(
account
+
secret
+
time
);
String
auth
=
base64
(
account
+
":"
+
time
);
HashMap
<
String
,
String
>
map
=
new
HashMap
<>();
map
.
put
(
"sig"
,
sig
);
map
.
put
(
"auth"
,
auth
);
return
map
;
}
public
static
String
md5
(
String
text
)
{
public
static
String
md5
(
String
text
)
{
return
DigestUtils
.
md5Hex
(
text
).
toUpperCase
();
return
DigestUtils
.
md5Hex
(
text
).
toUpperCase
();
}
}
...
...
src/main/resources/application-dev.yml
浏览文件 @
34794915
...
@@ -21,20 +21,32 @@ knife4j:
...
@@ -21,20 +21,32 @@ knife4j:
wx
:
wx
:
miniapp
:
miniapp
:
configs
:
configs
:
-
appid
:
#微信小程序的appid
-
appid
:
11111
secret
:
#微信小程序的Secret
secret
:
123456
token
:
#微信小程序消息服务器配置的token
token
:
123
aesKey
:
#微信小程序消息服务器配置的EncodingAESKey
aesKey
:
123
msgDataFormat
:
JSON
msgDataFormat
:
JSON
-
appid
:
#微信小程序的appid
-
appid
:
wxc447fccb6a2745ce
secret
:
#微信小程序的Secret
secret
:
af277a664613a2276266eca024bff139
token
:
#微信小程序消息服务器配置的token
token
:
#微信小程序消息服务器配置的token
aesKey
:
#微信小程序消息服务器配置的EncodingAESKey
aesKey
:
#微信小程序消息服务器配置的EncodingAESKey
msgDataFormat
:
JSON
msgDataFormat
:
JSON
pay
:
pay
:
wx
:
wx
:
appId
:
appId
:
123
merchantId
:
merchantId
:
123
keyPath
:
keyPath
:
123
merchantSerialNumber
:
merchantSerialNumber
:
123
apiV3Key
:
apiV3Key
:
123
tencent
:
cloud
:
secretId
:
AKIDZzDD2e4IURBhy2sUrzsXxXu4zf7LL7ex
secretKey
:
A52lGXaTAev274oMk4CBzay9C6nIbjeM
sms
:
sdkAppId
:
1400859846
templateId
:
1946431
ronglian
:
cloud
:
account
:
T00000029722
secret
:
88275dd0-6667-11ee-a6e8-a9e02a8e273e
host
:
https://openapis.7moor.com
src/main/resources/application.yml
浏览文件 @
34794915
...
@@ -11,7 +11,7 @@ spring:
...
@@ -11,7 +11,7 @@ spring:
application
:
application
:
name
:
aiming-hospital-server
name
:
aiming-hospital-server
profiles
:
profiles
:
active
:
prod
active
:
dev
jackson
:
jackson
:
default-property-inclusion
:
non_null
default-property-inclusion
:
non_null
date-format
:
yyyy-MM-dd HH:mm:ss
date-format
:
yyyy-MM-dd HH:mm:ss
...
...
src/main/resources/mappers/DoctorInfoMapper.xml
浏览文件 @
34794915
...
@@ -59,7 +59,7 @@
...
@@ -59,7 +59,7 @@
left join pms_order o on o.doctor_id = di.id
left join pms_order o on o.doctor_id = di.id
left join pms_doctor_service_info s on s.doctor_id = di.id
left join pms_doctor_service_info s on s.doctor_id = di.id
left join pms_user_attention_info ua on ua.doctor_id = di.id
left join pms_user_attention_info ua on ua.doctor_id = di.id
where di.doctor_state = 'NORMAL' and
s.service_name = 'ONLINE_INQUIRY' and
pmq.audit_state = 'AUDIT_SUCCESS'
where di.doctor_state = 'NORMAL' and pmq.audit_state = 'AUDIT_SUCCESS'
<if
test=
"sickness != null and sickness != ''"
>
<if
test=
"sickness != null and sickness != ''"
>
AND di.expertise_area LIKE CONCAT('%', #{sickness}, '%')
AND di.expertise_area LIKE CONCAT('%', #{sickness}, '%')
</if>
</if>
...
@@ -69,7 +69,7 @@
...
@@ -69,7 +69,7 @@
<if
test=
"departmentId != null and departmentId != ''"
>
<if
test=
"departmentId != null and departmentId != ''"
>
AND pmq.department_id = #{departmentId}
AND pmq.department_id = #{departmentId}
</if>
</if>
GROUP BY di.doctor_name, h.hospital_name, d.department_name, di.expertise_area, di.introduction, pmq.title, u.avatar, s.service_price
GROUP BY di.
id, di.
doctor_name, h.hospital_name, d.department_name, di.expertise_area, di.introduction, pmq.title, u.avatar, s.service_price
</select>
</select>
<!-- 小程序查询医生详情 -->
<!-- 小程序查询医生详情 -->
...
@@ -93,4 +93,10 @@
...
@@ -93,4 +93,10 @@
left join pms_user_attention_info ua on ua.doctor_id = di.id
left join pms_user_attention_info ua on ua.doctor_id = di.id
where di.id = #{doctorId}
where di.id = #{doctorId}
</select>
</select>
<select
id=
"selectNameById"
resultType=
"string"
>
select di.doctor_name
from pms_doctor_info di
where di.id = #{doctorId}
</select>
</mapper>
</mapper>
src/main/resources/mappers/MedicalQualificationsPictureMapper.xml
浏览文件 @
34794915
...
@@ -36,4 +36,11 @@
...
@@ -36,4 +36,11 @@
from pms_medical_qualifications_picture
from pms_medical_qualifications_picture
${ew.customSqlSegment}
${ew.customSqlSegment}
</select>
</select>
<select
id=
"selectByQualificationId"
resultMap=
"ListResultMap"
>
select
<include
refid=
"com.xwd.hospital.server.repository.base.MedicalQualificationsPictureBaseMapper.Base_Column_List"
/>
from pms_medical_qualifications_picture
where medical_qualification_id = #{id}
</select>
</mapper>
</mapper>
src/main/resources/mappers/base/MedicalQualificationsBaseMapper.xml
浏览文件 @
34794915
...
@@ -14,12 +14,14 @@
...
@@ -14,12 +14,14 @@
<result
column=
"update_time"
jdbcType=
"TIMESTAMP"
property=
"updateTime"
/>
<result
column=
"update_time"
jdbcType=
"TIMESTAMP"
property=
"updateTime"
/>
</resultMap>
</resultMap>
<resultMap
id=
"ResultMap"
type=
"com.xwd.hospital.server.domain.MedicalQualifications"
extends=
"BaseResultMap"
>
<resultMap
id=
"ResultMap"
type=
"com.xwd.hospital.server.domain.MedicalQualifications"
extends=
"BaseResultMap"
>
<association
column=
"doctor_id"
property=
"doctor"
javaType=
"com.xwd.hospital.server.domain.DoctorInfo"
select=
"com.xwd.hospital.server.repository.DoctorInfoMapper.selectById"
/>
<association
column=
"hospital_id"
property=
"hospital"
javaType=
"com.xwd.hospital.server.domain.HospitalInfo"
<association
column=
"hospital_id"
property=
"hospital"
javaType=
"com.xwd.hospital.server.domain.HospitalInfo"
select=
"com.xwd.hospital.server.repository.HospitalInfoMapper.selectById"
/>
select=
"com.xwd.hospital.server.repository.HospitalInfoMapper.selectById"
/>
<association
column=
"department_id"
property=
"department"
javaType=
"com.xwd.hospital.server.domain.DepartmentInfo"
<association
column=
"department_id"
property=
"department"
javaType=
"com.xwd.hospital.server.domain.DepartmentInfo"
select=
"com.xwd.hospital.server.repository.DepartmentInfoMapper.selectById"
/>
select=
"com.xwd.hospital.server.repository.DepartmentInfoMapper.selectById"
/>
<association
column=
"doctor_id"
property=
"doctorName"
javaType=
"string"
select=
"com.xwd.hospital.server.repository.DoctorInfoMapper.selectNameById"
/>
<collection
column=
"id"
property=
"pictureList"
javaType=
"list"
select=
"com.xwd.hospital.server.repository.MedicalQualificationsPictureMapper.selectByQualificationId"
/>
</resultMap>
</resultMap>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
`id`, `doctor_id`, `hospital_id`, `department_id`, `title`, `audit_state`, `editor_id`, `editor_name`, `create_time`, `update_time`
`id`, `doctor_id`, `hospital_id`, `department_id`, `title`, `audit_state`, `editor_id`, `editor_name`, `create_time`, `update_time`
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论