Browse Source

定时任务优化

huangqizheng/feature-20250721170818-后端周末修改
lijianlin 4 weeks ago
parent
commit
1730a4a97b
  1. 4
      src/main/java/com/example/demo/Util/CacheRefreshTask.java
  2. 43
      src/main/java/com/example/demo/Util/StringToListTypeHandler.java
  3. 12
      src/main/java/com/example/demo/controller/WorkbenchController.java

4
src/main/java/com/example/demo/Util/CacheRefreshTask.java

@ -24,8 +24,8 @@ public class CacheRefreshTask {
this.workbenchService = workbenchService; this.workbenchService = workbenchService;
} }
// 每小时执行一次1分0秒
@Scheduled(cron = "0 1 * * * ?")
// 每小时执行一次15分0秒
@Scheduled(cron = "0 15 * * * ?")
public void refreshCache() { public void refreshCache() {
List<String> markets = generalService.getMarket(); List<String> markets = generalService.getMarket();
try { try {

43
src/main/java/com/example/demo/Util/StringToListTypeHandler.java

@ -1,43 +0,0 @@
package com.example.demo.Util;
import org.apache.ibatis.type.BaseTypeHandler;
import org.apache.ibatis.type.JdbcType;
import org.apache.ibatis.type.TypeHandler;
import java.sql.CallableStatement;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Arrays;
import java.util.List;
public class StringToListTypeHandler extends BaseTypeHandler<List<String>> {
@Override
public void setNonNullParameter(PreparedStatement ps, int i, List<String> parameter, JdbcType jdbcType) throws SQLException {
// List<String> 转换为字符串
ps.setString(i, String.join(",", parameter));
}
@Override
public List<String> getNullableResult(ResultSet rs, String columnName) throws SQLException {
return parseStringToList(rs.getString(columnName));
}
@Override
public List<String> getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
return parseStringToList(rs.getString(columnIndex));
}
@Override
public List<String> getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {
return parseStringToList(cs.getString(columnIndex));
}
private List<String> parseStringToList(String str) {
if (str == null || str.isEmpty()) {
return null;
}
return Arrays.asList(str.split(","));
}
}

12
src/main/java/com/example/demo/controller/WorkbenchController.java

@ -52,7 +52,7 @@ public class WorkbenchController {
*/ */
@PostMapping("getCard") @PostMapping("getCard")
public ResponseEntity<WorkbenchCard> card1(@RequestBody WorkbenchCard workbench, public ResponseEntity<WorkbenchCard> card1(@RequestBody WorkbenchCard workbench,
@AuthenticationPrincipal Admin admin) throws Exception{
@AuthenticationPrincipal Admin admin) {
if (admin == null) { if (admin == null) {
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body(null); return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body(null);
} }
@ -74,7 +74,15 @@ public class WorkbenchController {
获取各地区工作台图表的数据 获取各地区工作台图表的数据
*/ */
@PostMapping("getGraph") @PostMapping("getGraph")
public ResponseEntity<WorkbenchCard> graph1(@RequestBody WorkbenchCard workbench){
public ResponseEntity<WorkbenchCard> graph1(@RequestBody WorkbenchCard workbench, @AuthenticationPrincipal Admin admin) {
String account = admin.getAccount();
List<String> markets = generalService.getRoleMarket(account);
//判断是否是总部
if (markets != null && markets.contains("总部")) {
markets=generalService.getMarket();//总部有所有地区的权限
}
workbench.setMarkets(markets);
WorkbenchCard result =workbenchService.getGraph(workbench.getStartDate(),workbench.getEndDate(),workbench.getMarkets()); WorkbenchCard result =workbenchService.getGraph(workbench.getStartDate(),workbench.getEndDate(),workbench.getMarkets());
return ResponseEntity.ok(result); return ResponseEntity.ok(result);
} }

Loading…
Cancel
Save