Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
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
项目统一框架
amos-boot-biz
Commits
b1c76b4b
Commit
b1c76b4b
authored
Jul 14, 2021
by
taabe
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
交接班-接警情况接口
parent
2f01b626
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
123 additions
and
14 deletions
+123
-14
AlertCalledMapper.java
...in/amos/boot/module/jcs/api/mapper/AlertCalledMapper.java
+4
-0
AlertFormValueMapper.java
...amos/boot/module/jcs/api/mapper/AlertFormValueMapper.java
+3
-1
AlertCalledMapper.xml
...e-jcs-api/src/main/resources/mapper/AlertCalledMapper.xml
+10
-0
AlertFormValueMapper.xml
...cs-api/src/main/resources/mapper/AlertFormValueMapper.xml
+13
-1
AlertCalledController.java
...boot/module/jcs/biz/controller/AlertCalledController.java
+3
-2
AlertCalledServiceImpl.java
...t/module/jcs/biz/service/impl/AlertCalledServiceImpl.java
+88
-8
AlertFormValueServiceImpl.java
...odule/jcs/biz/service/impl/AlertFormValueServiceImpl.java
+2
-2
No files found.
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/mapper/AlertCalledMapper.java
View file @
b1c76b4b
...
@@ -2,6 +2,9 @@ package com.yeejoin.amos.boot.module.jcs.api.mapper;
...
@@ -2,6 +2,9 @@ package com.yeejoin.amos.boot.module.jcs.api.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.Map
;
/**
/**
* 警情接警记录 Mapper 接口
* 警情接警记录 Mapper 接口
...
@@ -11,4 +14,5 @@ import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
...
@@ -11,4 +14,5 @@ import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
*/
*/
public
interface
AlertCalledMapper
extends
BaseMapper
<
AlertCalled
>
{
public
interface
AlertCalledMapper
extends
BaseMapper
<
AlertCalled
>
{
Map
<
String
,
Integer
>
queryAlertStatusCount
(
@Param
(
"beginDate"
)
String
beginDate
,
@Param
(
"endDate"
)
String
endDate
);
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/mapper/AlertFormValueMapper.java
View file @
b1c76b4b
...
@@ -23,10 +23,12 @@ public interface AlertFormValueMapper extends BaseMapper<AlertFormValue> {
...
@@ -23,10 +23,12 @@ public interface AlertFormValueMapper extends BaseMapper<AlertFormValue> {
*
*
* @param fieldCodes 列
* @param fieldCodes 列
* @param groupCode 分组code
* @param groupCode 分组code
* @param params 查询参数
* @return List<Map>
* @return List<Map>
*/
*/
List
<
Map
<
String
,
Object
>>
listAll
(
List
<
Map
<
String
,
Object
>>
listAll
(
@Param
(
"fieldCodes"
)
List
<
String
>
fieldCodes
,
@Param
(
"fieldCodes"
)
List
<
String
>
fieldCodes
,
@Param
(
"groupCode"
)
String
groupCode
@Param
(
"groupCode"
)
String
groupCode
,
@Param
(
"params"
)
Map
<
String
,
String
>
params
);
);
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/resources/mapper/AlertCalledMapper.xml
View file @
b1c76b4b
...
@@ -2,4 +2,14 @@
...
@@ -2,4 +2,14 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yeejoin.amos.boot.module.jcs.api.mapper.AlertCalledMapper"
>
<mapper
namespace=
"com.yeejoin.amos.boot.module.jcs.api.mapper.AlertCalledMapper"
>
<select
id=
"queryAlertStatusCount"
resultType=
"java.util.Map"
>
SELECT
count( 1 ) calledCount,
sum( CASE WHEN alert_status = 1 THEN 1 ELSE 0 END ) finishedCount,
sum( CASE WHEN alert_type_code = 230 THEN 1 ELSE 0 END ) majorAlertCount
FROM
jc_alert_called
WHERE
call_time BETWEEN #{beginDate} AND #{endDate}
</select>
</mapper>
</mapper>
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/resources/mapper/AlertFormValueMapper.xml
View file @
b1c76b4b
...
@@ -30,14 +30,26 @@
...
@@ -30,14 +30,26 @@
select
select
i.alert_called_id instanceId,
i.alert_called_id instanceId,
i.alert_type_code groupCode,
i.alert_type_code groupCode,
i.rec_date recDate,
<foreach
collection=
"fieldCodes"
item=
"item"
index=
"key"
separator=
","
>
<foreach
collection=
"fieldCodes"
item=
"item"
index=
"key"
separator=
","
>
MAX(CASE WHEN i.FIELD_CODE = #{item} THEN i.FIELD_VALUE END) as ${item}
MAX(CASE WHEN i.FIELD_CODE = #{item} THEN i.FIELD_VALUE E
LSE '' E
ND) as ${item}
</foreach>
</foreach>
from
from
jc_alert_form_value i
jc_alert_form_value i
where i.alert_type_code = #{groupCode}
where i.alert_type_code = #{groupCode}
GROUP by
GROUP by
i.alert_called_id)d
i.alert_called_id)d
<if
test=
"params != null and params.size > 0 "
>
where 1=1
<foreach
collection=
"params"
index=
"key"
item=
"value"
>
<if
test=
"key != null and key == 'beginDate'"
>
and d.recDate >= #{value}
</if>
<if
test=
"key != null and key == 'endDate'"
>
and d.recDate
<![CDATA[<=]]>
#{value}
</if>
</foreach>
</if>
order by instanceId
order by instanceId
</select>
</select>
</mapper>
</mapper>
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/controller/AlertCalledController.java
View file @
b1c76b4b
...
@@ -303,8 +303,8 @@ public class AlertCalledController extends BaseController {
...
@@ -303,8 +303,8 @@ public class AlertCalledController extends BaseController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/dateRange/list"
)
@GetMapping
(
value
=
"/dateRange/list"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"查询指定日期内警情列表"
,
notes
=
"查询指定日期内警情列表"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"查询指定日期内警情列表"
,
notes
=
"查询指定日期内警情列表"
)
public
ResponseModel
<
List
<
Map
<
String
,
Object
>
>>
listByDateRange
(
@RequestParam
(
"beginDate"
)
String
beginDate
,
public
ResponseModel
<
Map
<
String
,
Object
>>
listByDateRange
(
@RequestParam
(
"beginDate"
)
String
beginDate
,
@RequestParam
(
"endDate"
)
String
endDate
)
{
@RequestParam
(
"endDate"
)
String
endDate
)
{
return
ResponseHelper
.
buildResponse
(
iAlertCalledService
.
listByDateRange
(
beginDate
,
endDate
));
return
ResponseHelper
.
buildResponse
(
iAlertCalledService
.
getAlertInfoList
(
beginDate
,
endDate
));
}
}
}
}
\ No newline at end of file
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/service/impl/AlertCalledServiceImpl.java
View file @
b1c76b4b
...
@@ -2,24 +2,34 @@ package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
...
@@ -2,24 +2,34 @@ package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
com.yeejoin.amos.boot.biz.common.utils.DateUtils
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisKey
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisKey
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledDto
;
import
com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledDto
;
import
com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto
;
import
com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.AlertFormValue
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.AlertFormValue
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.Template
;
import
com.yeejoin.amos.boot.module.jcs.api.enums.AlertStageEnums
;
import
com.yeejoin.amos.boot.module.jcs.api.enums.AlertStageEnums
;
import
com.yeejoin.amos.boot.module.jcs.api.enums.DutyInfoEnum
;
import
com.yeejoin.amos.boot.module.jcs.api.mapper.AlertCalledMapper
;
import
com.yeejoin.amos.boot.module.jcs.api.mapper.AlertCalledMapper
;
import
com.yeejoin.amos.boot.module.jcs.api.mapper.TemplateMapper
;
import
com.yeejoin.amos.boot.module.jcs.api.service.IAlertCalledService
;
import
com.yeejoin.amos.boot.module.jcs.api.service.IAlertCalledService
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -45,7 +55,11 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
...
@@ -45,7 +55,11 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
@Autowired
@Autowired
RuleAlertCalledService
ruleAlertCalledService
;
RuleAlertCalledService
ruleAlertCalledService
;
public
static
String
GROUP_CODE
=
"229"
;
@Autowired
TemplateServiceImpl
templateService
;
@Autowired
TemplateMapper
templateMapper
;
/**
/**
*
*
...
@@ -56,8 +70,8 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
...
@@ -56,8 +70,8 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
* @param alertCalledObjsDto
* @param alertCalledObjsDto
* @return
* @return
*/
*/
@Transactional
@Transactional
(
rollbackFor
=
RuntimeException
.
class
)
public
AlertCalledObjsDto
createAlertCalled
(
AlertCalledObjsDto
alertCalledObjsDto
)
{
public
AlertCalledObjsDto
createAlertCalled
(
AlertCalledObjsDto
alertCalledObjsDto
)
{
try
{
try
{
// 警情基本信息
// 警情基本信息
AlertCalled
alertCalled
=
alertCalledObjsDto
.
getAlertCalled
();
AlertCalled
alertCalled
=
alertCalledObjsDto
.
getAlertCalled
();
...
@@ -170,11 +184,77 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
...
@@ -170,11 +184,77 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
* @param endDate 结束时间
* @param endDate 结束时间
*/
*/
public
List
<
Map
<
String
,
Object
>>
listByDateRange
(
String
beginDate
,
String
endDate
)
{
public
List
<
Map
<
String
,
Object
>>
listByDateRange
(
String
beginDate
,
String
endDate
)
{
List
<
AlertCalled
>
alertCalledDtoList
=
// 查询指定日期内的警情列表
List
<
AlertCalled
>
alertCalledList
=
this
.
list
(
new
LambdaQueryWrapper
<
AlertCalled
>().
between
(
AlertCalled:
:
getCallTime
,
beginDate
,
endDate
));
this
.
list
(
new
LambdaQueryWrapper
<
AlertCalled
>().
between
(
AlertCalled:
:
getCallTime
,
beginDate
,
endDate
));
Map
<
String
,
List
<
AlertCalled
>>
alertCalledMap
=
Map
<
String
,
String
>
queryParams
=
Maps
.
newHashMap
();
alertCalledDtoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
AlertCalled:
:
getAlertTypeCode
));
queryParams
.
put
(
"beginDate"
,
beginDate
);
List
<
Map
<
String
,
Object
>>
formValueList
=
iAlertFormValueService
.
listAll
(
GROUP_CODE
);
queryParams
.
put
(
"endDate"
,
endDate
);
return
null
;
List
<
Map
<
String
,
Object
>>
allList
=
Lists
.
newArrayList
();
if
(!
ValidationUtil
.
isEmpty
(
alertCalledList
))
{
Map
<
String
,
List
<
AlertCalled
>>
alertCalledMap
=
alertCalledList
.
stream
().
collect
(
Collectors
.
groupingBy
(
AlertCalled:
:
getAlertTypeCode
));
Map
<
Long
,
AlertCalled
>
calledMap
=
alertCalledList
.
stream
().
collect
(
Collectors
.
toMap
(
AlertCalled:
:
getSequenceNbr
,
Function
.
identity
()));
alertCalledMap
.
forEach
((
alert
,
list
)
->
{
allList
.
addAll
(
iAlertFormValueService
.
listAll
(
alert
,
queryParams
));
});
allList
.
forEach
(
i
->
{
AlertCalled
alertCalled
=
calledMap
.
get
(
Long
.
parseLong
(
i
.
get
(
"instanceId"
).
toString
()));
i
.
putAll
(
Bean
.
BeantoMap
(
alertCalled
));
});
}
return
allList
;
}
public
Map
<
String
,
Object
>
getAlertInfoList
(
String
beginDate
,
String
endDate
)
{
Map
<
String
,
Object
>
result
=
Maps
.
newHashMap
();
List
<
Map
<
String
,
Object
>>
list
=
listByDateRange
(
beginDate
,
endDate
);
// 获取接警情况模板
List
<
Template
>
templateList
=
templateMapper
.
selectList
(
new
LambdaQueryWrapper
<
Template
>().
eq
(
Template:
:
getFormat
,
false
).
like
(
Template:
:
getTypeCode
,
DutyInfoEnum
.
接警情况
.
getKey
()
+
"-"
));
Map
<
String
,
Template
>
templateMap
=
templateList
.
stream
().
collect
(
Collectors
.
toMap
(
Template:
:
getTypeCode
,
Function
.
identity
()));
List
<
String
>
contentList
=
Lists
.
newArrayList
();
list
.
forEach
(
i
->
{
String
tempContent
=
templateMap
.
get
(
DutyInfoEnum
.
接警情况
.
getKey
()
+
"-"
+
i
.
get
(
"alertTypeCode"
)).
getContent
();
contentList
.
add
(
replaceTemplate
(
tempContent
,
i
));
});
Map
<
String
,
Integer
>
statusCountMap
=
alertCalledMapper
.
queryAlertStatusCount
(
beginDate
,
endDate
);
Integer
unFinishedCount
=
this
.
count
(
new
LambdaQueryWrapper
<
AlertCalled
>().
eq
(
AlertCalled:
:
getAlertStatus
,
"0"
));
result
.
put
(
"alertInfoList"
,
contentList
);
result
.
putAll
(
statusCountMap
);
result
.
put
(
"unFinishedCount"
,
unFinishedCount
);
return
result
;
}
/**
* 替换模板
*
* @param tempContent 模板
* @param objMap 对象map
* @return
*/
private
String
replaceTemplate
(
String
tempContent
,
Map
<
String
,
Object
>
objMap
)
{
int
size
=
objMap
.
size
();
String
[]
keys
=
objMap
.
keySet
().
toArray
(
new
String
[
size
]);
Object
[]
values
=
objMap
.
values
().
toArray
(
new
Object
[
size
]);
List
<
String
>
strList
=
Lists
.
newArrayList
();
for
(
Object
obj
:
values
)
{
if
(!
ValidationUtil
.
isEmpty
(
obj
))
{
if
(
obj
instanceof
Date
)
{
obj
=
DateUtils
.
date2LongStr
((
Date
)
obj
);
}
strList
.
add
(
obj
.
toString
());
}
else
{
strList
.
add
(
""
);
}
}
return
StringUtils
.
replaceEach
(
tempContent
,
keys
,
strList
.
toArray
(
new
String
[
strList
.
size
()]));
}
}
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/service/impl/AlertFormValueServiceImpl.java
View file @
b1c76b4b
...
@@ -46,10 +46,10 @@ public class AlertFormValueServiceImpl extends BaseService<AlertFormValueDto,Al
...
@@ -46,10 +46,10 @@ public class AlertFormValueServiceImpl extends BaseService<AlertFormValueDto,Al
* @param groupCode
* @param groupCode
* @return List<Map <String, Object>>
* @return List<Map <String, Object>>
*/
*/
public
List
<
Map
<
String
,
Object
>>
listAll
(
String
groupCode
)
{
public
List
<
Map
<
String
,
Object
>>
listAll
(
String
groupCode
,
Map
<
String
,
String
>
queryParams
)
{
List
<
AlertForm
>
columns
=
List
<
AlertForm
>
columns
=
alertFormService
.
list
(
new
LambdaQueryWrapper
<
AlertForm
>().
eq
(
AlertForm:
:
getAlertTypeCode
,
groupCode
));
alertFormService
.
list
(
new
LambdaQueryWrapper
<
AlertForm
>().
eq
(
AlertForm:
:
getAlertTypeCode
,
groupCode
));
List
<
String
>
fieldCodes
=
Lists
.
transform
(
columns
,
AlertForm:
:
getFieldCode
);
List
<
String
>
fieldCodes
=
Lists
.
transform
(
columns
,
AlertForm:
:
getFieldCode
);
return
this
.
baseMapper
.
listAll
(
fieldCodes
,
groupCode
);
return
this
.
baseMapper
.
listAll
(
fieldCodes
,
groupCode
,
queryParams
);
}
}
}
}
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