即时通讯IM

master
MKing 2023-10-31 15:11:35 +08:00
parent 8f8dff4e52
commit aef54944c7
32 changed files with 675 additions and 122 deletions

View File

@ -0,0 +1,101 @@
package com.four.Instantmessaging.controller;
import com.alibaba.fastjson.JSONObject;
import com.four.Instantmessaging.service.InstantService;
import com.four.common.duck.Result;
import com.four.common.duck.request.UserRequest;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
@RestController
@RequestMapping("/instant")
@Log4j2
public class InstantController {
@Autowired
private InstantService instantService;
@Autowired
private HttpServletRequest request;
/**
* IM
* @param userRequest
* @return
*/
@PostMapping("/insertUser")
public Result insertUser(@RequestBody UserRequest userRequest){
log.info("功能名称添加IM用户,请求URI:{},请求方法:{},请求参数:{}",request.getRequestURI(),
request.getMethod(), JSONObject.toJSONString(userRequest));
Boolean b=instantService.insertUser(userRequest);
log.info("功能名称添加IM用户,请求URI:{},请求方法:{},返回结果:{}",request.getRequestURI(),
request.getMethod(), JSONObject.toJSONString(b));
return Result.success(b,"注册成功");
}
/**
* IM
* @param username
* @return
*/
@PostMapping("/delUser")
public Result delUser(@RequestParam String username){
log.info("功能名称:删除IM用户,请求URI:{},请求方法:{},请求参数:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(username));
Boolean b=instantService.delUser(username);
log.info("功能名称:删除IM用户,请求URI:{},请求方法:{},返回结果:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(b));
return Result.success(b,"注销成功");
}
/**
* IM
* @param userRequest
* @return
*/
@PostMapping("/insertFriend")
public Result insertFriend(@RequestBody UserRequest userRequest){
log.info("功能名称:添加IM好友,请求URI:{},请求方法:{},请求参数:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(userRequest));
Boolean b=instantService.insertFriend(userRequest);
log.info("功能名称:添加IM好友,请求URI:{},请求方法:{},返回结果:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(userRequest));
return Result.success(b,"添加成功");
}
/**
*
* @param userRequest
* @return
*/
@PostMapping("/delFriend")
public Result deleteFriend(@RequestBody UserRequest userRequest){
log.info("功能名称:删除好友,请求URI:{},请求方法:{},请求参数:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(userRequest));
Boolean b=instantService.deleteFriend(userRequest);
log.info("功能名称:删除好友,请求URI:{},请求方法:{},返回结果:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(b));
return Result.success(b,"删除成功");
}
/**
* IM
* @param userRequest
* @return
*/
@PostMapping("/sendMsg")
public Result sendMsg(@RequestBody UserRequest userRequest){
log.info("功能名称:IM发送消息,请求URI:{},请求方法:{},请求参数:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(userRequest));
Boolean b=instantService.sendMsg(userRequest);
log.info("功能名称:IM发送消息,请求URI:{},请求方法:{},返回结果:{}",request.getRequestURI(),
request.getMethod(),JSONObject.toJSONString(b));
return Result.success(b,"发送成功");
}
}

View File

@ -0,0 +1,56 @@
package com.four.Instantmessaging.service.Impl;
import com.four.Instantmessaging.service.InstantService;
import com.four.common.duck.request.UserRequest;
import com.four.util.HXUtil;
import org.springframework.stereotype.Service;
@Service
public class InstantServiceImpl implements InstantService {
@Override
public Boolean insertUser(UserRequest userRequest) {
boolean b = HXUtil.addUser(userRequest.getUsername(), userRequest.getPassword());
if (b){
return true;
}
return false;
}
@Override
public Boolean delUser(String username) {
boolean b = HXUtil.deleteUser(username);
if (b){
return true;
}
return false;
}
@Override
public Boolean insertFriend(UserRequest userRequest) {
boolean b = HXUtil.addFriend(userRequest.getUsername(), userRequest.getUsername());
if (b){
return true;
}
return false;
}
@Override
public Boolean deleteFriend(UserRequest userRequest) {
boolean b = HXUtil.deleteFriend(userRequest.getUsername(), userRequest.getUsername());
if (b){
return true;
}
return false;
}
@Override
public Boolean sendMsg(UserRequest userRequest) {
boolean b = HXUtil.sendToUser(userRequest.getUsername(), userRequest.getUsername(), userRequest.getMsg());
if (b){
return true;
}
return false;
}
}

View File

@ -0,0 +1,15 @@
package com.four.Instantmessaging.service;
import com.four.common.duck.request.UserRequest;
public interface InstantService {
Boolean insertUser(UserRequest userRequest);
Boolean delUser(String username);
Boolean insertFriend(UserRequest userRequest);
Boolean deleteFriend(UserRequest userRequest);
Boolean sendMsg(UserRequest userRequest);
}

View File

@ -0,0 +1,11 @@
package com.four;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class InterrogationApp {
public static void main(String[] args) {
SpringApplication.run(InterrogationApp.class);
}
}

View File

@ -25,6 +25,11 @@ public class GiftRecordDoctorController {
@Autowired
private HttpServletRequest request;
/**
*
* @param registrationInformationId
* @return
*/
@PostMapping("/ShowGiftRecordDoctor")
public Result<List<GiftRecord>> ShowGiftRecordDoctor(@RequestParam Long registrationInformationId){
log.info("功能名称:查看患者送给自己的礼物,请求URI:{},请求方法:{},请求参数:{}",request.getRequestURI(),

View File

@ -25,6 +25,11 @@ public class PatientDoctorController {
@Autowired
private HttpServletRequest request;
/**
*
* @param registrationInformationId
* @return
*/
@PostMapping("/ShowPatientEvaluatorDoctor")
public Result<List<PatientEvaluator>> ShowPatientEvaluatorDoctor(@RequestParam Long registrationInformationId){
log.info("功能名称:医生查看患者对自己评价,请求URI:{},请求方法:{},请求参数:{}",request.getRequestURI(),

View File

@ -0,0 +1,20 @@
package com.four.util;
public class HXUser {
private String uuid; // 用户的UUID标识字段
private String type; // 类型“user”用户类型
private Long created;
private Long modified;
private String username; // 用户名,也就是环信 ID,(唯一,非空)
private String nickName; // 昵称
private boolean activated; // 用户是否已激活“true”已激活“false“封禁封禁需要通过解禁接口进行解禁才能正常登录
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
}

View File

@ -0,0 +1,217 @@
package com.four.util;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.springframework.http.*;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import java.util.*;
/**
*
*/
public class HXUtil {
private static RestTemplate restTemplate = new RestTemplate();
// 企业的唯一标识,开发者在环信开发者管理后台注册账号时填写的企业 ID
private static final String ORG_NAME = "1122161011178276";
// App的client_id
private static final String CLIENT_ID = "YXA6Irz_oI-GEead-FFvbfaMbQ";
// App的client_secret
private static final String CLIENT_SECRET = "YXA6VsR5JypETS3iPFvNNxYklmho0Vw";
// 同一“企业”下“APP”唯一标识开发者在环信开发者管理后台创建应用时填写的“应用名称”
private static final String APP_NAME = "testapp";
// 链接前缀
private static final String URL_PREFIX = "http://a1.easemob.com/" + ORG_NAME + "/" + APP_NAME + "/";
// 缓存的token
private static Token token;
// token的失效时间
private static long expiresTime;
public enum HXMessageType {
txt,// 文本
img,// 图片
loc,// 位置
audio,// 音频
video,// 视频
file// 文件
}
/**
* Token
* 75184000
* 60
* 7
* @return token
*/
public static Token getToken() {
// 判断Token是否已经过期如果过期需要重新获取
if (token == null || expiresTime < new Date().getTime()) {
try {
JSONObject body = new JSONObject();
body.put("grant_type", "client_credentials");
body.put("client_id", CLIENT_ID );
body.put("client_secret", CLIENT_SECRET );
HttpEntity httpEntity = new HttpEntity(body.toString(), null);
ResponseEntity<Token> tokenResponseEntity = restTemplate.postForEntity(URL_PREFIX + "token", httpEntity, Token.class);
token = tokenResponseEntity.getBody();
// 设置7天后过期
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, 7);
expiresTime = c.getTime().getTime();
} catch (RestClientException e) {
e.printStackTrace();
}
}
return token;
}
/**
*
*
* @param username
* @param password
* @return
*/
public static boolean addUser(String username, String password) {
try {
JSONArray body = new JSONArray();
JSONObject jsonObject = new JSONObject();
jsonObject.put("username", username);
jsonObject.put("password", password);
body.add(jsonObject);
HttpEntity httpEntity = new HttpEntity(body.toString(), null);
ResponseEntity responseEntity = restTemplate.postForEntity(URL_PREFIX + "users", httpEntity, null);
return responseEntity.getStatusCodeValue() == 200;
} catch (RestClientException e) {
e.printStackTrace();
return false;
}
}
/**
*
*
* @param username
* @param newpassword
* @return
*/
public static boolean updatePassword(String username, String newpassword) {
try {
JSONObject body = new JSONObject();
body.put("newpassword", newpassword);
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "Bearer " + getToken().getAccess_token());
HttpEntity httpEntity = new HttpEntity(body.toString(), headers);
ResponseEntity responseEntity = restTemplate.postForEntity(URL_PREFIX + "users/{username}/password", httpEntity, null, username);
System.out.println(responseEntity.getStatusCodeValue());
return responseEntity.getStatusCodeValue() == 200;
} catch (RestClientException e) {
e.printStackTrace();
return false;
}
}
/**
*
*
* @param username
*/
public static boolean deleteUser(String username) {
try {
HttpEntity httpEntity = new HttpEntity(null, getHttpHeaders(MediaType.TEXT_PLAIN, MediaType.APPLICATION_JSON));
ResponseEntity<HXUser> responseEntity = restTemplate.exchange(URL_PREFIX + "users/{username}", HttpMethod.DELETE, httpEntity, HXUser.class, username);
System.out.println(responseEntity.getStatusCodeValue());
return responseEntity.getStatusCodeValue() == 200;
} catch (RestClientException e) {
e.printStackTrace();
return false;
}
}
/**
*
*
* @param ownerUsername
* @param friendName
* @return
*/
public static boolean addFriend(String ownerUsername, String friendName) {
try {
HttpEntity httpEntity = new HttpEntity(null, getHttpHeaders(MediaType.APPLICATION_JSON, MediaType.APPLICATION_JSON));
ResponseEntity responseEntity = restTemplate.postForEntity(URL_PREFIX + "users/{owner_username}/contacts/users/{friend_username}", httpEntity, HXUser.class, ownerUsername, friendName);
System.out.println(responseEntity.getStatusCodeValue());
return responseEntity.getStatusCodeValue() == 200;
} catch (RestClientException e) {
e.printStackTrace();
return false;
}
}
/**
*
*
* @param ownerUsername
* @param friendName
* @return
*/
public static boolean deleteFriend(String ownerUsername, String friendName) {
try {
HttpEntity httpEntity = new HttpEntity(null, getHttpHeaders(MediaType.APPLICATION_JSON, MediaType.APPLICATION_JSON));
ResponseEntity responseEntity = restTemplate.exchange(URL_PREFIX + "users/{owner_username}/contacts/users/{friend_username}", HttpMethod.DELETE, httpEntity, HXUser.class, ownerUsername, friendName);
System.out.println(responseEntity.getStatusCodeValue());
return responseEntity.getStatusCodeValue() == 200;
} catch (RestClientException e) {
e.printStackTrace();
return false;
}
}
/**
*
*
* @param sendUser
* @param targetUser
* @param msg
* @return
*/
public static boolean sendToUser(String sendUser, String targetUser, String msg) {
try {
JSONObject body = new JSONObject();
body.put("target_type", "users");
JSONArray targetUserjson = new JSONArray();
targetUserjson.add(targetUser);
body.put("target", targetUserjson);
JSONObject msgJson = new JSONObject();
msgJson.put("type", HXMessageType.txt.name());
msgJson.put("msg", msg);
body.put("msg", msgJson);
body.put("from", sendUser);
HttpEntity httpEntity = new HttpEntity(body, getHttpHeaders(MediaType.APPLICATION_JSON, MediaType.APPLICATION_JSON));
ResponseEntity responseEntity = restTemplate.postForEntity(URL_PREFIX + "messages", httpEntity, null);
System.out.println(responseEntity.getStatusCodeValue());
return responseEntity.getStatusCodeValue() == 200;
} catch (RestClientException e) {
e.printStackTrace();
return false;
}
}
/**
* HttpHeaders
*
* @param contentType
* @param accept
* @return HttpHeaders
*/
private static HttpHeaders getHttpHeaders(MediaType contentType, MediaType... accept) {
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "Bearer " + getToken().getAccess_token());
headers.setContentType(contentType != null ? contentType : MediaType.APPLICATION_JSON);
headers.setAccept(Arrays.asList((accept != null && accept.length > 0) ? accept : new MediaType[]{MediaType.APPLICATION_JSON}));
return headers;
}
}

View File

@ -0,0 +1,43 @@
package com.four.util;
public class Token {
private String access_token; // 有效的token字符串
private String expires_in; // token 有效时间,以秒为单位,在有效期内不需要重复获取
private String application; // 当前 App 的 UUID 值
// getter and setter
public String getAccess_token() {
return access_token;
}
public void setAccess_token(String access_token) {
this.access_token = access_token;
}
public String getExpires_in() {
return expires_in;
}
public void setExpires_in(String expires_in) {
this.expires_in = expires_in;
}
public String getApplication() {
return application;
}
public void setApplication(String application) {
this.application = application;
}
public Token() {
}
public Token(String access_token, String expires_in, String application) {
this.access_token = access_token;
this.expires_in = expires_in;
this.application = application;
}
}

View File

@ -6,8 +6,14 @@
<insert id="insertFollowDoctor">
insert into follow_doctor(user_id, registration_informaion_id)
values (#{userId}, #{registrationInformationId})
insert into follow_doctor(
<if test="null!=userId and ''!=userId">user_id,</if>
<if test="null!=registrationInformationId and ''!=registrationInformationId">registration_information_id</if>
)
values (
<if test="null!=userId and ''!=userId">#{userId},</if>
<if test="null!=registrationInformationId and ''!=registrationInformationId">#{registrationInformationId}</if>
)
</insert>
<delete id="delFollowDoctor">
delete
@ -15,7 +21,9 @@
where registration_informaion_id = #{registrationInformationId}
</delete>
<select id="ShowFollowDoctor" resultType="com.four.common.duck.interrogation.FollowDoctor">
select *
select follow_doctor_id,
user_id,
registration_information_id
from follow_doctor
</select>
</mapper>

View File

@ -4,22 +4,60 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.four.patient.mapper.GiftMapper">
<insert id="insertGiftLog">
insert into gift_record(giver_id, gift_id, gift_giving_time)
values (#{giverId}, #{giftId}, #{giftGivingTime})
insert into gift_record(
<if test="null!=giverId and ''!=giverId">giver_id,</if>
<if test="null!=giftId and giftId!=''"> gift_id,</if>
gift_giving_time)
values (
<if test="null!=giverId and ''!=giverId">#{giverId},</if>
<if test="null!=giftId and ''!=giftId">#{giftId},</if>
#{giftGivingTime})
</insert>
<update id="updPatientMoney">
update sys_user set user_money=#{patientMoney} where user_id=#{userid}
update sys_user set
<if test="null!=userMoney and ''!=userMoney">user_money=#{patientMoney}</if>
where user_id=#{userid}
</update>
<update id="updDoctorMoney">
update sys_user set
<if test="null!=userMoney and ''!=userMoney">user_money=#{doctorMoney}</if>
where user_id=#{userId}
</update>
<select id="ShowGiftAll" resultType="com.four.common.duck.gift.Gift">
select *
select
gift_id,
gift_name,
gift_photo,
gift_price
from gift
</select>
<select id="findByGiftId" resultType="com.four.common.duck.gift.Gift">
select *
select gift_id,
gift_name,
gift_photo,
gift_price
from gift
where gift_id = #{giftId}
<where>
<if test="null!=gift_id and ''!=gift_id">
gift_id = #{giftId}
</if>
</where>
</select>
<select id="findByRegistration" resultType="com.four.common.duck.interrogation.RegistrationInformation">
select user_id from registration_information
<where>
<if test="null!=registration_information_id and ''!=registration_information_id">
registration_information_id=#{registrationInformationId}
</if>
</where>
</select>
<select id="findByUserId" resultType="com.four.common.duck.my.User">
select user_id,
user_money
from sys_user
</select>
</mapper>

View File

@ -4,14 +4,27 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.four.patient.mapper.PatientEvaluatorMapper">
<insert id="insertPatientEvaluator">
insert into patient_evaluator(patient_id, registration_information_id,
comment_content, comment_time)
values (#{patientId}, ${registrationInformationId}, ${commentContent}, #{commentTime})
insert into patient_evaluator(
<if test="null!=patientId and ''!=patientId">patient_id,</if>
<if test="null!=registrationInformationId and ''!=registrationInformationId">registration_information_id,</if>
<if test="null!=commentContent and ''!=commentContent"> comment_content,</if>
comment_time
)
values (
<if test="null!=patientId and ''!=patientId">#{patientId},</if>
<if test="null!=registrationInformationId and ''!=registrationInformationId">${registrationInformationId},</if>
<if test="null!=commentContent and ''!=commentContent">${commentContent},</if>
#{commentTime}
)
</insert>
<select id="ShowPatientEvaluatorAll" resultType="com.four.common.duck.interrogation.PatientEvaluator">
select *
select patient_evaluator_id,
patient_id,
registration_information_id,
comment_content,
comment_time
from patient_evaluator
</select>
</mapper>

View File

@ -2,103 +2,90 @@
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.four.patient.mapper.RegistrationInformationMapper">
<insert id="insertFollowDoctor">
insert into follow_doctor(follow_doctor_id, user_id, registration_information_id)
values (#{followDoctorId}, #{userId}, #{registrationInformationId})
</insert>
<insert id="insertHistoricalConsultation">
insert into historical_consultation(patient_id, registration_information_id,
historical_consultation_status)
values (#{patientId}, #{registrationInformationId}, 2)
</insert>
<insert id="insertPatientEvaluator">
insert into patient_evaluator(patient_id, registration_information_id,
comment_content, comment_time)
values (#{patientId},
#{registrationInformationId, #{commentContent, #{commentTime})
</insert>
<insert id="insertGiftLog">
<resultMap id="ResponseRegistrationInformation" type="com.four.common.duck.response.ResponseRegistrationInformation">
<id property="registrationInformationId" column="registration_information_id"/>
<result property="userId" column="user_id"/>
<result property="realName" column="real_name"/>
<result property="affiliatedHospital" column="affiliated_hospital"/>
<result property="medicalDepartmentId" column="medical_department_id"/>
<result property="professionalTitleDoctorId" column="professional_title_doctor_id"/>
<result property="personalResume" column="personal_resume"/>
<result property="areaExpertise" column="area_expertise"/>
<result property="registrationTime" column="registration_time"/>
<result property="numberPatientsServed" column="number_patients_served"/>
<result property="consultingPrice" column="consulting_price"/>
<result property="praise" column="praise"/>
<result property="registrationInformationExamineStatus" column="registration_information_examine_status"/>
<result property="registrationInformationMedicStatus" column="registration_information_medic_status"/>
<result property="name" column="name"/>
<result property="professionalTitleDoctorName" column="professional_title_doctor_name"/>
<result property="username" column="username"/>
</resultMap>
</insert>
<update id="updatePatientMoney">
update user
set user_money=#{patientMoney}
where user_id = #{userId}
</update>
<update id="updateDoctorMoney">
update user
set user_money=#{doctorMoney}
where user_id = #{userId}
</update>
<delete id="delFollowDoctor">
delete
from follow_doctor
where registration_information_id = #{registrationInformationId}
</delete>
<select id="ShowRegistrationInformationAllPrice"
resultType="com.four.common.duck.response.ResponseRegistrationInformation">
SELECT r.*, s.`name`, p.professional_title_doctor_name
<sql id="selectRegistrationInformation">
SELECT r.registration_information_id,
r.user_id,r.real_name,
r.affiliated_hospital,
r.medical_department_id,
r.professional_title_doctor_id,
r.personal_resume,
r.area_expertise,
r.registration_time,
r.number_patients_served,
r.consulting_price,
r.praise,
r.registration_information_examine_status,
r.registration_information_medic_status,
s.`name`, p.professional_title_doctor_name
FROM `registration_information` r
LEFT JOIN symptoms_drugs s ON r.medical_department_id = s.id
LEFT JOIN professional_title_doctor p
ON r.professional_title_doctor_id = p.professional_title_doctor_id
WHERE r.medical_department_id = #{medicalDepartmentId}
</sql>
<select id="ShowRegistrationInformationAllPrice" resultMap="ResponseRegistrationInformation">
<include refid="selectRegistrationInformation"></include>
<where>
<if test="null!=medicalDepartmentId and ''!=medicalDepartmentId">
r.medical_department_id = #{medicalDepartmentId}
</if>
</where>
ORDER BY r.consulting_price DESC
</select>
<select id="ShowRegistrationInformationNumber"
resultType="com.four.common.duck.response.ResponseRegistrationInformation">
SELECT r.*, s.`name`, p.professional_title_doctor_name
FROM `registration_information` r
LEFT JOIN symptoms_drugs s ON r.medical_department_id = s.id
LEFT JOIN professional_title_doctor p
ON r.professional_title_doctor_id = p.professional_title_doctor_id
WHERE r.medical_department_id = #{medicaDepartmentId}
<select id="ShowRegistrationInformationNumber" resultMap="ResponseRegistrationInformation">
<include refid="selectRegistrationInformation"></include>
<where>
<if test="null!=medicalDepartmentId and ''!=medicalDepartmentId">
r.medical_department_id = #{medicalDepartmentId}
</if>
</where>
ORDER BY r.number_patients_served DESC
</select>
<select id="ShowRegistrationInformationPraise"
resultType="com.four.common.duck.response.ResponseRegistrationInformation">
SELECT r.*, s.`name`, p.professional_title_doctor_name
FROM `registration_information` r
LEFT JOIN symptoms_drugs s ON r.medical_department_id = s.id
LEFT JOIN professional_title_doctor p
ON r.professional_title_doctor_id = p.professional_title_doctor_id
WHERE r.medical_department_id = #{medicaDepartmentId}
<select id="ShowRegistrationInformationPraise" resultMap="ResponseRegistrationInformation">
<include refid="selectRegistrationInformation"></include>
<where>
<if test="null!=medicalDepartmentId and ''!=medicalDepartmentId">
r.medical_department_id = #{medicalDepartmentId}
</if>
</where>
ORDER BY r.praise DESC
</select>
<select id="ShowDepartmentAll" resultType="com.four.common.duck.communitypatients.SymptomsDrugs">
select symptoms_drugs.id, symptoms_drugs.name
select symptoms_drugs.id,
symptoms_drugs.name
from symptoms_drugs
where pid = 1
</select>
<select id="ShowFollowDoctor" resultType="com.four.common.duck.interrogation.FollowDoctor">
select *
from follow_doctor
</select>
<select id="ShowPatientEvaluatorAll" resultType="com.four.common.duck.interrogation.PatientEvaluator">
select *
from patient_evaluator
</select>
<select id="ShowHistoricalConsultation"
resultType="com.four.common.duck.interrogation.HistoricalConsultation">
select *
from historical_consultation
</select>
<select id="findById" resultType="com.four.common.duck.interrogation.RegistrationInformation">
select registration_information_id,consulting_price
from registration_information
where registration_information_id = #{registrationInformationId}
</select>
<select id="ShowGiftAll" resultType="com.four.common.duck.gift.Gift">
select *
from gift
</select>
<select id="findByUserId" resultType="com.four.common.duck.my.User">
select user_id,user_money from sys_user where user_id=#{userId}
</select>
<select id="findByGiftId" resultType="com.four.common.duck.gift.Gift">
select gift.gift_id,gift.gift_name,gift.gift_price from gift_id=#{giftId}
<select id="ShowRegistrationInformationAll" resultMap="ResponseRegistrationInformation">
<include refid="selectRegistrationInformation"></include>
<where>
<if test="null!=medicalDepartmentId and ''!=medicalDepartmentId">
r.medical_department_id=#{medicalDepartmentId}
</if>
</where>
ORDER BY .consulting_price,r.number_patients_served,r.praise DESC
</select>
</mapper>

View File

@ -1,5 +1,5 @@
#Generated by Maven
#Thu Oct 26 14:38:34 CST 2023
#Mon Oct 30 20:34:36 CST 2023
groupId=com.four
artifactId=dimensional-health-interrogation
version=1.0-SNAPSHOT

View File

@ -1,23 +1,40 @@
com\four\patient\service\FollowDoctorService.class
com\four\patient\service\GiftService.class
com\four\patient\service\Impl\GiftServiceImpl.class
com\four\patient\until\HXUtil$HXMessageType.class
com\four\patient\PatientApp.class
com\four\patient\config\HXUser.class
com\four\patient\until\HXUtil.class
com\four\patient\service\HistoricalConsultationService.class
com\four\util\HXUtil.class
com\four\util\HXUser.class
com\four\doctor\controller\HistoricalDoctorController.class
com\four\patient\mapper\GiftMapper.class
com\four\Instantmessaging\service\InstantService.class
com\four\patient\mapper\RegistrationInformationMapper.class
com\four\patient\config\Friend.class
com\four\patient\controller\FollowDoctorController.class
com\four\patient\service\Impl\FollowDoctorServiceImpl.class
com\four\patient\controller\PatientEvaluatorController.class
com\four\patient\controller\RegistrationInformationController.class
com\four\patient\service\PatientEvaluatorService.class
com\four\patient\config\Token.class
com\four\patient\service\Impl\PatientEvaluatorServiceImpl.class
com\four\doctor\service\GiftRecordDoctorService.class
com\four\doctor\mapper\PatientDoctorMapper.class
com\four\Instantmessaging\controller\InstantController.class
com\four\patient\service\RegistrationInformationService.class
com\four\patient\mapper\FollowDoctorMapper.class
com\four\patient\mapper\PatientEvaluatorMapper.class
com\four\patient\config\SendMsg.class
com\four\patient\service\Impl\RegistrationInformationServiceImpl.class
com\four\util\Token.class
com\four\doctor\service\Impl\HistoricalDoctorServiceImpl.class
com\four\util\HXUtil$HXMessageType.class
com\four\patient\service\FollowDoctorService.class
com\four\patient\service\Impl\GiftServiceImpl.class
com\four\doctor\service\HistoricalDoctorService.class
com\four\patient\controller\HistoricalConsultationController.class
com\four\doctor\service\PatientDoctorService.class
com\four\doctor\service\Impl\GiftRecordDoctorServiceImpl.class
com\four\patient\controller\FollowDoctorController.class
com\four\patient\service\Impl\HistoricalConsultationServiceImpl.class
com\four\doctor\controller\GiftRecordDoctorController.class
com\four\doctor\service\Impl\PatientDoctorServiceImpl.class
com\four\patient\service\PatientEvaluatorService.class
com\four\doctor\mapper\GiftRecordDoctorMapper.class
com\four\doctor\mapper\HistoricalDoctorMapper.class
com\four\Instantmessaging\service\Impl\InstantServiceImpl.class
com\four\InterrogationApp.class
com\four\patient\service\Impl\PatientEvaluatorServiceImpl.class
com\four\patient\mapper\HistoricalConsultationMapper.class
com\four\doctor\controller\PatientDoctorController.class
com\four\patient\controller\GiftController.class

View File

@ -1,22 +1,39 @@
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\PatientEvaluatorService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\config\SendMsg.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\GiftService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\service\Impl\PatientDoctorServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\service\Impl\HistoricalDoctorServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\Impl\PatientEvaluatorServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\controller\GiftRecordDoctorController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\util\Token.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\controller\FollowDoctorController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\mapper\GiftMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\mapper\FollowDoctorMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\Impl\FollowDoctorServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\mapper\HistoricalDoctorMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\mapper\RegistrationInformationMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\controller\PatientEvaluatorController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\util\HXUser.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\controller\HistoricalConsultationController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\RegistrationInformationService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\Impl\GiftServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\until\HXUtil.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\controller\RegistrationInformationController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\mapper\PatientEvaluatorMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\config\Friend.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\InterrogationApp.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\mapper\GiftRecordDoctorMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\FollowDoctorService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\config\Token.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\config\HXUser.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\PatientApp.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\service\HistoricalDoctorService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\controller\HistoricalDoctorController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\Instantmessaging\controller\InstantController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\controller\GiftController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\HistoricalConsultationService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\Impl\RegistrationInformationServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\Impl\HistoricalConsultationServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\PatientEvaluatorService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\GiftService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\service\Impl\GiftRecordDoctorServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\mapper\PatientDoctorMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\mapper\HistoricalConsultationMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\controller\PatientEvaluatorController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\service\Impl\GiftServiceImpl.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\service\PatientDoctorService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\patient\mapper\PatientEvaluatorMapper.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\service\GiftRecordDoctorService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\Instantmessaging\service\InstantService.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\doctor\controller\PatientDoctorController.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\util\HXUtil.java
D:\Project\dimensional-health-interrogation\src\main\java\com\four\Instantmessaging\service\Impl\InstantServiceImpl.java