首次提交

This commit is contained in:
李玉东 2025-07-23 16:55:42 +08:00
parent 07010623a3
commit 62d8a1e21f
209 changed files with 647 additions and 207 deletions

View File

@ -25,8 +25,8 @@ public class MedicalSupplyBean extends StartTimeBean {
@NotNull(message = "计算间隔时间不能为空")
private Integer intervalTime;
private double medicinal;
private double blood;
private Double medicinal;
private Double blood;
//
/**
* 运送工具.

View File

@ -1,17 +1,30 @@
package com.hshh.nation.mock.controller;
import com.hshh.nation.mock.bean.*;
import com.hshh.nation.common.BaseController;
import com.hshh.nation.common.OperateResult;
import com.hshh.nation.mock.bean.FuelAirMockBean;
import com.hshh.nation.mock.bean.FuelBoatMockBean;
import com.hshh.nation.mock.bean.FuelReceiveMockBean;
import com.hshh.nation.mock.bean.FuelSendMockBean;
import com.hshh.nation.mock.bean.FuelTransMockBean;
import com.hshh.nation.mock.bean.MedicalCasualtyBackToBean;
import com.hshh.nation.mock.bean.MedicalSupplyBean;
import com.hshh.nation.mock.bean.TransportAirMockBean;
import com.hshh.nation.mock.bean.TransportLoadMockBean;
import com.hshh.nation.mock.bean.TransportSeaBean;
import com.hshh.nation.mock.bean.TransportUnloadMockBean;
import com.hshh.nation.mock.service.AbtActionMockBase;
import com.hshh.nation.mock.service.ActionMockService;
import com.hshh.nation.mock.service.MockService;
import com.hshh.nation.common.BaseController;
import com.hshh.nation.common.OperateResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
/**
* 模拟控制
@ -20,214 +33,241 @@ import javax.validation.Valid;
@RequestMapping("/mock")
@Slf4j
public class ActionMockController extends BaseController {
//接收
@Resource(name = "fuel-receive-mock")
private ActionMockService mockService;
//发送
@Resource(name = "fuel-send-mock")
private AbtActionMockBase sendMockService;
//传输
@Resource(name = "fuel-trans-mock")
private MockService transMockService;
//飞机
@Resource(name = "fuel-plane-mock")
private MockService planetMockService;
//舰艇
@Resource(name = "fuel-boat-mock")
private MockService boatMockService;
//装载
@Resource(name = "mock-load")
private MockService loadMockService;
//卸载
@Resource(name = "unload-mock")
private MockService unloadMockService;
//海上运输
@Resource(name = "transport-sea")
private MockService transportSeaMockService;
//空中运输
@Resource(name = "transport-plane")
private MockService transportPaneMockService;
//伤病员后送
@Resource(name = "medical-casualty-mock")
private MockService medicalCasualtyMockService;
//医疗物资输送
@Resource(name = "medical-supplier-mock")
private MockService medicalSupplierMockService;
//油料接收
@PostMapping("/receive")
@ResponseBody
public OperateResult<String> receive(@Valid @RequestBody FuelReceiveMockBean input, BindingResult bindingResult) {
//接收
@Resource(name = "fuel-receive-mock")
private ActionMockService mockService;
//发送
@Resource(name = "fuel-send-mock")
private AbtActionMockBase sendMockService;
//传输
@Resource(name = "fuel-trans-mock")
private MockService transMockService;
//飞机
@Resource(name = "fuel-plane-mock")
private MockService planetMockService;
//舰艇
@Resource(name = "fuel-boat-mock")
private MockService boatMockService;
//装载
@Resource(name = "mock-load")
private MockService loadMockService;
//卸载
@Resource(name = "unload-mock")
private MockService unloadMockService;
//海上运输
@Resource(name = "transport-sea")
private MockService transportSeaMockService;
//空中运输
@Resource(name = "transport-plane")
private MockService transportPaneMockService;
//伤病员后送
@Resource(name = "medical-casualty-mock")
private MockService medicalCasualtyMockService;
//医疗物资输送
@Resource(name = "medical-supplier-mock")
private MockService medicalSupplierMockService;
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//开始模拟行动开启一个线程
new Thread(() -> {
mockService.mock(input, "receive");
}).start();
return OperateResult.success();
//油料接收
@PostMapping("/receive")
@ResponseBody
public OperateResult<String> receive(@Valid @RequestBody FuelReceiveMockBean input,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//油料发放
@PostMapping("/send")
@ResponseBody
public OperateResult<String> send(@Valid @RequestBody FuelSendMockBean input, BindingResult bindingResult) {
//开始模拟行动开启一个线程
new Thread(() -> {
mockService.mock(input, "receive");
}).start();
return OperateResult.success();
}
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//开始模拟行动开启一个线程
//油料发放
@PostMapping("/send")
@ResponseBody
public OperateResult<String> send(@Valid @RequestBody FuelSendMockBean input,
BindingResult bindingResult) {
new Thread(() -> {
sendMockService.mock(input, "send");
}).start();
return OperateResult.success();
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//油料运输
@PostMapping("/trans")
@ResponseBody
public OperateResult<String> trans(@Valid @RequestBody FuelTransMockBean input, BindingResult bindingResult) {
//开始模拟行动开启一个线程
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//开始模拟行动开启一个线程
new Thread(() -> {
sendMockService.mock(input, "send");
}).start();
new Thread(() -> {
transMockService.mock(input, "trans");
}).start();
return OperateResult.success();
}
return OperateResult.success();
//油料运输
@PostMapping("/trans")
@ResponseBody
public OperateResult<String> trans(@Valid @RequestBody FuelTransMockBean input,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//飞机油料补给
@PostMapping("/plane")
@ResponseBody
public OperateResult<String> plane(@Valid @RequestBody FuelAirMockBean input, BindingResult bindingResult) {
//开始模拟行动开启一个线程
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//开始模拟行动开启一个线程
new Thread(() -> {
transMockService.mock(input, "trans");
}).start();
new Thread(() -> {
planetMockService.mock(input, "plane");
}).start();
return OperateResult.success();
}
return OperateResult.success();
}
//舰船油料补给
@PostMapping("/boat")
@ResponseBody
public OperateResult<String> boat(@Valid @RequestBody FuelBoatMockBean input, BindingResult bindingResult) {
//飞机油料补给
@PostMapping("/plane")
@ResponseBody
public OperateResult<String> plane(@Valid @RequestBody FuelAirMockBean input,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//开始模拟行动开启一个线程
new Thread(() -> {
boatMockService.mock(input, "boat");
}).start();
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//开始模拟行动开启一个线程
return OperateResult.success();
}
new Thread(() -> {
planetMockService.mock(input, "plane");
}).start();
//伤病员后送
@PostMapping("/casualtyTakeBackTo")
@ResponseBody
public OperateResult<String> casualtyTakeBackTo(@Valid @RequestBody MedicalCasualtyBackToBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {medicalCasualtyMockService.mock(input,"casualtyTakeBackTo");}).start();
return OperateResult.success();
}
return OperateResult.success();
}
//战地物资补给
@PostMapping("/medicalSupply")
@ResponseBody
public OperateResult<String> medicalSupply(@Valid @RequestBody MedicalSupplyBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {medicalSupplierMockService.mock(input,"medicalSupply");}).start();
return OperateResult.success();
}
//舰船油料补给
@PostMapping("/boat")
@ResponseBody
public OperateResult<String> boat(@Valid @RequestBody FuelBoatMockBean input,
BindingResult bindingResult) {
//装载
@PostMapping("/load")
@ResponseBody
public OperateResult<String> load(@Valid @RequestBody TransportLoadMockBean input, BindingResult bindingResult) {
log.info("load::{}", input);
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
loadMockService.mock(input, "load");
}).start();
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//开始模拟行动开启一个线程
new Thread(() -> {
boatMockService.mock(input, "boat");
}).start();
return OperateResult.success();
}
//卸载
@PostMapping("/unLoad")
@ResponseBody
public OperateResult<String> unLoad(@Valid @RequestBody TransportUnloadMockBean input, BindingResult bindingResult) {
log.info("unLoad::{}", input);
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
unloadMockService.mock(input, "unLoad");
}).start();
return OperateResult.success();
}
return OperateResult.success();
//伤病员后送
@PostMapping("/casualtyTakeBackTo")
@ResponseBody
public OperateResult<String> casualtyTakeBackTo(
@Valid @RequestBody MedicalCasualtyBackToBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//海上运输
@PostMapping("/transportSea")
@ResponseBody
public OperateResult<String> transportSea(@Valid @RequestBody TransportSeaBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
transportSeaMockService.mock(input, "transportSea");
}).start();
return OperateResult.success();
new Thread(() -> {
medicalCasualtyMockService.mock(input, "casualtyTakeBackTo");
}).start();
return OperateResult.success();
}
//战地物资补给
@PostMapping("/medicalSupply")
@ResponseBody
public OperateResult<String> medicalSupply(@Valid @RequestBody MedicalSupplyBean input,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//空中运输
@PostMapping("/transportPlane")
@ResponseBody
public OperateResult<String> transportAir(@Valid @RequestBody TransportAirMockBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
transportPaneMockService.mock(input, "transportPlane");
}).start();
return OperateResult.success();
new Thread(() -> {
medicalSupplierMockService.mock(input, "medicalSupply");
}).start();
return OperateResult.success();
}
//装载
@PostMapping("/load")
@ResponseBody
public OperateResult<String> load(@Valid @RequestBody TransportLoadMockBean input,
BindingResult bindingResult) {
log.info("load::{}", input);
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//伤病员后撤
@PostMapping("/medicalCasualty")
@ResponseBody
public OperateResult<String> medicalCasualtyTake(@Valid @RequestBody MedicalCasualtyBackToBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
medicalCasualtyMockService.mock(input, "medicalCasualty");
}).start();
return OperateResult.success();
new Thread(() -> {
loadMockService.mock(input, "load");
}).start();
return OperateResult.success();
}
//卸载
@PostMapping("/unLoad")
@ResponseBody
public OperateResult<String> unLoad(@Valid @RequestBody TransportUnloadMockBean input,
BindingResult bindingResult) {
log.info("unLoad::{}", input);
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
//医疗物资补给
@PostMapping("/medicalSupplies")
@ResponseBody
public OperateResult<String> medicalSupplies(@Valid @RequestBody MedicalSupplyBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
medicalSupplierMockService.mock(input, "medicalSupplies");
}).start();
return OperateResult.success();
new Thread(() -> {
unloadMockService.mock(input, "unLoad");
}).start();
return OperateResult.success();
}
//海上运输
@PostMapping("/transportSea")
@ResponseBody
public OperateResult<String> transportSea(@Valid @RequestBody TransportSeaBean input,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
transportSeaMockService.mock(input, "transportSea");
}).start();
return OperateResult.success();
}
//空中运输
@PostMapping("/transportPlane")
@ResponseBody
public OperateResult<String> transportAir(@Valid @RequestBody TransportAirMockBean input,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
transportPaneMockService.mock(input, "transportPlane");
}).start();
return OperateResult.success();
}
//伤病员后撤
@PostMapping("/medicalCasualty")
@ResponseBody
public OperateResult<String> medicalCasualtyTake(
@Valid @RequestBody MedicalCasualtyBackToBean input, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
medicalCasualtyMockService.mock(input, "medicalCasualty");
}).start();
return OperateResult.success();
}
//医疗物资补给
@PostMapping("/medicalSupplies")
@ResponseBody
public OperateResult<String> medicalSupplies(@Valid @RequestBody MedicalSupplyBean input,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return this.errorsInputHandle(bindingResult);
}
new Thread(() -> {
medicalSupplierMockService.mock(input, "medicalSupplies");
}).start();
return OperateResult.success();
}
}

View File

@ -9,8 +9,8 @@ import com.hshh.nation.medical.service.MedicalArmyService;
import com.hshh.nation.medical.service.MedicalHospitalService;
import com.hshh.nation.medical.service.impl.MedicalBoatServiceImpl;
import com.hshh.nation.medical.service.impl.MedicalPlaneServiceImpl;
import com.hshh.nation.mock.bean.MedicalCasualtyBackToBean;
import com.hshh.nation.mock.bean.MedicalSupplyBean;
import com.hshh.nation.mock.bean.StartTimeBean;
import com.hshh.nation.mock.service.AbtMockGeneralService;
import com.hshh.nation.mock.service.MockService;
import java.time.LocalDateTime;
@ -48,7 +48,7 @@ public class MedicalSupplierMockServiceImpl extends AbtMockGeneralService implem
LocalDateTime endTime = handling(input, count, now, "casualty");
finished("", endTime, (MedicalCasualtyBackToBean) input, count, now);
finished("", endTime, (StartTimeBean) input, count, now);
}
@Override
@ -57,6 +57,16 @@ public class MedicalSupplierMockServiceImpl extends AbtMockGeneralService implem
String transportInfo = bean.getTransport();
String[] transports = transportInfo.split("\\|");
Integer id = Integer.parseInt(transports[0]);
//验证是否有药材
if (bean.getMedicinal() == null) {
sendMessage(bean.getStartTime(), validate_label, "必须设置药材", counter, now, 1);
return true;
}
//验证是否有血液
if (bean.getBlood() == null) {
sendMessage(bean.getStartTime(), validate_label, "必须设置血液", counter, now, 1);
return true;
}
if (transports[1].equalsIgnoreCase("boat")) {
MedicalBoatServiceImpl boatService = SpringContextHolder.getBean(
MedicalBoatServiceImpl.class);
@ -108,7 +118,7 @@ public class MedicalSupplierMockServiceImpl extends AbtMockGeneralService implem
bean.getToLocation(),
bean.getTransSpeed(),
bean.getIntervalTime(),
""
"药材" + bean.getMedicinal() + ",血液" + bean.getBlood()
);
}

View File

@ -428,7 +428,7 @@
<div class="mb-3 row">
<label class="col-3 col-form-label ">备注</label>
<div class="col">
<textarea class="form-control" data-bs-toggle="autosize"
<textarea class="form-control" data-bs-toggle="autosize" name="equipMeno" id="equipMeno"
placeholder="Type something…"
style="overflow: hidden; overflow-wrap: break-word; resize: none; text-align: start; height: 56px;"></textarea>
</div>

View File

@ -421,7 +421,7 @@
<div class="mb-3 row">
<label class="col-3 col-form-label ">备注</label>
<div class="col">
<textarea class="form-control" data-bs-toggle="autosize"
<textarea class="form-control" data-bs-toggle="autosize" name="portMeno" id="portMeno"
placeholder="Type something…"
style="overflow: hidden; overflow-wrap: break-word; resize: none; text-align: start; height: 56px;"></textarea>
</div>

View File

@ -444,7 +444,7 @@
<div class="mb-3 row">
<label class="col-3 col-form-label ">备注</label>
<div class="col">
<textarea class="form-control" data-bs-toggle="autosize"
<textarea class="form-control" data-bs-toggle="autosize" id="jarMeno" name="jarMeno"
placeholder="Type something…"
style="overflow: hidden; overflow-wrap: break-word; resize: none; text-align: start; height: 56px;"></textarea>
</div>

View File

@ -501,7 +501,7 @@
<div class="mb-3 row">
<label class="col-3 col-form-label ">备注</label>
<div class="col">
<textarea class="form-control" data-bs-toggle="autosize"
<textarea class="form-control" data-bs-toggle="autosize" name="equipMeno" id="equipMeno"
placeholder="Type something…"
style="overflow: hidden; overflow-wrap: break-word; resize: none; text-align: start; height: 56px;"></textarea>
</div>

View File

@ -512,7 +512,7 @@
function setMedicalResourceLocation(obj) {
if(document.getElementById("fromLocation")){}
document.getElementById("fromLocation").value = obj.attributes["location"];
document.getElementById("fromLocation").value = obj.attributes["location"].value;
}
document.addEventListener("DOMContentLoaded", function () {
var fuelDiv = document.getElementById("from_secure_depart_dialog");

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More