public ActionResult GetDeviceInfo(DataSourceRequest command, DeviceFailureListModel model) { var HardwareItems = _hardwareService.GetAllHardware(); var HardwareTypeItems = _hardwareService.GetAllHardwareTypes(); var query1 = from hi in HardwareItems join hti in HardwareTypeItems on hi.Hardware_ID equals hti.Hardware_ID where hi.Request_ID == model.DeliveryDeviceSerialNumber_ID && hi.DeliveryDate!=null select new { hi.DeliveryDate, hti.WarrantyPeriod }; var gridModel = new DataSourceResult { ExtraData = new DeviceFailureModel { DeliveryDate = query1.FirstOrDefault().DeliveryDate, WarrantyPeriod = query1.FirstOrDefault().WarrantyPeriod }, Total = query1.Count() }; return Json(gridModel); }
//[CheckSession] public virtual ActionResult CustomerSearch(DataSourceRequest command, PreInvoiceListModel model) { try { if (string.IsNullOrEmpty(model.CustomerNameInSearch) && string.IsNullOrEmpty(model.MobileNo) && string.IsNullOrEmpty(model.SubscriptionCode) && string.IsNullOrEmpty(model.TelNo)) { var customer = _customerService.GetAllCustomers(); //_hardwareService.SearchCustomers(model.CustomerNameInSearch, model.MobileNo, model.SubscriptionCode, model.TelNo); var hardwareRequests = _hardwareService.GetAllHardware(); var softwareRequests = _softwareService.GetAllSoftware(); var softwareChangeRequests = _softwareService.GetAllSoftwareChange(); //var CustomerProductItems = _productService.GetAllCustomerProducts(); var query1 = from cus in customer join hr in hardwareRequests on cus.Customer_ID equals hr.Customer_ID where hr.Status.Equals(0) select new { cus.Customer_ID, cus.CustomerName, hr.Description, hr.Amount }; var query2 = from cus in customer join sr in softwareRequests on cus.Customer_ID equals sr.Customer_ID where sr.Status.Equals(0) select new { cus.Customer_ID, cus.CustomerName, sr.Description, sr.Amount }; var query3 = from cus in customer join scr in softwareRequests on cus.Customer_ID equals scr.Customer_ID where scr.Status.Equals(0) select new { cus.Customer_ID, cus.CustomerName, scr.Description, scr.Amount }; var gridModel = new DataSourceResult { Data = query1.Select(x => new PreInvoiceModel { Customer_ID = x.Customer_ID, CustomerNameInSearch = x.CustomerName, ReqType = "خرید سختافزار", Amount = x.Amount.ToString(), ReqDesc = x.Description }).Concat(query2.Select(y => new PreInvoiceModel { Customer_ID = y.Customer_ID, CustomerNameInSearch = y.CustomerName, ReqType = "خرید نرمافزار", Amount = y.Amount.ToString(), ReqDesc = y.Description }).Concat(query3.Select(z => new PreInvoiceModel { Customer_ID = z.Customer_ID, CustomerNameInSearch = z.CustomerName, ReqType = "تغییر نرمافزار", Amount = z.Amount.ToString(), ReqDesc = z.Description }))), Total = query1.Count() + query2.Count() + query3.Count() }; return(Json(gridModel)); } else { //var UserItems = _groupService.SearchCustomer(model.GroupName, model.Description); var customer = _hardwareService.SearchCustomers(model.CustomerNameInSearch, model.MobileNo, model.SubscriptionCode, model.TelNo); var hardwareRequests = _hardwareService.GetHardwareOfCusomer(customer.FirstOrDefault().Customer_ID); var softwareRequests = _softwareService.GetSoftwareOfCusomer(customer.FirstOrDefault().Customer_ID); var softwareChangeRequests = _softwareService.GetSoftwareChangeOfCusomer(customer.FirstOrDefault().Customer_ID); //var CustomerProductItems = _productService.GetAllCustomerProducts(); var query1 = from cus in customer join hr in hardwareRequests on cus.Customer_ID equals hr.Customer_ID where hr.Status.Equals(0) select new { cus.Customer_ID, cus.CustomerName, hr.Description, hr.Amount }; var query2 = from cus in customer join sr in softwareRequests on cus.Customer_ID equals sr.Customer_ID where sr.Status.Equals(0) select new { cus.Customer_ID, cus.CustomerName, sr.Description, sr.Amount }; var query3 = from cus in customer join scr in softwareRequests on cus.Customer_ID equals scr.Customer_ID where scr.Status.Equals(0) select new { cus.Customer_ID, cus.CustomerName, scr.Description, scr.Amount }; var gridModel = new DataSourceResult { Data = query1.Select(x => new PreInvoiceModel { Customer_ID = x.Customer_ID, CustomerNameInSearch = x.CustomerName, ReqType = "خرید سختافزار", Amount = x.Amount.ToString(), ReqDesc = x.Description }).Concat(query2.Select(y => new PreInvoiceModel { Customer_ID = y.Customer_ID, CustomerNameInSearch = y.CustomerName, ReqType = "خرید نرمافزار", Amount = y.Amount.ToString(), ReqDesc = y.Description }).Concat(query3.Select(z => new PreInvoiceModel { Customer_ID = z.Customer_ID, CustomerNameInSearch = z.CustomerName, ReqType = "تغییر نرمافزار", Amount = z.Amount.ToString(), ReqDesc = z.Description }))), Total = query1.Count() + query2.Count() + query3.Count() }; return(Json(gridModel)); } } catch (Exception ex) { List <PreInvoiceModel> emptylist = new List <PreInvoiceModel>(); return(Json(new DataSourceResult() { Data = emptylist, Total = 0 })); } }