Пример #1
0
        private DailyFilterModel ParseFilterInfo(Business.Infrastructure.FilterInfo filter)
        {
            DailyFilterModel fm = new DailyFilterModel();

            Business.Infrastructure.FilterInfo single;
            DateTime start, end;

            if (filter != null && filter.Filters != null)
            {
                single = filter.Filters.Where(m => m.Field == "StartDate").FirstOrDefault();
                if (single != null)
                {
                    start        = DateTime.Parse(single.Value);
                    fm.StartDate = new DateTime(start.Year, start.Month, start.Day, 0, 0, 0);
                }

                single = filter.Filters.Where(m => m.Field == "EndDate").FirstOrDefault();
                if (single != null)
                {
                    end        = DateTime.Parse(single.Value);
                    fm.EndDate = new DateTime(end.Year, end.Month, end.Day, 23, 59, 59);
                }

                single = filter.Filters.Where(m => m.Field == "CarModelName").FirstOrDefault();
                if (single != null)
                {
                    fm.CarModelName = single.Value;
                }
            }

            return(fm);
        }
Пример #2
0
        public string Clear()
        {
            Guid idOwner    = new Guid("156c2cde-2c19-46c3-bcba-a27f9d1e4998");
            Guid idCustomer = new Guid("54612b5e-611f-4b71-9dbd-ed35b6f2976b");

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo
            {
                Filters = new List <Business.Infrastructure.FilterInfo>
                {
                    new Business.Infrastructure.FilterInfo {
                        Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "id_customer", Operator = "eq", Value = idCustomer.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "created_by", Operator = "eq", Value = "dummy"
                    }
                },
                Logic = "and"
            };

            List <rent> rents = RepoRent.FindAll(null, null, null, filters);
            int         count = rents.Count();

            foreach (rent row in rents)
            {
                RepoRent.Delete(row);
            }

            return(count.ToString() + " dihapus");
        }
Пример #3
0
        private DailyFilterModel ParseFilterInfo(Business.Infrastructure.FilterInfo filter)
        {
            DailyFilterModel fm = new DailyFilterModel();

            Business.Infrastructure.FilterInfo single;

            if (filter != null && filter.Filters != null)
            {
                single = filter.Filters.Where(m => m.Field == "StartDate").FirstOrDefault();
                if (single != null)
                {
                    fm.StartDate = DateTime.Parse(single.Value);
                    fm.StartDate = new DateTime(fm.StartDate.Year, fm.StartDate.Month, 1, 0, 0, 0);
                }

                single = filter.Filters.Where(m => m.Field == "EndDate").FirstOrDefault();
                if (single != null)
                {
                    fm.EndDate = DateTime.Parse(single.Value);
                    fm.EndDate = fm.EndDate.AddMonths(1);
                    fm.EndDate = new DateTime(fm.EndDate.Year, fm.EndDate.Month, 1, 23, 59, 59);
                    fm.EndDate = fm.EndDate.AddDays(-1);
                }
            }

            return(fm);
        }
Пример #4
0
        private void SetModelOptionsOnCreate(DriverFormStub formStub)
        {
            //kamus
            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            List <owner_user> ownerUser;
            List <driver>     ownerDriverList;    //driver punya owner
            List <string>     driverUsernameList; //username milik driver

            //algoritma
            formStub.FillTypeOptions();

            //mengisi pilihan username
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = formStub.IdOwner.ToString()
            });
            ownerUser          = RepoOwner.FindAllUser(null, null, null, filters);
            ownerDriverList    = RepoDriver.FindAll(null, null, null, filters);
            driverUsernameList = ownerDriverList.Select(m => m.username).ToList();

            //menghapus data dari ownerUser yang username nya ada di driverUsernameList
            ownerUser.RemoveAll(m => driverUsernameList.Contains(m.username));
            formStub.FillUsernameOptions(ownerUser);
        }
Пример #5
0
        private void SetModelOptionsOnEdit(DriverFormStub model)
        {
            //kamus
            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            List <owner_user> ownerUser;
            List <driver>     ownerDriverList;    //driver punya owner
            List <string>     driverUsernameList; //username milik driver

            //algoritma
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = model.IdOwner.ToString()
            });
            ownerUser       = RepoOwner.FindAllUser(null, null, null, filters);
            ownerDriverList = RepoDriver.FindAll(null, null, null, filters);

            driverUsernameList = ownerDriverList.Select(m => m.username).ToList();

            //hapus di driverUsernameList yang isinya sama dengan Username yang di edit
            driverUsernameList.Remove(model.Username);
            ownerUser.RemoveAll(m => driverUsernameList.Contains(m.username));
            model.FillUsernameOptions(ownerUser);

            model.FillTypeOptions();
        }
Пример #6
0
        private void AddOwnerFilterRent(Business.Infrastructure.FilterInfo filters, Guid idOwner)
        {
            if (filters == null)
            {
                filters = new Business.Infrastructure.FilterInfo {
                    Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
                }
            }
            ;

            if (filters.Filters == null)
            {
                filters.Filters = new List <Business.Infrastructure.FilterInfo>();
            }

            if (idOwner != null)
            {
                filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                    Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
                });
            }
        }

        #endregion
    }
Пример #7
0
        public string Get()
        {
            //kamus
            List <d_notification> notificationList;
            CustomPrincipal       user = User as CustomPrincipal;

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            List <string> messageList;
            string        response;

            //algoritma
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = user.IdOwner.Value.ToString()
            });
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "is_read", Operator = "eq", Value = false.ToString()
            });
            notificationList = RepoDummyNotification.FindAll(null, null, null, filters);

            foreach (d_notification n in notificationList)
            {
                if (n.is_read == false)
                {
                    n.is_read = true;
                }
                RepoDummyNotification.Save(n);
            }

            messageList = notificationList.Select(m => m.message).ToList();
            response    = string.Join("<br>", messageList);

            return(response);
        }
Пример #8
0
        public HttpResponseMessage FindRent([FromBody] GetRentParam param)
        {
            //kamus
            Rent                rent = null;
            rent                dbRent;
            HttpStatusCode      status = HttpStatusCode.OK;
            HttpResponseMessage response;
            string              message = null;

            Business.Infrastructure.FilterInfo filters;

            //algoritma
            filters = new Business.Infrastructure.FilterInfo {
                Field = "code", Operator = "eq", Value = param.RentCode
            };
            dbRent = RepoRent.Find(filters);

            if (dbRent != null)
            {
                rent = new Rent(dbRent);
            }
            else
            {
                message = "Kode Booking tidak ditemukan";
                status  = HttpStatusCode.BadRequest;
            }

            response = Request.CreateResponse(status, rent);
            if (message != null)
            {
                response.Content.Headers.Add("ResponseMessage", message);
            }

            return(response);
        }
Пример #9
0
        public string BindingCarModel()
        {
            //kamus
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters = param.Filters;
            Business.Infrastructure.FilterInfo carFilters;
            Guid?            idOwner = (User as CustomPrincipal).IdOwner;
            List <car_model> carModels;
            List <CarModelPresentationStub> result = new List <CarModelPresentationStub>();
            int        total = 0;
            List <car> cars;

            //algoritma
            carFilters = new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
            };
            //filters.Filters = new List<Business.Infrastructure.FilterInfo>();
            //filters.Filters.Add(new Business.Infrastructure.FilterInfo { Field = "id_owner", Operator = "eq", Value = idOwner.Value.ToString() });
            //filters.Filters.Add(new Business.Infrastructure.FilterInfo { Field = "is_active", Operator = "eq", Value = "true" });
            cars = RepoCar.FindAll(null, null, null, carFilters).ToList();

            carModels = cars.Select(m => m.car_model).Distinct().ToList();
            total     = carModels.Count();

            result = new CarModelPresentationStub().MapList(carModels).OrderBy(x => x.Name).ToList();

            return(new JavaScriptSerializer().Serialize(new { total = total, data = result }));
        }
Пример #10
0
        public HttpResponseMessage Submit([FromBody] GetRentParam param)
        {
            //kamus
            HttpResponseMessage response;
            HttpStatusCode      status = HttpStatusCode.OK;

            Business.Infrastructure.FilterInfo filters;
            rent          rent;
            api_rent      apiRent;
            ApiRentStatus apiStatus;
            string        message = null;

            //algoritma
            filters = new Business.Infrastructure.FilterInfo {
                Field = "code", Operator = "eq", Value = param.RentCode
            };
            rent = RepoRent.Find(filters);

            if (rent == null)
            {
                status  = HttpStatusCode.BadRequest;
                message = WebServiceMessage.OrderNotFoundAlert;
            }
            else
            {
                filters = new Business.Infrastructure.FilterInfo {
                    Field = "id_rent", Operator = "eq", Value = rent.id.ToString()
                };
                apiRent = RepoApiRent.Find(filters);

                if (apiRent == null)
                {
                    status  = HttpStatusCode.BadRequest;
                    message = WebServiceMessage.OrderNotFoundAlert;
                }
                else
                {
                    apiStatus = (ApiRentStatus)Enum.Parse(typeof(ApiRentStatus), apiRent.status);

                    if (apiRent.cancellation_status != null)
                    {
                        status  = HttpStatusCode.BadRequest;
                        message = WebServiceMessage.CancelAlert;
                    }
                    else
                    {
                        apiRent.cancellation_status = ApiRentCancellationStatus.CANCEL.ToString();
                        RepoApiRent.Save(apiRent);
                    }
                }
            }

            response = Request.CreateResponse(status);
            if (message != null)
            {
                response.Headers.Add("ResponseMessage", message);
            }

            return(response);
        }
Пример #11
0
        public JsonResult BindingDetail(FilterModelDetail model)
        {
            if (ModelState.IsValid)
            {
                //kasmus
                Business.Infrastructure.FilterInfo filters;
                List <expense_item> expenseItems;
                List <car_expense>  carExpenses;
                DateTime            dtStart, dtEnd;

                //algoritma
                dtStart = new DateTime(model.StartDate.Year, model.StartDate.Month, model.StartDate.Day, 0, 0, 0);
                dtEnd   = new DateTime(model.EndDate.Year, model.EndDate.Month, model.EndDate.Day, 23, 59, 59);

                //mengambil expense_item (pemasukan kendaraan)
                filters = new Business.Infrastructure.FilterInfo
                {
                    Filters = new List <Business.Infrastructure.FilterInfo>
                    {
                        new Business.Infrastructure.FilterInfo {
                            Field = "expense.date", Operator = "gte", Value = dtStart.ToString()
                        },
                        new Business.Infrastructure.FilterInfo {
                            Field = "expense.date", Operator = "lte", Value = dtEnd.ToString()
                        },
                        new Business.Infrastructure.FilterInfo {
                            Field = "category", Operator = "eq", Value = ExpenseItemCategory.VEHICLE.ToString()
                        },
                        new Business.Infrastructure.FilterInfo {
                            Field = "expense.rent.id_car", Operator = "eq", Value = model.IdCar.ToString()
                        }
                    }
                };
                expenseItems = RepoExpense.FindAllItem(null, null, null, filters);

                //mengambil carExpense (biaya kendaraan)
                filters = new Business.Infrastructure.FilterInfo
                {
                    Filters = new List <Business.Infrastructure.FilterInfo>
                    {
                        new Business.Infrastructure.FilterInfo {
                            Field = "expense_date", Operator = "gte", Value = dtStart.ToString()
                        },
                        new Business.Infrastructure.FilterInfo {
                            Field = "expense_date", Operator = "lte", Value = dtEnd.ToString()
                        },
                        new Business.Infrastructure.FilterInfo {
                            Field = "id_car", Operator = "eq", Value = model.IdCar.ToString()
                        }
                    }
                };
                carExpenses = RepoCarExpense.FindAll(null, null, null, filters);

                return(Json(new CarDetailReportPresentationStub().MapList(expenseItems, carExpenses), JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(false, JsonRequestBehavior.AllowGet));
            }
        }
        public string BindingToday()
        {
            //kamus
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters;

            filters = new Business.Infrastructure.FilterInfo
            {
                Filters = new List <Business.Infrastructure.FilterInfo>
                {
                    new Business.Infrastructure.FilterInfo {
                        Field = "tanggal_awal", Operator = "lte", Value = DateTime.Now.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "tanggal_akhir", Operator = "gte", Value = DateTime.Now.ToString()
                    },
                },
                Logic = "and"
            };

            List <Whitelist> items = RepoWhitelist.FindAll(null, null, null, filters);
            int total = items.Count();

            return(new JavaScriptSerializer().Serialize(new { total = total, data = new WhitelistPresentationStub().MapList(items) }));
        }
Пример #13
0
        public string Binding(DailyFilterModel model)
        {
            //kamus
            List <rent>         rents;
            List <driver>       drivers;
            List <expense_item> expenseItems;
            Guid     idOwner = (User as CustomPrincipal).IdOwner.Value;
            DateTime dtStart, dtEnd;

            Business.Infrastructure.FilterInfo filters;

            //algoritma
            //items = RepoExpense.GetDriverReport(idOwner, model.StartDate, model.EndDate);

            dtStart = new DateTime(model.StartDate.Year, model.StartDate.Month, model.StartDate.Day, 0, 0, 0);
            dtEnd   = new DateTime(model.EndDate.Year, model.EndDate.Month, model.EndDate.Day, 23, 59, 59);

            //mengambil data booking
            rents = RepoRent.FindAll(idOwner, dtStart, dtEnd);

            //mengambil data driver
            filters = new Business.Infrastructure.FilterInfo
            {
                Filters = new List <Business.Infrastructure.FilterInfo>
                {
                    new Business.Infrastructure.FilterInfo {
                        Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
                    },
                }
            };
            drivers = RepoDriver.FindAll(null, null, null, filters);

            //mengambil data epneseItem untuk pemasukan
            filters = new Business.Infrastructure.FilterInfo
            {
                Filters = new List <Business.Infrastructure.FilterInfo>
                {
                    new Business.Infrastructure.FilterInfo {
                        Field = "expense.date", Operator = "gte", Value = dtStart.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "expense.date", Operator = "lte", Value = dtEnd.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "category", Operator = "eq", Value = ExpenseItemCategory.DRIVER.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "expense.rent.id_owner", Operator = "eq", Value = idOwner.ToString()
                    },
                }
            };
            expenseItems = RepoExpense.FindAllItem(null, null, null, filters);

            return(new JavaScriptSerializer().Serialize(new SummaryStub().MapList(drivers, rents, expenseItems)));
        }
Пример #14
0
        private void FillModelOptions(CarExpenseFormStub model)
        {
            Guid?idOwner = (User as CustomPrincipal).IdOwner;

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
            };
            List <car> cars = RepoCar.FindAll(null, null, null, filters);

            model.FillCarOptions(cars);
        }
Пример #15
0
        public string Binding()
        {
            //kamus
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters = param.Filters;
            List <car_model> items = RepoCarModel.FindAll(param.Skip, param.Take, (param.Sortings != null ? param.Sortings.ToList() : null), param.Filters);
            int total = RepoCarModel.Count(param.Filters);

            return(new JavaScriptSerializer().Serialize(new { total = total, data = new CarModelPresentationStub().MapList(items) }));
        }
Пример #16
0
        public string BindingRent(Guid id, string action)
        {
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters = param.Filters;

            Guid?          idOwner                = (User as CustomPrincipal).IdOwner;
            List <rent>    listRent               = new List <rent>();
            List <expense> listExpense            = new List <expense>();
            List <BookingPresentationStub> result = new List <BookingPresentationStub>();

            Business.Infrastructure.FilterInfo filtersExpense = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            int total = 0;

            filtersExpense.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "rent.id_owner", Operator = "eq", Value = idOwner.ToString()
            });
            listExpense = RepoExpense.FindAll().Where(n => n.rent.id_owner == idOwner).ToList();

            if (idOwner.HasValue)
            {
                GridRequestParameters paramRent = new GridRequestParameters();
                paramRent = GridRequestParameters.Current;
                Business.Infrastructure.FilterInfo rentFilters = paramRent.Filters;
                AddOwnerFilterRent(rentFilters, idOwner.Value);

                listRent = RepoRent.FindAll(paramRent.Skip, paramRent.Take, (paramRent.Sortings != null ? paramRent.Sortings.ToList() : null), paramRent.Filters);

                //menghapus booking yang sudah memiliki invoice
                rent idRent;
                foreach (expense r in listExpense)
                {
                    idRent = listRent.Where(n => n.id == r.id_rent).FirstOrDefault();
                    if (idRent != null)
                    {
                        listRent.Remove(idRent);

                        if (action == "Edit" && idRent.id == id)
                        {
                            listRent.Add(idRent);
                        }
                    }
                }

                total = listRent.Count();
            }

            result = new BookingPresentationStub().MapList(listRent);

            return(new JavaScriptSerializer().Serialize(new { total = total, data = result }));
        }
Пример #17
0
        //[HttpPost]
        //public JsonResult Delete(Guid id)
        //{
        //    string template = "";
        //    ResponseModel response = new ResponseModel(true);
        //    car_package dbItem = RepoCarPackage.FindByPk(id);

        //    RepoCarPackage.Delete(dbItem);

        //    return Json(response);
        //}

        //public string BindingCarBrand()
        //{
        //    Guid idOwner = (User as CustomPrincipal).IdOwner.Value;
        //    List<car_brand> items = new List<car_brand>();
        //    items = RepoCar.FindAll().Where(x => x.id_owner == idOwner).Select(x => x.car_model.car_brand).Distinct().ToList();
        //    int total = items.Count();

        //    return new JavaScriptSerializer().Serialize(new { total = total, data = new CarBrandPresentationStub().MapList(items).OrderBy(x => x.Name) });
        //}

        //public string BindingCarModel(Guid? id)
        //{
        //    GridRequestParameters param = GridRequestParameters.Current;
        //    Guid idOwner = (User as CustomPrincipal).IdOwner.Value;
        //    //Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo { Filters = new List<Business.Infrastructure.FilterInfo>(), Logic = "and" };
        //    //filters.Filters.Add(new Business.Infrastructure.FilterInfo { Field = "id_owner", Operator = "eq", Value = idOwner.ToString() });
        //    //List<car> cars = RepoCar.FindAll(null, null, null, filters);
        //    //List<car> cars = RepoCar.FindAll().Where(x => x.id_owner == idOwner).ToList();

        //    ///var n dari car_model sedangkan x dari cars
        //    //List<car_model> items = RepoCarModel.FindAll().Where(n=>cars.Any(x=>x.id_car_model == n.id) && n.id_car_brand == id).ToList();
        //    List<car_model> items = RepoCar.FindAll().Where(n => n.car_model.car_brand.id == id && n.id_owner == idOwner).Select(x => x.car_model).Distinct().ToList();
        //    int total = items.Count();

        //    return new JavaScriptSerializer().Serialize(new { total = total, data = new CarModelPresentationStub().MapList(items).OrderBy(x => x.Name) });
        //}

        #region private

        private void FillModelOptions(CarPackageFormStub model)
        {
            Guid?idOwner = (User as CustomPrincipal).IdOwner;

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
            };
            List <car> cars = RepoCar.FindAll(null, null, null, filters);

            List <car_model> models = cars.Select(m => m.car_model).Distinct().ToList();
            List <car_brand> brands = models.Select(m => m.car_brand).Distinct().ToList();

            model.SetCarBrandOptions(brands);
            model.SetCarModelOptions(models);
        }
Пример #18
0
        public ActionResult Index()
        {
            //kamus
            Guid?      idOwner   = (User as CustomPrincipal).IdOwner;
            List <car> dbCarList = new List <car>();
            List <CarPresentationStub>  pCarList           = new List <CarPresentationStub>();
            Dictionary <string, string> jsonCarListByModel = new Dictionary <string, string>();
            List <string>       carModels;
            List <GenericModel> gCarList;
            Boolean             active = true;

            Business.Infrastructure.FilterInfo filters;

            //algoritma
            filters = new Business.Infrastructure.FilterInfo
            {
                Filters = new List <Business.Infrastructure.FilterInfo>
                {
                    new Business.Infrastructure.FilterInfo {
                        Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "is_active", Operator = "eq", Value = active.ToString()
                    },
                },
                Logic = "and"
            };
            dbCarList = RepoCar.FindAll(null, null, null, filters);
            pCarList  = new CarPresentationStub().MapList(dbCarList);
            carModels = pCarList.Select(m => m.CarModelName).Distinct().ToList();

            foreach (string cm in carModels)
            {
                gCarList = new List <GenericModel>();
                foreach (CarPresentationStub single in pCarList.Where(n => n.CarModelName == cm).ToList())
                {
                    gCarList.Add(new GenericModel {
                        text = single.LicensePlate, value = single.LicensePlate
                    });
                }
                jsonCarListByModel.Add(cm.Replace(" ", "_"), new JavaScriptSerializer().Serialize(gCarList));
            }

            //viewbag
            ViewBag.JsonCarListByModel = jsonCarListByModel;

            return(View(new DailyFilterModel()));
        }
Пример #19
0
        public string BindingItem()
        {
            //kamus
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters = param.Filters;

            int total = 0;
            //expense expenseSet = new expense();
            //List<expense_item> items = RepoExpense.FindAllItem().Where(x => x.id_expense == expenseSet.id).ToList();
            List <expense_item> items = new List <expense_item>();

            items = RepoExpense.FindAllItem(param.Skip, param.Take, (param.Sortings != null ? param.Sortings.ToList() : null), param.Filters);
            total = RepoExpense.CountItem(param.Filters);

            return(new JavaScriptSerializer().Serialize(new { total = total, data = new CostPresentationStub().MapListItem(items) }));
        }
Пример #20
0
        public string Binding()
        {
            //kamus
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters = param.Filters;
            List <rent> items;
            List <RentPresentationStub> result = new List <RentPresentationStub>();
            int total;

            //algoritma
            items  = RepoRent.FindAll(param.Skip, param.Take, (param.Sortings != null ? param.Sortings.ToList() : null), filters);
            total  = RepoRent.Count(param.Filters);
            result = new RentPresentationStub().MapList(items);

            return(new JavaScriptSerializer().Serialize(new { total = total, data = result }));
        }
Пример #21
0
        private void FillModelOptions(BookingFormStub model)
        {
            Guid idOwner = (User as CustomPrincipal).IdOwner.Value;
            List <car_package> result = new List <car_package>();

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
            });
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "is_active", Operator = "eq", Value = true.ToString()
            });

            result = RepoCarPackage.FindAll(null, null, null, filters);

            model.SetCarPackageOptions(result);
        }
Пример #22
0
        private void AddActiveFilter(Business.Infrastructure.FilterInfo filters, Boolean active)
        {
            if (filters == null)
            {
                filters = new Business.Infrastructure.FilterInfo {
                    Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
                }
            }
            ;

            if (filters.Filters == null)
            {
                filters.Filters = new List <Business.Infrastructure.FilterInfo>();
            }

            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "is_active", Operator = "eq", Value = active.ToString()
            });
        }
Пример #23
0
        /// <summary>
        /// start: ... - ... - 01
        /// end: ... - ... - 30/31
        /// </summary>
        /// <param name="filter"></param>
        /// <returns></returns>
        private DailyMonthlyFilterModel ParseFilterInfo(Business.Infrastructure.FilterInfo filter)
        {
            DailyMonthlyFilterModel fm = new DailyMonthlyFilterModel();

            Business.Infrastructure.FilterInfo single;

            if (filter != null && filter.Filters != null)
            {
                single = filter.Filters.Where(m => m.Field == "ReportType").FirstOrDefault();

                if (single != null)
                {
                    fm.ReportType = (ReportType)Enum.Parse(typeof(ReportType), single.Value);
                }

                single = filter.Filters.Where(m => m.Field == "StartDate").FirstOrDefault();
                if (single != null)
                {
                    fm.StartDate = DateTime.Parse(single.Value);

                    if (fm.ReportType == ReportType.MONTHLY)
                    {
                        fm.StartDate = new DateTime(fm.StartDate.Year, fm.StartDate.Month, 1);
                    }
                }

                single = filter.Filters.Where(m => m.Field == "EndDate").FirstOrDefault();
                if (single != null)
                {
                    fm.EndDate = DateTime.Parse(single.Value);

                    if (fm.ReportType == ReportType.MONTHLY)
                    {
                        fm.EndDate = fm.EndDate.AddMonths(1);
                        fm.EndDate = new DateTime(fm.EndDate.Year, fm.EndDate.Month, 1);
                        fm.EndDate = fm.EndDate.AddDays(-1);
                    }
                }
            }

            return(fm);
        }
Пример #24
0
        public string Binding()
        {
            //kamus
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters = param.Filters;
            Guid?          idOwner = (User as CustomPrincipal).IdOwner;
            int            total   = 0;
            List <invoice> items   = new List <invoice>();

            if (idOwner.HasValue)
            {
                AddOwnerFilter(filters, idOwner.Value);

                items = RepoInvoice.FindAll(param.Skip, param.Take, (param.Sortings != null ? param.Sortings.ToList() : null), param.Filters);
                total = RepoInvoice.Count(param.Filters);
            }

            return(new JavaScriptSerializer().Serialize(new { total = total, data = new InvoicePresentationStub().MapList(items) }));
        }
Пример #25
0
        public HttpResponseMessage Find([FromBody] GridRequestParameters param)
        {
            //kamus
            HttpStatusCode       httpStatus      = HttpStatusCode.OK;
            string               responseMessage = null;
            List <rent>          listRent        = new List <rent>();
            IEnumerable <string> headerValues;

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            List <BookingPresentationStub> results;

            //algoritma
            if (Request.Headers.TryGetValues("Username", out headerValues))
            {
                //mengambil order berdasarkan status = 'finish'
                filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                    Field = "driver.username", Operator = "eq", Value = headerValues.FirstOrDefault()
                });
                filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                    Field = "status", Operator = "eq", Value = RentStatus.FINISH.ToString()
                });

                //mengambil order finish sesuai param
                listRent = RepoRent.FindAll(param.Skip, param.Take, (param.Sortings != null ? param.Sortings.ToList() : null), filters);
            }
            else
            {
                httpStatus = HttpStatusCode.Forbidden;
            }

            //result
            results = new BookingPresentationStub().MapList(listRent);

            if (responseMessage != null)
            {
                HttpContext.Current.Response.AppendHeader("ResponseMessage", responseMessage);
            }
            return(Request.CreateResponse(httpStatus, results));
        }
Пример #26
0
        public ActionResult Create() //get
        {
            Guid?idOwner = (User as CustomPrincipal).IdOwner;
            List <Business.Entities.rent> listRent = new List <rent>();

            Business.Infrastructure.FilterInfo rentFilters = new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = idOwner.ToString()
            };

            if (idOwner.HasValue)
            {
                //listRent = RepoRent.FindAll().Where(x => x.id_owner == idOwner.Value).ToList();
                //rentFilters.Filters.Add(new Business.Infrastructure.FilterInfo { Field = "id_owner", Operator = "eq", Value = idOwner.ToString() });
                listRent = RepoRent.FindAll(null, null, null, rentFilters);
            }

            CostFormStub formStub = new CostFormStub(listRent);

            formStub.Date = DateTime.Now;
            return(View("Form", formStub));
        }
Пример #27
0
        public string BindingMap()
        {
            // Kamus
            List <RentPositionPresentationStub> result = new List <RentPositionPresentationStub>();
            List <rent_position> rentPositionList      = new List <rent_position>();
            List <rent>          rentList;
            CustomPrincipal      user = User as CustomPrincipal;

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            rent_position rentPosition;

            // algoritma
            //ambil rent yang GO untuk user login
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "status", Operator = "eq", Value = RentStatus.GO.ToString()
            });
            filters.Filters.Add(new Business.Infrastructure.FilterInfo {
                Field = "id_owner", Operator = "eq", Value = user.IdOwner.Value.ToString()
            });

            rentList = RepoRent.FindAll(null, null, null, filters);

            //ambil rent position terakhir dari setiap rent
            foreach (rent r in rentList)
            {
                rentPosition = r.rent_position.OrderByDescending(m => m.created_time).FirstOrDefault();
                //dimasukin ke rentPosition
                if (rentPosition != null)
                {
                    rentPositionList.Add(rentPosition);
                }
            }

            //mengisi RentPositionPresentationStub list
            result = new RentPositionPresentationStub().Map(rentPositionList);

            return(new JavaScriptSerializer().Serialize(result));
        }
Пример #28
0
        public ActionResult Edit(DriverFormStub model)
        {
            //bool isNameExist = RepoKompetitor.Find().Where(p => p.name == model.Name && p.id != model.Id).Count() > 0;
            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo {
                Filters = new List <Business.Infrastructure.FilterInfo>(), Logic = "and"
            };
            List <owner_user> ownerUser;
            List <driver>     ownerDriverList;    //driver punya owner
            List <string>     driverUsernameList; //username milik driver

            if (ModelState.IsValid)
            {
                driver dbItem = RepoDriver.FindByPk(model.Id);
                dbItem = model.GetDbObject(dbItem);

                try
                {
                    RepoDriver.Save(dbItem);
                }
                catch (Exception e)
                {
                    model.FillOwnerOptions(RepoOwner.FindAll());
                    model.FillTypeOptions();
                    model.FillUsernameOptions(RepoOwner.FindAllUser());
                    return(View("Form", model));
                }

                //message
                string template = HttpContext.GetGlobalResourceObject("MyGlobalMessage", "CreateSuccess").ToString();
                this.SetMessage(model.Name, template);

                return(RedirectToAction("Index"));
            }
            else
            {
                SetModelOptionsOnEdit(model);

                return(View("Form", model));
            }
        }
Пример #29
0
        public string Binding()
        {
            //kamus
            DisplayFormatHelper     dfh   = new DisplayFormatHelper();
            GridRequestParameters   param = GridRequestParameters.Current;
            List <ChartAttribute>   result;
            List <invoice>          items = null;
            DailyMonthlyFilterModel fm;

            Business.Infrastructure.FilterInfo filters;

            Guid idOwner = (Guid)(User as CustomPrincipal).IdOwner;

            //algoritma
            fm      = ParseFilterInfo(param.Filters);
            filters = new Business.Infrastructure.FilterInfo
            {
                Filters = new List <Business.Infrastructure.FilterInfo>
                {
                    new Business.Infrastructure.FilterInfo {
                        Field = "rent.id_owner", Operator = "eq", Value = idOwner.ToString()
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "invoice_date", Operator = "gte", Value = fm.StartDate.ToString(dfh.SqlDateFormat)
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "invoice_date", Operator = "lte", Value = fm.EndDate.ToString(dfh.SqlDateFormat)
                    },
                    new Business.Infrastructure.FilterInfo {
                        Field = "status", Operator = "neq", Value = InvoiceStatus.CANCEL.ToString()
                    }
                },
                Logic = "and"
            };

            items  = RepoInvoice.FindAll(null, null, null, filters);
            result = GenerateReport(fm.ReportType, items, fm.StartDate, fm.EndDate);

            return(new JavaScriptSerializer().Serialize(result));
        }
Пример #30
0
        public string BindingDriver()
        {
            //kamus
            GridRequestParameters param = GridRequestParameters.Current;

            Business.Infrastructure.FilterInfo filters = param.Filters;
            Guid?         idOwner = (User as CustomPrincipal).IdOwner;
            List <driver> items;
            List <DriverPresentationStub> result = new List <DriverPresentationStub>();
            int total = 0;

            //algoritma
            if (idOwner.HasValue)
            {
                AddOwnerFilter(filters, idOwner.Value);

                items  = RepoDriver.FindAll(null, null, null, filters);
                total  = items.Count();
                result = new DriverPresentationStub().MapList(items).OrderBy(x => x.Name).ToList();
            }

            return(new JavaScriptSerializer().Serialize(new { total = total, data = result }));
        }
Пример #31
0
        public int Test1()
        {
            //Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo
            //{
            //    Field = "application",
            //    Operator = "eq",
            //    Value = "Test"
            //};

            //Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo
            //{
            //    Filters = new List<Business.Infrastructure.FilterInfo>
            //    {
            //        new Business.Infrastructure.FilterInfo { Field = "application", Operator = "eq", Value = "Test"},
            //        new Business.Infrastructure.FilterInfo { Field = "user", Operator = "eq", Value = "chandra"}
            //    },
            //    Logic = "or"
            //};

            //Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo
            //{
            //    Filters = new List<Business.Infrastructure.FilterInfo>
            //    {
            //        new Business.Infrastructure.FilterInfo
            //        {
            //            Filters = new List<Business.Infrastructure.FilterInfo>
            //            {
            //                new Business.Infrastructure.FilterInfo { Field = "user", Operator = "eq", Value = "chandra"},
            //                new Business.Infrastructure.FilterInfo { Field = "user", Operator = "eq", Value = "yosef"}
            //            },
            //            Logic = "or"
            //        },
            //        new Business.Infrastructure.FilterInfo { Field = "application", Operator = "eq", Value = "Minibank"}
            //    },
            //    Logic = "and"
            //};

            //Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo
            //{
            //    Filters = new List<Business.Infrastructure.FilterInfo>
            //    {
            //        new Business.Infrastructure.FilterInfo
            //        {
            //            Filters = new List<Business.Infrastructure.FilterInfo>
            //            {
            //                new Business.Infrastructure.FilterInfo { Field = "user", Operator = "eq", Value = "chandra"},
            //                new Business.Infrastructure.FilterInfo { Field = "user", Operator = "eq", Value = "yosef"}
            //            },
            //            Logic = "or"
            //        },
            //        new Business.Infrastructure.FilterInfo
            //        {
            //            Filters = new List<Business.Infrastructure.FilterInfo>
            //            {
            //                new Business.Infrastructure.FilterInfo { Field = "application", Operator = "eq", Value = "Test"},
            //                new Business.Infrastructure.FilterInfo { Field = "application", Operator = "eq", Value = "Test1"}
            //            },
            //            Logic = "or"
            //        }
            //    },
            //    Logic = "and"
            //};

            Business.Infrastructure.FilterInfo filters = new Business.Infrastructure.FilterInfo
            {
                Filters = new List<Business.Infrastructure.FilterInfo>
                {
                    new Business.Infrastructure.FilterInfo
                    {
                        Filters = new List<Business.Infrastructure.FilterInfo>
                        {
                            new Business.Infrastructure.FilterInfo { Field = "user", Operator = "eq", Value = "chandra"},
                            new Business.Infrastructure.FilterInfo { Field = "application", Operator = "eq", Value = "Test"}
                        },
                        Logic = "and"
                    },
                    new Business.Infrastructure.FilterInfo
                    {
                        Filters = new List<Business.Infrastructure.FilterInfo>
                        {
                            new Business.Infrastructure.FilterInfo { Field = "user", Operator = "eq", Value = "yosef"},
                            new Business.Infrastructure.FilterInfo { Field = "application", Operator = "eq", Value = "Minibank"}
                        },
                        Logic = "and"
                    }
                },
                Logic = "or"
            };

            List<log> l = RepoLog.FindAll(null, null, null, filters);

            return l.Count();
        }