Browse Source

feat:新增修改Linux系统时间接口

master
白凤吉 6 months ago
parent
commit
e792899fd4
  1. 10
      src/main/java/com/qyft/gd/controller/SysSettingsController.java
  2. 3
      src/main/java/com/qyft/gd/service/SysSettingsService.java
  3. 21
      src/main/java/com/qyft/gd/service/impl/SysSettingsServiceImpl.java

10
src/main/java/com/qyft/gd/controller/SysSettingsController.java

@ -48,4 +48,14 @@ public class SysSettingsController {
} }
return Result.failed(); return Result.failed();
} }
@Operation(summary = "修改系统日期与时间(Linux date -s)")
@PutMapping("/updateConfig")
public Result<String> updateConfig(@Parameter(description = "时间字符串 YYYY-MM-DD HH:mm:ss") @RequestBody String newTime) {
boolean isSuccess = sysSettingsService.setSysDate(newTime);
if (isSuccess) {
return Result.success();
}
return Result.failed();
}
} }

3
src/main/java/com/qyft/gd/service/SysSettingsService.java

@ -7,6 +7,7 @@ import com.qyft.gd.model.entity.SysSettings;
import com.qyft.gd.model.vo.SysSettingResult; import com.qyft.gd.model.vo.SysSettingResult;
import com.qyft.gd.model.vo.SysSettingVO; import com.qyft.gd.model.vo.SysSettingVO;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
@ -19,4 +20,6 @@ public interface SysSettingsService extends IService<SysSettings> {
List<SysSettingResult> getAllConfig(); List<SysSettingResult> getAllConfig();
Boolean updateConfig(List<SysSettingsDTO> dto); Boolean updateConfig(List<SysSettingsDTO> dto);
boolean setSysDate(String newTime);
} }

21
src/main/java/com/qyft/gd/service/impl/SysSettingsServiceImpl.java

@ -6,7 +6,6 @@ import com.qyft.gd.model.dto.SysSettingsDTO;
import com.qyft.gd.model.entity.SysSettings; import com.qyft.gd.model.entity.SysSettings;
import com.qyft.gd.model.vo.SysSettingResult; import com.qyft.gd.model.vo.SysSettingResult;
import com.qyft.gd.model.vo.SysSettingVO; import com.qyft.gd.model.vo.SysSettingVO;
import com.qyft.gd.service.BaseDataService;
import com.qyft.gd.service.SysSettingsService; import com.qyft.gd.service.SysSettingsService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -21,6 +20,7 @@ import java.util.List;
@RequiredArgsConstructor @RequiredArgsConstructor
public class SysSettingsServiceImpl extends ServiceImpl<SysSettingsMapper, SysSettings> implements SysSettingsService { public class SysSettingsServiceImpl extends ServiceImpl<SysSettingsMapper, SysSettings> implements SysSettingsService {
private final SysSettingsMapper sysSettingsMapper; private final SysSettingsMapper sysSettingsMapper;
@Override @Override
public List<SysSettingVO> getConfig(String type) { public List<SysSettingVO> getConfig(String type) {
int parentId = sysSettingsMapper.getIdByCode(type); int parentId = sysSettingsMapper.getIdByCode(type);
@ -53,4 +53,23 @@ public class SysSettingsServiceImpl extends ServiceImpl<SysSettingsMapper, SysSe
return true; return true;
} }
/**
* 修改服务器系统时间
*
* @param newTime 时间字符串 YYYY-MM-DD HH:mm:ss
* @return 是否修改成功
*/
@Override
public boolean setSysDate(String newTime) {
try {
String command = "date -s \"" + newTime + "\"";
Process process = Runtime.getRuntime().exec(command);
int exitCode = process.waitFor();
return exitCode == 0;
} catch (Exception e) {
log.error("修改系统时间失败", e);
return false;
}
}
} }
Loading…
Cancel
Save