Example #1
0
        public async Task <CandidateSubmissionCreateModel> CreateCandidateSubmission(CandidateSubmissionCreateModel data)
        {
            try
            {
                CandidateSubmissionCreateModel model = null;

                if (data.IsNewCustomer)
                {
                    CandidateCreateModel candidate = await Task.Run(() => CreateCandidate(data.Candidate));

                    data.CandidateSubmission.CandidateId = candidate.Candidate.id;
                }

                if (data.IsCustomerEdited)
                {
                    await Task.Run(() => UpdateCandidate(data.Candidate));
                }

                CandidateSubmissionModel submissionResp = await Task.Run(() => ManageCandidate.InsertCandidateSubmissions(data.CandidateSubmission.ConverToTblCandidateSubmission()));


                foreach (VacancyQuestionViewModel vq in data.Questions)
                {
                    vq.CandidateSubmissionsQuestionsResponse.All(re =>
                    {
                        re.createdTimestamp = data.CandidateSubmission.createdTimestamp;
                        re.createdUserID    = data.CandidateSubmission.createdUserID;
                        re.updatedUserID    = data.CandidateSubmission.updatedUserID;
                        re.updatedTimestamp = data.CandidateSubmission.updatedTimestamp;
                        re.submissionId     = submissionResp.ID;
                        return(true);
                    });
                    await Task.Run(() => ManageCandidateSubmissionsQuestionsResponses.InsertCandidateSubmissionsQuestionsRespons(vq.CandidateSubmissionsQuestionsResponse.Select(re => re.ConvertTotblCandidateSubmissionsQuestionsRespons()).ToList()));
                }

                foreach (VacancyRequiredDocumentViewModel rd in data.RequiredDocument)
                {
                    rd.CandidateSubmissionDocumentResponse.All(re => {
                        re.createdTimestamp      = data.CandidateSubmission.createdTimestamp;
                        re.createdUserID         = data.CandidateSubmission.createdUserID;
                        re.updatedUserID         = data.CandidateSubmission.updatedUserID;
                        re.updatedTimestamp      = data.CandidateSubmission.updatedTimestamp;
                        re.candidateSubmissionId = submissionResp.ID;
                        return(true);
                    });

                    await Task.Run(() => ManageCandidateSubmissionDocumentResponses.InsertCandidateSubmissionDocumentRespons(rd.CandidateSubmissionDocumentResponse.Select(res => res.ConvertTotblCandidateSubmissionsQuestionsResponses()).ToList()));
                }

                return(model);
            }
            catch (Exception)
            {
                throw;
            }
        }
Example #2
0
 public static tblCandidateSubmission ConverToTblCandidateSubmission(this CandidateSubmissionModel data)
 {
     return(new tblCandidateSubmission()
     {
         ID = Convert.ToInt64(data.ID),
         VacancyID = data.VacancyId,
         CandidateID = data.CandidateId,
         BillRate = data.BillRate,
         StatusID = Convert.ToInt32(data.StatusId),
         IsActive = data.isActive,
         IsDeleted = data.isDeleted ?? false,
         CreatedUserID = data.createdUserID,
         UpdatedUserID = data.updatedUserID,
         CreatedTimestamp = data.createdTimestamp ?? DateTime.Now,
         UpdatedTimestamp = data.updatedTimestamp ?? DateTime.Now
     });
 }