public void GetKeysStringIEnumerableFull()
        {
            var list = new List <object>
            {
                g1,
                kg1,
                doft0,
                str1
            };
            string res = string.Join(",", list.Select(o => $"'{PKHelper.GetGuidByObject(o)}'"));

            Assert.Equal(res, PKHelper.GetKeysString(list));
        }
Exemplo n.º 2
0
        /// <summary>
        ///     Проверить и преобразовать аргумент в соответствии с типом.
        /// </summary>
        /// <param name="type">Тип.</param>
        /// <param name="value">Значение.</param>
        /// <exception cref="ArgumentException">Аргумент не содержит ключевой структуры.</exception>
        /// <exception cref="InvalidCastException">Не совпадают тип свойства и тип переданного параметра.</exception>
        /// <exception cref="FormatException"><seealso cref="M:Convert.ChangeType(object, Type)"/></exception>
        /// <returns>Преобразованный аргумент.</returns>
        internal static object ConvertValue(Type type, object value)
        {
            ValidateValue(value);

            var nctType = GetObjectType(type).NetCompatibilityType;
            var res     = value;

            if (res.GetType().IsEnum)
            {
                if (nctType == typeof(string))
                {
                    res = EnumCaption.GetCaptionFor(res);
                }
                else if (nctType == typeof(decimal))
                {
                    res = Convert.ChangeType(res, nctType);
                }
            }

            if (IsKeyType(nctType))
            {
                res = PKHelper.GetKeyByObject(res);
                if (res == null)
                {
                    throw new ArgumentException(nameof(value));
                }
            }

            ValidateValue(res);

            // Когда свойство строкового типа, а значение - не строка.
            if (nctType == typeof(string) && GetObjectType(res.GetType()).NetCompatibilityType != typeof(string))
            {
                res = Convert.ToString(res);
            }

            if (GetObjectType(res.GetType()).NetCompatibilityType != nctType)
            {
                if (res.GetType().GetInterfaces().Any(x => x == typeof(IConvertible)))
                {
                    // Попробуем преобразовать в нужный тип.
                    res = Convert.ChangeType(res, type);
                }
                else
                {
                    throw new InvalidCastException(nameof(value));
                }
            }

            return(res);
        }
        public override Territoriia Map(Territory source, Territoriia dest)
        {
            dest.__PrimaryKey = source.Guid;
            dest.KodFIAS      = source.FIAS;
            dest.VidObekta    = source.ObjectType;
            dest.Naimenovanie = source.Name;
            dest.PochtIndeks  = source.PostIndex;
            if (source.Parent?.Guid != null)
            {
                dest.Ierarhiia = PKHelper.CreateDataObject <Territoriia>(source.Parent.Guid);
            }

            return(dest);
        }
        public override Ulitca Map(Street source, Ulitca dest)
        {
            dest.__PrimaryKey = source.Guid;
            dest.KodFIAS      = source.FIAS;
            dest.VidObekta    = source.ObjectType;
            dest.Naimenovanie = source.Name;
            dest.PochtIndeks  = source.PostIndex;
            if (source.Territory != null)
            {
                dest.Territoriia = PKHelper.CreateDataObject <Territoriia>(source.Territory.Guid);
            }

            return(dest);
        }
        public void GetKeysIEnumerableIEnumerableMixedWithIEnumerable()
        {
            var listg = new List <Guid>
            {
                g1,
                g2
            };
            var listlistg = new List <List <Guid> >
            {
                listg,
                listg
            };

            var listkg = new List <KeyGuid>
            {
                kg1,
                kg2
            };
            var listlistkg = new List <List <KeyGuid> >
            {
                listkg,
                listkg
            };

            var liststr = new List <string>
            {
                str1,
                str2
            };
            var listliststr = new List <List <string> >
            {
                liststr,
                liststr
            };

            var list = new List <object>
            {
                g1,
                kg1,
                doft0,
                str1
            };
            var listlist = new List <List <object> >
            {
                list,
                list
            };

            Assert.Equal(PKHelper.GetKeys(listlist, listlistg, listlistkg, listliststr, list, listg, listkg, liststr).Length, 7);
        }
Exemplo n.º 6
0
        public override Territory Map(Territoriia source, Territory dest)
        {
            dest.Guid       = PKHelper.GetGuidByObject(source).Value;
            dest.FIAS       = source.KodFIAS;
            dest.ObjectType = source.VidObekta;
            if (source.Naimenovanie?.Length > 255)
            {
                throw new ArgumentOutOfRangeException($"{nameof(source.Naimenovanie)} more than 255 symbols!");
            }
            dest.Name      = source.Naimenovanie;
            dest.PostIndex = source.PochtIndeks;

            return(dest);
        }
Exemplo n.º 7
0
        public override Benefit Map(Lgota source, Benefit dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid = PKHelper.GetGuidByObject(source).Value;
            dest.Id   = source.Oldid;
            dest.Name = source.Naimenovanie;

            switch (source.VclVSotcPaket)
            {
            case tLogicheskii.Net:
                dest.InSocialPackage = tBool.Нет;
                break;

            case tLogicheskii.Da:
                dest.InSocialPackage = tBool.Да;
                break;
            }

            dest.CodeIncome = source.KodDohoda;
            dest.TaxedNDFL  = source.OblagNDFL == tLogicheskii.Da ? tBool.Да : tBool.Нет;
            dest.TaxedESN   = source.OblagESN == tLogicheskii.Da ? tBool.Да : tBool.Нет;

            if (source.Ierarhiia != null)
            {
                dest.Parent = new SyncXMLDataObject()
                {
                    Guid = PKHelper.GetGuidByObject(source.Ierarhiia).Value
                };
            }

            if (source.Tip != null)
            {
                dest.TypeBenefit = new SyncXMLDataObject()
                {
                    Guid = PKHelper.GetGuidByObject(source.Tip).Value
                };
            }

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
        public void GetKeysIEnumerableIEnumerableKeyGuid()
        {
            var list = new List <KeyGuid>
            {
                kg1,
                kg2
            };

            var listlist = new List <List <KeyGuid> >
            {
                list,
                list
            };

            Assert.Equal(PKHelper.GetKeys(listlist).Length, 2);
        }
        public void GetKeysIEnumerableIEnumerableString()
        {
            var list = new List <string>
            {
                str1,
                str2
            };

            var listlist = new List <List <string> >
            {
                list,
                list
            };

            Assert.Equal(PKHelper.GetKeys(listlist).Length, 2);
        }
Exemplo n.º 10
0
        public override Prozhivanie Map(Location source, Prozhivanie dest)
        {
            dest.__PrimaryKey   = source.Guid;
            dest.NomerDoma      = source.Number;
            dest.Kvartira       = source.Appartment;
            dest.NomerStroeniia = source.HouseNumber;
            dest.PochtIndeks    = source.Index;
            dest.Telefon        = source.Phone;

            if (source.Territory != null)
            {
                dest.Territoriia = PKHelper.CreateDataObject <Territoriia>(source.Territory.Guid);
            }

            return(dest);
        }
Exemplo n.º 11
0
        /// <summary>
        /// Получить список изменившихся полей по ключу изменения аудита - AuditEntity.
        /// </summary>
        /// <param name="changeAuditPK">Гуид AuditEntity</param>
        /// <returns></returns>
        public static List <string> GetChangeFieldFromAuditEntityByPK(Guid changeAuditPK)
        {
            var auditEntityObj = PKHelper.CreateDataObject <AuditEntity>(changeAuditPK);

            try
            {
                DataServiceFactory.AppDataService.LoadObject(AuditEntity.Views.AuditEntityE, auditEntityObj, false,
                                                             true);
            }
            catch (Exception ex)
            {
                throw new Exception(
                          $"Ошибка при попытке загрузить операцию изменения {nameof(AuditEntity)}({changeAuditPK}). {ex.Message}");
            }

            var auditFieldsLcs = LoadingCustomizationStruct.GetSimpleStruct(typeof(AuditField), ViewForField);
            List <AuditField> changedFields;

            try
            {
                // Загружаем набор изменившихся полей из аудита
                auditFieldsLcs.LimitFunction =
                    FunctionBuilder.BuildEquals <AuditField>(x => x.AuditEntity, auditEntityObj);
                changedFields = DataServiceFactory.AppDataService.LoadObjects(auditFieldsLcs).Cast <AuditField>()
                                .ToList();
            }
            catch (Exception ex)
            {
                throw new Exception(
                          $"Произошла ошибка при попытке получить набор изменений полей для операции аудита:{PKHelper.GetGuidByObject(auditEntityObj)}. {ex.Message}");
            }

            var changedFieldList = changedFields.Where(y => y.MainChange == null).Select(x =>
            {
                var fieldName     = x.Field;
                var separateIndex = fieldName.IndexOf(" ", StringComparison.Ordinal);
                if (separateIndex > 0)
                {
                    fieldName = fieldName.Substring(0, separateIndex);
                }

                return(fieldName);
            }).ToList();

            return(changedFieldList);
        }
        public override Iis.Eais.GosUslugi.ChlenSemi Map(ChlenSemi source, Iis.Eais.GosUslugi.ChlenSemi dest)
        {
            if (dest.GetStatus() == ObjectStatus.Created)
            {
                dest.__PrimaryKey = source.Guid;
            }

            dest.IdentifikDannyeLeechnosti = source.IdentifikDannyeLeechnosti;

            switch (source.Shkolnik)
            {
            case tSchoolChild.Дошкольник:
                dest.Shkolnik = tStatusUchashchegosia.Doshkolnik;
                break;

            case tSchoolChild.Учащийся:
                dest.Shkolnik = tStatusUchashchegosia.Uchashchiisia;
                break;

            case tSchoolChild.аботает:
                dest.Shkolnik = tStatusUchashchegosia.Rabotaet;
                break;
            }

            if (dest.Zaiavlenie != null)
            {
                dest.Zaiavlenie = PKHelper.CreateDataObject <ZaiavlenieNaGosUslugu>(source.Zaiavlenie?.Guid);
            }

            if (dest.Leechnost != null)
            {
                dest.Leechnost = PKHelper.CreateDataObject <Leechnost>(source.Leechnost?.Guid);
            }

            if (dest.RodstvOtn != null)
            {
                dest.RodstvOtn = PKHelper.CreateDataObject <RodstvOtn>(source.RodstvOtn?.Guid);
            }

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
        public override DisplacementReason Map(PrichinaPeremeshcheniia source, DisplacementReason dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid = PKHelper.GetGuidByObject(source).Value;
            dest.Id   = source.Oldid;
            dest.Name = source.Naimenovanie;

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
        public override TypeBenefit Map(TipLgoty source, TypeBenefit dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid = PKHelper.GetGuidByObject(source).Value;
            dest.Id   = source.Oldid;
            dest.Name = source.Naimenovanie;

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
Exemplo n.º 15
0
        public override GovernmentLevel Map(UrovenVlasti source, GovernmentLevel dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid = PKHelper.GetGuidByObject(source).Value;
            dest.Id   = source.Oldid;
            dest.Name = source.Naimenovanie;

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
        public void GetKeysIEnumerableIEnumerableObject()
        {
            var list = new List <object>
            {
                g1,
                kg1,
                doft0,
                str1
            };

            var listlist = new List <List <object> >
            {
                list,
                list
            };

            Assert.Equal(PKHelper.GetKeys(listlist).Length, 4);
        }
Exemplo n.º 17
0
        public override FundingSource Map(IstochnikFin source, FundingSource dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid = PKHelper.GetGuidByObject(source).Value;
            dest.Id   = source.Oldid;
            dest.Name = source.Naimenovanie;

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
        public override Leechnost Map(Beneficiary source, Leechnost dest)
        {
            dest.__PrimaryKey = source.Guid;
            dest.Familiia     = source.FamilyName;
            dest.Imia         = source.FirstName;
            dest.Otchestvo    = source.Patronymic;
            switch (source.Gender)
            {
            case tGender.Муж:
                dest.Pol = tPol.Muzhskoi;
                break;

            case tGender.Жен:
                dest.Pol = tPol.Zhenskii;
                break;
            }
            dest.DataRozhdeniia = (NullableDateTime)source.BirthDate.Value;
            dest.Snils          = source.Snils;
            dest.INN            = source.INN;
            dest.Mail           = source.Email;
            dest.Telefon        = source.Phone;
            switch (source.Education)
            {
            case tEducation.Общее:
                dest.Obrazovanie = tObrazovanieLeechn.Obshchee;
                break;

            case tEducation.Среднеепрофессиональное:
                dest.Obrazovanie = tObrazovanieLeechn.SredneeProf;
                break;

            case tEducation.Высшее:
                dest.Obrazovanie = tObrazovanieLeechn.Vysshee;
                break;
            }
            dest.StranaRozhdeniia = source.BirthCountry;
            dest.OblastRozhdeniia = source.BirthRegion;
            dest.GorodRozhdeniia  = source.BirthTown;
            dest.RaionRozhdeniia  = source.BirthDistrict;
            dest.Prozhivanie      = PKHelper.CreateDataObject <Prozhivanie>(source.Location?.Guid);
            dest.Propiska         = PKHelper.CreateDataObject <Prozhivanie>(source.Registration.Guid);

            return(dest);
        }
Exemplo n.º 19
0
        private static string GetErrorText(SyncDOEntity syncEntity)
        {
            var text = $"Ошибка: обнаружена запись SyncDOEntity({PKHelper.GetGuidByObject(syncEntity)})";

            if (syncEntity.ObjectPrimaryKey == null)
            {
                text = $"{text} с пустым ключом на изменившийся объкт.";
            }
            else if (!syncEntity.Date.HasValue)
            {
                text = $"{text} с пустой датой изменения.";
            }
            else if (!syncEntity.AuditChangePK.HasValue)
            {
                text = $"{text} с пустым ключом на соответствующую запись изменения аудита.";
            }

            return(text);
        }
Exemplo n.º 20
0
        public override LegalAct Map(NormAkt source, LegalAct dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid   = PKHelper.GetGuidByObject(source).Value;
            dest.Id     = source.Oldid;
            dest.Name   = source.Naimenovanie;
            dest.Number = source.Nomer;

            if (source.DataPodpisaniia.HasValue)
            {
                dest.SignatureDate = source.DataPodpisaniia.Value;
            }

            dest.CodeReportFK = source.KodOtchFedKaznach;

            if (source.Tip != null)
            {
                dest.TypeLegalAct = new SyncXMLDataObject()
                {
                    Guid = PKHelper.GetGuidByObject(source.Tip).Value
                };
            }

            if (source.Izdatel != null)
            {
                dest.NamePublisher = new SyncXMLDataObject()
                {
                    Guid = PKHelper.GetGuidByObject(source.Izdatel).Value
                };
            }

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
        public override IzmenenieFIO Map(ChangeName source, IzmenenieFIO dest)
        {
            if (dest.GetStatus() == ObjectStatus.Created)
            {
                dest.__PrimaryKey = source.Guid;
            }

            dest.Familiia              = source.FamilyName;
            dest.Imia                  = source.FirstName;
            dest.Otchestvo             = source.Patronymic;
            dest.DataIzmeneniiaDannykh = (NullableDateTime)source.ChangeDate;
            dest.Leechnost             = source.Beneficiary == null
                ? null
                : PKHelper.CreateDataObject <Leechnost>(source.Beneficiary?.Guid);
            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;
            return(dest);
        }
        public override ServiceBus.ObjectDataModel.ToTU.Specialist Map(Specialist source, ServiceBus.ObjectDataModel.ToTU.Specialist dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid       = PKHelper.GetGuidByObject(source).Value;
            dest.Id         = source.Oldid;
            dest.FamilyName = source.Familiya;
            dest.FirstName  = source.Imya;
            dest.Patronymic = source.Otchestvo;

            switch (source.RukOrganaCZ)
            {
            case tLogicheskii.Net:
                dest.ChiefSPA = tBool.Нет;
                break;

            case tLogicheskii.Da:
                dest.ChiefSPA = tBool.Да;
                break;
            }

            if (source.OrganSZ != null)
            {
                dest.SocialProtectionAuthority = new SyncXMLDataObject()
                {
                    Guid = PKHelper.GetGuidByObject(source.OrganSZ).Value
                };
            }

            dest.Login = source.Agent.Login;

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
Exemplo n.º 23
0
        public override Street Map(Ulitca source, Street dest)
        {
            dest.Guid       = PKHelper.GetGuidByObject(source).Value;
            dest.FIAS       = source.KodFIAS;
            dest.ObjectType = source.VidObekta;
            if (source.Naimenovanie?.Length > 255)
            {
                throw new ArgumentOutOfRangeException($"{nameof(source.Naimenovanie)} more than 80 symbols!");
            }
            dest.Name      = source.Naimenovanie;
            dest.PostIndex = source.PochtIndeks;
            if (source.Territoriia != null)
            {
                dest.Territory = new Territory()
                {
                    Guid = PKHelper.GetGuidByObject(source.Territoriia).Value
                };
            }

            return(dest);
        }
Exemplo n.º 24
0
        public override Street Map(Ulitca source, Street dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid       = PKHelper.GetGuidByObject(source).Value;
            dest.Id         = source.Oldid;
            dest.PostIndex  = source.PochtIndeks;
            dest.CodeCLADR  = source.KodCLADR;
            dest.Name       = source.Naimenovanie;
            dest.CodeGR     = (int)source.KodGR;
            dest.ObjectType = source.VidObekta;
            dest.CodeFIAS   = source.KodFIAS;

            if (source.NovoeNazv != null)
            {
                dest.NewName = new SyncXMLDataObject()
                {
                    Guid = PKHelper.GetGuidByObject(source.NovoeNazv).Value
                };
            }

            if (source.Territoriia != null)
            {
                dest.Territory = new SyncXMLDataObject()
                {
                    Guid = PKHelper.GetGuidByObject(source.Territoriia).Value
                };
            }

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
Exemplo n.º 25
0
        public override NaznachenieVyplaty Map(PaymentAppointment source, NaznachenieVyplaty dest)
        {
            if (dest.GetStatus() == ObjectStatus.Created)
            {
                dest.__PrimaryKey = source.Guid;
            }

            dest.Podtverzhdeno =
                (tLogicheskii)EnumCaption.GetValueFor(source.Confirmed.ToString(), typeof(tLogicheskii));
            dest.Lgota       = source.Benefit == null ? null : PKHelper.CreateDataObject <Lgota>(source.Benefit.Guid);
            dest.Nositel     = source.Medium == null ? null : PKHelper.CreateDataObject <Leechnost>(source.Medium.Guid);
            dest.Izhdivenetc = source.Dependent == null
                ? null
                : PKHelper.CreateDataObject <Leechnost>(source.Dependent.Guid);

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
Exemplo n.º 26
0
        public override Prozhivanie Map(Address source, Prozhivanie dest)
        {
            if (dest.GetStatus() == ObjectStatus.Created)
            {
                dest.__PrimaryKey = source.Guid;
            }

            dest.NomerDoma      = source.Number;
            dest.Kvartira       = source.Appartment;
            dest.NomerStroeniia = source.HouseNumber;
            if (source.Territory != null)
            {
                dest.Territoriia = PKHelper.CreateDataObject <Territoriia>(source.Territory.Guid);
            }

            if (source.Street != null)
            {
                dest.Ulitca = PKHelper.CreateDataObject <Ulitca>(source.Street.Guid);
            }

            return(dest);
        }
        public override void SetMasters(
            ChlenSemi obj,
            Iis.Eais.GosUslugi.ChlenSemi dobj,
            List <string> attrs,
            IDataService defDS,
            IDataService syncDS,
            Source source,
            ref List <DataObject> arrToUpd,
            ref Dictionary <string, List <DataObject> > arrConformity)
        {
            var status = dobj.GetStatus();

            if (obj.Zaiavlenie != null &&
                (status == ObjectStatus.Created ||
                 attrs != null && attrs.Contains(ChlenSemi.ConstZaiavlenie)))
            {
                var val = PKHelper.CreateDataObject <ZaiavlenieNaGosUslugu>(obj.Zaiavlenie.Guid);
                defDS.LoadObject(val);
                dobj.Zaiavlenie = val;
            }

            if (obj.Leechnost != null &&
                (status == ObjectStatus.Created ||
                 attrs != null && attrs.Contains(ChlenSemi.ConstLeechnost)))
            {
                var val = PKHelper.CreateDataObject <Leechnost>(obj.Leechnost.Guid);
                defDS.LoadObject(val);
                dobj.Leechnost = val;
            }

            if (obj.RodstvOtn != null &&
                (status == ObjectStatus.Created ||
                 attrs != null && attrs.Contains(ChlenSemi.ConstRodstvOtn)))
            {
                var val = PKHelper.CreateDataObject <RodstvOtn>(obj.RodstvOtn.Guid);
                defDS.LoadObject(val);
                dobj.RodstvOtn = val;
            }
        }
        public override Country Map(Strana source, Country dest)
        {
            if (!PKHelper.GetGuidByObject(source).HasValue)
            {
                throw new ArgumentNullException(nameof(source));
            }

            dest.Guid        = PKHelper.GetGuidByObject(source).Value;
            dest.Id          = source.Oldid;
            dest.FullName    = source.PolnoeNaimenovanie;
            dest.ShortName   = source.KratkoeNaimenovanie;
            dest.NumericCode = (int)source.TcifrKod;
            dest.CodeAlpha2  = source.BukvKodAlfa2;
            dest.CodeAlpha3  = source.BukvKodAlfa3;

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
        public override FaktLgot Map(FactBenefits source, FaktLgot dest)
        {
            if (dest.GetStatus() == ObjectStatus.Created)
            {
                dest.__PrimaryKey = source.Guid;
            }

            dest.DataNachisleniia = (NullableDateTime)source.AccrualDate;
            dest.DataPolucheniia  = (NullableDateTime)source.ReceiveDate;
            dest.Summa            = (NullableDecimal)source.Amount;
            dest.SummaSotcPaketa  = (NullableDecimal)source.AmountSocialPackage;
            dest.Kommentarii      = source.Comments;
            dest.SposobOplaty     = (tSposobOplaty)EnumCaption.GetValueFor(EnumCaption.GetCaptionFor(source.PaymentMethod),
                                                                           typeof(tSposobOplaty));
            dest.DataPereplS  = (NullableDateTime)source.OverpaymentDateFrom;
            dest.DataPereplPo = (NullableDateTime)source.OverpaymentDateTo;
            dest.NositelLgoty = source.MediumBenefit == null
                ? null
                : PKHelper.CreateDataObject <LgKatLeechnosti>(source.MediumBenefit.Guid);
            dest.Izhdivenetc = source.Dependent == null
                ? null
                : PKHelper.CreateDataObject <Leechnost>(source.Dependent.Guid);
            dest.Poluchatel = source.Recipient == null
                ? null
                : PKHelper.CreateDataObject <Leechnost>(source.Recipient.Guid);
            dest.Lgota   = source.Benefit == null ? null : PKHelper.CreateDataObject <Lgota>(source.Benefit.Guid);
            dest.OrganSZ = source.SocialProtectionAuthority == null
                ? null
                : PKHelper.CreateDataObject <OrganSZ>(source.SocialProtectionAuthority.Guid);
            dest.Period = source.Period == null ? null : PKHelper.CreateDataObject <Period>(source.Period.Guid);

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }
Exemplo n.º 30
0
        public override Stroenie Map(Structure source, Stroenie dest)
        {
            if (dest.GetStatus() == ObjectStatus.Created)
            {
                dest.__PrimaryKey = source.Guid;
            }

            dest.KodFIAS       = source.FIAS;
            dest.VidStroeniia  = (tVidStroeniia)EnumCaption.GetValueFor(EnumCaption.GetCaptionFor(source.TypeStructure), typeof(tVidStroeniia));
            dest.Nomer         = source.Number == null ? 0 : (uint)source.Number;
            dest.PochtIndeks   = source.PostIndex;
            dest.DopStroenie   = source.Additional;
            dest.KodPodtverzhd = source.VerificationCode == null ? 0 : (uint)source.VerificationCode;
            dest.Raion         = source.Area == null ? null : PKHelper.CreateDataObject <Territoriia>(source.Area.Guid);
            dest.Ulitca        = source.Street == null ? null : PKHelper.CreateDataObject <Ulitca>(source.Street.Guid);

            dest.CreateTime = source.CreateTime;
            dest.Creator    = source.Creator;
            dest.EditTime   = source.EditTime;
            dest.Editor     = source.Editor;

            return(dest);
        }