Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
indicators
Overview
Overview
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
zhangkb
indicators
Commits
56d360c0
Commit
56d360c0
authored
Jun 30, 2020
by
张祺
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'hy-tobacco' of
http://132.232.112.242:7090/zhangkb/indicators
into hy-tobacco
parents
41d65e17
8d43a2b2
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
411 additions
and
39 deletions
+411
-39
CompareUnitCalActor.java
...indicators/akka/actor/indicators/CompareUnitCalActor.java
+35
-1
DriveIndIdCalActor.java
.../indicators/akka/actor/indicators/DriveIndIdCalActor.java
+11
-4
DriveIndIdObjCalActor.java
...dicators/akka/actor/indicators/DriveIndIdObjCalActor.java
+60
-5
StartCompareUnitCalActor.java
...ators/akka/actor/indicators/StartCompareUnitCalActor.java
+22
-1
AfterExeConfirmMsg.java
...ndicators/akka/message/indicators/AfterExeConfirmMsg.java
+49
-0
CalIndAverageAndRankMsg.java
...tors/akka/message/indicators/CalIndAverageAndRankMsg.java
+12
-1
DriveIndIdCalMsg.java
.../indicators/akka/message/indicators/DriveIndIdCalMsg.java
+11
-1
DriveIndIdObjCalMsg.java
...dicators/akka/message/indicators/DriveIndIdObjCalMsg.java
+11
-1
FirstExeConfirmMsg.java
...ndicators/akka/message/indicators/FirstExeConfirmMsg.java
+16
-0
DriveIndCalResultCtrl.java
...obile/indicators/api/hytobacco/DriveIndCalResultCtrl.java
+48
-0
IndCatalogCtrl.java
...om/keymobile/indicators/api/hytobacco/IndCatalogCtrl.java
+1
-1
IndScorecardCtrl.java
.../keymobile/indicators/api/hytobacco/IndScorecardCtrl.java
+1
-1
IndicatorsDefCtrl.java
...keymobile/indicators/api/hytobacco/IndicatorsDefCtrl.java
+1
-18
IndicatorsRelCtrl.java
...keymobile/indicators/api/hytobacco/IndicatorsRelCtrl.java
+1
-1
IndicatorsValueCtrl.java
...ymobile/indicators/api/hytobacco/IndicatorsValueCtrl.java
+1
-1
ObjScoreRuleCtrl.java
.../keymobile/indicators/api/hytobacco/ObjScoreRuleCtrl.java
+1
-1
ShortboardRuleCtrl.java
...eymobile/indicators/api/hytobacco/ShortboardRuleCtrl.java
+1
-1
ShortboardUnitCtrl.java
...eymobile/indicators/api/hytobacco/ShortboardUnitCtrl.java
+1
-1
CompareUnitCalLog.java
...indicators/model/entity/indicators/CompareUnitCalLog.java
+39
-0
CompareUnitCalLogMapper.java
...ators/model/mapper/indmapper/CompareUnitCalLogMapper.java
+18
-0
CompareUnitCalLogService.java
...ndicators/service/hytobacco/CompareUnitCalLogService.java
+53
-0
CompareUnitCalLogMapper.xml
...ain/resources/mybatis/mapping/CompareUnitCalLogMapper.xml
+18
-0
No files found.
src/main/java/com/keymobile/indicators/akka/actor/indicators/CompareUnitCalActor.java
View file @
56d360c0
...
@@ -5,11 +5,16 @@ import java.util.Arrays;
...
@@ -5,11 +5,16 @@ import java.util.Arrays;
import
java.util.List
;
import
java.util.List
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
com.keymobile.indicators.akka.message.indicators.AfterExeConfirmMsg
;
import
com.keymobile.indicators.akka.message.indicators.CompareUnitCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.CompareUnitCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.DriveIndIdCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.DriveIndIdCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.FirstExeConfirmMsg
;
import
com.keymobile.indicators.akka.message.indicators.FirstExeConfirmMsg
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitCalLog
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitDef
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitDef
;
import
com.keymobile.indicators.service.hytobacco.CompareUnitCalLogService
;
import
com.keymobile.indicators.service.hytobacco.ScoreRuleService
;
import
com.keymobile.indicators.service.hytobacco.ScoreRuleService
;
import
com.keymobile.indicators.utils.SpringUtil
;
import
com.keymobile.indicators.utils.SpringUtil
;
...
@@ -18,9 +23,12 @@ import akka.actor.ActorRef;
...
@@ -18,9 +23,12 @@ import akka.actor.ActorRef;
import
akka.actor.Props
;
import
akka.actor.Props
;
public
class
CompareUnitCalActor
extends
AbstractActor
{
public
class
CompareUnitCalActor
extends
AbstractActor
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
CompareUnitCalActor
.
class
);
private
ScoreRuleService
scoreRuleServer
=
SpringUtil
.
getBean
(
ScoreRuleService
.
class
);
private
ScoreRuleService
scoreRuleServer
=
SpringUtil
.
getBean
(
ScoreRuleService
.
class
);
private
CompareUnitCalLogService
compareUnitCalLogService
=
SpringUtil
.
getBean
(
CompareUnitCalLogService
.
class
);
private
int
numberOfConfirm
=
0
;
//定义返回确认消息的子actor
private
int
numberOfConfirm
=
0
;
//定义返回确认消息的子actor
private
int
indIdSize
=
0
;
//对标指标个数
private
int
indIdSize
=
0
;
//对标指标个数
...
@@ -59,6 +67,13 @@ public class CompareUnitCalActor extends AbstractActor{
...
@@ -59,6 +67,13 @@ public class CompareUnitCalActor extends AbstractActor{
firstExe
=
compareUnitDef
.
getFirstExe
();
firstExe
=
compareUnitDef
.
getFirstExe
();
averageObj
=
compareUnitDef
.
getAverageObj
();
averageObj
=
compareUnitDef
.
getAverageObj
();
objScoreRuleId
=
compareUnitDef
.
getObjScoreRuleId
();
objScoreRuleId
=
compareUnitDef
.
getObjScoreRuleId
();
//新增运行日志记录
CompareUnitCalLog
compCalLog
=
new
CompareUnitCalLog
(
compareId
,
date
,
System
.
currentTimeMillis
()+
""
,
"0"
);
//保存
Integer
compCalLogId
=
compareUnitCalLogService
.
saveOrUndate
(
compCalLog
);
//获取对标对象
//获取对标对象
String
compareObjsString
=
compareUnitDef
.
getCompareObjs
();
String
compareObjsString
=
compareUnitDef
.
getCompareObjs
();
//获取对标指标
//获取对标指标
...
@@ -73,7 +88,7 @@ public class CompareUnitCalActor extends AbstractActor{
...
@@ -73,7 +88,7 @@ public class CompareUnitCalActor extends AbstractActor{
for
(
String
indId
:
indIdsList
)
{
for
(
String
indId
:
indIdsList
)
{
DriveIndIdCalMsg
driveIndIdCalMsg
=
new
DriveIndIdCalMsg
(
DriveIndIdCalMsg
driveIndIdCalMsg
=
new
DriveIndIdCalMsg
(
compareUnitDef
.
getCompareId
(),
indId
,
compareObjsList
,
compareUnitDef
.
getDate
(),
compareUnitDef
.
getCompareId
(),
indId
,
compareObjsList
,
compareUnitDef
.
getDate
(),
firstExe
,
averageObj
);
firstExe
,
averageObj
,
compCalLogId
);
//start akka
//start akka
ActorRef
driveIndIdCalActor
=
this
.
getContext
()
ActorRef
driveIndIdCalActor
=
this
.
getContext
()
.
actorOf
(
Props
.
create
(
DriveIndIdCalActor
.
class
,
.
actorOf
(
Props
.
create
(
DriveIndIdCalActor
.
class
,
...
@@ -84,8 +99,18 @@ public class CompareUnitCalActor extends AbstractActor{
...
@@ -84,8 +99,18 @@ public class CompareUnitCalActor extends AbstractActor{
})
})
.
match
(
FirstExeConfirmMsg
.
class
,
firstExeConfirmMsg
->
{
.
match
(
FirstExeConfirmMsg
.
class
,
firstExeConfirmMsg
->
{
if
(++
numberOfConfirm
>=
indIdSize
)
{
//子actor全部返回
if
(++
numberOfConfirm
>=
indIdSize
)
{
//子actor全部返回
Integer
compCalLogId
=
firstExeConfirmMsg
.
getCompCalLogId
();
CompareUnitCalLog
compCalLog
=
null
;
if
(
compCalLogId
!=
null
)
{
compCalLog
=
compareUnitCalLogService
.
findById
(
compCalLogId
);
}
//如果是先执行且没有平均分参考对象
//如果是先执行且没有平均分参考对象
if
(
"1"
.
equals
(
firstExe
)
&&
StringUtils
.
isBlank
(
averageObj
))
{
if
(
"1"
.
equals
(
firstExe
)
&&
StringUtils
.
isBlank
(
averageObj
))
{
if
(
compCalLog
!=
null
)
{
compCalLog
.
setEndTime
(
System
.
currentTimeMillis
()+
""
);
compCalLog
.
setRunStatus
(
"1"
);
compareUnitCalLogService
.
saveOrUndate
(
compCalLog
);
}
//发送确认信息给父actor
//发送确认信息给父actor
FirstExeConfirmMsg
confirmMsg
=
new
FirstExeConfirmMsg
(
1
,
""
);
FirstExeConfirmMsg
confirmMsg
=
new
FirstExeConfirmMsg
(
1
,
""
);
startCompareUnitCalActor
.
tell
(
confirmMsg
,
ActorRef
.
noSender
());
startCompareUnitCalActor
.
tell
(
confirmMsg
,
ActorRef
.
noSender
());
...
@@ -95,6 +120,15 @@ public class CompareUnitCalActor extends AbstractActor{
...
@@ -95,6 +120,15 @@ public class CompareUnitCalActor extends AbstractActor{
scoreRuleServer
.
calObjScore
(
compareId
,
indIdsList
,
compareObjsList
,
scoreRuleServer
.
calObjScore
(
compareId
,
indIdsList
,
compareObjsList
,
date
,
objScoreRuleId
);
date
,
objScoreRuleId
);
}
}
//记录日志
if
(
compCalLog
!=
null
)
{
compCalLog
.
setEndTime
(
System
.
currentTimeMillis
()+
""
);
compCalLog
.
setRunStatus
(
"1"
);
compareUnitCalLogService
.
saveOrUndate
(
compCalLog
);
}
//发送后执行的确认消息给父actor
AfterExeConfirmMsg
afterConfirmMsg
=
new
AfterExeConfirmMsg
(
1
,
""
);
startCompareUnitCalActor
.
tell
(
afterConfirmMsg
,
ActorRef
.
noSender
());
}
}
}
}
})
})
...
...
src/main/java/com/keymobile/indicators/akka/actor/indicators/DriveIndIdCalActor.java
View file @
56d360c0
...
@@ -7,6 +7,8 @@ import java.util.Map;
...
@@ -7,6 +7,8 @@ import java.util.Map;
import
java.util.Map.Entry
;
import
java.util.Map.Entry
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
com.keymobile.indicators.akka.message.indicators.CalIndAverageAndRankMsg
;
import
com.keymobile.indicators.akka.message.indicators.CalIndAverageAndRankMsg
;
import
com.keymobile.indicators.akka.message.indicators.DriveIndIdCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.DriveIndIdCalMsg
;
...
@@ -25,6 +27,7 @@ import akka.actor.ActorRef;
...
@@ -25,6 +27,7 @@ import akka.actor.ActorRef;
import
akka.actor.Props
;
import
akka.actor.Props
;
public
class
DriveIndIdCalActor
extends
AbstractActor
{
public
class
DriveIndIdCalActor
extends
AbstractActor
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
DriveIndIdCalActor
.
class
);
private
DriveIndCalResultService
driveIndCalResultService
=
SpringUtil
.
getBean
(
DriveIndCalResultService
.
class
);
private
DriveIndCalResultService
driveIndCalResultService
=
SpringUtil
.
getBean
(
DriveIndCalResultService
.
class
);
...
@@ -65,6 +68,9 @@ public class DriveIndIdCalActor extends AbstractActor{
...
@@ -65,6 +68,9 @@ public class DriveIndIdCalActor extends AbstractActor{
firstExe
=
driveIndIdCalMsg
.
getFirstExe
();
firstExe
=
driveIndIdCalMsg
.
getFirstExe
();
averageObj
=
driveIndIdCalMsg
.
getAverageObj
();
averageObj
=
driveIndIdCalMsg
.
getAverageObj
();
compareObjSize
=
compareObjs
.
size
();
compareObjSize
=
compareObjs
.
size
();
//日志记录id
Integer
compCalLogId
=
driveIndIdCalMsg
.
getCompCalLogId
();
for
(
String
compareObj
:
compareObjs
)
{
for
(
String
compareObj
:
compareObjs
)
{
List
<
DimValue
>
dimValueList
=
new
ArrayList
<>();
List
<
DimValue
>
dimValueList
=
new
ArrayList
<>();
DimValue
dimCompareObj
=
new
DimValue
(
"dim1"
,
compareObj
,
"varchar"
);
DimValue
dimCompareObj
=
new
DimValue
(
"dim1"
,
compareObj
,
"varchar"
);
...
@@ -73,7 +79,7 @@ public class DriveIndIdCalActor extends AbstractActor{
...
@@ -73,7 +79,7 @@ public class DriveIndIdCalActor extends AbstractActor{
dimValueList
.
add
(
dimDateObj
);
dimValueList
.
add
(
dimDateObj
);
DriveIndIdObjCalMsg
driveIndIdObjCalMsg
=
new
DriveIndIdObjCalMsg
(
compareId
,
DriveIndIdObjCalMsg
driveIndIdObjCalMsg
=
new
DriveIndIdObjCalMsg
(
compareId
,
indId
,
compareObj
,
date
,
dimValueList
);
indId
,
compareObj
,
date
,
dimValueList
,
compCalLogId
);
ActorRef
driveIndIdObjCalActor
=
this
.
getContext
()
ActorRef
driveIndIdObjCalActor
=
this
.
getContext
()
.
actorOf
(
Props
.
create
(
DriveIndIdObjCalActor
.
class
,
.
actorOf
(
Props
.
create
(
DriveIndIdObjCalActor
.
class
,
()->
new
DriveIndIdObjCalActor
(
getSelf
())));
()->
new
DriveIndIdObjCalActor
(
getSelf
())));
...
@@ -85,6 +91,7 @@ public class DriveIndIdCalActor extends AbstractActor{
...
@@ -85,6 +91,7 @@ public class DriveIndIdCalActor extends AbstractActor{
String
id
=
String
.
valueOf
(
calIndAverageAndRankMsg
.
getId
());
String
id
=
String
.
valueOf
(
calIndAverageAndRankMsg
.
getId
());
String
indType
=
calIndAverageAndRankMsg
.
getIndType
();
//指标类型:正向 反向
String
indType
=
calIndAverageAndRankMsg
.
getIndType
();
//指标类型:正向 反向
Integer
scoreCardId
=
calIndAverageAndRankMsg
.
getScoreCardId
();
//评分卡id
Integer
scoreCardId
=
calIndAverageAndRankMsg
.
getScoreCardId
();
//评分卡id
Integer
compCalLogId
=
calIndAverageAndRankMsg
.
getCompCalLogId
();
//记录日志id
if
(!
"-1"
.
equals
(
id
))
{
if
(!
"-1"
.
equals
(
id
))
{
valueMap
.
put
(
id
,
value
);
valueMap
.
put
(
id
,
value
);
compareObjs
.
add
(
calIndAverageAndRankMsg
.
getCompareObj
());
compareObjs
.
add
(
calIndAverageAndRankMsg
.
getCompareObj
());
...
@@ -94,7 +101,7 @@ public class DriveIndIdCalActor extends AbstractActor{
...
@@ -94,7 +101,7 @@ public class DriveIndIdCalActor extends AbstractActor{
//如果是先执行且没有平均分参考对象的,则不进行平均分和排名计算
//如果是先执行且没有平均分参考对象的,则不进行平均分和排名计算
if
(
"1"
.
equals
(
firstExe
)
&&
StringUtils
.
isBlank
(
averageObj
))
{
if
(
"1"
.
equals
(
firstExe
)
&&
StringUtils
.
isBlank
(
averageObj
))
{
//发送确认信息给父actor
//发送确认信息给父actor
FirstExeConfirmMsg
firstExeConfirmMsg
=
new
FirstExeConfirmMsg
(
1
,
""
);
FirstExeConfirmMsg
firstExeConfirmMsg
=
new
FirstExeConfirmMsg
(
1
,
""
,
compCalLogId
);
compareUnitCalActor
.
tell
(
firstExeConfirmMsg
,
ActorRef
.
noSender
());
compareUnitCalActor
.
tell
(
firstExeConfirmMsg
,
ActorRef
.
noSender
());
}
else
{
}
else
{
DriveIndCalResultDef
provinceDriveIndCalResult
=
null
;
DriveIndCalResultDef
provinceDriveIndCalResult
=
null
;
...
@@ -143,12 +150,12 @@ public class DriveIndIdCalActor extends AbstractActor{
...
@@ -143,12 +150,12 @@ public class DriveIndIdCalActor extends AbstractActor{
}
}
}
}
//发送确认信息给父actor
//发送确认信息给父actor
FirstExeConfirmMsg
firstExeConfirmMsg
=
new
FirstExeConfirmMsg
(
1
,
""
);
FirstExeConfirmMsg
firstExeConfirmMsg
=
new
FirstExeConfirmMsg
(
1
,
""
,
compCalLogId
);
compareUnitCalActor
.
tell
(
firstExeConfirmMsg
,
ActorRef
.
noSender
());
compareUnitCalActor
.
tell
(
firstExeConfirmMsg
,
ActorRef
.
noSender
());
}
}
}
else
{
}
else
{
//发送确认信息给父actor
//发送确认信息给父actor
FirstExeConfirmMsg
firstExeConfirmMsg
=
new
FirstExeConfirmMsg
(
0
,
""
);
FirstExeConfirmMsg
firstExeConfirmMsg
=
new
FirstExeConfirmMsg
(
0
,
""
,
compCalLogId
);
compareUnitCalActor
.
tell
(
firstExeConfirmMsg
,
ActorRef
.
noSender
());
compareUnitCalActor
.
tell
(
firstExeConfirmMsg
,
ActorRef
.
noSender
());
}
}
}
}
...
...
src/main/java/com/keymobile/indicators/akka/actor/indicators/DriveIndIdObjCalActor.java
View file @
56d360c0
...
@@ -18,8 +18,10 @@ import com.keymobile.indicators.akka.message.indicators.BaseIndValueMsg;
...
@@ -18,8 +18,10 @@ import com.keymobile.indicators.akka.message.indicators.BaseIndValueMsg;
import
com.keymobile.indicators.akka.message.indicators.CalIndAverageAndRankMsg
;
import
com.keymobile.indicators.akka.message.indicators.CalIndAverageAndRankMsg
;
import
com.keymobile.indicators.akka.message.indicators.DriveIndIdObjCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.DriveIndIdObjCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.GetBaseIndValueMsg
;
import
com.keymobile.indicators.akka.message.indicators.GetBaseIndValueMsg
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitCalLog
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndCalResultDef
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndCalResultDef
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndDef
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndDef
;
import
com.keymobile.indicators.service.hytobacco.CompareUnitCalLogService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndCalResultService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndCalResultService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndDefService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndDefService
;
import
com.keymobile.indicators.utils.SpringUtil
;
import
com.keymobile.indicators.utils.SpringUtil
;
...
@@ -35,6 +37,8 @@ public class DriveIndIdObjCalActor extends AbstractActor{
...
@@ -35,6 +37,8 @@ public class DriveIndIdObjCalActor extends AbstractActor{
private
DriveIndCalResultService
driveIndCalResultService
=
SpringUtil
.
getBean
(
DriveIndCalResultService
.
class
);
private
DriveIndCalResultService
driveIndCalResultService
=
SpringUtil
.
getBean
(
DriveIndCalResultService
.
class
);
private
CompareUnitCalLogService
compareUnitCalLogService
=
SpringUtil
.
getBean
(
CompareUnitCalLogService
.
class
);
private
String
compareId
;
private
String
compareId
;
private
String
compareObj
;
private
String
compareObj
;
...
@@ -62,6 +66,8 @@ public class DriveIndIdObjCalActor extends AbstractActor{
...
@@ -62,6 +66,8 @@ public class DriveIndIdObjCalActor extends AbstractActor{
//定义线程安全的收集反馈确认消息list
//定义线程安全的收集反馈确认消息list
private
List
<
Integer
>
confirmList
=
new
CopyOnWriteArrayList
<>();
private
List
<
Integer
>
confirmList
=
new
CopyOnWriteArrayList
<>();
private
Integer
compCalLogId
=
null
;
private
final
ActorRef
driveIndIdCalActor
;
//定义父actor
private
final
ActorRef
driveIndIdCalActor
;
//定义父actor
static
public
Props
props
(
ActorRef
driveIndIdCalActor
)
{
static
public
Props
props
(
ActorRef
driveIndIdCalActor
)
{
...
@@ -80,6 +86,8 @@ public class DriveIndIdObjCalActor extends AbstractActor{
...
@@ -80,6 +86,8 @@ public class DriveIndIdObjCalActor extends AbstractActor{
compareObj
=
driveIndIdObjCalMsg
.
getCompareObj
();
compareObj
=
driveIndIdObjCalMsg
.
getCompareObj
();
date
=
driveIndIdObjCalMsg
.
getDate
();
date
=
driveIndIdObjCalMsg
.
getDate
();
driveIndId
=
driveIndIdObjCalMsg
.
getIndId
();
driveIndId
=
driveIndIdObjCalMsg
.
getIndId
();
//日志记录id
compCalLogId
=
driveIndIdObjCalMsg
.
getCompCalLogId
();
List
<
String
>
indIdList
=
new
ArrayList
<>();
//定义存储从考核指标公式解析出来的基础指标id
List
<
String
>
indIdList
=
new
ArrayList
<>();
//定义存储从考核指标公式解析出来的基础指标id
...
@@ -111,7 +119,23 @@ public class DriveIndIdObjCalActor extends AbstractActor{
...
@@ -111,7 +119,23 @@ public class DriveIndIdObjCalActor extends AbstractActor{
}
}
})
})
.
match
(
BaseIndValueMsg
.
class
,
baseIndValueMsg
->{
.
match
(
BaseIndValueMsg
.
class
,
baseIndValueMsg
->{
//根据日志记录id获取日志
CompareUnitCalLog
compCalLog
=
null
;
if
(
compCalLogId
!=
null
)
{
compCalLog
=
compareUnitCalLogService
.
findById
(
compCalLogId
);
}
if
(
baseIndValueMsg
.
getIsFinish
()==
0
)
{
if
(
baseIndValueMsg
.
getIsFinish
()==
0
)
{
//日志填充
if
(
compCalLog
!=
null
)
{
String
logInfo
=
compCalLog
.
getLogInfo
();
if
(
StringUtils
.
isNotBlank
(
logInfo
))
{
logInfo
+=
baseIndValueMsg
.
getConfirmMessage
()+
"</n>"
;
compCalLog
.
setLogInfo
(
logInfo
);
}
else
{
compCalLog
.
setLogInfo
(
baseIndValueMsg
.
getConfirmMessage
()+
"</n>"
);
}
}
logger
.
info
(
baseIndValueMsg
.
getConfirmMessage
());
logger
.
info
(
baseIndValueMsg
.
getConfirmMessage
());
}
else
{
}
else
{
String
indValue
=
baseIndValueMsg
.
getValue
();
String
indValue
=
baseIndValueMsg
.
getValue
();
...
@@ -125,7 +149,21 @@ public class DriveIndIdObjCalActor extends AbstractActor{
...
@@ -125,7 +149,21 @@ public class DriveIndIdObjCalActor extends AbstractActor{
env
.
put
(
baseIndValueMsg
.
getIndId
(),
Double
.
valueOf
(
indValue
));
env
.
put
(
baseIndValueMsg
.
getIndId
(),
Double
.
valueOf
(
indValue
));
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
logger
.
error
(
driveIndFormula
+
";"
+
env
);
logger
.
error
(
"driveIndId:"
+
driveIndId
+
";"
+
"formula:"
+
driveIndFormula
+
";"
+
"errorValue:"
+
indValue
+
";"
+
"paramEnv:"
+
env
);
//日志记录
String
logInfo
=
compCalLog
.
getLogInfo
();
if
(
StringUtils
.
isNotBlank
(
logInfo
))
{
logInfo
+=
"替换公式值出错:driveIndId:"
+
driveIndId
+
";"
+
"formula:"
+
driveIndFormula
+
";"
+
"errorValue:"
+
indValue
+
";"
+
"paramEnv:"
+
env
+
"</n>"
;
compCalLog
.
setLogInfo
(
logInfo
);
}
else
{
compCalLog
.
setLogInfo
(
"替换公式值出错:driveIndId:"
+
driveIndId
+
";"
+
"formula:"
+
driveIndFormula
+
";"
+
"errorValue:"
+
indValue
+
";"
+
"paramEnv:"
+
env
+
"</n>"
);
}
}
}
confirmList
.
add
(
baseIndValueMsg
.
getIsFinish
());
confirmList
.
add
(
baseIndValueMsg
.
getIsFinish
());
if
(++
numberOfConfirm
>=
indIdSize
)
{
//子actor全部返回
if
(++
numberOfConfirm
>=
indIdSize
)
{
//子actor全部返回
...
@@ -155,7 +193,7 @@ public class DriveIndIdObjCalActor extends AbstractActor{
...
@@ -155,7 +193,7 @@ public class DriveIndIdObjCalActor extends AbstractActor{
CalIndAverageAndRankMsg
driveIndAverageAndRankMsg
=
CalIndAverageAndRankMsg
driveIndAverageAndRankMsg
=
new
CalIndAverageAndRankMsg
(
driveIndCalResult
.
getId
(),
new
CalIndAverageAndRankMsg
(
driveIndCalResult
.
getId
(),
compareId
,
driveIndId
,
compareObj
,
date
,
driveIndValue
,
compareId
,
driveIndId
,
compareObj
,
date
,
driveIndValue
,
unit
,
indType
,
scoreCardId
,
averageDriveIndFormula
);
unit
,
indType
,
scoreCardId
,
averageDriveIndFormula
,
compCalLogId
);
driveIndIdCalActor
.
tell
(
driveIndAverageAndRankMsg
,
ActorRef
.
noSender
());
driveIndIdCalActor
.
tell
(
driveIndAverageAndRankMsg
,
ActorRef
.
noSender
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
//判断结果表中是否已存在该结果数据,存在则覆盖
//判断结果表中是否已存在该结果数据,存在则覆盖
...
@@ -169,23 +207,40 @@ public class DriveIndIdObjCalActor extends AbstractActor{
...
@@ -169,23 +207,40 @@ public class DriveIndIdObjCalActor extends AbstractActor{
driveIndCalResult
.
setValue
(
"NaN"
);
driveIndCalResult
.
setValue
(
"NaN"
);
}
}
driveIndCalResultService
.
saveOrUpdate
(
driveIndCalResult
);
driveIndCalResultService
.
saveOrUpdate
(
driveIndCalResult
);
logger
.
error
(
"driveIndId:"
+
driveIndId
+
";"
+
"paramEnv:"
+
env
+
";formula:"
+
driveIndFormula
);
//日志记录
String
logInfo
=
compCalLog
.
getLogInfo
();
if
(
StringUtils
.
isNotBlank
(
logInfo
))
{
logInfo
+=
"计算考核指标出错:driveIndId:"
+
driveIndId
+
";"
+
"paramEnv:"
+
env
+
";formula:"
+
driveIndFormula
+
"</n>"
;
compCalLog
.
setLogInfo
(
logInfo
);
}
else
{
compCalLog
.
setLogInfo
(
"计算考核指标出错:driveIndId:"
+
driveIndId
+
";"
+
"paramEnv:"
+
env
+
";formula:"
+
driveIndFormula
+
"</n>"
);
}
CalIndAverageAndRankMsg
driveIndAverageAndRankMsg
=
CalIndAverageAndRankMsg
driveIndAverageAndRankMsg
=
new
CalIndAverageAndRankMsg
(
driveIndCalResult
.
getId
(),
new
CalIndAverageAndRankMsg
(
driveIndCalResult
.
getId
(),
compareId
,
driveIndId
,
compareObj
,
date
,
"NaN"
,
compareId
,
driveIndId
,
compareObj
,
date
,
"NaN"
,
unit
,
indType
,
scoreCardId
,
averageDriveIndFormula
);
unit
,
indType
,
scoreCardId
,
averageDriveIndFormula
,
compCalLogId
);
driveIndIdCalActor
.
tell
(
driveIndAverageAndRankMsg
,
ActorRef
.
noSender
());
driveIndIdCalActor
.
tell
(
driveIndAverageAndRankMsg
,
ActorRef
.
noSender
());
logger
.
error
(
"env:"
+
env
+
";formula:"
+
driveIndFormula
);
}
}
}
else
{
}
else
{
//返回考核指标因为考核指标公式中的数据项不存在而导致的计算错误标识
//返回考核指标因为考核指标公式中的数据项不存在而导致的计算错误标识
CalIndAverageAndRankMsg
driveIndAverageAndRankMsg
=
CalIndAverageAndRankMsg
driveIndAverageAndRankMsg
=
new
CalIndAverageAndRankMsg
(-
1
,
new
CalIndAverageAndRankMsg
(-
1
,
compareId
,
driveIndId
,
compareObj
,
date
,
"NaN"
,
compareId
,
driveIndId
,
compareObj
,
date
,
"NaN"
,
unit
,
indType
,
scoreCardId
,
averageDriveIndFormula
);
unit
,
indType
,
scoreCardId
,
averageDriveIndFormula
,
compCalLogId
);
driveIndIdCalActor
.
tell
(
driveIndAverageAndRankMsg
,
ActorRef
.
noSender
());
driveIndIdCalActor
.
tell
(
driveIndAverageAndRankMsg
,
ActorRef
.
noSender
());
}
}
}
}
}
}
//保存日志
if
(
compCalLog
!=
null
)
{
compareUnitCalLogService
.
saveOrUndate
(
compCalLog
);
}
})
})
.
build
();
.
build
();
}
}
...
...
src/main/java/com/keymobile/indicators/akka/actor/indicators/StartCompareUnitCalActor.java
View file @
56d360c0
...
@@ -3,9 +3,14 @@ package com.keymobile.indicators.akka.actor.indicators;
...
@@ -3,9 +3,14 @@ package com.keymobile.indicators.akka.actor.indicators;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
com.keymobile.indicators.akka.message.indicators.AfterExeConfirmMsg
;
import
com.keymobile.indicators.akka.message.indicators.CompareUnitCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.CompareUnitCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.FirstExeConfirmMsg
;
import
com.keymobile.indicators.akka.message.indicators.FirstExeConfirmMsg
;
import
com.keymobile.indicators.akka.message.indicators.StartCompareUnitCalMsg
;
import
com.keymobile.indicators.akka.message.indicators.StartCompareUnitCalMsg
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitCalLog
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitDef
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitDef
;
import
akka.actor.AbstractActor
;
import
akka.actor.AbstractActor
;
...
@@ -13,6 +18,7 @@ import akka.actor.ActorRef;
...
@@ -13,6 +18,7 @@ import akka.actor.ActorRef;
import
akka.actor.Props
;
import
akka.actor.Props
;
public
class
StartCompareUnitCalActor
extends
AbstractActor
{
public
class
StartCompareUnitCalActor
extends
AbstractActor
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
StartCompareUnitCalActor
.
class
);
private
List
<
CompareUnitDef
>
firstExeList
=
new
ArrayList
<>();
//先执行对标单元list
private
List
<
CompareUnitDef
>
firstExeList
=
new
ArrayList
<>();
//先执行对标单元list
...
@@ -22,6 +28,10 @@ public class StartCompareUnitCalActor extends AbstractActor{
...
@@ -22,6 +28,10 @@ public class StartCompareUnitCalActor extends AbstractActor{
private
int
firstExeUnitSize
=
0
;
//需要先执行对标单元个数
private
int
firstExeUnitSize
=
0
;
//需要先执行对标单元个数
private
int
numberOfAfterConfirm
=
0
;
//定义后执行返回确认消息的子actor
private
int
afterExeUnitSize
=
0
;
//后执行的对标单元个数
@Override
@Override
public
Receive
createReceive
()
{
public
Receive
createReceive
()
{
return
receiveBuilder
()
return
receiveBuilder
()
...
@@ -35,8 +45,9 @@ public class StartCompareUnitCalActor extends AbstractActor{
...
@@ -35,8 +45,9 @@ public class StartCompareUnitCalActor extends AbstractActor{
afterExeList
.
add
(
unitDef
);
afterExeList
.
add
(
unitDef
);
}
}
}
}
firstExeUnitSize
=
firstExeList
.
size
();
afterExeUnitSize
=
afterExeList
.
size
();
if
(!
firstExeList
.
isEmpty
())
{
if
(!
firstExeList
.
isEmpty
())
{
firstExeUnitSize
=
firstExeList
.
size
();
for
(
CompareUnitDef
unitDef
:
firstExeList
)
{
for
(
CompareUnitDef
unitDef
:
firstExeList
)
{
CompareUnitCalMsg
compareUnitCalMsg
=
new
CompareUnitCalMsg
(
unitDef
);
CompareUnitCalMsg
compareUnitCalMsg
=
new
CompareUnitCalMsg
(
unitDef
);
ActorRef
compareUnitCalActor
=
this
.
getContext
()
ActorRef
compareUnitCalActor
=
this
.
getContext
()
...
@@ -53,6 +64,8 @@ public class StartCompareUnitCalActor extends AbstractActor{
...
@@ -53,6 +64,8 @@ public class StartCompareUnitCalActor extends AbstractActor{
()->
new
CompareUnitCalActor
(
getSelf
())));
()->
new
CompareUnitCalActor
(
getSelf
())));
compareUnitCalActor
.
tell
(
compareUnitCalMsg
,
getSelf
());
compareUnitCalActor
.
tell
(
compareUnitCalMsg
,
getSelf
());
}
}
}
else
{
logger
.
info
(
"对标单元计算完成"
);
}
}
}
}
})
})
...
@@ -67,9 +80,17 @@ public class StartCompareUnitCalActor extends AbstractActor{
...
@@ -67,9 +80,17 @@ public class StartCompareUnitCalActor extends AbstractActor{
()->
new
CompareUnitCalActor
(
getSelf
())));
()->
new
CompareUnitCalActor
(
getSelf
())));
compareUnitCalActor
.
tell
(
compareUnitCalMsg
,
getSelf
());
compareUnitCalActor
.
tell
(
compareUnitCalMsg
,
getSelf
());
}
}
logger
.
info
(
"进行后执行对标单元计算...."
);
}
else
{
logger
.
info
(
"对标单元计算完成"
);
}
}
}
}
})
})
.
match
(
AfterExeConfirmMsg
.
class
,
afterExeConfirmMsg
->
{
if
(++
numberOfAfterConfirm
>=
afterExeUnitSize
)
{
//全部后执行的子actor全部返回
logger
.
info
(
"对标单元计算完成"
);
}
})
.
build
();
.
build
();
}
}
}
}
src/main/java/com/keymobile/indicators/akka/message/indicators/AfterExeConfirmMsg.java
0 → 100644
View file @
56d360c0
package
com
.
keymobile
.
indicators
.
akka
.
message
.
indicators
;
import
java.io.Serializable
;
public
class
AfterExeConfirmMsg
implements
Serializable
{
/**
*
*/
private
static
final
long
serialVersionUID
=
1L
;
//是否完成标识:1.完成 0.未完成
private
Integer
isFinish
;
//日志报告
private
String
confirmMessage
;
//日志记录id
private
Integer
compCalLogId
;
public
AfterExeConfirmMsg
(
Integer
isFinish
,
String
confirmMessage
)
{
this
.
isFinish
=
isFinish
;
this
.
confirmMessage
=
confirmMessage
;
}
public
AfterExeConfirmMsg
(
Integer
isFinish
,
String
confirmMessage
,
Integer
compCalLogId
)
{
this
.
isFinish
=
isFinish
;
this
.
confirmMessage
=
confirmMessage
;
this
.
compCalLogId
=
compCalLogId
;
}
public
Integer
getIsFinish
()
{
return
isFinish
;
}
public
void
setIsFinish
(
Integer
isFinish
)
{
this
.
isFinish
=
isFinish
;
}
public
String
getConfirmMessage
()
{
return
confirmMessage
;
}
public
void
setConfirmMessage
(
String
confirmMessage
)
{
this
.
confirmMessage
=
confirmMessage
;
}
public
Integer
getCompCalLogId
()
{
return
compCalLogId
;
}
public
void
setCompCalLogId
(
Integer
compCalLogId
)
{
this
.
compCalLogId
=
compCalLogId
;
}
}
src/main/java/com/keymobile/indicators/akka/message/indicators/CalIndAverageAndRankMsg.java
View file @
56d360c0
...
@@ -18,9 +18,11 @@ public class CalIndAverageAndRankMsg implements Serializable{
...
@@ -18,9 +18,11 @@ public class CalIndAverageAndRankMsg implements Serializable{
private
String
indType
;
private
String
indType
;
private
Integer
scoreCardId
;
private
Integer
scoreCardId
;
private
String
indFormula
;
private
String
indFormula
;
private
Integer
compCalLogId
;
public
CalIndAverageAndRankMsg
(
Integer
id
,
String
compareId
,
String
driveIndId
,
String
compareObj
,
public
CalIndAverageAndRankMsg
(
Integer
id
,
String
compareId
,
String
driveIndId
,
String
compareObj
,
Integer
date
,
String
driveIndValue
,
String
unit
,
String
indType
,
Integer
scoreCardId
,
String
indFormula
)
{
Integer
date
,
String
driveIndValue
,
String
unit
,
String
indType
,
Integer
scoreCardId
,
String
indFormula
,
Integer
compCalLogId
)
{
this
.
id
=
id
;
this
.
id
=
id
;
this
.
compareId
=
compareId
;
this
.
compareId
=
compareId
;
this
.
driveIndId
=
driveIndId
;
this
.
driveIndId
=
driveIndId
;
...
@@ -31,6 +33,7 @@ public class CalIndAverageAndRankMsg implements Serializable{
...
@@ -31,6 +33,7 @@ public class CalIndAverageAndRankMsg implements Serializable{
this
.
indType
=
indType
;
this
.
indType
=
indType
;
this
.
scoreCardId
=
scoreCardId
;
this
.
scoreCardId
=
scoreCardId
;
this
.
indFormula
=
indFormula
;
this
.
indFormula
=
indFormula
;
this
.
compCalLogId
=
compCalLogId
;
}
}
public
Integer
getId
()
{
public
Integer
getId
()
{
...
@@ -93,4 +96,12 @@ public class CalIndAverageAndRankMsg implements Serializable{
...
@@ -93,4 +96,12 @@ public class CalIndAverageAndRankMsg implements Serializable{
public
void
setIndFormula
(
String
indFormula
)
{
public
void
setIndFormula
(
String
indFormula
)
{
this
.
indFormula
=
indFormula
;
this
.
indFormula
=
indFormula
;
}
}
public
Integer
getCompCalLogId
()
{
return
compCalLogId
;
}
public
void
setCompCalLogId
(
Integer
compCalLogId
)
{
this
.
compCalLogId
=
compCalLogId
;
}
}
}
src/main/java/com/keymobile/indicators/akka/message/indicators/DriveIndIdCalMsg.java
View file @
56d360c0
...
@@ -16,15 +16,17 @@ public class DriveIndIdCalMsg implements Serializable{
...
@@ -16,15 +16,17 @@ public class DriveIndIdCalMsg implements Serializable{
private
Integer
date
;
private
Integer
date
;
private
String
firstExe
;
private
String
firstExe
;
private
String
averageObj
;
//平均分参考对象
private
String
averageObj
;
//平均分参考对象
private
Integer
compCalLogId
;
//运行日志记录id
public
DriveIndIdCalMsg
(
String
compareId
,
String
indId
,
List
<
String
>
compareObj
,
Integer
date
,
public
DriveIndIdCalMsg
(
String
compareId
,
String
indId
,
List
<
String
>
compareObj
,
Integer
date
,
String
firstExe
,
String
averageObj
)
{
String
firstExe
,
String
averageObj
,
Integer
compCalLogId
)
{
this
.
compareId
=
compareId
;
this
.
compareId
=
compareId
;
this
.
indId
=
indId
;
this
.
indId
=
indId
;
this
.
compareObj
.
addAll
(
compareObj
);
this
.
compareObj
.
addAll
(
compareObj
);
this
.
date
=
date
;
this
.
date
=
date
;
this
.
firstExe
=
firstExe
;
this
.
firstExe
=
firstExe
;
this
.
averageObj
=
averageObj
;
this
.
averageObj
=
averageObj
;
this
.
compCalLogId
=
compCalLogId
;
}
}
public
String
getCompareId
()
{
public
String
getCompareId
()
{
...
@@ -64,4 +66,12 @@ public class DriveIndIdCalMsg implements Serializable{
...
@@ -64,4 +66,12 @@ public class DriveIndIdCalMsg implements Serializable{
public
void
setFirstExe
(
String
firstExe
)
{
public
void
setFirstExe
(
String
firstExe
)
{
this
.
firstExe
=
firstExe
;
this
.
firstExe
=
firstExe
;
}
}
public
Integer
getCompCalLogId
()
{
return
compCalLogId
;
}
public
void
setCompCalLogId
(
Integer
compCalLogId
)
{
this
.
compCalLogId
=
compCalLogId
;
}
}
}
src/main/java/com/keymobile/indicators/akka/message/indicators/DriveIndIdObjCalMsg.java
View file @
56d360c0
...
@@ -17,14 +17,16 @@ public class DriveIndIdObjCalMsg implements Serializable{
...
@@ -17,14 +17,16 @@ public class DriveIndIdObjCalMsg implements Serializable{
private
String
compareObj
;
private
String
compareObj
;
private
Integer
date
;
private
Integer
date
;
private
List
<
DimValue
>
dimValues
=
new
ArrayList
<>();
//维度值list
private
List
<
DimValue
>
dimValues
=
new
ArrayList
<>();
//维度值list
private
Integer
compCalLogId
;
//运行日志记录id
public
DriveIndIdObjCalMsg
(
String
compareId
,
String
indId
,
String
compareObj
,
public
DriveIndIdObjCalMsg
(
String
compareId
,
String
indId
,
String
compareObj
,
Integer
date
,
List
<
DimValue
>
dimValues
)
{
Integer
date
,
List
<
DimValue
>
dimValues
,
Integer
compCalLogId
)
{
this
.
compareId
=
compareId
;
this
.
compareId
=
compareId
;
this
.
indId
=
indId
;
this
.
indId
=
indId
;
this
.
compareObj
=
compareObj
;
this
.
compareObj
=
compareObj
;
this
.
date
=
date
;
this
.
date
=
date
;
this
.
dimValues
.
addAll
(
dimValues
);
this
.
dimValues
.
addAll
(
dimValues
);
this
.
compCalLogId
=
compCalLogId
;
}
}
public
String
getCompareId
()
{
public
String
getCompareId
()
{
...
@@ -57,4 +59,12 @@ public class DriveIndIdObjCalMsg implements Serializable{
...
@@ -57,4 +59,12 @@ public class DriveIndIdObjCalMsg implements Serializable{
public
void
setDimValues
(
List
<
DimValue
>
dimValues
)
{
public
void
setDimValues
(
List
<
DimValue
>
dimValues
)
{
this
.
dimValues
.
addAll
(
dimValues
);
this
.
dimValues
.
addAll
(
dimValues
);
}
}
public
Integer
getCompCalLogId
()
{
return
compCalLogId
;
}
public
void
setCompCalLogId
(
Integer
compCalLogId
)
{
this
.
compCalLogId
=
compCalLogId
;
}
}
}
src/main/java/com/keymobile/indicators/akka/message/indicators/FirstExeConfirmMsg.java
View file @
56d360c0
...
@@ -12,12 +12,20 @@ public class FirstExeConfirmMsg implements Serializable{
...
@@ -12,12 +12,20 @@ public class FirstExeConfirmMsg implements Serializable{
private
Integer
isFinish
;
private
Integer
isFinish
;
//日志报告
//日志报告
private
String
confirmMessage
;
private
String
confirmMessage
;
//日志记录id
private
Integer
compCalLogId
;
public
FirstExeConfirmMsg
(
Integer
isFinish
,
String
confirmMessage
)
{
public
FirstExeConfirmMsg
(
Integer
isFinish
,
String
confirmMessage
)
{
this
.
isFinish
=
isFinish
;
this
.
isFinish
=
isFinish
;
this
.
confirmMessage
=
confirmMessage
;
this
.
confirmMessage
=
confirmMessage
;
}
}
public
FirstExeConfirmMsg
(
Integer
isFinish
,
String
confirmMessage
,
Integer
compCalLogId
)
{
this
.
isFinish
=
isFinish
;
this
.
confirmMessage
=
confirmMessage
;
this
.
compCalLogId
=
compCalLogId
;
}
public
Integer
getIsFinish
()
{
public
Integer
getIsFinish
()
{
return
isFinish
;
return
isFinish
;
}
}
...
@@ -30,4 +38,12 @@ public class FirstExeConfirmMsg implements Serializable{
...
@@ -30,4 +38,12 @@ public class FirstExeConfirmMsg implements Serializable{
public
void
setConfirmMessage
(
String
confirmMessage
)
{
public
void
setConfirmMessage
(
String
confirmMessage
)
{
this
.
confirmMessage
=
confirmMessage
;
this
.
confirmMessage
=
confirmMessage
;
}
}
public
Integer
getCompCalLogId
()
{
return
compCalLogId
;
}
public
void
setCompCalLogId
(
Integer
compCalLogId
)
{
this
.
compCalLogId
=
compCalLogId
;
}
}
}
src/main/java/com/keymobile/indicators/api/hytobacco/DriveIndCalResultCtrl.java
0 → 100644
View file @
56d360c0
package
com
.
keymobile
.
indicators
.
api
.
hytobacco
;
import
java.util.List
;
import
java.util.Map
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitDef
;
import
com.keymobile.indicators.service.hytobacco.CompareUnitCalLogService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndCalResultService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"规则管理-对标单元指标计算接口"
})
@RestController
@RequestMapping
(
value
=
"/driveIndCal"
)
public
class
DriveIndCalResultCtrl
{
@Autowired
private
DriveIndCalResultService
driveIndCalResultService
;
@Autowired
private
CompareUnitCalLogService
compUnitCalLogService
;
@ApiOperation
(
value
=
"对标计算"
,
notes
=
"对标计算"
)
@PostMapping
(
value
=
"/calculateComp"
)
public
void
calculateComp
(
@RequestParam
String
compareId
,
@RequestParam
String
compareObjsString
,
@RequestParam
String
driveIndIdsString
,
@RequestParam
int
date
)
{
driveIndCalResultService
.
calculateComp
(
compareId
,
compareObjsString
,
driveIndIdsString
,
date
);
}
@ApiOperation
(
value
=
"对标单元综合计算"
,
notes
=
"对标单元综合计算"
)
@PostMapping
(
value
=
"/compareUnitListCal"
)
public
void
compareUnitListCal
(
@RequestBody
List
<
CompareUnitDef
>
compareUnitList
)
{
driveIndCalResultService
.
compareUnitListCal
(
compareUnitList
);
}
@ApiOperation
(
value
=
"根据对标单元id分页获取日志详情"
,
notes
=
"根据对标单元id分页获取日志详情"
)
@PostMapping
(
value
=
"/findPageByCompareId"
)
public
Map
<
String
,
Object
>
findPageByCompareId
(
@RequestParam
String
compareId
,
@RequestParam
(
defaultValue
=
"0"
)
int
page
,
@RequestParam
(
defaultValue
=
"10"
)
int
rows
){
return
compUnitCalLogService
.
findPageByCompareId
(
compareId
,
page
,
rows
);
}
}
src/main/java/com/keymobile/indicators/api/hytobacco/IndCatalogCtrl.java
View file @
56d360c0
...
@@ -17,7 +17,7 @@ import com.keymobile.indicators.service.hytobacco.IndCatalogService;
...
@@ -17,7 +17,7 @@ import com.keymobile.indicators.service.hytobacco.IndCatalogService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"指标目录定义接口"
})
@Api
(
tags
={
"
规则管理-
指标目录定义接口"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/indCatalog"
)
@RequestMapping
(
value
=
"/indCatalog"
)
public
class
IndCatalogCtrl
{
public
class
IndCatalogCtrl
{
...
...
src/main/java/com/keymobile/indicators/api/hytobacco/IndScorecardCtrl.java
View file @
56d360c0
...
@@ -18,7 +18,7 @@ import com.keymobile.indicators.service.hytobacco.ScorecardCatalogService;
...
@@ -18,7 +18,7 @@ import com.keymobile.indicators.service.hytobacco.ScorecardCatalogService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"
评分卡
CRUD"
})
@Api
(
tags
={
"
规则管理-指标积分规则
CRUD"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/indScorecard"
)
@RequestMapping
(
value
=
"/indScorecard"
)
public
class
IndScorecardCtrl
{
public
class
IndScorecardCtrl
{
...
...
src/main/java/com/keymobile/indicators/api/hytobacco/IndicatorsDefCtrl.java
View file @
56d360c0
...
@@ -11,16 +11,14 @@ import org.springframework.web.bind.annotation.RequestParam;
...
@@ -11,16 +11,14 @@ import org.springframework.web.bind.annotation.RequestParam;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDef
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDef
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitDef
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndDef
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndDef
;
import
com.keymobile.indicators.service.hytobacco.BaseIndDefService
;
import
com.keymobile.indicators.service.hytobacco.BaseIndDefService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndCalResultService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndDefService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndDefService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"指标定义接口"
})
@Api
(
tags
={
"
规则管理-
指标定义接口"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/indDef"
)
@RequestMapping
(
value
=
"/indDef"
)
public
class
IndicatorsDefCtrl
{
public
class
IndicatorsDefCtrl
{
...
@@ -29,8 +27,6 @@ public class IndicatorsDefCtrl {
...
@@ -29,8 +27,6 @@ public class IndicatorsDefCtrl {
private
BaseIndDefService
baseIndDefService
;
private
BaseIndDefService
baseIndDefService
;
@Autowired
@Autowired
private
DriveIndDefService
driveIndDefService
;
private
DriveIndDefService
driveIndDefService
;
@Autowired
private
DriveIndCalResultService
driveIndCalResultService
;
@ApiOperation
(
value
=
"获取基础指标最大id"
,
notes
=
"获取基础指标最大id"
)
@ApiOperation
(
value
=
"获取基础指标最大id"
,
notes
=
"获取基础指标最大id"
)
@PostMapping
(
value
=
"/getBaseIndMaxId"
)
@PostMapping
(
value
=
"/getBaseIndMaxId"
)
...
@@ -119,17 +115,4 @@ public class IndicatorsDefCtrl {
...
@@ -119,17 +115,4 @@ public class IndicatorsDefCtrl {
@RequestParam
(
defaultValue
=
"0"
)
int
page
,
@RequestParam
(
defaultValue
=
"10"
)
int
rows
)
throws
Exception
{
@RequestParam
(
defaultValue
=
"0"
)
int
page
,
@RequestParam
(
defaultValue
=
"10"
)
int
rows
)
throws
Exception
{
return
driveIndDefService
.
getByPageAndKeyword
(
catalogId
,
keyword
,
page
,
rows
);
return
driveIndDefService
.
getByPageAndKeyword
(
catalogId
,
keyword
,
page
,
rows
);
}
}
@ApiOperation
(
value
=
"对标计算"
,
notes
=
"对标计算"
)
@PostMapping
(
value
=
"/calculateComp"
)
public
void
calculateComp
(
@RequestParam
String
compareId
,
@RequestParam
String
compareObjsString
,
@RequestParam
String
driveIndIdsString
,
@RequestParam
int
date
)
{
driveIndCalResultService
.
calculateComp
(
compareId
,
compareObjsString
,
driveIndIdsString
,
date
);
}
@ApiOperation
(
value
=
"对标单元综合计算"
,
notes
=
"对标单元综合计算"
)
@PostMapping
(
value
=
"/compareUnitListCal"
)
public
void
compareUnitListCal
(
@RequestBody
List
<
CompareUnitDef
>
compareUnitList
)
{
driveIndCalResultService
.
compareUnitListCal
(
compareUnitList
);
}
}
}
src/main/java/com/keymobile/indicators/api/hytobacco/IndicatorsRelCtrl.java
View file @
56d360c0
...
@@ -13,7 +13,7 @@ import com.keymobile.indicators.service.hytobacco.IndicatorsRelService;
...
@@ -13,7 +13,7 @@ import com.keymobile.indicators.service.hytobacco.IndicatorsRelService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"指标关系接口"
})
@Api
(
tags
={
"
规则管理-
指标关系接口"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/indRel"
)
@RequestMapping
(
value
=
"/indRel"
)
public
class
IndicatorsRelCtrl
{
public
class
IndicatorsRelCtrl
{
...
...
src/main/java/com/keymobile/indicators/api/hytobacco/IndicatorsValueCtrl.java
View file @
56d360c0
...
@@ -14,7 +14,7 @@ import com.keymobile.indicators.service.hytobacco.IndicatorsValueService;
...
@@ -14,7 +14,7 @@ import com.keymobile.indicators.service.hytobacco.IndicatorsValueService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"指标值录入接口"
})
@Api
(
tags
={
"
规则管理-
指标值录入接口"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/indicatorsValue"
)
@RequestMapping
(
value
=
"/indicatorsValue"
)
public
class
IndicatorsValueCtrl
{
public
class
IndicatorsValueCtrl
{
...
...
src/main/java/com/keymobile/indicators/api/hytobacco/ObjScoreRuleCtrl.java
View file @
56d360c0
...
@@ -18,7 +18,7 @@ import com.keymobile.indicators.service.hytobacco.ScoreRuleService;
...
@@ -18,7 +18,7 @@ import com.keymobile.indicators.service.hytobacco.ScoreRuleService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"单位评分规则CRUD"
})
@Api
(
tags
={
"
规则管理-
单位评分规则CRUD"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/objScoreRule"
)
@RequestMapping
(
value
=
"/objScoreRule"
)
public
class
ObjScoreRuleCtrl
{
public
class
ObjScoreRuleCtrl
{
...
...
src/main/java/com/keymobile/indicators/api/hytobacco/ShortboardRuleCtrl.java
View file @
56d360c0
...
@@ -18,7 +18,7 @@ import com.keymobile.indicators.service.hytobacco.ShortboardRuleService;
...
@@ -18,7 +18,7 @@ import com.keymobile.indicators.service.hytobacco.ShortboardRuleService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"短板筛选规则CRUD"
})
@Api
(
tags
={
"
规则管理-
短板筛选规则CRUD"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/shortboardRule"
)
@RequestMapping
(
value
=
"/shortboardRule"
)
public
class
ShortboardRuleCtrl
{
public
class
ShortboardRuleCtrl
{
...
...
src/main/java/com/keymobile/indicators/api/hytobacco/ShortboardUnitCtrl.java
View file @
56d360c0
...
@@ -19,7 +19,7 @@ import com.keymobile.indicators.service.hytobacco.ShortboardUnitService;
...
@@ -19,7 +19,7 @@ import com.keymobile.indicators.service.hytobacco.ShortboardUnitService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
={
"短板筛选单元CRUD"
})
@Api
(
tags
={
"
规则管理-
短板筛选单元CRUD"
})
@RestController
@RestController
@RequestMapping
(
value
=
"/shortboardUnit"
)
@RequestMapping
(
value
=
"/shortboardUnit"
)
public
class
ShortboardUnitCtrl
{
public
class
ShortboardUnitCtrl
{
...
...
src/main/java/com/keymobile/indicators/model/entity/indicators/CompareUnitCalLog.java
0 → 100644
View file @
56d360c0
package
com
.
keymobile
.
indicators
.
model
.
entity
.
indicators
;
import
java.util.Date
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GenerationType
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
com.keymobile.indicators.utils.DateUtils
;
import
lombok.Data
;
/**
* author:zhangkb time:2020-6-29 desc:对标单元计算日志表
*/
@Data
@Table
(
name
=
"compare_unit_cal_log"
)
public
class
CompareUnitCalLog
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
private
Integer
id
;
private
String
compareId
;
private
Integer
date
;
private
String
creater
;
private
String
createTime
=
DateUtils
.
formatDate
(
new
Date
(),
"yyyy-MM-dd HH:mm:ss"
);
private
String
logInfo
;
private
String
startTime
;
private
String
endTime
;
private
String
runStatus
;
//0:运行中 1:运行完成
public
CompareUnitCalLog
(
String
compareId
,
Integer
date
,
String
startTime
,
String
runStatus
)
{
this
.
compareId
=
compareId
;
this
.
date
=
date
;
this
.
startTime
=
startTime
;
this
.
runStatus
=
runStatus
;
}
}
src/main/java/com/keymobile/indicators/model/mapper/indmapper/CompareUnitCalLogMapper.java
0 → 100644
View file @
56d360c0
package
com
.
keymobile
.
indicators
.
model
.
mapper
.
indmapper
;
import
java.util.List
;
import
java.util.Map
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitCalLog
;
import
tk.mybatis.mapper.common.BaseMapper
;
@Mapper
public
interface
CompareUnitCalLogMapper
extends
BaseMapper
<
CompareUnitCalLog
>{
public
List
<
CompareUnitCalLog
>
findByCompareId
(
Map
<
String
,
Object
>
param
);
public
int
countByCompareId
(
@Param
(
"compareId"
)
String
compareId
);
}
src/main/java/com/keymobile/indicators/service/hytobacco/CompareUnitCalLogService.java
0 → 100644
View file @
56d360c0
package
com
.
keymobile
.
indicators
.
service
.
hytobacco
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitCalLog
;
import
com.keymobile.indicators.model.mapper.indmapper.CompareUnitCalLogMapper
;
@Service
public
class
CompareUnitCalLogService
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
CompareUnitCalLogService
.
class
);
@Autowired
private
CompareUnitCalLogMapper
compareUnitCalLogMapper
;
public
Integer
saveOrUndate
(
CompareUnitCalLog
compareUnitCalLog
)
{
if
(
compareUnitCalLog
.
getId
()==
null
)
{
compareUnitCalLogMapper
.
insert
(
compareUnitCalLog
);
}
else
{
compareUnitCalLogMapper
.
updateByPrimaryKey
(
compareUnitCalLog
);
}
return
compareUnitCalLog
.
getId
();
}
public
CompareUnitCalLog
findById
(
Integer
id
)
{
return
compareUnitCalLogMapper
.
selectByPrimaryKey
(
id
);
}
//分页根据对标单元id获取对应运行日志
public
Map
<
String
,
Object
>
findPageByCompareId
(
String
compareId
,
int
page
,
int
rows
){
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
resultMap
=
new
HashMap
<>();
//计算总数
int
count
=
compareUnitCalLogMapper
.
countByCompareId
(
compareId
);
//计算start
int
start
=
page
*
rows
;
paramMap
.
put
(
"compareId"
,
compareId
);
paramMap
.
put
(
"start"
,
start
);
paramMap
.
put
(
"end"
,
rows
);
List
<
CompareUnitCalLog
>
datas
=
compareUnitCalLogMapper
.
findByCompareId
(
paramMap
);
resultMap
.
put
(
"resultList"
,
datas
);
resultMap
.
put
(
"total"
,
count
);
return
resultMap
;
}
}
src/main/resources/mybatis/mapping/CompareUnitCalLogMapper.xml
0 → 100644
View file @
56d360c0
<?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.keymobile.indicators.model.mapper.indmapper.CompareUnitCalLogMapper"
>
<select
id=
"findByCompareId"
parameterType=
"map"
resultType=
"com.keymobile.indicators.model.entity.indicators.CompareUnitCalLog"
>
select *
from compare_unit_cal_log
where compare_id=#{compareId}
order by create_time desc
limit #{start},#{end}
</select>
<select
id=
"countByCompareId"
parameterType=
"java.lang.String"
resultType=
"java.lang.Integer"
>
select count(1)
from compare_unit_cal_log
where compare_id=#{compareId}
</select>
</mapper>
\ No newline at end of file
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