Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 9f353c5f
由
sunke
编写于
2022-12-20 08:56:13 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
工单详情导出
1 个父辈
7e791420
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
76 行增加
和
38 行删除
src/main/java/com/neotel/smfcore/common/utils/FileUtil.java
src/main/java/com/neotel/smfcore/core/device/rest/DeviceController.java
src/main/java/com/neotel/smfcore/core/message/util/DeviceMessageUtil.java
src/main/java/com/neotel/smfcore/core/order/rest/OrderController.java
src/main/java/com/neotel/smfcore/core/storage/rest/StoragePosController.java
src/main/java/com/neotel/smfcore/custom/tiantong/TianTongApi.java
src/main/java/com/neotel/smfcore/common/utils/FileUtil.java
查看文件 @
9f353c5
...
@@ -262,8 +262,8 @@ public class FileUtil extends cn.hutool.core.io.FileUtil {
...
@@ -262,8 +262,8 @@ public class FileUtil extends cn.hutool.core.io.FileUtil {
response
.
setContentType
(
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
);
response
.
setContentType
(
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
);
response
.
setCharacterEncoding
(
"utf-8"
);
response
.
setCharacterEncoding
(
"utf-8"
);
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
//String fileName = URLEncoder.encode("测试"
, "UTF-8").replaceAll("\\+", "%20");
fileName
=
URLEncoder
.
encode
(
fileName
,
"UTF-8"
).
replaceAll
(
"\\+"
,
"%20"
);
fileName
=
SYS_TEM_DIR
+
fileName
+
".xlsx"
;
//
fileName = SYS_TEM_DIR + fileName + ".xlsx";
response
.
setHeader
(
"Content-disposition"
,
"attachment;filename*=utf-8''"
+
fileName
+
".xlsx"
);
response
.
setHeader
(
"Content-disposition"
,
"attachment;filename*=utf-8''"
+
fileName
+
".xlsx"
);
EasyExcel
.
write
(
response
.
getOutputStream
()).
sheet
(
"Sheet1"
).
head
(
headers
).
doWrite
(
datas
);
EasyExcel
.
write
(
response
.
getOutputStream
()).
sheet
(
"Sheet1"
).
head
(
headers
).
doWrite
(
datas
);
}
}
...
...
src/main/java/com/neotel/smfcore/core/device/rest/DeviceController.java
查看文件 @
9f353c5
...
@@ -330,6 +330,7 @@ public class DeviceController {
...
@@ -330,6 +330,7 @@ public class DeviceController {
DeviceMessageUtil
.
updateLineMsg
(
lineMsg
,
code
,
cids
,
""
,
""
,
null
);
DeviceMessageUtil
.
updateLineMsg
(
lineMsg
,
code
,
cids
,
""
,
""
,
null
);
}
else
{
}
else
{
lineMsg
=
okMsg
;
lineMsg
=
okMsg
;
DeviceMessageUtil
.
lastLineMsg
=
null
;
}
}
return
resultMap
;
return
resultMap
;
}
}
...
...
src/main/java/com/neotel/smfcore/core/message/util/DeviceMessageUtil.java
查看文件 @
9f353c5
...
@@ -29,15 +29,15 @@ public class DeviceMessageUtil {
...
@@ -29,15 +29,15 @@ public class DeviceMessageUtil {
@Autowired
@Autowired
public
void
setDataCache
(
DataCache
dataCache
)
{
public
void
setDataCache
(
DataCache
dataCache
)
{
this
.
dataCache
=
dataCache
;
DeviceMessageUtil
.
dataCache
=
dataCache
;
}
}
@Autowired
@Autowired
public
void
setEquipmentCache
(
EquipmentCache
equipmentCache
)
{
public
void
setEquipmentCache
(
EquipmentCache
equipmentCache
)
{
this
.
equipmentCache
=
equipmentCache
;
DeviceMessageUtil
.
equipmentCache
=
equipmentCache
;
}
}
@Autowired
@Autowired
public
void
setMessageManager
(
IMessageManager
messageManager
)
{
public
void
setMessageManager
(
IMessageManager
messageManager
)
{
this
.
messageManager
=
messageManager
;
DeviceMessageUtil
.
messageManager
=
messageManager
;
}
}
/**
/**
...
...
src/main/java/com/neotel/smfcore/core/order/rest/OrderController.java
查看文件 @
9f353c5
...
@@ -60,6 +60,8 @@ import org.springframework.web.multipart.MultipartFile;
...
@@ -60,6 +60,8 @@ import org.springframework.web.multipart.MultipartFile;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.beans.IntrospectionException
;
import
java.beans.PropertyDescriptor
;
import
java.io.File
;
import
java.io.File
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.text.DateFormat
;
import
java.text.DateFormat
;
...
@@ -275,7 +277,7 @@ public class OrderController {
...
@@ -275,7 +277,7 @@ public class OrderController {
}
}
@ApiOperation
(
"工单详情"
)
@ApiOperation
(
"工单详情"
)
@
Ge
tMapping
(
"/detial/download"
)
@
Reques
tMapping
(
"/detial/download"
)
@PreAuthorize
(
"@el.check('workOrder:detial')"
)
@PreAuthorize
(
"@el.check('workOrder:detial')"
)
@AnonymousAccess
@AnonymousAccess
public
void
detialDownload
(
@RequestParam
(
required
=
false
)
String
id
,
@RequestParam
(
required
=
false
)
String
orderNo
,
HttpServletResponse
response
,
HttpServletRequest
request
)
throws
IOException
{
public
void
detialDownload
(
@RequestParam
(
required
=
false
)
String
id
,
@RequestParam
(
required
=
false
)
String
orderNo
,
HttpServletResponse
response
,
HttpServletRequest
request
)
throws
IOException
{
...
@@ -290,40 +292,32 @@ public class OrderController {
...
@@ -290,40 +292,32 @@ public class OrderController {
if
(
liteOrder
!=
null
)
{
if
(
liteOrder
!=
null
)
{
List
<
List
<
String
>>
header
=
new
ArrayList
<>();
List
<
List
<
String
>>
header
=
new
ArrayList
<>();
Locale
locale
=
request
.
getLocale
();
Locale
locale
=
request
.
getLocale
();
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.barcode"
,
locale
,
"条码编号
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.ri"
,
locale
,
"RI
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.partNumber"
,
locale
,
"物料编号
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.pn"
,
locale
,
"PN
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.proDate"
,
locale
,
"生产日期
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.side"
,
locale
,
"面别
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.expireDate"
,
locale
,
"过期时间
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.tableNo"
,
locale
,
"台车号
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.posName"
,
locale
,
"库位号
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.feederInfo"
,
locale
,
"站位信息
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.lockName"
,
locale
,
"工单号
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.needReelCount"
,
locale
,
"需求盘数
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.amount"
,
locale
,
"数量
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.outReelCount"
,
locale
,
"已出盘数
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.putInTime"
,
locale
,
"首次入库时间
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.needNum"
,
locale
,
"需求数量
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
storagePos.putInDate"
,
locale
,
"入库时间
"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.
order.outNum"
,
locale
,
"已出数量
"
)));
List
<
List
<
Object
>>
dataList
=
new
ArrayList
<>();
List
<
List
<
Object
>>
dataList
=
new
ArrayList
<>();
// for (LiteOrderItem orderItem : liteOrder.getOrderItems()) {
for
(
LiteOrderItem
orderItem
:
liteOrder
.
getOrderItems
())
{
// orderItem.getClass().getField()
// String proDate = pos.getBarcode().getProduceDate() == null ? "" : dateFormat.format(pos.getBarcode().getProduceDate());
List
<
Object
>
data
=
new
ArrayList
<>();
// String expireDate = pos.getBarcode().getExpireDate() == null ? "" : dateFormat.format(pos.getBarcode().getExpireDate());
data
.
add
(
orderItem
.
getRi
());
//
data
.
add
(
orderItem
.
getPn
());
// String putInTime = (pos.getBarcode().getPutInTime() == -1) ? "" : dateFormat.format(new Date(pos.getBarcode().getPutInTime()));
data
.
add
(
orderItem
.
getSide
());
// if(ObjectUtil.isNotEmpty(putInTime)){
data
.
add
(
orderItem
.
getTableNo
());
// putInTime=dateFormat.format(pos.getBarcode().getPutInDate());
data
.
add
(
orderItem
.
getFeederInfo
());
// }
data
.
add
(
orderItem
.
getNeedReelCount
());
//
data
.
add
(
orderItem
.
getOutReelCount
());
// List<Object> data = new ArrayList<>();
data
.
add
(
orderItem
.
getNeedNum
());
// data.add(pos.getBarcode().getBarcode());
data
.
add
(
orderItem
.
getOutNum
());
// data.add(pos.getBarcode().getPartNumber());
dataList
.
add
(
data
);
// data.add(proDate);
}
// data.add(expireDate);
// data.add(pos.getPosName());
// data.add(pos.getBarcode().getLockName());
// data.add(pos.getBarcode().getAmount());
// data.add(putInTime);
// data.add(dateFormat.format(pos.getBarcode().getPutInDate()));
// dataList.add(data);
// }
FileUtil
.
downloadExcel
(
liteOrder
.
getOrderNo
(),
header
,
dataList
,
response
);
FileUtil
.
downloadExcel
(
liteOrder
.
getOrderNo
(),
header
,
dataList
,
response
);
}
}
}
}
...
@@ -571,4 +565,37 @@ public class OrderController {
...
@@ -571,4 +565,37 @@ public class OrderController {
return
ResultBean
.
newOkResult
(
dto
);
return
ResultBean
.
newOkResult
(
dto
);
}
}
public
static
void
main
(
String
[]
args
)
{
Barcode
barcode
=
new
Barcode
();
barcode
.
setBarcode
(
"AAAA"
);
StoragePos
pos
=
new
StoragePos
();
pos
.
setPosName
(
"111"
);
pos
.
setBarcode
(
barcode
);
String
filed
=
"posNames"
;
System
.
out
.
println
(
getFieldValue
(
filed
,
pos
));
}
private
static
Object
getFieldValue
(
String
filedName
,
Object
bean
){
try
{
int
index
=
filedName
.
indexOf
(
"."
);
if
(
index
>
0
){
String
field
=
filedName
.
substring
(
0
,
index
);
Object
obj
=
getFieldValue
(
field
,
bean
);
if
(
obj
==
null
){
return
null
;
}
String
remainField
=
filedName
.
substring
(
index
+
1
);
return
getFieldValue
(
remainField
,
obj
);
}
else
{
PropertyDescriptor
pd
=
new
PropertyDescriptor
(
filedName
,
bean
.
getClass
());
Object
obj
=
pd
.
getReadMethod
().
invoke
(
bean
);
return
obj
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
null
;
}
}
}
src/main/java/com/neotel/smfcore/core/storage/rest/StoragePosController.java
查看文件 @
9f353c5
...
@@ -135,7 +135,7 @@ public class StoragePosController {
...
@@ -135,7 +135,7 @@ public class StoragePosController {
}
}
}
}
}
}
dataCache
.
removeStorage
(
storage
);
log
.
info
(
"开始删除料仓["
+
cid
+
"] 所有位置"
);
log
.
info
(
"开始删除料仓["
+
cid
+
"] 所有位置"
);
storagePosManager
.
removePosByStorageId
(
storage
.
getId
());
storagePosManager
.
removePosByStorageId
(
storage
.
getId
());
log
.
info
(
"删除料仓["
+
cid
+
"] 所有位置完成"
);
log
.
info
(
"删除料仓["
+
cid
+
"] 所有位置完成"
);
...
@@ -176,6 +176,7 @@ public class StoragePosController {
...
@@ -176,6 +176,7 @@ public class StoragePosController {
}
}
}
}
dataCache
.
reloadStorage
(
storage
,
storage
.
getCid
());
return
ResultBean
.
newOkResult
(
""
);
return
ResultBean
.
newOkResult
(
""
);
}
}
...
@@ -200,7 +201,10 @@ public class StoragePosController {
...
@@ -200,7 +201,10 @@ public class StoragePosController {
String
opUser
=
SecurityUtils
.
getCurrentUsername
();
String
opUser
=
SecurityUtils
.
getCurrentUsername
();
log
.
info
(
opUser
+
"清理库位["
+
storagePos
.
getPosName
()
+
"]中的库存"
+
barcode
.
getBarcode
());
log
.
info
(
opUser
+
"清理库位["
+
storagePos
.
getPosName
()
+
"]中的库存"
+
barcode
.
getBarcode
());
taskService
.
addTaskToFinished
(
storagePos
,
null
,
opUser
+
"-clear"
);
taskService
.
addTaskToFinished
(
storagePos
,
null
,
opUser
+
"-clear"
);
Storage
storage
=
dataCache
.
getStorageById
(
storagePos
.
getStorageId
());
dataCache
.
reloadStorage
(
storage
,
storage
.
getCid
());
}
}
return
ResultBean
.
newOkResult
(
""
);
return
ResultBean
.
newOkResult
(
""
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
// return e.getMessage();
// return e.getMessage();
...
...
src/main/java/com/neotel/smfcore/custom/tiantong/TianTongApi.java
查看文件 @
9f353c5
...
@@ -149,6 +149,12 @@ public class TianTongApi extends BaseSmfApiListener {
...
@@ -149,6 +149,12 @@ public class TianTongApi extends BaseSmfApiListener {
DEV_ID
=
storage
.
getName
();
DEV_ID
=
storage
.
getName
();
break
;
break
;
}
}
if
(
Strings
.
isBlank
(
DEV_ID
)){
Storage
storage
=
dataCache
.
getStorageById
(
params
.
getStorageId
());
if
(
storage
!=
null
){
DEV_ID
=
storage
.
getName
();
}
}
paramMap
.
put
(
"DEV_ID"
,
DEV_ID
);
paramMap
.
put
(
"DEV_ID"
,
DEV_ID
);
try
{
try
{
log
.
info
(
barcode
.
getBarcode
()
+
"入库验证,参数"
+
JsonUtil
.
toJsonStr
(
paramMap
));
log
.
info
(
barcode
.
getBarcode
()
+
"入库验证,参数"
+
JsonUtil
.
toJsonStr
(
paramMap
));
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论