public List <OrganizationTypeDTO> GetAllOrganizationTypes()
        {
            var context                       = new MyProjectEntities();
            var organizationTypes             = context.OrganizationType;
            List <OrganizationTypeDTO> result = new List <OrganizationTypeDTO>();

            foreach (var item in organizationTypes)
            {
                OrganizationTypeDTO OrganizationTypeDto = ToOrganizationTypeDTO(item, false);
                result.Add(OrganizationTypeDto);
            }
            return(result);
        }
예제 #2
0
        public frmOrganizationType(int organizationTypeID)
        {
            InitializeComponent();
            SetRoleTypes();
            if (organizationTypeID == 0)
            {
                OrganizationType = new OrganizationTypeDTO();
                ShowOrganizationType();
            }
            else
            {
                GetOrganizationType(organizationTypeID);
            }

            ControlHelper.GenerateContextMenu(dtgRoleTypes);
        }
        public int SaveOrganizationType(OrganizationTypeDTO OrganizationTypeDto)
        {
            using (var context = new MyProjectEntities())
            {
                OrganizationType dbOrganizationType = null;
                if (OrganizationTypeDto.ID == 0)
                {
                    dbOrganizationType = new OrganizationType();
                    dbOrganizationType.SecuritySubject      = new SecuritySubject();
                    dbOrganizationType.SecuritySubject.Type = (int)SecuritySubjectType.OrganizationType;
                }
                else
                {
                    dbOrganizationType = context.OrganizationType.First(x => x.ID == OrganizationTypeDto.ID);
                }

                dbOrganizationType.Name        = OrganizationTypeDto.Name;
                dbOrganizationType.ExternalKey = OrganizationTypeDto.ExternalKey;
                //چیزی حذف نمیشود
                foreach (var orgTypeRoleType in OrganizationTypeDto.OrganizationTypeRoleTypes)
                {
                    var dborgTypeRoleType = dbOrganizationType.OrganizationType_RoleType.FirstOrDefault(x => x.ID == orgTypeRoleType.ID);
                    if (dborgTypeRoleType == null)
                    {
                        dborgTypeRoleType = new  OrganizationType_RoleType();
                        dbOrganizationType.OrganizationType_RoleType.Add(dborgTypeRoleType);
                        dborgTypeRoleType.SecuritySubject      = new SecuritySubject();
                        dborgTypeRoleType.SecuritySubject.Type = (int)SecuritySubjectType.OrganizationTypeRoleType;
                    }
                    dborgTypeRoleType.IsAdmin     = orgTypeRoleType.IsAdmin;
                    dborgTypeRoleType.ExternalKey = orgTypeRoleType.ExternalKey;
                    dborgTypeRoleType.RoleTypeID  = orgTypeRoleType.RoleTypeID;
                }

                if (dbOrganizationType.ID == 0)
                {
                    context.OrganizationType.Add(dbOrganizationType);
                }
                context.SaveChanges();
                return(dbOrganizationType.ID);
            }
        }
        private OrganizationTypeDTO ToOrganizationTypeDTO(OrganizationType item, bool withDetails)
        {
            OrganizationTypeDTO result = new OrganizationTypeDTO();

            result.ID          = item.ID;
            result.Name        = item.Name;
            result.ExternalKey = item.ExternalKey;
            if (withDetails)
            {
                foreach (var child in item.OrganizationType_RoleType)
                {
                    OrganizationTypeRoleTypeDTO cItem = new OrganizationTypeRoleTypeDTO();
                    cItem.ID                 = child.ID;
                    cItem.Name               = child.OrganizationType.Name + "-" + child.RoleType.Name;
                    cItem.IsAdmin            = child.IsAdmin == true;
                    cItem.RoleTypeID         = child.RoleTypeID;
                    cItem.ExternalKey        = child.ExternalKey;
                    cItem.OrganizationTypeID = child.OrganizationTypeID;
                    result.OrganizationTypeRoleTypes.Add(cItem);
                }
            }
            return(result);
        }
예제 #5
0
 private void GetOrganizationType(int organizationTypeID)
 {
     OrganizationType = bizOrganizationType.GetOrganizationType(organizationTypeID, true);
     ShowOrganizationType();
 }
예제 #6
0
 private void btnNew_Click(object sender, RoutedEventArgs e)
 {
     OrganizationType = new OrganizationTypeDTO();
     ShowOrganizationType();
 }