Пример #1
0
        public string GetRegData(string taxRefNo)
        {
            var reg = new RegistrationManagementRequestStructure
            {
                RequestOperation = RegistrationManagementRequestStructureRequestOperation.RETRIEVE_ENTITY_DETAILS,
                PartyIdentifiers = new[]
                {
                    new RegistrationManagementRequestStructurePartyIdentifier
                    {
                        IdentifierType = "REFERENCE_NO",
                        Value          = taxRefNo
                    }
                }
            };


            return(null);
        }
Пример #2
0
    public string GetTaxpayerRegistrationData(string taxRefNo)
    {
        var reg = new RegistrationManagementRequestStructure
        {
            RequestOperation = RegistrationManagementRequestStructureRequestOperation.RETRIEVE_ENTITY_DETAILS,
            PartyIdentifiers = new[]
            {
                new RegistrationManagementRequestStructurePartyIdentifier
                {
                    IdentifierType = "REFERENCE_NO",
                    Value          = taxRefNo
                }
            }
        };
        var messageId   = Guid.NewGuid();
        var corXml      = Sars.Systems.Serialization.XmlObjectSerializer.GetXmlWithNoDeclaration(reg);
        var soapMessage = FdrCommon.CreateSoapRegistrationQuery(corXml, taxRefNo, messageId.ToString());

        soapMessage = FdrCommon.FormatXml(soapMessage);

        var queueInfo = new QueueInfo
        {
            Manager        = MQConfigurationSettings.RegistrationOutQManagerName,
            Channel        = MQConfigurationSettings.RegistrationOutQChannelName,
            UseManagerName = false,
            Port           = MQConfigurationSettings.RegistrationOutPortNumber,
            HostName       = MQConfigurationSettings.RegistrationOutHostName,
            QueueName      = MQConfigurationSettings.RegistrationOutQName,
            CorrelationId  = messageId.ToString(),
            Message        = soapMessage
        };

        FdrMessaging.SendMessageToQueue(queueInfo);

        return(messageId.ToString());
    }
Пример #3
0
    public XmlElement EnquireRegistration(string taxRefNo)
    {
        var reg = new RegistrationManagementRequestStructure
        {
            RequestOperation = RegistrationManagementRequestStructureRequestOperation.RETRIEVE_ENTITY_DETAILS,
            PartyIdentifiers = new[]
            {
                new RegistrationManagementRequestStructurePartyIdentifier
                {
                    IdentifierType = "REFERENCE_NO",
                    Value          = taxRefNo
                }
            }
        };
        var doc         = new XmlDocument();
        var messageId   = Guid.NewGuid();
        var corXml      = XmlObjectSerializer.GetXmlWithNoDeclaration(reg);
        var soapMessage = FdrCommon.CreateSoapRegistrationQuery(corXml, taxRefNo, messageId.ToString());

        soapMessage = FdrCommon.FormatXml(soapMessage);
        var queueInfo = new QueueInfo {
            Manager        = MQConfigurationSettings.RegistrationOutQManagerName,
            Channel        = MQConfigurationSettings.RegistrationOutQChannelName,
            UseManagerName = false,
            Port           = MQConfigurationSettings.RegistrationOutPortNumber,
            HostName       = MQConfigurationSettings.RegistrationOutHostName,
            QueueName      = MQConfigurationSettings.RegistrationOutQName,
            CorrelationId  = messageId.ToString(),
            Message        = soapMessage
        };
        var message = string.Empty;

        FdrMessaging.SendMessageToQueue(queueInfo);
        Thread.Sleep(1);
        var data = DBReadManager.GetResponse(messageId.ToString());
        var i    = 1;

        while (!data.HasRows && i <= Configurations.QueueResponseTime)
        {
            Thread.Sleep(1);
            i++;
            data = DBReadManager.GetResponse(messageId.ToString());
        }
        if (!data.HasRows && i >= Configurations.QueueResponseTime)
        {
            doc.LoadXml(string.Format("<Errors><Error message=\"{0}\" /></Errors>", Configurations.QueueTimeoutMessage));
            return(doc.DocumentElement);
        }
        if (string.IsNullOrEmpty(message))
        {
            if (Convert.ToInt32(data[0]["ReturnCode"]) != 0)
            {
                message = data[0]["ReturnMessage"].ToString();
                doc.LoadXml(string.Format("<Errors><Error message=\"{0}\" /></Errors>", message));
                return(doc.DocumentElement);
            }
        }
        var xml = data[0]["Message"].ToString();

        doc.LoadXml(xml);
        return(doc.DocumentElement);
    }