public List <SouvenirStockViewModel> GetAllSouvenirStock(SearchTransactionSouvenirViewModel parameters)
        {
            using (MarcommEntities db = new MarcommEntities())
            {
                bool NullCode        = string.IsNullOrWhiteSpace(parameters.code);
                bool NullRequestBy   = string.IsNullOrWhiteSpace(parameters.requestBy);
                bool NullRequestDate = string.IsNullOrWhiteSpace(parameters.requestDate);
                bool NullDueDate     = string.IsNullOrWhiteSpace(parameters.dueDate);
                bool NullStatus      = string.IsNullOrWhiteSpace(parameters.status);
                bool NullCreatedDate = string.IsNullOrWhiteSpace(parameters.createdDate);
                bool NullCreatedBy   = string.IsNullOrWhiteSpace(parameters.createdBy);

                DateTime?requestDate = NullRequestDate ? (DateTime?)null :
                                       DateTime.Parse(
                    DateTime.ParseExact(parameters.requestDate, "dd'-'MM'-'yyyy", CultureInfo.InvariantCulture).ToString("MM'/'dd'/'yyyy"));
                DateTime?dueDate = NullDueDate ? (DateTime?)null :
                                   DateTime.Parse(
                    DateTime.ParseExact(parameters.dueDate, "dd'-'MM'-'yyyy", CultureInfo.InvariantCulture).ToString("MM'/'dd'/'yyyy"));
                DateTime?createdDate = NullCreatedDate ? (DateTime?)null :
                                       DateTime.Parse(
                    DateTime.ParseExact(parameters.createdDate, "dd'-'MM'-'yyyy", CultureInfo.InvariantCulture).ToString("MM'/'dd'/'yyyy"));

                var souvenir_stock = (from p in db.t_souvenir where p.is_delete == false select p).ToList();

                souvenir_stock = !NullCode ? (from p in souvenir_stock where p.code.Contains(parameters.code) select p).ToList() : souvenir_stock;
                souvenir_stock = !NullRequestDate ? (from p in souvenir_stock where DateTime.Compare((DateTime)p.request_date, (DateTime)requestDate) == 0 select p).ToList() : souvenir_stock;
                souvenir_stock = !NullDueDate ? (from p in souvenir_stock where DateTime.Compare((DateTime)p.request_due_date, (DateTime)dueDate) == 0 select p).ToList() : souvenir_stock;
                souvenir_stock = !NullCreatedDate ? (from p in souvenir_stock where DateTime.Compare((DateTime)p.created_date, (DateTime)createdDate) == 0 select p).ToList() : souvenir_stock;
                souvenir_stock = !NullRequestBy ? (from p in souvenir_stock where p.request_by.Equals(
                                                       (from q in db.m_employee where !q.id_delete && (q.first_name + " " + q.last_name).Contains(parameters.requestBy) select q.id).SingleOrDefault()) select p).ToList() : souvenir_stock;
                souvenir_stock = !NullCreatedBy ? (from p in souvenir_stock where p.created_by.Equals(Convert.ToInt64(
                                                                                                          (from q in db.m_employee where !q.id_delete && (q.first_name + " " + q.last_name).Contains(parameters.createdBy) select q.id).SingleOrDefault())) select p).ToList() : souvenir_stock;
                souvenir_stock = !NullStatus ? (from p in souvenir_stock where GetStatusId(parameters.status.ToLower()).Contains((int)p.status) select p).ToList() : souvenir_stock;

                List <SouvenirStockViewModel> SouvenirStock = new List <SouvenirStockViewModel>();
                foreach (var souvenir in souvenir_stock)
                {
                    SouvenirStockViewModel Souvenir = new SouvenirStockViewModel();
                    Souvenir.id             = souvenir.id;
                    Souvenir.code           = souvenir.code;
                    Souvenir.requestBy      = souvenir.request_by;
                    Souvenir.requestDate    = souvenir.request_date;
                    Souvenir.requestDueDate = souvenir.request_due_date;
                    Souvenir.status         = souvenir.status;
                    Souvenir.createdDate    = souvenir.created_date;
                    Souvenir.createdBy      = souvenir.created_by;

                    Souvenir.requestByToFullName = GetFullNameFromIdEmployee(souvenir.request_by);
                    Souvenir.createdByToFullName = GetFullNameFromIdEmployee(Convert.ToInt32(souvenir.created_by));

                    SouvenirStock.Add(Souvenir);
                }
                return(SouvenirStock);
            }
        }
 public List <SouvenirStockViewModel> Get([FromUri] SearchTransactionSouvenirViewModel parameters)
 {
     return(service.GetAllSouvenirStock(parameters));
 }