供应补充
This commit is contained in:
parent
333fc7e879
commit
6e0332f808
|
@ -15,6 +15,7 @@ import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombi
|
|||
import java.text.MessageFormat;
|
||||
import java.time.Duration;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
|
@ -103,6 +104,8 @@ public class utils {
|
|||
return String.format("%d:%02d:%02d", hours, minutes, seconds);
|
||||
}
|
||||
|
||||
public final static AtomicBoolean ammunitionFlag = new AtomicBoolean(false);
|
||||
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println(utils.formatSeconds(3601));
|
||||
|
|
|
@ -68,7 +68,7 @@ public abstract class AbtParentTask implements TaskAction {
|
|||
* 油料消耗速率
|
||||
*/
|
||||
protected double fuelConsumption = 0;
|
||||
protected double fuelThreshold = 0;
|
||||
protected double fuelThreshold = 98;
|
||||
/**
|
||||
* 开始点坐标
|
||||
*/
|
||||
|
@ -88,7 +88,8 @@ public abstract class AbtParentTask implements TaskAction {
|
|||
/**
|
||||
* 需求产生标志
|
||||
*/
|
||||
private final AtomicBoolean requestFlag = new AtomicBoolean(false);
|
||||
protected final AtomicBoolean requestFlag = new AtomicBoolean(false);
|
||||
|
||||
private StatisticBean statisticBean;
|
||||
|
||||
|
||||
|
@ -280,6 +281,8 @@ public abstract class AbtParentTask implements TaskAction {
|
|||
//产生任务
|
||||
produceTask(currentFuel);
|
||||
return;
|
||||
}else{
|
||||
log.info("======油料充足====={}=={}==={}===={}=======",currentFuel,totalFuel,fuelThreshold,requestFlag.get());
|
||||
}
|
||||
if (currentFuel * 100 / totalFuel < fuelThreshold) {
|
||||
|
||||
|
@ -479,6 +482,15 @@ public abstract class AbtParentTask implements TaskAction {
|
|||
supplierRequest.setLng(scenarioTask.getToLng());
|
||||
supplierRequest.setHandleFlag(1);
|
||||
SpringUtil.getBean(SupplierRequestServiceImpl.class).save(supplierRequest);
|
||||
String jsonStr = (String)SpringUtil.getBean(RedisUtil.class).hget(scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),"scenarioInfo");
|
||||
ScenarioInfo scenarioInfoOnTime = JSONObject.parseObject(jsonStr,ScenarioInfo.class);
|
||||
String updJsonStr = (String) SpringUtil.getBean(RedisUtil.class).hget(scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(), "updScenarioInfo");
|
||||
EditScenarioInfo updScenarioInfo = JSON.parseObject(updJsonStr, EditScenarioInfo.class);
|
||||
scenarioInfoOnTime.getSupplierRequests().add(supplierRequest);
|
||||
updScenarioInfo.getSupplierRequests().add(supplierRequest);
|
||||
SpringUtil.getBean(RedisUtil.class).hset(scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(), "scenarioInfo", JSONObject.toJSONString(scenarioInfoOnTime));
|
||||
SpringUtil.getBean(RedisUtil.class).hset(scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),
|
||||
"updScenarioInfo", JSON.toJSONString(updScenarioInfo));
|
||||
}
|
||||
|
||||
private void produceTask(double fuel) {
|
||||
|
|
|
@ -228,6 +228,7 @@ public class BattleRootTask extends AbtParentTask {
|
|||
scenarioTask.getScenarioId() + "-" + roomId + "-"
|
||||
+ scenarioTask.getResourceId(),
|
||||
"updScenarioInfo-ammunition", "0");
|
||||
suppleFlagMap.put("ammunition",false);
|
||||
}
|
||||
}
|
||||
redisUtil.hset(scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.hivekion.room.bean;
|
|||
|
||||
import cn.hutool.extra.spring.SpringUtil;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.hivekion.Global;
|
||||
import com.hivekion.common.entity.ResponseCmdInfo;
|
||||
import com.hivekion.common.redis.RedisUtil;
|
||||
|
@ -117,6 +118,7 @@ public class MoveTask extends AbtParentTask implements TaskAction {
|
|||
insertConsumption(currentUseUp);
|
||||
|
||||
setCurrentFuel(currentUseUp);
|
||||
|
||||
pushStatus(scenarioTask.getResourceId());
|
||||
}
|
||||
|
||||
|
@ -157,12 +159,36 @@ public class MoveTask extends AbtParentTask implements TaskAction {
|
|||
Object statisticObj = SpringUtil.getBean(RedisUtil.class).hget(
|
||||
scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),
|
||||
"scenarioInfo");
|
||||
Object updStatisticObj = SpringUtil.getBean(RedisUtil.class).hget(
|
||||
scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),
|
||||
"updScenarioInfo");
|
||||
if (statisticObj != null) {
|
||||
ScenarioInfo scenarioInfo = JSON.parseObject(statisticObj.toString(), ScenarioInfo.class);
|
||||
EditScenarioInfo updScenarioInfo = JSON.parseObject(updStatisticObj.toString(), EditScenarioInfo.class);
|
||||
scenarioInfo.getFuel().setCurrent(scenarioInfo.getFuel().getCurrent() - num);
|
||||
SpringUtil.getBean(RedisUtil.class).hset(scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),
|
||||
"scenarioInfo", JSON.toJSONString(scenarioInfo));
|
||||
if(SpringUtil.getBean(RedisUtil.class).hasKey(scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),
|
||||
"updScenarioInfo-fuel")) {
|
||||
String supplierFuel = (String) SpringUtil.getBean(RedisUtil.class).hget(
|
||||
scenarioTask.getScenarioId() + "-" + roomId + "-"
|
||||
+ scenarioTask.getResourceId(),
|
||||
"updScenarioInfo-fuel");
|
||||
if (Double.valueOf(supplierFuel) > 0D) {
|
||||
scenarioInfo.getAmmunition().setCurrent(Double.valueOf(supplierFuel));
|
||||
updScenarioInfo.getJbxx().getAmmunition()
|
||||
.setCurrent(Double.valueOf(supplierFuel));
|
||||
SpringUtil.getBean(RedisUtil.class).hset(
|
||||
scenarioTask.getScenarioId() + "-" + roomId + "-"
|
||||
+ scenarioTask.getResourceId(),
|
||||
"updScenarioInfo-fuel", "0");
|
||||
requestFlag.set(false);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -89,6 +89,7 @@ public class SupplierTask extends AbtParentTask implements TaskAction {
|
|||
}
|
||||
|
||||
private void supplierFuel() {
|
||||
|
||||
EditScenarioInfo supplierInfo = getEditScenarioInfo(scenarioTask.getResourceId());
|
||||
EditScenarioInfo insuranceInfo = getEditScenarioInfo(scenarioTask.getInsureResourceId());
|
||||
if (supplierInfo != null && insuranceInfo != null) {
|
||||
|
@ -102,7 +103,15 @@ public class SupplierTask extends AbtParentTask implements TaskAction {
|
|||
.setCurrent(insuranceInfo.getJbxx().getFuel().getTotal());
|
||||
|
||||
}
|
||||
|
||||
SpringUtil.getBean(RedisUtil.class).hset(
|
||||
this.scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getInsureResourceId(),
|
||||
"updScenarioInfo", JSONObject.toJSONString(insuranceInfo));
|
||||
SpringUtil.getBean(RedisUtil.class).hset(
|
||||
this.scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getInsureResourceId(),
|
||||
"updScenarioInfo-fuel", String.valueOf(insuranceInfo.getJbxx().getFuel().getTotal()));
|
||||
SpringUtil.getBean(RedisUtil.class).hset(
|
||||
this.scenarioTask.getScenarioId() + "-" + roomId + "-" + scenarioTask.getResourceId(),
|
||||
"updScenarioInfo",JSONObject.toJSONString(supplierInfo));
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user