Example #1
0
        public IEnumerable <LoanRequest> GetLoanRequestsByStatus(LoanRequestStatus status)
        {
            IQueryable <LoanRequest> loanRequests = from loanRequest in this.ActiveEntities
                                                    where loanRequest.Status == status
                                                    select loanRequest;

            return(loanRequests);
        }
Example #2
0
 /// <summary>
 /// Constructor
 /// </summary>
 public LoanRequestCounts(string name,
     LoanRequestStatus loanRequestStatus,
     Int64 count)
 {
     this.Name = name;
     this.LoanRequestStatus = loanRequestStatus;
     this.Count = count;
 }
Example #3
0
 public LoanRequestSearch(int id, UInt64 internalTrackingCode, string trackingCode, string names, 
     string lastName, DateTime loanRequestDate, LoanRequestStatus loanRequestStatus)
 {
     this._id = id;
     this._internalTrackingCode = internalTrackingCode;
     this._trackingCode = trackingCode;
     this._names = names;
     this._lastName = lastName;
     this._loanRequestDate = loanRequestDate;
     this._loanRequestStatus = loanRequestStatus;
 }
Example #4
0
        public IEnumerable <LoanRequest> GetRequestsByStatusAndRemainingApprovers(
            LoanRequestStatus loanRequestStatus,
            IEnumerable <IdentityRoleEntity> identityRoles)
        {
            IEnumerable <LoanRequest> loanRequests =
                (from loanRequest in this.ActiveEntities
                 where loanRequest.Status == loanRequestStatus
                 select loanRequest).ToList();

            loanRequests =
                loanRequests.Where(loanRequest => loanRequest.RemainingApprovers.Intersect(identityRoles).Any());
            return(loanRequests);
        }
 public LoanTrackingSolidarityGroupsReport(int groupId,
     string solidarityGroupName,
     Address solidarityGroupAddress,
     string CURP,
     string names,
     string lastName,
     string secondLastName,
     Gender gender,
     Ocupation ocupation,
     EducationLevel educationLevel,
     Address address,
     ContactInformation contactInformation,
     string trackingCode,
     UInt64 internalTrackingCode,
     LoanRequestStatus loanRequestStatus,
     DateTime loanRequestDate,
     DateTime? loanAuthorizationDate,
     LoanType loanType,
     decimal loanedAmount)
 {
     this._groupId = groupId;
     this._solidarityGroupName = solidarityGroupName;
     this._solidarityGroupAddress = solidarityGroupAddress;
     this._curp = CURP;
     this._names = names;
     this._lastName = lastName;
     this._secondLastName = secondLastName;
     this._gender = gender;
     this._ocupation = ocupation;
     this._educationLevel = educationLevel;
     this._address = address;
     this._contactInformation = contactInformation;
     this._trackingCode = trackingCode;
     this._internalTrackingCode = internalTrackingCode;
     this._loanRequestStatus = loanRequestStatus;
     this._loanRequestDate = loanRequestDate;
     this._loanAuthorizationDate = loanAuthorizationDate;
     this._loanType = loanType;
     this._loanedAmount = loanedAmount;
 }
Example #6
0
        /// <summary>
        /// Verifies that a loan request transition is a valid transition
        /// from the old state to the new state. If not it will raise an exception
        /// </summary>
        /// <param name="oldStatus"></param>
        /// <param name="newStatus"></param>
        public void VerifyLoanRequestTransitionIsValid(LoanRequestStatus oldStatus,
            LoanRequestStatus newStatus)
        {
            try
            {
                string oldStatusName = Enum.GetName (typeof (LoanRequestStatus), oldStatus);
                string newStatusName = Enum.GetName (typeof (LoanRequestStatus), newStatus);

                if (oldStatus == LoanRequestStatus.Aprobada)
                {
                    if (newStatus != LoanRequestStatus.Corriente
                        && newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.Aprobada)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.Cancelada)
                {
                    if (newStatus != LoanRequestStatus.Cancelada)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.Capturada)
                {
                    if (newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.Rechazada
                        && newStatus != LoanRequestStatus.ExpedienteIntegrado
                        && newStatus != LoanRequestStatus.Capturada)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.Condicionada)
                {
                    if (newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.Rechazada
                        && newStatus != LoanRequestStatus.ExpedienteIntegrado
                        && newStatus != LoanRequestStatus.Condicionada)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.Corriente)
                {
                    if (newStatus != LoanRequestStatus.Vencida
                        && newStatus != LoanRequestStatus.Pagada
                        && newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.Corriente)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.EnCaptura)
                {
                    if (newStatus != LoanRequestStatus.Capturada
                        && newStatus != LoanRequestStatus.EnCaptura)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.ExpedienteIntegrado)
                {
                    if (newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.Rechazada
                        && newStatus != LoanRequestStatus.Condicionada
                        && newStatus != LoanRequestStatus.Aprobada
                        && newStatus != LoanRequestStatus.ExpedienteIntegrado)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.ExtraJudicial)
                {
                    if (newStatus != LoanRequestStatus.JudicialAltoRiesgo
                        && newStatus != LoanRequestStatus.Pagada
                        && newStatus != LoanRequestStatus.Vencida
                        && newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.ExtraJudicial)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.JudicialAltoRiesgo)
                {
                    if (newStatus != LoanRequestStatus.Pagada
                        && newStatus != LoanRequestStatus.Corriente
                        && newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.JudicialAltoRiesgo)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.Pagada)
                {
                    if (newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.Pagada)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.Rechazada)
                {
                    if (newStatus != LoanRequestStatus.Rechazada)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else if (oldStatus == LoanRequestStatus.Vencida)
                {
                    if (newStatus != LoanRequestStatus.Corriente
                        && newStatus != LoanRequestStatus.ExtraJudicial
                        && newStatus != LoanRequestStatus.Pagada
                        && newStatus != LoanRequestStatus.Cancelada
                        && newStatus != LoanRequestStatus.Vencida)
                    {
                        throw new ZiblerBusinessComponentsException (
                            String.Format (
                                Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                                oldStatusName,
                                newStatusName));
                    }
                }
                else
                {
                    throw new ZiblerBusinessComponentsException (
                        String.Format (
                            Resources.LoanRequestOperationsMsgLoanStatusTransitionIsInvalid,
                            oldStatusName,
                            newStatusName));
                }
            }
            /* If the exception was thrown here, just pass it up */
            catch (ZiblerBusinessComponentsException ex)
            {
                throw;
            }
            /* Catch any Data Layer or other exception and throw an unkown exception */
            catch (Exception ex)
            {
                ZiblerBusinessComponentsUnknownException exc
                = new ZiblerBusinessComponentsUnknownException (ex);

                /* Throw the new exception */
                throw exc;
            }
        }
Example #7
0
 public LoanRequestMainReport(int loanRequestId,
     string CURP,
     string names,
     string lastName,
     string secondLastName,
     string clltrlNames,
     string clltrlLastName,
     string clltrlSecondLastName,
     DateTime birthDate,
     Gender gender,
     Ocupation ocupation,
     EducationLevel educationLevel,
     Address address,
     ContactInformation contactInformation,
     string trackingCode,
     UInt64 internalTrackingCode,
     string userName,
     LoanRequestStatus loanRequestStatus,
     DateTime loanRequestDate,
     DateTime? loanAuthorizationDate,
     LoanType loanType,
     decimal loanedAmount,
     string sector,
     string subsector,
     string branch)
 {
     this._loanRequestId = loanRequestId;
     this._curp = CURP;
     this._names = names;
     this._lastName = lastName;
     this._secondLastName = secondLastName;
     this._collateralNames = clltrlNames;
     this._collateralLastName = clltrlLastName;
     this._collateralSecondLastName = clltrlSecondLastName;
     this._birthDate = birthDate;
     this._gender = gender;
     this._ocupation = ocupation;
     this._educationLevel = educationLevel;
     this._address = address;
     this._contactInformation = contactInformation;
     this._trackingCode = trackingCode;
     this._internalTrackingCode = internalTrackingCode;
     this._username = userName;
     this._loanRequestStatus = loanRequestStatus;
     this._loanRequestDate = loanRequestDate;
     this._loanAuthorizationDate = loanAuthorizationDate;
     this._loanType = loanType;
     this._loanedAmount = loanedAmount;
     this._sector = sector;
     this._subsector = subsector;
     this._branch = branch;
 }