示例#1
0
        //public RelationshipFilterDTO GetRelationshipFilter(int RelationshipFiltersID)
        //{
        //    List<RelationshipFilterDTO> result = new List<RelationshipFilterDTO>();
        //    using (var projectContext = new DataAccess.MyProjectEntities())
        //    {
        //        var RelationshipFilters = projectContext.RelationshipSearchFilter.First(x => x.ID == RelationshipFiltersID);
        //        return ToRelationshipFilterDTO(RelationshipFilters);
        //    }
        //}
        public RelationshipFilterDTO ToRelationshipFilterDTO(RelationshipSearchFilter item)
        {
            RelationshipFilterDTO result = new RelationshipFilterDTO();

            result.ID = item.ID;
            //result.Enabled = item.Enabled;
            BizEntityRelationshipTail bizEntityRelationshipTail = new BizEntityRelationshipTail();

            //if (item.SearchRelationshipTailID != null)
            //{
            //    result.SearchRelationshipTailID = item.SearchRelationshipTailID.Value;
            //    result.SearchRelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);
            //}
            result.RelationshipID          = item.RelationshipID;
            result.SearchColumnID          = item.SearchColumnID;
            result.ValueColumnID           = item.ValueColumnID;
            result.ValueRelationshipTailID = item.ValueRelationshipTailID ?? 0;
            if (item.EntityRelationshipTail != null)
            {
                result.ValueRelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);
            }

            //          result.SearchRelationshipTailID = item.SearchRelationshipTailID ?? 0;
            //if (item.EntityRelationshipTail != null)
            //    result.SearchRelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);

            //foreach (var column in item.RelationshipFilterColumns)
            //{
            //    result.RelationshipFilterColumns.Add(new RelationshipFilterColumnDTO() { SearchColumnID = column.SearchColumnID, ValueColumnID = column.ValueColumnID });
            //}
            return(result);
        }
示例#2
0
        private EntityListViewDTO ToEntityListViewDTO(DR_Requester requester, EntityListView item, bool withDetails)
        {
            EntityListViewDTO result = new EntityListViewDTO();

            result.TableDrivedEntityID = item.TableDrivedEntityID;
            result.ID    = item.ID;
            result.Title = item.Title;
            if (withDetails)
            {
                BizColumn bizColumn = new MyModelManager.BizColumn();
                foreach (var column in item.EntityListViewColumns)
                {
                    EntityListViewColumnsDTO rColumn = new EntityListViewColumnsDTO();
                    rColumn.ID            = column.ID;
                    rColumn.ColumnID      = column.ColumnID;
                    rColumn.Column        = bizColumn.ToColumnDTO(column.Column, true);
                    rColumn.IsDescriptive = column.IsDescriptive;
                    rColumn.Alias         = column.Alias ?? rColumn.Column.Alias ?? rColumn.Column.Name;
                    rColumn.OrderID       = column.OrderID ?? 0;
                    if (column.EntityRelationshipTailID != null)
                    {
                        rColumn.RelationshipTailID = column.EntityRelationshipTailID.Value;
                        rColumn.RelationshipTail   = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(column.EntityRelationshipTail);
                    }
                    if (!string.IsNullOrEmpty(column.Tooltip))
                    {
                        rColumn.Tooltip = column.Tooltip;
                    }
                    else
                    {
                        if (rColumn.RelationshipTail != null)
                        {
                            rColumn.Tooltip = rColumn.RelationshipTail.ReverseRelationshipTail.TargetEntityAlias + "." + rColumn.Column.Alias;
                        }
                    }
                    rColumn.WidthUnit = column.WidthUnit ?? 0;

                    //rColumn.RelativeColumnName = rColumn.Column.Name + rColumn.RelationshipTailID.ToString();
                    result.EntityListViewAllColumns.Add(rColumn);
                }
                //foreach (var tail in item.EntityListViewRelationshipTails)
                //{
                //    EntityListViewRelationshipTailDTO rTail = new EntityListViewRelationshipTailDTO();
                //    rTail.ID = tail.ID;
                //    rTail.EntityRelationshipTailID = tail.EntityRelationshipTailID;
                //    rTail.EntityRelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(tail.EntityRelationshipTail);
                //    foreach (var tailColumn in tail.EntityListViewColumns)
                //    {
                //        rTail.EntityListViewColumns.Add(result.EntityListViewAllColumns.First(x => x.ID == tailColumn.ID));
                //    }
                //    result.EntityListViewRelationshipTails.Add(rTail);
                //}
            }

            ImposeSecurity(requester, result, item.TableDrivedEntity);
            return(result);
        }
        public EntityStateConditionDTO ToEntityStateConditionDTO(DR_Requester requester, TableDrivedEntityStateCondition item, bool withDetails)
        {
            var result = new EntityStateConditionDTO();

            result.ID        = item.ID;
            result.FormulaID = item.FormulaID ?? 0;
            if (result.FormulaID != 0 && withDetails)
            {  //??با جزئیات؟؟........................................................................
                var bizFormula = new BizFormula();
                result.Formula = bizFormula.GetFormula(requester, item.FormulaID.Value, withDetails);
            }
            result.ColumnID = item.ColumnID ?? 0;
            if (item.Column != null)
            {
                BizColumn bizColumn = new BizColumn();
                result.Column = bizColumn.ToColumnDTO(item.Column, true);
            }
            result.Title = item.Title;
            result.RelationshipTailID = item.EntityRelationshipTailID ?? 0;
            if (item.EntityRelationshipTail != null)
            {
                BizEntityRelationshipTail bizEntityRelationshipTail = new BizEntityRelationshipTail();
                result.RelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);
            }
            if (item.ValueOpoerator != null)
            {
                result.EntityStateOperator = (Enum_EntityStateOperator)item.ValueOpoerator;
            }

            foreach (var valItem in item.TableDrivedEntityStateConditionValues)
            {
                result.Values.Add(new ModelEntites.EntityStateValueDTO()
                {
                    Value = valItem.Value, SecurityReservedValue = valItem.ReservedValue == null ? SecurityReservedValue.None : (SecurityReservedValue)valItem.ReservedValue
                });
            }

            foreach (var valItem in item.TableDrivedEntityStateConditionSecuritySubject)
            {
                result.SecuritySubjects.Add(new ChildSecuritySubjectDTO {
                    SecuritySubjectID = valItem.SecuritySubjectID
                });                                                                                                        //, SecuritySubjectOperator = (Enum_SecuritySubjectOperator)valItem.SecuritySubjectOperator });
            }
            if (item.SecuritySubjectInOrNotIn == null)
            {
                result.SecuritySubjectInORNotIn = InORNotIn.In;
            }
            else
            {
                result.SecuritySubjectInORNotIn = (InORNotIn)item.SecuritySubjectInOrNotIn;
            }
            return(result);
        }
        private LetterRelationshipTailDTO ToLetterRelationshipTailDTO(EntityLetterRelationshipTails item, bool withDetails)
        {
            LetterRelationshipTailDTO result = new LetterRelationshipTailDTO();

            result.EntityID           = item.TableDrivedEntityID;
            result.ID                 = item.TableDrivedEntityID;
            result.RelationshipTailID = item.EntityRelationshipTailID;
            if (withDetails)
            {
                BizEntityRelationshipTail bizEntityRelationshipTail = new BizEntityRelationshipTail();
                result.RelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);
            }
            return(result);
        }
        private FormulaItemDTO ToFormualaItemDTO(int entityID, FormulaItems dbFormulaItem)
        {
            FormulaItemDTO formulaItem = new FormulaItemDTO();

            formulaItem.ID = dbFormulaItem.ID;
            formulaItem.RelationshipIDTail = dbFormulaItem.RelationshipIDTail;
            if (!string.IsNullOrEmpty(formulaItem.RelationshipIDTail))
            {
                var bizEntityRelationshipTail = new BizEntityRelationshipTail();
                formulaItem.RelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(entityID, formulaItem.RelationshipIDTail);
            }
            formulaItem.RelationshipNameTail = dbFormulaItem.RelationshipNameTail;
            formulaItem.FormulaID            = dbFormulaItem.FormulaID ?? 0;
            formulaItem.ItemTitle            = dbFormulaItem.ItemTitle;
            if (dbFormulaItem.ColumnID != null)
            {
                formulaItem.ItemID   = dbFormulaItem.ColumnID.Value;
                formulaItem.ItemType = FormuaItemType.Column;
            }
            else if (dbFormulaItem.FormulaParameterID != null)
            {
                formulaItem.ItemID   = dbFormulaItem.FormulaParameterID.Value;
                formulaItem.ItemType = FormuaItemType.FormulaParameter;
            }
            else if (dbFormulaItem.RelationshipID != null)
            {
                formulaItem.ItemID   = dbFormulaItem.RelationshipID.Value;
                formulaItem.ItemType = FormuaItemType.Relationship;
            }

            //foreach (var dbcItem in dbFormulaItem.FormulaItems1)
            //{
            //    formulaItem.ChildFormulaItems.Add(ToFormualaItemDTO(dbcItem));
            //}

            return(formulaItem);
        }
示例#6
0
        private DataMenuSettingDTO ToDataMenuSettingDTO(DR_Requester requester, DataMenuSetting entity, bool withDetails)
        {
            var result = new DataMenuSettingDTO();

            if (withDetails)
            {
                foreach (var item in entity.DataMenuSearchableReportRelationship)
                {
                    //دسترسی به خود گزارش هم کنترل شود
                    if (bizEntityRelationshipTail.DataIsAccessable(requester, item.EntityRelationshipTail))
                    {
                        if (bizEntityReport.DataIsAccessable(requester, item.EntitySearchableReport.EntityReport))
                        {
                            var tail            = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);
                            var entityReportDTO = new EntitySearchableReportDTO();
                            bizEntitySearchableReport.ToEntitySearchableReportDTO(item.EntitySearchableReport, entityReportDTO, withDetails);
                            result.SearchableReportRelationships.Add(ToDataMenuSearchableReportRelationshipDTO(item, tail, entityReportDTO));
                        }
                    }
                }
                foreach (var item in entity.DataMenuDataViewRelationship)
                {
                    if (bizEntityRelationshipTail.DataIsAccessable(requester, item.EntityRelationshipTail))
                    {
                        var tail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);
                        result.DataViewRelationships.Add(ToDataMenuDataViewRelationshipDTO(item, tail));
                    }
                }
                foreach (var item in entity.DataMenuGridViewRelationship)
                {
                    if (bizEntityRelationshipTail.DataIsAccessable(requester, item.EntityRelationshipTail))
                    {
                        var tail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(item.EntityRelationshipTail);
                        result.GridViewRelationships.Add(ToDataMenuGridViewRelationshipDTO(item, tail));
                    }
                }
                foreach (var item in entity.DataMenuDataItemReportRelationship)
                {
                    if (bizEntityReport.DataIsAccessable(requester, item.EntityDataItemReportID))
                    {
                        var entityReportDTO = new EntityDataItemReportDTO();
                        bizEntityDataItemReport.ToEntityDataItemReportDTO(item.EntityDataItemReport, entityReportDTO, false);
                        result.DataItemReports.Add(ToDataMenuDataItemReportRelationshipDTO(item, entityReportDTO));
                    }
                }
            }
            result.EntityID         = entity.TableDrivedEntityID;
            result.EntityListViewID = entity.EntityListViewID;
            result.Name             = entity.Name;
            if (entity.DataMenuForViewEntity.Any())
            {
                result.RelationshipID = entity.DataMenuForViewEntity.First().RelationshipID;
                if (withDetails)
                {
                    if (bizRelationship.DataIsAccessable(requester, entity.DataMenuForViewEntity.First().Relationship, false, true))
                    {
                        result.Relationship = bizRelationship.ToRelationshipDTO(entity.DataMenuForViewEntity.First().Relationship);
                    }
                }
                result.TargetDataMenuSettingID = entity.DataMenuForViewEntity.First().TargetDataMenuSettingID;
                if (withDetails)
                {
                    result.DataMenuSetting = ToDataMenuSettingDTO(requester, entity.DataMenuForViewEntity.First().DataMenuSetting1, false);
                }
            }
            result.ID = entity.ID;
            if (withDetails)
            {
                result.IconContent = entity.IconContent;
            }
            return(result);
        }