Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
B
bill-platform
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
赵啸非
bill-platform
Commits
f1f69523
Commit
f1f69523
authored
Jul 24, 2024
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改评价统计更新与组合查询
parent
af286ae6
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
149 additions
and
165 deletions
+149
-165
bill-manager/src/main/java/com/mortals/xhx/module/ph/service/impl/PhQueueStatServiceImpl.java
...ls/xhx/module/ph/service/impl/PhQueueStatServiceImpl.java
+12
-17
bill-manager/src/main/java/com/mortals/xhx/module/pj/service/impl/PjEvaluateStatServiceImpl.java
...xhx/module/pj/service/impl/PjEvaluateStatServiceImpl.java
+102
-146
bill-manager/src/test/java/com/mortals/httpclient/ph/PhQueueStatController.http
...java/com/mortals/httpclient/ph/PhQueueStatController.http
+33
-0
bill-manager/src/test/java/com/mortals/httpclient/system.http
...-manager/src/test/java/com/mortals/httpclient/system.http
+2
-2
No files found.
bill-manager/src/main/java/com/mortals/xhx/module/ph/service/impl/PhQueueStatServiceImpl.java
View file @
f1f69523
...
...
@@ -6,15 +6,11 @@ import com.mortals.framework.exception.AppException;
import
com.mortals.framework.model.OrderCol
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.Result
;
import
com.mortals.xhx.common.code.TimeUnitEnum
;
import
com.mortals.xhx.common.utils.BeanUtil
;
import
com.mortals.xhx.module.ph.model.PhQueueEntity
;
import
com.mortals.xhx.module.ph.model.PhQueueQuery
;
import
com.mortals.xhx.module.ph.model.PhQueueStatQuery
;
import
com.mortals.xhx.module.ph.service.PhQueueService
;
import
com.mortals.xhx.module.pj.model.PjEvaluateEntity
;
import
com.mortals.xhx.module.pj.model.PjEvaluateStatEntity
;
import
com.mortals.xhx.module.pj.model.PjEvaluateStatQuery
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -110,7 +106,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
...
...
@@ -129,7 +125,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity
.
setHallName
(
hallName
);
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
...
...
@@ -147,7 +143,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity
.
setBusiness
(
bussiness
);
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
private
void
updateSiteWindowPhCount
(
String
currentDate
,
PhQueueStatEntity
entity
,
List
<
PhQueueEntity
>
phQueueEntities
)
{
...
...
@@ -165,7 +161,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity
.
setWindowFromnum
(
window
);
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
...
...
@@ -231,7 +227,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity
.
setSectionName
(
split
[
1
]);
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
...
...
@@ -252,7 +248,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity
.
setWindowFromnum
(
split
[
1
]);
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
...
...
@@ -273,7 +269,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity
.
setWindowFromnum
(
split
[
1
]);
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
private
void
updateBusinessAndSectionNameAndWindow
(
PhQueueStatEntity
entity
,
List
<
PhQueueEntity
>
phQueueEntities
)
{
...
...
@@ -296,10 +292,10 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity
.
setWindowFromnum
(
split
[
2
]);
return
phQueueStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdateP
hqueue
StatList
(
saveAndUpdatelist
);
saveUpdateP
j
StatList
(
saveAndUpdatelist
);
}
private
static
PhQueueStatQuery
getPhQueueStatQuery
(
PhQueueStatEntity
entity
)
{
private
PhQueueStatQuery
getPhQueueStatQuery
(
PhQueueStatEntity
entity
)
{
PhQueueStatQuery
phQueueStatQuery
=
new
PhQueueStatQuery
().
siteId
(
entity
.
getSiteId
())
.
year
(
entity
.
getYear
())
.
month
(
entity
.
getMonth
())
...
...
@@ -336,19 +332,18 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
}
private
void
saveUpdateP
hqueue
StatList
(
List
<
PhQueueStatEntity
>
saveAndUpdatelist
)
{
private
void
saveUpdateP
j
StatList
(
List
<
PhQueueStatEntity
>
saveAndUpdatelist
)
{
if
(!
ObjectUtils
.
isEmpty
(
saveAndUpdatelist
))
{
Map
<
Boolean
,
List
<
PhQueueStatEntity
>>
saveUpdateCollect
=
saveAndUpdatelist
.
parallelStream
().
collect
(
Collectors
.
partitioningBy
(
i
->
i
.
newEntity
()));
log
.
info
(
"新增站点
排队部门
统计数据,数量:{}"
,
saveUpdateCollect
.
get
(
true
).
size
());
log
.
info
(
"新增站点
评价
统计数据,数量:{}"
,
saveUpdateCollect
.
get
(
true
).
size
());
if
(!
ObjectUtils
.
isEmpty
(
saveUpdateCollect
.
get
(
true
)))
{
//新增列表
this
.
save
(
saveUpdateCollect
.
get
(
true
));
}
log
.
info
(
"更新站点
排队部门
统计数据,数量:{}"
,
saveUpdateCollect
.
get
(
true
).
size
());
log
.
info
(
"更新站点
评价
统计数据,数量:{}"
,
saveUpdateCollect
.
get
(
true
).
size
());
if
(!
ObjectUtils
.
isEmpty
(
saveUpdateCollect
.
get
(
false
)))
{
//更新列表
this
.
update
(
saveUpdateCollect
.
get
(
true
));
}
...
...
bill-manager/src/main/java/com/mortals/xhx/module/pj/service/impl/PjEvaluateStatServiceImpl.java
View file @
f1f69523
...
...
@@ -6,6 +6,9 @@ import com.mortals.framework.model.PageInfo;
import
com.mortals.framework.model.Result
;
import
com.mortals.xhx.common.code.TimeUnitEnum
;
import
com.mortals.xhx.common.utils.BeanUtil
;
import
com.mortals.xhx.module.ph.model.PhQueueEntity
;
import
com.mortals.xhx.module.ph.model.PhQueueStatEntity
;
import
com.mortals.xhx.module.ph.model.PhQueueStatQuery
;
import
com.mortals.xhx.module.pj.model.PjEvaluateEntity
;
import
com.mortals.xhx.module.pj.model.PjEvaluateQuery
;
import
com.mortals.xhx.module.pj.model.PjEvaluateStatQuery
;
...
...
@@ -81,6 +84,8 @@ public class PjEvaluateStatServiceImpl extends AbstractCRUDServiceImpl<PjEvaluat
updateSiteOptionPjCount
(
currentDate
,
entity
,
pjEvaluateEntities
);
return
Rest
.
ok
();
}
...
...
@@ -122,170 +127,92 @@ public class PjEvaluateStatServiceImpl extends AbstractCRUDServiceImpl<PjEvaluat
private
void
updateSiteSectionNamePjCount
(
String
currentDate
,
PjEvaluateStatEntity
entity
,
List
<
PjEvaluateEntity
>
pjEvaluateEntities
)
{
Map
<
String
,
Long
>
collect
=
pjEvaluateEntities
.
stream
().
collect
(
Collectors
.
groupingBy
(
x
->
x
.
getSectionName
(),
Collectors
.
counting
()));
collect
.
entrySet
().
stream
().
forEach
(
item
->
{
List
<
PjEvaluateStatEntity
>
saveAndUpdatelist
=
collect
.
entrySet
().
stream
().
map
(
item
->
{
String
sectionName
=
item
.
getKey
();
if
(
ObjectUtils
.
isEmpty
(
sectionName
))
return
;
Long
value
=
item
.
getValue
();
log
.
info
(
"更新站点评价统计数据,站点名称:{},日期:{},部门:{},评价数量:{}"
,
entity
.
getSiteName
(),
currentDate
,
entity
.
getSectionName
(),
pjEvaluateEntities
.
size
());
PjEvaluateStatEntity
pjEvaluateStatEntity
=
this
.
selectOne
(
new
PjEvaluateStatQuery
()
.
siteId
(
entity
.
getSiteId
())
.
sectionName
(
sectionName
)
.
year
(
entity
.
getYear
())
.
month
(
entity
.
getMonth
())
.
day
(
entity
.
getDay
()));
if
(
ObjectUtils
.
isEmpty
(
pjEvaluateStatEntity
))
{
//统计当前站点新增所有评价数量
pjEvaluateStatEntity
=
new
PjEvaluateStatEntity
();
pjEvaluateStatEntity
.
initAttrValue
();
pjEvaluateStatEntity
.
setSiteId
(
entity
.
getSiteId
());
pjEvaluateStatEntity
.
setSiteCode
(
entity
.
getSiteCode
());
pjEvaluateStatEntity
.
setSiteName
(
entity
.
getSiteName
());
pjEvaluateStatEntity
.
setSectionName
(
sectionName
);
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setCreateTime
(
new
Date
());
pjEvaluateStatEntity
.
setCreateUserId
(
1L
);
this
.
save
(
pjEvaluateStatEntity
);
}
else
{
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setUpdateTime
(
new
Date
());
pjEvaluateStatEntity
.
setUpdateUserId
(
1L
);
this
.
update
(
pjEvaluateStatEntity
);
}
});
if
(
ObjectUtils
.
isEmpty
(
sectionName
))
return
null
;
PjEvaluateStatQuery
pjEvaluateStatQuery
=
getPhQueueStatQuery
(
entity
);
pjEvaluateStatQuery
.
setSectionName
(
sectionName
);
PjEvaluateStatEntity
pjEvaluateStatEntity
=
getPjEvaluateStatEntity
(
entity
,
item
.
getValue
(),
pjEvaluateStatQuery
);
pjEvaluateStatEntity
.
setSectionName
(
sectionName
);
return
pjEvaluateStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdatePhqueueStatList
(
saveAndUpdatelist
);
}
private
void
updateSiteHallPjCount
(
String
currentDate
,
PjEvaluateStatEntity
entity
,
List
<
PjEvaluateEntity
>
pjEvaluateEntities
)
{
Map
<
String
,
Long
>
collect
=
pjEvaluateEntities
.
stream
().
collect
(
Collectors
.
groupingBy
(
x
->
x
.
getHallName
(),
Collectors
.
counting
()));
collect
.
entrySet
().
stream
().
forEach
(
item
->
{
List
<
PjEvaluateStatEntity
>
saveAndUpdatelist
=
collect
.
entrySet
().
stream
().
map
(
item
->
{
String
hallName
=
item
.
getKey
();
if
(
ObjectUtils
.
isEmpty
(
hallName
))
return
;
Long
value
=
item
.
getValue
();
log
.
info
(
"更新站点评价统计数据,站点名称:{},日期:{},部门:{},评价数量:{}"
,
entity
.
getSiteName
(),
currentDate
,
entity
.
getSectionName
(),
pjEvaluateEntities
.
size
());
PjEvaluateStatEntity
pjEvaluateStatEntity
=
this
.
selectOne
(
new
PjEvaluateStatQuery
()
.
siteId
(
entity
.
getSiteId
())
.
hallName
(
hallName
)
.
year
(
entity
.
getYear
())
.
month
(
entity
.
getMonth
())
.
day
(
entity
.
getDay
()));
if
(
ObjectUtils
.
isEmpty
(
pjEvaluateStatEntity
))
{
//统计当前站点新增所有评价数量
pjEvaluateStatEntity
=
new
PjEvaluateStatEntity
();
pjEvaluateStatEntity
.
initAttrValue
();
pjEvaluateStatEntity
.
setSiteId
(
entity
.
getSiteId
());
pjEvaluateStatEntity
.
setSiteCode
(
entity
.
getSiteCode
());
pjEvaluateStatEntity
.
setSiteName
(
entity
.
getSiteName
());
pjEvaluateStatEntity
.
setHallName
(
hallName
);
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setCreateTime
(
new
Date
());
pjEvaluateStatEntity
.
setCreateUserId
(
1L
);
this
.
save
(
pjEvaluateStatEntity
);
}
else
{
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setUpdateTime
(
new
Date
());
pjEvaluateStatEntity
.
setUpdateUserId
(
1L
);
this
.
update
(
pjEvaluateStatEntity
);
}
});
if
(
ObjectUtils
.
isEmpty
(
hallName
))
return
null
;
//log.info("更新站点评价统计数据,站点名称:{},日期:{},部门:{},评价数量:{}", entity.getSiteName(), currentDate, entity.getSectionName(), pjEvaluateEntities.size());
PjEvaluateStatQuery
pjEvaluateStatQuery
=
getPhQueueStatQuery
(
entity
);
pjEvaluateStatQuery
.
setHallName
(
hallName
);
PjEvaluateStatEntity
pjEvaluateStatEntity
=
getPjEvaluateStatEntity
(
entity
,
item
.
getValue
(),
pjEvaluateStatQuery
);
pjEvaluateStatEntity
.
setHallName
(
hallName
);
return
pjEvaluateStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdatePhqueueStatList
(
saveAndUpdatelist
);
}
private
void
updateSiteWindowPjCount
(
String
currentDate
,
PjEvaluateStatEntity
entity
,
List
<
PjEvaluateEntity
>
pjEvaluateEntities
)
{
Map
<
String
,
Long
>
collect
=
pjEvaluateEntities
.
stream
().
collect
(
Collectors
.
groupingBy
(
x
->
x
.
getWindowFromnum
(),
Collectors
.
counting
()));
collect
.
entrySet
().
stream
().
forEach
(
item
->
{
Map
<
String
,
Long
>
collect
=
pjEvaluateEntities
.
parallelStream
().
collect
(
Collectors
.
groupingBy
(
x
->
x
.
getWindowFromnum
(),
Collectors
.
counting
()));
List
<
PjEvaluateStatEntity
>
saveAndUpdatelist
=
collect
.
entrySet
().
parallelStream
().
map
(
item
->
{
String
windowFromnum
=
item
.
getKey
();
if
(
ObjectUtils
.
isEmpty
(
windowFromnum
))
return
;
Long
value
=
item
.
getValue
();
log
.
info
(
"更新站点评价统计数据,站点名称:{},日期:{},窗口:{},评价数量:{}"
,
entity
.
getSiteName
(),
currentDate
,
entity
.
getWindowFromnum
(),
pjEvaluateEntities
.
size
());
PjEvaluateStatEntity
pjEvaluateStatEntity
=
this
.
selectOne
(
new
PjEvaluateStatQuery
()
.
siteId
(
entity
.
getSiteId
())
.
windowFromnum
(
windowFromnum
)
.
year
(
entity
.
getYear
())
.
month
(
entity
.
getMonth
())
.
day
(
entity
.
getDay
()));
if
(
ObjectUtils
.
isEmpty
(
pjEvaluateStatEntity
))
{
//统计当前站点新增所有评价数量
pjEvaluateStatEntity
=
new
PjEvaluateStatEntity
();
pjEvaluateStatEntity
.
initAttrValue
();
pjEvaluateStatEntity
.
setSiteId
(
entity
.
getSiteId
());
pjEvaluateStatEntity
.
setSiteCode
(
entity
.
getSiteCode
());
pjEvaluateStatEntity
.
setSiteName
(
entity
.
getSiteName
());
pjEvaluateStatEntity
.
setWindowFromnum
(
windowFromnum
);
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setCreateTime
(
new
Date
());
pjEvaluateStatEntity
.
setCreateUserId
(
1L
);
this
.
save
(
pjEvaluateStatEntity
);
}
else
{
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setUpdateTime
(
new
Date
());
pjEvaluateStatEntity
.
setUpdateUserId
(
1L
);
this
.
update
(
pjEvaluateStatEntity
);
}
});
if
(
ObjectUtils
.
isEmpty
(
windowFromnum
))
return
null
;
PjEvaluateStatQuery
pjEvaluateStatQuery
=
getPhQueueStatQuery
(
entity
);
pjEvaluateStatQuery
.
setWindowFromnum
(
windowFromnum
);
PjEvaluateStatEntity
pjEvaluateStatEntity
=
getPjEvaluateStatEntity
(
entity
,
item
.
getValue
(),
pjEvaluateStatQuery
);
pjEvaluateStatEntity
.
setWindowFromnum
(
windowFromnum
);
return
pjEvaluateStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdatePhqueueStatList
(
saveAndUpdatelist
);
}
private
void
updateSiteOptionPjCount
(
String
currentDate
,
PjEvaluateStatEntity
entity
,
List
<
PjEvaluateEntity
>
pjEvaluateEntities
)
{
Map
<
String
,
Long
>
collect
=
pjEvaluateEntities
.
stream
().
collect
(
Collectors
.
groupingBy
(
x
->
x
.
getPjOption
(),
Collectors
.
counting
()));
collect
.
entrySet
().
stream
().
forEach
(
item
->
{
Map
<
String
,
Long
>
collect
=
pjEvaluateEntities
.
parallelStream
().
collect
(
Collectors
.
groupingBy
(
x
->
x
.
getPjOption
(),
Collectors
.
counting
()));
List
<
PjEvaluateStatEntity
>
saveAndUpdatelist
=
collect
.
entrySet
().
parallelStream
().
map
(
item
->
{
String
pjOption
=
item
.
getKey
();
if
(
ObjectUtils
.
isEmpty
(
pjOption
))
return
;
if
(
ObjectUtils
.
isEmpty
(
pjOption
))
return
null
;
Long
value
=
item
.
getValue
();
log
.
info
(
"更新站点评价统计数据,站点名称:{},日期:{},窗口:{},评价数量:{}"
,
entity
.
getSiteName
(),
currentDate
,
entity
.
getWindowFromnum
(),
pjEvaluateEntities
.
size
());
PjEvaluateStatEntity
pjEvaluateStatEntity
=
this
.
selectOne
(
new
PjEvaluateStatQuery
()
.
siteId
(
entity
.
getSiteId
())
.
pjOption
(
pjOption
)
.
year
(
entity
.
getYear
())
.
month
(
entity
.
getMonth
())
.
day
(
entity
.
getDay
()));
if
(
ObjectUtils
.
isEmpty
(
pjEvaluateStatEntity
))
{
//统计当前站点新增所有评价数量
pjEvaluateStatEntity
=
new
PjEvaluateStatEntity
();
pjEvaluateStatEntity
.
initAttrValue
();
pjEvaluateStatEntity
.
setSiteId
(
entity
.
getSiteId
());
pjEvaluateStatEntity
.
setSiteCode
(
entity
.
getSiteCode
());
pjEvaluateStatEntity
.
setSiteName
(
entity
.
getSiteName
());
pjEvaluateStatEntity
.
setPjOption
(
pjOption
);
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setCreateTime
(
new
Date
());
pjEvaluateStatEntity
.
setCreateUserId
(
1L
);
this
.
save
(
pjEvaluateStatEntity
);
}
else
{
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setUpdateTime
(
new
Date
());
pjEvaluateStatEntity
.
setUpdateUserId
(
1L
);
this
.
update
(
pjEvaluateStatEntity
);
}
});
//log.info("更新站点评价统计数据,站点名称:{},日期:{},窗口:{},评价数量:{}", entity.getSiteName(), currentDate, entity.getWindowFromnum(), pjEvaluateEntities.size());
PjEvaluateStatQuery
pjEvaluateStatQuery
=
getPhQueueStatQuery
(
entity
);
pjEvaluateStatQuery
.
setPjOption
(
pjOption
);
PjEvaluateStatEntity
pjEvaluateStatEntity
=
getPjEvaluateStatEntity
(
entity
,
value
,
pjEvaluateStatQuery
);
pjEvaluateStatEntity
.
setPjOption
(
pjOption
);
return
pjEvaluateStatEntity
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
saveUpdatePhqueueStatList
(
saveAndUpdatelist
);
}
private
PjEvaluateStatEntity
getPjEvaluateStatEntity
(
PjEvaluateStatEntity
entity
,
Long
value
,
PjEvaluateStatQuery
phQueueStatQuery
)
{
PjEvaluateStatEntity
pjEvaluateStatEntity
=
this
.
selectOne
(
phQueueStatQuery
);
if
(
ObjectUtils
.
isEmpty
(
pjEvaluateStatEntity
))
{
//统计当前站点新增所有评价数量
pjEvaluateStatEntity
=
new
PjEvaluateStatEntity
();
pjEvaluateStatEntity
.
initAttrValue
();
pjEvaluateStatEntity
.
setSiteId
(
entity
.
getSiteId
());
pjEvaluateStatEntity
.
setSiteCode
(
entity
.
getSiteCode
());
pjEvaluateStatEntity
.
setSiteName
(
entity
.
getSiteName
());
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setCreateTime
(
new
Date
());
pjEvaluateStatEntity
.
setCreateUserId
(
1L
);
}
else
{
pjEvaluateStatEntity
.
setPjCount
(
value
.
intValue
());
pjEvaluateStatEntity
.
setYear
(
entity
.
getYear
());
pjEvaluateStatEntity
.
setMonth
(
entity
.
getMonth
());
pjEvaluateStatEntity
.
setDay
(
entity
.
getDay
());
pjEvaluateStatEntity
.
setUpdateTime
(
new
Date
());
pjEvaluateStatEntity
.
setUpdateUserId
(
1L
);
}
return
pjEvaluateStatEntity
;
}
...
...
@@ -303,4 +230,33 @@ public class PjEvaluateStatServiceImpl extends AbstractCRUDServiceImpl<PjEvaluat
}
return
this
.
getDao
().
getStatList
(
query
,
pageInfo
);
}
private
PjEvaluateStatQuery
getPhQueueStatQuery
(
PjEvaluateStatEntity
entity
)
{
PjEvaluateStatQuery
pjEvaluateStatQuery
=
new
PjEvaluateStatQuery
().
siteId
(
entity
.
getSiteId
())
.
year
(
entity
.
getYear
())
.
month
(
entity
.
getMonth
())
.
day
(
entity
.
getDay
());
return
pjEvaluateStatQuery
;
}
private
void
saveUpdatePhqueueStatList
(
List
<
PjEvaluateStatEntity
>
saveAndUpdatelist
)
{
if
(!
ObjectUtils
.
isEmpty
(
saveAndUpdatelist
))
{
Map
<
Boolean
,
List
<
PjEvaluateStatEntity
>>
saveUpdateCollect
=
saveAndUpdatelist
.
parallelStream
().
collect
(
Collectors
.
partitioningBy
(
i
->
i
.
newEntity
()));
log
.
info
(
"新增站点排队部门统计数据,数量:{}"
,
saveUpdateCollect
.
get
(
true
).
size
());
if
(!
ObjectUtils
.
isEmpty
(
saveUpdateCollect
.
get
(
true
)))
{
//新增列表
this
.
save
(
saveUpdateCollect
.
get
(
true
));
}
log
.
info
(
"更新站点排队部门统计数据,数量:{}"
,
saveUpdateCollect
.
get
(
true
).
size
());
if
(!
ObjectUtils
.
isEmpty
(
saveUpdateCollect
.
get
(
false
)))
{
//更新列表
this
.
update
(
saveUpdateCollect
.
get
(
true
));
}
}
}
}
\ No newline at end of file
bill-manager/src/test/java/com/mortals/httpclient/ph/PhQueueStatController.http
View file @
f1f69523
...
...
@@ -28,6 +28,39 @@ Content-Type: application/json
"size": 10
}
###排队叫号汇总统计列表2
POST {{baseUrl}}/ph/queue/stat/interlist
Content-Type: application/json
{
"timeStart": "2024-06-24",
"timeEnd": "2024-06-24",
"siteId": 1,
"businessList": ["交通违法处理"],
"sectionNameList": ["市公安局"],
"groupList": ["year","month","day","business","sectionName"],
"page": 1,
"size": 10
}
###排队叫号汇总统计列表3
POST {{baseUrl}}/ph/queue/stat/interlist
Content-Type: application/json
{
"siteId": 1,
"month": 6,
"year": 2024,
"businessList": ["交通违法处理"],
"sectionNameList": ["市公安局"],
"groupList": ["year","month","business","sectionName"],
"page": 1,
"size": 10
}
###排队叫号汇总统计更新与保存
...
...
bill-manager/src/test/java/com/mortals/httpclient/system.http
View file @
f1f69523
...
...
@@ -56,8 +56,8 @@ POST {{baseUrl}}/ph/queue/stat/stat
Content-Type: application/json
{
"taketimeStart": "2024-06-
24
",
"taketimeEnd": "2024-0
6-24
"
"taketimeStart": "2024-06-
01
",
"taketimeEnd": "2024-0
7-15
"
}
...
...
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