diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 000000000..7b016a89f --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.compile.nullAnalysis.mode": "automatic" +} \ No newline at end of file diff --git a/server_code/src/main/java/com/cl/controller/YishengyuyueController.java b/server_code/src/main/java/com/cl/controller/YishengyuyueController.java index fa30f8a91..fc9b1b760 100644 --- a/server_code/src/main/java/com/cl/controller/YishengyuyueController.java +++ b/server_code/src/main/java/com/cl/controller/YishengyuyueController.java @@ -25,9 +25,14 @@ import com.cl.annotation.SysLog; import com.cl.entity.YishengyuyueEntity; +import com.cl.entity.YishengEntity; +import com.cl.entity.YonghuEntity; import com.cl.entity.view.YishengyuyueView; import com.cl.service.YishengyuyueService; +import com.cl.service.YishengService; +import com.cl.service.YonghuService; +import com.cl.service.SmsService; import com.cl.service.TokenService; import com.cl.utils.PageUtils; import com.cl.utils.R; @@ -48,6 +53,15 @@ public class YishengyuyueController { @Autowired private YishengyuyueService yishengyuyueService; + @Autowired + private YishengService yishengService; + + @Autowired + private YonghuService yonghuService; + + @Autowired + private SmsService smsService; + @@ -159,7 +173,19 @@ public R save(@RequestBody YishengyuyueEntity yishengyuyue, HttpServletRequest r @RequestMapping("/add") public R add(@RequestBody YishengyuyueEntity yishengyuyue, HttpServletRequest request){ //ValidatorUtils.validateEntity(yishengyuyue); + + // 校验用户手机号码 + if (yishengyuyue.getShouji() != null && !yishengyuyue.getShouji().trim().isEmpty()) { + if (!smsService.isValidPhoneNumber(yishengyuyue.getShouji())) { + return R.error("用户手机号码格式不正确"); + } + } + yishengyuyueService.insert(yishengyuyue); + + // 预约成功后发送短信通知医生 + sendSmsToDoctor(yishengyuyue); + return R.ok(); } @@ -190,13 +216,121 @@ public R update(@RequestBody Long[] ids, @RequestParam String sfsh, @RequestPara yishengyuyue.setSfsh(sfsh); yishengyuyue.setShhf(shhf); list.add(yishengyuyue); + + // 审核通过后发送短信通知用户 + if ("是".equals(sfsh)) { + sendSmsToUser(yishengyuyue); + } } yishengyuyueService.updateBatchById(list); return R.ok(); } + /** + * 发送短信通知医生 + * @param yishengyuyue 预约信息 + */ + private void sendSmsToDoctor(YishengyuyueEntity yishengyuyue) { + try { + // 获取医生信息 + String yishengzhanghao = yishengyuyue.getYishengzhanghao(); + if (yishengzhanghao == null || yishengzhanghao.trim().isEmpty()) { + return; + } - + YishengEntity yisheng = yishengService.selectOne( + new EntityWrapper().eq("yishengzhanghao", yishengzhanghao) + ); + + if (yisheng == null) { + return; + } + + // 校验医生手机号码 + String doctorPhone = yisheng.getDianhua(); + if (doctorPhone == null || doctorPhone.trim().isEmpty()) { + return; + } + + if (!smsService.isValidPhoneNumber(doctorPhone)) { + return; + } + + // 构建短信内容 + String message = String.format( + "【医疗预约系统】您好,%s医生,用户%s预约了您的诊疗服务,预约时间:%s,请登录系统查看详情。", + yisheng.getYishengxingming() != null ? yisheng.getYishengxingming() : yishengzhanghao, + yishengyuyue.getZhanghao() != null ? yishengyuyue.getZhanghao() : "未知用户", + yishengyuyue.getYuyueshijian() != null ? + new SimpleDateFormat("yyyy-MM-dd HH:mm").format(yishengyuyue.getYuyueshijian()) : "待定" + ); + + // 发送短信(带重试机制,最多重试2次) + smsService.sendSmsWithRetry(doctorPhone, message, 2); + + } catch (Exception e) { + // 短信发送失败不影响主业务流程 + } + } + + /** + * 发送短信通知用户 + * @param yishengyuyue 预约信息 + */ + private void sendSmsToUser(YishengyuyueEntity yishengyuyue) { + try { + // 获取用户信息 + String zhanghao = yishengyuyue.getZhanghao(); + if (zhanghao == null || zhanghao.trim().isEmpty()) { + return; + } + + YonghuEntity yonghu = yonghuService.selectOne( + new EntityWrapper().eq("zhanghao", zhanghao) + ); + + if (yonghu == null) { + return; + } + + // 校验用户手机号码 + String userPhone = yonghu.getShouji(); + if (userPhone == null || userPhone.trim().isEmpty()) { + return; + } + + if (!smsService.isValidPhoneNumber(userPhone)) { + return; + } + + // 获取医生信息 + String yishengzhanghao = yishengyuyue.getYishengzhanghao(); + String yishengName = yishengzhanghao; + if (yishengzhanghao != null && !yishengzhanghao.trim().isEmpty()) { + YishengEntity yisheng = yishengService.selectOne( + new EntityWrapper().eq("yishengzhanghao", yishengzhanghao) + ); + if (yisheng != null && yisheng.getYishengxingming() != null) { + yishengName = yisheng.getYishengxingming(); + } + } + + // 构建短信内容 + String message = String.format( + "【医疗预约系统】您好,%s,您的预约申请已被%s医生审核通过,预约时间:%s,请按时就诊。", + yonghu.getXingming() != null ? yonghu.getXingming() : zhanghao, + yishengName, + yishengyuyue.getYuyueshijian() != null ? + new SimpleDateFormat("yyyy-MM-dd HH:mm").format(yishengyuyue.getYuyueshijian()) : "待定" + ); + + // 发送短信(带重试机制,最多重试2次) + smsService.sendSmsWithRetry(userPhone, message, 2); + + } catch (Exception e) { + // 短信发送失败不影响主业务流程 + } + } /** * 删除 diff --git a/server_code/src/main/java/com/cl/service/SmsService.java b/server_code/src/main/java/com/cl/service/SmsService.java new file mode 100644 index 000000000..b056f2ee8 --- /dev/null +++ b/server_code/src/main/java/com/cl/service/SmsService.java @@ -0,0 +1,34 @@ +package com.cl.service; + +/** + * 短信服务接口 + * @author + * @email + * @date 2025-03-27 15:44:15 + */ +public interface SmsService { + + /** + * 发送短信 + * @param phoneNumber 手机号码 + * @param message 短信内容 + * @return 是否发送成功 + */ + boolean sendSms(String phoneNumber, String message); + + /** + * 发送短信(带重试机制) + * @param phoneNumber 手机号码 + * @param message 短信内容 + * @param maxRetries 最大重试次数 + * @return 是否发送成功 + */ + boolean sendSmsWithRetry(String phoneNumber, String message, int maxRetries); + + /** + * 验证手机号码格式 + * @param phoneNumber 手机号码 + * @return 是否有效 + */ + boolean isValidPhoneNumber(String phoneNumber); +} diff --git a/server_code/src/main/java/com/cl/service/impl/SmsServiceImpl.java b/server_code/src/main/java/com/cl/service/impl/SmsServiceImpl.java new file mode 100644 index 000000000..3e4a92ae6 --- /dev/null +++ b/server_code/src/main/java/com/cl/service/impl/SmsServiceImpl.java @@ -0,0 +1,143 @@ +package com.cl.service.impl; + +import com.cl.service.SmsService; +import com.cl.service.SyslogService; +import com.cl.entity.SyslogEntity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.regex.Pattern; + +/** + * 短信服务实现类 + * @author + * @email + * @date 2025-03-27 15:44:15 + */ +@Service("smsService") +public class SmsServiceImpl implements SmsService { + + private static final Logger logger = LoggerFactory.getLogger(SmsServiceImpl.class); + + private static final Pattern PHONE_PATTERN = Pattern.compile("^1[3-9]\\d{9}$"); + + private static final int DEFAULT_MAX_RETRIES = 2; + + @Autowired + private SyslogService syslogService; + + @Override + public boolean sendSms(String phoneNumber, String message) { + if (!isValidPhoneNumber(phoneNumber)) { + logger.error("手机号码格式不正确: {}", phoneNumber); + saveSmsLog(phoneNumber, message, "发送失败:手机号码格式不正确", 0); + return false; + } + + try { + boolean success = doSendSms(phoneNumber, message); + if (success) { + saveSmsLog(phoneNumber, message, "发送成功", 100); + logger.info("短信发送成功,手机号: {}", phoneNumber); + } else { + saveSmsLog(phoneNumber, message, "发送失败", 0); + logger.error("短信发送失败,手机号: {}", phoneNumber); + } + return success; + } catch (Exception e) { + saveSmsLog(phoneNumber, message, "发送异常:" + e.getMessage(), 0); + logger.error("短信发送异常,手机号: {},错误: {}", phoneNumber, e.getMessage()); + return false; + } + } + + @Override + public boolean sendSmsWithRetry(String phoneNumber, String message, int maxRetries) { + if (!isValidPhoneNumber(phoneNumber)) { + logger.error("手机号码格式不正确: {}", phoneNumber); + saveSmsLog(phoneNumber, message, "发送失败:手机号码格式不正确", 0); + return false; + } + + int attempt = 0; + boolean success = false; + String lastError = ""; + + while (attempt <= maxRetries && !success) { + attempt++; + try { + success = doSendSms(phoneNumber, message); + if (success) { + saveSmsLog(phoneNumber, message, "发送成功,第" + attempt + "次尝试", 100); + logger.info("短信发送成功,手机号: {},第{}次尝试", phoneNumber, attempt); + return true; + } else { + lastError = "发送失败"; + logger.warn("短信发送失败,手机号: {},第{}次尝试", phoneNumber, attempt); + if (attempt <= maxRetries) { + Thread.sleep(1000); + } + } + } catch (Exception e) { + lastError = e.getMessage(); + logger.error("短信发送异常,手机号: {},第{}次尝试,错误: {}", phoneNumber, attempt, e.getMessage()); + if (attempt <= maxRetries) { + try { + Thread.sleep(1000); + } catch (InterruptedException ie) { + Thread.currentThread().interrupt(); + } + } + } + } + + saveSmsLog(phoneNumber, message, "发送失败,已重试" + maxRetries + "次,最后错误:" + lastError, 0); + logger.error("短信发送最终失败,手机号: {},已重试{}次", phoneNumber, maxRetries); + return false; + } + + @Override + public boolean isValidPhoneNumber(String phoneNumber) { + if (phoneNumber == null || phoneNumber.trim().isEmpty()) { + return false; + } + return PHONE_PATTERN.matcher(phoneNumber.trim()).matches(); + } + + /** + * 实际发送短信的模拟实现 + * @param phoneNumber 手机号码 + * @param message 短信内容 + * @return 是否发送成功 + */ + private boolean doSendSms(String phoneNumber, String message) { + logger.info("【模拟短信发送】手机号: {},内容: {}", phoneNumber, message); + return true; + } + + /** + * 保存短信发送日志到syslog表 + * @param phoneNumber 手机号码 + * @param message 短信内容 + * @param result 发送结果 + * @param time 耗时 + */ + private void saveSmsLog(String phoneNumber, String message, String result, long time) { + try { + SyslogEntity syslog = new SyslogEntity(); + syslog.setUsername("SMS_SERVICE"); + syslog.setOperation("短信发送"); + syslog.setMethod("SmsService.sendSms"); + syslog.setParams("手机号: " + phoneNumber + ", 内容: " + message + ", 结果: " + result); + syslog.setTime(time); + syslog.setIp("127.0.0.1"); + syslog.setAddtime(new Date()); + syslogService.insert(syslog); + } catch (Exception e) { + logger.error("保存短信日志失败: {}", e.getMessage()); + } + } +} diff --git a/server_code/target/classes/com/cl/controller/YishengyuyueController.class b/server_code/target/classes/com/cl/controller/YishengyuyueController.class index 6f07a1eab..da18f9839 100644 Binary files a/server_code/target/classes/com/cl/controller/YishengyuyueController.class and b/server_code/target/classes/com/cl/controller/YishengyuyueController.class differ diff --git a/server_code/target/classes/com/cl/service/SmsService.class b/server_code/target/classes/com/cl/service/SmsService.class new file mode 100644 index 000000000..87c060e27 Binary files /dev/null and b/server_code/target/classes/com/cl/service/SmsService.class differ diff --git a/server_code/target/classes/com/cl/service/impl/SmsServiceImpl.class b/server_code/target/classes/com/cl/service/impl/SmsServiceImpl.class new file mode 100644 index 000000000..3cb6f7da4 Binary files /dev/null and b/server_code/target/classes/com/cl/service/impl/SmsServiceImpl.class differ diff --git a/server_code/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/server_code/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 000000000..e69de29bb diff --git a/server_code/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/server_code/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 000000000..4d5113413 --- /dev/null +++ b/server_code/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,159 @@ +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\ConfigServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\config\MybatisPlusConfig.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\CommonController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\FriendshipLinkDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\RukujiluServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\YishengyuyueEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\UsersEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\JiuzhenqiandaoView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\RukujiluEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\SyslogView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\CommonDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\RukujiluService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\FriendshipLinkService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\FileUtil.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\UsersController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\SQLFilter.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\TokenService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\ConfigController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\ChatFriendController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\MessagesView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\PageUtils.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\ChukujiluService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\SyslogEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\YonghuView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\YaopinxinxiDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\JQPageInfo.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\JiuzhenqiandaoController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\YaopinxinxiEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\ZhenduanbingliEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\TokenDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\ChufangxinxiService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\BaiduUtil.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\ConfigView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\MenuServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\EIException.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\ConfigEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\ChufangxinxiDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\YishengView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\YonghuEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\ChatMessageController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\CommonUtil.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\ChufangxinxiEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\RukujiluController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\ZhenduanbingliService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\UsersDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\PaibanxinxiServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\NewsDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\ZhenduanbingliDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\ChatFriendServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\EncryptUtil.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\MessagesController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\handler\GlobalExceptionHandler.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\ChufangxinxiServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\ChatFriendDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\YishengyuyueView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\SyslogService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\ChatMessageServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\YaopinxinxiServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\FileController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\YishengEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\FriendshipLinkEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\UsersView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\SyslogServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\YishengController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\CommonService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\SpringContextUtils.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\TokenEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\HttpClientUtils.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\aspect\SysLogAspect.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\PaibanxinxiService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\UsersService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\ChukujiluDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\NewsView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\NewsService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\PaibanxinxiEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\NewsController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\YonghuController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\JiuzhentongzhiServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\MenuView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\JiuzhenqiandaoService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\annotation\IgnoreAuth.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\MenuDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\YaopinxinxiService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\YishengyuyueService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\interceptor\AuthorizationInterceptor.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\YishengServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\YaopinxinxiController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\config\AlipayConfig.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\FriendshipLinkServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\JiuzhentongzhiService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\MD5Util.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\MessagesEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\SmsServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\annotation\SysLog.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\ConfigDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\ChukujiluView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\CommonServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\RukujiluDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\JiuzhentongzhiController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\ChukujiluServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\Query.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\YonghuServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\JiuzhenqiandaoEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\IPUtils.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\YaopinxinxiView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\ZhenduanbingliServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\NewsEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\YishengyuyueController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\MessagesDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\YonghuDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\config\InterceptorConfig.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\JiuzhentongzhiDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\ChatFriendEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\HttpContextUtils.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\MPUtil.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\JiuzhenqiandaoDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\ChukujiluEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\ValidatorUtils.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\RukujiluView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\FriendshipLinkController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\MenuController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\ChatFriendService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\ChufangxinxiController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\PaibanxinxiView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\MenuService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\ChatFriendView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\ConfigService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\NewsServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\YonghuService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\YishengyuyueServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\ChatMessageEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\MessagesServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\ChufangxinxiView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\SmsService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\FriendshipLinkView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\R.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\PaibanxinxiDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\ChatMessageView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\AutoRunWeb.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\YishengService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\PaibanxinxiController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\SpringbootSchemaApplication.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\ChukujiluController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\JiuzhentongzhiEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\JiuzhentongzhiView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\utils\MapUtils.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\UsersServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\MessagesService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\YishengyuyueDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\YishengDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\TokenServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\ZhenduanbingliController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\view\ZhenduanbingliView.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\impl\JiuzhenqiandaoServiceImpl.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\entity\MenuEntity.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\SyslogDao.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\service\ChatMessageService.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\controller\SyslogController.java +C:\Users\hyz\Desktop\no6-master\server_code\src\main\java\com\cl\dao\ChatMessageDao.java