Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
cloud-fb
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王衍超
cloud-fb
Commits
3e8c91e7
Commit
3e8c91e7
authored
Apr 16, 2021
by
高晓磊
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
采砂预警设置和预警记录的忽略和统计
parent
931b300d
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
202 additions
and
28 deletions
+202
-28
DateTimeUtils.java
.../main/java/com/beecode/inz/common/util/DateTimeUtils.java
+45
-0
BaseBusinessWarn.java
...c/main/java/com/xyst/dinas/biz/warn/BaseBusinessWarn.java
+5
-1
WarnSettingConstant.java
...ain/java/com/xyst/dinas/biz/warn/WarnSettingConstant.java
+14
-1
WarnSettingDao.java
...main/java/com/xyst/dinas/biz/warn/dao/WarnSettingDao.java
+0
-0
IWarningSettingService.java
...m/xyst/dinas/biz/warn/service/IWarningSettingService.java
+21
-4
WarningSettingServiceImpl.java
...yst/dinas/biz/warn/service/WarningSettingServiceImpl.java
+52
-6
SandMiningAreaController.java
...java/com/xyst/dinas/biz/web/SandMiningAreaController.java
+5
-5
WarnSettingController.java
...in/java/com/xyst/dinas/biz/web/WarnSettingController.java
+17
-8
DischargingServiceImpl.java
...s/production/internal/service/DischargingServiceImpl.java
+0
-0
SandMiningServiceImpl.java
...as/production/internal/service/SandMiningServiceImpl.java
+20
-2
DischargingController.java
.../com/xyst/dinas/production/web/DischargingController.java
+13
-0
SandMiningController.java
...a/com/xyst/dinas/production/web/SandMiningController.java
+0
-1
SandWarningExe.jmx
...ources/com/xyst/dinas/production/query/SandWarningExe.jmx
+10
-0
No files found.
backend/inz.common/src/main/java/com/beecode/inz/common/util/DateTimeUtils.java
View file @
3e8c91e7
...
...
@@ -277,4 +277,48 @@ public class DateTimeUtils {
return
calendar
.
getTime
();
}
/**
* 判断1个日期是否小于当前时间所在年
* eg: now = new Date 2021-04-16
* isLtNowYear(2020-12-31) true
* isLtNowYear(2021-01-01) false
* @return Boolean
*/
public
static
Boolean
isLtNowYear
(
Date
date
)
{
Calendar
cal1
=
Calendar
.
getInstance
();
cal1
.
setTime
(
date
);
Calendar
cal2
=
Calendar
.
getInstance
();
cal2
.
setTime
(
new
Date
());
return
cal1
.
get
(
Calendar
.
YEAR
)
<
cal2
.
get
(
Calendar
.
YEAR
);
}
/**
* 判断2个日期是否同年
* eg: isSameYear(2020-12-31,2021-01-01) false
* isSameYear(2020-01-01,2020-12-31) true
* @return Boolean
*/
public
static
Boolean
isSameYear
(
Date
startDate
,
Date
endDate
)
{
Calendar
cal1
=
Calendar
.
getInstance
();
cal1
.
setTime
(
startDate
);
Calendar
cal2
=
Calendar
.
getInstance
();
cal2
.
setTime
(
endDate
);
return
cal1
.
get
(
Calendar
.
YEAR
)
==
cal2
.
get
(
Calendar
.
YEAR
);
}
/**
* 判断2个日期是否同月
* eg: isSameYear(2020-12-31,2021-01-01) false
* isSameYear(2020-12-31,2020-12-01) true
* isSameYear(2020-12-31,2021-12-01) true
* @return Boolean
*/
public
static
Boolean
isSameMonth
(
Date
startDate
,
Date
endDate
)
{
Calendar
cal1
=
Calendar
.
getInstance
();
cal1
.
setTime
(
startDate
);
Calendar
cal2
=
Calendar
.
getInstance
();
cal2
.
setTime
(
endDate
);
return
cal1
.
get
(
Calendar
.
MONTH
)
==
cal2
.
get
(
Calendar
.
MONTH
);
}
}
\ No newline at end of file
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/warn/BaseBusinessWarn.java
View file @
3e8c91e7
...
...
@@ -125,7 +125,11 @@ public class BaseBusinessWarn {
//2.当前存在执行中的预警记录,则修改预警执行信息
Date
currentTime
=
new
Date
();
warnExeRecord
.
setRecentlyTime
(
currentTime
);
if
(!
isWarning
)
{
//2.1 如果没有处罚预警,则结束该预警记录
if
(!
isWarning
)
{
//2.1 如果没有触发预警,则结束该预警记录
//如果预警已经结束,则不修改
if
((
WarnStateEnum
.
OVER
.
getValue
()+
""
).
equals
(
warnExeRecord
.
getWarnState
())){
return
true
;
}
warnExeRecord
.
setEndTime
(
currentTime
);
warnExeRecord
.
setWarnState
(
WarnStateEnum
.
OVER
.
getValue
()+
""
);
}
...
...
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/warn/WarnSettingConstant.java
View file @
3e8c91e7
...
...
@@ -15,6 +15,8 @@ public class WarnSettingConstant {
/** 最近预警时间 */
public
static
final
String
RECENTLY_TIME
=
"recentlyTime"
;
public
static
final
String
WARN_STATE
=
"warnState"
;
/**
* 超采预警类型
...
...
@@ -29,7 +31,18 @@ public class WarnSettingConstant {
/**
* 许可证船只进入告警区类型
*/
public
static
final
String
SAND_SHIP_WARN_BILL_TYPE
=
"采区船只预警"
;
public
static
final
String
SAND_SHIP_WARN_BILL_TYPE
=
"采区船只报警"
;
/**
* 许可证船只进入告警区指标-进入告警区
*/
public
static
final
String
SAND_SHIP_WARN_TARGET_ENTER_WARNING_AREA
=
"进入告警区"
;
/**
* 许可证船只进入告警区指标-非作业时间进入采砂区
*/
public
static
final
String
SAND_SHIP_WARN_TARGET_NO_OPERATING_HOURS
=
"非作业时间进入采砂区"
;
}
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/warn/dao/WarnSettingDao.java
View file @
3e8c91e7
This diff is collapsed.
Click to expand it.
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/warn/service/IWarningSettingService.java
View file @
3e8c91e7
package
com
.
xyst
.
dinas
.
biz
.
warn
.
service
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.UUID
;
...
...
@@ -19,8 +20,10 @@ public interface IWarningSettingService {
* @return
*/
public
UUID
insertWarnSetting
(
WarnSetting
warnSetting
)
;
WarnSetting
getWarnSetting
(
@NonNull
UUID
warnSettingId
);
void
endWarnStateBySettingId
(
UUID
warnSettingId
);
WarnSetting
getWarnSetting
(
@NonNull
UUID
warnSettingId
);
WarnSetting
getWarnSetting
(
@NonNull
String
billType
,
@Nullable
UUID
billId
,
@Nullable
String
target
);
/**
...
...
@@ -35,6 +38,17 @@ public interface IWarningSettingService {
* @param warnSetting
*/
void
updateWarnSetting
(
UpdateWarnSetting
warnSetting
);
/**
* 删除预警设置
* @param warnSettingId
*/
void
deleteWarnSetting
(
@NonNull
UUID
warnSettingId
);
/**
* 删除预警设置
*/
void
deleteWarnSetting
(
@NonNull
String
billType
,
@Nullable
UUID
billId
,
@Nullable
String
target
);
/***************************************/
...
...
@@ -57,6 +71,9 @@ public interface IWarningSettingService {
* @return
*/
List
<
WarnExeRecord
>
queryWarnExeRecords
(
UUID
warnSettingId
);
void
ignoreWarnExeRecord
(
UUID
id
);
HashMap
<
String
,
Object
>
warnRecodeGroupInfo
(
List
<
UUID
>
regionalCompanyIds
,
List
<
String
>
targets
);
}
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/warn/service/WarningSettingServiceImpl.java
View file @
3e8c91e7
package
com
.
xyst
.
dinas
.
biz
.
warn
.
service
;
import
java.time.LocalDateTime
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.UUID
;
import
com.xyst.dinas.biz.enumeration.WarnStateEnum
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.Assert
;
...
...
@@ -36,6 +38,8 @@ public class WarningSettingServiceImpl implements IWarningSettingService{
JsonNode
json
=
JSONObjectUtils
.
toJson
(
warnSetting
);
KObject
object
=
JSONObjectUtils
.
toObject
(
json
,
type
);
object
.
set
(
BaseConstants
.
CREATE_TIME
,
LocalDateTime
.
now
());
object
.
set
(
BaseConstants
.
DEL
,
false
);
object
.
set
(
BaseConstants
.
DISCARD
,
false
);
return
warnSettingDao
.
create
(
object
);
}
...
...
@@ -62,7 +66,8 @@ public class WarningSettingServiceImpl implements IWarningSettingService{
* 结束一条预警设置的预警执行记录
* @param warnSettingId
*/
public
void
endWarnStateBySettingId
(
UUID
warnSettingId
)
{
@Override
public
void
endWarnStateBySettingId
(
UUID
warnSettingId
)
{
KObject
warnExeRecord
=
warnSettingDao
.
queryWarnExeRecordBySettingId
(
warnSettingId
);
warnSettingDao
.
endWarnRecordState
(
warnExeRecord
);
...
...
@@ -88,7 +93,19 @@ public class WarningSettingServiceImpl implements IWarningSettingService{
return
null
;
}
@Override
@Override
public
void
ignoreWarnExeRecord
(
UUID
id
)
{
KObject
kObject
=
warnSettingDao
.
queryWarningExeById
(
id
);
kObject
.
set
(
WarnSettingConstant
.
WARN_STATE
,
WarnStateEnum
.
IGNORE
.
getValue
()+
""
);
warnSettingDao
.
update
(
kObject
);
}
@Override
public
HashMap
<
String
,
Object
>
warnRecodeGroupInfo
(
List
<
UUID
>
regionalCompanyIds
,
List
<
String
>
targets
)
{
return
warnSettingDao
.
warnRecodeGroupInfo
(
regionalCompanyIds
,
targets
);
}
@Override
public
void
updateWarnExe
(
WarnExeRecord
warnExeRecord
)
{
KClass
type
=
Amino
.
getApplicationMetadataContext
().
getBean
(
WarnSettingConstant
.
ENTITY_WARNINGEXE
,
KClass
.
class
);
JsonNode
json
=
JSONObjectUtils
.
toJson
(
warnExeRecord
);
...
...
@@ -126,12 +143,41 @@ public class WarningSettingServiceImpl implements IWarningSettingService{
warSettingIdObj
.
set
(
"min"
,
min
);
String
max
=
warnSetting
.
getMax
();
warSettingIdObj
.
set
(
"max"
,
max
);
warnSettingDao
.
update
(
warSettingIdObj
);
}
private
String
UuidListToString
(
List
<
UUID
>
uuids
)
{
/**
* 删除预警设置
*
* @param warnSettingId
*/
@Override
public
void
deleteWarnSetting
(
UUID
warnSettingId
)
{
KObject
kObject
=
warnSettingDao
.
queryWarnSettingById
(
warnSettingId
);
kObject
.
set
(
"del"
,
true
);
kObject
.
set
(
"discard"
,
true
);
warnSettingDao
.
update
(
kObject
);
}
/**
* 删除预警设置
*
* @param billType
* @param billId
* @param target
*/
@Override
public
void
deleteWarnSetting
(
String
billType
,
UUID
billId
,
String
target
)
{
WarnSetting
warnSetting
=
warnSettingDao
.
getWarnSetting
(
billType
,
billId
,
target
);
KObject
kObject
=
warnSettingDao
.
queryWarnSettingById
(
warnSetting
.
getSettingId
());
kObject
.
set
(
"del"
,
true
);
kObject
.
set
(
"discard"
,
true
);
warnSettingDao
.
update
(
kObject
);
}
private
String
UuidListToString
(
List
<
UUID
>
uuids
)
{
StringBuilder
str
=
new
StringBuilder
();
for
(
int
i
=
0
;
i
<
uuids
.
size
();
i
++)
{
if
(
i
==
uuids
.
size
()
-
1
)
{
...
...
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/web/SandMiningAreaController.java
View file @
3e8c91e7
...
...
@@ -119,11 +119,11 @@ public class SandMiningAreaController {
return
ResponseObj
.
success
(
"预警设置更新成功"
);
}
//
更新预警设置
@GetMapping
(
"/warnRecode/ignore"
)
//采区预警设置更新
public
ResponseObj
ignoreWarnExe
(
UUID
id
)
{
warningSettingService
.
query
WarnExeRecord
(
id
);
return
ResponseObj
.
success
(
"
预警设置更新
成功"
);
//
忽略预警记录
@GetMapping
(
"/warnRecode/ignore"
)
public
ResponseObj
ignoreWarnExe
(
@RequestParam
(
"id"
)
UUID
id
)
{
warningSettingService
.
ignore
WarnExeRecord
(
id
);
return
ResponseObj
.
success
(
"
忽略
成功"
);
}
...
...
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/web/WarnSettingController.java
View file @
3e8c91e7
package
com
.
xyst
.
dinas
.
biz
.
web
;
import
java.util.UUID
;
import
org.json.JSONObject
;
import
com.beecode.bcp.type.KObject
;
import
com.beecode.inz.basis.team.pojo.ResponseObj
;
import
com.xyst.dinas.biz.warn.service.IWarningSettingService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.Assert
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.beecode.bcp.type.KObject
;
import
com.xyst.dinas.biz.request.UpdateWarnSetting
;
import
com.xyst.dinas.biz.warn.service.IWarningSettingService
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.UUID
;
/**
* 预警
...
...
@@ -42,6 +41,16 @@ public class WarnSettingController {
Assert
.
notNull
(
id
,
"The id must not be null"
);
return
warningSettingService
.
queryWarnSettingById
(
id
);
}
//查询预警汇总信息
@GetMapping
(
"/warnRecode/groupInfo"
)
public
ResponseObj
groupInfo
(
@RequestParam
(
name
=
"regionalCompanyIds"
)
List
<
UUID
>
regionalCompanyIds
,
@RequestParam
(
name
=
"targets"
)
List
<
String
>
targets
)
{
HashMap
<
String
,
Object
>
groupInfo
=
warningSettingService
.
warnRecodeGroupInfo
(
regionalCompanyIds
,
targets
);
return
ResponseObj
.
success
(
"查询成功"
,
groupInfo
);
}
}
backend/xyst.dinas.production/src/main/java/com/xyst/dinas/production/internal/service/DischargingServiceImpl.java
View file @
3e8c91e7
This diff is collapsed.
Click to expand it.
backend/xyst.dinas.production/src/main/java/com/xyst/dinas/production/internal/service/SandMiningServiceImpl.java
View file @
3e8c91e7
...
...
@@ -2,6 +2,7 @@ package com.xyst.dinas.production.internal.service;
import
com.beecode.bap.attachment.common.Page
;
import
com.beecode.bcp.type.KObject
;
import
com.xyst.dinas.biz.warn.WarnSetting
;
import
com.xyst.dinas.biz.warn.WarnSettingConstant
;
import
com.xyst.dinas.biz.warn.WarnSettingEntity
;
import
com.xyst.dinas.biz.warn.service.IWarningSettingService
;
...
...
@@ -39,7 +40,7 @@ public class SandMiningServiceImpl implements SandMiningService {
WarnSettingEntity
warnSetting
=
new
WarnSettingEntity
();
warnSetting
.
setBillType
(
WarnSettingConstant
.
SAND_SHIP_WARN_BILL_TYPE
);
warnSetting
.
setBillId
(
uuid
);
warnSetting
.
setTarget
(
"进入告警区"
);
warnSetting
.
setTarget
(
WarnSettingConstant
.
SAND_SHIP_WARN_TARGET_ENTER_WARNING_AREA
);
warnSetting
.
setOpen
(
false
);
warnSetting
.
setMemo
(
getSandShipInfo
(
kObject
));
warningSettingService
.
insertWarnSetting
(
warnSetting
);
...
...
@@ -47,7 +48,7 @@ public class SandMiningServiceImpl implements SandMiningService {
WarnSettingEntity
warnSetting1
=
new
WarnSettingEntity
();
warnSetting1
.
setBillType
(
WarnSettingConstant
.
SAND_SHIP_WARN_BILL_TYPE
);
warnSetting1
.
setBillId
(
uuid
);
warnSetting1
.
setTarget
(
"非作业时间采砂"
);
warnSetting1
.
setTarget
(
WarnSettingConstant
.
SAND_SHIP_WARN_TARGET_NO_OPERATING_HOURS
);
warnSetting1
.
setOpen
(
false
);
warnSetting1
.
setMemo
(
getSandShipInfo
(
kObject
));
warningSettingService
.
insertWarnSetting
(
warnSetting1
);
...
...
@@ -84,6 +85,23 @@ public class SandMiningServiceImpl implements SandMiningService {
@Override
public
void
deleteById
(
UUID
id
)
{
sandMiningDao
.
deleteById
(
id
);
//删除预警设置 结束预警记录
//进入告警区的
WarnSetting
warnSetting
=
warningSettingService
.
getWarnSetting
(
WarnSettingConstant
.
SAND_SHIP_WARN_BILL_TYPE
,
id
,
WarnSettingConstant
.
SAND_SHIP_WARN_TARGET_ENTER_WARNING_AREA
);
if
(
null
!=
warnSetting
){
warningSettingService
.
deleteWarnSetting
(
warnSetting
.
getSettingId
());
warningSettingService
.
endWarnStateBySettingId
(
warnSetting
.
getSettingId
());
}
//非作业时间采砂的
WarnSetting
warnSetting1
=
warningSettingService
.
getWarnSetting
(
WarnSettingConstant
.
SAND_SHIP_WARN_BILL_TYPE
,
id
,
WarnSettingConstant
.
SAND_SHIP_WARN_TARGET_NO_OPERATING_HOURS
);
if
(
null
!=
warnSetting1
){
warningSettingService
.
deleteWarnSetting
(
warnSetting1
.
getSettingId
());
warningSettingService
.
endWarnStateBySettingId
(
warnSetting1
.
getSettingId
());
}
}
@Override
...
...
backend/xyst.dinas.production/src/main/java/com/xyst/dinas/production/web/DischargingController.java
View file @
3e8c91e7
...
...
@@ -161,4 +161,16 @@ public class DischargingController {
return
ResponseObj
.
success
();
}
//接驳统计
// @RequestMapping(value = "groupInfoByYear", method = RequestMethod.GET)
// public ResponseObj groupInfo(
// @RequestParam(name = "regionalCompanyIds", required = false) List<UUID> regionalCompanyIds,
// @RequestParam(name = "year", required = false) List<UUID> regionalCompanyIds,
// ) throws Exception {
//
// return ResponseObj.success("查询成功", dischargingService.groupInfo(transportShipId,type,startDate,endDate,sandMiningAreaType,stationIds,sandMiningAreaId,sandMiningShipId,parentId));
// }
}
\ No newline at end of file
backend/xyst.dinas.production/src/main/java/com/xyst/dinas/production/web/SandMiningController.java
View file @
3e8c91e7
...
...
@@ -35,7 +35,6 @@ public class SandMiningController {
@RequestParam
(
name
=
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
name
=
"sandMiningStatus"
,
required
=
false
)
Integer
sandMiningStatus
)
throws
Exception
{
Page
<
KObject
>
objectPage
=
new
Page
<>();
objectPage
.
setPageNo
(
pageNo
);
objectPage
.
setPageSize
(
pageSize
);
...
...
backend/xyst.dinas.production/src/main/resources/com/xyst/dinas/production/query/SandWarningExe.jmx
View file @
3e8c91e7
...
...
@@ -50,6 +50,16 @@
<m:desc></m:desc>
</m:field>
<m:field>
<m:name>
warnSetting.billType
</m:name>
<m:title>
预警指标
</m:title>
<m:type>
com.xyst.dinas.biz.datamodel.WarnSetting
</m:type>
<m:ref>
<m:name></m:name>
<m:type></m:type>
</m:ref>
<m:desc></m:desc>
</m:field>
<m:field>
<m:name>
startTime
</m:name>
<m:title>
开始时间
</m:title>
<m:type>
datetime
</m:type>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment