Пример #1
0
        public IEnumerable <CompanyComplianceVM> GetAllCompliancesByParam(CompanyComplianceVM param, DateTime fromDate, DateTime toDate)
        {
            try
            {
                IQueryable <CompanyComplianceVM> query = (from record in DbContext.CompanyCompliances.AsNoTracking()
                                                          join comp in DbContext.Companies.AsNoTracking() on record.CompanyID equals comp.CompanyID
                                                          orderby record.Date descending
                                                          where (DbFunctions.TruncateTime(record.Date) >= DbFunctions.TruncateTime(fromDate) && DbFunctions.TruncateTime(record.Date) <= DbFunctions.TruncateTime(toDate))
                                                          select new CompanyComplianceVM
                {
                    CompanyComplianceID = record.CompanyComplianceID,
                    LegalAuthorityName = record.LegalAuthorityName,
                    Description = record.Description,
                    Remarks1 = record.Remarks1,
                    Remarks2 = record.Remarks2,
                    GeneralRemarks = record.GeneralRemarks,
                    Date = record.Date,
                    CompanyName = comp.Name,
                    Amount = record.Amount,
                    Status = record.Status
                });


                query = GetComplianceFiltersOrderQuery(query, param, true);


                int totalRecord = query.Count();

                var complianceList = query.Skip(param.DTObject.start).Take(param.DTObject.length).ToList().Select(index => new CompanyComplianceVM
                {
                    CompanyComplianceID = index.CompanyComplianceID,
                    Description         = index.Description,
                    Remarks1            = index.Remarks1,
                    Remarks2            = index.Remarks2,
                    GeneralRemarks      = index.GeneralRemarks,
                    LegalAuthorityName  = index.LegalAuthorityName,
                    Date        = index.Date,
                    CompanyName = index.CompanyName,
                    Amount      = index.Amount,
                    Status      = index.Status,
                    DTObject    = new DataTablesViewModel()
                    {
                        TotalRecordsCount = totalRecord
                    }
                }).ToList();



                return(complianceList);
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("Exception Raised : Message[{0}] Stack Trace [{1}] ", ex.Message, ex.StackTrace);
                return(null);
            }
        }
Пример #2
0
        public ActionResult ComplianceList(DataTablesViewModel param, string fromDate, string toDate)
        {
            try
            {
                if (!PermissionControl.CheckPermission(UserAppPermissions.Compliance_View))
                {
                    return(RedirectToAction("Restricted", "Home"));
                }

                DateTime frdate = DateTime.Now;
                if (!string.IsNullOrWhiteSpace(fromDate))
                {
                    frdate = DateTime.Parse(fromDate);
                }

                DateTime tdate = DateTime.Now;
                if (!string.IsNullOrWhiteSpace(toDate))
                {
                    tdate = DateTime.Parse(toDate);
                }

                logger.DebugFormat("Getting Company Compliance List with From Date [{0}] and To Date [{1}]", frdate.ToShortDateString(), tdate.ToShortDateString());

                CompanyComplianceVM compliance = new CompanyComplianceVM();
                compliance.DTObject = param;
                var list = complianceManagement.GetAllCompliancesByParam(compliance, frdate, tdate);
                logger.DebugFormat("Successfully Retrieve  Company Compliance List Records [{2}] with From Date [{0}] and To Ddate [1]", frdate.ToShortDateString(), tdate.ToShortDateString(), list.Count());

                return(Json(new
                {
                    sEcho = param.draw,
                    iTotalRecords = list.Select(i => i.DTObject.TotalRecordsCount).FirstOrDefault(),
                    iTotalDisplayRecords = list.Select(i => i.DTObject.TotalRecordsCount).FirstOrDefault(), // Filtered Count
                    aaData = list
                }));
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("Exception Raised : Message[{0}] Stack Trace [{1}] ", ex.Message, ex.StackTrace);
                return(null);
            }
        }
Пример #3
0
        private IQueryable <CompanyComplianceVM> GetComplianceFiltersOrderQuery(IQueryable <CompanyComplianceVM> query, CompanyComplianceVM param, bool forAll = false)
        {
            try
            {
                //   var expression = PredicateBuilder.True<AssetsEntity>();
                if (param == null)
                {
                    return(query);
                }

                int index = -1;
                foreach (var columnData in param.DTObject.columns)
                {
                    index += 1;
                    if (columnData.orderable)
                    {
                        foreach (var row in param.DTObject.order.Where(i => i.column == index))
                        {
                            if (row.dir == "asc")
                            {
                                query = query.OrderBy(columnData.data);
                            }
                            else
                            {
                                query = query.OrderByDescending(columnData.data);
                            }
                        }
                    }


                    if (columnData.search.value == null || string.IsNullOrEmpty(columnData.search.value.Trim()))
                    {
                        continue;
                    }
                    switch (columnData.data)
                    {
                    case "Description":
                        if (!forAll)
                        {
                            query = query.Where(col => col.Description.ToUpper().Contains(columnData.search.value.ToUpper()));
                        }
                        break;
                    }
                }

                string id = Utility.CovertID(param.DTObject.search.value, "CC-");

                if (param.DTObject.search.value != null && !string.IsNullOrEmpty(param.DTObject.search.value))
                {
                    query = query.Where(col => (
                                            col.Description.ToUpper().Contains(param.DTObject.search.value.ToUpper()) ||
                                            col.LegalAuthorityName.ToUpper().Contains(param.DTObject.search.value.ToUpper()) ||
                                            col.Status.ToUpper().Contains(param.DTObject.search.value.ToUpper()) ||
                                            col.Remarks1.ToUpper().Contains(param.DTObject.search.value.ToUpper()) ||
                                            col.Remarks2.ToUpper().Contains(param.DTObject.search.value.ToUpper()) ||
                                            col.GeneralRemarks.ToUpper().Contains(param.DTObject.search.value.ToUpper()) ||
                                            col.CompanyComplianceID.ToString().Equals(id)));
                }


                return(query);


                return(query);
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("Exception Raised : Message[{0}] Stack Trace [{1}] ", ex.Message, ex.StackTrace);
                return(null);
            }
        }
Пример #4
0
 public IEnumerable <CompanyComplianceVM> GetAllCompliancesByParam(CompanyComplianceVM param, DateTime fromDate, DateTime toDate)
 {
     return(complianceRepository.GetAllCompliancesByParam(param, fromDate, toDate));
 }