fix:调整一键修改处理状态

haikang
郭承 3 months ago
parent 243e226df4
commit 76605c3e18

@ -69,20 +69,20 @@ public class WarningController extends BasicController {
}
Boolean isFlat = false;
Boolean isHandle = false;
@PostMapping("oneKeyUpdateState")
@ApiOperation("一键修改处理状态")
public Response<String> oneKeyUpdateState() throws Exception {
try {
if (isFlat) {
if (isHandle) {
throw new BusinessException("相同请求正在处理中, 请勿重复处理");
}
isFlat = true;
dataService.updateWarningState("warning" , "0" , "1");
isHandle = true;
service.oneKeyUpdateState();
return Response.success("OK");
} finally {
isFlat = false;
isHandle = false;
}
}
}

@ -3,10 +3,17 @@ package com.xydl.cac.repository;
import com.xydl.cac.entity.Warning;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
@Repository
public interface WarningRepository extends JpaRepository<Warning, Integer>, JpaSpecificationExecutor<Warning> {
@Modifying
@Query("update Warning set state = :frontState where state = :afterState")
int updateWarningState(@Param("frontState") String frontState , @Param("afterState") String afterState);
}

@ -24,5 +24,4 @@ public interface DataService {
void insertData(String tableName, Integer devId, String time, String colname, String value);
void updateWarningState(String tableName, String frontState , String afterState);
}

@ -15,5 +15,5 @@ public interface WarningService {
void updateState(Warning warning) throws Exception;
void oneKeyUpdateState(List<Warning> warnings);
void oneKeyUpdateState();
}

@ -322,10 +322,4 @@ public class DataServiceImpl implements DataService {
}
}
@Override
public void updateWarningState(String tableName, String frontState, String afterState) {
String sql = "UPDATE " + tableName + " set state = " + frontState + " where state = " + afterState;
jdbcTemplate.execute(sql);
}
}

@ -106,15 +106,8 @@ public class WarningServiceImpl implements WarningService {
}
@Override
public void oneKeyUpdateState(List<Warning> warnings) {
Date date = new Date();
for (Warning warning : warnings) {
warning.setState("0");
warning.setProcessTime(date);
}
if (null != warnings && warnings.size() > 0) {
repository.saveAll(warnings);
}
public void oneKeyUpdateState() {
repository.updateWarningState("0" , "1");
}

Loading…
Cancel
Save