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
0dba56c9
Commit
0dba56c9
authored
Jul 29, 2024
by
suhuiguang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.气瓶-大屏2个接口 区县报错接口新开发,中间地图性能问题接口新开发
parent
89ee3da5
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
216 additions
and
233 deletions
+216
-233
CylinderStatisticsMapper.java
...odule/statistics/api/mapper/CylinderStatisticsMapper.java
+16
-0
CommonBaseMapper.xml
...istics-api/src/main/resources/mapper/CommonBaseMapper.xml
+0
-1
CylinderStatisticsMapper.xml
...pi/src/main/resources/mapper/CylinderStatisticsMapper.xml
+13
-0
CylinderDPStatisticsController.java
...tistcs/biz/controller/CylinderDPStatisticsController.java
+24
-25
CylinderDPStatisticsServiceImpl.java
...tcs/biz/service/impl/CylinderDPStatisticsServiceImpl.java
+130
-206
StCommonServiceImpl.java
...odule/statistcs/biz/service/impl/StCommonServiceImpl.java
+32
-0
CylinderAreaDataMapper.xml
...-api/src/main/resources/mapper/CylinderAreaDataMapper.xml
+1
-1
No files found.
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-api/src/main/java/com/yeejoin/amos/boot/module/statistics/api/mapper/CylinderStatisticsMapper.java
0 → 100644
View file @
0dba56c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
statistics
.
api
.
mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
/**
* Mapper 接口
*
* @author system_generator
* @date 2023-12-13
*/
@Mapper
public
interface
CylinderStatisticsMapper
{
Long
countEnterpriseNumForCylinder
(
@Param
(
"orgCode"
)
String
orgCode
);
}
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-api/src/main/resources/mapper/CommonBaseMapper.xml
View file @
0dba56c9
...
@@ -5,5 +5,4 @@
...
@@ -5,5 +5,4 @@
<select
id=
"getOrgCodeByCompanyCode"
resultType=
"java.lang.String"
>
<select
id=
"getOrgCodeByCompanyCode"
resultType=
"java.lang.String"
>
select org_code from privilege_company where company_code = #{companyCode} limit 1
select org_code from privilege_company where company_code = #{companyCode} limit 1
</select>
</select>
</mapper>
</mapper>
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-api/src/main/resources/mapper/CylinderStatisticsMapper.xml
0 → 100644
View file @
0dba56c9
<?xml version="1.0" encoding="UTF-8"?>
<!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.statistics.api.mapper.CylinderStatisticsMapper"
>
<select
id=
"countEnterpriseNumForCylinder"
resultType=
"java.lang.Long"
>
SELECT
count(1)
FROM "tz_base_enterprise_info"
where
unit_type LIKE'%充装单位%'
and supervise_org_code like concat(#{orgCode},'%')
</select>
</mapper>
amos-boot-system-tzs/amos-boot-module-statistics/amos-boot-module-statistics-biz/src/main/java/com/yeejoin/amos/boot/module/statistcs/biz/controller/CylinderDPStatisticsController.java
View file @
0dba56c9
...
@@ -2,13 +2,17 @@ package com.yeejoin.amos.boot.module.statistcs.biz.controller;
...
@@ -2,13 +2,17 @@ package com.yeejoin.amos.boot.module.statistcs.biz.controller;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.module.common.api.dto.CylinderFillingRecordStatisticsDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.CylinderFillingRecordStatisticsDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.statistcs.biz.service.impl.CylinderDPStatisticsServiceImpl
;
import
com.yeejoin.amos.boot.module.statistcs.biz.service.impl.CylinderDPStatisticsServiceImpl
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.validation.FieldError
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.exception.instance.BadRequest
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
...
@@ -35,7 +39,7 @@ public class CylinderDPStatisticsController extends BaseController {
...
@@ -35,7 +39,7 @@ public class CylinderDPStatisticsController extends BaseController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/getCylinderStatisticsData"
)
@GetMapping
(
value
=
"/getCylinderStatisticsData"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"
获取气瓶统计数据-按照企业名称统计"
,
notes
=
"获取气瓶统计数据-按照企业名称统计
"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"
大屏-气瓶-企业气瓶数量排名"
,
notes
=
"大屏-气瓶-企业气瓶数量排名
"
)
public
ResponseModel
<
List
<
Map
<
String
,
Object
>>>
getCylinderStatisticsData
(
@RequestParam
(
value
=
"regionCode"
)
String
regionCode
)
throws
IOException
{
public
ResponseModel
<
List
<
Map
<
String
,
Object
>>>
getCylinderStatisticsData
(
@RequestParam
(
value
=
"regionCode"
)
String
regionCode
)
throws
IOException
{
List
<
Map
<
String
,
Object
>>
result
=
dpStatisticsService
.
getCylinderStatisticsData
(
regionCode
);
List
<
Map
<
String
,
Object
>>
result
=
dpStatisticsService
.
getCylinderStatisticsData
(
regionCode
);
return
ResponseHelper
.
buildResponse
(
result
);
return
ResponseHelper
.
buildResponse
(
result
);
...
@@ -43,44 +47,40 @@ public class CylinderDPStatisticsController extends BaseController {
...
@@ -43,44 +47,40 @@ public class CylinderDPStatisticsController extends BaseController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/getCylinderStatisticsDataByCity"
)
@PostMapping
(
value
=
"/getCylinderStatisticsDataByCity"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"
获取气瓶统计数据-按照城市统计"
,
notes
=
"获取气瓶统计数据-按照城市
统计"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"
大屏-气瓶-区域统计"
,
notes
=
"大屏-气瓶-区域
统计"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
getCylinderStatisticsDataByCity
(
@
RequestBody
Map
<
String
,
Object
>
map
)
throws
Exception
{
public
ResponseModel
<
Map
<
String
,
Object
>>
getCylinderStatisticsDataByCity
(
@
Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
bindingResult
)
throws
Exception
{
Object
regionCode
=
map
.
get
(
"cityCode"
);
List
<
FieldError
>
fieldErrors
=
bindingResult
.
getFieldErrors
(
);
if
(
ObjectUtils
.
isEmpty
(
regionCode
))
{
if
(
!
fieldErrors
.
isEmpty
(
))
{
regionCode
=
"610000"
;
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
())
;
}
}
Map
<
String
,
Object
>
result
=
dpStatisticsService
.
getCylinderStatisticsDataByCity
(
dpFilterParamDto
);
Map
<
String
,
Object
>
result
=
dpStatisticsService
.
getCylinderStatisticsDataByCity
(
regionCode
.
toString
());
return
ResponseHelper
.
buildResponse
(
result
);
return
ResponseHelper
.
buildResponse
(
result
);
}
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/getCylinderStatisticsDataByCityForTotal"
)
@PostMapping
(
value
=
"/getCylinderStatisticsDataByCityForTotal"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"
获取气瓶统计数据-按照城市统计"
,
notes
=
"获取气瓶统计数据-按照城市统计-地图统计
"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"
大屏-气瓶-地图统计图列"
,
notes
=
"大屏-气瓶-地图统计图列
"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
getCylinderStatisticsDataByCityForTotal
(
@
RequestBody
Map
<
String
,
Object
>
map
)
throws
Exception
{
public
ResponseModel
<
Map
<
String
,
Object
>>
getCylinderStatisticsDataByCityForTotal
(
@
Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
bindingResult
)
throws
Exception
{
Object
regionCode
=
map
.
get
(
"cityCode"
);
List
<
FieldError
>
fieldErrors
=
bindingResult
.
getFieldErrors
(
);
if
(
ObjectUtils
.
isEmpty
(
regionCode
))
{
if
(
!
fieldErrors
.
isEmpty
(
))
{
regionCode
=
"610000"
;
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
())
;
}
}
Map
<
String
,
Object
>
result
=
dpStatisticsService
.
getCylinderStatisticsDataByCityForTotal
(
dpFilterParamDto
);
Map
<
String
,
Object
>
result
=
dpStatisticsService
.
getCylinderStatisticsDataByCityForTotal
(
regionCode
.
toString
());
return
ResponseHelper
.
buildResponse
(
result
);
return
ResponseHelper
.
buildResponse
(
result
);
}
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/getCylinderStatisticsDataByCityForMap"
)
@PostMapping
(
value
=
"/getCylinderStatisticsDataByCityForMap"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"
获取气瓶统计数据-按照城市统计"
,
notes
=
"获取气瓶统计数据-按照城市统计-
地图"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"
大屏-气瓶-中间地图"
,
notes
=
"大屏-气瓶-中间
地图"
)
public
ResponseModel
<
List
<
Map
<
String
,
Object
>>>
getCylinderStatisticsDataByCityForMap
(
@
RequestBody
Map
<
String
,
Object
>
map
)
throws
Exception
{
public
ResponseModel
<
List
<
Map
<
String
,
Object
>>>
getCylinderStatisticsDataByCityForMap
(
@
Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
bindingResult
)
throws
Exception
{
Object
regionCode
=
map
.
get
(
"cityCode"
);
List
<
FieldError
>
fieldErrors
=
bindingResult
.
getFieldErrors
(
);
if
(
ObjectUtils
.
isEmpty
(
regionCode
))
{
if
(
!
fieldErrors
.
isEmpty
(
))
{
regionCode
=
"610000"
;
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
())
;
}
}
List
<
Map
<
String
,
Object
>>
result
=
dpStatisticsService
.
getCylinderStatisticsDataByCityForMap
(
dpFilterParamDto
);
List
<
Map
<
String
,
Object
>>
result
=
dpStatisticsService
.
getCylinderStatisticsDataByCityForMap
(
regionCode
.
toString
());
return
ResponseHelper
.
buildResponse
(
result
);
return
ResponseHelper
.
buildResponse
(
result
);
}
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"30天的充装量、卸液量数据"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"30天的充装量、卸液量数据"
)
@GetMapping
(
value
=
"/fillingTimesAndQuantity"
)
@GetMapping
(
value
=
"/fillingTimesAndQuantity"
)
...
@@ -88,5 +88,4 @@ public class CylinderDPStatisticsController extends BaseController {
...
@@ -88,5 +88,4 @@ public class CylinderDPStatisticsController extends BaseController {
return
ResponseHelper
.
buildResponse
(
dpStatisticsService
.
fillingTimesAndQuantity
(
reginCode
));
return
ResponseHelper
.
buildResponse
(
dpStatisticsService
.
fillingTimesAndQuantity
(
reginCode
));
}
}
}
}
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/CylinderDPStatisticsServiceImpl.java
View file @
0dba56c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
statistcs
.
biz
.
service
.
impl
;
package
com
.
yeejoin
.
amos
.
boot
.
module
.
statistcs
.
biz
.
service
.
impl
;
import
com.yeejoin.amos.boot.module.common.api.constant.TZSCommonConstant
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.yeejoin.amos.boot.biz.common.dto.CountDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.CylinderFillingRecordStatisticsDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.CylinderFillingRecordStatisticsDto
;
import
com.yeejoin.amos.boot.module.common.api.enums.ReginStepEnum
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.ymt.api.dto.TzBaseEnterpriseInfoDto
;
import
com.yeejoin.amos.boot.module.statistics.api.mapper.CylinderStatisticsMapper
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.enums.EquimentEnum
;
import
com.yeejoin.amos.boot.module.ymt.api.mapper.TzBaseEnterpriseInfoMapper
;
import
com.yeejoin.amos.boot.module.ymt.api.mapper.TzBaseEnterpriseInfoMapper
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.mapper.CylinderAreaDataMapper
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.mapper.CylinderAreaDataMapper
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.mapper.CylinderInfoMapper
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.mapper.CylinderInfoMapper
;
import
com.yeejoin.amos.feign.privilege.Privilege
;
import
com.yeejoin.amos.feign.privilege.Privilege
;
import
com.yeejoin.amos.feign.privilege.model.CompanyModel
;
import
com.yeejoin.amos.feign.privilege.model.CompanyModel
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.RegionModel
;
import
com.yeejoin.amos.feign.systemctl.model.RegionModel
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.lucene.queryparser.classic.QueryParser
;
import
org.elasticsearch.action.search.SearchRequest
;
import
org.elasticsearch.action.search.SearchRequest
;
import
org.elasticsearch.action.search.SearchResponse
;
import
org.elasticsearch.action.search.SearchResponse
;
import
org.elasticsearch.client.RequestOptions
;
import
org.elasticsearch.client.RequestOptions
;
import
org.elasticsearch.client.RestHighLevelClient
;
import
org.elasticsearch.client.RestHighLevelClient
;
import
org.elasticsearch.client.core.CountRequest
;
import
org.elasticsearch.client.core.CountResponse
;
import
org.elasticsearch.index.query.BoolQueryBuilder
;
import
org.elasticsearch.index.query.QueryBuilders
;
import
org.elasticsearch.index.query.QueryBuilders
;
import
org.elasticsearch.search.aggregations.AggregationBuilders
;
import
org.elasticsearch.search.aggregations.AggregationBuilders
;
import
org.elasticsearch.search.aggregations.bucket.terms.Terms
;
import
org.elasticsearch.search.aggregations.bucket.terms.Terms
;
import
org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder
;
import
org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder
;
import
org.elasticsearch.search.builder.SearchSourceBuilder
;
import
org.elasticsearch.search.builder.SearchSourceBuilder
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.time.format.DateTimeFormatter
;
import
java.util.ArrayList
;
import
java.util.*
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -41,46 +44,50 @@ import java.util.stream.Collectors;
...
@@ -41,46 +44,50 @@ import java.util.stream.Collectors;
@Service
@Service
public
class
CylinderDPStatisticsServiceImpl
{
public
class
CylinderDPStatisticsServiceImpl
{
private
StCommonServiceImpl
stCommonService
;
private
RestHighLevelClient
restHighLevelClient
;
private
RestHighLevelClient
restHighLevelClient
;
private
TzBaseEnterpriseInfoMapper
baseEnterpriseInfoMapper
;
private
TzBaseEnterpriseInfoMapper
baseEnterpriseInfoMapper
;
private
CylinderAreaDataMapper
cylinderAreaDataMapper
;
private
CylinderAreaDataMapper
cylinderAreaDataMapper
;
;
private
CylinderStatisticsMapper
cylinderStatisticsMapper
;
private
CylinderInfoMapper
cylinderInfoMapper
;
private
CylinderInfoMapper
cylinderInfoMapper
;
public
CylinderDPStatisticsServiceImpl
(
RestHighLevelClient
restHighLevelClient
,
TzBaseEnterpriseInfoMapper
baseEnterpriseInfoMapper
,
CylinderAreaDataMapper
cylinderAreaDataMapper
,
CylinderInfoMapper
cylinderInfoMapper
)
{
public
CylinderDPStatisticsServiceImpl
(
StCommonServiceImpl
stCommonService
,
RestHighLevelClient
restHighLevelClient
,
TzBaseEnterpriseInfoMapper
baseEnterpriseInfoMapper
,
CylinderAreaDataMapper
cylinderAreaDataMapper
,
CylinderStatisticsMapper
cylinderStatisticsMapper
,
CylinderInfoMapper
cylinderInfoMapper
)
{
this
.
stCommonService
=
stCommonService
;
this
.
restHighLevelClient
=
restHighLevelClient
;
this
.
restHighLevelClient
=
restHighLevelClient
;
this
.
baseEnterpriseInfoMapper
=
baseEnterpriseInfoMapper
;
this
.
baseEnterpriseInfoMapper
=
baseEnterpriseInfoMapper
;
this
.
cylinderAreaDataMapper
=
cylinderAreaDataMapper
;
this
.
cylinderAreaDataMapper
=
cylinderAreaDataMapper
;
this
.
cylinderStatisticsMapper
=
cylinderStatisticsMapper
;
this
.
cylinderInfoMapper
=
cylinderInfoMapper
;
this
.
cylinderInfoMapper
=
cylinderInfoMapper
;
}
}
public
List
<
Map
<
String
,
Object
>>
getCylinderStatisticsData
(
String
regionCode
)
throws
IOException
{
public
List
<
Map
<
String
,
Object
>>
getCylinderStatisticsData
(
String
regionCode
)
throws
IOException
{
// 构建搜索请求
// 构建搜索请求
CompanyModel
result
=
Privilege
.
companyClient
.
queryByCompanyCode
(
regionCode
).
getResult
();
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
regionCode
);
String
orgCode
=
result
.
getOrgCode
();
if
(
StringUtils
.
isEmpty
(
orgCode
))
{
return
new
ArrayList
<>();
}
SearchRequest
searchRequest
=
new
SearchRequest
(
"idx_biz_view_jg_all"
);
SearchRequest
searchRequest
=
new
SearchRequest
(
"idx_biz_view_jg_all"
);
SearchSourceBuilder
searchSourceBuilder
=
new
SearchSourceBuilder
();
SearchSourceBuilder
searchSourceBuilder
=
new
SearchSourceBuilder
();
// 构建查询条件
// 构建查询条件
searchSourceBuilder
.
query
(
searchSourceBuilder
.
query
(
QueryBuilders
.
boolQuery
()
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
termQuery
(
"EQU_CATEGORY_CODE"
,
"2300"
))
.
must
(
QueryBuilders
.
termQuery
(
"EQU_CATEGORY_CODE"
,
"2300"
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"ORG_BRANCH_CODE"
,
orgCode
))
.
must
(
QueryBuilders
.
termQuery
(
"EQU_STATE"
,
EquimentEnum
.
ZAIYONG
.
getCode
()))
// 按照管辖机构区域信息模糊查询
.
must
(
QueryBuilders
.
wildcardQuery
(
"ORG_BRANCH_CODE.keyword"
,
QueryParser
.
escape
(
orgCode
)
+
"*"
))
);
);
TermsAggregationBuilder
aggregation
=
AggregationBuilders
.
terms
(
"USE_UNIT_CREDIT_CODE"
).
field
(
"USE_UNIT_CREDIT_CODE.keyword"
).
size
(
10
);
TermsAggregationBuilder
aggregation
=
AggregationBuilders
.
terms
(
"USE_UNIT_CREDIT_CODE"
).
field
(
"USE_UNIT_CREDIT_CODE.keyword"
).
size
(
10
);
searchSourceBuilder
.
aggregation
(
aggregation
);
searchSourceBuilder
.
aggregation
(
aggregation
);
searchRequest
.
source
(
searchSourceBuilder
);
searchRequest
.
source
(
searchSourceBuilder
);
// 执行搜索并获取响应
// 执行搜索并获取响应
SearchResponse
searchResponse
=
restHighLevelClient
.
search
(
searchRequest
,
RequestOptions
.
DEFAULT
);
SearchResponse
searchResponse
=
restHighLevelClient
.
search
(
searchRequest
,
RequestOptions
.
DEFAULT
);
// 处理聚合结果
// 处理聚合结果
// 这里只是打印出聚合的名称和桶的数量,你需要根据自己的需求来处理这些数据
// 这里只是打印出聚合的名称和桶的数量,你需要根据自己的需求来处理这些数据
Terms
terms
=
searchResponse
.
getAggregations
().
get
(
"USE_UNIT_CREDIT_CODE"
);
Terms
terms
=
searchResponse
.
getAggregations
().
get
(
"USE_UNIT_CREDIT_CODE"
);
...
@@ -93,102 +100,39 @@ public class CylinderDPStatisticsServiceImpl {
...
@@ -93,102 +100,39 @@ public class CylinderDPStatisticsServiceImpl {
dataList
.
add
(
item
);
dataList
.
add
(
item
);
keys
.
add
(
bucket
.
getKeyAsString
());
keys
.
add
(
bucket
.
getKeyAsString
());
}
}
Map
<
String
,
TzBaseEnterpriseInfo
>
useCodeEntryMap
=
getStringTzBaseEnterpriseInfoDtoMap
(
keys
);
List
<
TzBaseEnterpriseInfoDto
>
tzBaseEnterpriseInfoDtos
=
baseEnterpriseInfoMapper
.
queryByUseCode
(
keys
);
Map
<
String
,
TzBaseEnterpriseInfoDto
>
collect
=
tzBaseEnterpriseInfoDtos
.
stream
().
collect
(
Collectors
.
toMap
(
TzBaseEnterpriseInfoDto:
:
getUseCode
,
f
->
f
));
for
(
Map
<
String
,
Object
>
item
:
dataList
)
{
for
(
Map
<
String
,
Object
>
item
:
dataList
)
{
Object
key
=
item
.
get
(
"key"
);
Object
key
=
item
.
get
(
"key"
);
if
(
collect
.
containsKey
(
key
))
{
if
(
useCodeEntryMap
.
containsKey
(
key
))
{
item
.
put
(
"name"
,
collect
.
get
(
key
).
getUseUnit
());
item
.
put
(
"name"
,
useCodeEntryMap
.
get
(
key
).
getUseUnit
());
item
.
put
(
"city"
,
collect
.
get
(
key
).
getCity
());
item
.
put
(
"city"
,
useCodeEntryMap
.
get
(
key
).
getCity
());
item
.
put
(
"province"
,
collect
.
get
(
key
).
getProvince
());
item
.
put
(
"province"
,
useCodeEntryMap
.
get
(
key
).
getProvince
());
item
.
put
(
"district"
,
collect
.
get
(
key
).
getDistrict
());
item
.
put
(
"district"
,
useCodeEntryMap
.
get
(
key
).
getDistrict
());
}
}
}
}
return
dataList
;
return
dataList
;
}
}
private
Map
<
String
,
TzBaseEnterpriseInfo
>
getStringTzBaseEnterpriseInfoDtoMap
(
List
<
String
>
keys
)
{
LambdaQueryWrapper
<
TzBaseEnterpriseInfo
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
in
(
TzBaseEnterpriseInfo:
:
getUseUnitCode
,
keys
);
queryWrapper
.
select
(
TzBaseEnterpriseInfo:
:
getUseUnitCode
,
TzBaseEnterpriseInfo:
:
getProvince
,
TzBaseEnterpriseInfo:
:
getCity
,
TzBaseEnterpriseInfo:
:
getDistrict
,
TzBaseEnterpriseInfo:
:
getUseUnit
);
List
<
TzBaseEnterpriseInfo
>
baseEnterpriseInfos
=
baseEnterpriseInfoMapper
.
selectList
(
queryWrapper
);
return
baseEnterpriseInfos
.
stream
().
collect
(
Collectors
.
toMap
(
TzBaseEnterpriseInfo:
:
getUseUnitCode
,
f
->
f
));
}
public
Map
<
String
,
Object
>
getCylinderStatisticsDataByCity
(
String
regionCode
)
throws
Exception
{
// 构建搜索请求
List
<
RegionModel
>
regionList
=
this
.
setRegionIfRootParent
(
regionCode
);
List
<
String
>
companyCode
=
regionList
.
stream
().
map
(
r
->
r
.
getRegionCode
().
toString
()).
collect
(
Collectors
.
toList
());
List
<
CompanyModel
>
companyList
=
Privilege
.
companyClient
.
queryListByCompanyCode
(
String
.
join
(
","
,
companyCode
)).
getResult
();
Map
<
String
,
RegionModel
>
regionMap
=
regionList
.
stream
().
collect
(
Collectors
.
toMap
(
r
->
r
.
getRegionCode
().
toString
(),
r
->
r
));
List
<
Map
<
String
,
Object
>>
legendData
=
new
ArrayList
<>();
List
<
String
>
xdata
=
new
ArrayList
<>();
List
<
String
>
qiping
=
new
ArrayList
<>();
List
<
String
>
qizhan
=
new
ArrayList
<>();
long
maxValue
=
0
;
for
(
CompanyModel
comapany
:
companyList
)
{
String
orgCode
=
comapany
.
getOrgCode
();
xdata
.
add
(
regionMap
.
get
(
comapany
.
getCompanyCode
()).
getRegionName
());
SearchRequest
searchRequest
=
new
SearchRequest
(
"idx_biz_view_jg_all"
);
SearchSourceBuilder
searchSourceBuilder
=
new
SearchSourceBuilder
();
// 构建查询条件
searchSourceBuilder
.
query
(
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
termQuery
(
"EQU_CATEGORY_CODE"
,
"2300"
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"ORG_BRANCH_CODE"
,
orgCode
))
);
TermsAggregationBuilder
aggregation
=
AggregationBuilders
.
terms
(
"ORG_BRANCH_CODE"
).
field
(
"ORG_BRANCH_CODE.keyword"
).
size
(
10
);
searchSourceBuilder
.
aggregation
(
aggregation
);
searchRequest
.
source
(
searchSourceBuilder
);
// 执行搜索并获取响应
SearchResponse
searchResponse
=
restHighLevelClient
.
search
(
searchRequest
,
RequestOptions
.
DEFAULT
);
// 处理聚合结果
// 这里只是打印出聚合的名称和桶的数量,你需要根据自己的需求来处理这些数据
Terms
terms
=
searchResponse
.
getAggregations
().
get
(
"ORG_BRANCH_CODE"
);
if
(!
ObjectUtils
.
isEmpty
(
terms
.
getBuckets
()))
{
if
(
terms
.
getBuckets
().
get
(
0
).
getDocCount
()
>
maxValue
)
{
maxValue
=
terms
.
getBuckets
().
get
(
0
).
getDocCount
();
}
qiping
.
add
(
terms
.
getBuckets
().
get
(
0
).
getDocCount
()
+
""
);
}
else
{
qiping
.
add
(
"0"
);
}
}
if
(
maxValue
>
100000
)
{
for
(
int
i
=
0
;
i
<
qiping
.
size
();
i
++)
{
qiping
.
set
(
i
,
String
.
format
(
"%.4f"
,
Long
.
parseLong
(
qiping
.
get
(
i
))
/
10000.0000
)
+
""
);
}
}
List
<
String
>
orgCodes
=
companyList
.
stream
().
map
(
c
->
c
.
getOrgCode
()).
collect
(
Collectors
.
toList
());
List
<
Map
<
String
,
Object
>>
qizhanMap
=
cylinderAreaDataMapper
.
getQiZhanStatisticsDataByCity
(
orgCodes
);
Map
<
Object
,
Object
>
collect
=
qizhanMap
.
stream
().
collect
(
Collectors
.
toMap
(
m
->
((
Map
)
m
).
get
(
"orgCode"
),
m
->
((
Map
)
m
).
get
(
"unitCount"
)));
for
(
CompanyModel
comapany
:
companyList
)
{
String
orgCode
=
comapany
.
getOrgCode
();
if
(
collect
.
containsKey
(
orgCode
))
{
qizhan
.
add
(
collect
.
get
(
orgCode
).
toString
());
}
else
{
qizhan
.
add
(
"0"
);
}
}
Map
<
String
,
Object
>
qiLegend
=
new
HashMap
<>();
if
(
maxValue
>
100000
)
{
qiLegend
.
put
(
"value"
,
"气瓶数量(万)"
);
qiLegend
.
put
(
"dataKey"
,
"qiping"
);
}
else
{
qiLegend
.
put
(
"value"
,
"气瓶数量"
);
qiLegend
.
put
(
"dataKey"
,
"qiping"
);
}
Map
<
String
,
Object
>
zhanLegend
=
new
HashMap
<>();
zhanLegend
.
put
(
"value"
,
"气站数量"
);
zhanLegend
.
put
(
"dataKey"
,
"qizhan"
);
public
Map
<
String
,
Object
>
getCylinderStatisticsDataByCity
(
DPFilterParamDto
dpFilterParamDto
)
throws
Exception
{
String
regionCode
=
dpFilterParamDto
.
getCityCode
();
List
<
RegionModel
>
regionList
=
stCommonService
.
setRegionIfRootParent
(
regionCode
);
List
<
Map
<
String
,
Object
>>
legendData
=
new
ArrayList
<>();
List
<
String
>
xdata
=
this
.
buildXData
(
regionList
);
List
<
Long
>
qiping
=
getYDataForQP
(
regionCode
,
regionList
);
List
<
Long
>
qizhan
=
getYDataForQZ
(
regionCode
,
regionList
);
Map
<
String
,
Object
>
qiLegend
=
getQZLegend
(
"气瓶数量"
,
"qiping"
);
Map
<
String
,
Object
>
zhanLegend
=
getQZLegend
(
"气站数量"
,
"qizhan"
);
legendData
.
add
(
qiLegend
);
legendData
.
add
(
qiLegend
);
legendData
.
add
(
zhanLegend
);
legendData
.
add
(
zhanLegend
);
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
result
.
put
(
"qizhan"
,
qizhan
);
result
.
put
(
"qizhan"
,
qizhan
);
result
.
put
(
"qiping"
,
qiping
);
result
.
put
(
"qiping"
,
qiping
);
...
@@ -197,123 +141,103 @@ public class CylinderDPStatisticsServiceImpl {
...
@@ -197,123 +141,103 @@ public class CylinderDPStatisticsServiceImpl {
return
result
;
return
result
;
}
}
private
List
<
RegionModel
>
setRegionIfRootParent
(
String
regionCode
)
throws
Exception
{
private
Map
<
String
,
Object
>
getQZLegend
(
String
label
,
String
key
)
{
List
<
RegionModel
>
regionList
=
Systemctl
.
regionClient
.
queryByParentRegionCode
(
Integer
.
parseInt
(
regionCode
)).
getResult
();
Map
<
String
,
Object
>
qiLegend
=
new
HashMap
<>();
// 陕西省时需要在地图返回独立的地级市:韩城、杨凌、西咸
qiLegend
.
put
(
"value"
,
label
);
if
(
regionCode
.
equals
(
TZSCommonConstant
.
SHAN_XI_REGION_CODE
))
{
qiLegend
.
put
(
"dataKey"
,
key
);
List
<
RegionModel
>
independentRegions
=
ReginStepEnum
.
enum2RegionList
(
"map"
);
return
qiLegend
;
regionList
.
addAll
(
independentRegions
);
}
return
regionList
;
}
}
p
ublic
Map
<
String
,
Object
>
getCylinderStatisticsDataByCityForTotal
(
String
regionCode
)
throws
IOException
{
p
rivate
List
<
Long
>
getYDataForQZ
(
String
regionCode
,
List
<
RegionModel
>
regionList
)
{
// 构建搜索请求
List
<
CountDto
>
enterpriseCountList
=
regionList
.
parallelStream
().
map
(
e
->
{
CompanyModel
comapany
=
Privilege
.
companyClient
.
queryByCompanyCode
(
regionCode
).
getResult
();
CountDto
dto
=
new
CountDto
();
String
orgCode
=
comapany
.
getOrgCode
(
);
dto
.
setKeyStr
(
e
.
getRegionCode
()
+
""
);
SearchRequest
searchRequest
=
new
SearchRequest
(
"idx_biz_view_jg_all"
);
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
regionCode
);
SearchSourceBuilder
searchSourceBuilder
=
new
SearchSourceBuilder
();
if
(
StringUtils
.
isNotEmpty
(
orgCode
))
{
long
qiping
=
0
;
Long
enterpriseNum
=
cylinderStatisticsMapper
.
countEnterpriseNumForCylinder
(
orgCode
)
;
// 构建查询条件
dto
.
setLongValue
(
enterpriseNum
);
searchSourceBuilder
.
query
(
}
else
{
QueryBuilders
.
boolQuery
()
dto
.
setLongValue
(
0L
);
.
must
(
QueryBuilders
.
termQuery
(
"EQU_CATEGORY_CODE"
,
"2300"
))
}
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"ORG_BRANCH_CODE"
,
orgCode
))
return
dto
;
);
}).
collect
(
Collectors
.
toList
()
);
return
regionList
.
stream
().
map
(
r
->
enterpriseCountList
.
stream
().
filter
(
e
->
e
.
getKeyStr
().
equals
(
r
.
getRegionCode
()
+
""
)).
mapToLong
(
CountDto:
:
getLongValue
).
sum
()).
collect
(
Collectors
.
toList
());
TermsAggregationBuilder
aggregation
=
AggregationBuilders
.
terms
(
"ORG_BRANCH_CODE"
).
field
(
"ORG_BRANCH_CODE.keyword"
).
size
(
10
);
// 注意:.keyword后缀可能根据你的字段映射而有所不同
}
searchSourceBuilder
.
aggregation
(
aggregation
);
private
List
<
Long
>
getYDataForQP
(
String
regionCode
,
List
<
RegionModel
>
regionList
)
{
searchRequest
.
source
(
searchSourceBuilder
);
List
<
Long
>
qiping
=
new
ArrayList
<>();
regionList
.
forEach
(
r
->
{
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
regionCode
);
if
(
StringUtils
.
isNotEmpty
(
orgCode
))
{
Long
num
=
this
.
countForCylinderNum
(
orgCode
);
qiping
.
add
(
num
);
}
else
{
qiping
.
add
(
0L
);
}
});
return
qiping
;
}
// 执行搜索并获取响应
private
Long
countForCylinderNum
(
String
orgCode
)
{
SearchResponse
searchResponse
=
restHighLevelClient
.
search
(
searchRequest
,
RequestOptions
.
DEFAULT
);
long
num
=
0
;
// 处理聚合结果
CountRequest
request
=
new
CountRequest
();
// 这里只是打印出聚合的名称和桶的数量,你需要根据自己的需求来处理这些数据
request
.
indices
(
"idx_biz_view_jg_all"
);
Terms
terms
=
searchResponse
.
getAggregations
().
get
(
"ORG_BRANCH_CODE"
);
BoolQueryBuilder
boolMust
=
QueryBuilders
.
boolQuery
();
if
(!
ObjectUtils
.
isEmpty
(
terms
.
getBuckets
()))
{
// 按照管辖机构区域信息模糊查询
qiping
=
terms
.
getBuckets
().
get
(
0
).
getDocCount
();
boolMust
.
must
(
QueryBuilders
.
termQuery
(
"EQU_CATEGORY_CODE"
,
"2300"
));
}
else
{
boolMust
.
must
(
QueryBuilders
.
wildcardQuery
(
"ORG_BRANCH_CODE.keyword"
,
QueryParser
.
escape
(
orgCode
)
+
"*"
));
qiping
=
0
;
// 且在用状态设备
boolMust
.
must
(
QueryBuilders
.
termQuery
(
"EQU_STATE"
,
EquimentEnum
.
ZAIYONG
.
getCode
()));
request
.
query
(
boolMust
);
try
{
CountResponse
response
=
restHighLevelClient
.
count
(
request
,
RequestOptions
.
DEFAULT
);
num
=
response
.
getCount
();
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
return
num
;
}
List
<
String
>
orgCodes
=
new
ArrayList
<>();
private
List
<
String
>
buildXData
(
List
<
RegionModel
>
regionList
)
{
orgCodes
.
add
(
orgCode
);
return
regionList
.
stream
().
map
(
RegionModel:
:
getRegionName
).
collect
(
Collectors
.
toList
());
List
<
Map
<
String
,
Object
>>
qizhanMap
=
cylinderAreaDataMapper
.
getQiZhanStatisticsDataByCity
(
orgCodes
);
}
String
unitNumber
=
"0"
;
if
(!
ObjectUtils
.
isEmpty
(
qizhanMap
))
{
unitNumber
=
qizhanMap
.
get
(
0
).
get
(
"unitCount"
).
toString
();
}
public
Map
<
String
,
Object
>
getCylinderStatisticsDataByCityForTotal
(
DPFilterParamDto
dpFilterParamDto
)
{
String
regionCode
=
dpFilterParamDto
.
getCityCode
();
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
regionCode
);
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
result
.
put
(
"cylindersCount"
,
qiping
);
if
(
StringUtils
.
isNotEmpty
(
orgCode
))
{
result
.
put
(
"stationCount"
,
unitNumber
);
result
.
put
(
"cylindersCount"
,
this
.
countForCylinderNum
(
orgCode
));
result
.
put
(
"operatorCount"
,
cylinderAreaDataMapper
.
getOpertorStatisticsDataByCity
(
orgCodes
));
result
.
put
(
"stationCount"
,
cylinderStatisticsMapper
.
countEnterpriseNumForCylinder
(
orgCode
));
result
.
put
(
"operatorCount"
,
cylinderAreaDataMapper
.
getOpertorStatisticsDataByCity
(
Collections
.
singletonList
(
orgCode
)));
}
else
{
this
.
setDefaultValueIfNoData
(
result
,
"stationCount"
,
"cylindersCount"
,
"operatorCount"
);
}
return
result
;
return
result
;
}
}
public
List
<
Map
<
String
,
Object
>>
getCylinderStatisticsDataByCityForMap
(
String
regionCode
)
throws
Exception
{
public
List
<
Map
<
String
,
Object
>>
getCylinderStatisticsDataByCityForMap
(
DPFilterParamDto
dpFilterParamDto
)
throws
Exception
{
// 构建搜索请求
List
<
RegionModel
>
regionList
=
stCommonService
.
setRegionIfRootParent
(
dpFilterParamDto
.
getCityCode
());
List
<
RegionModel
>
regionList
=
this
.
setRegionIfRootParent
(
regionCode
);
return
regionList
.
parallelStream
().
map
(
r
->
{
List
<
String
>
companyCode
=
regionList
.
stream
().
map
(
r
->
r
.
getRegionCode
().
toString
()).
collect
(
Collectors
.
toList
());
String
orgCode
=
stCommonService
.
getAndSetOrgCode
(
r
.
getRegionCode
()
+
""
);
List
<
CompanyModel
>
companyList
=
Privilege
.
companyClient
.
queryListByCompanyCode
(
String
.
join
(
","
,
companyCode
)).
getResult
();
Map
<
String
,
Object
>
item
=
new
HashMap
<>();
Map
<
String
,
RegionModel
>
regionMap
=
regionList
.
stream
().
collect
(
Collectors
.
toMap
(
r
->
r
.
getRegionCode
().
toString
(),
r
->
r
));
item
.
put
(
"regionCode"
,
r
.
getRegionCode
());
List
<
Map
<
String
,
Object
>>
list
=
new
ArrayList
<>();
item
.
put
(
"regionName"
,
r
.
getRegionName
());
if
(
ObjectUtils
.
isEmpty
(
companyList
))
{
if
(
StringUtils
.
isNotEmpty
(
orgCode
))
{
return
new
ArrayList
<>();
item
.
put
(
"stationCount"
,
cylinderStatisticsMapper
.
countEnterpriseNumForCylinder
(
orgCode
));
}
item
.
put
(
"cylindersCount"
,
this
.
countForCylinderNum
(
orgCode
));
List
<
String
>
orgCodes
=
companyList
.
stream
().
map
(
CompanyModel:
:
getOrgCode
).
collect
(
Collectors
.
toList
());
item
.
put
(
"operatorCount"
,
cylinderAreaDataMapper
.
getOpertorStatisticsDataByCity
(
Collections
.
singletonList
(
orgCode
)));
List
<
Map
<
String
,
Object
>>
qizhanMap
=
cylinderAreaDataMapper
.
getQiZhanStatisticsDataByCity
(
orgCodes
);
Map
<
Object
,
Object
>
collect
=
qizhanMap
.
stream
().
collect
(
Collectors
.
toMap
(
m
->
((
Map
)
m
).
get
(
"orgCode"
),
m
->
((
Map
)
m
).
get
(
"unitCount"
)));
for
(
CompanyModel
company
:
companyList
)
{
String
orgCode
=
company
.
getOrgCode
();
SearchRequest
searchRequest
=
new
SearchRequest
(
"idx_biz_view_jg_all"
);
SearchSourceBuilder
searchSourceBuilder
=
new
SearchSourceBuilder
();
long
qiping
=
0
;
// 构建查询条件
searchSourceBuilder
.
query
(
QueryBuilders
.
boolQuery
()
.
must
(
QueryBuilders
.
termQuery
(
"EQU_CATEGORY_CODE"
,
"2300"
))
.
must
(
QueryBuilders
.
matchPhraseQuery
(
"ORG_BRANCH_CODE"
,
orgCode
))
);
TermsAggregationBuilder
aggregation
=
AggregationBuilders
.
terms
(
"ORG_BRANCH_CODE"
).
field
(
"ORG_BRANCH_CODE.keyword"
).
size
(
10
);
searchSourceBuilder
.
aggregation
(
aggregation
);
searchRequest
.
source
(
searchSourceBuilder
);
// 执行搜索并获取响应
SearchResponse
searchResponse
=
restHighLevelClient
.
search
(
searchRequest
,
RequestOptions
.
DEFAULT
);
// 处理聚合结果
// 这里只是打印出聚合的名称和桶的数量,你需要根据自己的需求来处理这些数据
Terms
terms
=
searchResponse
.
getAggregations
().
get
(
"ORG_BRANCH_CODE"
);
if
(!
ObjectUtils
.
isEmpty
(
terms
.
getBuckets
()))
{
qiping
=
terms
.
getBuckets
().
get
(
0
).
getDocCount
();
}
else
{
}
else
{
qiping
=
0
;
this
.
setDefaultValueIfNoData
(
item
,
"stationCount"
,
"cylindersCount"
,
"operatorCount"
)
;
}
}
return
item
;
}).
collect
(
Collectors
.
toList
());
}
String
unitNumber
=
"0"
;
private
void
setDefaultValueIfNoData
(
Map
<
String
,
Object
>
item
,
String
...
fields
)
{
if
(!
ObjectUtils
.
isEmpty
(
collect
)
&&
collect
.
containsKey
(
"orgCode"
))
{
for
(
String
field
:
fields
)
{
unitNumber
=
collect
.
get
(
"orgCode"
).
toString
();
item
.
put
(
field
,
0L
);
}
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
RegionModel
region
=
regionMap
.
get
(
company
.
getCompanyCode
());
result
.
put
(
"regionAddress"
,
company
.
getAddress
());
result
.
put
(
"regionCode"
,
company
.
getCompanyCode
());
result
.
put
(
"regionName"
,
region
.
getRegionName
());
result
.
put
(
"longitude"
,
company
.
getLongitude
());
result
.
put
(
"latitude"
,
company
.
getLatitude
());
result
.
put
(
"stationCount"
,
unitNumber
);
result
.
put
(
"cylindersCount"
,
qiping
);
result
.
put
(
"operatorCount"
,
0
);
list
.
add
(
result
);
}
}
return
list
;
}
}
public
List
<
CylinderFillingRecordStatisticsDto
>
fillingTimesAndQuantity
(
String
reginCode
)
{
public
List
<
CylinderFillingRecordStatisticsDto
>
fillingTimesAndQuantity
(
String
reginCode
)
{
...
...
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/StCommonServiceImpl.java
View file @
0dba56c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
statistcs
.
biz
.
service
.
impl
;
package
com
.
yeejoin
.
amos
.
boot
.
module
.
statistcs
.
biz
.
service
.
impl
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.module.common.api.constant.TZSCommonConstant
;
import
com.yeejoin.amos.boot.module.common.api.enums.ReginStepEnum
;
import
com.yeejoin.amos.boot.module.statistics.api.mapper.CommonBaseMapper
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.RegionModel
;
import
com.yeejoin.amos.feign.systemctl.model.RegionModel
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.*
;
import
java.util.*
;
import
java.util.concurrent.ConcurrentHashMap
;
/**
/**
* @author Administrator
* @author Administrator
...
@@ -13,9 +17,16 @@ import java.util.*;
...
@@ -13,9 +17,16 @@ import java.util.*;
@Service
@Service
public
class
StCommonServiceImpl
{
public
class
StCommonServiceImpl
{
private
CommonBaseMapper
commonMapper
;
private
static
Map
<
String
,
String
>
regionCodeOrgCodeMap
=
new
ConcurrentHashMap
<>();
private
static
List
<
RegionModel
>
regionModels
=
new
ArrayList
<>();
private
static
List
<
RegionModel
>
regionModels
=
new
ArrayList
<>();
public
StCommonServiceImpl
(
CommonBaseMapper
commonMapper
)
{
this
.
commonMapper
=
commonMapper
;
}
public
void
init
()
{
public
void
init
()
{
initReginCode
();
initReginCode
();
}
}
...
@@ -37,6 +48,17 @@ public class StCommonServiceImpl {
...
@@ -37,6 +48,17 @@ public class StCommonServiceImpl {
}
}
}
}
public
String
getAndSetOrgCode
(
String
cityCode
)
{
String
orgCode
=
regionCodeOrgCodeMap
.
get
(
cityCode
);
if
(
orgCode
==
null
)
{
orgCode
=
commonMapper
.
getOrgCodeByCompanyCode
(
cityCode
);
if
(
orgCode
!=
null
)
{
regionCodeOrgCodeMap
.
put
(
cityCode
,
orgCode
);
}
}
return
orgCode
;
}
public
List
<
RegionModel
>
getUserRegionCode
(
ReginParams
selectedOrgInfo
)
{
public
List
<
RegionModel
>
getUserRegionCode
(
ReginParams
selectedOrgInfo
)
{
String
regionCode
=
selectedOrgInfo
.
getCompany
().
getCompanyCode
();
String
regionCode
=
selectedOrgInfo
.
getCompany
().
getCompanyCode
();
Optional
<
RegionModel
>
op
=
regionModels
.
stream
().
filter
(
e
->
e
.
getRegionCode
().
toString
().
equals
(
regionCode
)).
findFirst
();
Optional
<
RegionModel
>
op
=
regionModels
.
stream
().
filter
(
e
->
e
.
getRegionCode
().
toString
().
equals
(
regionCode
)).
findFirst
();
...
@@ -46,4 +68,14 @@ public class StCommonServiceImpl {
...
@@ -46,4 +68,14 @@ public class StCommonServiceImpl {
result
.
setRegionCode
(
Integer
.
parseInt
(
regionCode
));
result
.
setRegionCode
(
Integer
.
parseInt
(
regionCode
));
return
Collections
.
singletonList
(
result
);
return
Collections
.
singletonList
(
result
);
}
}
public
List
<
RegionModel
>
setRegionIfRootParent
(
String
regionCode
)
throws
Exception
{
List
<
RegionModel
>
regionList
=
Systemctl
.
regionClient
.
queryByParentRegionCode
(
Integer
.
parseInt
(
regionCode
)).
getResult
();
// 陕西省时需要在地图返回独立的地级市:韩城、杨凌、西咸
if
(
regionCode
.
equals
(
TZSCommonConstant
.
SHAN_XI_REGION_CODE
))
{
List
<
RegionModel
>
independentRegions
=
ReginStepEnum
.
enum2RegionList
(
"map"
);
regionList
.
addAll
(
independentRegions
);
}
return
regionList
;
}
}
}
amos-boot-system-tzs/amos-boot-module-ymt/amos-boot-module-ymt-api/src/main/resources/mapper/CylinderAreaDataMapper.xml
View file @
0dba56c9
...
@@ -151,7 +151,7 @@
...
@@ -151,7 +151,7 @@
WHERE
WHERE
u.data_sources = '陕西省内企业'
u.data_sources = '陕西省内企业'
AND u.unit_type LIKE'%充装单位%'
AND u.unit_type LIKE'%充装单位%'
AND ui.post like '%
"6552"
%'
AND ui.post like '%
6552
%'
<if
test=
"orgCodes != null and orgCodes.size > 0"
>
<if
test=
"orgCodes != null and orgCodes.size > 0"
>
AND
AND
<foreach
collection=
"orgCodes"
open=
"("
item=
"orgCode"
close=
")"
separator=
" or "
>
<foreach
collection=
"orgCodes"
open=
"("
item=
"orgCode"
close=
")"
separator=
" or "
>
...
...
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