修改服务器信息功能优化

master
duhui 2021-11-11 18:24:02 +08:00
parent f417807ba5
commit c78e2b6e20
4 changed files with 67 additions and 32 deletions

View File

@ -212,19 +212,8 @@ public class ServerInfoController {
*/
@RequestMapping(value = "/serverEdit", method = {RequestMethod.POST, RequestMethod.GET})
public @ResponseBody
int toServerInfoEdit(HttpServletRequest request) throws Exception {
// 服务器id
String serveId = request.getParameter("server_id");
// 名字
String name = request.getParameter("name");
// 服务器状态
String status = request.getParameter("status");
// 新服
String isNew = request.getParameter("is_new");
// 注册状态
String registerState = request.getParameter("register_state");
ServerInfo info = serverInfoDao.getServerinfo(serveId);
int toServerInfoEdit(@RequestBody ServerInfo serverInfo) throws Exception {
ServerInfo info = serverInfoDao.getServerinfo(serverInfo.getServer_id());
// 未运营状态的服务器需要进行清库处理
if (info != null){
// 未运营状态需要清库
@ -233,16 +222,11 @@ public class ServerInfoController {
if (AutoServerManager.isOpen()){
return 3;
}
ServerInfo clone = info.clone();
clone.setName(name);
clone.setStatus(status);
clone.setIs_new(isNew);
clone.setRegister_state(registerState);
// 清库操作
TaskKit.scheduleWithFixedOne(()->autoServerManager.manualStartServer(info,clone),0);
TaskKit.scheduleWithFixedOne(()->autoServerManager.manualStartServer(info,serverInfo),0);
}else {
// 修改服务器状态
serverInfoDao.updateServerInfo(serveId, Integer.valueOf(status), 0, Integer.valueOf(isNew), name,registerState);
serverInfoDao.updateServerInfo(serverInfo);
}
return 1;
}else {

View File

@ -90,10 +90,27 @@ public class ServerInfoDaoImpl implements ServerInfoDao {
@Override
public void updateServerInfo(ServerInfo serverInfo) throws Exception {
Update update = new Update();
update.set("name",serverInfo.getName());
update.set("status",serverInfo.getStatus());
update.set("is_new",serverInfo.getIs_new());
update.set("register_state",serverInfo.getRegister_state());
if (serverInfo.getName() != null && !"".equals(serverInfo.getName())){
update.set("name",serverInfo.getName());
}
if (serverInfo.getStatus() != null && !"".equals(serverInfo.getStatus())){
update.set("status",serverInfo.getStatus());
}
if (serverInfo.getIs_new() != null && !"".equals(serverInfo.getIs_new())){
update.set("is_new",serverInfo.getIs_new());
}
if (serverInfo.getRegister_state() != null && !"".equals(serverInfo.getRegister_state())){
update.set("register_state",serverInfo.getRegister_state());
}
if (serverInfo.getIp() != null && !"".equals(serverInfo.getIp())){
update.set("ip",serverInfo.getIp());
}
if (serverInfo.getPort() != null && !"".equals(serverInfo.getPort())){
update.set("port",serverInfo.getPort());
}
if (serverInfo.getCoreName() != null && !"".equals(serverInfo.getCoreName())){
update.set("coreName",serverInfo.getCoreName());
}
MongoTemplate mongoTemplate = connect.getMongoTemplete(dbName);
Query query = new Query(Criteria.where("server_id").is(serverInfo.getServer_id()));
mongoTemplate.updateMulti(query, update, ServerInfo.class);

View File

@ -50,6 +50,30 @@
<input type="text" name="server_id" placeholder="" th:value="*{getServer_id()}" class="input-text"/>
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2">
<span class="c-red">*</span>
ip</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" name="ip" placeholder="" th:value="*{getIp()}" class="input-text"/>
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2">
<span class="c-red">*</span>
port</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" name="port" placeholder="" th:value="*{getPort()}" class="input-text"/>
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2">
<span class="c-red">*</span>
core</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" name="coreName" placeholder="" th:value="*{getCoreName()}" class="input-text"/>
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2">
<span class="c-red">*</span>
@ -150,20 +174,29 @@
function updateServerInfo() {
var server_id = $("input[name='server_id']").val();
var ip = $("input[name='ip']").val();
var port = $("input[name='port']").val();
var coreName = $("input[name='coreName']").val();
var name = $("input[name='name']").val();
var status = $("#status option:selected").val();
var is_new = $("#is_new option:selected").val();
var register_state = $("#register_state option:selected").val();
$.ajax({
type: "POST",
data: {
"server_id": server_id,
"name": name,
"status": status,
"is_new": is_new,
"register_state": register_state
},
data:
JSON.stringify({
"server_id": server_id,
"ip":ip,
"port":port,
"coreName":coreName,
"name": name,
"status": status,
"is_new": is_new,
"register_state": register_state
}),
url: "/serverEdit",
dataType: "json",
contentType: 'application/json',
success: function (data) {
if (data === 1) {
alert("修改完成,信息会在一分钟后刷新,请于一分钟后刷新界面查看数据是否正常");

View File

@ -26,9 +26,10 @@
<h1 class="f-20 text-success">太初行管理后台</h1>
</div>
<div style="margin-left: 20px;font-size: 18px">
<h2 style="color: red" class="f-18">更新日志[2021-11-09]</h2>
<h2 style="color: red" class="f-18">更新日志[2021-11-11]</h2>
<p class="f-16"> 1、天眼封禁优化</p>
<p class="f-16"> 2、服务器列表优化新增缓存刷新按钮</p>
<p class="f-16"> 3、服务器信息修改功能优化</p>
<p class="f-16">
ps{ 开服时间、版本号、上次重启时间、游戏端口状态、支付端口状态 }为缓存数据,可以通过刷新缓存获取最新数据,其他数据没有缓存
<br>