Beispiel #1
0
        public void FinancialGroupBranchesResponseTest()
        {
            var message = new GetFinancialGroupBranchesResponse();

            Assert.AreEqual(message.Kind, MessageKind.GetFinancialGroupBranchesResponse);
            var financialGroupItem = new FinancialGroupItemDTO();

            financialGroupItem.Trademark        = "Trademark";
            financialGroupItem.FinancialGroupID = Guid.NewGuid();
            financialGroupItem.LegalName        = "LegalName";
            financialGroupItem.Title            = "Title";

            var item = new FinancialGroupBranchMapItemDTO();

            item.FinancialGroupID          = financialGroupItem.FinancialGroupID;
            item.BranchID                  = Guid.NewGuid();
            item.FinancialGroupBranchMapID = Guid.Empty;

            message.FinancialGroupItems.Add(financialGroupItem);
            message.FinancialGroupBranchMapItems.Add(item);

            var serializer = new ProtocolSerializer(ProtocolVersion.Version10);
            var data       = serializer.Serialize(message);

            Assert.IsNotNull(data);

            var savedMessage = serializer.DeserializeGetFinancialGroupBranchesResponse(data);

            Assert.IsNotNull(savedMessage);
            Assert.AreEqual(serializer.GetMessageInfoOrNull(data).Kind, MessageKind.GetFinancialGroupBranchesResponse);
            Assert.AreEqual(savedMessage.FinancialGroupItems.Count, 1);
            Assert.AreEqual(savedMessage.FinancialGroupBranchMapItems.Count, 1);

            var savedfinancialGroupItem = savedMessage.FinancialGroupItems[0];
            var savedItem = savedMessage.FinancialGroupBranchMapItems[0];

            Assert.AreEqual(savedfinancialGroupItem.Trademark, savedfinancialGroupItem.Trademark);
            Assert.AreEqual(savedfinancialGroupItem.FinancialGroupID, savedfinancialGroupItem.FinancialGroupID);
            Assert.AreEqual(savedfinancialGroupItem.LegalName, savedfinancialGroupItem.LegalName);
            Assert.AreEqual(savedfinancialGroupItem.Title, savedfinancialGroupItem.Title);


            Assert.AreEqual(savedItem.BranchID, item.BranchID);
            Assert.AreEqual(savedItem.FinancialGroupID, item.FinancialGroupID);
            Assert.AreEqual(savedItem.FinancialGroupBranchMapID, item.FinancialGroupBranchMapID);
        }
Beispiel #2
0
        /// <summary>
        /// Обработчик запроса на получение филиалов и их связей с пользователями.
        /// </summary>
        /// <param name="serializer">Сериализатор протокола.</param>
        /// <param name="postData">Данные запроса.</param>
        /// <param name="hostAddress">Адрес клиента.</param>
        /// <returns>Результат.</returns>
        private string ProcessGetFinancialGroupBranchesRequest(ProtocolSerializer serializer, string postData, string hostAddress)
        {
            var request = serializer.DeserializeGetFinancialGroupBranchesRequest(postData);

            _logger.InfoFormat(
                "Получен запрос на получение информации по фингруппам и их связей с филиалами от пользователя {0} с клиента {1}",
                request.UserID, hostAddress);

            var userDomainID = CheckSignedMessage(request);

            var branches = RemontinkaServer.Instance.DataStore.GetFinancialGroupItems(userDomainID);
            var response = new GetFinancialGroupBranchesResponse();

            foreach (var branch in branches)
            {
                response.FinancialGroupItems.Add(new FinancialGroupItemDTO
                {
                    Trademark        = branch.Trademark,
                    FinancialGroupID = branch.FinancialGroupID,
                    LegalName        = branch.LegalName,
                    Title            = branch.Title
                });
            } //foreach

            var items = RemontinkaServer.Instance.DataStore.GetFinancialGroupBranchMapItems(userDomainID);

            foreach (var userBranchMapItem in items)
            {
                response.FinancialGroupBranchMapItems.Add(new Protocol.SynchronizationMessages.FinancialGroupBranchMapItemDTO
                {
                    BranchID                  = userBranchMapItem.BranchID,
                    FinancialGroupID          = userBranchMapItem.FinancialGroupID,
                    FinancialGroupBranchMapID = userBranchMapItem.FinancialGroupBranchMapID,
                });
            } //foreach

            return(serializer.Serialize(response));
        }