public async Task <AccomodationSetRes> InsertUpdateAccomodation([FromBody] AccomodationSetReq request)
        {
            var response = new AccomodationSetRes();

            try
            {
                response.QRFId = request.QRFID;
                if (request != null)
                {
                    string result = await _accomodationRepository.InsertUpdateAccomodation(request);

                    if (request.SaveType == "full")
                    {
                        response.ResponseStatus.Status       = result == "1" ? "Success" : "Failure";
                        response.ResponseStatus.ErrorMessage = result != "1" ? result : "";
                    }
                    else
                    {
                        response.ResponseStatus.Status       = result != "" ? "Success" : "Failure";
                        response.ResponseStatus.ErrorMessage = result != "1" ? result : "";
                        response.AccomodationId = result;
                    }
                }
                else
                {
                    response.ResponseStatus.Status       = "Failure";
                    response.ResponseStatus.ErrorMessage = "Details can not be blank.";
                }
            }
            catch (Exception ex)
            {
                response.ResponseStatus.Status       = "Failure";
                response.ResponseStatus.ErrorMessage = "An Error Occurs :- " + ex.Message.ToString();
            }
            return(response);
        }
Beispiel #2
0
        public async Task <string> InsertUpdateAccomodation(AccomodationSetReq request)
        {
            //QRFCounterRequest qrfCounterRequest = new QRFCounterRequest();
            //qrfCounterRequest.CounterType = _configuration["CounterType:QRFRoute"].ToString();

            UpdateResult resultFlag;
            var          result = _MongoContext.mPosition.AsQueryable().Where(a => a.QRFID == request.QRFID).ToList();

            if (result != null && result.Count > 0)//if exists or not then update as whole Accomodation List
            {
                if (request.SaveType == "full")
                {
                    List <AccomodationInfo> lstAccomodationInfo = result.Select(r => r.AccomodationInfo).FirstOrDefault();

                    request.AccomodationInfo.RemoveAll(f => f.AccomodationSequence == 0 && f.AccomodationId == "");
                    if (request.AccomodationInfo != null && request.AccomodationInfo.Count > 0)
                    {
                        request.AccomodationInfo.AddRange(lstAccomodationInfo.Where(f => f.IsDeleted == true).ToList().Distinct());

                        request.AccomodationInfo.FindAll(f => !lstAccomodationInfo.Exists(r => r.AccomodationId == f.AccomodationId)).ForEach
                            (r =>
                        {
                            r.AccomodationId = ObjectId.GenerateNewId().ToString();
                            r.CreateDate     = DateTime.Now;
                            r.IsDeleted      = (r.AccomodationSequence == 0 ? true : false);
                            r.EditUser       = "";
                            r.EditDate       = null;
                            r.RoomDetailsInfo.ForEach(d =>
                            {
                                d.RoomId     = ObjectId.GenerateNewId().ToString();
                                d.CreateDate = DateTime.Now;
                                d.EditUser   = "";
                                d.EditDate   = null;
                            });
                        });

                        request.AccomodationInfo.FindAll(f => lstAccomodationInfo.Exists(r => r.AccomodationId == f.AccomodationId)).ForEach
                            (r =>
                        {
                            r.EditDate   = DateTime.Now;
                            r.CreateDate = (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CreateDate).FirstOrDefault());
                            r.CreateUser = (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CreateUser).FirstOrDefault());
                            r.IsDeleted  = (r.AccomodationSequence == 0 ? true : false);
                            r.CityName   = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CityName).FirstOrDefault()) : r.CityName;
                            r.CityID     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CityID).FirstOrDefault()) : r.CityID;

                            r.StartingFrom = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.StartingFrom).FirstOrDefault()) : r.StartingFrom;
                            r.NoOfNight    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NoOfNight).FirstOrDefault()) : r.NoOfNight;
                            r.Category     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.Category).FirstOrDefault()) : r.Category;
                            r.StarRating   = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.StarRating).FirstOrDefault()) : r.StarRating;
                            r.Location     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.Location).FirstOrDefault()) : r.Location;

                            r.ChainName  = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.ChainName).FirstOrDefault()) : r.ChainName;
                            r.ChainID    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.ChainID).FirstOrDefault()) : r.ChainID;
                            r.HotelName  = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.HotelName).FirstOrDefault()) : r.HotelName;
                            r.HotelID    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.HotelID).FirstOrDefault()) : r.HotelID;
                            r.SupplierId = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.SupplierId).FirstOrDefault()) : r.SupplierId;

                            r.MealPlan                     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.MealPlan).FirstOrDefault()) : r.MealPlan;
                            r.EarlyCheckInDate             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.EarlyCheckInDate).FirstOrDefault()) : r.EarlyCheckInDate;
                            r.EarlyCheckInTime             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.EarlyCheckInTime).FirstOrDefault()) : r.EarlyCheckInTime;
                            r.NumberOfEarlyCheckInRooms    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberOfEarlyCheckInRooms).FirstOrDefault()) : r.NumberOfEarlyCheckInRooms;
                            r.NumberofInterConnectingRooms = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberofInterConnectingRooms).FirstOrDefault()) : r.NumberofInterConnectingRooms;
                            r.NumberOfWashChangeRooms      = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberOfWashChangeRooms).FirstOrDefault()) : r.NumberOfWashChangeRooms;
                            r.LateCheckOutDate             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.LateCheckOutDate).FirstOrDefault()) : r.LateCheckOutDate;
                            r.LateCheckOutTime             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.LateCheckOutTime).FirstOrDefault()) : r.LateCheckOutTime;
                            r.NumberOfLateCheckOutRooms    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberOfLateCheckOutRooms).FirstOrDefault()) : r.NumberOfLateCheckOutRooms;
                            r.Supplement                   = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.Supplement).FirstOrDefault()) : r.Supplement;
                            r.SupplementID                 = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.SupplementID).FirstOrDefault()) : r.SupplementID;

                            r.KeepAs        = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.KeepAs).FirstOrDefault()) : r.KeepAs;
                            r.RemarksForTL  = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.RemarksForTL).FirstOrDefault()) : r.RemarksForTL;
                            r.RemarksForOPS = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.RemarksForOPS).FirstOrDefault()) : r.RemarksForOPS;

                            List <RoomDetailsInfo> lstRoomDetailsInfo = lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.RoomDetailsInfo).FirstOrDefault();
                            r.RoomDetailsInfo.RemoveAll(f => f.RoomSequence == 0 && f.RoomId == "");

                            if (r.RoomDetailsInfo != null && r.RoomDetailsInfo.Count > 0)
                            {
                                r.RoomDetailsInfo.AddRange(lstRoomDetailsInfo.Where(f => f.IsDeleted == true).ToList().Distinct());

                                r.RoomDetailsInfo.FindAll(f => !lstRoomDetailsInfo.Exists(p => p.RoomId == f.RoomId)).ForEach
                                    (p =>
                                {
                                    p.RoomId     = ObjectId.GenerateNewId().ToString();
                                    p.CreateDate = DateTime.Now;
                                    p.IsDeleted  = (p.RoomSequence == 0 ? true : false);
                                    p.EditUser   = "";
                                    p.EditDate   = null;
                                });

                                r.RoomDetailsInfo.FindAll(f => lstRoomDetailsInfo.Exists(p => p.RoomId == f.RoomId)).ForEach
                                    (p =>
                                {
                                    p.EditDate     = DateTime.Now;
                                    p.CreateDate   = (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.CreateDate).FirstOrDefault());
                                    p.CreateUser   = (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.CreateUser).FirstOrDefault());
                                    p.IsDeleted    = p.RoomSequence == 0 ? true : false;
                                    p.Rooms        = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.Rooms).FirstOrDefault()) : p.Rooms;
                                    p.RoomType     = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.RoomType).FirstOrDefault()) : p.RoomType;
                                    p.RoomTypeID   = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.RoomTypeID).FirstOrDefault()) : p.RoomTypeID;
                                    p.IsSupplement = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.IsSupplement).FirstOrDefault()) : p.IsSupplement;
                                });
                            }
                        });

                        var res = await _MongoContext.mPosition.FindOneAndUpdateAsync(Builders <mPosition> .Filter.Eq("QRFID", request.QRFID),
                                                                                      Builders <mPosition> .Update.Set("AccomodationInfo", request.AccomodationInfo.Distinct()));

                        return(res != null ? "1" : "Accomodation Details not updated.");
                    }
                    else
                    {
                        return("1");
                    }
                }
                else
                {
                    //var res = await _MongoContext.mPosition.UpdateOneAsync(Builders<mPosition>.Filter.Eq("QRFID", request.QRFID),
                    //                   Builders<mPosition>.Update.Push("AccomodationInfo", request.AccomodationInfo));

                    if (string.IsNullOrEmpty(request.AccomodationInfo[0].AccomodationId))
                    {
                        request.AccomodationInfo.ForEach(r =>
                        {
                            r.AccomodationId = ObjectId.GenerateNewId().ToString();
                            r.CreateDate     = DateTime.Now;
                            r.EditUser       = "";
                            r.EditDate       = null;
                            r.RoomDetailsInfo.ForEach(d =>
                            {
                                d.RoomId     = ObjectId.GenerateNewId().ToString();
                                d.CreateDate = DateTime.Now;
                                d.EditUser   = "";
                                d.EditDate   = null;
                            });
                        });
                        var res = await _MongoContext.mPosition.UpdateOneAsync(Builders <mPosition> .Filter.Eq("QRFID", request.QRFID),
                                                                               Builders <mPosition> .Update.Push("AccomodationInfo", request.AccomodationInfo[0]));
                    }
                    else
                    {
                        List <AccomodationInfo> lstAccomodationInfo = result.Select(r => r.AccomodationInfo).FirstOrDefault();

                        request.AccomodationInfo.RemoveAll(f => f.AccomodationSequence == 0 && f.AccomodationId == "");

                        request.AccomodationInfo.FindAll(f => lstAccomodationInfo.Exists(r => r.AccomodationId == f.AccomodationId)).ForEach
                            (r =>
                        {
                            r.EditDate   = DateTime.Now;
                            r.CreateDate = (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CreateDate).FirstOrDefault());
                            r.CreateUser = (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CreateUser).FirstOrDefault());
                            r.IsDeleted  = (r.AccomodationSequence == 0 ? true : false);
                            r.CityName   = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CityName).FirstOrDefault()) : r.CityName;
                            r.CityID     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.CityID).FirstOrDefault()) : r.CityID;

                            r.StartingFrom = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.StartingFrom).FirstOrDefault()) : r.StartingFrom;
                            r.NoOfNight    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NoOfNight).FirstOrDefault()) : r.NoOfNight;
                            r.Category     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.Category).FirstOrDefault()) : r.Category;
                            r.StarRating   = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.StarRating).FirstOrDefault()) : r.StarRating;
                            r.Location     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.Location).FirstOrDefault()) : r.Location;

                            r.ChainName  = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.ChainName).FirstOrDefault()) : r.ChainName;
                            r.ChainID    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.ChainID).FirstOrDefault()) : r.ChainID;
                            r.HotelName  = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.HotelName).FirstOrDefault()) : r.HotelName;
                            r.HotelID    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.HotelID).FirstOrDefault()) : r.HotelID;
                            r.SupplierId = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.SupplierId).FirstOrDefault()) : r.SupplierId;

                            r.MealPlan                     = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.MealPlan).FirstOrDefault()) : r.MealPlan;
                            r.EarlyCheckInDate             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.EarlyCheckInDate).FirstOrDefault()) : r.EarlyCheckInDate;
                            r.EarlyCheckInTime             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.EarlyCheckInTime).FirstOrDefault()) : r.EarlyCheckInTime;
                            r.NumberOfEarlyCheckInRooms    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberOfEarlyCheckInRooms).FirstOrDefault()) : r.NumberOfEarlyCheckInRooms;
                            r.NumberofInterConnectingRooms = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberofInterConnectingRooms).FirstOrDefault()) : r.NumberofInterConnectingRooms;
                            r.NumberOfWashChangeRooms      = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberOfWashChangeRooms).FirstOrDefault()) : r.NumberOfWashChangeRooms;
                            r.LateCheckOutDate             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.LateCheckOutDate).FirstOrDefault()) : r.LateCheckOutDate;
                            r.LateCheckOutTime             = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.LateCheckOutTime).FirstOrDefault()) : r.LateCheckOutTime;
                            r.NumberOfLateCheckOutRooms    = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.NumberOfLateCheckOutRooms).FirstOrDefault()) : r.NumberOfLateCheckOutRooms;
                            r.Supplement                   = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.Supplement).FirstOrDefault()) : r.Supplement;
                            r.SupplementID                 = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.SupplementID).FirstOrDefault()) : r.SupplementID;

                            r.KeepAs        = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.KeepAs).FirstOrDefault()) : r.KeepAs;
                            r.RemarksForTL  = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.RemarksForTL).FirstOrDefault()) : r.RemarksForTL;
                            r.RemarksForOPS = r.AccomodationSequence == 0 ? (lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.RemarksForOPS).FirstOrDefault()) : r.RemarksForOPS;

                            List <RoomDetailsInfo> lstRoomDetailsInfo = lstAccomodationInfo.Where(l => l.AccomodationId == r.AccomodationId).Select(l => l.RoomDetailsInfo).FirstOrDefault();
                            r.RoomDetailsInfo.RemoveAll(f => f.RoomSequence == 0 && f.RoomId == "");

                            if (r.RoomDetailsInfo != null && r.RoomDetailsInfo.Count > 0)
                            {
                                r.RoomDetailsInfo.AddRange(lstRoomDetailsInfo.Where(f => f.IsDeleted == true).ToList().Distinct());

                                r.RoomDetailsInfo.FindAll(f => !lstRoomDetailsInfo.Exists(p => p.RoomId == f.RoomId)).ForEach
                                    (p =>
                                {
                                    p.RoomId     = ObjectId.GenerateNewId().ToString();
                                    p.CreateDate = DateTime.Now;
                                    p.IsDeleted  = (p.RoomSequence == 0 ? true : false);
                                    p.EditUser   = "";
                                    p.EditDate   = null;
                                });

                                r.RoomDetailsInfo.FindAll(f => lstRoomDetailsInfo.Exists(p => p.RoomId == f.RoomId)).ForEach
                                    (p =>
                                {
                                    p.EditDate     = DateTime.Now;
                                    p.CreateDate   = (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.CreateDate).FirstOrDefault());
                                    p.CreateUser   = (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.CreateUser).FirstOrDefault());
                                    p.IsDeleted    = p.RoomSequence == 0 ? true : false;
                                    p.Rooms        = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.Rooms).FirstOrDefault()) : p.Rooms;
                                    p.RoomType     = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.RoomType).FirstOrDefault()) : p.RoomType;
                                    p.RoomTypeID   = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.RoomTypeID).FirstOrDefault()) : p.RoomTypeID;
                                    p.IsSupplement = p.RoomSequence == 0 ? (lstRoomDetailsInfo.Where(l => l.RoomId == p.RoomId).Select(l => l.IsSupplement).FirstOrDefault()) : p.IsSupplement;
                                });
                            }
                        });

                        var res = await _MongoContext.mPosition.FindOneAndUpdateAsync(m => m.QRFID == request.QRFID && m.AccomodationInfo.Any(md => md.AccomodationId == request.AccomodationInfo[0].AccomodationId),
                                                                                      Builders <mPosition> .Update.Set(m => m.AccomodationInfo[-1], request.AccomodationInfo[0]));
                    }
                    return(request.AccomodationInfo[0].AccomodationId);
                }
            }
            else//insert Route details at 1st time
            {
                request.AccomodationInfo.RemoveAll(f => f.AccomodationSequence == 0 && f.AccomodationId == "");

                if (request.AccomodationInfo != null && request.AccomodationInfo.Count > 0)
                {
                    request.AccomodationInfo.ForEach(r =>
                    {
                        r.AccomodationId = ObjectId.GenerateNewId().ToString();
                        r.CreateDate     = DateTime.Now;
                        r.EditUser       = "";
                        r.EditDate       = null;
                        r.RoomDetailsInfo.ForEach(d =>
                        {
                            d.RoomId     = ObjectId.GenerateNewId().ToString();
                            d.CreateDate = DateTime.Now;
                            d.EditUser   = "";
                            d.EditDate   = null;
                        });
                    });

                    mPosition mAccomodation = new mPosition();
                    mAccomodation.QRFID            = request.QRFID;
                    mAccomodation.AccomodationInfo = request.AccomodationInfo;
                    await _MongoContext.mPosition.InsertOneAsync(mAccomodation);

                    return("1");
                }
                else
                {
                    return("1");
                }
            }
        }