public async Task <bool> Delete(OpportunityFileGrouping OpportunityFileGrouping)
        {
            await DataContext.OpportunityFileGrouping.Where(x => x.Id == OpportunityFileGrouping.Id).UpdateFromQueryAsync(x => new OpportunityFileGroupingDAO {
                DeletedAt = StaticParams.DateTimeNow, UpdatedAt = StaticParams.DateTimeNow
            });

            return(true);
        }
 public Opportunity_OpportunityFileGroupingDTO(OpportunityFileGrouping OpportunityFileGrouping)
 {
     this.Id                      = OpportunityFileGrouping.Id;
     this.Title                   = OpportunityFileGrouping.Title;
     this.Description             = OpportunityFileGrouping.Description;
     this.CreatorId               = OpportunityFileGrouping.CreatorId;
     this.OpportunityId           = OpportunityFileGrouping.OpportunityId;
     this.FileTypeId              = OpportunityFileGrouping.FileTypeId;
     this.CreatedAt               = OpportunityFileGrouping.CreatedAt;
     this.UpdatedAt               = OpportunityFileGrouping.UpdatedAt;
     this.Errors                  = OpportunityFileGrouping.Errors;
     this.Creator                 = OpportunityFileGrouping.Creator == null ? null : new Opportunity_AppUserDTO(OpportunityFileGrouping.Creator);
     this.FileType                = OpportunityFileGrouping.FileType == null ? null : new Opportunity_FileTypeDTO(OpportunityFileGrouping.FileType);
     this.OpportunityFileMappings = OpportunityFileGrouping.OpportunityFileMappings?.Select(x => new Opportunity_OpportunityFileMappingDTO(x)).ToList();
 }
        public async Task <bool> Create(OpportunityFileGrouping OpportunityFileGrouping)
        {
            OpportunityFileGroupingDAO OpportunityFileGroupingDAO = new OpportunityFileGroupingDAO();

            OpportunityFileGroupingDAO.Id            = OpportunityFileGrouping.Id;
            OpportunityFileGroupingDAO.Title         = OpportunityFileGrouping.Title;
            OpportunityFileGroupingDAO.Description   = OpportunityFileGrouping.Description;
            OpportunityFileGroupingDAO.OpportunityId = OpportunityFileGrouping.OpportunityId;
            OpportunityFileGroupingDAO.CreatorId     = OpportunityFileGrouping.CreatorId;
            OpportunityFileGroupingDAO.FileTypeId    = OpportunityFileGrouping.FileTypeId;
            OpportunityFileGroupingDAO.RowId         = OpportunityFileGrouping.RowId;
            OpportunityFileGroupingDAO.CreatedAt     = StaticParams.DateTimeNow;
            OpportunityFileGroupingDAO.UpdatedAt     = StaticParams.DateTimeNow;
            DataContext.OpportunityFileGrouping.Add(OpportunityFileGroupingDAO);
            await DataContext.SaveChangesAsync();

            OpportunityFileGrouping.Id = OpportunityFileGroupingDAO.Id;
            await SaveReference(OpportunityFileGrouping);

            return(true);
        }
        public async Task <bool> Update(OpportunityFileGrouping OpportunityFileGrouping)
        {
            OpportunityFileGroupingDAO OpportunityFileGroupingDAO = DataContext.OpportunityFileGrouping.Where(x => x.Id == OpportunityFileGrouping.Id).FirstOrDefault();

            if (OpportunityFileGroupingDAO == null)
            {
                return(false);
            }
            OpportunityFileGroupingDAO.Id            = OpportunityFileGrouping.Id;
            OpportunityFileGroupingDAO.Title         = OpportunityFileGrouping.Title;
            OpportunityFileGroupingDAO.Description   = OpportunityFileGrouping.Description;
            OpportunityFileGroupingDAO.OpportunityId = OpportunityFileGrouping.OpportunityId;
            OpportunityFileGroupingDAO.CreatorId     = OpportunityFileGrouping.CreatorId;
            OpportunityFileGroupingDAO.FileTypeId    = OpportunityFileGrouping.FileTypeId;
            OpportunityFileGroupingDAO.RowId         = OpportunityFileGrouping.RowId;
            OpportunityFileGroupingDAO.UpdatedAt     = StaticParams.DateTimeNow;
            await DataContext.SaveChangesAsync();

            await SaveReference(OpportunityFileGrouping);

            return(true);
        }
 private async Task SaveReference(OpportunityFileGrouping OpportunityFileGrouping)
 {
 }
        public async Task <OpportunityFileGrouping> Get(long Id)
        {
            OpportunityFileGrouping OpportunityFileGrouping = await DataContext.OpportunityFileGrouping.AsNoTracking()
                                                              .Where(x => x.Id == Id)
                                                              .Where(x => x.DeletedAt == null)
                                                              .Select(x => new OpportunityFileGrouping()
            {
                CreatedAt     = x.CreatedAt,
                UpdatedAt     = x.UpdatedAt,
                Id            = x.Id,
                Title         = x.Title,
                Description   = x.Description,
                OpportunityId = x.OpportunityId,
                CreatorId     = x.CreatorId,
                FileTypeId    = x.FileTypeId,
                RowId         = x.RowId,
                Creator       = x.Creator == null ? null : new AppUser
                {
                    Id             = x.Creator.Id,
                    Username       = x.Creator.Username,
                    DisplayName    = x.Creator.DisplayName,
                    Address        = x.Creator.Address,
                    Email          = x.Creator.Email,
                    Phone          = x.Creator.Phone,
                    SexId          = x.Creator.SexId,
                    Birthday       = x.Creator.Birthday,
                    Avatar         = x.Creator.Avatar,
                    Department     = x.Creator.Department,
                    OrganizationId = x.Creator.OrganizationId,
                    Longitude      = x.Creator.Longitude,
                    Latitude       = x.Creator.Latitude,
                    StatusId       = x.Creator.StatusId,
                    RowId          = x.Creator.RowId,
                    Used           = x.Creator.Used,
                },
                FileType = x.FileType == null ? null : new FileType
                {
                    Id   = x.FileType.Id,
                    Code = x.FileType.Code,
                    Name = x.FileType.Name,
                },
                Opportunity = x.Opportunity == null ? null : new Opportunity
                {
                    Id                      = x.Opportunity.Id,
                    Name                    = x.Opportunity.Name,
                    CompanyId               = x.Opportunity.CompanyId,
                    CustomerLeadId          = x.Opportunity.CustomerLeadId,
                    ClosingDate             = x.Opportunity.ClosingDate,
                    SaleStageId             = x.Opportunity.SaleStageId,
                    ProbabilityId           = x.Opportunity.ProbabilityId,
                    PotentialResultId       = x.Opportunity.PotentialResultId,
                    LeadSourceId            = x.Opportunity.LeadSourceId,
                    AppUserId               = x.Opportunity.AppUserId,
                    CurrencyId              = x.Opportunity.CurrencyId,
                    Amount                  = x.Opportunity.Amount,
                    ForecastAmount          = x.Opportunity.ForecastAmount,
                    Description             = x.Opportunity.Description,
                    RefuseReciveSMS         = x.Opportunity.RefuseReciveSMS,
                    RefuseReciveEmail       = x.Opportunity.RefuseReciveEmail,
                    OpportunityResultTypeId = x.Opportunity.OpportunityResultTypeId,
                    CreatorId               = x.Opportunity.CreatorId,
                },
            }).FirstOrDefaultAsync();

            if (OpportunityFileGrouping == null)
            {
                return(null);
            }

            return(OpportunityFileGrouping);
        }