@ -15,6 +15,13 @@ using Nancy.Helpers;
using DBFactory ;
using System.Data ;
using System.Diagnostics.Eventing.Reader ;
using System.Data.SqlClient ;
using WcfInterfaceServer.Properties ;
using System.Runtime ;
using System.Collections ;
using System.Configuration ;
using System.Xml ;
using static WcfControlMonitorLib . CCallService ;
namespace WindowsFormsApp1
{
@ -30,9 +37,9 @@ namespace WindowsFormsApp1
{
//_server = new NancyHost(new Bootstrapper(), new Uri("http://192.168.39.10:8080"));
_ server = new NancyHost ( new Bootstrapper ( ) , new Uri ( address ) ) ;
_ server . Start ( ) ;
_ server . Start ( ) ;
}
public APIChannel ( )
{
@ -53,6 +60,8 @@ namespace WindowsFormsApp1
#region WMS调用, 在此处理,出库以及移库任务 多条任务 任务下发
Post [ "/api/wcs/thirdParty/receiveWmsTask" , true ] = async ( x , ct ) = >
{
dbo . TransBegin ( IsolationLevel . ReadCommitted ) ;
try
{
var body = this . Request . Body ;
@ -75,19 +84,15 @@ namespace WindowsFormsApp1
int isOk = 0 ;
// CCallService.OUT_MOVE_RES outReturn = new CCallService.OUT_MOVE_RES();
foreach ( var task in outdata )
{
{
IO_CONTROL outtask = new IO_CONTROL ( task , wms_wcs . msgTime , task . taskType , wms_wcs . priority . ToString ( ) ) ;
if ( outtask . Insert_IOCONTROL ( ) = = true )
{
outReturn . data + = "ID'" + task . taskId . ToString ( ) + "'任务正常:" ;
}
else
if ( outtask . Insert_IOCONTROL ( ) = = false )
{
isOk + + ;
outReturn . data + = "ID'" + task . taskId . ToString ( ) + "'任务下发失败:" ;
}
}
if ( isOk = = 0 )
{
outReturn . code = 0 ;
@ -103,16 +108,18 @@ namespace WindowsFormsApp1
}
returnJson = Model . JsonHelper . Serializer ( outReturn ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , returnJson , "" ) ;
dbo . TransCommit ( ) ;
return returnJson ;
}
catch ( Exception ex ) {
string errorjson = Model . JsonHelper . Serializer ( new
{
code = 1 ,
code = 1 ,
msg = "WCS解析json异常" ,
data = ex . Message . ToString ( )
} ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , ex . Message . ToString ( ) , "" ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , ex . Message . ToString ( ) , "" ) ;
dbo . TransRollback ( ) ;
return errorjson ;
}
} ;
@ -121,112 +128,338 @@ namespace WindowsFormsApp1
#region WMS调用, 在此处理,取消任务 单条形式
Post [ "/api/wcs/thirdParty/cancelWmsTask" , true ] = async ( x , ct ) = >
{
var body = this . Request . Body ;
int length = ( int ) body . Length ;
byte [ ] data = new byte [ length ] ;
body . Read ( data , 0 , length ) ;
string jsonStr = System . Text . Encoding . Default . GetString ( data ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "收到报文" , jsonStr . ToString ( ) , "" ) ;
CCallService . WMS_WCS_PARAM_CANCEL wms_wcs_cancel = Model . JsonHelper . Deserialize < CCallService . WMS_WCS_PARAM_CANCEL > ( jsonStr ) ;
CCallService . WCS_WMS_PARAM_CANCEL wcs_wms_cancel = new CCallService . WCS_WMS_PARAM_CANCEL ( ) ; //返回的报文
string err = string . Empty ;
string returnJson = string . Empty ;
DataView dv = new DataView ( ) ;
if ( wms_wcs_cancel ! = null )
try
{
switch ( wms_wcs_cancel . method )
var body = this . Request . Body ;
int length = ( int ) body . Length ;
byte [ ] data = new byte [ length ] ;
body . Read ( data , 0 , length ) ;
string jsonStr = System . Text . Encoding . Default . GetString ( data ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "收到报文" , jsonStr . ToString ( ) , "" ) ;
CCallService . WMS_WCS_PARAM_Priority wms_wcs_cancel = Model . JsonHelper . Deserialize < CCallService . WMS_WCS_PARAM_Priority > ( jsonStr ) ;
CCallService . WCS_WMS_PARAM_Priority wcs_wms_cancel = new CCallService . WCS_WMS_PARAM_Priority ( ) ; //返回的报文
string err = string . Empty ;
string returnJson = string . Empty ;
DataView dv = new DataView ( ) ;
if ( wms_wcs_cancel ! = null )
{
case "wms_request_cancel" : //WMS取消任务
CCallService . CANCEL_DATA canceldata = new CCallService . CANCEL_DATA ( ) ;
canceldata = wms_wcs_cancel . data ;
CCallService . CANCEL_RES_DATA cancelReturn = new CCallService . CANCEL_RES_DATA ( ) ;
string sql = "select * from t_manage_task where FID = '" + canceldata . taskId + "' and FPALLETBARCODE = '" + canceldata . containerCode + "'" ;
dv = dbo . ExceSQL ( sql ) . Tables [ 0 ] . DefaultView ;
if ( dv . Count = = 1 )
//CCallService.CANCEL_DATA canceldata = new CCallService.CANCEL_DATA();
//canceldata = wms_wcs_cancel.data;
// CCallService.CANCEL_RES_DATA cancelReturn = new CCallService.CANCEL_RES_DATA();
string sql = "select * from t_manage_task where FID = '" + wms_wcs_cancel . taskId + "'" ;
dv = dbo . ExceSQL ( sql ) . Tables [ 0 ] . DefaultView ;
if ( dv . Count = = 1 )
{
int stepOk = Convert . ToInt32 ( dv [ 0 ] [ "FIntoStepOK" ] ) ; //拆分下发
if ( stepOk = = 0 ) //未拆分
{
int stepOk = Convert . ToInt32 ( dv [ 0 ] [ "FIntoStepOK" ] ) ;
if ( stepOk = = 0 )
try
{
try
sql = "delete from t_manage_task where FMANAGEID = '" + wms_wcs_cancel . taskId + "'" ;
int count = dbo . ExecuteSql ( sql ) ;
if ( count > 0 )
{
sql = "delete from t_manage_task where FMANAGEID = '" + canceldata . taskId + "' and FPALLETBARCODE = '" + canceldata . containerCode + "'" ;
int count = dbo . ExecuteSql ( sql ) ;
if ( count > 0 )
{
cancelReturn . code = "00" ;
cancelReturn . msg = "取消任务成功!" ;
cancelReturn . taskId = cancelReturn . taskId ;
}
else
{
cancelReturn . code = "01" ;
cancelReturn . msg = "取消任务失败,WCS无法删除任务!" ;
cancelReturn . taskId = cancelReturn . taskId ;
}
wcs_wms_cancel . code = 0 ;
wcs_wms_cancel . msg = "" ;
wcs_wms_cancel . data = "" ;
}
catch ( Exc eption ex )
else
{
cancelReturn . code = "01" ;
cancelReturn . msg = "取消任务失败,WCS无法删除任务!" ;
cancelReturn . taskId = cancelReturn . taskId ;
wcs_wms_cancel . code = 1 ;
wcs_wms_cancel . msg = "取消任务失败,WCS无法删除任务!" ;
wcs_wms_cancel . data = "数据库删除数据失败" ;
}
}
els e
catch ( Exception ex )
{
cancelReturn . code = "01" ;
cancelReturn . msg = "取消任务失败,任务已执行! " ;
cancelReturn . taskId = cancelReturn . taskId ;
wcs_wms_cancel . code = 1 ;
wcs_wms_ cancel. msg = "取消任务失败,WCS无法删除任务! " ;
wcs_wms_cancel . data = "" ;
}
}
else if ( dv . Count = = 0 )
else
{
cancelReturn . code = "00" ;
cancelReturn . msg = "取消任务成功,WCS中无此任务!" + canceldata . taskId ;
cancelReturn . taskId = cancelReturn . taskId ;
wcs_wms_cancel . code = 1 ;
wcs_wms_cancel . msg = "取消任务失败,任务已执行!" ;
wcs_wms_cancel . data = "" ;
}
}
else if ( dv . Count = = 0 )
{
wcs_wms_cancel . code = 0 ;
wcs_wms_cancel . msg = "取消任务成功,WCS中无此任务!" + wms_wcs_cancel . taskId ;
wcs_wms_cancel . data = "" ;
}
else
{
wcs_wms_cancel . code = 1 ;
wcs_wms_cancel . msg = "取消任务失败,WCS中有多条相同任务!" ;
wcs_wms_cancel . data = "" ;
}
}
returnJson = Model . JsonHelper . Serializer ( wcs_wms_cancel ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , returnJson , "" ) ;
return returnJson ;
}
catch ( Exception ex )
{
string errorjson = Model . JsonHelper . Serializer ( new
{
code = 1 ,
msg = "WCS解析json异常" ,
data = ex . Message . ToString ( )
} ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , ex . Message . ToString ( ) , "" ) ;
return errorjson ;
}
} ;
#endregion
#region WMS调用, 在此处理,任务优先级 单条形式
Post [ "/api/wcs/thirdParty/changePriorityWmsTask" , true ] = async ( x , ct ) = >
{
try
{
var body = this . Request . Body ;
int length = ( int ) body . Length ;
byte [ ] data = new byte [ length ] ;
body . Read ( data , 0 , length ) ;
string jsonStr = System . Text . Encoding . Default . GetString ( data ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "收到报文" , jsonStr . ToString ( ) , "" ) ;
CCallService . WMS_WCS_PARAM_Priority wms_wcs_cancel = Model . JsonHelper . Deserialize < CCallService . WMS_WCS_PARAM_Priority > ( jsonStr ) ;
CCallService . WCS_WMS_PARAM_CANCEL wcs_wms_cancel = new CCallService . WCS_WMS_PARAM_CANCEL ( ) ; //返回的报文
string returnJson = string . Empty ;
DataView dv = new DataView ( ) ;
if ( wms_wcs_cancel ! = null )
{
//CCallService.CANCEL_DATA canceldata = new CCallService.CANCEL_DATA();
//canceldata = wms_wcs_cancel.data;
// CCallService.CANCEL_RES_DATA cancelReturn = new CCallService.CANCEL_RES_DATA();
string sql = "select * from t_manage_task where FID = '" + wms_wcs_cancel . taskId + "'" ;
dv = dbo . ExceSQL ( sql ) . Tables [ 0 ] . DefaultView ;
if ( dv . Count = = 1 )
{
string sql1 = "updata t_manage_task set F_MonitorTaskLevel=" + wms_wcs_cancel . priority + " where FID = '" + wms_wcs_cancel . taskId + "'" ;
int count = dbo . ExecuteSql ( sql1 ) ;
if ( count > 0 )
{
wcs_wms_cancel . code = 0 ;
wcs_wms_cancel . msg = "" ;
wcs_wms_cancel . data = null ;
}
else
{
cancelReturn . code = "01" ;
cancelReturn . msg = "取消任务失败,WCS中有多条相同任务!相同的条码:" + canceldata . containerCode ;
cancelReturn . taskId = cancelReturn . taskId ;
wcs_wms_ cancel. code = 1 ;
wcs_wms_ cancel. msg = "调整失败,WCS数据库无法调整任务!" ;
wcs_wms_cancel . data = null ;
}
wcs_wms_cancel . data = cancelReturn ;
wcs_wms_cancel . timestamp = DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ;
wcs_wms_cancel . method = wms_wcs_cancel . method ;
break ;
}
else if ( dv . Count > 1 )
{
wcs_wms_cancel . code = 1 ;
wcs_wms_cancel . msg = "任务优先级调整失败,存在多条相同任务号的任务!" ;
wcs_wms_cancel . data = "数据库删除数据失败" ;
}
else {
wcs_wms_cancel . code = 1 ;
wcs_wms_cancel . msg = "任务优先级调整失败,不存在任务!" ;
wcs_wms_cancel . data = "数据库删除数据失败" ;
}
}
return returnJson ;
}
catch ( Exception ex )
{
string errorjson = Model . JsonHelper . Serializer ( new
{
code = 1 ,
msg = "WCS解析json异常" ,
data = ex . Message . ToString ( )
} ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , ex . Message . ToString ( ) , "" ) ;
return errorjson ;
}
} ;
#endregion
#region WMS调用, 在此处理,入库任务 单条形式
Post [ "/api/wcs/thirdParty/deliverWmsInTask" , true ] = async ( x , ct ) = >
{
try
{
var body = this . Request . Body ;
int length = ( int ) body . Length ;
byte [ ] data = new byte [ length ] ;
body . Read ( data , 0 , length ) ;
string jsonStr = System . Text . Encoding . Default . GetString ( data ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "收到报文" , jsonStr . ToString ( ) , "" ) ;
default :
CCallService . WMS_WCS_PARAM_IN wms_wcs = Model . JsonHelper . Deserialize < CCallService . WMS_WCS_PARAM_IN > ( jsonStr ) ;
CCallService . WCS_WMS_PARAM_IN wcs_wms = new CCallService . WCS_WMS_PARAM_IN ( ) ; //返回的报文
string errorjson = Model . JsonHelper . Serializer ( new
{
method = wms_wcs_cancel . method ,
timestamp = DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) ,
data = new
{
code = "11" ,
msg = "WCS解析jason异常"
}
} ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , errorjson , "" ) ;
return errorjson ;
}
string err = string . Empty ;
string returnJson = string . Empty ;
DataView dv = new DataView ( ) ;
if ( wms_wcs ! = null )
{
IO_CONTROL ruku = new IO_CONTROL ( wms_wcs , DateTime . Now . ToString ( "yyyy-MM-dd HH:mm:ss" ) , wms_wcs . priority ) ;
if ( ruku . Insert_IOCONTROL ( ) = = true )
{
wcs_wms . code = 0 ;
wcs_wms . msg = "" ;
wcs_wms . data = null ;
}
else
{
wcs_wms . code = 1 ;
wcs_wms . msg = "入库任务接收失败!" + ruku . error_code ;
wcs_wms . data = null ;
}
}
returnJson = Model . JsonHelper . Serializer ( wcs_wms ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , returnJson , "" ) ;
return returnJson ;
}
catch ( Exception ex ) {
string errorjson = Model . JsonHelper . Serializer ( new
{
code = 1 ,
msg = "WCS解析json异常" ,
data = ex . Message . ToString ( )
} ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , ex . Message . ToString ( ) , "" ) ;
return errorjson ;
}
} ;
#endregion
#region WMS调用, 在此处理,WCS 允许 AGV 可取可放
Post [ "/api/wcs/thirdParty/getStationStatus" , true ] = async ( x , ct ) = >
{
try
{
var body = this . Request . Body ;
int length = ( int ) body . Length ;
byte [ ] data = new byte [ length ] ;
body . Read ( data , 0 , length ) ;
string jsonStr = System . Text . Encoding . Default . GetString ( data ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "收到报文" , jsonStr . ToString ( ) , "" ) ;
CCallService . LCS_WCS_AGVStationStauts wms_wcs = Model . JsonHelper . Deserialize < CCallService . LCS_WCS_AGVStationStauts > ( jsonStr ) ;
CCallService . LCS_WCS_AGVStationStautsBack wcs_wms = new CCallService . LCS_WCS_AGVStationStautsBack ( ) ; //返回的报文
returnJson = Model . JsonHelper . Serializer ( wcs_wms_cancel ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , returnJson , "" ) ;
return returnJson ;
string err = string . Empty ;
string returnJson = string . Empty ;
DataView dv = new DataView ( ) ;
if ( wms_wcs ! = null )
{
StringBuilder sql = new StringBuilder ( ) ;
sql . Clear ( ) ;
sql . Append ( "select * from T_AGVIOStation where F_DeviceIndex=" ) . Append ( wms_wcs . toStation ) ;
DataView dataBackmsg = dbo . ExceSQL ( sql . ToString ( ) ) . Tables [ 0 ] . DefaultView ;
if ( dataBackmsg . Count > 0 ) {
wcs_wms . code = 0 ;
wcs_wms . msg = "" ;
LCS_WCS_AGVStationStautsBackData msg = new LCS_WCS_AGVStationStautsBackData ( ) ;
msg . taskId = wms_wcs . taskId ;
//msg.taskId = dataBackmsg[0]["F_TaskID"].ToString();
wcs_wms . data = msg ;
}
else {
wcs_wms . code = 1 ;
wcs_wms . msg = $"WCS未找到站台{wms_wcs.toStation}信息" ;
}
}
returnJson = Model . JsonHelper . Serializer ( wcs_wms ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , returnJson , "" ) ;
return returnJson ;
}
catch ( Exception ex )
{
string errorjson = Model . JsonHelper . Serializer ( new
{
code = 1 ,
msg = "WCS解析json异常" ,
data = ex . Message . ToString ( )
} ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , ex . Message . ToString ( ) , "" ) ;
return errorjson ;
}
} ;
#endregion
#region WMS调用, LCS 返回 AGV 取放货状态给 WCS 8接口
Post [ "/api/wcs/thirdParty/submitAgvStatus" , true ] = async ( x , ct ) = >
{
try
{
var body = this . Request . Body ;
int length = ( int ) body . Length ;
byte [ ] data = new byte [ length ] ;
body . Read ( data , 0 , length ) ;
string jsonStr = System . Text . Encoding . Default . GetString ( data ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "收到报文" , jsonStr . ToString ( ) , "" ) ;
CCallService . LCS_WCS_AGVStatus wms_wcs = Model . JsonHelper . Deserialize < CCallService . LCS_WCS_AGVStatus > ( jsonStr ) ;
CCallService . LCS_WCS_AGVStatusBack wcs_wms = new CCallService . LCS_WCS_AGVStatusBack ( ) ; //返回的报文
string err = string . Empty ;
string returnJson = string . Empty ;
DataView dv = new DataView ( ) ;
if ( wms_wcs ! = null )
{
StringBuilder sql = new StringBuilder ( ) ;
sql . Clear ( ) ;
sql . Append ( "select * from T_AGVIOStation where F_DeviceIndex=" ) . Append ( wms_wcs . toStation ) ;
DataView dataBackmsg = dbo . ExceSQL ( sql . ToString ( ) ) . Tables [ 0 ] . DefaultView ;
if ( dataBackmsg . Count > 0 )
{
int status = 0 ; //1AGV运动中,2AGV已离开,或者动作完成
if ( wms_wcs . agvTaskStatus = = 2 3 | | wms_wcs . agvTaskStatus = = 2 1 | | wms_wcs . agvTaskStatus = = 5 6 )
{
status = 2 ;
}
else {
status = 1 ;
}
wcs_wms . code = 0 ;
wcs_wms . msg = "" ;
sql . Clear ( ) ;
sql . Append ( "update T_AGVIOStation set F_AGVStatus = " ) . Append ( status ) . Append ( " F_TaskID=" ) . Append ( wms_wcs . taskId ) . Append ( " where F_DeviceIndex=" ) . Append ( wms_wcs . toStation ) ;
dbo . ExceSQL ( sql . ToString ( ) ) ;
LCS_WCS_AGVStatusBackData msg = new LCS_WCS_AGVStatusBackData ( ) ;
msg . taskId = wms_wcs . taskId ;
wcs_wms . data = msg ;
}
else
{
wcs_wms . code = 1 ;
wcs_wms . msg = $"WCS未找到站台{wms_wcs.toStation}信息" ;
}
}
returnJson = Model . JsonHelper . Serializer ( wcs_wms ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , returnJson , "" ) ;
return returnJson ;
}
catch ( Exception ex )
{
string errorjson = Model . JsonHelper . Serializer ( new
{
code = 1 ,
msg = "WCS解析json异常" ,
data = ex . Message . ToString ( )
} ) ;
CommonClassLib . CCarryConvert . WriteLog ( "WEBAPI" , "返回报文" , ex . Message . ToString ( ) , "" ) ;
return errorjson ;
}
} ;
#endregion
#region test
//Post["/STATUS", true] = async (x, ct) =>
//{
@ -307,7 +540,44 @@ namespace WindowsFormsApp1
}
/// <summary>
/// 通过读取XML文档获得DBFactory.dll.config的内容
/// </summary>
/// <returns>appSettings所有key的值</returns>
private static IDictionary GetConfig ( )
{
// Open and parse configuration file for specified
// assembly, returning collection to caller for future
// use outside of this class.
//
try
{
Assembly asm = Assembly . GetCallingAssembly ( ) ;
string cfgFile = asm . Location + ".config" ;
const string nodeName = "appSettings" ;
XmlDocument doc = new XmlDocument ( ) ;
doc . Load ( cfgFile ) ; //20100726
XmlNodeList nodes = doc . GetElementsByTagName ( nodeName ) ;
foreach ( XmlNode node in nodes )
{
if ( node . LocalName = = nodeName )
{
DictionarySectionHandler handler = new DictionarySectionHandler ( ) ;
return ( IDictionary ) handler . Create ( null , null , node ) ;
}
}
}
catch ( Exception ex )
{
throw ( ex ) ;
}
return ( null ) ;
}
#region 向 IO_CONTROL 插入出库倒库任务等
public class IO_CONTROL
{
@ -320,6 +590,7 @@ namespace WindowsFormsApp1
int control_type ;
string warehouse = "1" ;
string tasklevel ;
int needAgv = 0 ;
public StringBuilder error_code = new StringBuilder ( ) ;
StringBuilder sql = new StringBuilder ( ) ;
@ -344,20 +615,29 @@ namespace WindowsFormsApp1
string dTime1 = DateTime . Now . ToString ( "u" ) ;
begintime = dTime1 . Substring ( 0 , dTime1 . Length - 1 ) ;
tasklevel = level ;
needAgv = outdata . carryType = = 2 ? 1 : 0 ;
}
public IO_CONTROL ( CCallService . IN_DATA indata , string time ) //入库
public IO_CONTROL ( CCallService . WMS_WCS_PARAM_IN indata , string time , string level ) //入库
{
error_code . Clear ( ) ;
wms_id = indata . taskId ;
relative_id = - 1 ;
barcode = indata . containerCode ;
startdevice = indata . sourceAddress ;
enddevice = indata . targetAddress ;
if ( indata . taskType = = 2 | | indata . taskType = = 3 )
{ //起点是库位
// startdevice = outdata.startRow.ToString("D2") + "-" + outdata.startColumn.ToString("D2") + "-" + outdata.startLayer.ToString("D2");
enddevice = indata . endNode ;
}
else if ( indata . taskType = = 1 | | indata . taskType = = 4 ) //终点是库位
{
startdevice = indata . startNode ;
enddevice = indata . endRow . ToString ( "D2" ) + "-" + indata . endColumn . ToString ( "D2" ) + "-" + indata . endLayer . ToString ( "D2" ) ;
}
control_type = 1 ;
string dTime1 = DateTime . Now . ToString ( "u" ) ;
begintime = dTime1 . Substring ( 0 , dTime1 . Length - 1 ) ;
tasklevel = indata . tasklevel ;
tasklevel = level ;
}
//检查参数是否正确
@ -480,7 +760,7 @@ namespace WindowsFormsApp1
error_code . Append ( ";" ) . Append ( all_checking [ "START_GATE_NOT_EXIST" ] . des ) ; //起点站台不存在
}
}
#region 校验代码需优化20250310
if ( control_type = = 3 ) //移库任务
{
if ( this . startdevice . Length ! = 8 )
@ -517,7 +797,7 @@ namespace WindowsFormsApp1
}
}
#endregion
#endregion
//检查托盘码
@ -540,9 +820,10 @@ namespace WindowsFormsApp1
try
{
sql . Clear ( ) ;
sql . Append ( string . Format ( "INSERT INTO IO_CONTROL (CONTROL_ID, RELATIVE_CONTROL_ID, MANAGE_ID, STOCK_BARCODE, CONTROL_TASK_TYPE, CONTROL_TASK_LEVEL, START_WAREHOUSE_CODE, START_DEVICE_CODE, END_WAREHOUSE_CODE, END_DEVICE_CODE, CONTROL_BEGIN_TIME,CONTROL_STATUS) " +
sql . Append ( string . Format ( "INSERT INTO IO_CONTROL (CONTROL_ID, RELATIVE_CONTROL_ID, MANAGE_ID, STOCK_BARCODE, CONTROL_TASK_TYPE, CONTROL_TASK_LEVEL," +
" START_WAREHOUSE_CODE, START_DEVICE_CODE, END_WAREHOUSE_CODE, END_DEVICE_CODE, CONTROL_BEGIN_TIME,CONTROL_STATUS,NeedAgv) " +
"VALUES( {0},'{1}','{2}', '{3}', '{4}', '{5}', '{6}', '{7}', '{8}', '{9}', '{10}',{11})" ,
wms_id , - 1 , 0 , barcode , control_type , tasklevel , warehouse , startdevice , warehouse , enddevice , begintime , 0 ) ) ;
wms_id , - 1 , 0 , barcode , control_type , tasklevel , warehouse , startdevice , warehouse , enddevice , begintime , 0 , needAgv ) ) ;
dbo . ExceSQL ( sql . ToString ( ) ) ;
return true ;
}