Commit 4290eeca by 王衍超

预警功能bug修复;

parent cdcb7b0e
......@@ -82,7 +82,6 @@ public class WarningServiceImpl implements WarningService{
Boolean isOpen = warnSetting.isOpen();
if(isOpen != null) warSettingIdObj.set(WarnSettingConstant.isOpen, isOpen);
warnSettingDao.update(warSettingIdObj);
//修改后触发预警
BaseBusinessWarn baseBusinessWarn = new BaseBusinessWarn(warSettingId);
baseBusinessWarn.warn();
......@@ -111,9 +110,7 @@ public class WarningServiceImpl implements WarningService{
@Override
public void updateWarnExe(WarnExeRecord warnExeRecord) {
KClass type = Amino.getApplicationMetadataContext().getBean(WarnSettingConstant.ENTITY_WARNINGEXE, KClass.class);
JsonNode json = JSONObjectUtils.toJson(warnExeRecord);
KObject object = JSONObjectUtils.toObject(json, type);
KObject object = warnSettingDao.queryWarningExeById(warnExeRecord.getId());
object.set("recentlyTime", warnExeRecord.getRecentlyTime());
object.set("endTime", warnExeRecord.getEndTime());
object.set("warnState", warnExeRecord.getWarnState());
......
......@@ -26,21 +26,27 @@ public class ContractExpireWarningCalculator implements IWarningCalculator{
@Autowired
private ContractService contractService;
private final int millisOfDay = 1000 * 3600 * 24;
@Override
public boolean isWarning(WarnSetting warnSetting) {
String min = warnSetting.getMin();
String target = warnSetting.getTarget();
if(min==null || min.trim().length()==0) return false;
KObject contract = contractService.queryContract(warnSetting.getBillId());
Date endDate = contract.getDate(ContractConstant.endDate);
Date now = new Date();
int diff = now.compareTo(endDate);
if (diff > Integer.valueOf(min)) {
String contractCode = contract.getString(ContractConstant.CONTRACT_CODE);
int diff = (int) ((endDate.getTime() -now.getTime()) / millisOfDay);
// warnMessage = "编号["+contractCode+"]"+"的合同"+target+"为"+advanceBalance+",已不足"+min+"!";
if (diff < Integer.valueOf(min)) {
int value = diff - Integer.valueOf(min);
String contractCode = contract.getString(ContractConstant.CONTRACT_CODE);
if (value>= 0) {
warnMessage = "编号["+contractCode+"]"+"的合同还有"+value+"天到期!";
}else {
warnMessage = "编号["+contractCode+"]"+"的合同已经过期"+Math.abs(value)+"天!";
}
return true;
}
return false;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment