Browse Source

0513lhl改登录报错信息和图片路径

hqz
huangqizhen 4 days ago
parent
commit
cb45a66c99
  1. 4
      src/main/java/com/example/demo/controller/AdminController.java
  2. 1
      src/main/java/com/example/demo/domain/vo/RechargeVo.java
  3. 4
      src/main/java/com/example/demo/mapper/AdminMapper.java
  4. 10
      src/main/java/com/example/demo/security/SecurityConfig.java
  5. 24
      src/main/java/com/example/demo/serviceImpl/AdminServiceImpl.java
  6. 2
      src/main/java/com/example/demo/serviceImpl/DetailYServiceImpl.java
  7. 3
      src/main/resources/application.yml
  8. 87
      src/main/resources/mapper/OneMapper.xml
  9. 3
      src/test/java/test.java

4
src/main/java/com/example/demo/controller/AdminController.java

@ -58,13 +58,9 @@ public class AdminController {
@PostMapping("/login")
public Result login(@RequestBody Admin admin){
try {
admin = adminService.login(admin);
String token = JWTUtil.createJWT(admin);
admin.setPassword(null);
return Result.success(token,admin);
} catch (Exception e) {

1
src/main/java/com/example/demo/domain/vo/RechargeVo.java

@ -24,6 +24,7 @@ public class RechargeVo implements Serializable { // 实现 Serializable 接口
private BigDecimal rechargeGold;
private String payWay;
private String rechargeWay;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date rechargeTime;
private String rechargeVoucher;
private Integer adminId;

4
src/main/java/com/example/demo/mapper/AdminMapper.java

@ -7,6 +7,8 @@ import org.apache.ibatis.annotations.*;
import java.util.List;
import static net.sf.jsqlparser.parser.feature.Feature.select;
@Mapper
public interface AdminMapper {
@Insert({
@ -87,4 +89,6 @@ public interface AdminMapper {
})
Admin selectByJwcode(String jwcode);
@Select({"select jwcode from admin where jwcode=#{jwcode}"})
String checkJwcode(String jwcode);
}

10
src/main/java/com/example/demo/security/SecurityConfig.java

@ -60,13 +60,16 @@ public class SecurityConfig {
request
.requestMatchers( HttpMethod.POST,
// 用户不登录就可以访问的路径
"/admin/login","/upload/**","/detailY/ERP").permitAll()
"/admin/login","/upload/**","/detailY/ERP","/home/java/haiwaiyanfa/gold1/**","/home/java/haiwaiyanfa/**").permitAll()
.requestMatchers(
"/error","alipay/**","/upload/**"
"/error","alipay/**","/upload/**","/home/java/haiwaiyanfa/gold1/**","/home/java/haiwaiyanfa/**"
).permitAll()
.anyRequest().authenticated() // 其它路径必须要登录后才能访问
);
http.addFilterBefore(tokenFilter, UsernamePasswordAuthenticationFilter.class); // 然后是TokenFilter
return http.build();
@ -89,6 +92,9 @@ public class SecurityConfig {
* @return
*/
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}

24
src/main/java/com/example/demo/serviceImpl/AdminServiceImpl.java

@ -3,6 +3,7 @@ package com.example.demo.serviceImpl;
import com.example.demo.domain.entity.Admin;
import com.example.demo.mapper.AdminMapper;
import com.example.demo.mapper.UserMapper;
import com.example.demo.security.SecurityConfig;
import com.example.demo.sevice.AdminService;
import com.github.pagehelper.PageHelper;
@ -25,6 +26,8 @@ import org.springframework.util.ObjectUtils;
import java.util.List;
import java.util.Objects;
@Transactional
@Service
@RequiredArgsConstructor
@ -37,6 +40,8 @@ public class AdminServiceImpl implements AdminService {
private AuthenticationManager authenticationManager;
@Autowired
private PasswordEncoder passwordEncoder;
@Autowired
private UserMapper userMapper;
@Override
public int add(Admin admin) {
@ -83,11 +88,12 @@ public class AdminServiceImpl implements AdminService {
}
@Override
public Admin login(Admin admin) throws Exception {
Admin admin1=adminMapper.selectByJwcode(admin.getJwcode());
try {
Admin admin1 = adminMapper.selectByJwcode(admin.getJwcode());
String[] machineIds = admin1.getMachineId().split(",");
boolean flag = false;
for(String machineId:machineIds) {
for (String machineId : machineIds) {
if (admin.getMachineId() != null && admin.getMachineId().equals(machineId))
flag = true;
}
@ -98,15 +104,21 @@ public class AdminServiceImpl implements AdminService {
System.out.println(admin.getPassword());
UsernamePasswordAuthenticationToken token =
new UsernamePasswordAuthenticationToken(admin.getJwcode(),admin.getPassword());
try {
Authentication authentication = authenticationManager.authenticate(token);
Admin loginAdmin = (Admin) authentication.getPrincipal();
return loginAdmin;
}catch (BadCredentialsException exception){
throw new BadCredentialsException("用户或密码错误");
}catch (NullPointerException e){
throw new RuntimeException("无此精网号");
}catch(BadCredentialsException exception){
throw new BadCredentialsException("密码错误");
}catch (Exception e){
throw new RuntimeException("你没有使用该机器的权限!");
}
}
@Override

2
src/main/java/com/example/demo/serviceImpl/DetailYServiceImpl.java

@ -29,9 +29,9 @@ public class DetailYServiceImpl implements DetailYService {
public int add(DetailY detailY) {
return detailYMapper.add(detailY);
}
@Cacheable(key = "#root.method.name + ':' + #detailY.hashCode()")
@Override
public DetailY getCount(DetailY detailY) {
return detailYMapper.getCount(detailY);
}

3
src/main/resources/application.yml

@ -79,6 +79,9 @@ mybatis:
upload:
path: /home/java/haiwaiyanfa/gold1
server:
port: 8080

87
src/main/resources/mapper/OneMapper.xml

@ -87,79 +87,30 @@
<!-- 第二个查询:getTwo -->
<select id="getTwo" resultType="com.example.demo.domain.work.Two">
SELECT
COALESCE((SELECT SUM(recharge_coin + free_coin + task_coin)
FROM detail_y
WHERE YEAR(create_time) = YEAR(CURDATE())
AND update_type = 0
<if test="areas != null">
AND area IN
<foreach collection="areas" item="areas" open="(" separator="," close=")">
#{areas}
</foreach>
</if>), 0) AS totalgold,
COALESCE((SELECT SUM(recharge_coin)
FROM detail_y
WHERE YEAR(create_time) = YEAR(CURDATE())
AND update_type = 0
<if test="areas != null">
AND area IN
<foreach collection="areas" item="areas" open="(" separator="," close=")">
#{areas}
</foreach>
</if>), 0) AS totalcoin,
COALESCE((SELECT SUM(recharge_coin + free_coin + task_coin)
FROM detail_y
WHERE DATE(create_time) = DATE_SUB(CURDATE(), INTERVAL 1 DAY)
AND update_type = 0
<if test="areas != null">
AND area IN
<foreach collection="areas" item="areas" open="(" separator="," close=")">
#{areas}
</foreach>
</if>), 0) AS yesterdaytotal,
COALESCE((SELECT SUM(recharge_coin)
FROM detail_y
WHERE DATE(create_time) = DATE_SUB(CURDATE(), INTERVAL 1 DAY)
AND update_type = 0
<if test="areas != null">
AND area IN
<foreach collection="areas" item="areas" open="(" separator="," close=")">
#{areas}
</foreach>
</if>), 0) AS yesterdayrecharge,
COALESCE((SELECT SUM(recharge_coin)
FROM detail_y
WHERE YEAR(create_time) = YEAR(CURDATE())
AND update_type = 0
<if test="areas != null">
AND area IN
<foreach collection="areas" item="areas" open="(" separator="," close=")">
#{areas}
</foreach>
</if>), 0) AS rechargegold,
COALESCE((SELECT SUM(free_coin)
FROM detail_y
WHERE YEAR(create_time) = YEAR(CURDATE())
AND update_type = 0
<if test="areas != null">
AND area IN
<foreach collection="areas" item="areas" open="(" separator="," close=")">
#{areas}
</foreach>
</if>), 0) AS freegold,
COALESCE((SELECT SUM(task_coin)
COALESCE(SUM(CASE WHEN year_flag = 1 THEN total_coin ELSE 0 END), 0) AS totalgold,
COALESCE(SUM(CASE WHEN year_flag = 1 THEN recharge_coin ELSE 0 END), 0) AS totalcoin,
COALESCE(SUM(CASE WHEN yesterday_flag = 1 THEN total_coin ELSE 0 END), 0) AS yesterdaytotal,
COALESCE(SUM(CASE WHEN yesterday_flag = 1 THEN recharge_coin ELSE 0 END), 0) AS yesterdayrecharge,
COALESCE(SUM(CASE WHEN year_flag = 1 THEN recharge_coin ELSE 0 END), 0) AS rechargegold,
COALESCE(SUM(CASE WHEN year_flag = 1 THEN free_coin ELSE 0 END), 0) AS freegold,
COALESCE(SUM(CASE WHEN year_flag = 1 THEN task_coin ELSE 0 END), 0) AS taskgold
FROM (
SELECT
recharge_coin,
free_coin,
task_coin,
recharge_coin + free_coin + task_coin AS total_coin,
YEAR(create_time) = YEAR(CURDATE()) AS year_flag,
DATE(create_time) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS yesterday_flag
FROM detail_y
WHERE YEAR(create_time) = YEAR(CURDATE())
AND update_type = 0
WHERE update_type = 0
<if test="areas != null">
AND area IN
<foreach collection="areas" item="areas" open="(" separator="," close=")">
#{areas}
#{area}
</foreach>
</if>), 0) AS taskgold
</if>
) AS subquery
</select>
<!-- 第三个查询:getThree -->

3
src/test/java/test.java

@ -0,0 +1,3 @@
public class test {
}
Loading…
Cancel
Save