public ValidationResult <EmployeeDocument> CreateEmployeeDocument(DocumentMeta documentMeta, int employeeId, string userId)
        {
            var validationResult = new ValidationResult <EmployeeDocument>();

            try
            {
                //upload document to document service
                var documentCategoryId = documentMeta.DocumentTypeId;
                var documentCategory   = _payrollBureauDataService.Retrieve <DocumentCategory>(e => e.DocumentCategoryId == documentMeta.DocumentTypeId);
                if (documentCategory == null)
                {
                    validationResult.Errors = new List <string> {
                        "Document category not found"
                    };
                    return(validationResult);
                }

                var apiDocument = new Document
                {
                    Product        = ProductName,
                    Category       = documentCategory.FirstOrDefault()?.Name,
                    PayrollId      = employeeId.ToString(),
                    CreatedBy      = userId,
                    CreatedDateUTC = DateTime.UtcNow
                };

                var document = _documentServiceRestClient.CreateDocument(apiDocument);

                if (document == null)
                {
                    validationResult.Errors = new List <string>()
                    {
                        "Document could not be saved, please try again"
                    };
                    return(validationResult);
                }

                var employeeDocument = new EmployeeDocument()
                {
                    DocumentCategoryId = documentCategoryId,
                    DocumentGuid       = document.DocumentGuid,
                    EmployeeId         = employeeId,
                    Filename           = documentMeta.FileName,
                    CreatedBy          = userId,
                    Description        = documentMeta.Description,
                    CreatedDateUtc     = DateTime.UtcNow
                };
                _payrollBureauDataService.Create <EmployeeDocument>(employeeDocument);
                validationResult.Succeeded = true;
                return(validationResult);
            }
            catch (Exception ex)
            {
                validationResult.Succeeded = false;
                validationResult.Exception = ex;
            }
            return(validationResult);
        }
Esempio n. 2
0
        public ValidationResult <Employer> CreateEmployer(Employer employer)
        {
            var validationResult = new ValidationResult <Employer>();

            //if (!validationResult.Succeeded)
            //    return validationResult;
            try
            {
                validationResult.Entity = _payrollBureauDataService.Create(employer);;
                return(validationResult);
            }
            catch (Exception ex)
            {
                validationResult.Succeeded = false;
                validationResult.Message   = ex.Message;
            }
            return(validationResult);
        }
        public ValidationResult <Employer> CreateEmployer(Employer employer)
        {
            var validationResult = EmployerAlreadyExists(employer.Name, null);

            if (!validationResult.Succeeded)
            {
                return(validationResult);
            }
            try
            {
                employer.CreatedDateUtc = DateTime.UtcNow;
                validationResult.Entity = _payrollBureauDataService.Create(employer);;
                return(validationResult);
            }
            catch (Exception ex)
            {
                validationResult.Succeeded = false;
                validationResult.Message   = ex.Message;
            }
            return(validationResult);
        }