/// <summary> /// ResolveRemainingParamters /// </summary> /// <param name="destination"></param> /// <param name="source"></param> /// <param name="model"></param> /// <param name="hotel"></param> /// <param name="loggedUser"></param> public static void ResolveRemainingParamters(ContractHotel destination, ContractStaticViewModel source, ContractHotel model, Hotel hotel, string loggedUser, ObjectState?objectState) { destination.ContractId = source.ContractId; destination.Id = model.Id; destination.Code = source.HotelDetailsViewModel.HotelCode; destination.Name = source.HotelDetailsViewModel.HotelName; destination.NameItemId = hotel.NameItemId; destination.ShortDescriptionItemId = hotel.ShortDescriptionItemId; if (objectState == ObjectState.Added) { destination.CreatedBy = loggedUser; destination.UpdatedBy = loggedUser; destination.CreatedDate = DateTime.Now.JakartaOffset(); destination.UpdatedDate = DateTime.Now.JakartaOffset(); } if (objectState == ObjectState.Modified) { if (destination.IsChannelManagerConnectivity == false || destination.ChannelManagerId == 0) { destination.ChannelManagerId = null; } destination.CreatedBy = model.CreatedBy; destination.UpdatedBy = loggedUser; destination.CreatedDate = model.CreatedDate; destination.UpdatedDate = DateTime.Now.JakartaOffset(); } }
public static void ResolveRemainingParamters(ContractHotel destination, HotelDetailsViewModel source, string loggedUser) { destination.Code = source.HotelCode; destination.Name = source.HotelName; destination.CreatedBy = loggedUser; destination.UpdatedBy = loggedUser; destination.CreatedDate = DateTime.Now.JakartaOffset(); destination.UpdatedDate = DateTime.Now.JakartaOffset(); }
/// <summary> /// AutomapperContractHotel /// </summary> /// <param name="source"></param> /// <param name="model"></param> /// <param name="hotel"></param> /// <param name="loggedUser"></param> /// <returns></returns> public static ContractHotel AutomapperContractHotel(ContractStaticViewModel source, ContractHotel model, Hotel hotel, string loggedUser, ObjectState?objectState) { var mappedModel = AutoMapper.Mapper.Map <ContractHotel>(source.HotelDetailsViewModel); ResolveRemainingParamters(mappedModel, source, model, hotel, loggedUser, objectState); return(mappedModel); }
/// <summary> /// SaveContractHotel /// </summary> /// <param name="contractStaticViewModel"/> /// <param name="loggedUser"></param> /// <returns>Task<BaseResult<ContractHotel>></returns> private async Task <BaseResult <ContractHotel> > SaveContractHotel(ContractStaticViewModel contractStaticViewModel, string loggedUser) { var result = new BaseResult <ContractHotel>() { Result = new ContractHotel() }; var hotel = this.iHotel.GetEntity(contractStaticViewModel.HotelDetailsViewModel.HotelId).Result.Result; if (contractStaticViewModel.HotelDetailsViewModel.ObjectState == ObjectState.Added) { var model = new ContractHotel(); var mappedModel = DbMapperMasterdata.AutomapperContractHotel(contractStaticViewModel, model, hotel, loggedUser, contractStaticViewModel.HotelDetailsViewModel.ObjectState); await this.SaveContractEmailReservation(contractStaticViewModel, loggedUser).ConfigureAwait(false); await this.SaveContractTelephoneReservation(contractStaticViewModel, loggedUser).ConfigureAwait(false); var insertResult = await this.iContractHotel.InsertEntity(mappedModel).ConfigureAwait(false); if (insertResult.IsError && insertResult.ExceptionMessage != null) { result.IsError = insertResult.IsError; result.ExceptionMessage = insertResult.ExceptionMessage; } else if (insertResult == null) { result = null; return(result); } result.Result.Id = (int)insertResult.Result; } if (contractStaticViewModel.HotelDetailsViewModel.ObjectState == ObjectState.Modified) { var model1 = await this.iContractHotel.GetEntity(contractStaticViewModel.ContractId).ConfigureAwait(false); var model = await iContractHotel.GetListByPredicate(p => p.HotelId == contractStaticViewModel.HotelDetailsViewModel.HotelId && p.ContractId == contractStaticViewModel.ContractId).ConfigureAwait(false); var mappedModel = DbMapperMasterdata.AutomapperContractHotel(contractStaticViewModel, model.Result[0], hotel, loggedUser, contractStaticViewModel.HotelDetailsViewModel.ObjectState); var updateResult = await this.iContractHotel.UpdateEntityByDapper(mappedModel).ConfigureAwait(false); await this.SaveContractEmailReservation(contractStaticViewModel, loggedUser).ConfigureAwait(false); await this.SaveContractTelephoneReservation(contractStaticViewModel, loggedUser).ConfigureAwait(false); if (updateResult.IsError && updateResult.ExceptionMessage != null) { result.IsError = updateResult.IsError; result.ExceptionMessage = updateResult.ExceptionMessage; } else if (updateResult == null) { result = null; return(result); } if (updateResult.Result == true) { result.Result.ContractId = contractStaticViewModel.ContractId; } } return(result); }
/// <summary> /// Insert hotel contract relation /// </summary> /// <param name="request"></param> /// <param name="userName"></param> /// <returns></returns> public async Task <BaseResult <long> > InsertContractHotel(ContractHotel request) { return(await iContractHotel.InsertEntity(request).ConfigureAwait(false)); }