Пример #1
0
 private CreateRecordRequest.IContentBuilder CreateCandidateContent(CreateRecordRequest.IContentBuilder content, string name = "Jacky Nam")
 {
     return(content
            .Append("P_Owner", "1")
            .Append("P_Name", name)
            .Append("P_Memo", "the candidate has to be a good person"));
 }
        private static CreateRecordRequest.IContentBuilder PrepareUserFieldContent(CreateRecordRequest.IContentBuilder content, Enums.ResourceType resourceType, HrbcFieldCreator customField, int referenceId, string fieldValue)
        {
            var result = ResourceHelper.PrepapeInitialRecordContent(content, resourceType.ToPrivateEnum(),
                                                                    clientId: recordsToRef.Data[$"{ResourceId.Client}{referenceId}"].Id,
                                                                    recruiterId: recordsToRef.Data[$"{ResourceId.Recruiter}{referenceId}"].Id,
                                                                    jobId: recordsToRef.Data[$"{ResourceId.Job}{referenceId}"].Id,
                                                                    candidateId: recordsToRef.Data[$"{ResourceId.Person}{referenceId}"].Id,
                                                                    resumeId: recordsToRef.Data[$"{ResourceId.Resume}{referenceId}"].Id);

            var fieldName = customField.Data[$"{resourceType}-{FieldType.Telephone}-0"].Name;

            result.Append(fieldName, fieldValue);

            return(result);
        }
Пример #3
0
        private static CreateRecordRequest.IContentBuilder PrepareContent(CreateRecordRequest.IContentBuilder content, Enums.ResourceType resourceType, HrbcFieldCreator customField, string[] applicationField)
        {
            var result = ResourceHelper.PrepapeInitialRecordContent(content, resourceType.ToPrivateEnum(),
                                                                    clientId: recordsToRef.Data[$"{ResourceId.Client}{0}"].Id,
                                                                    recruiterId: recordsToRef.Data[$"{ResourceId.Recruiter}{0}"].Id,
                                                                    jobId: recordsToRef.Data[$"{ResourceId.Job}{0}"].Id,
                                                                    candidateId: recordsToRef.Data[$"{ResourceId.Person}{0}"].Id,
                                                                    resumeId: recordsToRef.Data[$"{ResourceId.Resume}{0}"].Id);

            foreach (var item in applicationField)
            {
                result.Append(item, GetValidValueAppField(item));
            }
            foreach (var fieldType in KeywordHelper.KeywordTextField)
            {
                var fieldName = customField.Data[$"{resourceType}-{fieldType}"].Name;
                result.Append(fieldName, GetValidValueUserField(fieldType, fieldName));
            }
            return(result);
        }
Пример #4
0
        private static CreateRecordRequest.IContentBuilder PrepareInitialRecordContent(CreateRecordRequest.IContentBuilder content, ResourceId resource)
        {
            var intex = 0;

            if (resource == ResourceId.Process)
            {
                intex = _nonPhoneProcessRecordInserted++;
            }

            var result = ResourceHelper.PrepapeInitialRecordContent(content, resource,
                                                                    clientId: RecordToReference.Data[$"{ResourceId.Client}{intex}"].Id,
                                                                    recruiterId: RecordToReference.Data[$"{ResourceId.Recruiter}{intex}"].Id,
                                                                    jobId: RecordToReference.Data[$"{ResourceId.Job}{intex}"].Id,
                                                                    candidateId: RecordToReference.Data[$"{ResourceId.Person}{intex}"].Id,
                                                                    resumeId: RecordToReference.Data[$"{ResourceId.Resume}{intex}"].Id);



            if (resource != ResourceId.Contract)
            {
                result.Append("P_Phase", OptionFieldHelper.ResourcePhases[resource])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
                .Append("P_PhaseMemo", "Phase Memo");
            }
            return(result);
        }
        /// <summary>
        /// Append common content for creating resource request.
        /// All keyword text field will not be added
        /// </summary>
        /// <param name="content"></param>
        /// <param name="symbolType"></param>
        /// <param name="resourceType"></param>
        public static void AppendCommonContent(CreateRecordRequest.IContentBuilder content, SameResultSymbolType symbolType, Enums.ResourceType resourceType)
        {
            switch (resourceType)
            {
            case Enums.ResourceType.Client:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Name", "Test Client");
                break;

            case Enums.ResourceType.Recruiter:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Name", "Test Recruiter")
                .Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"));
                break;

            case Enums.ResourceType.Job:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Position", "Test Job")
                .Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"))
                .Append("P_Recruiter", new CreateRecordRequest.Reference($"{Enums.ResourceType.Recruiter}{symbolType}"));
                break;

            case Enums.ResourceType.Candidate:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Name", "Test Person");
                break;

            case Enums.ResourceType.Resume:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Candidate", new CreateRecordRequest.Reference($"{Enums.ResourceType.Candidate}{symbolType}"));
                break;

            case Enums.ResourceType.Process:
                List <string> processPhases = OptionFieldHelper.GetOptionList(Enums.Options.ProcessPhase);
                Option        option        = OptionFieldHelper.GetOptionItem(processPhases.First());
                ulong         optionId      = ulong.Parse(option.Id);
                content
                .Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"))
                .Append("P_Recruiter", new CreateRecordRequest.Reference($"{Enums.ResourceType.Recruiter}{symbolType}"))
                .Append("P_Job", new CreateRecordRequest.Reference($"{Enums.ResourceType.Job}{symbolType}"))
                .Append("P_Candidate", new CreateRecordRequest.Reference($"{Enums.ResourceType.Candidate}{symbolType}"))
                .Append("P_Resume", new CreateRecordRequest.Reference($"{Enums.ResourceType.Resume}{symbolType}"))
                .Append("P_Phase", optionId);
                break;

            case Enums.ResourceType.Sales:
                content.Append("P_Owner", ResourceHelper.DefaultUser);
                break;

            case Enums.ResourceType.Activity:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Title", "Test Activity")
                .Append("P_FromDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                break;

            case Enums.ResourceType.Contract:
                content.Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"))
                .Append("P_Name", "Test Contract");
                break;
            }
        }
Пример #6
0
        /// <summary>
        /// Append common content for creating resource request.
        /// All keyword text field will not be added
        /// </summary>
        /// <param name="content"></param>
        /// <param name="symbolType"></param>
        /// <param name="resourceType"></param>
        public static void AppendCommonContent(CreateRecordRequest.IContentBuilder content, SameResultSymbolType symbolType, Enums.ResourceType resourceType, Dictionary <Enums.ResourceType, ulong> phaseList)
        {
            switch (resourceType)
            {
            case Enums.ResourceType.Client:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Phase", phaseList[Enums.ResourceType.Client])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                break;

            case Enums.ResourceType.Recruiter:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Phase", phaseList[Enums.ResourceType.Recruiter])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
                .Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"));
                break;

            case Enums.ResourceType.Job:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"))
                .Append("P_Phase", phaseList[Enums.ResourceType.Job])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
                .Append("P_Recruiter", new CreateRecordRequest.Reference($"{Enums.ResourceType.Recruiter}{symbolType}"));
                break;

            case Enums.ResourceType.Candidate:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Phase", phaseList[Enums.ResourceType.Candidate])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                break;

            case Enums.ResourceType.Resume:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Phase", phaseList[Enums.ResourceType.Resume])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
                .Append("P_Candidate", new CreateRecordRequest.Reference($"{Enums.ResourceType.Candidate}{symbolType}"));
                break;

            case Enums.ResourceType.Process:
                content
                .Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"))
                .Append("P_Recruiter", new CreateRecordRequest.Reference($"{Enums.ResourceType.Recruiter}{symbolType}"))
                .Append("P_Job", new CreateRecordRequest.Reference($"{Enums.ResourceType.Job}{symbolType}"))
                .Append("P_Candidate", new CreateRecordRequest.Reference($"{Enums.ResourceType.Candidate}{symbolType}"))
                .Append("P_Resume", new CreateRecordRequest.Reference($"{Enums.ResourceType.Resume}{symbolType}"))
                .Append("P_Phase", phaseList[Enums.ResourceType.Process]);
                break;

            case Enums.ResourceType.Sales:
                content
                .Append("P_Phase", phaseList[Enums.ResourceType.Sales])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
                .Append("P_Owner", ResourceHelper.DefaultUser);
                break;

            case Enums.ResourceType.Activity:
                content.Append("P_Owner", ResourceHelper.DefaultUser)
                .Append("P_Phase", phaseList[Enums.ResourceType.Activity])
                .Append("P_PhaseDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
                .Append("P_FromDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                break;

            case Enums.ResourceType.Contract:
                content.Append("P_Client", new CreateRecordRequest.Reference($"{Enums.ResourceType.Client}{symbolType}"));
                break;
            }
        }