Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
gf_back
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
tianchao
gf_back
Commits
8aaef4c7
Commit
8aaef4c7
authored
Jun 19, 2023
by
tianchao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.增加训练按钮
parent
a3be1cb7
Changes
11
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
833 additions
and
21 deletions
+833
-21
C09-base/pps-core-base/src/main/java/pps/core/base/entity/BaseDataImportLogEnt.java
.../main/java/pps/core/base/entity/BaseDataImportLogEnt.java
+85
-0
C09-base/pps-core-base/src/main/java/pps/core/base/entity/BaseModelValEnt.java
...e/src/main/java/pps/core/base/entity/BaseModelValEnt.java
+213
-0
C09-base/pps-core-base/src/main/java/pps/core/base/mapper/BaseDataImportLogMapper.java
...in/java/pps/core/base/mapper/BaseDataImportLogMapper.java
+10
-0
C09-base/pps-core-base/src/main/java/pps/core/base/mapper/BaseModelValMapper.java
...rc/main/java/pps/core/base/mapper/BaseModelValMapper.java
+10
-0
C09-base/pps-core-base/src/main/java/pps/core/base/service/BaseDataService.java
.../src/main/java/pps/core/base/service/BaseDataService.java
+132
-19
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/CalcBaseDataInput.java
...s/core/base/service/data/base_data/CalcBaseDataInput.java
+2
-2
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/GetBaseDataInput.java
...ps/core/base/service/data/base_data/GetBaseDataInput.java
+10
-0
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/GetTrainBaseModelValInput.java
...ase/service/data/base_data/GetTrainBaseModelValInput.java
+60
-0
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/TrainBaseModelValDetailOutput.java
...service/data/base_data/TrainBaseModelValDetailOutput.java
+38
-0
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/TrainBaseModelValInput.java
...e/base/service/data/base_data/TrainBaseModelValInput.java
+70
-0
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/TrainBaseModelValOutput.java
.../base/service/data/base_data/TrainBaseModelValOutput.java
+203
-0
No files found.
C09-base/pps-core-base/src/main/java/pps/core/base/entity/BaseDataImportLogEnt.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
xstartup.annotation.XText
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
@TableName
(
"base_data_import_log"
)
public
class
BaseDataImportLogEnt
implements
Serializable
{
@TableId
(
type
=
IdType
.
AUTO
)
private
Integer
id
;
@XText
(
"组织id"
)
@TableField
private
String
ouId
;
@XText
(
"线路id"
)
@TableField
private
Integer
lineId
;
@XText
(
"开始日期"
)
@TableField
private
Date
beginDate
;
@XText
(
"结束日期"
)
@TableField
private
Date
endDate
;
@XText
(
"创建时间"
)
@TableField
private
Date
createTime
;
public
Integer
getId
()
{
return
id
;
}
public
void
setId
(
Integer
id
)
{
this
.
id
=
id
;
}
public
String
getOuId
()
{
return
ouId
;
}
public
void
setOuId
(
String
ouId
)
{
this
.
ouId
=
ouId
;
}
public
Integer
getLineId
()
{
return
lineId
;
}
public
void
setLineId
(
Integer
lineId
)
{
this
.
lineId
=
lineId
;
}
public
Date
getBeginDate
()
{
return
beginDate
;
}
public
void
setBeginDate
(
Date
beginDate
)
{
this
.
beginDate
=
beginDate
;
}
public
Date
getEndDate
()
{
return
endDate
;
}
public
void
setEndDate
(
Date
endDate
)
{
this
.
endDate
=
endDate
;
}
public
Date
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
Date
createTime
)
{
this
.
createTime
=
createTime
;
}
}
C09-base/pps-core-base/src/main/java/pps/core/base/entity/BaseModelValEnt.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
xstartup.annotation.XText
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
@TableName
(
"base_model_val"
)
public
class
BaseModelValEnt
implements
Serializable
{
@XText
(
"实际数据"
)
@TableField
private
String
ytrue
;
@XText
(
"预测数据"
)
@TableField
private
String
ypred
;
@TableField
private
String
mae
;
@TableField
private
String
rmse
;
@TableField
private
String
r2
;
@XText
(
"训练模式"
)
@TableField
private
String
keyname
;
@XText
(
"线路"
)
@TableField
private
Integer
lineId
;
@TableField
private
String
stape
;
@XText
(
"开始时间"
)
@TableField
private
String
startime
;
@XText
(
"结束时间"
)
@TableField
private
String
endtime
;
@TableField
private
String
taget
;
@TableField
private
String
timecol
;
@TableField
private
String
features
;
@TableField
private
String
modelpath
;
@TableField
private
String
paramkeys
;
@XText
(
"id"
)
@TableField
private
BigDecimal
id
;
@XText
(
"创建时间"
)
@TableField
private
Date
createtime
;
public
String
getYtrue
()
{
return
ytrue
;
}
public
void
setYtrue
(
String
ytrue
)
{
this
.
ytrue
=
ytrue
;
}
public
String
getYpred
()
{
return
ypred
;
}
public
void
setYpred
(
String
ypred
)
{
this
.
ypred
=
ypred
;
}
public
String
getMae
()
{
return
mae
;
}
public
void
setMae
(
String
mae
)
{
this
.
mae
=
mae
;
}
public
String
getRmse
()
{
return
rmse
;
}
public
void
setRmse
(
String
rmse
)
{
this
.
rmse
=
rmse
;
}
public
String
getR2
()
{
return
r2
;
}
public
void
setR2
(
String
r2
)
{
this
.
r2
=
r2
;
}
public
String
getKeyname
()
{
return
keyname
;
}
public
void
setKeyname
(
String
keyname
)
{
this
.
keyname
=
keyname
;
}
public
Integer
getLineId
()
{
return
lineId
;
}
public
void
setLineId
(
Integer
lineId
)
{
this
.
lineId
=
lineId
;
}
public
String
getStape
()
{
return
stape
;
}
public
void
setStape
(
String
stape
)
{
this
.
stape
=
stape
;
}
public
String
getStartime
()
{
return
startime
;
}
public
void
setStartime
(
String
startime
)
{
this
.
startime
=
startime
;
}
public
String
getEndtime
()
{
return
endtime
;
}
public
void
setEndtime
(
String
endtime
)
{
this
.
endtime
=
endtime
;
}
public
String
getTaget
()
{
return
taget
;
}
public
void
setTaget
(
String
taget
)
{
this
.
taget
=
taget
;
}
public
String
getTimecol
()
{
return
timecol
;
}
public
void
setTimecol
(
String
timecol
)
{
this
.
timecol
=
timecol
;
}
public
String
getFeatures
()
{
return
features
;
}
public
void
setFeatures
(
String
features
)
{
this
.
features
=
features
;
}
public
String
getModelpath
()
{
return
modelpath
;
}
public
void
setModelpath
(
String
modelpath
)
{
this
.
modelpath
=
modelpath
;
}
public
String
getParamkeys
()
{
return
paramkeys
;
}
public
void
setParamkeys
(
String
paramkeys
)
{
this
.
paramkeys
=
paramkeys
;
}
public
BigDecimal
getId
()
{
return
id
;
}
public
void
setId
(
BigDecimal
id
)
{
this
.
id
=
id
;
}
public
Date
getCreatetime
()
{
return
createtime
;
}
public
void
setCreatetime
(
Date
createtime
)
{
this
.
createtime
=
createtime
;
}
}
C09-base/pps-core-base/src/main/java/pps/core/base/mapper/BaseDataImportLogMapper.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.springframework.stereotype.Repository
;
import
pps.core.base.entity.BaseDataEnt
;
import
pps.core.base.entity.BaseDataImportLogEnt
;
@Repository
(
value
=
"pps.core.base.mapper.BaseDataImportLogMapper"
)
public
interface
BaseDataImportLogMapper
extends
BaseMapper
<
BaseDataImportLogEnt
>
{
}
C09-base/pps-core-base/src/main/java/pps/core/base/mapper/BaseModelValMapper.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.springframework.stereotype.Repository
;
import
pps.core.base.entity.BaseDataEnt
;
import
pps.core.base.entity.BaseModelValEnt
;
@Repository
(
value
=
"pps.core.base.mapper.BaseModelValMapper"
)
public
interface
BaseModelValMapper
extends
BaseMapper
<
BaseModelValEnt
>
{
}
C09-base/pps-core-base/src/main/java/pps/core/base/service/BaseDataService.java
View file @
8aaef4c7
package
pps.core.base.service
;
package
pps.core.base.service
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
org.apache.poi.ss.formula.functions.T
;
import
org.springframework.util.CollectionUtils
;
import
pps.core.base.entity.BaseDataEnt
;
import
pps.core.base.entity.BaseDataEnt
;
import
pps.core.base.entity.BaseDataImportLogEnt
;
import
pps.core.base.entity.BaseDataView
;
import
pps.core.base.entity.BaseDataView
;
import
pps.core.base.entity.BaseModelValEnt
;
import
pps.core.base.enums.ImportFieldDic
;
import
pps.core.base.enums.ImportFieldDic
;
import
pps.core.base.mapper.BaseDataImportLogMapper
;
import
pps.core.base.mapper.BaseDataMapper
;
import
pps.core.base.mapper.BaseDataMapper
;
import
pps.core.base.mapper.BaseDataViewMapper
;
import
pps.core.base.mapper.BaseDataViewMapper
;
import
pps.core.base.mapper.BaseModelValMapper
;
import
pps.core.base.service.data.base_data.*
;
import
pps.core.base.service.data.base_data.*
;
import
pps.core.base.service.data.base_line.ImportFileInput
;
import
pps.core.base.service.data.base_line.ImportFileInput
;
import
pps.core.base.utils.HttpUtils
;
import
pps.core.base.utils.HttpUtils
;
...
@@ -92,7 +98,7 @@ public class BaseDataService {
...
@@ -92,7 +98,7 @@ public class BaseDataService {
@XApiAnonymous
@XApiAnonymous
@XApiGet
@XApiGet
public
XListResult
<
QueryBaseDataOutput
>
queryBaseData
(
XContext
context
,
GetBaseDataInput
input
){
public
XListResult
<
QueryBaseDataOutput
>
queryBaseData
Copy
(
XContext
context
,
GetBaseDataInput
input
){
BaseDataMapper
mapper
=
context
.
getBean
(
BaseDataMapper
.
class
);
BaseDataMapper
mapper
=
context
.
getBean
(
BaseDataMapper
.
class
);
QueryWrapper
<
BaseDataEnt
>
queryWrapper
=
new
QueryWrapper
<>();
QueryWrapper
<
BaseDataEnt
>
queryWrapper
=
new
QueryWrapper
<>();
Date
beginTime
;
Date
beginTime
;
...
@@ -120,7 +126,7 @@ public class BaseDataService {
...
@@ -120,7 +126,7 @@ public class BaseDataService {
queryWrapper
.
lambda
().
eq
(
BaseDataEnt:
:
getLineId
,
input
.
getLineId
());
queryWrapper
.
lambda
().
eq
(
BaseDataEnt:
:
getLineId
,
input
.
getLineId
());
queryWrapper
.
lambda
().
orderByAsc
(
BaseDataEnt:
:
getDataDate
);
queryWrapper
.
lambda
().
orderByAsc
(
BaseDataEnt:
:
getDataDate
);
List
<
BaseDataEnt
>
list
=
mapper
.
selectList
(
queryWrapper
);
List
<
BaseDataEnt
>
list
=
mapper
.
selectList
(
queryWrapper
);
CalcBaseDataInput
calcBaseDataInput
=
new
CalcBaseDataInput
(
""
,
input
.
getLineId
()
,
"train_pre"
,
XDateUtils
.
getString
(
beginTime
)
,
XDateUtils
.
getString
(
endTime
));
CalcBaseDataInput
calcBaseDataInput
=
new
CalcBaseDataInput
(
""
,
input
.
getKeyName
()
,
input
.
getLineId
()
,
"train_pre"
,
XDateUtils
.
getString
(
beginTime
)
,
XDateUtils
.
getString
(
endTime
));
Map
<
String
,
Object
>
map
=
getCalcData
(
context
,
calcBaseDataInput
);
Map
<
String
,
Object
>
map
=
getCalcData
(
context
,
calcBaseDataInput
);
list
.
stream
().
forEach
(
item
->{
list
.
stream
().
forEach
(
item
->{
String
dataDate
=
XDateUtils
.
getString
(
item
.
getDataDate
());
String
dataDate
=
XDateUtils
.
getString
(
item
.
getDataDate
());
...
@@ -133,6 +139,68 @@ public class BaseDataService {
...
@@ -133,6 +139,68 @@ public class BaseDataService {
return
XListResult
.
success
(
outputs
);
return
XListResult
.
success
(
outputs
);
}
}
@XApiAnonymous
@XApiGet
public
XListResult
<
QueryBaseDataOutput
>
queryBaseData
(
XContext
context
,
GetBaseDataInput
input
){
BaseDataMapper
mapper
=
context
.
getBean
(
BaseDataMapper
.
class
);
QueryWrapper
<
BaseDataEnt
>
queryWrapper
=
new
QueryWrapper
<>();
BaseDataImportLogMapper
logMapper
=
context
.
getBean
(
BaseDataImportLogMapper
.
class
);
QueryWrapper
<
BaseDataImportLogEnt
>
logEntQueryWrapper
=
new
QueryWrapper
<>();
logEntQueryWrapper
.
lambda
().
eq
(
BaseDataImportLogEnt:
:
getLineId
,
input
.
getLineId
())
.
orderByDesc
(
BaseDataImportLogEnt:
:
getCreateTime
)
.
last
(
" limit 1"
);
BaseDataImportLogEnt
ent
=
logMapper
.
selectOne
(
logEntQueryWrapper
);
List
<
QueryBaseDataOutput
>
outputs
=
new
ArrayList
<>();
if
(
null
!=
ent
){
queryWrapper
.
lambda
().
ge
(
BaseDataEnt:
:
getDataDate
,
ent
.
getBeginDate
());
queryWrapper
.
lambda
().
le
(
BaseDataEnt:
:
getDataDate
,
ent
.
getEndDate
());
queryWrapper
.
lambda
().
eq
(
BaseDataEnt:
:
getLineId
,
input
.
getLineId
());
queryWrapper
.
lambda
().
orderByAsc
(
BaseDataEnt:
:
getDataDate
);
List
<
BaseDataEnt
>
list
=
mapper
.
selectList
(
queryWrapper
);
outputs
=
XCopyUtils
.
copyNewList
(
list
,
QueryBaseDataOutput
.
class
);
}
return
XListResult
.
success
(
outputs
);
}
@XApiAnonymous
@XApiGet
@XText
(
"获取预测数据"
)
public
XListResult
<
GetBaseDataOutput
>
queryPreBaseData
(
XContext
context
,
GetBaseDataInput
input
){
BaseDataImportLogMapper
logMapper
=
context
.
getBean
(
BaseDataImportLogMapper
.
class
);
QueryWrapper
<
BaseDataImportLogEnt
>
logEntQueryWrapper
=
new
QueryWrapper
<>();
logEntQueryWrapper
.
lambda
().
eq
(
BaseDataImportLogEnt:
:
getLineId
,
input
.
getLineId
())
.
orderByDesc
(
BaseDataImportLogEnt:
:
getCreateTime
)
.
last
(
" limit 1"
);
BaseDataImportLogEnt
ent
=
logMapper
.
selectOne
(
logEntQueryWrapper
);
List
<
GetBaseDataOutput
>
outputs
=
new
ArrayList
<>();
if
(
ent
!=
null
){
BaseDataMapper
mapper
=
context
.
getBean
(
BaseDataMapper
.
class
);
QueryWrapper
<
BaseDataEnt
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
lambda
().
ge
(
BaseDataEnt:
:
getDataDate
,
ent
.
getBeginDate
());
queryWrapper
.
lambda
().
le
(
BaseDataEnt:
:
getDataDate
,
ent
.
getEndDate
());
queryWrapper
.
lambda
().
eq
(
BaseDataEnt:
:
getLineId
,
input
.
getLineId
());
queryWrapper
.
lambda
().
orderByAsc
(
BaseDataEnt:
:
getDataDate
);
List
<
BaseDataEnt
>
list
=
mapper
.
selectList
(
queryWrapper
);
CalcBaseDataInput
calcBaseDataInput
=
new
CalcBaseDataInput
(
""
,
input
.
getKeyName
()
,
input
.
getLineId
()
,
"train_pre"
,
XDateUtils
.
getString
(
ent
.
getBeginDate
()),
XDateUtils
.
getString
(
ent
.
getEndDate
()));
Map
<
String
,
Object
>
map
=
getCalcData
(
context
,
calcBaseDataInput
);
// for(String key : map.keySet()) {
// GetBaseDataOutput detailOutput = new GetBaseDataOutput();
// detailOutput.setDataDate(XDateUtils.parse(key));
// detailOutput.setPredictedPower(new BigDecimal(map.get(key).toString()));
// outputs.add(detailOutput);
// }
list
.
stream
().
forEach
(
item
->{
String
dataDate
=
XDateUtils
.
getString
(
item
.
getDataDate
());
if
(
map
.
get
(
dataDate
)
!=
null
&&
XStringUtils
.
isNotEmpty
(
map
.
get
(
dataDate
).
toString
())){
item
.
setPredictedPower
(
new
BigDecimal
(
map
.
get
(
dataDate
).
toString
()));
}
});
outputs
=
XCopyUtils
.
copyNewList
(
list
,
GetBaseDataOutput
.
class
);
}
return
XListResult
.
success
(
outputs
);
}
@XApiAnonymous
@XApiAnonymous
@XApiGet
@XApiGet
public
XPageResult
<
QueryBaseDataOutput
>
queryBaseDataList
(
XContext
context
,
QueryBaseDataInput
input
){
public
XPageResult
<
QueryBaseDataOutput
>
queryBaseDataList
(
XContext
context
,
QueryBaseDataInput
input
){
...
@@ -205,6 +273,14 @@ public class BaseDataService {
...
@@ -205,6 +273,14 @@ public class BaseDataService {
mapper
.
delete
(
queryWrapper
);
mapper
.
delete
(
queryWrapper
);
BaseDataViewMapper
viewMapper
=
context
.
getBean
(
BaseDataViewMapper
.
class
);
BaseDataViewMapper
viewMapper
=
context
.
getBean
(
BaseDataViewMapper
.
class
);
viewMapper
.
batchInsert
(
dataList
);
viewMapper
.
batchInsert
(
dataList
);
BaseDataImportLogMapper
logMapper
=
context
.
getBean
(
BaseDataImportLogMapper
.
class
);
BaseDataImportLogEnt
ent
=
new
BaseDataImportLogEnt
();
ent
.
setOuId
(
input
.
getWellOuId
());
ent
.
setLineId
(
input
.
getLineId
());
ent
.
setBeginDate
(
minDate
);
ent
.
setEndDate
(
maxDate
);
ent
.
setCreateTime
(
new
Date
());
logMapper
.
insert
(
ent
);
//进行训练
//进行训练
// CalcBaseDataInput calcBaseDataInput = new CalcBaseDataInput("" , input.getLineId() , "train_val" , XDateUtils.getString(minDate) , XDateUtils.getString(maxDate));
// CalcBaseDataInput calcBaseDataInput = new CalcBaseDataInput("" , input.getLineId() , "train_val" , XDateUtils.getString(minDate) , XDateUtils.getString(maxDate));
// doTrainData(context , calcBaseDataInput);
// doTrainData(context , calcBaseDataInput);
...
@@ -231,7 +307,7 @@ public class BaseDataService {
...
@@ -231,7 +307,7 @@ public class BaseDataService {
return
fieldList
.
stream
().
map
(
x
->((
String
)
x
.
get
(
"col"
))).
collect
(
Collectors
.
toList
());
return
fieldList
.
stream
().
map
(
x
->((
String
)
x
.
get
(
"col"
))).
collect
(
Collectors
.
toList
());
}
}
@XText
(
"
预测算法训练
"
)
@XText
(
"
获取预算
"
)
@XApiGet
@XApiGet
@XApiAnonymous
@XApiAnonymous
public
XServiceResult
calcBaseData
(
XContext
context
,
CalcBaseDataInput
calcBaseDataInput
){
public
XServiceResult
calcBaseData
(
XContext
context
,
CalcBaseDataInput
calcBaseDataInput
){
...
@@ -266,24 +342,61 @@ public class BaseDataService {
...
@@ -266,24 +342,61 @@ public class BaseDataService {
@XApiAnonymous
@XApiAnonymous
@XApiPost
@XApiPost
public
XServiceResult
trainBaseData
(
XContext
context
,
GetBaseDataInput
input
){
@XText
(
"预测算法训练"
)
Date
beginTime
;
public
XServiceResult
trainBaseData
(
XContext
context
,
TrainBaseModelValInput
input
){
Date
endTime
;
BaseDataImportLogMapper
logMapper
=
context
.
getBean
(
BaseDataImportLogMapper
.
class
);
if
(
XStringUtils
.
isEmpty
(
input
.
getDataDate
())){
QueryWrapper
<
BaseDataImportLogEnt
>
logEntQueryWrapper
=
new
QueryWrapper
<>();
beginTime
=
XDateUtils
.
getDayBeginTime
(
new
Date
());
logEntQueryWrapper
.
lambda
().
eq
(
BaseDataImportLogEnt:
:
getLineId
,
input
.
getLineId
())
endTime
=
XDateUtils
.
getDayEndTime
(
new
Date
());
.
orderByDesc
(
BaseDataImportLogEnt:
:
getCreateTime
)
}
else
{
.
last
(
" limit 1"
);
if
(
input
.
getDataDate
().
contains
(
"@"
)){
BaseDataImportLogEnt
ent
=
logMapper
.
selectOne
(
logEntQueryWrapper
);
String
[]
dataDates
=
input
.
getDataDate
().
split
(
"@"
);
if
(
ent
==
null
)
beginTime
=
XDateUtils
.
getDayBeginTime
(
XDateUtils
.
parse
(
dataDates
[
0
]));
return
XServiceResult
.
OK
;
endTime
=
XDateUtils
.
getDayEndTime
(
XDateUtils
.
parse
(
dataDates
[
1
]));
if
(!
CollectionUtils
.
isEmpty
(
input
.
getKeyNames
())){
}
else
{
for
(
String
keyName
:
input
.
getKeyNames
()){
beginTime
=
XDateUtils
.
getDayBeginTime
(
XDateUtils
.
parse
(
input
.
getDataDate
()));
CalcBaseDataInput
calcBaseDataInput
=
new
CalcBaseDataInput
(
""
,
keyName
,
input
.
getLineId
()
,
"train_val"
,
XDateUtils
.
getString
(
ent
.
getBeginDate
())
,
XDateUtils
.
getString
(
ent
.
getEndDate
()));
endTime
=
XDateUtils
.
getDayEndTime
(
XDateUtils
.
parse
(
input
.
getDataDate
()));
doTrainData
(
context
,
calcBaseDataInput
);
}
}
}
CalcBaseDataInput
calcBaseDataInput
=
new
CalcBaseDataInput
(
""
,
input
.
getLineId
()
,
"train_val"
,
XDateUtils
.
getString
(
beginTime
)
,
XDateUtils
.
getString
(
endTime
));
}
else
{
CalcBaseDataInput
calcBaseDataInput
=
new
CalcBaseDataInput
(
""
,
input
.
getKeyName
(),
input
.
getLineId
()
,
"train_val"
,
XDateUtils
.
getString
(
ent
.
getBeginDate
()),
XDateUtils
.
getString
(
ent
.
getEndDate
()));
doTrainData
(
context
,
calcBaseDataInput
);
doTrainData
(
context
,
calcBaseDataInput
);
}
return
XServiceResult
.
OK
;
return
XServiceResult
.
OK
;
}
}
@XApiAnonymous
@XApiGet
@XText
(
"获取最新算法训练数据"
)
public
XSingleResult
<
TrainBaseModelValOutput
>
getTrainBaseData
(
XContext
context
,
GetTrainBaseModelValInput
input
){
BaseModelValMapper
baseModelValMapper
=
context
.
getBean
(
BaseModelValMapper
.
class
);
if
(
input
.
getLineId
()
==
null
)
return
XSingleResult
.
error
(
500
,
"请选择线路"
);
if
(
XStringUtils
.
isEmpty
(
input
.
getKeyNames
()))
return
XSingleResult
.
error
(
500
,
"请选择模型"
);
QueryWrapper
<
BaseModelValEnt
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
lambda
().
eq
(
BaseModelValEnt:
:
getLineId
,
input
.
getLineId
())
.
eq
(
BaseModelValEnt:
:
getKeyname
,
input
.
getKeyNames
())
.
orderByDesc
(
BaseModelValEnt:
:
getCreatetime
).
last
(
" limit 1"
);
BaseModelValEnt
baseModelValEnt
=
baseModelValMapper
.
selectOne
(
queryWrapper
);
TrainBaseModelValOutput
output
=
XCopyUtils
.
copyNewObject
(
baseModelValEnt
,
TrainBaseModelValOutput
.
class
);
if
(
baseModelValEnt
!=
null
&&
XStringUtils
.
isNotEmpty
(
output
.
getYtrue
())
&&
XStringUtils
.
isNotEmpty
(
output
.
getYpred
())){
Map
<
String
,
Object
>
ytrueMap
=
XJsonUtils
.
toMap
(
output
.
getYtrue
().
replace
(
"\\"
,
""
));
Map
<
String
,
Object
>
yPreMap
=
XJsonUtils
.
toMap
(
output
.
getYpred
().
replace
(
"\\"
,
""
));
List
<
TrainBaseModelValDetailOutput
>
list
=
new
ArrayList
<>();
for
(
String
key
:
ytrueMap
.
keySet
()){
TrainBaseModelValDetailOutput
detailOutput
=
new
TrainBaseModelValDetailOutput
();
Date
date
=
new
Date
(
Long
.
valueOf
(
key
));
detailOutput
.
setKey
(
XDateUtils
.
getString
(
date
));
detailOutput
.
setPower
(
ytrueMap
.
get
(
key
).
toString
());
if
(
yPreMap
.
get
(
key
)
!=
null
)
detailOutput
.
setPredictedPower
(
yPreMap
.
get
(
key
).
toString
());
list
.
add
(
detailOutput
);
}
output
.
setList
(
list
);
}
else
{
output
=
new
TrainBaseModelValOutput
();
}
return
XSingleResult
.
success
(
output
);
}
}
}
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/CalcBaseDataInput.java
View file @
8aaef4c7
...
@@ -16,9 +16,9 @@ public class CalcBaseDataInput {
...
@@ -16,9 +16,9 @@ public class CalcBaseDataInput {
public
CalcBaseDataInput
()
{
public
CalcBaseDataInput
()
{
}
}
public
CalcBaseDataInput
(
String
ou_id
,
Integer
line_id
,
String
stape
,
String
startime
,
String
endtime
)
{
public
CalcBaseDataInput
(
String
ou_id
,
String
keyName
,
Integer
line_id
,
String
stape
,
String
startime
,
String
endtime
)
{
this
.
ou_id
=
ou_id
;
this
.
ou_id
=
ou_id
;
this
.
keyName
=
"model_xgb"
;
this
.
keyName
=
keyName
;
this
.
line_id
=
line_id
;
this
.
line_id
=
line_id
;
this
.
stape
=
stape
;
this
.
stape
=
stape
;
this
.
startime
=
startime
;
this
.
startime
=
startime
;
...
...
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/GetBaseDataInput.java
View file @
8aaef4c7
...
@@ -18,6 +18,8 @@ public class GetBaseDataInput {
...
@@ -18,6 +18,8 @@ public class GetBaseDataInput {
@XText
(
"日期"
)
@XText
(
"日期"
)
private
String
dataDate
;
private
String
dataDate
;
private
String
keyName
;
public
Integer
getId
()
{
public
Integer
getId
()
{
return
id
;
return
id
;
}
}
...
@@ -49,4 +51,12 @@ public class GetBaseDataInput {
...
@@ -49,4 +51,12 @@ public class GetBaseDataInput {
public
void
setDataDate
(
String
dataDate
)
{
public
void
setDataDate
(
String
dataDate
)
{
this
.
dataDate
=
dataDate
;
this
.
dataDate
=
dataDate
;
}
}
public
String
getKeyName
()
{
return
keyName
;
}
public
void
setKeyName
(
String
keyName
)
{
this
.
keyName
=
keyName
;
}
}
}
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/GetTrainBaseModelValInput.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.service.data.base_data
;
import
xstartup.annotation.XText
;
import
java.util.List
;
public
class
GetTrainBaseModelValInput
{
private
Integer
id
;
private
String
keyNames
;
@XText
(
"组织id"
)
private
String
ouId
;
@XText
(
"线路id"
)
private
Integer
lineId
;
@XText
(
"日期"
)
private
String
dataDate
;
public
Integer
getId
()
{
return
id
;
}
public
void
setId
(
Integer
id
)
{
this
.
id
=
id
;
}
public
String
getOuId
()
{
return
ouId
;
}
public
void
setOuId
(
String
ouId
)
{
this
.
ouId
=
ouId
;
}
public
Integer
getLineId
()
{
return
lineId
;
}
public
void
setLineId
(
Integer
lineId
)
{
this
.
lineId
=
lineId
;
}
public
String
getDataDate
()
{
return
dataDate
;
}
public
void
setDataDate
(
String
dataDate
)
{
this
.
dataDate
=
dataDate
;
}
public
String
getKeyNames
()
{
return
keyNames
;
}
public
void
setKeyNames
(
String
keyNames
)
{
this
.
keyNames
=
keyNames
;
}
}
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/TrainBaseModelValDetailOutput.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.service.data.base_data
;
import
xstartup.annotation.XText
;
import
java.util.Date
;
import
java.util.List
;
public
class
TrainBaseModelValDetailOutput
{
private
String
key
;
private
String
predictedPower
;
private
String
power
;
public
String
getKey
()
{
return
key
;
}
public
void
setKey
(
String
key
)
{
this
.
key
=
key
;
}
public
String
getPredictedPower
()
{
return
predictedPower
;
}
public
void
setPredictedPower
(
String
predictedPower
)
{
this
.
predictedPower
=
predictedPower
;
}
public
String
getPower
()
{
return
power
;
}
public
void
setPower
(
String
power
)
{
this
.
power
=
power
;
}
}
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/TrainBaseModelValInput.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.service.data.base_data
;
import
xstartup.annotation.XText
;
import
java.util.List
;
public
class
TrainBaseModelValInput
{
private
Integer
id
;
private
String
keyName
;
private
List
<
String
>
keyNames
;
@XText
(
"组织id"
)
private
String
ouId
;
@XText
(
"线路id"
)
private
Integer
lineId
;
@XText
(
"日期"
)
private
String
dataDate
;
public
Integer
getId
()
{
return
id
;
}
public
void
setId
(
Integer
id
)
{
this
.
id
=
id
;
}
public
String
getOuId
()
{
return
ouId
;
}
public
void
setOuId
(
String
ouId
)
{
this
.
ouId
=
ouId
;
}
public
Integer
getLineId
()
{
return
lineId
;
}
public
void
setLineId
(
Integer
lineId
)
{
this
.
lineId
=
lineId
;
}
public
String
getDataDate
()
{
return
dataDate
;
}
public
void
setDataDate
(
String
dataDate
)
{
this
.
dataDate
=
dataDate
;
}
public
List
<
String
>
getKeyNames
()
{
return
keyNames
;
}
public
void
setKeyNames
(
List
<
String
>
keyNames
)
{
this
.
keyNames
=
keyNames
;
}
public
String
getKeyName
()
{
return
keyName
;
}
public
void
setKeyName
(
String
keyName
)
{
this
.
keyName
=
keyName
;
}
}
C09-base/pps-core-base/src/main/java/pps/core/base/service/data/base_data/TrainBaseModelValOutput.java
0 → 100644
View file @
8aaef4c7
package
pps.core.base.service.data.base_data
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
xstartup.annotation.XText
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
public
class
TrainBaseModelValOutput
{
@XText
(
"实际数据"
)
private
String
ytrue
;
@XText
(
"预测数据"
)
private
String
ypred
;
@TableField
private
String
mae
;
@TableField
private
String
rmse
;
@TableField
private
String
r2
;
@XText
(
"训练模式"
)
private
String
keyname
;
@XText
(
"线路"
)
private
Integer
lineId
;
private
String
stape
;
@XText
(
"开始时间"
)
private
String
startime
;
@XText
(
"结束时间"
)
private
String
endtime
;
private
String
taget
;
private
String
timecol
;
private
String
features
;
private
String
modelpath
;
private
String
paramKeys
;
@XText
(
"id"
)
private
BigDecimal
id
;
@XText
(
"创建时间"
)
private
Date
createTime
;
private
List
<
TrainBaseModelValDetailOutput
>
list
;
public
String
getYtrue
()
{
return
ytrue
;
}
public
void
setYtrue
(
String
ytrue
)
{
this
.
ytrue
=
ytrue
;
}
public
String
getYpred
()
{
return
ypred
;
}
public
void
setYpred
(
String
ypred
)
{
this
.
ypred
=
ypred
;
}
public
String
getMae
()
{
return
mae
;
}
public
void
setMae
(
String
mae
)
{
this
.
mae
=
mae
;
}
public
String
getRmse
()
{
return
rmse
;
}
public
void
setRmse
(
String
rmse
)
{
this
.
rmse
=
rmse
;
}
public
String
getR2
()
{
return
r2
;
}
public
void
setR2
(
String
r2
)
{
this
.
r2
=
r2
;
}
public
String
getKeyname
()
{
return
keyname
;
}
public
void
setKeyname
(
String
keyname
)
{
this
.
keyname
=
keyname
;
}
public
Integer
getLineId
()
{
return
lineId
;
}
public
void
setLineId
(
Integer
lineId
)
{
this
.
lineId
=
lineId
;
}
public
String
getStape
()
{
return
stape
;
}
public
void
setStape
(
String
stape
)
{
this
.
stape
=
stape
;
}
public
String
getStartime
()
{
return
startime
;
}
public
void
setStartime
(
String
startime
)
{
this
.
startime
=
startime
;
}
public
String
getEndtime
()
{
return
endtime
;
}
public
void
setEndtime
(
String
endtime
)
{
this
.
endtime
=
endtime
;
}
public
String
getTaget
()
{
return
taget
;
}
public
void
setTaget
(
String
taget
)
{
this
.
taget
=
taget
;
}
public
String
getTimecol
()
{
return
timecol
;
}
public
void
setTimecol
(
String
timecol
)
{
this
.
timecol
=
timecol
;
}
public
String
getFeatures
()
{
return
features
;
}
public
void
setFeatures
(
String
features
)
{
this
.
features
=
features
;
}
public
String
getModelpath
()
{
return
modelpath
;
}
public
void
setModelpath
(
String
modelpath
)
{
this
.
modelpath
=
modelpath
;
}
public
String
getParamKeys
()
{
return
paramKeys
;
}
public
void
setParamKeys
(
String
paramKeys
)
{
this
.
paramKeys
=
paramKeys
;
}
public
BigDecimal
getId
()
{
return
id
;
}
public
void
setId
(
BigDecimal
id
)
{
this
.
id
=
id
;
}
public
Date
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
Date
createTime
)
{
this
.
createTime
=
createTime
;
}
public
List
<
TrainBaseModelValDetailOutput
>
getList
()
{
return
list
;
}
public
void
setList
(
List
<
TrainBaseModelValDetailOutput
>
list
)
{
this
.
list
=
list
;
}
}
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