public async Task <IList <Contract_SazeVM> > GetAllSazeByContractIdAsync(int contractId) { try { var contract_Sazes = await this.unitOfWork.RepositoryAsync <Contract_Saze>().Queryable().Where(x => x.ContractID == contractId).ToListAsync2(); List <Contract_SazeVM> contract_SazeVMs = new List <Contract_SazeVM>(); Mapper.Map(contract_Sazes, contract_SazeVMs); SazeRule sazeRule = new SazeRule(); NoeEjareRule noeEjareRule = new NoeEjareRule(); foreach (var contract_SazeVM in contract_SazeVMs) { contract_SazeVM.Saze = Mapper.Map <SazeVM>(await sazeRule.FindAsync(contract_SazeVM.SazeId)); contract_SazeVM.NoeEjare = Mapper.Map <NoeEjareVM>(await noeEjareRule.FindAsync(contract_SazeVM.NoeEjareId)); } return(contract_SazeVMs); } catch (Exception ex) { throw; } }
public virtual async Task <HttpResponseMessage> GetAllByOrganId() { try { var organId = Convert.ToInt32(SecurityManager.CurrentUserContext.OrganizationId); NoeEjareRule noeEjareRule = new NoeEjareRule(); var list = await noeEjareRule.GetAllByOrganIdAsync(Convert.ToInt32(organId)); var list2 = list.Select(x => new { FamilyTree = "کالاها و خدمات", Id = x.ID, Title = x.Title, Parents = ",2,", SystemAccount = 2 }).ToList(); return(Request.CreateResponse(HttpStatusCode.OK, new { resultCode = (int)ZhivarEnums.ResultCode.Successful, data = list2.AsQueryable() })); } catch (Exception ex) { throw; } }
public async Task <HttpResponseMessage> loadReservationData([FromBody] loadReservationDataBusi reservationData) { try { var organId = Convert.ToInt32(SecurityManager.CurrentUserContext.OrganizationId); var resualt = new ReservationData(); List <ContactVM> contacts = new List <ContactVM>(); ContactRule contactRule = new ContactRule(); var contactsSource = await contactRule.GetAllByOrganIdAsync(Convert.ToInt32(organId)); contactsSource = contactsSource.ToList(); contacts = TranslateHelper.TranslateEntityToEntityVMListContact(contactsSource); foreach (var contact in contacts) { contact.DetailAccount = new DetailAccount() { Code = contact.Code, Id = (int)contact.ID, Node = new Node() { FamilyTree = "اشخاص", Id = (int)contact.ID, Name = "اشخاص" } }; } resualt.contacts = contacts; NoeEjareRule noeEjareRule = new NoeEjareRule(); var noeEjares = await noeEjareRule.GetAllByOrganIdAsync(Convert.ToInt32(organId)); resualt.noeEjares = noeEjares; GoroheSazeRule goroheSazeRule = new GoroheSazeRule(); var itemGroups = await goroheSazeRule.GetAllByOrganIdAsync(Convert.ToInt32(organId)); var items = new List <SazeVM>(); var item = new SazeVM(); foreach (var itemGroup in itemGroups) { foreach (var KalaKhadmat in itemGroup.Items) { item = new SazeVM() { DetailAccount = new DetailAccount() { Code = KalaKhadmat.Code, Id = KalaKhadmat.ID, Node = new Node() { FamilyTree = itemGroup.Title, Name = itemGroup.Title, Id = itemGroup.ID } }, Code = KalaKhadmat.Code, OrganId = KalaKhadmat.OrganId, Address = KalaKhadmat.Address, Arz = KalaKhadmat.Arz, GoroheSazeID = KalaKhadmat.GoroheSazeID, ID = KalaKhadmat.ID, Title = KalaKhadmat.Title, Tol = KalaKhadmat.Tol, NoeSazeId = KalaKhadmat.NoeSazeId, NoeEjare = KalaKhadmat.NoeEjare, GoroheName = KalaKhadmat.GoroheName, NoeEjareName = KalaKhadmat.NoeEjareName, NoeSazeName = KalaKhadmat.NoeSazeName, Latitude = KalaKhadmat.Latitude, Longitude = KalaKhadmat.Longitude, NoorDard = KalaKhadmat.NoorDard, NoeEjareID = KalaKhadmat.NoeEjareID, }; items.Add(item); } } resualt.items = items; var Reservation_DetailVMs = new List <Reservation_DetailVM>(); var reservation_DetailVM = new List <Reservation_DetailVM>(); if (reservationData.id == 0) { var countRes = 0; if (reservationData.lstSaze != null && reservationData.lstSaze.Count > 0) { reservationData.lstSaze = reservationData.lstSaze.Where(x => x.sazeID != 0).ToList(); foreach (var lstSaze in reservationData.lstSaze) { var saze = Mapper.Map <Saze, SazeVM>(this.BusinessRule.UnitOfWork.Repository <Saze>().Find(lstSaze.sazeID)); var startDate = DateTime.Now; var displayStartDate = PersianDateUtils.ToPersianDateTime(DateTime.Now); bool minValue = false; bool maxValue = false; if (!string.IsNullOrEmpty(lstSaze.minDate) && !string.IsNullOrWhiteSpace(lstSaze.minDate)) { startDate = PersianDateUtils.ToDateTime(lstSaze.minDate); displayStartDate = lstSaze.minDate; minValue = true; } var endDate = DateTime.Now; var displayEndDate = PersianDateUtils.ToPersianDateTime(DateTime.Now); if (!string.IsNullOrEmpty(lstSaze.maxDate) && !string.IsNullOrWhiteSpace(lstSaze.maxDate)) { endDate = PersianDateUtils.ToDateTime(lstSaze.maxDate); displayStartDate = lstSaze.maxDate; maxValue = true; } var quantity = 0; if (minValue && maxValue) { var diff = endDate - startDate; var days = diff.TotalDays; quantity = Convert.ToInt32(days); } Reservation_DetailVMs.Add(new Reservation_DetailVM() { ID = 0, Quantity = quantity, Saze = saze, SazeID = saze.ID, NoeEjare = Mapper.Map <NoeEjare, NoeEjareVM>(this.BusinessRule.UnitOfWork.Repository <NoeEjare>().Find(saze.NoeEjareID)), NoeEjareID = saze.NoeEjareID, RowNumber = 0, StartDate = startDate, StartDisplayDate = displayStartDate, //EndDate = endDate, //EndDisplayDate = lstSaze.maxDate, }); countRes += 1; } if (countRes < 3) { for (int i = 0; i < 3 - countRes; i++) { Reservation_DetailVMs.Add(new Reservation_DetailVM() { ID = 0, Quantity = 0, Saze = null, SazeID = 0, NoeEjare = null, NoeEjareID = 0, RowNumber = countRes + i, //StartDate = startDate, StartDisplayDate = "", //EndDate = endDate, //EndDisplayDate = lstSaze.maxDate, }); } } } else { Reservation_DetailVMs.Add(new Reservation_DetailVM() { ID = 0, Quantity = 0, RowNumber = 0 }); Reservation_DetailVMs.Add(new Reservation_DetailVM() { ID = 0, Quantity = 0, RowNumber = 1 }); Reservation_DetailVMs.Add(new Reservation_DetailVM() { ID = 0, Quantity = 0, RowNumber = 2 }); Reservation_DetailVMs.Add(new Reservation_DetailVM() { ID = 0, Quantity = 0, RowNumber = 3 }); } resualt.Reservation = new ReservationVM() { //Contact = Mapper.Map<Contact, ContactVM>(this.BusinessRule.UnitOfWork.Repository<Contact>().Find(reservation.ContactID)), ID = 0, DisplayRegisterDate = Utilities.PersianDateUtils.ToPersianDateTime(DateTime.Now), // ContactID = reservation.ContactID, OrganID = organId, RegisterDate = DateTime.Now, ReservationDetails = Reservation_DetailVMs }; return(Request.CreateResponse(HttpStatusCode.OK, new { resualtCode = (int)ZhivarEnums.ResultCode.Successful, data = resualt })); } else { var reservation = await Rule.FindAsync(reservationData.id); foreach (var reservationDetail in reservation.ReservationDetails ?? new List <Reservation_Detail>()) { Reservation_DetailVMs.Add(new Reservation_DetailVM() { ID = reservationDetail.ID, Saze = Mapper.Map <Saze, SazeVM>(this.BusinessRule.UnitOfWork.Repository <Saze>().Find(reservationDetail.SazeID)), SazeID = reservationDetail.SazeID, Quantity = reservationDetail.Quantity, NoeEjare = Mapper.Map <NoeEjare, NoeEjareVM>(this.BusinessRule.UnitOfWork.Repository <NoeEjare>().Find(reservationDetail.NoeEjareID)), NoeEjareID = reservationDetail.NoeEjareID, EndDate = reservationDetail.EndDate, EndDisplayDate = reservationDetail.EndDisplayDate, ReservationID = reservationDetail.ReservationID, StartDate = reservationDetail.StartDate, StartDisplayDate = reservationDetail.StartDisplayDate, UnitPrice = reservationDetail.UnitPrice, PriceBazareab = reservationDetail.PriceBazareab, PriceTarah = reservationDetail.PriceTarah, PriceChap = reservationDetail.PriceChap, PriceNasab = reservationDetail.PriceNasab, RowNumber = reservationDetail.RowNumber }); } resualt.Reservation = new ReservationVM() { Contact = Mapper.Map <Contact, ContactVM>(this.BusinessRule.UnitOfWork.Repository <Contact>().Find(reservation.ContactID)), ID = reservation.ID, DisplayRegisterDate = reservation.DisplayRegisterDate, ContactID = reservation.ContactID, OrganID = reservation.OrganID, RegisterDate = reservation.RegisterDate, ValiditDuration = reservation.ValiditDuration, ReservationDetails = Reservation_DetailVMs }; return(Request.CreateResponse(HttpStatusCode.OK, new { resualtCode = (int)ZhivarEnums.ResultCode.Successful, data = resualt })); } } catch (Exception ex) { throw; } }