Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit b2c15dd3
由
zshaohui
编写于
2023-03-31 16:51:31 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1.看板增加7天出入库统计数量
2.出入库数量计算修改
1 个父辈
9a8217b9
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
83 行增加
和
15 行删除
src/main/java/com/neotel/smfcore/core/device/util/DataCache.java
src/main/java/com/neotel/smfcore/core/inout/service/manager/IInOutDataManager.java
src/main/java/com/neotel/smfcore/core/inout/service/manager/impl/InOutDataManagerImpl.java
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/KanbanController.java
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/ExpireDto.java → src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/dto/ExpireDto.java
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/dto/InOutDataDto.java
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/SluggishDto.java → src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/dto/SluggishDto.java
src/main/java/com/neotel/smfcore/core/device/util/DataCache.java
查看文件 @
b2c15dd
...
...
@@ -36,6 +36,7 @@ import com.neotel.smfcore.core.system.util.DevicesStatusUtil;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Repository
;
...
...
@@ -913,7 +914,7 @@ public class DataCache {
}
private
InOutData
getLastSaveInOutData
(
String
cid
,
String
storageId
)
{
InOutData
inOutData
=
inOutDataManager
.
findOneBy
Query
(
new
Query
(
Criteria
.
where
(
"cid"
).
is
(
cid
).
and
(
"storageId"
).
is
(
storageId
))
);
InOutData
inOutData
=
inOutDataManager
.
findOneBy
CidAndStorageId
(
cid
,
storageId
);
if
(
inOutData
==
null
)
{
inOutData
=
new
InOutData
();
}
else
{
...
...
src/main/java/com/neotel/smfcore/core/inout/service/manager/IInOutDataManager.java
查看文件 @
b2c15dd
...
...
@@ -5,9 +5,12 @@ import com.neotel.smfcore.core.inout.service.po.InOutData;
import
org.springframework.data.mongodb.core.query.Query
;
import
java.util.Date
;
import
java.util.List
;
public
interface
IInOutDataManager
extends
IBaseManager
<
InOutData
>
{
InOutData
findOneByDate
(
Date
startDate
,
Date
endDate
);
List
<
InOutData
>
findByDate
(
Date
startDate
,
Date
endDate
);
InOutData
findOneByQuery
(
Query
query
);
InOutData
findOne
(
Query
query
);
InOutData
findOneByCidAndStorageId
(
String
cid
,
String
storageId
);
}
src/main/java/com/neotel/smfcore/core/inout/service/manager/impl/InOutDataManagerImpl.java
查看文件 @
b2c15dd
...
...
@@ -48,19 +48,21 @@ public class InOutDataManagerImpl implements IInOutDataManager {
}
@Override
public
InOutData
findOne
ByDate
(
Date
startDate
,
Date
endDate
)
{
public
List
<
InOutData
>
find
ByDate
(
Date
startDate
,
Date
endDate
)
{
Query
q
=
new
Query
();
Criteria
c
=
Criteria
.
where
(
"createDate"
).
gte
(
startDate
);
if
(
endDate
!=
null
){
c
.
and
(
"createDate"
).
lt
(
endDate
);
}
Criteria
c
=
Criteria
.
where
(
"createDate"
).
gte
(
startDate
).
lt
(
endDate
);
Sort
s
=
Sort
.
by
(
Sort
.
Direction
.
DESC
,
"createDate"
);
return
inOutDataDao
.
find
One
(
q
.
addCriteria
(
c
).
with
(
s
));
return
inOutDataDao
.
find
ByQuery
(
q
.
addCriteria
(
c
).
with
(
s
));
}
@Override
public
InOutData
findOneByQuery
(
Query
query
)
{
query
.
with
(
Sort
.
by
(
Sort
.
Direction
.
DESC
,
"createDate"
));
public
InOutData
findOne
(
Query
query
)
{
return
inOutDataDao
.
findOne
(
query
);
}
@Override
public
InOutData
findOneByCidAndStorageId
(
String
cid
,
String
storageId
)
{
Query
query
=
new
Query
(
Criteria
.
where
(
"cid"
).
is
(
cid
).
and
(
"storageId"
).
is
(
storageId
)).
with
(
Sort
.
by
(
Sort
.
Direction
.
DESC
,
"createDate"
));
return
inOutDataDao
.
findOne
(
query
);
}
}
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/KanbanController.java
查看文件 @
b2c15dd
...
...
@@ -3,11 +3,14 @@ package com.neotel.smfcore.custom.sungya20456.kanban;
import
com.neotel.smfcore.common.utils.DateUtil
;
import
com.neotel.smfcore.core.barcode.service.po.Barcode
;
import
com.neotel.smfcore.core.device.util.DataCache
;
import
com.neotel.smfcore.core.inout.service.manager.IInOutDataManager
;
import
com.neotel.smfcore.core.inout.service.po.InOutData
;
import
com.neotel.smfcore.core.storage.service.manager.IStoragePosManager
;
import
com.neotel.smfcore.core.storage.service.po.Storage
;
import
com.neotel.smfcore.core.storage.service.po.StoragePos
;
import
com.neotel.smfcore.custom.sungya20456.kanban.bean.ExpireDto
;
import
com.neotel.smfcore.custom.sungya20456.kanban.bean.SluggishDto
;
import
com.neotel.smfcore.custom.sungya20456.kanban.bean.dto.ExpireDto
;
import
com.neotel.smfcore.custom.sungya20456.kanban.bean.dto.InOutDataDto
;
import
com.neotel.smfcore.custom.sungya20456.kanban.bean.dto.SluggishDto
;
import
com.neotel.smfcore.security.annotation.AnonymousAccess
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -18,9 +21,11 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Slf4j
...
...
@@ -35,6 +40,9 @@ public class KanbanController {
@Autowired
private
DataCache
dataCache
;
@Autowired
private
IInOutDataManager
inOutDataManager
;
@ApiOperation
(
"过期信息"
)
@RequestMapping
(
"/getExpiredInfo"
)
@AnonymousAccess
...
...
@@ -112,4 +120,40 @@ public class KanbanController {
}
return
usage
;
}
@ApiOperation
(
"近7日出入库统计"
)
@RequestMapping
(
"/getServenInOutData"
)
@AnonymousAccess
public
InOutDataDto
getServenInOutData
()
{
InOutDataDto
dto
=
new
InOutDataDto
();
List
<
String
>
dateStrList
=
new
ArrayList
<>();
List
<
Integer
>
inDataList
=
new
ArrayList
<>();
List
<
Integer
>
outDataList
=
new
ArrayList
<>();
int
days
=
7
;
//1.获取当前日期
String
currentDateStr
=
DateUtil
.
toDateString
(
new
Date
(),
"yyyy-MM-dd"
);
Date
currentDate
=
DateUtil
.
toDate
(
currentDateStr
,
"yyyy-MM-dd"
);
//2.开始处理 7天数据
for
(
int
day
=
1
;
day
<=
days
;
day
++)
{
Date
startDate
=
DateUtil
.
addDays
(
currentDate
,
day
-
days
);
Date
endDate
=
DateUtil
.
addDays
(
currentDate
,
day
-
days
+
1
);
List
<
InOutData
>
inOutDataList
=
inOutDataManager
.
findByDate
(
startDate
,
endDate
);
int
inData
=
0
;
int
outData
=
0
;
if
(
inOutDataList
!=
null
&&
!
inOutDataList
.
isEmpty
())
{
inData
=
inOutDataList
.
stream
().
mapToInt
(
InOutData
::
getInCount
).
sum
();
outData
=
inOutDataList
.
stream
().
mapToInt
(
InOutData
::
getOutCount
).
sum
();
}
dateStrList
.
add
(
DateUtil
.
toDateString
(
startDate
,
"MM/dd"
));
inDataList
.
add
(
inData
);
outDataList
.
add
(
outData
);
}
dto
.
setDateStrList
(
dateStrList
);
dto
.
setInDataList
(
inDataList
);
dto
.
setOutDataList
(
outDataList
);
return
dto
;
}
}
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/ExpireDto.java
→
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/
dto/
ExpireDto.java
查看文件 @
b2c15dd
package
com
.
neotel
.
smfcore
.
custom
.
sungya20456
.
kanban
.
bean
;
package
com
.
neotel
.
smfcore
.
custom
.
sungya20456
.
kanban
.
bean
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/dto/InOutDataDto.java
0 → 100644
查看文件 @
b2c15dd
package
com
.
neotel
.
smfcore
.
custom
.
sungya20456
.
kanban
.
bean
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
InOutDataDto
{
@ApiModelProperty
(
"日期集合"
)
private
List
<
String
>
dateStrList
;
@ApiModelProperty
(
"入库数据集合"
)
private
List
<
Integer
>
inDataList
;
@ApiModelProperty
(
"出库数据集合"
)
private
List
<
Integer
>
outDataList
;
}
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/SluggishDto.java
→
src/main/java/com/neotel/smfcore/custom/sungya20456/kanban/bean/
dto/
SluggishDto.java
查看文件 @
b2c15dd
package
com
.
neotel
.
smfcore
.
custom
.
sungya20456
.
kanban
.
bean
;
package
com
.
neotel
.
smfcore
.
custom
.
sungya20456
.
kanban
.
bean
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论