Exemplo n.º 1
0
        /// <summary>
        /// Getmultiples holds by rol
        /// </summary>
        /// <param name="agencyCode">Agency Code</param>
        /// <param name="categoryHold">Category Id</param>
        /// <param name="dateFrom">Date from</param>
        /// <param name="dateTo">Date To</param>
        /// <param name="amount">Amount</param>
        /// <param name="user">User login</param>
        /// <returns>Hold results</returns>
        public List <OnHoldChecksModel> GetMultiplesHoldsData(OnHoldFiltersModels filters)
        {
            using (SqlConnection connection = new SqlConnection(_connectionString))
            {
                var holdList = new List <OnHoldChecksModel>();

                string sql = "Viacheck.PCN_GetChecksMultipleHolds";
                var    p   = new DynamicParameters();
                p.Add("@agencyCode", filters.AgencyCode, dbType: DbType.Int32, direction: ParameterDirection.Input);
                p.Add("@groupHold", filters.CategoryHold, dbType: DbType.Int32, direction: ParameterDirection.Input);
                p.Add("@dateFrom", filters.DateFrom, dbType: DbType.DateTime, direction: ParameterDirection.Input);
                p.Add("@dateTo", filters.DateTo, dbType: DbType.DateTime, direction: ParameterDirection.Input);
                p.Add("@amount", filters.Amount, dbType: DbType.Decimal, direction: ParameterDirection.Input);
                p.Add("@user", filters.User, dbType: DbType.String, direction: ParameterDirection.Input);

                holdList = connection.Query <OnHoldChecksModel>(sql, p, commandType: CommandType.StoredProcedure).ToList();

                return(holdList);
            }
        }
Exemplo n.º 2
0
 public async Task <OnHoldResponseModel> GetChecksOnHoldV1([FromBody] OnHoldFiltersModels holdParameters)
 {
     try
     {
         return(new OnHoldResponseModel()
         {
             Status = new MessageResponseModel {
                 Code = MessageResponse.SUCCESS_CODE
             },
             HoldResults = _onHoldBussines.GetChecksOnHoldV1(holdParameters)
         });
     }
     catch (Exception ex)
     {
         _viamLogger.Error(ex);
         return(new OnHoldResponseModel()
         {
             Status = new MessageResponseModel {
                 Code = MessageResponse.ERROR_CODE, Message = ex.Message
             }
         });
     }
 }
        public List <OnHoldChecksModel> GetChecksOnHoldV1(OnHoldFiltersModels filters)
        {
            var checkHoldList = _onHoldRepositoryRead.GetMultiplesHoldsDataV1(filters);

            return(checkHoldList);
        }
        public List <OnHoldChecksModel> GetChecksOnHold(OnHoldFiltersModels filters)
        {
            var checkHoldList = new List <OnHoldChecksModel>();
            var checkIdsList  = _onHoldRepositoryRead.GetMultiplesHoldsData(filters);

            var checkList = (from chk in checkIdsList
                             select chk.CheckID).Distinct();

            foreach (var checkId in checkList.ToList())
            {
                var checkHoldsList = (from chk in checkIdsList
                                      where chk.CheckID == checkId
                                      select chk
                                      ).ToList();


                var check = checkHoldsList.FirstOrDefault();
                var arrayStatusDescription          = this.GetDescriptionCheck(check.Description.ToString());
                var isDefinitive                    = arrayStatusDescription.Length == 3 ? arrayStatusDescription[1] : string.Empty;
                List <OnHoldDescriptionModel> holds = this.GetHoldsByCheck(checkHoldsList, isDefinitive);

                string holdColor = "#000000";
                if (isDefinitive == "1")
                {
                    holdColor = "red";
                }
                else
                {
                    var holdPriority = (from obj in checkHoldsList select obj).Min(c => c.HoldPriority);
                    holdColor = (from obj in checkHoldsList where obj.HoldPriority == holdPriority select obj).FirstOrDefault().HoldColor;
                }

                checkHoldList.Add(new OnHoldChecksModel()
                {
                    CheckID             = check.CheckID,
                    BatchID             = check.BatchID,
                    CheckStatus         = check.CheckStatus,
                    Amount              = check.Amount,
                    Transit             = check.Transit,
                    CheckNumber         = check.CheckNumber,
                    Account             = check.Account,
                    Created             = check.Created,
                    LocationName        = check.LocationName,
                    RefImageKey         = check.RefImageKey,
                    Notes               = check.Notes,
                    OwnLicense          = check.OwnLicense,
                    FinCen              = check.FinCen,
                    Holds               = holds,
                    HighlightedField    = check.HighlightedField,
                    LocationId          = check.LocationId,
                    GiactValidation     = check.GiactValidation.ToString(),
                    Description         = DescriptionHelper(arrayStatusDescription, check.Description),
                    IsDefinitive        = isDefinitive,
                    HoldColor           = holdColor,
                    VerifyHoldNoShowed  = (holds.Count != checkHoldsList.Count),
                    OriginalAccount     = check.Account,
                    OriginalAmount      = check.Amount,
                    OriginalCheckNumber = check.CheckNumber,
                    OriginalTransit     = check.Transit
                });
            }
            return(checkHoldList);
        }