コード例 #1
0
        /// <summary>
        /// SaveContractTelephoneReservation
        /// </summary>
        /// <param name="contractStaticViewModel"></param>
        /// <param name="loggedUser"></param>
        /// <returns>Task<BaseResult<long>></returns>
        private async Task <BaseResult <long> > SaveContractTelephoneReservation(ContractStaticViewModel contractStaticViewModel, string loggedUser)
        {
            BaseResult <long> result = new BaseResult <long>();

            if (contractStaticViewModel.HotelDetailsViewModel.ObjectState == ObjectState.Added)
            {
                result = await CreateContractTelephoneReservation(contractStaticViewModel, loggedUser).ConfigureAwait(false);

                return(result);
            }
            if (contractStaticViewModel.HotelDetailsViewModel.ObjectState == ObjectState.Modified)
            {
                var listDb = await this.iContractTelephoneReservation.GetListByPredicate(p => p.HotelId == contractStaticViewModel.HotelDetailsViewModel.HotelId && p.ContractId == contractStaticViewModel.ContractId).ConfigureAwait(false);

                var contractEmails = contractStaticViewModel.HotelDetailsViewModel.ReservationContactNo.Split(',');
                var list           = new List <ContractTelephoneReservation>();

                foreach (var item in listDb.Result)
                {
                    item.IsDeleted   = true;
                    item.UpdatedBy   = loggedUser;
                    item.UpdatedDate = DateTime.Now.JakartaOffset();
                    var model = new ContractTelephoneReservation()
                    {
                        IsDeleted   = true,
                        UpdatedBy   = loggedUser,
                        UpdatedDate = DateTime.Now.JakartaOffset()
                    };
                    list.Add(model);
                }
                await this.iContractTelephoneReservation.UpdateEntityList(listDb.Result).ConfigureAwait(false);
                await CreateContractTelephoneReservation(contractStaticViewModel, loggedUser).ConfigureAwait(false);
            }
            return(result);
        }
コード例 #2
0
        /// <summary>
        /// CreateContractTelephoneReservation
        /// </summary>
        /// <param name="contractStaticViewModel"></param>
        /// <param name="loggedUser"></param>
        /// <returns>Task<BaseResult<long>></returns>
        private async Task <BaseResult <long> > CreateContractTelephoneReservation(ContractStaticViewModel contractStaticViewModel, string loggedUser)
        {
            BaseResult <long> result = new BaseResult <long>();
            var contractEmails       = contractStaticViewModel.HotelDetailsViewModel.ReservationContactNo.Split(',');

            var list = new List <ContractTelephoneReservation>();

            foreach (var item in contractEmails)
            {
                var model = new ContractTelephoneReservation()
                {
                    ContractId  = contractStaticViewModel.ContractId,
                    Telephone   = item,
                    HotelId     = contractStaticViewModel.HotelDetailsViewModel.HotelId,
                    IsDeleted   = false,
                    CreatedBy   = loggedUser,
                    CreatedDate = DateTime.Now.JakartaOffset(),
                    UpdatedBy   = loggedUser,
                    UpdatedDate = DateTime.Now.JakartaOffset()
                };
                list.Add(model);
            }

            result = await this.iContractTelephoneReservation.InsertEntityList(list).ConfigureAwait(false);

            return(result);
        }
コード例 #3
0
 public async Task <BaseResult <long> > InsertContractTelephoneReservation(ContractTelephoneReservation request)
 {
     return(await iContractTelephoneReservation.InsertEntity(request).ConfigureAwait(false));
 }