Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
J
jyzb_platformV2
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
赵剑炜
jyzb_platformV2
Commits
298c2f96
Commit
298c2f96
authored
Mar 04, 2024
by
赵剑炜
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化线程池
parent
4195fcd3
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
45 行增加
和
28 行删除
+45
-28
TjServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/TjServiceImpl.java
+5
-1
WarehouseWebSocketServer.java
jyzb-biz/src/main/java/com/junmp/jyzb/websocket/WarehouseWebSocketServer.java
+2
-0
PriceSumSummaryMapper.xml
jyzb-biz/src/main/resources/mapper/PriceSumSummaryMapper.xml
+38
-27
没有找到文件。
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/TjServiceImpl.java
View file @
298c2f96
...
...
@@ -38,6 +38,8 @@ import java.lang.reflect.Field;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.concurrent.CompletableFuture
;
import
java.util.concurrent.Executor
;
import
java.util.concurrent.Executors
;
import
java.util.stream.Collectors
;
@Service
...
...
@@ -90,13 +92,15 @@ public class TjServiceImpl implements TjService {
List
<
String
>
orgList
=
inventorySummaryMapper
.
getTotalData
(
String
.
valueOf
(
req
.
getOrgId
()));
List
<
TjOrgEqsDto
>
allData
=
new
ArrayList
<>();
Executor
customExecutor
=
Executors
.
newFixedThreadPool
(
10
);
// 创建一个固定大小的线程池
List
<
CompletableFuture
<
TjOrgEqsDto
>>
futures
=
orgList
.
stream
()
.
map
(
orgId
->
CompletableFuture
.
supplyAsync
(()
->
{
return
inventorySummaryMapper
.
GetInvSum
(
orgId
,
req
.
getTypeIdsList
().
isEmpty
()
?
null
:
req
.
getTypeIdsAsString
(),
req
.
getSizeNameList
().
isEmpty
()
?
null
:
req
.
getSizesAsString
());
}
))
}
,
customExecutor
))
// 使用自定义的 Executor
.
collect
(
Collectors
.
toList
());
CompletableFuture
<
Void
>
allOf
=
CompletableFuture
.
allOf
(
futures
.
toArray
(
new
CompletableFuture
[
0
]));
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/websocket/WarehouseWebSocketServer.java
View file @
298c2f96
...
...
@@ -75,6 +75,8 @@ public class WarehouseWebSocketServer implements WebSocketServerListener {
WsWarehouseReq
deviceData
=
objectMapper
.
readValue
(
text
,
WsWarehouseReq
.
class
);
String
warehouseId
=
deviceData
.
getWarehouseId
();
String
redisExist
=
redisCache
.
get
(
warehouseId
);
deviceData
.
getOrgId
();
if
(
redisExist
!=
null
)
//已有存在数据
{
...
...
jyzb-biz/src/main/resources/mapper/PriceSumSummaryMapper.xml
View file @
298c2f96
...
...
@@ -230,28 +230,40 @@
<select
id=
"TjOrgPriceBySelf"
resultType=
"com.junmp.jyzb.api.bean.dto.TjDto.TjOrgPriceDto"
>
SELECT
t3.org_id,t3.org_code,t3.org_name,t3.d_name,coalesce(t4.start_num,0) as start_num,
coalesce(t4.start_price,0) as start_price,coalesce(t4.end_num,0)as end_num,coalesce(t4.end_price,0) as end_price,
coalesce(t4.add_num,0) as add_num,coalesce(t4.add_price,0) as add_price,
coalesce(t4.destory_num,0) as destory_num,COALESCE(t4.destory_price,0) as destory_price
org_code,
org_name,
org_id,
d_name,
start_num,
start_price,
end_num,
end_price,
destory_num,
destory_price
FROM
( SELECT `org_id`, `org_code`, `org_name`, `d_name` FROM `pub_org` WHERE org_id = #{orgId} ) AS t3
CROSS JOIN (
(
SELECT
t1.start_num,t1.start_price,t2.end_num,t2.end_price,t2.end_num - t1.start_num AS add_num,
t2.end_price - t1.start_price AS add_price, t2.destory_num,t2.destory_price
org_code,
org_name,
org_id,
d_name
FROM
pub_org
WHERE
org_id = #{orgId}
) AS po
JOIN
(
SELECT
SUM(COALESCE ( start_num, 0 )
) AS start_num,
SUM(COALESCE ( start_price, 0 )
) AS start_price
IFNULL(SUM(COALESCE(start_num, 0)), 0
) AS start_num,
IFNULL(SUM(COALESCE(start_price, 0)), 0
) AS start_price
FROM
vie_price_sum_summary vpss
LEFT JOIN pub_org po ON vpss.org_id_int = po.org_id
vie_price_sum_summary
WHERE
vpss.MONTH = 1 and vpss.year=#{year}
AND po.del_flag = 1
AND po.org_id = #{orgId}
create_time >= '2024-01-01 00:00:00' AND create_time
<
'2025-01-01 00:00:00'
AND year = #{year}
AND sum_type = 'year'
AND org_id_int = #{orgId}
<if
test=
"typeIdsList!=null and typeIdsList.size() > 0"
>
and type_id in
<foreach
collection=
"typeIdsList"
item=
"item"
open=
"("
separator=
","
close=
")"
>
...
...
@@ -264,20 +276,20 @@
size_name like CONCAT('%', #{item}, '%')
</foreach>
</if>
) AS t1
CROSS JOIN (
) AS t2 ON 1=1
JOIN
(
SELECT
sum( CASE WHEN vpss.MONTH = MONTH ( CURRENT_DATE ()) THEN COALESCE ( vpss.end_num, 0 ) ELSE 0 END
) AS end_num,
sum( CASE WHEN vpss.MONTH = MONTH ( CURRENT_DATE ()) THEN COALESCE ( vpss.end_price, 0 ) ELSE 0 END
) AS end_price,
sum( CASE WHEN vpss.MONTH = MONTH ( CURRENT_DATE ()) THEN COALESCE ( vpss.destory_num, 0 ) ELSE 0 END
) AS destory_num,
sum( CASE WHEN vpss.MONTH = MONTH ( CURRENT_DATE ()) THEN COALESCE ( vpss.destory_price, 0 ) ELSE 0 END
) AS destory_price
SUM(CASE WHEN vpss.MONTH = MONTH(CURRENT_DATE()) THEN COALESCE(vpss.end_num, 0) ELSE 0 END
) AS end_num,
SUM(CASE WHEN vpss.MONTH = MONTH(CURRENT_DATE()) THEN COALESCE(vpss.end_price, 0) ELSE 0 END
) AS end_price,
SUM(CASE WHEN vpss.MONTH = MONTH(CURRENT_DATE()) THEN COALESCE(vpss.destory_num, 0) ELSE 0 END
) AS destory_num,
SUM(CASE WHEN vpss.MONTH = MONTH(CURRENT_DATE()) THEN COALESCE(vpss.destory_price, 0) ELSE 0 END
) AS destory_price
FROM
vie_price_sum_summary vpss
LEFT JOIN pub_org po ON vpss.org_id_int = po.org_id
WHERE
vpss.`year` = #{year}
AND
po.del_flag = 1
AND
po.org_id
= #{orgId}
create_time >= '2024-01-01 00:00:00' AND create_time
<
'2025-01-01 00:00:00'
AND
year = #{year}
AND
org_id_int
= #{orgId}
<if
test=
"typeIdsList!=null and typeIdsList.size() > 0"
>
and type_id in
<foreach
collection=
"typeIdsList"
item=
"item"
open=
"("
separator=
","
close=
")"
>
...
...
@@ -290,8 +302,7 @@
size_name like CONCAT('%', #{item}, '%')
</foreach>
</if>
) AS t2
) AS t4
) AS t3 ON 1=1;
</select>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论