mirror of
https://codeup.aliyun.com/64f7d6b8ce01efaafef1e678/coal/coal.git
synced 2026-01-24 23:41:21 +08:00
完善
This commit is contained in:
1160
resources.sql
Normal file
1160
resources.sql
Normal file
File diff suppressed because it is too large
Load Diff
20
script/genSQL.groovy
Normal file
20
script/genSQL.groovy
Normal file
@@ -0,0 +1,20 @@
|
||||
def execute = """C:\\Program Files\\PostgreSQL\\15\\bin\\pg_dump.exe -d coal_master -h 127.0.0.1 -p 5432 -U postgres -a --inserts -t t_permission -t t_resource -t t_permission_resources --column-inserts """
|
||||
.execute(["PGPASSWORD=abc@123"], new File("../"))
|
||||
|
||||
|
||||
|
||||
def insertSQL = execute.text.split("\n").findAll { it.startsWith("INSERT") }.collect {it.replace("INSERT INTO public.", "INSERT INTO ")}
|
||||
|
||||
insertSQL.add(0, """
|
||||
truncate table t_permission;
|
||||
|
||||
truncate table t_permission_resources;
|
||||
|
||||
truncate table t_resource;
|
||||
|
||||
""")
|
||||
|
||||
def lastVersion = new File("../src/main/resources/db/migration/").listFiles().findAll { it.name.matches("V\\d+__.+") }.collect { it.name.split("_")[0].substring(1).toInteger() }.sort().last()
|
||||
|
||||
|
||||
(new File("../src/main/resources/db/migration/V${lastVersion+1}__resourceAll.sql")).text = insertSQL.join("\n")
|
||||
@@ -21,7 +21,9 @@ import org.aspectj.lang.annotation.Pointcut;
|
||||
import org.aspectj.lang.reflect.MethodSignature;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.annotation.AnnotationUtils;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.context.request.RequestContextHolder;
|
||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||
|
||||
@@ -31,6 +33,7 @@ import java.util.Arrays;
|
||||
@Aspect
|
||||
@Component
|
||||
@Slf4j
|
||||
@Order(value = 100)
|
||||
public class ControllerAop {
|
||||
|
||||
@Autowired SessionService sessionService;
|
||||
@@ -49,6 +52,7 @@ public class ControllerAop {
|
||||
|
||||
@SneakyThrows
|
||||
@Around("controllerMethods()")
|
||||
@Transactional
|
||||
public Object call(ProceedingJoinPoint proceedingJoinPoint) {
|
||||
|
||||
Method method = ((MethodSignature) proceedingJoinPoint.getSignature()).getMethod();
|
||||
|
||||
@@ -26,7 +26,7 @@ import java.lang.reflect.Method;
|
||||
@Aspect
|
||||
@Component
|
||||
@Slf4j
|
||||
@Order
|
||||
@Order(value = 200)
|
||||
public class OrgScopeAop {
|
||||
|
||||
private static final ThreadLocal<Boolean> orgScope = new ThreadLocal<>();
|
||||
|
||||
@@ -35,11 +35,7 @@ import org.springframework.core.annotation.Order;
|
||||
import org.springframework.http.server.PathContainer;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.PlatformTransactionManager;
|
||||
import org.springframework.transaction.TransactionDefinition;
|
||||
import org.springframework.transaction.TransactionStatus;
|
||||
import org.springframework.transaction.UnexpectedRollbackException;
|
||||
import org.springframework.transaction.support.DefaultTransactionDefinition;
|
||||
import org.springframework.transaction.support.TransactionTemplate;
|
||||
import org.springframework.web.filter.OncePerRequestFilter;
|
||||
import org.springframework.web.util.pattern.PathPatternParser;
|
||||
|
||||
@@ -74,18 +70,13 @@ public class AuthFilter extends OncePerRequestFilter {
|
||||
HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
|
||||
throws ServletException, IOException {
|
||||
|
||||
TransactionTemplate transactionTemplate =
|
||||
new TransactionTemplate(
|
||||
transactionManager,
|
||||
new DefaultTransactionDefinition(
|
||||
TransactionDefinition.PROPAGATION_REQUIRED));
|
||||
try {
|
||||
|
||||
transactionTemplate.executeWithoutResult(
|
||||
getTransactionStatusConsumer(request, response, filterChain));
|
||||
} catch (UnexpectedRollbackException e) {
|
||||
getTransactionStatusConsumer(request, response, filterChain).accept(null);
|
||||
} catch (Exception e) {
|
||||
|
||||
logger.warn(e);
|
||||
logger.info("系统异常", e);
|
||||
writeResponse(new BizException("系统异常"), response);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -11,4 +11,5 @@ import java.time.LocalDate;
|
||||
@Repository
|
||||
public interface MeterDayLogRepository extends BaseRepository<MeterDayLogEntity> {
|
||||
void deleteByMeterAndTimeGreaterThanEqual(MeterEntity meter, LocalDate localDate);
|
||||
void deleteByMeter(MeterEntity meter);
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ public class MeterDayLogService extends BaseService<MeterDayLogEntity, MeterDayL
|
||||
|
||||
MeterEntity meter = new MeterEntity();
|
||||
meter.setId(meterId);
|
||||
repository.deleteByMeterAndTimeGreaterThanEqual(meter, time.toLocalDate());
|
||||
repository.deleteByMeter(meter);
|
||||
|
||||
Query nativeQuery =
|
||||
entityManager.createNativeQuery(
|
||||
@@ -95,11 +95,10 @@ public class MeterDayLogService extends BaseService<MeterDayLogEntity, MeterDayL
|
||||
meter_id,
|
||||
sum(usage) as value
|
||||
from t_meter_log
|
||||
where meter_id = :meterId and time >= :time group by cast(DATE_TRUNC('day', time) as date), meter_id
|
||||
where meter_id = :meterId group by cast(DATE_TRUNC('day', time) as date), meter_id
|
||||
""");
|
||||
|
||||
nativeQuery.setParameter("meterId", meterId);
|
||||
nativeQuery.setParameter("time", time);
|
||||
|
||||
nativeQuery
|
||||
.getResultList()
|
||||
@@ -126,7 +125,7 @@ public class MeterDayLogService extends BaseService<MeterDayLogEntity, MeterDayL
|
||||
|
||||
from (
|
||||
|
||||
select id, time, value, COALESCE(lag(value) over (order by time), value ) as previous_value from t_meter_day_log where meter_id = :meterId and time >=:time
|
||||
select id, time, value, COALESCE(lag(value) over (order by time), value ) as previous_value from t_meter_day_log where meter_id = :meterId
|
||||
) tb
|
||||
|
||||
where tb.id = ta.id
|
||||
@@ -135,7 +134,6 @@ public class MeterDayLogService extends BaseService<MeterDayLogEntity, MeterDayL
|
||||
""");
|
||||
|
||||
nativeQuery2.setParameter("meterId", meterId);
|
||||
nativeQuery2.setParameter("time", time.toLocalDate());
|
||||
|
||||
nativeQuery2.executeUpdate();
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@ public class MeterLogService extends BaseService<MeterLogEntity, MeterLogReposit
|
||||
|
||||
from (
|
||||
|
||||
select id, time, value, COALESCE(lag(value) over (order by time), value ) as previous_value from t_meter_log where meter_id = :meterId and time >= :time
|
||||
select id, time, value, COALESCE(lag(value) over (order by time), value ) as previous_value from t_meter_log where meter_id = :meterId
|
||||
) tb
|
||||
|
||||
where tb.id = ta.id
|
||||
@@ -120,7 +120,7 @@ public class MeterLogService extends BaseService<MeterLogEntity, MeterLogReposit
|
||||
""");
|
||||
|
||||
nativeQuery.setParameter("meterId", meterId);
|
||||
nativeQuery.setParameter("time", time);
|
||||
// nativeQuery.setParameter("time", time);
|
||||
|
||||
StopWatch stopWatch = new StopWatch();
|
||||
stopWatch.start("syncMeterLog");
|
||||
|
||||
@@ -9,4 +9,5 @@ import org.springframework.stereotype.Repository;
|
||||
@Repository
|
||||
public interface MeterMonthLogRepository extends BaseRepository<MeterMonthLogEntity> {
|
||||
long deleteByMeterAndTimeGreaterThanEqual(MeterEntity meter, java.time.LocalDate time);
|
||||
long deleteByMeter(MeterEntity meter);
|
||||
}
|
||||
|
||||
@@ -81,7 +81,7 @@ public class MeterMonthLogService
|
||||
|
||||
MeterEntity meter = new MeterEntity();
|
||||
meter.setId(meterId);
|
||||
repository.deleteByMeterAndTimeGreaterThanEqual(meter, time.toLocalDate());
|
||||
repository.deleteByMeter(meter);
|
||||
|
||||
Query nativeQuery =
|
||||
entityManager.createNativeQuery(
|
||||
@@ -91,11 +91,10 @@ public class MeterMonthLogService
|
||||
meter_id,
|
||||
sum(usage) as value
|
||||
from t_meter_log
|
||||
where meter_id = :meterId and time >= :time group by cast(DATE_TRUNC('month', time) as date), meter_id
|
||||
where meter_id = :meterId group by cast(DATE_TRUNC('month', time) as date), meter_id
|
||||
""");
|
||||
|
||||
nativeQuery.setParameter("meterId", meterId);
|
||||
nativeQuery.setParameter("time", time);
|
||||
|
||||
nativeQuery
|
||||
.getResultList()
|
||||
@@ -122,7 +121,7 @@ public class MeterMonthLogService
|
||||
|
||||
from (
|
||||
|
||||
select id, time, value, COALESCE(lag(value) over (order by time), value ) as previous_value from t_meter_month_log where meter_id = :meterId and time >=:time
|
||||
select id, time, value, COALESCE(lag(value) over (order by time), value ) as previous_value from t_meter_month_log where meter_id = :meterId
|
||||
) tb
|
||||
|
||||
where tb.id = ta.id
|
||||
@@ -131,7 +130,6 @@ public class MeterMonthLogService
|
||||
""");
|
||||
|
||||
nativeQuery2.setParameter("meterId", meterId);
|
||||
nativeQuery2.setParameter("time", time.toLocalDate());
|
||||
|
||||
nativeQuery2.executeUpdate();
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Sort;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -41,6 +42,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
@Transactional()
|
||||
public class PermissionService extends BaseService<PermissionEntity, PermissionRepository> {
|
||||
|
||||
@Autowired PermissionRepository repository;
|
||||
|
||||
1193
src/main/resources/db/migration/V16__resourceAll.sql
Normal file
1193
src/main/resources/db/migration/V16__resourceAll.sql
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user