public AccessGroupDto GetDto(DataLayer.Model.Core.AccessGroup.AccessGroup accessGroup) { var createUser = accessGroup.CreateUserEntity != null ? new UserDto() { EntityId = accessGroup.CreateUserEntity.EntityId, Username = accessGroup.CreateUserEntity.Username } : new UserDto(); var updateUser = accessGroup.UpdateUserEntity != null ? new UserDto() { EntityId = accessGroup.UpdateUserEntity.EntityId, Username = accessGroup.UpdateUserEntity.Username } : new UserDto(); var data = new AccessGroupDto { EntityId = accessGroup.EntityId, Name = accessGroup.Name, Created = Util.GetTimeStamp(accessGroup.Created), Updated = Util.GetTimeStamp(accessGroup.Updated), CreatedBy = createUser, UpdatedBy = updateUser, Active = accessGroup.Active, Code = accessGroup.Code }; var list = new List <UseCaseActionDto>(); if (accessGroup.ParentAccessGroupUseCaseActionAccessGroup != null) { foreach (var item in accessGroup.ParentAccessGroupUseCaseActionAccessGroup) { var dto = new UseCaseActionDto() { Action = new ActionDto() { EntityId = item.CurrentUseCaseAction.CurrentAction.EntityId, ActionName = item.CurrentUseCaseAction.CurrentAction.ActionName }, }; if (item.CurrentUseCaseAction?.UseCase != null) { dto.UseCase = new UseCaseDto() { EntityId = item.CurrentUseCaseAction.UseCase.Value }; } list.Add(dto); } data.UseCaseActionList = list; } return(data); }
public ServiceResult <object> GetDtoFromRequest(HttpRequest request) { var lstData = new List <UseCaseActionAccessGroupDto>(); var accessGroup = new AccessGroupDto(); if (!string.IsNullOrEmpty(request.Form["EntityId"])) { accessGroup.EntityId = Convert.ToInt64(request.Form["EntityId"]); } if (!string.IsNullOrEmpty(request.Form["Name"])) { accessGroup.Name = request.Form["Name"]; } else { return(new ServiceResult <object>(Enumerator.ErrorCode.ApplicationError, "لطفا نام گروه دسترسی را وارد نمایید")); } if (!string.IsNullOrEmpty(request.Form["Code"])) { accessGroup.Code = request.Form["Code"]; } if (!string.IsNullOrEmpty(request.Form["Active"])) { accessGroup.Active = Convert.ToBoolean(request.Form["Active"]); } if (!string.IsNullOrEmpty(request.Form["Ticket"])) { accessGroup.Ticket = request.Form["Ticket"]; } if (!string.IsNullOrEmpty(request.Form["actions"])) { var strings = request.Form["actions"].ToString().Split(","); foreach (var item in strings) { if (item.Contains("|")) { var useCaseActionDto = new UseCaseActionDto { Action = new ActionDto { EntityId = Convert.ToInt64(item.Split("|")[1]) }, UseCase = new UseCaseDto { EntityId = Convert.ToInt64(item.Split("|")[0]) } }; lstData.Add(new UseCaseActionAccessGroupDto { AccessGroup = accessGroup, UseCaseAction = useCaseActionDto }); } } } else { var dto = new UseCaseActionAccessGroupDto { AccessGroup = accessGroup }; lstData.Add(dto); } return(new ServiceResult <object>(lstData, 1)); }