From a72412ea76015aa84883da72e643c63096c71a24 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期三, 24 四月 2024 09:00:44 +0800 Subject: [PATCH] 认证权限 --- hangzhoumesParent/moduleService/CacheGlassModule/pom.xml | 20 hangzhoumesParent/gateway/src/main/resources/application.yml | 2 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml | 8 hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/LoginUser.java | 2 hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml | 12 hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/SysUserService.java | 53 ++++ hangzhoumesParent/gateway/pom.xml | 8 hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/mapper/SysUserMapper.java | 4 hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml | 18 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml | 8 hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/config/TokenWebSecurityConfig.java | 24 + UI-Project/config.js | 2 hangzhoumesParent/common/pom.xml | 12 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml | 8 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java | 151 +++++++------ /dev/null | 18 - hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml | 10 hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/UnLoadGlassApplicationTest.java | 42 +++ hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/vo/SysUserVO.java | 63 +++++ hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/controller/SysUserController.java | 51 ++++ hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java | 55 ++++ hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Swagger2Config.java | 33 --- hangzhoumesParent/moduleService/UnLoadGlassModule/pom.xml | 6 hangzhoumesParent/common/springsecurity/src/main/resources/application.yml | 8 hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/request/UserRequest.java | 17 + hangzhoumesParent/moduleService/pom.xml | 10 UI-Project/vite.config.js | 2 27 files changed, 434 insertions(+), 213 deletions(-) diff --git a/UI-Project/config.js b/UI-Project/config.js index 788923e..bf51358 100644 --- a/UI-Project/config.js +++ b/UI-Project/config.js @@ -1,5 +1,5 @@ export default { - serverUrl: "10.153.19.150:88/api", + serverUrl: "127.0.0.1:88/api", //serverUrl: "localhost:88/api/", serverUrl2: "10.153.19.150:88" //serverUrl:"res.abeim.cn" diff --git a/UI-Project/vite.config.js b/UI-Project/vite.config.js index e0a49a0..b93f5ee 100644 --- a/UI-Project/vite.config.js +++ b/UI-Project/vite.config.js @@ -22,7 +22,7 @@ https: false, proxy: { '/api': { - target: 'http://10.153.19.150:88/', + target: 'http://127.0.0.1:88/', changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, '/'), }, diff --git a/hangzhoumesParent/common/pom.xml b/hangzhoumesParent/common/pom.xml index ae22d4f..3a8a351 100644 --- a/hangzhoumesParent/common/pom.xml +++ b/hangzhoumesParent/common/pom.xml @@ -48,6 +48,12 @@ </dependency> <dependency> + <groupId>com.github.yulichang</groupId> + <artifactId>mybatis-plus-join-boot-starter</artifactId> + <version>1.4.8</version> + </dependency> + + <dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>3.3.1</version> @@ -170,12 +176,6 @@ <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.33</version> - </dependency> - - <dependency> - <groupId>com.github.yulichang</groupId> - <artifactId>mybatis-plus-join</artifactId> - <version>1.2.4</version> </dependency> </dependencies> diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Swagger2Config.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Swagger2Config.java index 8a8dca4..f95b3bb 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Swagger2Config.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Swagger2Config.java @@ -49,43 +49,10 @@ .globalOperationParameters(pars); } - @Bean - public Docket adminApiConfig() { - List<Parameter> pars = new ArrayList<>(); - ParameterBuilder tokenPar = new ParameterBuilder(); - tokenPar.name("adminId") - .description("鐢ㄦ埛token") - .defaultValue("1") - .modelRef(new ModelRef("string")) - .parameterType("header") - .required(false) - .build(); - pars.add(tokenPar.build()); - - return new Docket(DocumentationType.SWAGGER_2) - .groupName("adminApi") - .apiInfo(adminApiInfo()) - .select() - //鍙樉绀篴dmin璺緞涓嬬殑椤甸潰 - .apis(RequestHandlerSelectors.basePackage("com.mes")) - .paths(PathSelectors.any()) - .build() - .globalOperationParameters(pars); - } - private ApiInfo webApiInfo() { return new ApiInfoBuilder() .title("缃戠珯-API鏂囨。") .description("鏈枃妗f弿杩颁簡mes缃戠珯寰湇鍔℃帴鍙e畾涔�") - .version("1.0") - .contact(new Contact("zhan_py", "", "")) - .build(); - } - - private ApiInfo adminApiInfo() { - return new ApiInfoBuilder() - .title("鍚庡彴绠$悊绯荤粺-API鏂囨。") - .description("鏈枃妗f弿杩颁簡mes鍚庡彴绯荤粺鏈嶅姟鎺ュ彛瀹氫箟") .version("1.0") .contact(new Contact("zhan_py", "", "")) .build(); diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/config/TokenWebSecurityConfig.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/config/TokenWebSecurityConfig.java index e4a543e..cfe6197 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/config/TokenWebSecurityConfig.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/config/TokenWebSecurityConfig.java @@ -8,17 +8,27 @@ import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; import org.springframework.security.config.http.SessionCreationPolicy; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.AuthenticationEntryPoint; +import org.springframework.security.web.access.AccessDeniedHandler; +import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; @Configuration -//@EnableWebSecurity +@EnableWebSecurity @EnableGlobalMethodSecurity(prePostEnabled = true) public class TokenWebSecurityConfig extends WebSecurityConfigurerAdapter { @Autowired private JwtAuthenticationTokenFilter jwtAuthenticationTokenFilter; + + @Autowired + private AuthenticationEntryPoint authenticationEntryPoint; + + @Autowired + private AccessDeniedHandler accessDeniedHandler; @Bean public PasswordEncoder passwordEncoder() { @@ -39,10 +49,16 @@ .authorizeRequests() // 瀵逛簬鐧诲綍鎺ュ彛 鍏佽鍖垮悕璁块棶 .antMatchers("/userinfo/login").anonymous() - .antMatchers("/hello").permitAll() // 闄や笂闈㈠鐨勬墍鏈夎姹傚叏閮ㄩ渶瑕侀壌鏉冭璇� - .anyRequest().permitAll(); -// http.addFilterBefore(jwtAuthenticationTokenFilter, UsernamePasswordAuthenticationFilter.class); + .anyRequest().authenticated(); + http.addFilterBefore(jwtAuthenticationTokenFilter, UsernamePasswordAuthenticationFilter.class); + + //閰嶇疆寮傚父澶勭悊鍣� + http.exceptionHandling() + .authenticationEntryPoint(authenticationEntryPoint) + .accessDeniedHandler(accessDeniedHandler); + //鍏佽璺ㄥ煙 + http.cors(); } @Bean diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/config/TokenWebSecurityConfig.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/config/TokenWebSecurityConfig.java deleted file mode 100644 index 610451e..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/config/TokenWebSecurityConfig.java +++ /dev/null @@ -1,69 +0,0 @@ -//package com.mes.config; -// -// -//import com.mes.filter.TokenAuthFilter; -//import com.mes.filter.TokenLoginFilter; -//import com.mes.security.DefaultPasswordEncoder; -//import com.mes.security.TokenLogoutHandler; -//import com.mes.security.TokenManager; -//import com.mes.security.UnauthEntryPoint; -//import org.springframework.beans.factory.annotation.Autowired; -//import org.springframework.context.annotation.Configuration; -//import org.springframework.data.redis.core.RedisTemplate; -//import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; -//import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; -//import org.springframework.security.config.annotation.web.builders.HttpSecurity; -//import org.springframework.security.config.annotation.web.builders.WebSecurity; -//import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; -//import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; -//import org.springframework.security.core.userdetails.UserDetailsService; -// -//@Configuration -//@EnableWebSecurity -//@EnableGlobalMethodSecurity(prePostEnabled = true) -//public class TokenWebSecurityConfig extends WebSecurityConfigurerAdapter { -// -// private TokenManager tokenManager; -// private RedisTemplate redisTemplate; -// private DefaultPasswordEncoder defaultPasswordEncoder; -// private UserDetailsService userDetailsService; -// -// @Autowired -// public TokenWebSecurityConfig(UserDetailsService userDetailsService, DefaultPasswordEncoder defaultPasswordEncoder, -// TokenManager tokenManager, RedisTemplate redisTemplate) { -// this.userDetailsService = userDetailsService; -// this.defaultPasswordEncoder = defaultPasswordEncoder; -// this.tokenManager = tokenManager; -// this.redisTemplate = redisTemplate; -// } -// -// /** -// * 閰嶇疆璁剧疆 -// * @param http -// * @throws Exception -// */ -// //璁剧疆閫�鍑虹殑鍦板潃鍜宼oken锛宺edis鎿嶄綔鍦板潃 -// @Override -// protected void configure(HttpSecurity http) throws Exception { -// http.exceptionHandling() -// .authenticationEntryPoint(new UnauthEntryPoint())//娌℃湁鏉冮檺璁块棶 -// .and().csrf().disable() -// .authorizeRequests() -// .anyRequest().authenticated() -// .and().logout().logoutUrl("/admin/acl/index/logout")//閫�鍑鸿矾寰� -// .addLogoutHandler(new TokenLogoutHandler(tokenManager,redisTemplate)).and() -// .addFilter(new TokenLoginFilter(authenticationManager(), tokenManager, redisTemplate)) -// .addFilter(new TokenAuthFilter(authenticationManager(), tokenManager, redisTemplate)).httpBasic(); -// } -// -// //璋冪敤userDetailsService鍜屽瘑鐮佸鐞� -// @Override -// public void configure(AuthenticationManagerBuilder auth) throws Exception { -// auth.userDetailsService(userDetailsService).passwordEncoder(defaultPasswordEncoder); -// } -// //涓嶈繘琛岃璇佺殑璺緞锛屽彲浠ョ洿鎺ヨ闂� -// @Override -// public void configure(WebSecurity web) throws Exception { -// web.ignoring().antMatchers("/api/**"); -// } -//} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/entity/SecurityUser.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/entity/SecurityUser.java deleted file mode 100644 index b0f9c1a..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/entity/SecurityUser.java +++ /dev/null @@ -1,73 +0,0 @@ -//package com.mes.entity; -// -//import lombok.Data; -//import org.springframework.security.core.GrantedAuthority; -//import org.springframework.security.core.authority.SimpleGrantedAuthority; -//import org.springframework.security.core.userdetails.UserDetails; -//import org.springframework.util.StringUtils; -// -//import java.util.ArrayList; -//import java.util.Collection; -//import java.util.List; -// -//@Data -//public class SecurityUser implements UserDetails { -// -// //褰撳墠鐧诲綍鐢ㄦ埛 -// private transient User currentUserInfo; -// -// //褰撳墠鏉冮檺 -// private List<String> permissionValueList; -// -// public SecurityUser() { -// } -// -// public SecurityUser(User user) { -// if (user != null) { -// this.currentUserInfo = user; -// } -// } -// -// @Override -// public Collection<? extends GrantedAuthority> getAuthorities() { -// Collection<GrantedAuthority> authorities = new ArrayList<>(); -// for(String permissionValue : permissionValueList) { -// if(StringUtils.isEmpty(permissionValue)) continue; -// SimpleGrantedAuthority authority = new SimpleGrantedAuthority(permissionValue); -// authorities.add(authority); -// } -// -// return authorities; -// } -// -// @Override -// public String getPassword() { -// return currentUserInfo.getPassword(); -// } -// -// @Override -// public String getUsername() { -// return currentUserInfo.getUsername(); -// } -// -// @Override -// public boolean isAccountNonExpired() { -// return true; -// } -// -// @Override -// public boolean isAccountNonLocked() { -// return true; -// } -// -// @Override -// public boolean isCredentialsNonExpired() { -// return true; -// } -// -// @Override -// public boolean isEnabled() { -// return true; -// } -//} -// diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/entity/User.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/entity/User.java deleted file mode 100644 index 2e3ec7e..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/entity/User.java +++ /dev/null @@ -1,31 +0,0 @@ -//package com.mes.entity; -// -//import io.swagger.annotations.ApiModel; -//import io.swagger.annotations.ApiModelProperty; -//import lombok.Data; -// -//import java.io.Serializable; -// -//@Data -//@ApiModel(description = "鐢ㄦ埛瀹炰綋绫�") -//public class User implements Serializable { -// -// private static final long serialVersionUID = 1L; -// -// @ApiModelProperty(value = "寰俊openid") -// private String username; -// -// @ApiModelProperty(value = "瀵嗙爜") -// private String password; -// -// @ApiModelProperty(value = "鏄电О") -// private String nickName; -// -// @ApiModelProperty(value = "鐢ㄦ埛澶村儚") -// private String salt; -// -// @ApiModelProperty(value = "鐢ㄦ埛绛惧悕") -// private String token; -// -//} -// diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/filter/TokenAuthFilter.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/filter/TokenAuthFilter.java deleted file mode 100644 index 5b1fd72..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/filter/TokenAuthFilter.java +++ /dev/null @@ -1,60 +0,0 @@ -//package com.mes.filter; -// -//import com.mes.security.TokenManager; -//import org.springframework.data.redis.core.RedisTemplate; -//import org.springframework.security.authentication.AuthenticationManager; -//import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -//import org.springframework.security.core.GrantedAuthority; -//import org.springframework.security.core.authority.SimpleGrantedAuthority; -//import org.springframework.security.core.context.SecurityContextHolder; -//import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; -// -//import javax.servlet.FilterChain; -//import javax.servlet.ServletException; -//import javax.servlet.http.HttpServletRequest; -//import javax.servlet.http.HttpServletResponse; -//import java.io.IOException; -//import java.util.ArrayList; -//import java.util.Collection; -//import java.util.List; -// -//public class TokenAuthFilter extends BasicAuthenticationFilter { -// -// private TokenManager tokenManager; -// private RedisTemplate redisTemplate; -// public TokenAuthFilter(AuthenticationManager authenticationManager,TokenManager tokenManager,RedisTemplate redisTemplate) { -// super(authenticationManager); -// this.tokenManager = tokenManager; -// this.redisTemplate = redisTemplate; -// } -// -// @Override -// protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException { -// //鑾峰彇褰撳墠璁よ瘉鎴愬姛鐢ㄦ埛鏉冮檺淇℃伅 -// UsernamePasswordAuthenticationToken authRequest = getAuthentication(request); -// //鍒ゆ柇濡傛灉鏈夋潈闄愪俊鎭紝鏀惧埌鏉冮檺涓婁笅鏂囦腑 -// if(authRequest != null) { -// SecurityContextHolder.getContext().setAuthentication(authRequest); -// } -// chain.doFilter(request,response); -// } -// -// private UsernamePasswordAuthenticationToken getAuthentication(HttpServletRequest request) { -// //浠巋eader鑾峰彇token -// String token = request.getHeader("token"); -// if(token != null) { -// //浠巘oken鑾峰彇鐢ㄦ埛鍚� -// String username = tokenManager.getUserInfoFromToken(token); -// //浠巖edis鑾峰彇瀵瑰簲鏉冮檺鍒楄〃 -// List<String> permissionValueList = (List<String>)redisTemplate.opsForValue().get(username); -// Collection<GrantedAuthority> authority = new ArrayList<>(); -// for(String permissionValue : permissionValueList) { -// SimpleGrantedAuthority auth = new SimpleGrantedAuthority(permissionValue); -// authority.add(auth); -// } -// return new UsernamePasswordAuthenticationToken(username,token,authority); -// } -// return null; -// } -// -//} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/filter/TokenLoginFilter.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/filter/TokenLoginFilter.java deleted file mode 100644 index d3f5f4c..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/filter/TokenLoginFilter.java +++ /dev/null @@ -1,74 +0,0 @@ -//package com.mes.filter; -// -//import com.fasterxml.jackson.databind.ObjectMapper; -//import com.mes.utils.Result; -//import com.mes.entity.SecurityUser; -//import com.mes.entity.User; -//import com.mes.security.TokenManager; -//import com.mes.utils.ResponseUtil; -//import org.springframework.data.redis.core.RedisTemplate; -//import org.springframework.security.authentication.AuthenticationManager; -//import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -//import org.springframework.security.core.Authentication; -//import org.springframework.security.core.AuthenticationException; -//import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; -//import org.springframework.security.web.util.matcher.AntPathRequestMatcher; -// -//import javax.servlet.FilterChain; -//import javax.servlet.ServletException; -//import javax.servlet.http.HttpServletRequest; -//import javax.servlet.http.HttpServletResponse; -//import java.io.IOException; -//import java.util.ArrayList; -// -//public class TokenLoginFilter extends UsernamePasswordAuthenticationFilter { -// -// private TokenManager tokenManager; -// private RedisTemplate redisTemplate; -// private AuthenticationManager authenticationManager; -// -// public TokenLoginFilter(AuthenticationManager authenticationManager, TokenManager tokenManager, RedisTemplate redisTemplate) { -// this.authenticationManager = authenticationManager; -// this.tokenManager = tokenManager; -// this.redisTemplate = redisTemplate; -// this.setPostOnly(false); -// this.setRequiresAuthenticationRequestMatcher(new AntPathRequestMatcher("/admin/acl/login","POST")); -// } -// -// //1 鑾峰彇琛ㄥ崟鎻愪氦鐢ㄦ埛鍚嶅拰瀵嗙爜 -// @Override -// public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) -// throws AuthenticationException { -// //鑾峰彇琛ㄥ崟鎻愪氦鏁版嵁 -// try { -// User user = new ObjectMapper().readValue(request.getInputStream(), User.class); -// return authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(user.getUsername(),user.getPassword(), -// new ArrayList<>())); -// } catch (IOException e) { -// e.printStackTrace(); -// throw new RuntimeException(); -// } -// } -// -// //2 璁よ瘉鎴愬姛璋冪敤鐨勬柟娉� -// @Override -// protected void successfulAuthentication(HttpServletRequest request, -// HttpServletResponse response, FilterChain chain, Authentication authResult) -// throws IOException, ServletException { -// //璁よ瘉鎴愬姛锛屽緱鍒拌璇佹垚鍔熶箣鍚庣敤鎴蜂俊鎭� -// SecurityUser user = (SecurityUser)authResult.getPrincipal(); -// //鏍规嵁鐢ㄦ埛鍚嶇敓鎴恡oken -// String token = tokenManager.createToken(user.getCurrentUserInfo().getUsername()); -// //鎶婄敤鎴峰悕绉板拰鐢ㄦ埛鏉冮檺鍒楄〃鏀惧埌redis -// redisTemplate.opsForValue().set(user.getCurrentUserInfo().getUsername(),user.getPermissionValueList()); -// //杩斿洖token -// ResponseUtil.out(response, Result.success(token)); -// } -// -// //3 璁よ瘉澶辫触璋冪敤鐨勬柟娉� -// @Override -// protected void unsuccessfulAuthentication(HttpServletRequest request, HttpServletResponse response, AuthenticationException failed) -// throws IOException, ServletException { -// ResponseUtil.out(response, Result.error()); -// } -//} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/DefaultPasswordEncoder.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/DefaultPasswordEncoder.java deleted file mode 100644 index fe7efc7..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/DefaultPasswordEncoder.java +++ /dev/null @@ -1,25 +0,0 @@ -//package com.mes.security; -// -//import com.mes.utils.MD5; -//import org.springframework.security.crypto.password.PasswordEncoder; -//import org.springframework.stereotype.Component; -// -//@Component -//public class DefaultPasswordEncoder implements PasswordEncoder { -// -// public DefaultPasswordEncoder() { -// this(-1); -// } -// public DefaultPasswordEncoder(int strength) { -// } -// //杩涜MD5鍔犲瘑 -// @Override -// public String encode(CharSequence charSequence) { -// return MD5.encrypt(charSequence.toString()); -// } -// //杩涜瀵嗙爜姣斿 -// @Override -// public boolean matches(CharSequence charSequence, String encodedPassword) { -// return encodedPassword.equals(MD5.encrypt(charSequence.toString())); -// } -//} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/TokenLogoutHandler.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/TokenLogoutHandler.java deleted file mode 100644 index e696abc..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/TokenLogoutHandler.java +++ /dev/null @@ -1,35 +0,0 @@ -//package com.mes.security; -// -//import com.mes.utils.Result; -//import com.mes.utils.ResponseUtil; -//import org.springframework.data.redis.core.RedisTemplate; -//import org.springframework.security.core.Authentication; -//import org.springframework.security.web.authentication.logout.LogoutHandler; -// -//import javax.servlet.http.HttpServletRequest; -//import javax.servlet.http.HttpServletResponse; -// -////閫�鍑哄鐞嗗櫒 -//public class TokenLogoutHandler implements LogoutHandler { -// private TokenManager tokenManager; -// private RedisTemplate redisTemplate; -// -// public TokenLogoutHandler(TokenManager tokenManager,RedisTemplate redisTemplate) { -// this.tokenManager = tokenManager; -// this.redisTemplate = redisTemplate; -// } -// @Override -// public void logout(HttpServletRequest request, HttpServletResponse response, Authentication authentication) { -// //1 浠巋eader閲岄潰鑾峰彇token -// //2 token涓嶄负绌猴紝绉婚櫎token锛屼粠redis鍒犻櫎token -// String token = request.getHeader("token"); -// if(token != null) { -// //绉婚櫎 -// tokenManager.removeToken(token); -// //浠巘oken鑾峰彇鐢ㄦ埛鍚� -// String username = tokenManager.getUserInfoFromToken(token); -// redisTemplate.delete(username); -// } -// ResponseUtil.out(response, Result.success()); -// } -//} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/TokenManager.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/TokenManager.java deleted file mode 100644 index 61cf3ee..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/TokenManager.java +++ /dev/null @@ -1,30 +0,0 @@ -//package com.mes.security; -// -//import io.jsonwebtoken.CompressionCodecs; -//import io.jsonwebtoken.Jwts; -//import io.jsonwebtoken.SignatureAlgorithm; -//import org.springframework.stereotype.Component; -// -//import java.util.Date; -// -//@Component -//public class TokenManager { -// //token鏈夋晥鏃堕暱 -// private long tokenEcpiration = 24*60*60*1000; -// //缂栫爜绉橀挜 -// private String tokenSignKey = "123456"; -// //1 浣跨敤jwt鏍规嵁鐢ㄦ埛鍚嶇敓鎴恡oken -// public String createToken(String username) { -// String token = Jwts.builder().setSubject(username) -// .setExpiration(new Date(System.currentTimeMillis()+tokenEcpiration)) -// .signWith(SignatureAlgorithm.HS512, tokenSignKey).compressWith(CompressionCodecs.GZIP).compact(); -// return token; -// } -// //2 鏍规嵁token瀛楃涓插緱鍒扮敤鎴蜂俊鎭� -// public String getUserInfoFromToken(String token) { -// String userinfo = Jwts.parser().setSigningKey(tokenSignKey).parseClaimsJws(token).getBody().getSubject(); -// return userinfo; -// } -// //3 鍒犻櫎token -// public void removeToken(String token) { } -//} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/UnauthEntryPoint.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/UnauthEntryPoint.java deleted file mode 100644 index bc09439..0000000 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/security/UnauthEntryPoint.java +++ /dev/null @@ -1,18 +0,0 @@ -//package com.mes.security; -// -//import com.mes.utils.Result; -//import com.mes.utils.ResponseUtil; -//import org.springframework.security.core.AuthenticationException; -//import org.springframework.security.web.AuthenticationEntryPoint; -// -//import javax.servlet.ServletException; -//import javax.servlet.http.HttpServletRequest; -//import javax.servlet.http.HttpServletResponse; -//import java.io.IOException; -// -//public class UnauthEntryPoint implements AuthenticationEntryPoint { -// @Override -// public void commence(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, AuthenticationException e) throws IOException, ServletException { -// ResponseUtil.out(httpServletResponse, Result.error()); -// } -//} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/controller/SysUserController.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/controller/SysUserController.java index 326e4d0..4351325 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/controller/SysUserController.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/controller/SysUserController.java @@ -2,10 +2,20 @@ import com.mes.userinfo.entity.SysUser; +import com.mes.userinfo.entity.request.UserRequest; +import com.mes.userinfo.entity.vo.SysUserVO; import com.mes.userinfo.service.SysUserService; import com.mes.utils.Result; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.Map; /** * <p> @@ -15,6 +25,7 @@ * @author zhoush * @since 2024-04-11 */ +@ApiModel("鐢ㄦ埛淇℃伅") @RestController @RequestMapping("/userinfo") public class SysUserController { @@ -22,14 +33,42 @@ @Autowired private SysUserService sysUserService; + @ApiOperation("鐢ㄦ埛鐧诲綍") @PostMapping("/login") - public Result login(@RequestBody SysUser user) { - return sysUserService.login(user); + public Result<Map<String, String>> login(@RequestBody SysUser user) { + return Result.success(sysUserService.login(user)); } - @GetMapping("/hello") - public Result hello() { - return Result.success("eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJlZjMyMjQ4NDcyODE0ZWFlYWRlOTBkYmZjYWFlZmNmZSIsInN1YiI6IjEiLCJpc3MiOiJzZyIsImlhdCI6MTcxMjkwMjI0NCwiZXhwIjoxNzEyOTA1ODQ0fQ.DlJkhkiwjZSqprdLzKaTB3yuyxGukerKeF0FbJK_6HY"); + @ApiOperation("閫�鍑虹櫥褰�") + @PostMapping("/logout") + public Result<String> logout() { + return Result.success(sysUserService.logout()); } + + @ApiOperation("鏂板鐢ㄦ埛淇℃伅") + @PostMapping("/saveUser") + public Result<SysUserVO> saveUser(@RequestBody SysUserVO sysUser) { + return Result.success(sysUserService.saveUser(sysUser)); + } + + @ApiOperation("鑾峰彇鐢ㄦ埛鍒楄〃") + @PostMapping("/listByUserName") + public Result<List<SysUserVO>> listByUserName(@RequestBody UserRequest request) { + return Result.success(sysUserService.listByUserName(request)); + } + + @ApiOperation("鏇存柊鐢ㄦ埛淇℃伅") + @PostMapping("/updateUser") + public Result<SysUserVO> updateUser(@RequestBody SysUserVO sysUser) { + return Result.success(sysUserService.updateUser(sysUser)); + } + + @ApiOperation("鍒犻櫎鐢ㄦ埛淇℃伅") + @PostMapping("/deleteUser") + public Result<String> deleteUser(@RequestBody SysUserVO sysUser) { + return Result.success(sysUserService.deleteUser(sysUser)); + } + + } diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/LoginUser.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/LoginUser.java index d60a05f..97e036f 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/LoginUser.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/LoginUser.java @@ -28,7 +28,7 @@ /** * 瀛樺偍SpringSecurity璋冪敤getAuthorities()鏂规硶鑾峰彇鐨勬潈闄愪俊鎭殑闆嗗悎 */ - @JSONField(serialize = false) +// @JSONField(serialize = false) private List<GrantedAuthority> authorities; diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/request/UserRequest.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/request/UserRequest.java new file mode 100644 index 0000000..e58f366 --- /dev/null +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/request/UserRequest.java @@ -0,0 +1,17 @@ +package com.mes.userinfo.entity.request; + +import cn.hutool.db.Page; +import lombok.Data; + +/** + * @Author : zhoush + * @Date: 2024/4/22 11:21 + * @Description: + */ +@Data +public class UserRequest { + + private String userName; + + private Page page; +} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/vo/SysUserVO.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/vo/SysUserVO.java new file mode 100644 index 0000000..109ccfd --- /dev/null +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/entity/vo/SysUserVO.java @@ -0,0 +1,63 @@ +package com.mes.userinfo.entity.vo; + +import com.mes.role.entity.SysRole; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * <p> + * 鐢ㄦ埛琛� + * </p> + * + * @author zhoush + * @since 2024-04-11 + */ +@ApiModel(description = "<p> 鐢ㄦ埛淇℃伅 </p>") +@Data +public class SysUserVO implements Serializable { + + @ApiModelProperty(hidden = true) + private static final long serialVersionUID = 1L; + + /** + * 涓婚敭 + */ + @ApiModelProperty(value = "涓婚敭", position = 2) + private Long id; + + /** + * 鐢ㄦ埛鍚� + */ + @ApiModelProperty(value = "鐢ㄦ埛鍚�", position = 3) + private String userName; + + /** + * 鏄电О + */ + @ApiModelProperty(value = "鏄电О", position = 4) + private String nickName; + + /** + * 瀵嗙爜 + */ + @ApiModelProperty(value = "瀵嗙爜", position = 5) + private String password; + + /** + * 澶村儚 + */ + @ApiModelProperty(value = "澶村儚", position = 6) + private String avatar; + + /** + * 鐢ㄦ埛鐨勮鑹蹭俊鎭� + */ + @ApiModelProperty(value = "鐢ㄦ埛鐨勮鑹蹭俊鎭�", position = 7) + private List<SysRole> roleList; + + +} diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/mapper/SysUserMapper.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/mapper/SysUserMapper.java index 093812d..f3e2f25 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/mapper/SysUserMapper.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/mapper/SysUserMapper.java @@ -1,6 +1,6 @@ package com.mes.userinfo.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.github.yulichang.base.MPJBaseMapper; import com.mes.userinfo.entity.SysUser; import org.apache.ibatis.annotations.Mapper; @@ -13,6 +13,6 @@ * @since 2024-04-11 */ @Mapper -public interface SysUserMapper extends BaseMapper<SysUser> { +public interface SysUserMapper extends MPJBaseMapper<SysUser> { } diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/SysUserService.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/SysUserService.java index ca49aa0..83caa2d 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/SysUserService.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/SysUserService.java @@ -2,7 +2,11 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.mes.userinfo.entity.SysUser; -import com.mes.utils.Result; +import com.mes.userinfo.entity.request.UserRequest; +import com.mes.userinfo.entity.vo.SysUserVO; + +import java.util.List; +import java.util.Map; /** * <p> @@ -14,7 +18,50 @@ */ public interface SysUserService extends IService<SysUser> { - Result login(SysUser user); + /** + * 鐢ㄦ埛鐧诲綍 + * + * @param user + * @return + */ + Map<String, String> login(SysUser user); - Result logout(); + /** + * 閫�鍑虹櫥褰� + * + * @return + */ + String logout(); + + /** + * 鏂板鐢ㄦ埛淇℃伅 + * + * @param user + * @return + */ + SysUserVO saveUser(SysUserVO user); + + /** + * 鎸夊悕绉拌幏鍙栫敤鎴蜂俊鎭� + * + * @param sysUser + * @return + */ + SysUserVO updateUser(SysUserVO sysUser); + + /** + * 鎸夊悕绉拌幏鍙栫敤鎴蜂俊鎭� + * + * @param request + * @return + */ + List<SysUserVO> listByUserName(UserRequest request); + + /** + * 鍒犻櫎鐢ㄦ埛淇℃伅 + * + * @param user + * @return + */ + String deleteUser(SysUserVO user); } diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java index f6207b7..7d55aad 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java @@ -2,14 +2,18 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.mes.common.utils.JwtUtil; import com.mes.common.utils.RedisUtil; import com.mes.menu.mapper.SysMenuMapper; +import com.mes.role.entity.SysRole; import com.mes.userinfo.entity.LoginUser; import com.mes.userinfo.entity.SysUser; +import com.mes.userinfo.entity.SysUserRole; +import com.mes.userinfo.entity.request.UserRequest; +import com.mes.userinfo.entity.vo.SysUserVO; import com.mes.userinfo.mapper.SysUserMapper; import com.mes.userinfo.service.SysUserService; -import com.mes.utils.Result; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; @@ -19,10 +23,12 @@ import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import javax.annotation.Resource; import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Objects; /** @@ -38,6 +44,7 @@ @Autowired private AuthenticationManager authenticationManager; + @Autowired private RedisUtil redisUtil; @@ -45,7 +52,7 @@ private SysMenuMapper sysMenuMapper; @Override - public Result login(SysUser user) { + public Map<String, String> login(SysUser user) { UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(user.getUserName(), user.getPassword()); Authentication authenticate = authenticationManager.authenticate(authenticationToken); if (Objects.isNull(authenticate)) { @@ -55,24 +62,60 @@ LoginUser loginUser = (LoginUser) authenticate.getPrincipal(); String userId = loginUser.getUser().getId().toString(); String jwt = JwtUtil.createJWT(userId); + + //鏌ヨ鏉冮檺淇℃伅 +// List<String> perms = sysMenuMapper.selectPermsByUserId(userId); //authenticate瀛樺叆redis - redisUtil.setCacheObject("login:" + userId, loginUser); + redisUtil.setCacheObject("login:" + userId, loginUser.getAuthorities()); //鎶妕oken鍝嶅簲缁欏墠绔� HashMap<String, String> map = new HashMap<>(); map.put("token", jwt); - return Result.success(map); + return map; } @Override - public Result logout() { + public String logout() { Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); LoginUser loginUser = (LoginUser) authentication.getPrincipal(); Long userid = loginUser.getUser().getId(); redisUtil.deleteObject("login:" + userid); - return Result.success("閫�鍑烘垚鍔�"); + return "娉ㄩ攢鎴愬姛"; } @Override + public SysUserVO saveUser(SysUserVO user) { + return null; + } + + @Override + public SysUserVO updateUser(SysUserVO sysUser) { + return null; + } + + @Override + public List<SysUserVO> listByUserName(UserRequest request) { + MPJLambdaWrapper<SysUser> wrapper = new MPJLambdaWrapper<>(); + wrapper.selectAll(SysUser.class) + .selectCollection(SysRole.class, SysUserVO::getRoleList) + .leftJoin(SysUserRole.class, SysUserRole::getUserId, SysUser::getId) + .leftJoin(SysRole.class, SysRole::getId, SysUserRole::getRoleId) + .like(StringUtils.hasText(request.getUserName()), SysUser::getUserName, request.getUserName()); + return baseMapper.selectJoinList(SysUserVO.class, wrapper); + } + + @Override + public String deleteUser(SysUserVO user) { + return null; + } + + /** + * 瀹炵幇UserDetailsService鎺ュ彛锛屼粠鏁版嵁搴撳唴鑾峰彇鐢ㄦ埛鍙婃潈闄愪俊鎭� + * + * @param username + * @return + * @throws UsernameNotFoundException + */ + @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { LambdaQueryWrapper<SysUser> lqw = new LambdaQueryWrapper<>(); lqw.eq(SysUser::getUserName, username); diff --git a/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml b/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml index d5978be..86f60c7 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml +++ b/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml @@ -3,18 +3,18 @@ spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8&characterEncoding=utf-8&useSSL=false + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8&characterEncoding=utf-8&useSSL=false username: root - password: beibo.123/ + password: root cloud: nacos: discovery: - server-addr: 10.153.19.150:8848 + server-addr: 127.0.0.1:8848 application: name: security redis: database: 0 - host: 10.153.19.150 + host: 127.0.0.1 port: 6379 password: session: diff --git a/hangzhoumesParent/gateway/pom.xml b/hangzhoumesParent/gateway/pom.xml index 6334bf7..ec368a6 100644 --- a/hangzhoumesParent/gateway/pom.xml +++ b/hangzhoumesParent/gateway/pom.xml @@ -28,5 +28,13 @@ <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-maven-plugin</artifactId> + </plugin> + </plugins> + </build> </project> \ No newline at end of file diff --git a/hangzhoumesParent/gateway/src/main/resources/application.yml b/hangzhoumesParent/gateway/src/main/resources/application.yml index 1452d31..3ddd26b 100644 --- a/hangzhoumesParent/gateway/src/main/resources/application.yml +++ b/hangzhoumesParent/gateway/src/main/resources/application.yml @@ -6,7 +6,7 @@ cloud: nacos: discovery: - server-addr: 10.153.19.150:8848 + server-addr: 127.0.0.1:8848 gateway: discovery: locator: diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/pom.xml b/hangzhoumesParent/moduleService/CacheGlassModule/pom.xml index 192058e..0d87b5f 100644 --- a/hangzhoumesParent/moduleService/CacheGlassModule/pom.xml +++ b/hangzhoumesParent/moduleService/CacheGlassModule/pom.xml @@ -17,16 +17,16 @@ <artifactId>junit</artifactId> <scope>test</scope> </dependency> - <dependency> - <groupId>com.github.yulichang</groupId> - <artifactId>mybatis-plus-join</artifactId> - <version>1.1.6</version> - </dependency> -<!-- <dependency>--> -<!-- <groupId>com.github.yulichang</groupId>--> -<!-- <artifactId>mybatis-plus-join-boot-starter</artifactId>--> -<!-- <version>1.4.12</version>--> -<!-- </dependency>--> + <!-- <dependency>--> + <!-- <groupId>com.github.yulichang</groupId>--> + <!-- <artifactId>mybatis-plus-join</artifactId>--> + <!-- <version>1.1.6</version>--> + <!-- </dependency>--> + <!-- <dependency>--> + <!-- <groupId>com.github.yulichang</groupId>--> + <!-- <artifactId>mybatis-plus-join-boot-starter</artifactId>--> + <!-- <version>1.4.12</version>--> + <!-- </dependency>--> </dependencies> <properties> diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml index adff7bf..0a76a5b 100644 --- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml @@ -7,34 +7,34 @@ strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. datasource: hangzhoumes: - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 username: root - password: beibo.123/ + password: root driver-class-name: com.mysql.cj.jdbc.Driver pp: - url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.56.10:3306/pp?serverTimezone=GMT%2b8 username: root - password: beibo.123/ + password: root driver-class-name: com.mysql.cj.jdbc.Driver # pp: -# url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8 + # url: jdbc:mysql://192.168.56.10:3306/pp?serverTimezone=GMT%2b8 # username: root -# password: beibo.123/ + # password: root # driver-class-name: com.mysql.cj.jdbc.Driver # salve_hangzhoumes: # url: jdbc:sqlserver://10.153.19.150:1433;databasename=hangzhoumes # username: sa -# password: beibo.123/ + # password: root # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver cloud: nacos: discovery: - server-addr: 10.153.19.150:8848 + server-addr: 127.0.0.1:8848 application: name: cacheGlass redis: database: 0 - host: 10.153.19.150 + host: 127.0.0.1 port: 6379 password: 123456 session: diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml index 4ecea3c..88b2846 100644 --- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml @@ -13,11 +13,11 @@ <artifactId>cacheVerticalGlass</artifactId> <dependencies> - <dependency> - <groupId>com.github.yulichang</groupId> - <artifactId>mybatis-plus-join</artifactId> - <version>1.1.6</version> - </dependency> + <!-- <dependency>--> + <!-- <groupId>com.github.yulichang</groupId>--> + <!-- <artifactId>mybatis-plus-join</artifactId>--> + <!-- <version>1.1.6</version>--> + <!-- </dependency>--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml index 71c5cb3..e730d2a 100644 --- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml @@ -8,9 +8,9 @@ strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. datasource: hangzhoumes: - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 username: root - password: beibo.123/ + password: root driver-class-name: com.mysql.cj.jdbc.Driver salve_hangzhoumes: url: jdbc:sqlserver://10.153.19.150:1433;databasename=hangzhoumes @@ -20,12 +20,12 @@ cloud: nacos: discovery: - server-addr: 10.153.19.150:8848 + server-addr: 127.0.0.1:8848 application: name: cacheVerticalGlass redis: database: 0 - host: 10.153.19.150 + host: 127.0.0.1 port: 6379 password: 123456 mybatis-plus: diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml index ae352b3..cf5a1d6 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml @@ -8,24 +8,24 @@ strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. datasource: hangzhoumes: - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 username: root - password: beibo.123/ + password: root driver-class-name: com.mysql.cj.jdbc.Driver pp: - url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.56.10:3306/pp?serverTimezone=GMT%2b8 username: root - password: beibo.123/ + password: root driver-class-name: com.mysql.cj.jdbc.Driver cloud: nacos: discovery: - server-addr: 10.153.19.150:8848 + server-addr: 127.0.0.1:8848 application: name: loadGlass redis: database: 0 - host: 10.153.19.150 + host: 127.0.0.1 port: 6379 password: 123456 mybatis-plus: diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml index a84c58e..dfa6022 100644 --- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml @@ -7,19 +7,19 @@ strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. datasource: hangzhoumes: - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 username: root - password: beibo.123/ + password: root driver-class-name: com.mysql.cj.jdbc.Driver cloud: nacos: discovery: - server-addr: 10.153.19.150:8848 + server-addr: 127.0.0.1:8848 application: name: temperingGlass redis: database: 0 - host: 10.153.19.150 + host: 127.0.0.1 port: 6379 password: 123456 mybatis-plus: diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/pom.xml b/hangzhoumesParent/moduleService/UnLoadGlassModule/pom.xml index 7f8d916..e090930 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/pom.xml +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/pom.xml @@ -27,12 +27,6 @@ <dependency> - <groupId>com.github.yulichang</groupId> - <artifactId>mybatis-plus-join</artifactId> - <version>1.2.4</version> - </dependency> - - <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>sqljdbc4</artifactId> <version>4.0</version> diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java index e91289e..958affc 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java @@ -1,20 +1,17 @@ package com.mes.downstorage.service.impl; -import com.github.yulichang.query.MPJQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mes.common.PLCAutoMes; import com.mes.common.S7control; import com.mes.device.PlcParameterObject; import com.mes.downglassinfo.entity.DownGlassTask; import com.mes.downglassinfo.service.DownGlassTaskService; import com.mes.downstorage.entity.DownStorageCage; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mes.downstorage.entity.DownStorageCageDetails; -import com.mes.downstorage.mapper.DownStorageCageDetailsMapper; import com.mes.downstorage.mapper.DownStorageCageMapper; import com.mes.downstorage.service.DownStorageCageService; import com.mes.glassinfo.entity.GlassInfo; import com.mes.glassinfo.service.GlassInfoService; -import com.mes.tools.WebSocketServer; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -33,8 +30,6 @@ @Slf4j @Service public class DownStorageCageServiceImpl extends ServiceImpl<DownStorageCageMapper, DownStorageCage> implements DownStorageCageService { - @Autowired - private DownStorageCageMapper downStorageCageMapper; @Autowired private GlassInfoService glassInfoService; @@ -44,7 +39,7 @@ private DownGlassTaskService downGlassTaskService; @Override public List<Map> gettask(){ - downStorageCageMapper.selectList(null); + baseMapper.selectList(null); // downStorageCageMapper.selectJoin(); return null; }; @@ -54,14 +49,17 @@ @Override public List<DownStorageCageDetails> getCacheLeisure() { log.info(" 鏌ヨ绗煎瓙鍐呯┖闂�"); - List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNull("escd.slot") - .orderByAsc("escd.slot") - ); - return list; +// MPJLambdaWrapper<DownStorageCageDetails> wrapper = new MPJLambdaWrapper<>(); +// wrapper.selectAll(DownStorageCageDetails.class) +// List<DownStorageCageDetails> list = baseMapper.selectJoinList( +// DownStorageCageDetails.class,Wrapper<DownStorageCageDetails>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .isNull("escd.slot") +// .orderByAsc("escd.slot") +// ); +// return list; + return null; } @@ -87,17 +85,18 @@ @Override public List<DownStorageCageDetails> getCacheOut(int start, int end) { log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�"); - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id") - .leftJoin("glass_info gi on dw.flow_card_id = gi.flowcard_id and gi.flowcard_id=escd.flow_card_id ") - .isNotNull("escd.slot") - .between("dw.workstation_id", start, end) - .orderByDesc("escd.width") - .orderByDesc("escd.height") - ); +// return baseMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id") +// .leftJoin("glass_info gi on dw.flow_card_id = gi.flowcard_id and gi.flowcard_id=escd.flow_card_id ") +// .isNotNull("escd.slot") +// .between("dw.workstation_id", start, end) +// .orderByDesc("escd.width") +// .orderByDesc("escd.height") +// ); + return null; } @@ -107,12 +106,13 @@ @Override public List<Map> getCacheInfo() { log.info(" 鏌ヨ绗煎瓙鍐呬俊鎭�"); - return downStorageCageMapper.selectJoinList( - Map.class, new MPJQueryWrapper<DownStorageCageDetails>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .orderByAsc("t.slot") - ); +// return baseMapper.selectJoinList( +// Map.class, new MPJQueryWrapper<DownStorageCageDetails>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .orderByAsc("t.slot") +// ); + return null; } @@ -121,17 +121,18 @@ @Override public List<DownStorageCageDetails> getIsExistIntoCacheByLayoutAndSequence(Integer tempering_layout_id, Integer tempering_feed_sequence, double width) { log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿 鎵惧埌鐩稿悓鐗堝浘id骞朵笖澶т簬鍓嶉潰鐨勯『搴忕殑绌烘牸"); - List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .eq("escd.tempering_layout_id", tempering_layout_id) - .lt("escd.tempering_feed_sequence", tempering_feed_sequence) - .gt("t.remain_width", width) - .orderByAsc("escd.tempering_feed_sequence") - ); - return list; +// List<DownStorageCageDetails> list = baseMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .isNotNull("escd.slot") +// .eq("escd.tempering_layout_id", tempering_layout_id) +// .lt("escd.tempering_feed_sequence", tempering_feed_sequence) +// .gt("t.remain_width", width) +// .orderByAsc("escd.tempering_feed_sequence") +// ); +// return list; + return null; } @@ -143,34 +144,35 @@ @Override public List<DownStorageCageDetails> IsExistIntoCacheByflowcardid(String flowcardid, double width) { log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿"); - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .lt("escd.flow_card_id", flowcardid) - // 鏉′欢 t.remain_width - width > 0 - .apply("t.remain_width - " + width + " > 0") - .orderByDesc("escd.tempering_layout_id, escd.tempering_feed_sequence") - ); +// return baseMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .isNotNull("escd.slot") +// .lt("escd.flow_card_id", flowcardid) +// // 鏉′欢 t.remain_width - width > 0 +// .apply("t.remain_width - " + width + " > 0") +// .orderByDesc("escd.tempering_layout_id, escd.tempering_feed_sequence") +// ); + return null; } @Override public List<DownStorageCageDetails> getIsExistIntoCacheByLayout(Integer tempering_layout_id, double width) { - log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿"); - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .lt("escd.tempering_layout_id", tempering_layout_id) - // 鏉′欢 t.remain_width - width > 0 - .apply("t.remain_width - " + width + " > 0") - .orderByDesc("escd.tempering_layout_id, escd.tempering_feed_sequence") - ); - +// log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿"); +// return baseMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .isNotNull("escd.slot") +// .lt("escd.tempering_layout_id", tempering_layout_id) +// // 鏉′欢 t.remain_width - width > 0 +// .apply("t.remain_width - " + width + " > 0") +// .orderByDesc("escd.tempering_layout_id, escd.tempering_feed_sequence") +// ); + return null; } @@ -183,15 +185,16 @@ public List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width) { log.info(" 鍗曠墖鎯呭喌 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿 鎵惧埌鐩稿悓娴佺▼鍗″彿鐨勭┖鏍�"); - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .eq("escd.flow_card_id", flowcardid) - .gt("t.remain_width", width) - .orderByAsc("escd.sequence") - ); +// return baseMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .isNotNull("escd.slot") +// .eq("escd.flow_card_id", flowcardid) +// .gt("t.remain_width", width) +// .orderByAsc("escd.sequence") +// ); + return null; } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml index 3b51bf1..99b51e8 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml @@ -8,9 +8,9 @@ strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. datasource: hangzhoumes: - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 username: root - password: beibo.123/ + password: root driver-class-name: com.mysql.cj.jdbc.Driver salve_hangzhoumes: url: jdbc:sqlserver://10.153.19.150:1433;databasename=hangzhoumes @@ -20,12 +20,12 @@ cloud: nacos: discovery: - server-addr: 10.153.19.150:8848 + server-addr: 127.0.0.1:8848 application: name: unLoadGlass redis: database: 0 - host: 10.153.19.150 + host: 127.0.0.1 port: 6379 password: 123456 mybatis-plus: diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/UnLoadGlassApplicationTest.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/UnLoadGlassApplicationTest.java new file mode 100644 index 0000000..69557c4 --- /dev/null +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/UnLoadGlassApplicationTest.java @@ -0,0 +1,42 @@ +package com.mes; + +import com.mes.downglassinfo.entity.DownGlassTask; +import com.mes.downglassinfo.mapper.DownGlassTaskMapper; +import lombok.extern.slf4j.Slf4j; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import java.util.Arrays; + +/** + * @Author : zhoush + * @Date: 2024/3/27 16:37 + * @Description: + */ +@Slf4j +@RunWith(SpringRunner.class) +@SpringBootTest(classes = UnLoadGlassApplication.class) +public class UnLoadGlassApplicationTest { + + @Autowired + DownGlassTaskMapper downGlassTaskMapper; + + @Test + public void testFindPath() { + log.info("瀹屾暣璺緞锛歿}", Arrays.asList("123")); + } + + @Test + public void testCacheGlass() { + DownGlassTask glassTask = new DownGlassTask(); + glassTask.setId(1L); + glassTask.setTaskType("1"); + glassTask.setHeight(100.01); + glassTask.setWidth(200.02); + int i = downGlassTaskMapper.insert(glassTask); + log.info("鎻掑叆缁撴灉锛歿}", i); + } +} diff --git a/hangzhoumesParent/moduleService/pom.xml b/hangzhoumesParent/moduleService/pom.xml index c3bf5ce..005b896 100644 --- a/hangzhoumesParent/moduleService/pom.xml +++ b/hangzhoumesParent/moduleService/pom.xml @@ -56,11 +56,11 @@ </dependency> <!--寮�鍙戣�呭伐鍏�--> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-devtools</artifactId> - <optional>true</optional> - </dependency> + <!-- <dependency>--> + <!-- <groupId>org.springframework.boot</groupId>--> + <!-- <artifactId>spring-boot-devtools</artifactId>--> + <!-- <optional>true</optional>--> + <!-- </dependency>--> <dependency> <groupId>org.springframework.boot</groupId> -- Gitblit v1.8.0