From 8190823a593d3123384d3a75774ad19ecea07204 Mon Sep 17 00:00:00 2001
From: houruijun <411269194@kidgrow.com>
Date: Mon, 15 Jun 2020 11:20:12 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java             |   16 +++++--
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java              |    7 +++
 kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-center-server/src/main/java/com/kidgrow/sms/lanchuang/controller/SmsChuangLanController.java |   23 +++++------
 kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/resources/application.yml                                                                   |    6 +++
 kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/utils/DateUtils.java                                          |   10 +++++
 kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java    |    3 +
 kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-api/src/main/java/com/kidgrow/sms/model/ConstantSMS.java                                     |    2 
 kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpInterceptorConfig.java                        |    1 
 kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpTenantInterceptorConfig.java                  |    1 
 kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java                  |   23 +++++++++++
 kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java                            |    9 +++-
 kidgrow-business/kidgrow-filecenter/pom.xml                                                                                                       |   11 +++++
 12 files changed, 89 insertions(+), 23 deletions(-)

diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java
new file mode 100644
index 0000000..233b59b
--- /dev/null
+++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java
@@ -0,0 +1,23 @@
+package com.kidgrow.filecenter.config;
+
+import feign.form.spring.SpringFormEncoder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Primary;
+import org.springframework.context.annotation.Scope;
+
+//@Configuration
+public class FeignMultipartConfig {
+
+    @Bean
+    @Primary
+    @Scope("prototype")
+    public SpringFormEncoder multipartFormEncoder() {
+        return new SpringFormEncoder();
+    }
+
+    @Bean
+    public feign.Logger.Level multipartLoggerLevel() {
+        return feign.Logger.Level.FULL;
+    }
+}
+
diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java
index 1e3ff69..030bc28 100644
--- a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java
+++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java
@@ -1,6 +1,7 @@
 package com.kidgrow.filecenter.feign;
 
 import com.kidgrow.common.constant.ServiceNameConstants;
+import com.kidgrow.filecenter.config.FeignMultipartConfig;
 import com.kidgrow.filecenter.feign.fallback.FileServiceFallbackFactory;
 import com.kidgrow.filecenter.model.FileInfo;
 import org.springframework.cloud.openfeign.FeignClient;
@@ -17,7 +18,7 @@
  * @CreateDate: Created in 2020/2/22 14:33 <br>
  * @Author: <a href="4345453@kidgrow.com">liuke</a>
  */
-@FeignClient(name = ServiceNameConstants.FILE_CENTER_SERVER, fallbackFactory = FileServiceFallbackFactory.class, decode404 = true)
+@FeignClient(name = ServiceNameConstants.FILE_CENTER_SERVER, configuration = FeignMultipartConfig.class,fallbackFactory = FileServiceFallbackFactory.class, decode404 = true)
 public interface FileService {
     /**
      * 根据条件查询
@@ -30,6 +31,8 @@
      * 根据条件查询
      * @param file
      */
-    @PostMapping(value = "/files-upload",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
-    FileInfo feignUpload(MultipartFile file);
+    @PostMapping(value = "/files-upload",produces = {MediaType.APPLICATION_JSON_UTF8_VALUE},consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+    FileInfo feignUpload(@RequestPart("file") MultipartFile file);
+
+
 }
diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java
index d516700..fc724c6 100644
--- a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java
+++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java
@@ -7,6 +7,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RequestPart;
 import org.springframework.web.multipart.MultipartFile;
 
 /**
@@ -29,7 +30,7 @@
                 return null;
             }
             @Override
-            public FileInfo feignUpload(MultipartFile file) {
+            public FileInfo feignUpload(@RequestPart("file") MultipartFile file) {
                 return null;
             }
         };
diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java
index 1dea60b..e22afd5 100644
--- a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java
+++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java
@@ -16,6 +16,7 @@
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.Date;
+import java.util.UUID;
 
 /**
  * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
@@ -62,16 +63,21 @@
         protected void uploadFile(MultipartFile file, FileInfo fileInfo) throws Exception {
             String clientID= httpServletRequest.getHeader(SecurityConstants.CLIENT_HEADER);
             String folderByDate =DateUtil.formatDate(new Date());
-            if(clientID=="hospital"){//医院端平台,根据医院ID,科室ID进行OSS存储
+            int begin = file.getOriginalFilename().indexOf(".");
+            int last = file.getOriginalFilename().length();
+            String fileType = file.getOriginalFilename().substring(begin, last);
+            String fileName= UUID.randomUUID().toString().replaceAll("-","")+fileType;
+            if(clientID.equals("hospital")){//医院端平台,根据医院ID,科室ID进行OSS存储
                 String orgID=httpServletRequest.getHeader(SecurityConstants.USER_ORG_ID_HEADER);
                 String depID=httpServletRequest.getHeader(SecurityConstants.USER_DEP_ID_HEADER);
                 String fileFolder="KidgrowAI/"+orgID+"/"+depID+"/";
-                ossClient.putObject(fileProperties.getOss().getBucketName(), fileFolder + folderByDate + "/" + fileInfo.getName(), file.getInputStream());
-                fileInfo.setUrl(fileProperties.getOss().getDomain() + fileFolder + folderByDate + "/" + fileInfo.getName());
+
+                ossClient.putObject(fileProperties.getOss().getBucketName(), fileFolder + folderByDate + "/" + fileName, file.getInputStream());
+                fileInfo.setUrl(fileProperties.getOss().getDomain() + fileFolder + folderByDate + "/" + fileName);
             }
             else {
-                ossClient.putObject(fileProperties.getOss().getBucketName(), fileProperties.getOss().getFolder() + folderByDate + "/" + fileInfo.getName(), file.getInputStream());
-                fileInfo.setUrl(fileProperties.getOss().getDomain() + fileProperties.getOss().getFolder() + folderByDate + "/" + fileInfo.getName());
+                ossClient.putObject(fileProperties.getOss().getBucketName(), fileProperties.getOss().getFolder() + folderByDate + "/" + fileName, file.getInputStream());
+                fileInfo.setUrl(fileProperties.getOss().getDomain() + fileProperties.getOss().getFolder() + folderByDate + "/" + fileName);
             }
         }
 
diff --git a/kidgrow-business/kidgrow-filecenter/pom.xml b/kidgrow-business/kidgrow-filecenter/pom.xml
index 5267404..a9e9609 100644
--- a/kidgrow-business/kidgrow-filecenter/pom.xml
+++ b/kidgrow-business/kidgrow-filecenter/pom.xml
@@ -21,6 +21,17 @@
 
     <dependencies>
         <dependency>
+            <groupId>io.github.openfeign.form</groupId>
+            <artifactId>feign-form</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>io.github.openfeign.form</groupId>
+            <artifactId>feign-form-spring</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+        <dependency>
             <groupId>com.kidgrow</groupId>
             <artifactId>kidgrow-common-spring-boot-starter</artifactId>
         </dependency>
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
index 45c4f31..160a646 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
@@ -275,6 +275,7 @@
                                 SysUser user = new SysUser();
                                 user.setId(id);
                                 user.setMobile(newTel);
+                                user.setUsername(newTel);
                                 //修改doctor表
                                 com.kidgrow.usercenter.model.SysDoctor sysDoctorModel= findDoctorByUserId(user.getId());
                                 com.kidgrow.usercenter.model.SysDoctor newsysDoctorModel= new com.kidgrow.usercenter.model.SysDoctor();
@@ -284,8 +285,9 @@
                                     newsysDoctorModel.setDoctorTel(newTel);
                                     sysDoctorMapper.updateById(newsysDoctorModel);
                                 }
-
                                 if (baseMapper.updateById(user) > 0) {
+                                    //将Redis清除
+                                    redisUtils.hdel(ConstantSMS.PHONE_SMS,newTel);
                                     return ResultBody.ok().msg("手机号修改成功!");
                                 } else {
                                     return ResultBody.failed("手机号修改失败!");
@@ -536,6 +538,9 @@
         if (StringUtils.isBlank(phone)) {
             return ResultBody.failed("请输入新手机号");
         }
+        if(!sysUser.getMobile().equals(password)){
+            return ResultBody.failed("请输入原手机号");
+        }
         String verificationCode = MapUtils.getString(map, "verificationCode");
         if (StringUtils.isBlank(verificationCode)) {
             return ResultBody.failed("请输入验证码");
diff --git a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/utils/DateUtils.java b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/utils/DateUtils.java
index 41f04b5..694b88b 100644
--- a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/utils/DateUtils.java
+++ b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/utils/DateUtils.java
@@ -483,5 +483,15 @@
         System.out.println(formatDate(getAfterDay(new Date()), "yyyy-MM-dd"));
         System.out.println(formatDate(getAfterWeek(new Date()), "yyyy-MM-dd"));
         System.out.println(formatDate(getAfterYear(new Date()), "yyyy-MM-dd"));
+        System.out.println(getSecondsNextEarlyMorning());
+
+    }
+    //(到今晚的秒数)
+    public static Long getSecondsNextEarlyMorning() {
+        Date afterDay = getAfterDay(new Date());
+        String s = formatDate(afterDay, null);
+        Date date = parseDate(s);
+        long second= (date.getTime()-System.currentTimeMillis())/1000;
+        return second;
     }
 }
diff --git a/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpInterceptorConfig.java b/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpInterceptorConfig.java
index b978715..53e5058 100644
--- a/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpInterceptorConfig.java
+++ b/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpInterceptorConfig.java
@@ -43,6 +43,7 @@
         requestHeaders.add(CommonConstant.USER_AGENT_BROWSER);
         requestHeaders.add(CommonConstant.USER_AGENT_IP);
         requestHeaders.add(CommonConstant.USER_AGENT_SYSTEM);
+        requestHeaders.add(SecurityConstants.USER_HOSPITAL_ID_HEADER);
     }
 
     /**
diff --git a/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpTenantInterceptorConfig.java b/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpTenantInterceptorConfig.java
index 08c812e..36807bf 100644
--- a/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpTenantInterceptorConfig.java
+++ b/kidgrow-commons/kidgrow-ribbon-spring-boot-starter/src/main/java/com/kidgrow/ribbon/config/FeignHttpTenantInterceptorConfig.java
@@ -43,6 +43,7 @@
         requestHeaders.add(CommonConstant.USER_AGENT_BROWSER);
         requestHeaders.add(CommonConstant.USER_AGENT_IP);
         requestHeaders.add(CommonConstant.USER_AGENT_SYSTEM);
+        requestHeaders.add(SecurityConstants.USER_HOSPITAL_ID_HEADER);
     }
 
     /**
diff --git a/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-api/src/main/java/com/kidgrow/sms/model/ConstantSMS.java b/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-api/src/main/java/com/kidgrow/sms/model/ConstantSMS.java
index 8684f5c..86f32f2 100644
--- a/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-api/src/main/java/com/kidgrow/sms/model/ConstantSMS.java
+++ b/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-api/src/main/java/com/kidgrow/sms/model/ConstantSMS.java
@@ -5,5 +5,5 @@
 public interface ConstantSMS {
     String PASSWORD_SMS = "PASSWORD_SMS";//修改密码 短信验证的type值
     String REGISTER_SMS = "REGISTER_SMS";//注册 短信验证的type值
-    String PHONE_SMS = "PHONE_SMS";//注册 短信验证的type值
+    String PHONE_SMS = "PHONE_SMS";//更换手机号 短信验证的type值
 }
diff --git a/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-center-server/src/main/java/com/kidgrow/sms/lanchuang/controller/SmsChuangLanController.java b/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-center-server/src/main/java/com/kidgrow/sms/lanchuang/controller/SmsChuangLanController.java
index 2b70364..12ba9dc 100644
--- a/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-center-server/src/main/java/com/kidgrow/sms/lanchuang/controller/SmsChuangLanController.java
+++ b/kidgrow-plugin/kidgrow-plugin-sms/kidgrow-plugin-sms-center-server/src/main/java/com/kidgrow/sms/lanchuang/controller/SmsChuangLanController.java
@@ -91,15 +91,16 @@
                         Date date2 = DateUtils.addMilliseconds(DateUtils.parseDate(s1), CHUANGLAN_SMS_TIMELIMIT);
                         cunMap.put("endTime",DateUtils.formatDateTime(date2));
                     }else{
-                        return ResultBody.failed().data("每个手机号限用5次");
+                        return ResultBody.failed().data("每个手机号限用"+CHUANGLAN_SMS_NUM+"次");
                     }
                 }else {
                     return ResultBody.failed();
                 }
             }
             if ("0".equals(jsonObject.get("code"))) {
-                redisUtils.hset(map.get("type").toString(), map.get("phone").toString(),cunMap,getSecondsNextEarlyMorning());
-                return ResultBody.ok().data(verificationCode);
+                redisUtils.hset(map.get("type").toString(), map.get("phone").toString(),cunMap,DateUtils.getSecondsNextEarlyMorning());
+//                return ResultBody.ok().data(verificationCode);
+                return ResultBody.ok();
             } else {
                 return ResultBody.failed();
             }
@@ -143,15 +144,13 @@
             return ResultBody.failed("该手机号没有验证码");
         }
     }
-    //获取 存放 Redis的时间
+    //获取 存放 Redis的时间 秒(到今晚的秒数)
     public Long getSecondsNextEarlyMorning() {
-        Calendar cal = Calendar.getInstance();
-        cal.add(Calendar.DAY_OF_YEAR, 1);
-        // 改成这样就好了
-        cal.set(Calendar.HOUR_OF_DAY, 0);
-        cal.set(Calendar.SECOND, 0);
-        cal.set(Calendar.MINUTE, 0);
-        cal.set(Calendar.MILLISECOND, 0);
-        return (cal.getTimeInMillis() - System.currentTimeMillis()) / 1000;
+        Date afterDay = DateUtils.getAfterDay(new Date());
+        String s = DateUtils.formatDate(afterDay, null);
+        Date date = DateUtils.parseDate(s);
+        System.out.println(date.getTime()-System.currentTimeMillis());
+        long second= (date.getTime()-System.currentTimeMillis())/1000;
+        return second;
     }
 }
diff --git a/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/resources/application.yml b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/resources/application.yml
index 9ddc5fa..828d993 100644
--- a/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/resources/application.yml
+++ b/kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/resources/application.yml
@@ -103,6 +103,12 @@
       strip-prefix: true
       sensitive-headers: '*'
       custom-sensitive-headers: true
+    sms:
+      path: /api-sms/**
+      service-id: sms-service-server
+      strip-prefix: true
+      sensitive-headers: '*'
+      custom-sensitive-headers: true
     log:
       path: /api-log/**
       service-id: logcenter-server

--
Gitblit v1.8.0