Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
刘韬
/
SO20031_TinStorage
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 8fbd789e
由
刘韬
编写于
2023-12-01 14:11:52 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
优化回库流程
1 个父辈
cbc24d7f
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
97 行增加
和
24 行删除
DeviceLibrary/DeviceLibrary/PrinterHelper.cs
DeviceLibrary/DeviceLibrary/ServerCommunication.cs
DeviceLibrary/theMachine/LabelParam.cs
DeviceLibrary/theMachine/MainMachine _Common.cs
DeviceLibrary/theMachine/MainMachine_Labeling.cs
DeviceLibrary/theMachine/MainMachine_Store.cs
DeviceLibrary/DeviceLibrary/PrinterHelper.cs
查看文件 @
8fbd789
...
@@ -52,9 +52,9 @@ namespace DeviceLibrary
...
@@ -52,9 +52,9 @@ namespace DeviceLibrary
data
.
Add
(
"LOT"
,
reel
.
LOT
);
data
.
Add
(
"LOT"
,
reel
.
LOT
);
data
.
Add
(
"EXP"
,
reel
.
EXP
);
data
.
Add
(
"EXP"
,
reel
.
EXP
);
data
.
Add
(
"SN"
,
reel
.
SN
);
data
.
Add
(
"SN"
,
reel
.
SN
);
data
.
Add
(
"Time1"
,
DateTime
.
Now
.
ToString
(
"MM-dd-yyyy HH:mm:ss"
)
);
data
.
Add
(
"Time1"
,
reel
.
Time1
);
data
.
Add
(
"Time2"
,
DateTime
.
Now
.
AddHours
(
4
).
ToString
(
"MM-dd-yyyy HH:mm:ss"
)
);
data
.
Add
(
"Time2"
,
reel
.
Time2
);
data
.
Add
(
"Time3"
,
DateTime
.
Now
.
AddHours
(
5
*
24
+
4
).
ToString
(
"MM-dd-yyyy HH:mm:ss"
)
);
data
.
Add
(
"Time3"
,
reel
.
Time3
);
data
.
Add
(
"datetime"
,
DateTime
.
Now
.
ToString
());
data
.
Add
(
"datetime"
,
DateTime
.
Now
.
ToString
());
LogUtil
.
info
(
$
"打印标签:{reel.ToDetailStr()}"
);
LogUtil
.
info
(
$
"打印标签:{reel.ToDetailStr()}"
);
var
result
=
Print
(
labelname
,
data
,
out
string
msg
);
var
result
=
Print
(
labelname
,
data
,
out
string
msg
);
...
...
DeviceLibrary/DeviceLibrary/ServerCommunication.cs
查看文件 @
8fbd789
...
@@ -666,6 +666,38 @@ namespace DeviceLibrary
...
@@ -666,6 +666,38 @@ namespace DeviceLibrary
return
msg
;
return
msg
;
}
}
public
string
cancelAndDisable
(
string
posId
)
{
string
msg
=
""
;
try
{
Dictionary
<
string
,
string
>
paramMap
=
new
Dictionary
<
string
,
string
>();
paramMap
.
Add
(
"posName"
,
posId
);
string
server
=
GetAddr
(
"/service/store/cancelAndDisable"
,
paramMap
);
DateTime
startTime
=
DateTime
.
Now
;
string
resultStr
=
HttpHelper
.
Get
(
server
);
LogUtil
.
info
(
"cancelAndDisable "
+
FormUtil
.
GetSpanStr
(
DateTime
.
Now
-
startTime
)
+
" 【"
+
server
+
"】【"
+
resultStr
+
"】"
);
ResultData
data
=
JsonHelper
.
DeserializeJsonToObject
<
ResultData
>(
resultStr
);
if
(
data
==
null
)
{
return
msg
=
" cancelAndDisable【 "
+
posId
+
"】 没有收到服务器反馈"
;
}
else
if
(
data
.
code
.
Equals
(
0
).
Equals
(
false
))
{
return
msg
=
" cancelAndDisable【 "
+
posId
+
"】 :"
+
data
.
msg
;
}
return
""
;
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
"cancelAndDisable: "
+
ex
.
ToString
());
}
return
msg
;
}
public
JobInfo
SelfAudit_getNetPos
()
public
JobInfo
SelfAudit_getNetPos
()
{
{
string
msg
=
""
;
string
msg
=
""
;
...
...
DeviceLibrary/theMachine/LabelParam.cs
查看文件 @
8fbd789
...
@@ -57,6 +57,9 @@ namespace DeviceLibrary
...
@@ -57,6 +57,9 @@ namespace DeviceLibrary
public
string
LOT
{
get
;
set
;
}
public
string
LOT
{
get
;
set
;
}
public
string
EXP
{
get
;
set
;
}
public
string
EXP
{
get
;
set
;
}
public
string
SN
{
get
;
set
;
}
public
string
SN
{
get
;
set
;
}
public
string
Time1
{
get
;
set
;
}
public
string
Time2
{
get
;
set
;
}
public
string
Time3
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 数量
/// 数量
/// </summary>
/// </summary>
...
...
DeviceLibrary/theMachine/MainMachine _Common.cs
查看文件 @
8fbd789
...
@@ -51,7 +51,7 @@ namespace DeviceLibrary
...
@@ -51,7 +51,7 @@ namespace DeviceLibrary
Msg
.
add
(
"WaitType."
+
w
.
WaitType
,
w
.
ActionMsg
,
w
.
Data
);
Msg
.
add
(
"WaitType."
+
w
.
WaitType
,
w
.
ActionMsg
,
w
.
Data
);
}
}
});
});
foreach
(
WaitResultInfo
wait
in
MoveInfo
.
WaitList
)
foreach
(
WaitResultInfo
wait
in
MoveInfo
.
WaitList
.
ToArray
()
)
{
{
if
(
wait
.
IsEnd
)
if
(
wait
.
IsEnd
)
{
{
...
...
DeviceLibrary/theMachine/MainMachine_Labeling.cs
查看文件 @
8fbd789
...
@@ -101,6 +101,14 @@ namespace DeviceLibrary
...
@@ -101,6 +101,14 @@ namespace DeviceLibrary
LabelingMoveInfo
.
log
(
$
"获取库位失败,送到NG口:{LabelingMoveInfo.MoveParam.NgMsg}"
);
LabelingMoveInfo
.
log
(
$
"获取库位失败,送到NG口:{LabelingMoveInfo.MoveParam.NgMsg}"
);
return
;
return
;
}
}
if
(
LabelingMoveInfo
.
MoveParam
.
usedCount
>=
1
)
{
LabelingMoveInfo
.
NextMoveStep
(
MoveStep
.
Labeling57
);
Setting_Init
.
Runtime_Step
=
Runtime_StepE
.
LabelPasteFinish
;
RotateEquip
.
TurnToEnd
(
false
);
LabelingMoveInfo
.
log
(
$
"该物料为return物料"
);
return
;
}
PrintTask
=
RobotManage
.
printerHelper
.
PrintLabel
(
LabelingMoveInfo
.
MoveParam
,
Setting_Init
.
Printer_Labelname
);
PrintTask
=
RobotManage
.
printerHelper
.
PrintLabel
(
LabelingMoveInfo
.
MoveParam
,
Setting_Init
.
Printer_Labelname
);
Setting_Init
.
Runtime_Step
=
Runtime_StepE
.
Printed
;
Setting_Init
.
Runtime_Step
=
Runtime_StepE
.
Printed
;
LabelingMoveInfo
.
log
(
"开始打印标签:"
+
LabelingMoveInfo
.
MoveParam
.
ToDetailStr
());
LabelingMoveInfo
.
log
(
"开始打印标签:"
+
LabelingMoveInfo
.
MoveParam
.
ToDetailStr
());
...
@@ -233,7 +241,7 @@ namespace DeviceLibrary
...
@@ -233,7 +241,7 @@ namespace DeviceLibrary
case
MoveStep
.
Labeling12
:
case
MoveStep
.
Labeling12
:
LabelingMoveInfo
.
NextMoveStep
(
MoveStep
.
Labeling13
);
LabelingMoveInfo
.
NextMoveStep
(
MoveStep
.
Labeling13
);
CylinderMove
(
LabelingMoveInfo
,
IO_Type
.
Label_Dock_Back
,
IO_Type
.
Label_Dock_Front
,
IO_VALUE
.
LOW
);
CylinderMove
(
LabelingMoveInfo
,
IO_Type
.
Label_Dock_Back
,
IO_Type
.
Label_Dock_Front
,
IO_VALUE
.
LOW
);
LabelingMoveInfo
.
log
(
"开始贴标"
);
LabelingMoveInfo
.
log
(
"开始贴标
流程
"
);
break
;
break
;
case
MoveStep
.
Labeling13
:
case
MoveStep
.
Labeling13
:
if
(
CameraPointTest
.
TestHasLabelOnDock
(
true
))
if
(
CameraPointTest
.
TestHasLabelOnDock
(
true
))
...
@@ -449,6 +457,19 @@ namespace DeviceLibrary
...
@@ -449,6 +457,19 @@ namespace DeviceLibrary
break
;
break
;
}
}
}
}
}
if
(!
string
.
IsNullOrEmpty
(
rightcode
))
{
var
newcodes
=
rightcode
.
Split
(
'|'
);
codeInfos
=
new
CodeInfo
[
newcodes
.
Length
];
for
(
int
i
=
0
;
i
<
newcodes
.
Length
;
i
++)
{
codeInfos
[
i
]
=
new
CodeInfo
(
newcodes
[
i
],
0
,
0
);
}
rightcode
=
""
;
}
foreach
(
var
cc
in
codeInfos
)
{
//PN[5:0:-1]|BATCH[2:0:-1]|LOT|QTY[2:0:3]|RI|SP[3:0:-1]|EXPDATEdd-MM-yyyy[2:0:-1]|xxx|xxx|xxx|MSL[1:0:-1]
//PN[5:0:-1]|BATCH[2:0:-1]|LOT|QTY[2:0:3]|RI|SP[3:0:-1]|EXPDATEdd-MM-yyyy[2:0:-1]|xxx|xxx|xxx|MSL[1:0:-1]
if
(
cc
.
CodeStr
.
StartsWith
(
"P"
))
//pn
if
(
cc
.
CodeStr
.
StartsWith
(
"P"
))
//pn
code
[
0
]
=
cc
.
CodeStr
;
code
[
0
]
=
cc
.
CodeStr
;
...
@@ -460,9 +481,14 @@ namespace DeviceLibrary
...
@@ -460,9 +481,14 @@ namespace DeviceLibrary
code
[
3
]
=
cc
.
CodeStr
;
code
[
3
]
=
cc
.
CodeStr
;
else
if
(
cc
.
CodeStr
.
StartsWith
(
"2D"
))
//qty
else
if
(
cc
.
CodeStr
.
StartsWith
(
"2D"
))
//qty
code
[
4
]
=
cc
.
CodeStr
;
code
[
4
]
=
cc
.
CodeStr
;
else
if
(
cc
.
CodeStr
.
StartsWith
(
"S"
))
// if (Regex.IsMatch(cc.CodeStr, @"S[A-Za-z\-]*\d+")) //ri
else
if
(
cc
.
CodeStr
.
StartsWith
(
"S"
))
// if (Regex.IsMatch(cc.CodeStr, @"S[A-Za-z\-]*\d+")) //ri
code
[
5
]
=
cc
.
CodeStr
;
code
[
5
]
=
cc
.
CodeStr
;
}
}
reelParam
.
Time1
=
DateTime
.
Now
.
ToString
(
"MM-dd-yyyy HH:mm:ss"
);
reelParam
.
Time2
=
DateTime
.
Now
.
AddHours
(
4
).
ToString
(
"MM-dd-yyyy HH:mm:ss"
);
reelParam
.
Time3
=
DateTime
.
Now
.
AddHours
(
5
*
24
+
4
).
ToString
(
"MM-dd-yyyy HH:mm:ss"
);
code
[
4
]
=
"2D"
+
reelParam
.
Time3
;
if
(
string
.
IsNullOrEmpty
(
rightcode
))
if
(
string
.
IsNullOrEmpty
(
rightcode
))
{
{
if
(
string
.
IsNullOrEmpty
(
code
[
0
]))
if
(
string
.
IsNullOrEmpty
(
code
[
0
]))
...
@@ -497,7 +523,6 @@ namespace DeviceLibrary
...
@@ -497,7 +523,6 @@ namespace DeviceLibrary
reelParam
.
WareCode
=
rightcode
;
reelParam
.
WareCode
=
rightcode
;
reelParam
.
ReeID
=
reelParam
.
SN
;
reelParam
.
ReeID
=
reelParam
.
SN
;
reelParam
.
RFID
=
"S"
+
reelParam
.
SN
;
reelParam
.
RFID
=
"S"
+
reelParam
.
SN
;
return
true
;
return
true
;
}
}
}
}
...
...
DeviceLibrary/theMachine/MainMachine_Store.cs
查看文件 @
8fbd789
...
@@ -194,13 +194,13 @@ namespace DeviceLibrary
...
@@ -194,13 +194,13 @@ namespace DeviceLibrary
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreIn08
);
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreIn08
);
StoreMoveInfo
.
log
(
$
"收到完成贴标NG"
);
StoreMoveInfo
.
log
(
$
"收到完成贴标NG"
);
}
}
else
if
(
StoreMoveInfo
.
MoveParam
.
usedCount
==
1
)
//else if (StoreMoveInfo.MoveParam.usedCount >=
1)
{
//
{
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreIn08
);
//
StoreMoveInfo.NextMoveStep(MoveStep.StoreIn08);
StoreMoveInfo
.
log
(
$
"该物料已入过库"
);
//
StoreMoveInfo.log($"该物料已入过库");
StoreMoveInfo
.
MoveParam
.
IsNg
=
true
;
// StoreMoveInfo.MoveParam.IsNg =
true;
StoreMoveInfo
.
MoveParam
.
NgMsg
=
"The material has been stocked, and is not allowed to stock again."
;
// StoreMoveInfo.MoveParam.NgMsg
= "The material has been stocked, and is not allowed to stock again.";
}
//
}
else
else
{
{
if
(
string
.
IsNullOrEmpty
(
LabelingMoveInfo
.
MoveParam
.
PosID
))
if
(
string
.
IsNullOrEmpty
(
LabelingMoveInfo
.
MoveParam
.
PosID
))
...
@@ -235,7 +235,9 @@ namespace DeviceLibrary
...
@@ -235,7 +235,9 @@ namespace DeviceLibrary
}
}
break
;
break
;
case
MoveStep
.
StoreIn05
:
case
MoveStep
.
StoreIn05
:
if
(
boxTransport
.
IsComplateOrFree
)
if
(!
boxTransport
.
IsComplateOrFree
)
break
;
if
(
StoreMoveInfo
.
MoveParam
.
usedCount
==
0
)
{
{
if
(
StoreMoveInfo
.
MoveParam
.
RFID
.
Length
>
16
)
if
(
StoreMoveInfo
.
MoveParam
.
RFID
.
Length
>
16
)
StoreMoveInfo
.
MoveParam
.
RFID
=
StoreMoveInfo
.
MoveParam
.
RFID
.
Substring
(
0
,
16
);
StoreMoveInfo
.
MoveParam
.
RFID
=
StoreMoveInfo
.
MoveParam
.
RFID
.
Substring
(
0
,
16
);
...
@@ -314,7 +316,7 @@ namespace DeviceLibrary
...
@@ -314,7 +316,7 @@ namespace DeviceLibrary
Z_Axis
.
AbsMove
(
StoreMoveInfo
,
Config
.
Z_Axis_P1
,
Config
.
Z_Axis_P1_speed
);
Z_Axis
.
AbsMove
(
StoreMoveInfo
,
Config
.
Z_Axis_P1
,
Config
.
Z_Axis_P1_speed
);
return
;
return
;
}
}
}
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreIn09
);
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreIn09
);
from
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
RFIDP
);
from
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
RFIDP
);
to
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
StoreMoveInfo
.
MoveParam
.
PosID
);
to
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
StoreMoveInfo
.
MoveParam
.
PosID
);
...
@@ -322,7 +324,6 @@ namespace DeviceLibrary
...
@@ -322,7 +324,6 @@ namespace DeviceLibrary
StoreMoveInfo
.
MoveParam
.
ReelOnFixture
=
true
;
StoreMoveInfo
.
MoveParam
.
ReelOnFixture
=
true
;
boxTransport
.
Start
(
new
BoxStorePosition
(
Config
,
from
,
StoreMoveInfo
.
MoveParam
),
new
BoxStorePosition
(
Config
,
to
,
StoreMoveInfo
.
MoveParam
),
StoreMoveType
.
InStore
,
true
);
boxTransport
.
Start
(
new
BoxStorePosition
(
Config
,
from
,
StoreMoveInfo
.
MoveParam
),
new
BoxStorePosition
(
Config
,
to
,
StoreMoveInfo
.
MoveParam
),
StoreMoveType
.
InStore
,
true
);
StoreMoveInfo
.
log
(
$
"开始转运到入库位置"
);
StoreMoveInfo
.
log
(
$
"开始转运到入库位置"
);
}
break
;
break
;
case
MoveStep
.
StoreIn06
:
case
MoveStep
.
StoreIn06
:
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreIn07
);
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreIn07
);
...
@@ -476,7 +477,7 @@ namespace DeviceLibrary
...
@@ -476,7 +477,7 @@ namespace DeviceLibrary
{
{
ServerCM
.
SendStoreState
(
StoreMoveInfo
.
MoveParam
.
PosID
,
StoreStatus
.
OutStoreBoxEnd
);
ServerCM
.
SendStoreState
(
StoreMoveInfo
.
MoveParam
.
PosID
,
StoreStatus
.
OutStoreBoxEnd
);
bool
issame
=
false
;
bool
issame
=
false
;
string
ds
=
""
;
string
ds
=
""
;
for
(
int
i
=
0
;
i
<
15
;
i
++)
for
(
int
i
=
0
;
i
<
15
;
i
++)
{
{
if
(
RobotManage
.
RFID
.
ReadEPC
(
16
,
out
byte
[]
data
))
if
(
RobotManage
.
RFID
.
ReadEPC
(
16
,
out
byte
[]
data
))
...
@@ -487,16 +488,17 @@ namespace DeviceLibrary
...
@@ -487,16 +488,17 @@ namespace DeviceLibrary
var
mds
=
ds
;
var
mds
=
ds
;
if
(
mds
.
StartsWith
(
"S"
))
if
(
mds
.
StartsWith
(
"S"
))
mds
=
mds
.
Substring
(
1
);
mds
=
mds
.
Substring
(
1
);
if
(
StoreMoveInfo
.
MoveParam
.
WareCode
.
IndexOf
(
mds
)
>-
1
)
if
(
StoreMoveInfo
.
MoveParam
.
WareCode
.
IndexOf
(
mds
)
>
-
1
)
{
{
StoreMoveInfo
.
MoveParam
.
RFID
=
ds
;
StoreMoveInfo
.
MoveParam
.
RFID
=
ds
;
StoreMoveInfo
.
log
(
"读取到 RFID:"
+
ds
+
" , "
+
RobotManage
.
RFID
.
HexBuff
(
data
));
StoreMoveInfo
.
log
(
"读取到 RFID:"
+
ds
+
" , "
+
RobotManage
.
RFID
.
HexBuff
(
data
));
issame
=
true
;
issame
=
true
;
break
;
break
;
}
}
}
}
}
}
if
(!
issame
)
{
if
(!
issame
)
{
if
(
RobotManage
.
RFID2
.
ReadEPC
(
16
,
out
data
))
if
(
RobotManage
.
RFID2
.
ReadEPC
(
16
,
out
data
))
{
{
if
(
data
[
0
]
!=
0xFF
)
if
(
data
[
0
]
!=
0xFF
)
...
@@ -521,24 +523,35 @@ namespace DeviceLibrary
...
@@ -521,24 +523,35 @@ namespace DeviceLibrary
if
(!
issame
)
if
(!
issame
)
{
{
StoreMoveInfo
.
log
(
"读取到的RFID与物料信息不符 读取到 RFID:"
+
ds
);
StoreMoveInfo
.
log
(
"读取到的RFID与物料信息不符 读取到 RFID:"
+
ds
);
Msg
.
add
(
"rfid.nomatch"
,
crc
.
GetString
(
"Res0140"
,
"读取到的RFID与物料信息不符:"
)
+
ds
,
MsgLevel
.
alarm
);
StoreMoveInfo
.
MoveParam
.
OutPosID
=
StoreMoveInfo
.
MoveParam
.
PosID
;
RobotManage
.
UserPause
(
crc
.
GetString
(
"Res0141"
,
"读取到的RFID与物料信息不符"
));
Msg
.
add
(
"rfid.nomatch"
,
crc
.
GetString
(
"Res0140"
,
"读取到的RFID与物料信息不符:"
)
+
ds
,
MsgLevel
.
alarm
);
//RobotManage.UserPause(crc.GetString("Res0141","读取到的RFID与物料信息不符"));
}
}
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreOut12
);
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
StoreOut12
);
from
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
RFIDP
);
from
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
RFIDP
);
to
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
StoreMoveInfo
.
MoveParam
.
OutPosID
);
to
=
CSVPositionReader
<
ACStorePosition
>.
GetPositon
(
StoreMoveInfo
.
MoveParam
.
OutPosID
);
StoreMoveInfo
.
log
(
$
"开始转运出库"
);
StoreMoveInfo
.
MoveParam
.
ReelOnFixture
=
true
;
StoreMoveInfo
.
MoveParam
.
ReelOnFixture
=
true
;
boxTransport
.
Start
(
new
BoxStorePosition
(
Config
,
from
,
StoreMoveInfo
.
MoveParam
),
new
BoxStorePosition
(
Config
,
to
,
StoreMoveInfo
.
MoveParam
),
StoreMoveType
.
OutStore
,
true
);
boxTransport
.
Start
(
new
BoxStorePosition
(
Config
,
from
,
StoreMoveInfo
.
MoveParam
),
new
BoxStorePosition
(
Config
,
to
,
StoreMoveInfo
.
MoveParam
),
StoreMoveType
.
OutStore
,
true
);
StoreMoveInfo
.
log
(
$
"开始转运出库"
);
}
}
break
;
break
;
case
MoveStep
.
StoreOut12
:
case
MoveStep
.
StoreOut12
:
if
(
boxTransport
.
IsComplateOrFree
)
if
(
boxTransport
.
IsComplateOrFree
)
{
{
if
(
StoreMoveInfo
.
MoveParam
.
OutPosID
!=
StoreMoveInfo
.
MoveParam
.
PosID
)
{
ServerCM
.
SendStoreState
(
StoreMoveInfo
.
MoveParam
.
PosID
,
StoreStatus
.
OutStoreBoxEnd
);
ServerCM
.
SendStoreState
(
StoreMoveInfo
.
MoveParam
.
PosID
,
StoreStatus
.
OutStoreBoxEnd
);
ServerCM
.
SendStoreState
(
StoreMoveInfo
.
MoveParam
.
PosID
,
StoreStatus
.
OutStoreEnd
);
ServerCM
.
SendStoreState
(
StoreMoveInfo
.
MoveParam
.
PosID
,
StoreStatus
.
OutStoreEnd
);
StoreMoveInfo
.
log
(
"出库完成"
);
StoreMoveInfo
.
log
(
"出库完成"
);
}
else
{
ServerCM
.
cancelAndDisable
(
StoreMoveInfo
.
MoveParam
.
PosID
);
StoreMoveInfo
.
log
(
"出库NG,自动禁用库位:"
+
StoreMoveInfo
.
MoveParam
.
PosID
);
}
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
Wait
);
StoreMoveInfo
.
NextMoveStep
(
MoveStep
.
Wait
);
OutStoreJobList
.
ClearLastPosid
();
OutStoreJobList
.
ClearLastPosid
();
if
(!
StoreMoveInfo
.
MoveParam
.
IsNg
)
if
(!
StoreMoveInfo
.
MoveParam
.
IsNg
)
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论