예제 #1
0
        public string Handle(string MessageData)
        {
            MTSResultMessage _s;
            MTSMessage       _msg = new CS.BizMetaDataManager.MTS.MTSMessage(MessageData);
            //先落地保存
            bool _ret = SinoBestMTSWriter.SaveBufferData(_msg.PKGuid, _msg.DEPLOYID_TX, _msg.DEPLOYID_RX, "RX接收成功", "", 0, _msg.DataPKG, _msg.PROCMETHOD);

            if (!_ret)
            {
                _s              = new MTSResultMessage();
                _s.PKGuid       = _msg.PKGuid;
                _s.ResultType   = "1";
                _s.ResultMethod = "";
                _s.ResultBody   = "数据存入接收缓存区时失败!";
            }
            else
            {
                //反射类处理
                ISinoBestMTSAdatper _adapter = AdapterLib.GetAdapter(_msg.PROCMETHOD);
                string _excuteRet            = _adapter.Excute(_msg.PKGuid);
                if (_excuteRet == null || _excuteRet == "")
                {
                    _s              = new MTSResultMessage();
                    _s.PKGuid       = _msg.PKGuid;
                    _s.ResultType   = "0";
                    _s.ResultMethod = "";
                    _s.ResultBody   = "处理成功!";
                    SinoBestMTSWriter.ChangeStatus("RX处理成功", _msg.PKGuid, "");
                }
                else
                {
                    _s              = new MTSResultMessage();
                    _s.PKGuid       = _msg.PKGuid;
                    _s.ResultType   = "1";
                    _s.ResultMethod = "";
                    _s.ResultBody   = _excuteRet;
                    SinoBestMTSWriter.ChangeStatus("RX处理失败", _msg.PKGuid, _excuteRet);
                }
            }
            return(_s.CreateMsg());
        }