public int ProlongeTicket(MSOWebServiceCallContextDTO context, Guid userGuid) { DbCommand cmd = db.GetStoredProcCommand("Dokumenty.prolongeTicket", context.Ticket, context.DocumentGUID, userGuid, null); db.ExecuteNonQuery(cmd); return((int)cmd.Parameters[0].Value); }
public OperationResult ProlongeTicket(MSOWebServiceCallContextDTO context, string login, string password) { try { if (!Membership.ValidateUser(login, password)) { return(OperationResult.InvalidUsernameOrPassword); } int rv = new MSOIntegrationDAO().ProlongeTicket(context, (Guid)Membership.GetUser(login).ProviderUserKey); switch (rv) { case 0: return(OperationResult.OK); default: return(OperationResult.InvalidTicket); } } catch { return(OperationResult.DBConnectionError); } }
private bool validateContext(MSOWebServiceCallContextDTO context, bool withDocumentTypeID) { return( context != null && context.DocumentGUID != Guid.Empty && (context.DocumentTypeID > 0 || !withDocumentTypeID) // && (context.LastHistoryID == null || context.LastHistoryID > 0) && !string.IsNullOrEmpty(context.Ticket) ); }
public int TrySaveExistingForm(XmlDocument xdoc, MSOWebServiceCallContextDTO context) { try { DbCommand cmd = db.GetStoredProcCommand("Dokumenty.zapiszDaneFormularzaMSO", context.Ticket, context.DocumentGUID, context.DocumentTypeID, context.LastHistoryID, xdoc.OuterXml, true, null); db.ExecuteNonQuery(cmd); return((int)cmd.Parameters[0].Value); } catch (SqlException ex) { throw new ArgumentException("Nie udało się zapisać formularza (" + ex.Message + ")"); } }
public int SaveExistingLegalAct(XmlDocument xdoc, MSOWebServiceCallContextDTO context, string fileName, string originalFileName) { try { DbCommand cmd = db.GetStoredProcCommand("Dokumenty.zapiszDaneAktuPrawnego", context.Ticket, context.DocumentGUID, context.DocumentTypeID, context.LastHistoryID, xdoc.OuterXml, false, fileName, originalFileName); db.ExecuteNonQuery(cmd); return((int)cmd.Parameters[0].Value); } catch (SqlException ex) { throw new ArgumentException("Nie udało się zapisać aktu prawnego (" + ex.Message + ")"); } }
private int validateXmlData(XmlDocument xdoc, MSOWebServiceCallContextDTO context) { MSOIntegrationDAO dao = new MSOIntegrationDAO(); string schemaFile = Path.Combine(Pemi.Esoda.Tools.MSOIntegrationHelper.MSOProcessingHelper.MSODirectoryPath, dao.GetMSOSchemaFileName(context.DocumentGUID)); if (string.IsNullOrEmpty(schemaFile)) { return(-1); //no schemaFile } XmlValidator xv = new XmlValidator(); try { return(xv.ValidateWithSchemaFile(xdoc.OuterXml, schemaFile) ? 1 : 0); //1 - xml valid, 0 - xml not valid } catch { return(-2); //validator error } }
public void DeleteTicket(MSOWebServiceCallContextDTO context) { db.ExecuteNonQuery("Dokumenty.deleteTicket", context.Ticket); }
public int CheckTicket(MSOWebServiceCallContextDTO context) { return((int)db.ExecuteScalar("Dokumenty.checkTicket", context.Ticket, context.DocumentGUID)); }
public OperationResult SaveForm(XmlDocument xdoc, MSOWebServiceCallContextDTO context, byte[] formContent) { OperationResult result = OperationResult.OK; if (!validateContext(context, true)) { result = OperationResult.InvalidContext; return(result); } switch (validateXmlData(xdoc, context)) { case 0: result = OperationResult.InvalidXmlData; break; case -1: result = OperationResult.SchemaNotFound; break; case -2: result = OperationResult.XmlValidatorError; break; } MSOIntegrationDAO dao = new MSOIntegrationDAO(); OperationResult tmpRes = result; string extension = null; try { extension = Path.GetExtension(dao.GetFormExtension(context.DocumentTypeID)); } catch { return(OperationResult.DBConnectionError); } Guid tempFilename = Guid.NewGuid(); try { int rv = dao.TrySaveExistingForm(xdoc, context); if (rv == 0 && tmpRes != OperationResult.OK) { return(tmpRes); } rv = dao.SaveExistingForm(xdoc, context, tempFilename.ToString() + extension); switch (rv) { case -1: result = OperationResult.InvalidDocument; break; case -2: result = OperationResult.InvalidTicket; break; case -3: result = OperationResult.TicketExpired; break; case -4: result = OperationResult.DocumentTypeChanged; break; case -5: result = OperationResult.DocumentContentChanged; break; case -6: result = OperationResult.InvalidFormHash; break; } } catch (Exception) { result = OperationResult.UnableToSaveDocument; return(result); } if (result != OperationResult.OK) { return(result); } string filePath = Path.Combine(Pemi.Esoda.Tools.MSOIntegrationHelper.MSOProcessingHelper.MSODirectoryPath, tempFilename.ToString() + extension); try { File.WriteAllBytes(filePath, formContent); } catch { return(OperationResult.UnableToSaveFormContent); } dao.DeleteTicket(context); return(result); }
public UploadResult SaveGenericDocument(byte[] documentContent, string originalName, string mimeType, MSOWebServiceCallContextDTO context) { if (documentContent == null || documentContent.Length == 0) { return(UploadResult.FileContentEmpty); } if (string.IsNullOrEmpty(originalName) || string.IsNullOrEmpty(mimeType)) { return(UploadResult.InvalidFilenameOrMimeType); } if (!validateContext(context, false)) { return(UploadResult.InvalidContext); } MSOIntegrationDAO dao = new MSOIntegrationDAO(); try { switch (dao.CheckTicket(context)) { case 0: return(UploadResult.TicketExpired); case -1: return(UploadResult.InvalidTicket); } } catch { return(UploadResult.DBConnectionError); } Guid tempFilename = Guid.NewGuid(); string filePath = Path.Combine(Server.MapPath("~/temp"), tempFilename.ToString()); try { File.WriteAllBytes(filePath, documentContent); } catch { return(UploadResult.UnableToSaveFile); } try { switch (saveGenericDocument(filePath, originalName, mimeType, context.DocumentGUID, context.LastVersionGuid, context.Description, originalName, context.Ticket)) { case -1: return(UploadResult.DocumentNotFound); case -2: return(UploadResult.UnableToAddDocumentItem); } dao.DeleteTicket(context); return(UploadResult.OK); } catch { return(UploadResult.DBConnectionError); } }