Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
T
tianjin-cement
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
竹天卫
tianjin-cement
Commits
9c1bd401
Commit
9c1bd401
authored
4 years ago
by
竹天卫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
委托管理 校核计算功能 完成到Mad 检测项
parent
0ada32d0
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
179 additions
and
31 deletions
+179
-31
EntrustController.java
...wise/sc/cement/business/controller/EntrustController.java
+0
-2
CommonServiceImpl.java
...se/sc/cement/business/service/impl/CommonServiceImpl.java
+68
-15
CheckCountUtil.java
.../java/cn/wise/sc/cement/business/util/CheckCountUtil.java
+111
-14
No files found.
cement-business/src/main/java/cn/wise/sc/cement/business/controller/EntrustController.java
View file @
9c1bd401
...
...
@@ -348,8 +348,6 @@ public class EntrustController {
}
@ApiOperation
(
value
=
"数据校核"
)
@PostMapping
(
"/check"
)
public
BaseResponse
check
(
@RequestBody
CheckQuery
query
)
{
...
...
This diff is collapsed.
Click to expand it.
cement-business/src/main/java/cn/wise/sc/cement/business/service/impl/CommonServiceImpl.java
View file @
9c1bd401
...
...
@@ -154,31 +154,84 @@ public class CommonServiceImpl {
return
entityEnclosureList
;
}
/**
*
* @param teamGroupId 检测组id
* @param resultMap 输入集合
* @return
*/
public
Map
<
String
,
Object
>
checkCount
(
Integer
teamGroupId
,
Map
<
String
,
Object
>
resultMap
){
List
<
String
>
checkResutlList
=
teamMapper
.
getByGroup
(
teamGroupId
);
//100倍
BigDecimal
param100
=
new
BigDecimal
(
100.00
);
//定义输出集合
Map
<
String
,
Object
>
countMap
=
new
HashMap
<>();
//输出检测项第一次循环
for
(
String
name
:
checkResutlList
){
if
(
name
.
equals
(
"L.O.I"
)){
countMap
.
put
(
"L.O.I"
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"SiO2"
)){
countMap
.
put
(
"SiO2"
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"Al2O3+TiO2"
)){
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"Al2O3"
)){
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"Fe2O3"
)){
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"Cl"
)){
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"CaO"
)){
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"Mad1"
)){
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
else
if
(
name
.
equals
(
"Mad2"
)){
countMap
.
put
(
name
,
CheckCountUtil
.
checkCount
(
name
,
resultMap
));
}
}
//合量
//输出检测项第二次循环
for
(
String
name
:
checkResutlList
){
if
(
name
.
equals
(
"合量"
)){
BigDecimal
countHL
=
CheckCountUtil
.
countHL
(
countMap
);
countMap
.
put
(
"合量"
,
countHL
);
//KH
countMap
.
put
(
name
,
countHL
);
}
else
if
(
name
.
equals
(
"KH"
)){
BigDecimal
countKH
=
CheckCountUtil
.
countKH
(
countMap
);
countMap
.
put
(
"KH"
,
countKH
);
countMap
.
put
(
name
,
countKH
);
}
else
if
(
name
.
equals
(
"SM"
)){
BigDecimal
countSM
=
CheckCountUtil
.
countSM
(
countMap
);
countMap
.
put
(
name
,
countSM
);
}
else
if
(
name
.
equals
(
"AM"
)){
BigDecimal
countAM
=
CheckCountUtil
.
countAM
(
countMap
);
countMap
.
put
(
name
,
countAM
);
}
else
if
(
name
.
equals
(
"易烧性等级"
)){
String
burnupLevel
=
CheckCountUtil
.
countBurnupLevel
(
resultMap
,
countMap
);
countMap
.
put
(
name
,
burnupLevel
);
}
else
if
(
name
.
equals
(
"Mad"
)){
BigDecimal
countMad
=
CheckCountUtil
.
countMad
(
countMap
);
countMap
.
put
(
name
,
countMad
);
}
}
//输出检测项第三次循环
for
(
String
name
:
checkResutlList
){
if
(
name
.
equals
(
"MadBE"
)){
BigDecimal
countMadBE
=
CheckCountUtil
.
countMadBE
(
countMap
);
countMap
.
put
(
name
,
countMadBE
);
}
}
return
countMap
;
...
...
This diff is collapsed.
Click to expand it.
cement-business/src/main/java/cn/wise/sc/cement/business/util/CheckCountUtil.java
View file @
9c1bd401
...
...
@@ -131,8 +131,8 @@ public class CheckCountUtil {
}
}
else
if
(
name
.
equals
(
"Cl"
)){
BigDecimal
T
=
getBigDecimal
(
resultMap
.
get
(
"T"
));
BigDecimal
V2
=
getBigDecimal
(
resultMap
.
get
(
"V2
"
));
BigDecimal
V1
=
getBigDecimal
(
resultMap
.
get
(
"V1
"
));
BigDecimal
V2
=
getBigDecimal
(
resultMap
.
get
(
"V2"
));
BigDecimal
V1
=
getBigDecimal
(
resultMap
.
get
(
"V1"
));
BigDecimal
mCl
=
getBigDecimal
(
resultMap
.
get
(
"样重Cl"
));
//计算的核心公式结果
BigDecimal
countResult
=
T
.
multiply
(
V2
.
subtract
(
V1
)).
divide
(
mCl
).
divide
(
param10
);
...
...
@@ -156,7 +156,25 @@ public class CheckCountUtil {
}
else
{
endResult
=
countResult
.
subtract
(
new
BigDecimal
(
0.00000000001
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
}
}
else
if
(
name
.
equals
(
"Mad1"
)){
BigDecimal
YZ_M1
=
getBigDecimal
(
resultMap
.
get
(
"样重M1"
));
BigDecimal
MZ_M1
=
getBigDecimal
(
resultMap
.
get
(
"⽫重M1"
));
BigDecimal
SZ_M1
=
getBigDecimal
(
resultMap
.
get
(
"烧重M1"
));
//计算的核心公式结果
BigDecimal
countResult
=
YZ_M1
.
add
(
MZ_M1
).
subtract
(
SZ_M1
).
divide
(
YZ_M1
);
endResult
=
countResult
.
multiply
(
param100
);
}
else
if
(
name
.
equals
(
"Mad2"
)){
BigDecimal
YZ_M2
=
getBigDecimal
(
resultMap
.
get
(
"样重M2"
));
BigDecimal
MZ_M2
=
getBigDecimal
(
resultMap
.
get
(
"⽫重M2"
));
BigDecimal
SZ_M2
=
getBigDecimal
(
resultMap
.
get
(
"烧重M2"
));
//计算的核心公式结果
BigDecimal
countResult
=
YZ_M2
.
add
(
MZ_M2
).
subtract
(
SZ_M2
).
divide
(
YZ_M2
);
endResult
=
countResult
.
multiply
(
param100
);
}
return
endResult
;
}
...
...
@@ -200,6 +218,92 @@ public class CheckCountUtil {
return
KH
;
}
/**
* 求SM SiO2/ ({Al2O3+TiO2} + Fe2O3)
* @param countMap
* @return
*/
public
static
BigDecimal
countSM
(
Map
<
String
,
Object
>
countMap
)
{
BigDecimal
SiO2
=
getBigDecimal
(
countMap
.
get
(
"SiO2"
));
BigDecimal
Al2O3_TiO2
=
getBigDecimal
(
countMap
.
get
(
"Al2O3+TiO2"
));
BigDecimal
Fe2O3
=
getBigDecimal
(
countMap
.
get
(
"Fe2O3"
));
BigDecimal
SM
=
SiO2
.
divide
(
Al2O3_TiO2
.
add
(
Fe2O3
));
return
SM
;
}
/**
* 求AM 「Al2O3+TiO2」/ Fe2O3
* @param countMap
* @return
*/
public
static
BigDecimal
countAM
(
Map
<
String
,
Object
>
countMap
)
{
BigDecimal
Al2O3_TiO2
=
getBigDecimal
(
countMap
.
get
(
"Al2O3+TiO2"
));
BigDecimal
Fe2O3
=
getBigDecimal
(
countMap
.
get
(
"Fe2O3"
));
BigDecimal
AM
=
Al2O3_TiO2
.
divide
(
Fe2O3
);
return
AM
;
}
/**
* 求易烧性等级
* A fCaO 1450 =<18.75 * “KH” - 16
* B fCaO 1450 >18.75 * “KH” - 16
* C fCaO 1450”>26.25 * “KH” - 22.15
* D fCaO 1450”>35 * “KH” - 29.3
* E fCaO 1450”>45 * “KH” - 37.4
* @param resultMap 输入集合
* @param countMap 输出集合
* @return
*/
public
static
String
countBurnupLevel
(
Map
<
String
,
Object
>
resultMap
,
Map
<
String
,
Object
>
countMap
)
{
BigDecimal
fCaO_1450
=
getBigDecimal
(
resultMap
.
get
(
"fCaO_1450"
));
BigDecimal
KH
=
getBigDecimal
(
countMap
.
get
(
"KH"
));
BigDecimal
E
=
new
BigDecimal
(
45
).
multiply
(
KH
).
subtract
(
new
BigDecimal
(
37.4
));
BigDecimal
D
=
new
BigDecimal
(
35
).
multiply
(
KH
).
subtract
(
new
BigDecimal
(
29.3
));
BigDecimal
C
=
new
BigDecimal
(
26.25
).
multiply
(
KH
).
subtract
(
new
BigDecimal
(
22.15
));
BigDecimal
B
=
new
BigDecimal
(
18.75
).
multiply
(
KH
).
subtract
(
new
BigDecimal
(
16
));
if
(
fCaO_1450
.
compareTo
(
E
)
==
1
){
return
"E"
;
}
else
if
(
fCaO_1450
.
compareTo
(
D
)
==
1
){
return
"D"
;
}
else
if
(
fCaO_1450
.
compareTo
(
C
)
==
1
){
return
"C"
;
}
else
if
(
fCaO_1450
.
compareTo
(
B
)
==
1
){
return
"B"
;
}
else
{
return
"A"
;
}
}
/**
* 求Mad (Mad1 + Mad2 )/ 2
* @param countMap
* @return
*/
public
static
BigDecimal
countMad
(
Map
<
String
,
Object
>
countMap
)
{
BigDecimal
Mad1
=
getBigDecimal
(
countMap
.
get
(
"Mad1"
));
BigDecimal
Mad2
=
getBigDecimal
(
countMap
.
get
(
"Mad2"
));
BigDecimal
Mad
=
Mad1
.
add
(
Mad2
).
divide
(
new
BigDecimal
(
2
));
return
Mad
;
}
/**
* 求Mad BE列 :Mad*100
* @param countMap
* @return
*/
public
static
BigDecimal
countMadBE
(
Map
<
String
,
Object
>
countMap
)
{
BigDecimal
Mad
=
getBigDecimal
(
countMap
.
get
(
"Mad"
));
BigDecimal
result1
=
Mad
.
multiply
(
param100
);
int
resultInt1
=
result1
.
setScale
(
0
,
BigDecimal
.
ROUND_DOWN
).
intValue
();
BigDecimal
MadBE
=
null
;
if
((
resultInt1
&
1
)
==
1
){
//如果结果为奇数
MadBE
=
Mad
.
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
}
else
{
MadBE
=
Mad
.
subtract
(
new
BigDecimal
(
0.00000000001
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
}
return
MadBE
;
}
...
...
@@ -209,22 +313,15 @@ public class CheckCountUtil {
}
//计算多个值的和
/*List<String> list=new ArrayList<>();
list.add("123.0");
list.add("12.0");
list.add("3.0");
BigDecimal count=new BigDecimal(0);
for(String s:list) {
count = count.add(new BigDecimal(s));
}
System.out.println(count);
*/
}
...
...
This diff is collapsed.
Click to expand it.
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