using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Serialization; namespace RGDWCSServices.WCS { /// 3.1入库任务下发 /// 智能仓储系统(wms)在相关的入库业务流程中,手动启动智能仓储系统(wms)下发的入库任务。并调用入库任务启动接口,将入库站台号发送至表库控制系统(wcs)。表库控制系统(wcs)将该站台的输送机切换为入库模式,若无法切换则返回失败标志。 /// public class startOutTask : HouseBase { /// /// 入参定义 /// [Serializable] public class PARA { private string _wh_id; private string _equip_type; private string _task_no; private string _platform_no; private string _io_wh_sort_code; private string _is_past; private List _loc_list; /// /// 库房编号 /// public string WH_ID { get { return this._wh_id; } set { this._wh_id = value; } } /// /// 出入库原因编号 /// public string IO_WH_SORT_CODE { get { return this._io_wh_sort_code; } set { this._io_wh_sort_code = value; } } /// /// 设备类型 /// 下发库房的设备类型:01单相表 02三相表 03互感器 04采集终端 05周转箱 06通信模块。 /// public string EQUIP_TYPE { get { return this._equip_type; } set { this._equip_type = value; } } /// /// 任务号 /// public string TASK_NO { get { return this._task_no; } set { this._task_no = value; } } /// /// 入库站台号 /// public string PLATFORM_NO { get { return this._platform_no; } set { this._platform_no = value; } } /// /// 是否贴标 /// public string IS_PAST { get { return this._is_past; } set { this._is_past = value; } } /// /// 任务号 /// [XmlArrayItem(ElementName = "LOC")] public List LOC_LIST { get { return this._loc_list; } set { this._loc_list = value; } } } /// /// 出参定义 /// [Serializable] public class DATA : Base.OutPara { } /// /// 入参实体 /// private PARA _inPara; /// /// 出参实体 /// private DATA _outPara; /// /// 构造函数 /// public startOutTask() { this._outPara = new DATA(); } /// /// 通知 /// /// 入参 /// 出参 /// 执行结果 public bool Notify(string sXmlIn, out string sXmlOut) { bool bResult = true; string sResult = string.Empty; sXmlOut = string.Empty; try { this._inPara = this.DeSerialize(sXmlIn); bResult = null != this._inPara; if (!bResult) { sResult = string.Format("入参错误(格式错误)"); return bResult; } //if (_inPara.PLATFORM_NO == "12029") //{ bResult = this.START_OUTTASK(_inPara.WH_ID, _inPara.EQUIP_TYPE, _inPara.TASK_NO, _inPara.PLATFORM_NO, _inPara.IO_WH_SORT_CODE,_inPara.IS_PAST, _inPara.LOC_LIST, sXmlIn, out sResult); //} //else //{ // HiveService.RGDWCSServiceClient ws = new HiveService.RGDWCSServiceClient(); // sXmlOut = ws.startOutTask(sXmlIn); // this._outPara = this.DeSerialize(sXmlOut); // bResult = _outPara.RESULT_FLAG == "1"; //} } catch (Exception ex) { bResult = false; sResult = string.Format(ex.Message); } finally { if (bResult) { this._outPara.RESULT_FLAG = Enum.RESULT_FLAG.Success.ToString("d"); } else { this._outPara.RESULT_FLAG = Enum.RESULT_FLAG.Fail.ToString("d"); } this._outPara.ERROR_INFO = sResult; sXmlOut = this.Serializer(this._outPara); } return bResult; } } }