//-------------------------------------------------------------------------------------------------------------------------------- public IQueryable <TblLifeInsurance> GetFilterList(FilterItemsViewModel filter) { //کاربر بر اساس نمایندگی جستجو میکند if (filter.AgentID != null && filter.AgentID != 0.ToString()) { //بررسی اینکه آیا بر اساس تاریخ شروع بیمه نامه هم فیلتر اعمال کرده یا نه //کاربر بر اساس تاریخ هم فیلتر کرده if (filter.FromDate_Start != null || filter.ToDate_Start != null) { if (filter.FromDate_Start != null && filter.ToDate_Start == null) { try { var date = filter.FromDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.UserID == filter.AgentID && a.Date_Start_Miladi >= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } else if (filter.FromDate_Start == null && filter.ToDate_Start != null) { try { var date = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.UserID == filter.AgentID && a.Date_Start_Miladi <= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } else { try { var fromDate = filter.FromDate_Start.DateToMiladi(); var toDate = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.UserID == filter.AgentID && a.Date_Start_Miladi >= fromDate && a.Date_Start_Miladi <= toDate).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } } //کاربر تاریخی وارد نکرده else { var result = _db.TblLifeInsurance.Where(a => a.UserID == filter.AgentID).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } } //کاربر بر اساس زیرگروه جستجو میکند else if (filter.SupervisiorID != 0 && filter.SupervisiorID != null) { //بررسی اینکه آیا بر اساس تاریخ شروع بیمه نامه هم فیلتر اعمال کرده یا نه //کاربر بر اساس تاریخ هم فیلتر کرده if (filter.FromDate_Start != null || filter.ToDate_Start != null) { if (filter.FromDate_Start != null && filter.ToDate_Start == null) { try { var date = filter.FromDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.SupervisorID == filter.SupervisiorID && a.Date_Start_Miladi >= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } else if (filter.FromDate_Start == null && filter.ToDate_Start != null) { try { var date = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.SupervisorID == filter.SupervisiorID && a.Date_Start_Miladi <= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } else { try { var fromDate = filter.FromDate_Start.DateToMiladi(); var toDate = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.SupervisorID == filter.SupervisiorID && a.Date_Start_Miladi >= fromDate && a.Date_Start_Miladi <= toDate).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } } //کاربر تاریخی وارد نکرده else { var result = _db.TblLifeInsurance.Where(a => a.SupervisorID == filter.SupervisiorID).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } } //کاربر بر اساس دفاتر پیشخوان جستجو میکند else if (filter.PishkhanID != 0 && filter.PishkhanID != null) { //بررسی اینکه آیا بر اساس تاریخ شروع بیمه نامه هم فیلتر اعمال کرده یا نه //کاربر بر اساس تاریخ هم فیلتر کرده if (filter.FromDate_Start != null || filter.ToDate_Start != null) { if (filter.FromDate_Start != null && filter.ToDate_Start == null) { try { var date = filter.FromDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.PishkhanID == filter.PishkhanID && a.Date_Start_Miladi >= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } else if (filter.FromDate_Start == null && filter.ToDate_Start != null) { try { var date = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.PishkhanID == filter.PishkhanID && a.Date_Start_Miladi <= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } else { try { var fromDate = filter.FromDate_Start.DateToMiladi(); var toDate = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.PishkhanID == filter.PishkhanID && a.Date_Start_Miladi >= fromDate && a.Date_Start_Miladi <= toDate).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } catch { throw new Exception(); } } } //کاربر تاریخی وارد نکرده else { var result = _db.TblLifeInsurance.Where(a => a.PishkhanID == filter.PishkhanID).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } } //کاربر بر اساس شماره بیمه نامه جستجو میکند else if (filter.InsuranceNumber != null) { var result = _db.TblLifeInsurance.Where(a => a.InsuranceNumber_Number == filter.InsuranceNumber).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } //کاربر بر اساس شماره سریال جستجو میکند else if (filter.InsuranceSerial != null) { var result = _db.TblLifeInsurance.Where(a => a.Serial == filter.InsuranceSerial).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } //کاربر بر اساس تاریخ صدور جستجو میکند else if (filter.FromDate_Soodoor != null || filter.ToDate_Soodoor != null) { if (filter.FromDate_Soodoor != null && filter.ToDate_Soodoor == null) { var date = filter.FromDate_Soodoor.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.Date_Soodoor_Miladi >= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else if (filter.FromDate_Soodoor == null && filter.ToDate_Soodoor != null) { var date = filter.ToDate_Soodoor.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.Date_Soodoor_Miladi <= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else { var datefrom = filter.FromDate_Soodoor.DateToMiladi(); var dateto = filter.ToDate_Soodoor.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.Date_Soodoor_Miladi >= datefrom && a.Date_Soodoor_Miladi <= dateto).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } } //کاربر بر اساس تاریخ شروع جستجو میکند else if (filter.FromDate_Start != null || filter.ToDate_Start != null) { if (filter.FromDate_Start != null && filter.ToDate_Start == null) { var date = filter.FromDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.Date_Start_Miladi >= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else if (filter.FromDate_Start == null && filter.ToDate_Start != null) { var date = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.Date_Start_Miladi <= date).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else { var datefrom = filter.FromDate_Start.DateToMiladi(); var dateto = filter.ToDate_Start.DateToMiladi(); var result = _db.TblLifeInsurance.Where(a => a.Date_Start_Miladi >= datefrom && a.Date_Start_Miladi <= dateto).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } } //کاربر بر اساس نام بیمه گذار و بیمه شده جستجو میکند else if (filter.BimegozarName != null || filter.BimeshodeName != null) { if (filter.BimegozarName != null && filter.BimeshodeName == null) { var result = _db.TblLifeInsurance.Where(a => a.Bimegozar_Name.Contains(filter.BimegozarName)).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else if (filter.BimegozarName == null && filter.BimeshodeName != null) { var result = _db.TblLifeInsurance.Where(a => a.Bimeshode_Name.Contains(filter.BimeshodeName)).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else { var result = _db.TblLifeInsurance.Where(a => a.Bimegozar_Name.Contains(filter.BimegozarName) && filter.BimeshodeName.Contains(filter.BimeshodeName)).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } } //کاربر بر اساس شماره موبایل بیمه گذار یا بیمه شده جستجو میکند else if (filter.BimegozarPhone != null || filter.BimeshodePhone != null) { if (filter.BimegozarPhone != null && filter.BimeshodePhone == null) { var result = _db.TblLifeInsurance.Where(a => a.Bimegozar_Phone == filter.BimegozarPhone).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else if (filter.BimegozarPhone == null && filter.BimeshodePhone != null) { var result = _db.TblLifeInsurance.Where(a => a.Bimeshode_Phone == filter.BimeshodePhone).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } else { var result = _db.TblLifeInsurance.Where(a => a.Bimegozar_Phone == filter.BimegozarPhone && a.Bimeshode_Phone == filter.BimeshodePhone).OrderByDescending(o => o.InsuranceNumber_Number) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } } else { return(null); } }
public async Task <IActionResult> Filter(ListInsuranceViewModel md, string ddlAgent, int?ddlSupervisior, int?ddlPishkhan) { ListInsuranceViewModel model = new ListInsuranceViewModel(); FilterItemsViewModel filter = new FilterItemsViewModel(); filter = md.FilterItemsVM; filter.AgentID = ddlAgent; filter.PishkhanID = ddlPishkhan; filter.SupervisiorID = ddlSupervisior; //کاربر هیچ اطلاعاتی برای فیلتر کردن وارد ننموده if (filter.AgentID == "0" && filter.SupervisiorID == 0 && filter.PishkhanID == 0 && filter.InsuranceNumber == null && filter.BimegozarName == null && filter.BimegozarPhone == null && filter.BimeshodeName == null && filter.BimeshodePhone == null && filter.FromDate_Soodoor == null && filter.FromDate_Start == null && filter.InsuranceSerial == null && filter.ToDate_Soodoor == null && filter.ToDate_Start == null) { ViewBag.pm = "لطفا یک آیتم برای فیلتر انتخاب نمایید"; } //ارسال اطلاعات به مادل برای جستجو در دیتابیس else { ViewBag.pm = ""; var result = _service.TblLifeInsurance.GetInsuranceList(true, 0, 0, filter); foreach (var item in result) { TabelItemsViewModel vm = new TabelItemsViewModel(); vm.Agent = item.TblUser.Name; vm.BimegozarName = item.Bimegozar_Name; vm.BimegozarPhone = item.Bimegozar_Phone; vm.BimeshodeName = item.Bimeshode_Name; vm.BimeshodePhon = item.Bimeshode_Phone; vm.DateSoodoor = item.Date_Soodoor_Shamsi; vm.DateStart = item.Date_Soodoor_Shamsi; vm.ID = item.ID; vm.InsuranceNumber = item.InsuranceNumber_Code + "/" + item.InsuranceNumber_CenterCode + "/" + item.InsuranceNumber_GarardadNumber + "/" + item.InsuranceNumber_Year + "/" + item.InsuranceNumber_Number; vm.PaymentType = item.PaymentType; vm.Price = item.Payment_Price; vm.Status = item.Insurance_Status; try { vm.Supervisior = item.TblSupervisior.Name; } catch { } try { vm.Pishkhan = item.TblPishkhan.Name; } catch { } model.TabelItemsVM.Add(vm); } } //----------------------------------------------------------------------------------------------------------- //return items //Get Agent , pishkhan , supervisior List var _agentList = _user.GetAgentListAsync(); var _pishkhanList = _service.TblPishkhan.GetAll(); var _supervisiorList = _service.TblSupervisior.GetAll(); var _countTotalRow = _service.TblLifeInsurance.GetTotalCount(); var agentList = await _agentList; var pishkhanList = await _pishkhanList; var supervisiorList = await _supervisiorList; var countTotalRow = await _countTotalRow; //Fill DropdownList ViewModel foreach (var item in agentList) { AgentListViewModel vm = new AgentListViewModel(); vm.ID = item.Id; vm.Name = item.Name; model.AgentListVM.Add(vm); } foreach (var item in pishkhanList) { PishkhanListViewModel vm = new PishkhanListViewModel(); vm.ID = item.ID; vm.Name = item.Name; model.PishkhanListVM.Add(vm); } foreach (var item in supervisiorList) { SupervisiorListViewModel vm = new SupervisiorListViewModel(); vm.ID = item.ID; vm.Name = item.Name; model.SupervisiorListVM.Add(vm); } //Fill Tabel Items model.Take = 0; model.Skip = 0; return(View("List", model)); }
public IQueryable <TblLifeInsurance> GetInsuranceList(bool Filter, int Skip, int Take, FilterItemsViewModel FilterItems) { //User Filter The Tabel if (Filter) { var result = GetFilterList(FilterItems); return(result); } //User Get All Table else { var result = _db.TblLifeInsurance.OrderByDescending(o => o.InsuranceNumber_Number).Skip(Skip).Take(Take) .Include(i => i.TblUser) .Include(i => i.TblPishkhan) .Include(i => i.TblSupervisior) .AsQueryable(); return(result); } }
public MainWindow() { InitializeComponent(); DataContext = new FilterItemsViewModel(); }