public async Task <Response> CreateShare(CreateShareRequest request) { Response retval; if (_dal.IsShareExists(_conn, request.Share)) { retval = new CreateShareResponseShareExists(request); } else if (!_dal.IsDocumentExists(_conn, request.Share.DocID) || !_dal.IsUserExists(_conn, request.Share.UserID)) { retval = new CreateShareResponseInvalidID(request); } else if (!_dal.IsUserOwner(_conn, request.UserID, request.Share.DocID)) { retval = new CreateShareResponseNotAuthorized(request); } else { try { _dal.CreateShare(_conn, request.Share); retval = new CreateShareResponseOK(request); await _webSocket.Notify("New share: " + request.Share.ToString()); } catch (Exception ex) { retval = new AppResponseError("Error in create share"); } } return(retval); }
public async Task <Response> CreateDocument(CreateDocumentRequest request) { Response retval = new CreateDocumentResponseInvalidData(request); if (_dal.IsUserExists(_conn, request.UserID)) { var id = Guid.NewGuid().ToString(); Document document = new Document() { DocID = id, DocumentName = request.DocumentName, ImageURL = request.ImageURL, UserID = request.UserID }; try { _dal.CreateDocument(_conn, document); retval = new CreateDocumentResponseOK(request); await _webSocket.Notify("new Document" + id); } catch (Exception ex) { retval = new AppResponseError("Error in create document"); } } return(retval); }
public async Task <Response> CreateUser(CreateUserRequest request) { Response retval = new CreateUserResponseUserIDExist(request); if (!_dal.IsUserExists(_conn, request.User.UserID)) { try { _dal.CreateUser(_conn, request.User); retval = new CreateUserResponseOK(request); } catch { retval = new AppResponseError("Couldn't create user, due to error in dataBase"); } } return(retval); }
public async Task <Response> CreateMarker(CreateMarkerRequest request) { Response retval = new CreateMarkerResponseInvalidDocID(request); if (!_dal.IsDocumentExists(_conn, request.DocID)) { retval = new CreateMarkerResponseInvalidDocID(request); } else if (!_dal.IsUserExists(_conn, request.UserID)) { retval = new CreateMarkerResponseInvalidUserID(request); } else if (!ValidateMarkerType(request.MarkerType)) { retval = new CreateMarkerResponseInvalidMarkerType(request); } else { var id = Guid.NewGuid().ToString(); Marker marker = new Marker() { BackColor = request.BackColor, DocID = request.DocID, ForeColor = request.ForeColor, MarkerID = id , MarkerLocation = request.MarkerLocation, MarkerType = request.MarkerType, UserID = request.UserID }; try { _dal.CreateMarker(_conn, marker); retval = new CreateMarkerResponseOK(request); await _webSocket.SendNewMarker(marker); } catch (Exception ex) { retval = new AppResponseError("Error in create marker"); } } return(retval); }