Compare commits
8 Commits
c347b94b1f
...
9ad475910c
Author | SHA1 | Date |
---|---|---|
pzk9h3i5c | 9ad475910c | 5 months ago |
p87sjbg3f | b054774e4d | 5 months ago |
p87sjbg3f | a5b0f3c199 | 5 months ago |
p87sjbg3f | ee29c4ffb6 | 5 months ago |
p87sjbg3f | 93cc176101 | 5 months ago |
p87sjbg3f | cf82ad8882 | 5 months ago |
p87sjbg3f | fd24b92320 | 5 months ago |
p87sjbg3f | 4b613344b3 | 5 months ago |
@ -0,0 +1,26 @@
|
|||||||
|
package com.qsd.orange.controller;
|
||||||
|
|
||||||
|
import com.qsd.orange.service.AnnouncementService;
|
||||||
|
import com.qsd.orange.global.R;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("announcement")
|
||||||
|
public class AnnouncementController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private AnnouncementService announcementService;
|
||||||
|
|
||||||
|
@GetMapping("all")
|
||||||
|
public R all(
|
||||||
|
@RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(value = "limit", required = false, defaultValue = "9") Integer limit
|
||||||
|
){
|
||||||
|
return R.success().page(announcementService.all(page, limit));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,56 @@
|
|||||||
|
package com.qsd.orange.controller;
|
||||||
|
|
||||||
|
import com.qsd.orange.po.BusCar;
|
||||||
|
import com.qsd.orange.service.CarService;
|
||||||
|
import com.qsd.orange.global.R;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.security.core.Authentication;
|
||||||
|
import org.springframework.security.core.userdetails.User;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("car")
|
||||||
|
public class CarController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CarService carService;
|
||||||
|
|
||||||
|
@GetMapping("all")
|
||||||
|
public R all(
|
||||||
|
@RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(value = "limit", required = false, defaultValue = "9") Integer limit,
|
||||||
|
@RequestParam(value = "status", required = false, defaultValue = "-1")Integer status
|
||||||
|
){
|
||||||
|
return R.success().page(carService.queryAllCar(page, limit, status));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("search")
|
||||||
|
public R search(
|
||||||
|
@RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(value = "limit", required = false, defaultValue = "9") Integer limit,
|
||||||
|
@RequestParam(value = "status", required = false, defaultValue = "-1") Integer status,
|
||||||
|
@RequestParam(value = "brand", required = false, defaultValue = "") String brand,
|
||||||
|
@RequestParam(value = "color", required = false, defaultValue = "") String color
|
||||||
|
){
|
||||||
|
return R.success().page(carService.queryCar(page, limit, status, brand, color));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("search/number")
|
||||||
|
public R number(
|
||||||
|
@RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(value = "limit", required = false, defaultValue = "9") Integer limit,
|
||||||
|
@RequestParam(value = "number", required = false, defaultValue = "") String number
|
||||||
|
){
|
||||||
|
return R.success().page(carService.queryCarByNumber(page, limit, number));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("add")
|
||||||
|
public R add(@Valid BusCar car, Authentication authentication){
|
||||||
|
User users = (User)authentication.getPrincipal();
|
||||||
|
String username = users.getUsername();
|
||||||
|
return R.choose(carService.add(username, car) > 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
package com.qsd.orange.controller;
|
||||||
|
|
||||||
|
import com.qsd.orange.service.CheckService;
|
||||||
|
import com.qsd.orange.global.R;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.security.core.Authentication;
|
||||||
|
import org.springframework.security.core.userdetails.User;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("check")
|
||||||
|
public class CheckController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CheckService checkService;
|
||||||
|
|
||||||
|
@PostMapping("add")
|
||||||
|
public R add(
|
||||||
|
String id,
|
||||||
|
@RequestParam(value = "problem", required = false, defaultValue = "无") String problem,
|
||||||
|
@RequestParam(value = "compensate", required = false, defaultValue = "0") Double compensate,
|
||||||
|
@RequestParam(value = "description", required = false, defaultValue = "无") String description,
|
||||||
|
Authentication authentication
|
||||||
|
){
|
||||||
|
User users = (User)authentication.getPrincipal();
|
||||||
|
return R.choose(checkService.add(id, problem, compensate, description, users.getUsername()) > 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,63 @@
|
|||||||
|
package com.qsd.orange.controller;
|
||||||
|
|
||||||
|
import com.qsd.orange.po.BusCustomer;
|
||||||
|
import com.qsd.orange.service.CustomerService;
|
||||||
|
import com.qsd.orange.global.R;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.security.core.Authentication;
|
||||||
|
import org.springframework.security.core.userdetails.User;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("customer")
|
||||||
|
public class CustomerController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CustomerService customerService;
|
||||||
|
|
||||||
|
@GetMapping("all")
|
||||||
|
public R all(
|
||||||
|
@RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(value = "limit", required = false, defaultValue = "9") Integer limit
|
||||||
|
){
|
||||||
|
return R.success().page(customerService.queryCustomers(page, limit));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("search/identity")
|
||||||
|
public R searchByIdentity(
|
||||||
|
@RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(value = "limit", required = false, defaultValue = "9") Integer limit,
|
||||||
|
String keyword
|
||||||
|
){
|
||||||
|
return R.success().page(customerService.queryByCustomer(page, limit, "identity", keyword));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("search/name")
|
||||||
|
public R searchByName(
|
||||||
|
@RequestParam(value = "page", required = false, defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(value = "limit", required = false, defaultValue = "9") Integer limit,
|
||||||
|
String keyword
|
||||||
|
){
|
||||||
|
return R.success().page(customerService.queryByCustomer(page, limit, "name", keyword));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("search/one/identity")
|
||||||
|
public R searchOneIdentity(String identity){
|
||||||
|
return R.success().data("item", customerService.queryOne(identity));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("add")
|
||||||
|
public R add(@Valid BusCustomer customer, Authentication authentication){
|
||||||
|
User user = (User)authentication.getPrincipal();
|
||||||
|
String username = user.getUsername();
|
||||||
|
return R.choose(customerService.addCustomer(username, customer) > 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("update")
|
||||||
|
public R update(@Valid BusCustomer customer){
|
||||||
|
return R.choose(customerService.updateCustomer(customer) > 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,82 @@
|
|||||||
|
package com.qsd.orange.config;
|
||||||
|
|
||||||
|
import com.qsd.orange.security.AccessFailureHandler;
|
||||||
|
import com.qsd.orange.security.LoginFailureHandler;
|
||||||
|
import com.qsd.orange.security.LoginSuccessHandler;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
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.configuration.EnableWebSecurity;
|
||||||
|
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
|
||||||
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
||||||
|
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
||||||
|
|
||||||
|
@EnableWebSecurity
|
||||||
|
@EnableGlobalMethodSecurity(prePostEnabled = true)
|
||||||
|
public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
@Qualifier("userDetailsServiceImpl")
|
||||||
|
private UserDetailsService userDetailsService;
|
||||||
|
@Autowired
|
||||||
|
private LoginSuccessHandler loginSuccessHandler;
|
||||||
|
@Autowired
|
||||||
|
private LoginFailureHandler loginFailureHandler;
|
||||||
|
@Autowired
|
||||||
|
private AccessFailureHandler accessFailureHandler;
|
||||||
|
@Autowired
|
||||||
|
private BCryptPasswordEncoder passwordEncoder;
|
||||||
|
|
||||||
|
//授权规则
|
||||||
|
@Override
|
||||||
|
protected void configure(HttpSecurity http) throws Exception {
|
||||||
|
//拦截规则
|
||||||
|
http.authorizeRequests()
|
||||||
|
.antMatchers("/user/login").permitAll()
|
||||||
|
.antMatchers("/login.html").permitAll()
|
||||||
|
.antMatchers("/image/**").permitAll()
|
||||||
|
.antMatchers("/system/**").hasRole("1")
|
||||||
|
.antMatchers("/statistics/**").hasRole("1")
|
||||||
|
.anyRequest().authenticated();
|
||||||
|
|
||||||
|
//登录配置
|
||||||
|
http.formLogin()
|
||||||
|
.loginPage("/login.html")
|
||||||
|
.loginProcessingUrl("/user/login")
|
||||||
|
.usernameParameter("username")
|
||||||
|
.passwordParameter("password")
|
||||||
|
.successHandler(loginSuccessHandler)
|
||||||
|
.failureHandler(loginFailureHandler);
|
||||||
|
|
||||||
|
//注销配置
|
||||||
|
http.logout()
|
||||||
|
.logoutUrl("/user/logout")
|
||||||
|
.logoutSuccessUrl("/login.html");
|
||||||
|
|
||||||
|
//关闭csrf防护
|
||||||
|
http.csrf().disable();
|
||||||
|
|
||||||
|
//配置iframe请求
|
||||||
|
http.headers().frameOptions().disable();
|
||||||
|
|
||||||
|
//处理认证失败请求
|
||||||
|
http.exceptionHandling().accessDeniedHandler(accessFailureHandler);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//认证配置
|
||||||
|
@Override
|
||||||
|
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
|
||||||
|
auth.userDetailsService(userDetailsService)
|
||||||
|
.passwordEncoder(passwordEncoder);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public BCryptPasswordEncoder passwordEncoder(){
|
||||||
|
return new BCryptPasswordEncoder();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
package com.qsd.orange.config;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class WebConfig implements WebMvcConfigurer {
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in new issue