public void CreateProject(ProjectCreationViewModel project, string userName)
        {
            var projectToCreate = new project_master
            {
                projectname      = project.BasicInfo.ProjectName ?? "",
                mainmanagerid    = null,
                projectstartdate = DateTime.Now,
                isworkingtitle   = project.BasicInfo.IsWorkingTitle,
                updatedby        = userName,
                updatedon        = DateTime.Now,
                createdby        = userName,
                createdon        = DateTime.Now,
                statuscode       = project.BasicInfo.ProjectStatus,
                removed          = false,
                organizationid   = project.PublisherId,
                mainartist       = project.BasicInfo.MainArtist,
                mainartistid     = project.BasicInfo.MainArtistId
            };

            _projectMasterRepository.Add(projectToCreate);
            _unitOfWork.Commit();
            var projectId = projectToCreate.id;

            foreach (var song in project.Songs)
            {
                var songToCreate = new project_track
                {
                    projectid      = projectId,
                    trackname      = song.Name,
                    isworkingtitle = false,
                    updatedby      = userName,
                    updatedon      = DateTime.Now,
                    createdby      = userName,
                    createdon      = DateTime.Now,
                    isrc           = song.Isrc,
                    duration       = song.Length,
                    donotpublish   = false,
                    trackorder     = song.Number,
                    recordingid    = song.Id
                };
                _projectTrackRepository.Add(songToCreate);
                _unitOfWork.Commit();
                var songId = songToCreate.id;

                song.Performers.ForEach(p => _projectTrackArtistRepository.Add(new project_track_artist
                {
                    projecttrackid = songId,
                    partyrealid    = p.Id,
                    rolecode       = p.Role.RoleCode,
                    instrumentcode = string.IsNullOrEmpty(p.Instrument.IdCode) ? null : p.Instrument.IdCode,
                    updatedby      = userName,
                    updatedon      = DateTime.Now,
                    createdby      = userName,
                    createdon      = DateTime.Now
                }));
            }
            _unitOfWork.Commit();
        }
Example #2
0
 public ProjectDto(project_master project)
 {
     Id                   = project.id;
     ProjectName          = project.projectname ?? "";
     MainArtist           = project.mainartist ?? "";
     MainArtistId         = project.party_mainartist?.id ?? -1;
     SubmissionUser       = project.createdby ?? "";
     LastModificationDate = project.updatedon;
     ProjectStatus        = project.statuscode;
     ProjectStatusName    = project.project_status?.statusname ?? "";
     IsWorkingTitle       = project.isworkingtitle;
 }
 public ProjectExtendedDto(project_master project) : base(project)
 {
     ProjectStartDate = project.projectstartdate;
     ProjectEndDate   = project.projectenddate ?? new DateTime();
     CreatedOn        = project.createdon;
     ReviewBy         = project.reviewedby ?? "";
     ReviewDate       = project.reviewedon ?? new DateTime();
     ReviewComment    = project.reviewedcomment ?? "";
     ProjectType      = 1;
     ProjectTypeName  = "Venjuleg plata";
     Organization     = project.organization_master != null ? project.organization_master.name ?? "Ekki skráð" : "Ekki skráð";
     OrganizationId   = project.organizationid ?? -1;
 }