From e2822531b384da2952784a98991d144fa97938e0 Mon Sep 17 00:00:00 2001 From: 陈杰 <504987307@qq.com> Date: Tue, 25 Feb 2020 16:31:19 +0800 Subject: [PATCH] 用户中心 --- cloud/common/src/main/java/com/sincere/common/exception/ResultException.java | 29 +++++++++++++++++++++++++++++ cloud/common/src/main/java/com/sincere/common/util/TokenUtils.java | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cloud/search_smartCampus/src/main/resources/mapper/SyncMapper.xml | 16 ++++++++-------- cloud/user_search/pom.xml | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/UserApplication.java | 18 ++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/access/MemberFilter.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/access/ParameterRequestWrapper.java | 130 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/mapper/QyhApplyMapper.java | 9 +++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java | 4 ++++ cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java | 10 ++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java | 20 ++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/vo/BaseVo.java | 36 ++++++++++++++++++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/vo/UserInfo.java | 14 ++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/ZnxwRepVo.java | 23 +++++++++++++++++++++++ cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/ZnxwReqVo.java | 23 +++++++++++++++++++++++ cloud/user_search/src/main/resources/application.yaml | 28 ++++++++++++++++++++++++++++ cloud/user_search/src/main/resources/logback.xml | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cloud/user_search/src/main/resources/mapper/QyhApplyMapper.xml | 14 ++++++++++++++ cloud/user_search/src/main/resources/mapper/UserMapper.xml | 14 ++++++++++++++ 21 files changed, 856 insertions(+), 8 deletions(-) create mode 100644 cloud/common/src/main/java/com/sincere/common/exception/ResultException.java create mode 100644 cloud/common/src/main/java/com/sincere/common/util/TokenUtils.java create mode 100644 cloud/user_search/pom.xml create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/UserApplication.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/access/MemberFilter.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/access/ParameterRequestWrapper.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/mapper/QyhApplyMapper.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/vo/BaseVo.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/vo/UserInfo.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/ZnxwRepVo.java create mode 100644 cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/ZnxwReqVo.java create mode 100644 cloud/user_search/src/main/resources/application.yaml create mode 100644 cloud/user_search/src/main/resources/logback.xml create mode 100644 cloud/user_search/src/main/resources/mapper/QyhApplyMapper.xml create mode 100644 cloud/user_search/src/main/resources/mapper/UserMapper.xml diff --git a/cloud/common/src/main/java/com/sincere/common/exception/ResultException.java b/cloud/common/src/main/java/com/sincere/common/exception/ResultException.java new file mode 100644 index 0000000..9698f6a --- /dev/null +++ b/cloud/common/src/main/java/com/sincere/common/exception/ResultException.java @@ -0,0 +1,29 @@ +package com.sincere.common.exception; + +public class ResultException extends Exception { + + private int code ; + private String message ; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + @Override + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public ResultException(int code, String message) { + this.code = code; + this.message = message; + } +} diff --git a/cloud/common/src/main/java/com/sincere/common/util/TokenUtils.java b/cloud/common/src/main/java/com/sincere/common/util/TokenUtils.java new file mode 100644 index 0000000..86e6b90 --- /dev/null +++ b/cloud/common/src/main/java/com/sincere/common/util/TokenUtils.java @@ -0,0 +1,95 @@ +package com.sincere.common.util; + +import com.nimbusds.jose.*; +import com.nimbusds.jose.crypto.MACSigner; +import com.nimbusds.jose.crypto.MACVerifier; +import com.nimbusds.jwt.JWTClaimsSet; +import com.nimbusds.jwt.SignedJWT; +import com.sincere.common.exception.ResultException; + +import java.util.Date; +import java.util.Objects; + +public class TokenUtils { + + /** + * 创建秘钥 + */ + private static final byte[] SECRET = "6MNSobBRCHGIO0fS6MNSobBRCHGWO0fS".getBytes(); + + /** + * 过期时间5秒 + */ + private static final long EXPIRE_TIME = 1000 * 60 * 60 * 24; + + + /** + * 生成Token + * @param account + * @return + */ + public static String buildToken(String account) { + try { + /** + * 1.创建一个32-byte的密匙 + */ + MACSigner macSigner = new MACSigner(SECRET); + /** + * 2. 建立payload 载体 + */ + JWTClaimsSet claimsSet = new JWTClaimsSet.Builder() + .expirationTime(new Date(System.currentTimeMillis() + EXPIRE_TIME)) + .claim("ACCOUNT",account) + .build(); + + /** + * 3. 建立签名 + */ + SignedJWT signedJWT = new SignedJWT(new JWSHeader(JWSAlgorithm.HS256), claimsSet); + signedJWT.sign(macSigner); + + /** + * 4. 生成token + */ + String token = signedJWT.serialize(); + return token; + } catch (KeyLengthException e) { + e.printStackTrace(); + } catch (JOSEException e) { + e.printStackTrace(); + } + return null; + } + + /** + * 校验token + * @param token + * @return + */ + public static String validToken(String token) throws ResultException { + try { + SignedJWT jwt = SignedJWT.parse(token); + JWSVerifier verifier = new MACVerifier(SECRET); + //校验是否有效 + if (!jwt.verify(verifier)) { + throw new ResultException(-1, "Token 无效"); + } + + //校验超时 + Date expirationTime = jwt.getJWTClaimsSet().getExpirationTime(); + if (new Date().after(expirationTime)) { + throw new ResultException(-2, "Token 已过期"); + } + + //获取载体中的数据 + Object account = jwt.getJWTClaimsSet().getClaim("ACCOUNT"); + //是否有openUid + if (Objects.isNull(account)){ + throw new ResultException(-3, "账号为空"); + } + return account.toString(); + } catch (Exception e) { + throw new ResultException(-4, "系统繁忙"); + } + } +} diff --git a/cloud/search_smartCampus/src/main/resources/mapper/SyncMapper.xml b/cloud/search_smartCampus/src/main/resources/mapper/SyncMapper.xml index 2d1610c..b88749f 100644 --- a/cloud/search_smartCampus/src/main/resources/mapper/SyncMapper.xml +++ b/cloud/search_smartCampus/src/main/resources/mapper/SyncMapper.xml @@ -68,35 +68,35 @@ - insert into YXY_DeptRelation (hxyDeptId,yxyDeptId,usertype,updateTime,createTime,state) + insert into YXT_DeptRelation (hxyDeptId,yxyDeptId,usertype,updateTime,createTime,state) values (#{hxyDeptId},#{yxyDeptId},#{userType},GETDATE(),GETDATE(),#{state}) - update YXY_DeptRelation set updateTime = GETDATE() , state = #{state} where hxyDeptId = #{hxyDeptId} + update YXT_DeptRelation set updateTime = GETDATE() , state = #{state} where hxyDeptId = #{hxyDeptId} - insert into YXY_UserRelation (hxyCustomerId,yxyUserId,userType,updateTime,createTime,state) + insert into YXT_UserRelation (hxyCustomerId,yxyUserId,userType,updateTime,createTime,state) values (#{hxyCustomerId},#{yxyUserId},#{userType},GETDATE(),GETDATE(),#{state}) - update YXY_UserRelation set updateTime = GETDATE() , state = #{state} where hxyCustomerId = #{hxyCustomerId} + update YXT_UserRelation set updateTime = GETDATE() , state = #{state} where hxyCustomerId = #{hxyCustomerId} \ No newline at end of file diff --git a/cloud/user_search/pom.xml b/cloud/user_search/pom.xml new file mode 100644 index 0000000..cee6260 --- /dev/null +++ b/cloud/user_search/pom.xml @@ -0,0 +1,158 @@ + + + + cloud + com.sincere + 1.0.0 + + 4.0.0 + + user_search + + + + com.sincere + common + 1.0.0 + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.cloud + spring-cloud-starter-feign + 1.3.6.RELEASE + + + org.springframework.cloud + spring-cloud-openfeign-core + 2.1.2.RELEASE + + + org.apache.commons + commons-lang3 + 3.3.2 + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + 1.3.0 + + + com.microsoft.sqlserver + mssql-jdbc + 6.4.0.jre8 + + + io.springfox + springfox-swagger2 + 2.5.0 + + + io.springfox + springfox-swagger-ui + 2.5.0 + + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + + + + quartz_server + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + 1.8 + 1.8 + UTF-8 + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + com.sincere.quartz.QuartzApplication + true + lib/ + + + ./config/ + + + + config/** + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + copy + package + + copy-dependencies + + + + ${project.build.directory}/lib + + + + + + + + org.apache.maven.plugins + maven-resources-plugin + 2.5 + + UTF-8 + + + + + maven-source-plugin + 2.2 + + true + + + + compile + + jar + + + + + + + \ No newline at end of file diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java b/cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java new file mode 100644 index 0000000..30ac230 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java @@ -0,0 +1,52 @@ +package com.sincere.userSearch; + +import io.swagger.annotations.ApiOperation; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.builders.ParameterBuilder; +import springfox.documentation.builders.PathSelectors; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.schema.ModelRef; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.service.Parameter; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +import java.util.ArrayList; +import java.util.List; + +@EnableSwagger2 +@Configuration //让Spring来加载该类配置 +public class Swagger2 { + + @Bean + public Docket createRestApi() { + ParameterBuilder ticketPar = new ParameterBuilder(); + List pars = new ArrayList(); + ticketPar.name("X-Authorization").description("user token") + .modelRef(new ModelRef("string")).parameterType("header") + .required(false).build(); //header中的ticket参数非必填,传空也可以 + pars.add(ticketPar.build()); + + + return new Docket(DocumentationType.SWAGGER_2) + .apiInfo(apiInfo()) + .enableUrlTemplating(true) + .select() + // 扫描所有有注解的api,用这种方式更灵活 + .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) + .paths(PathSelectors.any()) + .build().globalOperationParameters(pars); + + } + private ApiInfo apiInfo() { + return new ApiInfoBuilder() + .title("Spring Boot中使用Swagger2构建RESTful APIs") + .description("接口文档") + .termsOfServiceUrl("") + .version("1.0") + .build(); + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/UserApplication.java b/cloud/user_search/src/main/java/com/sincere/userSearch/UserApplication.java new file mode 100644 index 0000000..52afdbe --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/UserApplication.java @@ -0,0 +1,18 @@ +package com.sincere.userSearch; + +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.web.servlet.ServletComponentScan; +import org.springframework.cloud.netflix.eureka.EnableEurekaClient; + +@ServletComponentScan +@EnableEurekaClient +@SpringBootApplication +@MapperScan("com.sincere.userSearch.mapper") +public class UserApplication { + + public static void main(String[] args) { + SpringApplication.run(UserApplication.class, args); + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/access/MemberFilter.java b/cloud/user_search/src/main/java/com/sincere/userSearch/access/MemberFilter.java new file mode 100644 index 0000000..06a152b --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/access/MemberFilter.java @@ -0,0 +1,60 @@ +package com.sincere.userSearch.access; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.sincere.common.exception.ResultException; +import com.sincere.common.util.TokenUtils; +import com.sincere.userSearch.vo.UserInfo; +import org.apache.commons.lang3.StringUtils; + +import javax.servlet.*; +import javax.servlet.annotation.WebFilter; +import javax.servlet.http.HttpServletRequest; +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +@WebFilter(urlPatterns = "/user/*") +public class MemberFilter implements Filter { + + private static String token_string = "X-Authorization" ; + + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { + + HttpServletRequest req = (HttpServletRequest) request; + + String token = req.getHeader(token_string); + if (StringUtils.isBlank(token)) { + respFail(response,-5,"token 没有"); + return; + } + +// MemberDetails memberDetails = memberService.getMemberDetailsByToken(tokenId); +// if (memberDetails == null) this.respFail(response); + String userId = "" ; + try{ + userId = TokenUtils.validToken(token); + }catch (ResultException e){ + respFail(response,e.getCode(),e.getMessage()); + return; + } + ParameterRequestWrapper requestWrapper = new ParameterRequestWrapper(req); + UserInfo userInfo = new UserInfo() ; + userInfo.setUserId(userId); + requestWrapper.addObject(userInfo); + chain.doFilter(requestWrapper, response); + } + + private void respFail(ServletResponse response , int code , String message) throws IOException { + Map map = new HashMap<>(); + map.put("status", code); + map.put("message", message); + map.put("data", null); + ObjectMapper objectMapper = new ObjectMapper(); + String s = objectMapper.writeValueAsString(map); + response.setCharacterEncoding("UTF-8"); + response.setContentType("application/json; charset=utf-8"); + response.getWriter().write(s); + } + +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/access/ParameterRequestWrapper.java b/cloud/user_search/src/main/java/com/sincere/userSearch/access/ParameterRequestWrapper.java new file mode 100644 index 0000000..8191811 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/access/ParameterRequestWrapper.java @@ -0,0 +1,130 @@ +package com.sincere.userSearch.access; + +import org.apache.commons.lang.WordUtils; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletRequestWrapper; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.*; + +/** + * 重写HttpServletRequestWrapper ,为把token 转化为userinfo 带入到request中 + */ +public class ParameterRequestWrapper extends HttpServletRequestWrapper { + + private Map params = new HashMap(); + + + @SuppressWarnings("unchecked") + public ParameterRequestWrapper(HttpServletRequest request) { + // 将request交给父类,以便于调用对应方法的时候,将其输出,其实父亲类的实现方式和第一种new的方式类似 + super(request); + //将参数表,赋予给当前的Map以便于持有request中的参数 + this.params.putAll(request.getParameterMap()); + } + //重载一个构造方法 + public ParameterRequestWrapper(HttpServletRequest request , Map extendParams) { + this(request); + addAllParameters(extendParams);//这里将扩展参数写入参数表 + } + + /** + * 复写获取key的方法 + */ + @Override + public Enumeration getParameterNames() { + Vector names = new Vector(params.keySet()); + return names.elements(); + } + + /** + * 复写获取值value的方法 + */ + @Override + public String getParameter(String name) { + Object v = params.get(name); + if (v == null) { + return null; + } else if (v instanceof String[]) { + String[] strArr = (String[]) v; + if (strArr.length > 0) { + return strArr[0]; + } else { + return null; + } + } else if (v instanceof String) { + return (String) v; + } else { + return v.toString(); + } + } + + @Override + public String[] getParameterValues(String name) { + Object v = params.get(name); + if (v == null) { + return null; + } else if (v instanceof String[]) { + return (String[]) v; + } else if (v instanceof String) { + return new String[] { (String) v }; + } else { + return new String[] { v.toString() }; + } + } + + public void addAllParameters(MapotherParams) {//增加多个参数 + for(Map.Entryentry : otherParams.entrySet()) { + addParameter(entry.getKey() , entry.getValue()); + } + } + + + public void addParameter(String name , Object value) {//增加参数 + if(value != null) { + if(value instanceof String[]) { + params.put(name , (String[])value); + }else if(value instanceof String) { + params.put(name , new String[] {(String)value}); + }else { + params.put(name , new String[] {String.valueOf(value)}); + } + } + } + + /** 简单封装,请根据需求改进 */ + public void addObject(Object obj) { + Class clazz = obj.getClass(); + Method[] methods = clazz.getMethods(); + try { + for (Method method : methods) { + if (!method.getName().startsWith("get")) { + continue; + } + Object invoke = method.invoke(obj); + if (invoke == null || "".equals(invoke)) { + continue; + } + + String filedName = method.getName().replace("get", ""); + filedName = WordUtils.uncapitalize(filedName); + + if (invoke instanceof Collection) { + Collection collections = (Collection) invoke; + if (collections != null && collections.size() > 0) { + String[] strings = (String[]) collections.toArray(); + addParameter(filedName, strings); + return; + } + } + + addParameter(filedName, invoke); + } + } catch (IllegalAccessException e) { + e.printStackTrace(); + } catch (InvocationTargetException e) { + e.printStackTrace(); + } + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java b/cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java new file mode 100644 index 0000000..a08516e --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java @@ -0,0 +1,51 @@ +package com.sincere.userSearch.controller; + +import com.sincere.userSearch.service.UserService; +import com.sincere.userSearch.vo.BaseVo; +import com.sincere.userSearch.vo.UserInfo; +import com.sincere.userSearch.vo.rep.ZnxwRepVo; +import com.sincere.userSearch.vo.req.ZnxwReqVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/user") +@Api(value = "用户中心") +public class UserController { + + @Autowired + UserService userService ; + + /** + * 获取钉钉angenId的接口 EM_QYHApply + */ + @ApiOperation("获取智能校卫agentid") + @RequestMapping(value = "getZNXWWebApp" , method = RequestMethod.POST) + public BaseVo getZNXWWebApp(@RequestBody ZnxwReqVo znxwReqVo , UserInfo userInfo){ + BaseVo result = new BaseVo<>() ; + ZnxwRepVo data = userService.selectAgentId(znxwReqVo) ; + result.setData(data); + return result ; + } + + + public void getUserRole(){ + + } + + /** + * 用户类型 0-班主任; 1-任课老师; 2-学生; 3-家长; 10-学校管理员; + * @param userId + */ + @ApiOperation("根据userId 获取用户信息") + @RequestMapping(value = "getUserInfo" , method = RequestMethod.POST) + public void getUserInfo(UserInfo userId){ + + } + + public void getUserId(){ + + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/QyhApplyMapper.java b/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/QyhApplyMapper.java new file mode 100644 index 0000000..a80c928 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/QyhApplyMapper.java @@ -0,0 +1,9 @@ +package com.sincere.userSearch.mapper; + +import com.sincere.userSearch.vo.rep.ZnxwRepVo; +import com.sincere.userSearch.vo.req.ZnxwReqVo; + +public interface QyhApplyMapper { + + ZnxwRepVo selectAgentId(ZnxwReqVo znxwReqVo); +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java b/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java new file mode 100644 index 0000000..5cf1255 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java @@ -0,0 +1,4 @@ +package com.sincere.userSearch.mapper; + +public interface UserMapper { +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java b/cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java new file mode 100644 index 0000000..c9fcea8 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java @@ -0,0 +1,10 @@ +package com.sincere.userSearch.service; + +import com.sincere.userSearch.vo.rep.ZnxwRepVo; +import com.sincere.userSearch.vo.req.ZnxwReqVo; + +public interface UserService { + + ZnxwRepVo selectAgentId(ZnxwReqVo znxwReqVo); + +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java b/cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..37634b8 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java @@ -0,0 +1,20 @@ +package com.sincere.userSearch.service.impl; + +import com.sincere.userSearch.mapper.QyhApplyMapper; +import com.sincere.userSearch.service.UserService; +import com.sincere.userSearch.vo.rep.ZnxwRepVo; +import com.sincere.userSearch.vo.req.ZnxwReqVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class UserServiceImpl implements UserService { + + @Autowired + QyhApplyMapper qyhApplyMapper ; + + @Override + public ZnxwRepVo selectAgentId(ZnxwReqVo znxwReqVo) { + return qyhApplyMapper.selectAgentId(znxwReqVo); + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/vo/BaseVo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/BaseVo.java new file mode 100644 index 0000000..f996cdd --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/BaseVo.java @@ -0,0 +1,36 @@ +package com.sincere.userSearch.vo; + +public class BaseVo { + + private String message ; + private boolean status ; + private T data ; + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public boolean isStatus() { + return status; + } + + public void setStatus(boolean status) { + this.status = status; + } + + public T getData() { + return data; + } + + public void setData(T data) { + this.data = data; + } + + public BaseVo() { + this.status = true ; + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/vo/UserInfo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/UserInfo.java new file mode 100644 index 0000000..a3e69ad --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/UserInfo.java @@ -0,0 +1,14 @@ +package com.sincere.userSearch.vo; + +public class UserInfo { + + private String userId ; + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/ZnxwRepVo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/ZnxwRepVo.java new file mode 100644 index 0000000..af5a382 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/ZnxwRepVo.java @@ -0,0 +1,23 @@ +package com.sincere.userSearch.vo.rep; + +public class ZnxwRepVo { + + private String agentId ; + private String schoolName ; + + public String getAgentId() { + return agentId; + } + + public void setAgentId(String agentId) { + this.agentId = agentId; + } + + public String getSchoolName() { + return schoolName; + } + + public void setSchoolName(String schoolName) { + this.schoolName = schoolName; + } +} diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/ZnxwReqVo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/ZnxwReqVo.java new file mode 100644 index 0000000..eb7b584 --- /dev/null +++ b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/ZnxwReqVo.java @@ -0,0 +1,23 @@ +package com.sincere.userSearch.vo.req; + +public class ZnxwReqVo { + + private int schoolId ; + private int type ; + + public int getSchoolId() { + return schoolId; + } + + public void setSchoolId(int schoolId) { + this.schoolId = schoolId; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } +} diff --git a/cloud/user_search/src/main/resources/application.yaml b/cloud/user_search/src/main/resources/application.yaml new file mode 100644 index 0000000..d53af07 --- /dev/null +++ b/cloud/user_search/src/main/resources/application.yaml @@ -0,0 +1,28 @@ +server: + port: 9004 + +spring: + application: + name: user_search + datasource: + username: szjxtuser + password: RQminVCJota3H1u8bBYH + url: jdbc:sqlserver://116.62.155.137:33419;database=SmartCampus + driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +##mybatis +mybatis: + mapper-locations: classpath:mapper/*.xml + type-aliases-package: com.sincere.quartz.mapper + check-config-location: true +ribbon: + ReadTimeout: 50000 + ConnectTimeout: 5000 +eureka: + instance: + hostname: localhost + lease-expiration-duration-in-seconds: 60 + lease-renewal-interval-in-seconds: 10 + client: + service-url: + defaultZone: http://localhost:8761/eureka/,http://localhost:8762/eureka/ + diff --git a/cloud/user_search/src/main/resources/logback.xml b/cloud/user_search/src/main/resources/logback.xml new file mode 100644 index 0000000..826d9a9 --- /dev/null +++ b/cloud/user_search/src/main/resources/logback.xml @@ -0,0 +1,60 @@ + + +     +     + +     + + +     +     +         +         +             +             [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] %highlight([%-5level] %logger{50} - %msg%n) +             UTF-8 +         +     + +     +     +         +         +             +             ${LOG_HOME}/${PROJECT_NAME}/%d{yyyy-MM-dd}.%i.log +             +             30 +             +             100MB +         + +         +             +             [%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%-5level] %logger{50} - %msg%n +             UTF-8 +         +     +     +        +    + +    +    +    +    +    +    +    + + +    +    +    +    +    +    +        +        +    + + diff --git a/cloud/user_search/src/main/resources/mapper/QyhApplyMapper.xml b/cloud/user_search/src/main/resources/mapper/QyhApplyMapper.xml new file mode 100644 index 0000000..3db0e66 --- /dev/null +++ b/cloud/user_search/src/main/resources/mapper/QyhApplyMapper.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + diff --git a/cloud/user_search/src/main/resources/mapper/UserMapper.xml b/cloud/user_search/src/main/resources/mapper/UserMapper.xml new file mode 100644 index 0000000..81a2ca6 --- /dev/null +++ b/cloud/user_search/src/main/resources/mapper/UserMapper.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + -- libgit2 0.21.0