Ejemplo n.º 1
0
 public async Task <bool> ValidateName(CustomerLead CustomerLead)
 {
     if (string.IsNullOrWhiteSpace(CustomerLead.Name))
     {
         CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Name), ErrorCode.NameEmpty);
     }
     else if (CustomerLead.Name.Length > 255)
     {
         CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Name), ErrorCode.NameOverLength);
     }
     return(CustomerLead.IsValidated);
 }
Ejemplo n.º 2
0
        public async Task <bool> Convert(CustomerLead CustomerLead)
        {
            if (await ValidateId(CustomerLead))
            {
                if (CustomerLead.Company == null)
                {
                    CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Company), ErrorCode.CompanyIsNull);
                }
                else
                {
                    if (CustomerLead.IsNewCompany)
                    {
                        await ValidateCompanyName(CustomerLead);
                    }
                    else
                    {
                        await ValidateCompany(CustomerLead);
                    }
                }

                if (CustomerLead.Contact == null)
                {
                    CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Contact), ErrorCode.ContactIsNull);
                }
                else
                {
                    if (CustomerLead.IsNewContact)
                    {
                        await ValidateContactName(CustomerLead);
                        await ValidatePhone(CustomerLead);
                    }
                    else
                    {
                        await ValidateContact(CustomerLead);
                    }
                }
                if (CustomerLead.IsCreateOpportunity)
                {
                    if (CustomerLead.IsNewOpportunity)
                    {
                        await ValidateOpportunityName(CustomerLead);
                    }
                    else
                    {
                        await ValidateOpportunity(CustomerLead);
                    }
                }
            }

            return(CustomerLead.IsValidated);
        }
Ejemplo n.º 3
0
 public async Task <bool> ValidateFax(CustomerLead CustomerLead)
 {
     if (!string.IsNullOrWhiteSpace(CustomerLead.Fax))
     {
         if (CustomerLead.Fax.Length > 10)
         {
             CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Fax), ErrorCode.FaxOverLength);
         }
     }
     return(CustomerLead.IsValidated);
 }
Ejemplo n.º 4
0
        public async Task <bool> ValidateCompany(CustomerLead CustomerLead)
        {
            if (CustomerLead.CompanyId.HasValue == false)
            {
                CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Company), ErrorCode.CompanyEmpty);
            }
            else
            {
                CompanyFilter CompanyFilter = new CompanyFilter
                {
                    Id = new IdFilter {
                        Equal = CustomerLead.CompanyId
                    }
                };

                var count = await UOW.CompanyRepository.Count(CompanyFilter);

                if (count == 0)
                {
                    CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Company), ErrorCode.CompanyNotExisted);
                }
            }
            return(CustomerLead.IsValidated);
        }
Ejemplo n.º 5
0
        public async Task <bool> ValidateOpportunity(CustomerLead CustomerLead)
        {
            if (CustomerLead.OpportunityId.HasValue == false)
            {
                CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Opportunity), ErrorCode.OpportunityEmpty);
            }
            else
            {
                OpportunityFilter OpportunityFilter = new OpportunityFilter
                {
                    Id = new IdFilter {
                        Equal = CustomerLead.OpportunityId
                    }
                };

                var count = await UOW.OpportunityRepository.Count(OpportunityFilter);

                if (count == 0)
                {
                    CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Opportunity), ErrorCode.OpportunityNotExisted);
                }
            }
            return(CustomerLead.IsValidated);
        }
Ejemplo n.º 6
0
        public async Task <bool> ValidateId(CustomerLead CustomerLead)
        {
            CustomerLeadFilter CustomerLeadFilter = new CustomerLeadFilter
            {
                Skip = 0,
                Take = 10,
                Id   = new IdFilter {
                    Equal = CustomerLead.Id
                },
                Selects = CustomerLeadSelect.Id
            };

            int count = await UOW.CustomerLeadRepository.Count(CustomerLeadFilter);

            if (count == 0)
            {
                CustomerLead.AddError(nameof(CustomerLeadValidator), nameof(CustomerLead.Id), ErrorCode.IdNotExisted);
            }
            return(count == 1);
        }