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
2d5a80b2
Commit
2d5a80b2
authored
Oct 17, 2024
by
麻笑宇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
应急处置 / 即时警情列表
检验检测 / 业务办理量/办结率统计(近30天) 代码提交
parent
5756be0e
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
561 additions
and
2 deletions
+561
-2
DPFilterParamForDetailDto.java
...boot/module/common/api/dto/DPFilterParamForDetailDto.java
+62
-0
AlertCallEnum.java
...join/amos/boot/module/common/api/enums/AlertCallEnum.java
+102
-0
JYJCResultEnum.java
...oin/amos/boot/module/common/api/enums/JYJCResultEnum.java
+97
-0
JYJCTypeEnum.java
...yeejoin/amos/boot/module/jyjc/api/enums/JYJCTypeEnum.java
+13
-2
JyjcInspectionApplicationMapper.java
...dule/jyjc/api/mapper/JyjcInspectionApplicationMapper.java
+11
-0
JyjcInspectionApplicationMapper.xml
...main/resources/mapper/JyjcInspectionApplicationMapper.xml
+0
-0
JYJCDPStatisticsController.java
.../statistcs/biz/controller/JYJCDPStatisticsController.java
+46
-0
YJDPStatisticsController.java
...le/statistcs/biz/controller/YJDPStatisticsController.java
+37
-0
JYJCDPStatisticsServiceImpl.java
...atistcs/biz/service/impl/JYJCDPStatisticsServiceImpl.java
+107
-0
YJDPStatisticsServiceImpl.java
...statistcs/biz/service/impl/YJDPStatisticsServiceImpl.java
+27
-0
AlertCalledMapper.java
...in/amos/boot/module/ymt/api/mapper/AlertCalledMapper.java
+2
-0
AlertCalledMapper.xml
...e-ymt-api/src/main/resources/mapper/AlertCalledMapper.xml
+57
-0
No files found.
amos-boot-system-tzs/amos-boot-module-common/amos-boot-module-common-api/src/main/java/com/yeejoin/amos/boot/module/common/api/dto/DPFilterParamForDetailDto.java
View file @
2d5a80b2
...
...
@@ -18,6 +18,11 @@ public class DPFilterParamForDetailDto {
private
String
cityCode
;
/**
* 机构
*/
private
String
orgCode
;
/**
* 业务类型
*/
private
String
businessType
;
...
...
@@ -107,5 +112,62 @@ public class DPFilterParamForDetailDto {
* 业务状态
*/
private
String
status
;
/**
* 工单编号
*/
private
String
workOrderNumber
;
/**
* 接警人
*/
private
String
recUserName
;
/**
* 求援人
*/
private
String
emergencyPerson
;
/**
* 求援开始事件
*/
private
String
emergencyStartTime
;
/**
* 求援结束事件
*/
private
String
emergencyEndTime
;
/**
* 求援电话
*/
private
String
emergencyCall
;
/**
* 电梯识别码
*/
private
String
deviceId
;
/**
* 警情状态
*/
private
String
alertStatus
;
/**
* 处置环节
*/
private
String
alertStage
;
/**
* 检测结果
*/
private
String
inspectionConclusion
;
/**
* 发起单位
*/
private
String
applicationUnitName
;
/**
* 接受单位
*/
private
String
inspectionUnitName
;
}
amos-boot-system-tzs/amos-boot-module-common/amos-boot-module-common-api/src/main/java/com/yeejoin/amos/boot/module/common/api/enums/AlertCallEnum.java
0 → 100644
View file @
2d5a80b2
package
com
.
yeejoin
.
amos
.
boot
.
module
.
common
.
api
.
enums
;
import
java.util.*
;
/**
* 警情枚举类
*/
public
enum
AlertCallEnum
{
//警情类型
KRJY
(
"960"
,
"困人救援"
,
"JQLX"
,
false
),
GZWX
(
"961"
,
"故障维修"
,
"JQLX"
,
false
),
TSZX
(
"962"
,
"投诉咨询"
,
"JQLX"
,
false
),
//警情来源类型
DHBJ
(
"963"
,
"电话报警"
,
"JQLYLX"
,
true
),
WLJR
(
"1014"
,
"物联接入"
,
"JQLYLX"
,
true
),
YDDSB
(
"1015"
,
"移动端上报"
,
"JQLYLX"
,
true
),
//处置环节
YJJ
(
"860"
,
"已接警"
,
"CZHJ"
,
true
),
YPQ
(
"861"
,
"已派遣"
,
"CZHJ"
,
true
),
YDS
(
"862"
,
"已到达"
,
"CZHJ"
,
true
),
WBYDD
(
"863"
,
"维保已到达"
,
"CZHJ"
,
true
),
JYWC
(
"864"
,
"救援完成"
,
"CZHJ"
,
true
),
JYHF
(
"865"
,
"救援回访"
,
"CZHJ"
,
true
),
WXWC
(
"866"
,
"维修完成"
,
"CZHJ"
,
true
),
BXRYFK
(
"867"
,
"报修人已反馈"
,
"CZHJ"
,
true
),
WBYCZ
(
"868"
,
"维保已处置"
,
"CZHJ"
,
true
),
TSRYFK
(
"869"
,
"投诉人已反馈"
,
"CZHJ"
,
true
),
WJA
(
"0"
,
"未结案"
,
"WCZT"
,
true
),
YJA
(
"1"
,
"已结案"
,
"WCZT"
,
true
),
;
private
AlertCallEnum
(
String
code
,
String
name
,
String
type
,
Boolean
isSearch
){
this
.
code
=
code
;
this
.
name
=
name
;
this
.
type
=
type
;
this
.
isSearch
=
isSearch
;
}
private
String
code
;
private
String
name
;
private
String
type
;
private
Boolean
isSearch
;
public
String
getCode
()
{
return
code
;
}
public
String
getName
()
{
return
name
;
}
public
String
getType
()
{
return
type
;
}
public
Boolean
getSearch
()
{
return
isSearch
;
}
public
static
List
<
HashMap
<
String
,
Object
>>
getTypeEnumList
()
{
List
<
HashMap
<
String
,
Object
>>
list
=
new
ArrayList
<>();
for
(
AlertCallEnum
testEnum
:
EnumSet
.
allOf
(
AlertCallEnum
.
class
))
{
if
(!
testEnum
.
getSearch
())
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"title"
,
testEnum
.
name
);
map
.
put
(
"value"
,
testEnum
.
code
);
list
.
add
(
map
);
}
}
return
list
;
}
public
static
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
getSearchEnumList
()
{
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
searchMap
=
new
HashMap
<>();
for
(
AlertCallEnum
testEnum
:
EnumSet
.
allOf
(
AlertCallEnum
.
class
))
{
if
(
testEnum
.
getSearch
())
{
// 检查 searchMap 中是否存在 testEnum.type 对应的值
List
existingList
=
searchMap
.
get
(
testEnum
.
type
);
// 如果不存在,则创建一个新的 ArrayList
if
(
existingList
==
null
)
{
existingList
=
new
ArrayList
<>();
searchMap
.
put
(
testEnum
.
type
,
existingList
);
}
// 创建一个 map 并添加到 list 中
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"title"
,
testEnum
.
name
);
map
.
put
(
"value"
,
testEnum
.
code
);
existingList
.
add
(
map
);
}
}
return
searchMap
;
}
}
amos-boot-system-tzs/amos-boot-module-common/amos-boot-module-common-api/src/main/java/com/yeejoin/amos/boot/module/common/api/enums/JYJCResultEnum.java
0 → 100644
View file @
2d5a80b2
package
com
.
yeejoin
.
amos
.
boot
.
module
.
common
.
api
.
enums
;
import
java.util.*
;
/**
* 警情枚举类
*/
public
enum
JYJCResultEnum
{
//警情类型
KRJY
(
"960"
,
"困人救援"
,
"JQLX"
,
false
),
GZWX
(
"961"
,
"故障维修"
,
"JQLX"
,
false
),
TSZX
(
"962"
,
"投诉咨询"
,
"JQLX"
,
false
),
//检测结果
HG
(
"6040"
,
"合格"
,
"YYJG"
,
true
),
BHG
(
"6041"
,
"不合格"
,
"YYJG"
,
true
),
FJHG
(
"6042"
,
"复检合格"
,
"YYJG"
,
true
),
FJBHG
(
"6043"
,
"复检不合格"
,
"YYJG"
,
true
),
QT
(
"6044"
,
"其他"
,
"YYJG"
,
true
),
ZGHHG
(
"6045"
,
"整改后合格"
,
"YYJG"
,
true
),
FY
(
"6046"
,
"符合"
,
"YYJG"
,
true
),
BFH
(
"6047"
,
"不符合"
,
"YYJG"
,
true
),
FHYQ
(
"6048"
,
"符合要求"
,
"YYJG"
,
true
),
JBFHYQ
(
"6049"
,
"基本符合要求"
,
"YYJG"
,
true
),
BFHYQ
(
"6050"
,
"不符合要求"
,
"YYJG"
,
true
),
YXSY
(
"6051"
,
"允许使用"
,
"YYJG"
,
true
),
JYSY
(
"6052"
,
"降压使用"
,
"YYJG"
,
true
),
JXHYSYPJ
(
"6053"
,
"进行合于使用评价"
,
"YYJG"
,
true
),
;
private
JYJCResultEnum
(
String
code
,
String
name
,
String
type
,
Boolean
isSearch
){
this
.
code
=
code
;
this
.
name
=
name
;
this
.
type
=
type
;
this
.
isSearch
=
isSearch
;
}
private
String
code
;
private
String
name
;
private
String
type
;
private
Boolean
isSearch
;
public
String
getCode
()
{
return
code
;
}
public
String
getName
()
{
return
name
;
}
public
String
getType
()
{
return
type
;
}
public
Boolean
getSearch
()
{
return
isSearch
;
}
public
static
List
<
HashMap
<
String
,
Object
>>
getTypeEnumList
()
{
List
<
HashMap
<
String
,
Object
>>
list
=
new
ArrayList
<>();
for
(
JYJCResultEnum
testEnum
:
EnumSet
.
allOf
(
JYJCResultEnum
.
class
))
{
if
(!
testEnum
.
getSearch
())
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"title"
,
testEnum
.
name
);
map
.
put
(
"value"
,
testEnum
.
code
);
list
.
add
(
map
);
}
}
return
list
;
}
public
static
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
getSearchEnumList
()
{
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
searchMap
=
new
HashMap
<>();
for
(
JYJCResultEnum
testEnum
:
EnumSet
.
allOf
(
JYJCResultEnum
.
class
))
{
if
(
testEnum
.
getSearch
())
{
// 检查 searchMap 中是否存在 testEnum.type 对应的值
List
existingList
=
searchMap
.
get
(
testEnum
.
type
);
// 如果不存在,则创建一个新的 ArrayList
if
(
existingList
==
null
)
{
existingList
=
new
ArrayList
<>();
searchMap
.
put
(
testEnum
.
type
,
existingList
);
}
// 创建一个 map 并添加到 list 中
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"title"
,
testEnum
.
name
);
map
.
put
(
"value"
,
testEnum
.
code
);
existingList
.
add
(
map
);
}
}
return
searchMap
;
}
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/enums/JYJCTypeEnum.java
View file @
2d5a80b2
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jyjc
.
api
.
enums
;
import
com.yeejoin.amos.boot.module.common.api.enums.AlertCallEnum
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
org.apache.commons.lang3.StringUtils
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -48,4 +48,15 @@ public enum JYJCTypeEnum {
}
return
Arrays
.
stream
(
JYJCTypeEnum
.
values
()).
filter
(
e
->
e
.
getBizType
().
equals
(
bizType
)).
collect
(
Collectors
.
toList
());
}
public
static
List
<
HashMap
<
String
,
Object
>>
getTypeEnumList
()
{
List
<
HashMap
<
String
,
Object
>>
list
=
new
ArrayList
<>();
for
(
JYJCTypeEnum
testEnum
:
EnumSet
.
allOf
(
JYJCTypeEnum
.
class
))
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"title"
,
testEnum
.
getName
());
map
.
put
(
"value"
,
testEnum
.
getCode
());
list
.
add
(
map
);
}
return
list
;
}
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/mapper/JyjcInspectionApplicationMapper.java
View file @
2d5a80b2
...
...
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.dto.CountDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamForDetailDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionApplication
;
import
com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionApplicationEquipDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionApplicationEquipModel
;
...
...
@@ -96,6 +97,16 @@ public interface JyjcInspectionApplicationMapper extends BaseMapper<JyjcInspecti
Page
<
Map
<
String
,
Object
>>
getInspectDetailList
(
@Param
(
"page"
)
Page
<
Map
<
String
,
Object
>>
page
,
@Param
(
"orgCode"
)
String
orgCode
,
@Param
(
"dto"
)
DPFilterParamDto
filterParamDto
,
@Param
(
"businessType"
)
String
businessType
);
Page
<
Map
<
String
,
Object
>>
getInspectBusinessList
(
@Param
(
"page"
)
Page
<
Map
<
String
,
Object
>>
page
,
@Param
(
"orgCode"
)
String
orgCode
,
@Param
(
"dto"
)
DPFilterParamDto
filterParamDto
,
@Param
(
"businessType"
)
String
businessType
);
Long
queryQualifiedCount
(
@Param
(
"orgCode"
)
String
orgCode
,
@Param
(
"dpFilterParamDto"
)
DPFilterParamDto
dpFilterParamDto
);
Page
<
Map
<
String
,
Object
>>
queryAllList
(
@Param
(
"page"
)
Page
page
,
@Param
(
"orgCode"
)
String
orgCode
,
@Param
(
"dpFilterParamForDetailDto"
)
DPFilterParamForDetailDto
dpFilterParamForDetailDto
);
Long
queryAllFlowingAndFinishedCountForDetail
(
@Param
(
"dpFilterParamForDetailDto"
)
DPFilterParamForDetailDto
dpFilterParamForDetailDto
);
Long
queryAllPendingAndFinishedCountForDetail
(
@Param
(
"dpFilterParamForDetailDto"
)
DPFilterParamForDetailDto
dpFilterParamForDetailDto
);
Long
queryAllFinishedCountForDetail
(
@Param
(
"dpFilterParamForDetailDto"
)
DPFilterParamForDetailDto
dpFilterParamForDetailDto
);
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/resources/mapper/JyjcInspectionApplicationMapper.xml
View file @
2d5a80b2
This diff is collapsed.
Click to expand it.
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-biz/src/main/java/com/yeejoin/amos/boot/module/statistcs/biz/controller/JYJCDPStatisticsController.java
View file @
2d5a80b2
...
...
@@ -120,6 +120,52 @@ public class JYJCDPStatisticsController {
return
ResponseHelper
.
buildResponse
(
statisticsService
.
endRate
(
dpFilterParamDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻图表"
,
notes
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻图表"
)
@PostMapping
(
value
=
"/endRateDetail"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
endRateDetail
(
@Validated
@RequestBody
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
endRateDetail
(
dpFilterParamForDetailDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻列表"
,
notes
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻列表"
)
@PostMapping
(
value
=
"/endRateList"
)
public
ResponseModel
<
Page
<
Map
<
String
,
Object
>>>
endRateList
(
@Validated
@RequestBody
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
BindingResult
result
,
@RequestParam
(
value
=
"current"
,
defaultValue
=
"1"
)
Integer
current
,
@RequestParam
(
value
=
"size"
,
defaultValue
=
"20"
)
Integer
size
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
Page
<
Map
<
String
,
Object
>>
page
=
new
Page
<>(
current
,
size
);
return
ResponseHelper
.
buildResponse
(
statisticsService
.
endRateList
(
dpFilterParamForDetailDto
,
page
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻类型"
,
notes
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻类型"
)
@PostMapping
(
value
=
"/endRateType"
)
public
ResponseModel
<
List
<
Map
<
String
,
Object
>>>
endRateType
(
@Validated
@RequestBody
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
endRateType
(
dpFilterParamForDetailDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻筛选类型"
,
notes
=
"大屏-检验检测-近30日业务办理量/办结率统计下钻筛选类型"
)
@PostMapping
(
value
=
"/endRateSearch"
)
public
ResponseModel
<
Map
<
String
,
List
<
Map
<
String
,
Object
>>>>
endRateSearch
(
@Validated
@RequestBody
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
endRateSearch
(
dpFilterParamForDetailDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-按机构进行检验时效统计Top10排名"
,
notes
=
"大屏-检验检测-按机构进行检验时效统计Top10排名"
)
...
...
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-biz/src/main/java/com/yeejoin/amos/boot/module/statistcs/biz/controller/YJDPStatisticsController.java
View file @
2d5a80b2
...
...
@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.statistcs.biz.controller;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamForDetailDto
;
import
com.yeejoin.amos.boot.module.common.api.entity.AlertUseUnitStatistics
;
...
...
@@ -111,6 +112,42 @@ public class YJDPStatisticsController {
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-应急-即时警情下钻列表"
,
notes
=
"大屏-应急-即时警情下钻列表"
)
@PostMapping
(
value
=
"/instantAlertList"
)
public
ResponseModel
<
Page
<
Map
<
String
,
Object
>>>
instantAlertList
(
@Validated
@RequestBody
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
BindingResult
result
,
@RequestParam
(
value
=
"current"
,
defaultValue
=
"1"
)
Integer
current
,
@RequestParam
(
value
=
"size"
,
defaultValue
=
"20"
)
Integer
size
)
throws
Exception
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
Page
<
Map
<
String
,
Object
>>
page
=
new
Page
<>(
current
,
size
);
return
ResponseHelper
.
buildResponse
(
statisticsService
.
instantAlertList
(
dpFilterParamForDetailDto
,
page
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-应急-即时警情下钻列表类型"
,
notes
=
"大屏-应急-即时警情下钻列表类型"
)
@PostMapping
(
value
=
"/getAlertCallType"
)
public
ResponseModel
<
List
<
Map
<
String
,
Object
>>>
getAlertCallType
(
@Validated
@RequestBody
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
getAlertCallType
(
dpFilterParamForDetailDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-应急-即时警情下钻列表筛选"
,
notes
=
"大屏-应急-即时警情下钻列表筛选"
)
@PostMapping
(
value
=
"/getAlertCallSearch"
)
public
ResponseModel
<
Map
<
String
,
List
<
Map
<
String
,
Object
>>>>
getAlertCallSearch
(
@Validated
@RequestBody
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
getAlertCallSearch
(
dpFilterParamForDetailDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-应急-月度困人故障高发使用单位(默认上月度)"
,
notes
=
"大屏-应急-月度困人故障高发使用单位"
)
@PostMapping
(
value
=
"/trappedUserHighCompanyCount"
)
public
ResponseModel
<
List
<
AlertUseUnitStatisticsDto
>>
trappedUserHighCompanyCount
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
throws
Exception
{
...
...
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-biz/src/main/java/com/yeejoin/amos/boot/module/statistcs/biz/service/impl/JYJCDPStatisticsServiceImpl.java
View file @
2d5a80b2
...
...
@@ -10,7 +10,9 @@ import com.yeejoin.amos.boot.biz.common.dto.JyjcInspectionApplicationDto;
import
com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamForDetailDto
;
import
com.yeejoin.amos.boot.module.common.api.enums.AlertCallEnum
;
import
com.yeejoin.amos.boot.module.common.api.enums.JYJCBusinessTypeEnum
;
import
com.yeejoin.amos.boot.module.common.api.enums.JYJCResultEnum
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.InspectTimeCountDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.InspectionTimelinesDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.PublicityInspectOrgInfoDto
;
...
...
@@ -43,6 +45,7 @@ import org.elasticsearch.search.aggregations.bucket.terms.Terms;
import
org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder
;
import
org.elasticsearch.search.builder.SearchSourceBuilder
;
import
org.elasticsearch.search.sort.SortOrder
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
...
...
@@ -828,12 +831,18 @@ public class JYJCDPStatisticsServiceImpl {
//检验完成
Long
finshCount
=
inspectionApplicationMapper
.
queryAllFinishedCount
(
orgCode
,
dpFilterParamDto
);
ydata
.
add
(
finshCount
);
//检验合格数量
Long
qualifiedCount
=
inspectionApplicationMapper
.
queryQualifiedCount
(
orgCode
,
dpFilterParamDto
);
// 计算比率
double
completionRate
=
0.0
;
if
(
pendingCount
!=
0
&&
finshCount
!=
0
)
{
completionRate
=
(
double
)
finshCount
/
pendingCount
;
}
double
qualifiedRate
=
0.0
;
if
(
finshCount
!=
0
&&
qualifiedCount
!=
0
)
{
qualifiedRate
=
(
double
)
qualifiedCount
/
finshCount
;
}
String
[]
xdata
=
{
"报检"
,
"受理"
,
...
...
@@ -843,10 +852,108 @@ public class JYJCDPStatisticsServiceImpl {
// 格式化比率
DecimalFormat
df
=
new
DecimalFormat
(
"#,##0.00"
);
String
formattedCompletionRate
=
df
.
format
(
completionRate
);
String
formattedQualifiedRate
=
df
.
format
(
qualifiedRate
);
result
.
put
(
"xdata"
,
xdata
);
result
.
put
(
"ydata"
,
ydata
);
result
.
put
(
"completionRate"
,
formattedCompletionRate
);
result
.
put
(
"qualifiedRate"
,
formattedQualifiedRate
);
return
result
;
}
public
Map
<
String
,
Object
>
endRateDetail
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
)
{
List
<
RegionModel
>
regionModels
=
stCommonService
.
setRegionIfRootParent
(
dpFilterParamForDetailDto
.
getCityCode
());
List
<
Map
<
String
,
Object
>>
result
=
regionModels
.
parallelStream
().
map
(
r
->
{
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
dpFilterParamForDetailDto
.
getCityCode
());
DPFilterParamForDetailDto
filterParamDto
=
new
DPFilterParamForDetailDto
();
BeanUtils
.
copyProperties
(
dpFilterParamForDetailDto
,
filterParamDto
);
filterParamDto
.
setCityCode
(
r
.
getRegionCode
()+
""
);
filterParamDto
.
setOrgCode
(
orgCode
);
Map
<
String
,
Object
>
itemResult
=
endRateForDetail
(
filterParamDto
);
itemResult
.
put
(
"xdata"
,
r
.
getRegionName
());
return
itemResult
;
}).
collect
(
Collectors
.
toList
());
Map
<
String
,
Object
>
returnMap
=
new
HashMap
<>();
List
<
Map
<
String
,
Object
>>
legendData
=
new
ArrayList
<>();
for
(
int
i
=
0
;
i
<
2
;
i
++){
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
if
(
i
==
0
){
map
.
put
(
"dataKey"
,
"allCount"
);
map
.
put
(
"value"
,
"总数"
);
map
.
put
(
"chartType"
,
"bar"
);
}
else
{
map
.
put
(
"dataKey"
,
"completionRate"
);
map
.
put
(
"value"
,
"完结率"
);
map
.
put
(
"chartType"
,
"line"
);
}
legendData
.
add
(
map
);
}
returnMap
.
put
(
"legendData"
,
legendData
);
List
xdata
=
new
ArrayList
();
List
allCount
=
new
ArrayList
();
List
completionRate
=
new
ArrayList
();
for
(
int
i
=
0
;
i
<
result
.
size
();
i
++){
xdata
.
add
(
result
.
get
(
i
).
get
(
"xdata"
));
allCount
.
add
(
result
.
get
(
i
).
get
(
"allCount"
));
completionRate
.
add
(
result
.
get
(
i
).
get
(
"completionRate"
));
}
returnMap
.
put
(
"xdata"
,
xdata
);
returnMap
.
put
(
"finishedNum"
,
allCount
);
returnMap
.
put
(
"percentData"
,
completionRate
);
return
returnMap
;
}
private
Map
<
String
,
Object
>
endRateForDetail
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
)
{
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
//报检数量
Long
allCount
=
inspectionApplicationMapper
.
queryAllFlowingAndFinishedCountForDetail
(
dpFilterParamForDetailDto
);
//受理数量
Long
pendingCount
=
inspectionApplicationMapper
.
queryAllPendingAndFinishedCountForDetail
(
dpFilterParamForDetailDto
);
//检验完成
Long
finshCount
=
inspectionApplicationMapper
.
queryAllFinishedCountForDetail
(
dpFilterParamForDetailDto
);
// 计算比率
double
completionRate
=
0.0
;
if
(
pendingCount
!=
0
&&
finshCount
!=
0
)
{
completionRate
=
(
double
)
finshCount
/
pendingCount
;
}
// 格式化比率
DecimalFormat
df
=
new
DecimalFormat
(
"#,##0.00"
);
String
formattedCompletionRate
=
df
.
format
(
completionRate
);
result
.
put
(
"allCount"
,
allCount
);
result
.
put
(
"completionRate"
,
formattedCompletionRate
);
return
result
;
}
public
Page
<
Map
<
String
,
Object
>>
endRateList
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
Page
page
){
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
dpFilterParamForDetailDto
.
getCityCode
());
if
(
orgCode
==
null
){
return
null
;
}
//报检数量
Page
<
Map
<
String
,
Object
>>
result
=
inspectionApplicationMapper
.
queryAllList
(
page
,
orgCode
,
dpFilterParamForDetailDto
);
return
result
;
}
public
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
endRateSearch
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
)
{
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
enumMap
=
JYJCResultEnum
.
getSearchEnumList
();
return
enumMap
;
}
public
List
<
Map
<
String
,
Object
>>
endRateType
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
)
{
List
<
HashMap
<
String
,
Object
>>
enumList
=
JYJCTypeEnum
.
getTypeEnumList
();
List
<
Map
<
String
,
Object
>>
result
=
new
ArrayList
<>();
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"title"
,
"业务类型"
);
map
.
put
(
"value"
,
"0"
);
map
.
put
(
"children"
,
enumList
);
result
.
add
(
map
);
return
result
;
}
...
...
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-biz/src/main/java/com/yeejoin/amos/boot/module/statistcs/biz/service/impl/YJDPStatisticsServiceImpl.java
View file @
2d5a80b2
...
...
@@ -15,6 +15,8 @@ import com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamForDateDto;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamForDetailDto
;
import
com.yeejoin.amos.boot.module.common.api.entity.AlertRescueStatistics
;
import
com.yeejoin.amos.boot.module.common.api.entity.AlertUseUnitStatistics
;
import
com.yeejoin.amos.boot.module.common.api.enums.AlertCallEnum
;
import
com.yeejoin.amos.boot.module.common.api.enums.BusinessTypeEnum
;
import
com.yeejoin.amos.boot.module.statistics.api.dto.AlertUseUnitStatisticsDto
;
import
com.yeejoin.amos.boot.module.statistics.api.mapper.AlertRescueStatisticsMapper
;
import
com.yeejoin.amos.boot.module.statistics.api.mapper.AlertStatisticsMapper
;
...
...
@@ -215,6 +217,28 @@ public class YJDPStatisticsServiceImpl {
return
alertCalledMapper
.
getAlertPaperInfoList
(
regionCodes
,
false
);
}
public
Page
<
Map
<
String
,
Object
>>
instantAlertList
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
,
Page
page
)
{
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
dpFilterParamForDetailDto
.
getCityCode
());
dpFilterParamForDetailDto
.
setOrgCode
(
orgCode
);
return
alertCalledMapper
.
getInstantAlertPage
(
page
,
dpFilterParamForDetailDto
);
}
public
List
<
Map
<
String
,
Object
>>
getAlertCallType
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
)
{
List
<
HashMap
<
String
,
Object
>>
enumList
=
AlertCallEnum
.
getTypeEnumList
();
List
<
Map
<
String
,
Object
>>
result
=
new
ArrayList
<>();
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"title"
,
"警情类型"
);
map
.
put
(
"value"
,
"0"
);
map
.
put
(
"children"
,
enumList
);
result
.
add
(
map
);
return
result
;
}
public
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
getAlertCallSearch
(
DPFilterParamForDetailDto
dpFilterParamForDetailDto
)
{
Map
<
String
,
List
<
Map
<
String
,
Object
>>>
enumMap
=
AlertCallEnum
.
getSearchEnumList
();
return
enumMap
;
}
public
JSONObject
trappedUserCount
(
DPFilterParamDto
dpFilterParamDto
)
throws
Exception
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"xdata"
,
Arrays
.
asList
(
"30分钟内到达次数"
,
"超过30分钟到次数"
,
"一级救援次数"
,
"二级救援次数"
,
"三级救援次数"
));
...
...
@@ -649,4 +673,7 @@ public class YJDPStatisticsServiceImpl {
}
return
list
;
}
}
amos-boot-system-tzs/amos-boot-module-ymt/amos-boot-module-ymt-api/src/main/java/com/yeejoin/amos/boot/module/ymt/api/mapper/AlertCalledMapper.java
View file @
2d5a80b2
...
...
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.dto.CountDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamForDetailDto
;
import
com.yeejoin.amos.boot.module.ymt.api.dto.AlertCalledQueryDto
;
import
com.yeejoin.amos.boot.module.ymt.api.dto.AlertCalledRecordDto
;
import
com.yeejoin.amos.boot.module.ymt.api.dto.AlertPaperInfoDto
;
...
...
@@ -139,4 +140,5 @@ public interface AlertCalledMapper extends BaseMapper<AlertCalled> {
*/
List
<
CountDto
>
faultCauseRatio
(
@Param
(
"regionCode"
)
String
regionCode
);
Page
<
Map
<
String
,
Object
>>
getInstantAlertPage
(
@Param
(
"page"
)
Page
page
,
@Param
(
"dpFilterParamForDetailDto"
)
DPFilterParamForDetailDto
dpFilterParamForDetailDto
);
}
amos-boot-system-tzs/amos-boot-module-ymt/amos-boot-module-ymt-api/src/main/resources/mapper/AlertCalledMapper.xml
View file @
2d5a80b2
...
...
@@ -677,6 +677,63 @@
longValue ASC
LIMIT 5
</select>
<select
id=
"getInstantAlertPage"
resultType=
"java.util.Map"
>
SELECT
ac.work_order_number AS workOrderNumber,
ac.rec_user_name AS recUserName,
ac.alarm_type AS alarmType,
ac.emergency_person AS emergencyPerson,
ac.call_time AS callTime,
ac.device_id AS deviceId,
ac.address AS address,
concat(ac.city, ac.district) AS area,
ac.alert_source AS alertSource,
ac.alert_stage AS alertStage,
ac.alert_status AS alertStatus
FROM
tz_alert_called ac
LEFT JOIN tz_dispatch_task dt ON ac.sequence_nbr = dt.alert_id
WHERE 1=1
<if
test=
"dpFilterParamForDetailDto.orgCode != null and dpFilterParamForDetailDto.orgCode != '' "
>
AND ac.biz_org_code LIKE CONCAT( #{dpFilterParamForDetailDto.orgCode} , '%')
</if>
<if
test=
"dpFilterParamForDetailDto.workOrderNumber != null and dpFilterParamForDetailDto.workOrderNumber != ''"
>
AND ac.work_order_number LIKE CONCAT('%', #{dpFilterParamForDetailDto.workOrderNumber}, '%')
</if>
<if
test=
"dpFilterParamForDetailDto.recUserName != null and dpFilterParamForDetailDto.recUserName != ''"
>
AND ac.rec_user_name LIKE CONCAT('%', #{dpFilterParamForDetailDto.recUserName}, '%')
</if>
<if
test=
"dpFilterParamForDetailDto.emergencyPerson != null and dpFilterParamForDetailDto.emergencyPerson != ''"
>
AND ac.emergency_person = #{dpFilterParamForDetailDto.emergencyPerson}
</if>
<if
test=
"dpFilterParamForDetailDto.emergencyCall != null and dpFilterParamForDetailDto.emergencyCall != ''"
>
AND ac.emergency_call LIKE CONCAT('%', #{dpFilterParamForDetailDto.emergencyCall}, '%')
</if>
<if
test=
"dpFilterParamForDetailDto.deviceId != null and dpFilterParamForDetailDto.deviceId != ''"
>
AND ac.device_id = LIKE CONCAT('%', #{dpFilterParamForDetailDto.deviceId}, '%')
</if>
<if
test=
"dpFilterParamForDetailDto.address != null and dpFilterParamForDetailDto.address != ''"
>
AND ac.address LIKE CONCAT('%', #{dpFilterParamForDetailDto.address}, '%')
</if>
<if
test=
"dpFilterParamForDetailDto.emergencyStartTime != null and dpFilterParamForDetailDto.emergencyStartTime != ''"
>
AND dt.arrive_time
>
= #{dpFilterParamForDetailDto.emergencyStartTime}
</if>
<if
test=
"dpFilterParamForDetailDto.emergencyEndTime != null and dpFilterParamForDetailDto.emergencyEndTime != ''"
>
AND dt.arrive_time
<
= #{dpFilterParamForDetailDto.emergencyEndTime}
</if>
<if
test=
"dpFilterParamForDetailDto.alertSourceCode != null and dpFilterParamForDetailDto.alertSourceCode != ''"
>
AND ac.alert_source_code = #{dpFilterParamForDetailDto.alertSourceCode}
</if>
<if
test=
"dpFilterParamForDetailDto.alertStage != null and dpFilterParamForDetailDto.alertStage != ''"
>
AND ac.alert_stage = #{dpFilterParamForDetailDto.alertStage}
</if>
<if
test=
"dpFilterParamForDetailDto.alertStatus != null and dpFilterParamForDetailDto.alertStatus != ''"
>
AND ac.alert_status = #{dpFilterParamForDetailDto.alertStatus}
</if>
<if
test=
"dpFilterParamForDetailDto.alertTypeCode != null and dpFilterParamForDetailDto.alertTypeCode != '' and dpFilterParamForDetailDto.alertTypeCode != '0'"
>
AND ac.alarm_type_code = #{dpFilterParamForDetailDto.alertTypeCode}
</if>
</select>
</mapper>
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