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
b3261d75
Commit
b3261d75
authored
Oct 30, 2023
by
lisong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
监管统计导出接口
parent
3fa49ad7
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
101 additions
and
12 deletions
+101
-12
TzsTwoStaffingExportVo.java
...n/amos/boot/module/tcm/api/vo/TzsTwoStaffingExportVo.java
+48
-0
TzsTwoStaffingController.java
...t/module/tcm/biz/controller/TzsTwoStaffingController.java
+28
-3
TzsTwoStaffingServiceImpl.java
...odule/tcm/biz/service/impl/TzsTwoStaffingServiceImpl.java
+25
-9
No files found.
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/vo/TzsTwoStaffingExportVo.java
0 → 100644
View file @
b3261d75
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
vo
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
lombok.Data
;
@Data
public
class
TzsTwoStaffingExportVo
{
/**
* 监管单位名称
*/
@ColumnWidth
(
30
)
@ExcelProperty
(
value
=
"监管单位名称"
,
index
=
0
)
private
String
supervisoryUnitName
;
/**
* 单位数
*/
@ExcelProperty
(
value
=
"单位数"
,
index
=
1
)
private
Integer
numberOfUnits
;
/**
* 已完成单位数
*/
@ExcelProperty
(
value
=
"已完成单位数"
,
index
=
2
)
private
Integer
numberOfCompletedUnits
;
/**
* 完成比例
*/
@ExcelProperty
(
value
=
"完成比例"
,
index
=
3
)
private
String
completionRatio
;
/**
* 已配备主要负责人单位数
*/
@ExcelProperty
(
value
=
"已配备主要负责人单位数"
,
index
=
4
)
private
Integer
responsibleUnitsAllocateNumber
;
/**
* 占比
*/
@ExcelProperty
(
value
=
"占比"
,
index
=
5
)
private
String
proportion
;
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-biz/src/main/java/com/yeejoin/amos/boot/module/tcm/biz/controller/TzsTwoStaffingController.java
View file @
b3261d75
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
biz
.
controller
;
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
biz
.
controller
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.biz.common.excel.ExcelUtil
;
import
com.yeejoin.amos.boot.biz.common.excel.ExcelUtil
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.TzsEquipListDto
;
import
com.yeejoin.amos.boot.biz.common.excel.ExcelUtil
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.TzsTwoStaffingCompanyDto
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.TzsTwoStaffingCompanyDto
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.module.tcm.api.entity.TzsTwoStaffing
;
import
com.yeejoin.amos.boot.module.tcm.api.service.ITzsTwoStaffingService
;
import
com.yeejoin.amos.boot.module.tcm.api.service.ITzsTwoStaffingService
;
import
com.yeejoin.amos.boot.module.tcm.api.vo.TzsTwoStaffingExportVo
;
import
com.yeejoin.amos.boot.module.tcm.biz.service.impl.TzsUserInfoServiceImpl
;
import
com.yeejoin.amos.boot.module.tcm.biz.service.impl.TzsUserInfoServiceImpl
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
...
@@ -74,12 +79,32 @@ public class TzsTwoStaffingController extends BaseController {
...
@@ -74,12 +79,32 @@ public class TzsTwoStaffingController extends BaseController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/getStatisticsMessage"
)
@GetMapping
(
value
=
"/getStatisticsMessage"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"监管单位统计信息"
,
notes
=
"监管单位统计信息"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"监管单位统计信息"
,
notes
=
"监管单位统计信息"
)
public
ResponseModel
<
Object
>
get
GroupAndPersonInfo
(
@RequestParam
(
"sequenceNbr"
)
String
sequenceNbr
,
public
ResponseModel
<
Object
>
get
StatisticsMessage
(
@RequestParam
(
"sequenceNbr"
)
String
sequenceNbr
,
@RequestParam
(
"type"
)
String
type
)
{
@RequestParam
(
"type"
)
String
type
)
{
List
<
LinkedHashMap
>
data
=
(
List
<
LinkedHashMap
>)
redisUtils
.
get
(
REGULATOR_UNIT_TREE
);
List
<
LinkedHashMap
>
data
=
(
List
<
LinkedHashMap
>)
redisUtils
.
get
(
REGULATOR_UNIT_TREE
);
ArrayList
<
LinkedHashMap
>
result
=
new
ArrayList
<>();
ArrayList
<
LinkedHashMap
>
result
=
new
ArrayList
<>();
List
<
LinkedHashMap
>
list
=
tzsUserInfoServiceImpl
.
screenData
(
result
,
data
,
sequenceNbr
);
List
<
LinkedHashMap
>
list
=
tzsUserInfoServiceImpl
.
screenData
(
result
,
data
,
sequenceNbr
);
return
ResponseHelper
.
buildResponse
(
tzsTwoStaffingService
.
getStatisticsMessage
(
list
,
type
));
Page
<
TzsTwoStaffing
>
tzsTwoStaffingPage
=
new
Page
<>();
tzsTwoStaffingPage
.
setRecords
(
tzsTwoStaffingService
.
getStatisticsMessage
(
list
,
type
));
return
ResponseHelper
.
buildResponse
(
tzsTwoStaffingPage
);
}
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/exportData"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"监管单位统计信息导出"
,
notes
=
"监管单位统计信息导出"
)
public
void
exportData
(
HttpServletResponse
response
,
@RequestParam
(
"sequenceNbr"
)
String
sequenceNbr
,
@RequestParam
(
"type"
)
String
type
)
{
List
<
LinkedHashMap
>
data
=
(
List
<
LinkedHashMap
>)
redisUtils
.
get
(
REGULATOR_UNIT_TREE
);
ArrayList
<
LinkedHashMap
>
result
=
new
ArrayList
<>();
List
<
LinkedHashMap
>
list
=
tzsUserInfoServiceImpl
.
screenData
(
result
,
data
,
sequenceNbr
);
List
<
TzsTwoStaffing
>
statisticsMessage
=
tzsTwoStaffingService
.
getStatisticsMessage
(
list
,
type
);
ArrayList
<
TzsTwoStaffingExportVo
>
exportVos
=
new
ArrayList
<>();
for
(
TzsTwoStaffing
tzsTwoStaffing
:
statisticsMessage
)
{
TzsTwoStaffingExportVo
vo
=
new
TzsTwoStaffingExportVo
();
BeanUtil
.
copyProperties
(
tzsTwoStaffing
,
vo
);
exportVos
.
add
(
vo
);
}
ExcelUtil
.
createTemplate
(
response
,
"监管单位统计信息"
,
type
,
exportVos
,
TzsTwoStaffingExportVo
.
class
,
null
,
false
);
}
}
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-biz/src/main/java/com/yeejoin/amos/boot/module/tcm/biz/service/impl/TzsTwoStaffingServiceImpl.java
View file @
b3261d75
...
@@ -14,6 +14,8 @@ import org.springframework.stereotype.Service;
...
@@ -14,6 +14,8 @@ import org.springframework.stereotype.Service;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
java.math.BigDecimal
;
import
java.text.DecimalFormat
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.LinkedHashMap
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -50,33 +52,47 @@ public class TzsTwoStaffingServiceImpl extends BaseService<TzsTwoStaffingDto, Tz
...
@@ -50,33 +52,47 @@ public class TzsTwoStaffingServiceImpl extends BaseService<TzsTwoStaffingDto, Tz
public
List
<
TzsTwoStaffing
>
getStatisticsMessage
(
List
<
LinkedHashMap
>
list
,
String
type
)
{
public
List
<
TzsTwoStaffing
>
getStatisticsMessage
(
List
<
LinkedHashMap
>
list
,
String
type
)
{
String
orgCode
=
null
;
String
orgCode
=
null
;
String
nextLevel
=
null
;
String
nextLevel
=
null
;
SupervisoryEnum
enumByLevel
=
null
;
if
(!
ObjectUtils
.
isEmpty
(
list
)
&&
!
ObjectUtils
.
isEmpty
(
list
.
get
(
0
)))
{
if
(!
ObjectUtils
.
isEmpty
(
list
)
&&
!
ObjectUtils
.
isEmpty
(
list
.
get
(
0
)))
{
orgCode
=
String
.
valueOf
(
list
.
get
(
0
).
get
(
"orgCode"
));
orgCode
=
String
.
valueOf
(
list
.
get
(
0
).
get
(
"orgCode"
));
SupervisoryEnum
enumByLevel
=
SupervisoryEnum
.
getEnumByLevel
(
String
.
valueOf
(
list
.
get
(
0
).
get
(
"level"
)));
enumByLevel
=
SupervisoryEnum
.
getEnumByLevel
(
String
.
valueOf
(
list
.
get
(
0
).
get
(
"level"
)));
nextLevel
=
!
ObjectUtils
.
isEmpty
(
enumByLevel
)
?
enumByLevel
.
getNextLevel
()
:
null
;
nextLevel
=
!
ObjectUtils
.
isEmpty
(
enumByLevel
)
?
enumByLevel
.
getNextLevel
()
:
null
;
}
}
DecimalFormat
decimalFormat
=
new
DecimalFormat
(
"0.00"
);
if
(!
ObjectUtils
.
isEmpty
(
orgCode
))
{
if
(!
ObjectUtils
.
isEmpty
(
orgCode
))
{
if
(
"50*56"
.
equals
(
orgCode
)){
nextLevel
=
"organization"
;
}
List
<
TzsTwoStaffing
>
listByOrgCode
=
this
.
getBaseMapper
().
getListByOrgCode
(
orgCode
,
type
,
nextLevel
);
List
<
TzsTwoStaffing
>
listByOrgCode
=
this
.
getBaseMapper
().
getListByOrgCode
(
orgCode
,
type
,
nextLevel
);
if
(
ObjectUtils
.
isEmpty
(
listByOrgCode
)){
listByOrgCode
=
this
.
getBaseMapper
().
getListByOrgCode
(
orgCode
,
type
,
enumByLevel
.
getLevel
());
}
TzsTwoStaffing
tzsTwoStaffing
=
new
TzsTwoStaffing
();
TzsTwoStaffing
tzsTwoStaffing
=
new
TzsTwoStaffing
();
tzsTwoStaffing
.
setSupervisoryUnitName
(
"汇总"
);
tzsTwoStaffing
.
setSupervisoryUnitName
(
"汇总"
);
listByOrgCode
.
stream
().
forEach
(
item
->
{
listByOrgCode
.
forEach
(
item
->
{
tzsTwoStaffing
.
setNumberOfUnits
(!
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfUnits
())
?
tzsTwoStaffing
.
getNumberOfUnits
()
:
0
);
tzsTwoStaffing
.
setNumberOfUnits
(!
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfUnits
())
?
+
tzsTwoStaffing
.
getNumberOfUnits
()
+
item
.
getNumberOfUnits
()
:
item
.
getNumberOfUnits
()
);
tzsTwoStaffing
.
setNumberOfCompletedUnits
(
item
.
getNumberOfCompletedUnits
()
+
(!
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfCompletedUnits
())
?
tzsTwoStaffing
.
getNumberOfCompletedUnits
()
:
0
));
tzsTwoStaffing
.
setNumberOfCompletedUnits
(
!
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfCompletedUnits
())
?
tzsTwoStaffing
.
getNumberOfCompletedUnits
()
+
item
.
getNumberOfCompletedUnits
()
:
item
.
getNumberOfCompletedUnits
(
));
tzsTwoStaffing
.
setResponsibleUnitsAllocateNumber
(
item
.
getResponsibleUnitsAllocateNumber
()
+
(!
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getResponsibleUnitsAllocateNumber
())
?
tzsTwoStaffing
.
getResponsibleUnitsAllocateNumber
()
:
0
));
tzsTwoStaffing
.
setResponsibleUnitsAllocateNumber
(
!
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getResponsibleUnitsAllocateNumber
())
?
tzsTwoStaffing
.
getResponsibleUnitsAllocateNumber
()
+
item
.
getResponsibleUnitsAllocateNumber
()
:
item
.
getResponsibleUnitsAllocateNumber
(
));
});
});
if
(
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfCompletedUnits
())
||
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfUnits
())
||
tzsTwoStaffing
.
getNumberOfUnits
()
==
0
||
tzsTwoStaffing
.
getNumberOfCompletedUnits
()
==
0
)
{
if
(
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfCompletedUnits
())
||
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfUnits
())
||
tzsTwoStaffing
.
getNumberOfUnits
()
==
0
||
tzsTwoStaffing
.
getNumberOfCompletedUnits
()
==
0
)
{
tzsTwoStaffing
.
setCompletionRatio
(
"0"
);
tzsTwoStaffing
.
setCompletionRatio
(
"0
%
"
);
}
else
{
}
else
{
tzsTwoStaffing
.
setCompletionRatio
(
String
.
valueOf
(
tzsTwoStaffing
.
getNumberOfCompletedUnits
()
/
tzsTwoStaffing
.
getNumberOfUnits
()));
BigDecimal
bigDecimal
=
new
BigDecimal
(
tzsTwoStaffing
.
getNumberOfCompletedUnits
().
toString
());
BigDecimal
bigDecimal1
=
new
BigDecimal
(
tzsTwoStaffing
.
getNumberOfUnits
().
toString
());
BigDecimal
divide
=
bigDecimal
.
divide
(
bigDecimal1
,
4
,
BigDecimal
.
ROUND_HALF_UP
).
multiply
(
new
BigDecimal
(
"100"
));
tzsTwoStaffing
.
setCompletionRatio
(
decimalFormat
.
format
(
divide
)
+
"%"
);
}
}
if
(
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getResponsiblePersonsNumber
())
||
tzsTwoStaffing
.
getResponsiblePersonsNumber
()
==
0
if
(
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getResponsiblePersonsNumber
())
||
tzsTwoStaffing
.
getResponsiblePersonsNumber
()
==
0
||
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfUnits
())
||
tzsTwoStaffing
.
getNumberOfUnits
()
==
0
)
{
||
ObjectUtils
.
isEmpty
(
tzsTwoStaffing
.
getNumberOfUnits
())
||
tzsTwoStaffing
.
getNumberOfUnits
()
==
0
)
{
tzsTwoStaffing
.
setProportion
(
"0"
);
tzsTwoStaffing
.
setProportion
(
"0
%
"
);
}
else
{
}
else
{
tzsTwoStaffing
.
setProportion
(
String
.
valueOf
(
tzsTwoStaffing
.
getResponsiblePersonsNumber
()
/
tzsTwoStaffing
.
getNumberOfUnits
()));
BigDecimal
bigDecimal
=
new
BigDecimal
(
tzsTwoStaffing
.
getResponsiblePersonsNumber
().
toString
());
BigDecimal
bigDecimal1
=
new
BigDecimal
(
tzsTwoStaffing
.
getNumberOfUnits
().
toString
());
BigDecimal
divide
=
bigDecimal
.
divide
(
bigDecimal1
,
4
,
BigDecimal
.
ROUND_HALF_UP
).
multiply
(
new
BigDecimal
(
"100"
));
tzsTwoStaffing
.
setProportion
(
decimalFormat
.
format
(
divide
)
+
"%"
);
}
}
listByOrgCode
.
add
(
tzsTwoStaffing
);
listByOrgCode
.
add
(
tzsTwoStaffing
);
...
...
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