| 1234567891011121314151617181920212223242526272829303132333435363738 |
- using Diligent.WebAPI.Business.HelperModels;
- using Diligent.WebAPI.Business.MongoServices;
- using Diligent.WebAPI.Data;
- using Diligent.WebAPI.Data.Entities;
- using Microsoft.Extensions.Options;
- using MongoDB.Driver;
-
- namespace Diligent.WebAPI.Business.Services
- {
- public class RequestService : BaseMongo<Request>
- {
- public RequestService(IOptions<WebApiDatabaseSettings> webApiDatabaseSettings) :
- base(webApiDatabaseSettings, "Request")
- { }
-
- public async Task<List<Request>> GetRequestsAsync() =>
- await _mongoCollection.Find(_ => true).ToListAsync();
-
- public async Task<Request> GetRequestAsync(string id) =>
- await _mongoCollection.Find(x => x.Id == id).FirstOrDefaultAsync();
-
- public async Task CreateRequestAsync(Request req) =>
- await _mongoCollection.InsertOneAsync(req);
-
- public async Task<DeleteCustomerRequest> RemoveRequestAsync(string customerId,string roomId)
- {
- var request = await _mongoCollection.Find(x => x.SenderId == customerId && x.RoomId == roomId).FirstOrDefaultAsync();
-
- if (request == null)
- return new DeleteCustomerRequest { IsSuccess = false };
-
- var id = request.Id;
-
- _mongoCollection.DeleteOne(x => x.Id == request.Id);
- return new DeleteCustomerRequest { Id = id, IsSuccess = true };
- }
- }
- }
|