/// <summary> /// Devuelve el estado de la tarea teniendo en cuenta el estado de la acción y solicitud /// </summary> public string EstadoTarea(int ta207_idtareapreventa) { OpenDbConn(); DAL.TareaPreventa cTareaPreventa = new DAL.TareaPreventa(cDblib); return(cTareaPreventa.EstadoTarea(ta207_idtareapreventa)); }
internal string ObtenerEstadoOrigenEdicion(enumOrigenEdicion enumProp, int idpropietario) { OpenDbConn(); int?ta207_idtareapreventa = null; int?ta204_idaccionpreventa = null; switch (enumProp) { case enumOrigenEdicion.accionpreventa: ta204_idaccionpreventa = idpropietario; break; case enumOrigenEdicion.tareapreventa: ta207_idtareapreventa = idpropietario; break; } if (ta204_idaccionpreventa != null) { DAL.AccionPreventa cTP = new DAL.AccionPreventa(cDblib); return(cTP.EstadoAccion((int)ta204_idaccionpreventa)); } else if (ta207_idtareapreventa != null) { DAL.TareaPreventa cTP = new DAL.TareaPreventa(cDblib); return(cTP.EstadoTarea((int)ta207_idtareapreventa)); } return("X"); //default (más restrictivo) }
internal int Update(Models.DocumentacionPreventa oDocumentacionPreventa) { Guid methodOwnerID = new Guid("9b21a5dc-10b3-4eb8-9a51-b5013f20173b"); OpenDbConn(); //validaciones --> comprobar que la tarea ó acción se encuentran en estado "A" if (oDocumentacionPreventa.ta204_idaccionpreventa != null) { DAL.AccionPreventa cTP = new DAL.AccionPreventa(cDblib); if (cTP.EstadoAccion((int)oDocumentacionPreventa.ta204_idaccionpreventa) != "A") { throw new Shared.ValidationException("La acción se encuentra en un estado en el que no se permite actualizar los documentos."); } } else if (oDocumentacionPreventa.ta207_idtareapreventa != null) { //Si la edición del doc de tarea se realiza desde la pantalla de detalle de acción --> no validar if (oDocumentacionPreventa.origenEdicion == "tareapreventa") { DAL.TareaPreventa cTP = new DAL.TareaPreventa(cDblib); if (cTP.EstadoTarea((int)oDocumentacionPreventa.ta207_idtareapreventa) != "A") { throw new Shared.ValidationException("La tarea se encuentra en un estado en el que no se permite actualizar los documentos."); } } } if (cDblib.Transaction.ownerID.Equals(new Guid())) { cDblib.beginTransaction(methodOwnerID); } try { DAL.DocumentacionPreventa cDocumentacionPreventa = new DAL.DocumentacionPreventa(cDblib); //La fecha de modificacion y el autor se actualiza solo si cambia el fichero if (oDocumentacionPreventa.fileupdated) { oDocumentacionPreventa.ta210_fechamod = DateTime.Now; oDocumentacionPreventa.t001_idficepi_autor = int.Parse(HttpContext.Current.Session["IDFICEPI_PC_ACTUAL"].ToString()); } else { oDocumentacionPreventa.ta210_fechamod = null; } if (oDocumentacionPreventa.ta210_kbytes == 0) { oDocumentacionPreventa.ta210_kbytes = 1; } int result = cDocumentacionPreventa.Update(oDocumentacionPreventa); //Finalizar transacción if (cDblib.Transaction.ownerID.Equals(methodOwnerID)) { cDblib.commitTransaction(methodOwnerID); } return(result); } catch (Exception ex) { //rollback if (cDblib.Transaction.ownerID.Equals(methodOwnerID)) { cDblib.rollbackTransaction(methodOwnerID); } throw ex; } }
internal int Delete(Int32 ta210_iddocupreventa) { Guid methodOwnerID = new Guid("dfddaf15-37b7-4a5b-8eb7-48a7c10e51d0"); OpenDbConn(); //validaciones --> comprobar que la tarea ó acción se encuentran en estado "A" Models.DocumentacionPreventa oDocumentacionPreventa = this.Select(ta210_iddocupreventa); if (oDocumentacionPreventa.ta204_idaccionpreventa != null) { DAL.AccionPreventa cTP = new DAL.AccionPreventa(cDblib); if (cTP.EstadoAccion((int)oDocumentacionPreventa.ta204_idaccionpreventa) != "A") { throw new Shared.ValidationException("La acción se encuentra en un estado en el que no se permite eliminar documentos."); } } else if (oDocumentacionPreventa.ta207_idtareapreventa != null) { //Si el borrado del doc de tarea se realiza desde la pantalla de detalle de acción --> no validar if (oDocumentacionPreventa.origenEdicion == "tareapreventa") { DAL.TareaPreventa cTP = new DAL.TareaPreventa(cDblib); if (cTP.EstadoTarea((int)oDocumentacionPreventa.ta207_idtareapreventa) != "A") { throw new Shared.ValidationException("La tarea se encuentra en un estado en el que no se permite eliminar documentos."); } } } if (cDblib.Transaction.ownerID.Equals(new Guid())) { cDblib.beginTransaction(methodOwnerID); } try { DAL.DocumentacionPreventa cDocumentacionPreventa = new DAL.DocumentacionPreventa(cDblib); int result = cDocumentacionPreventa.Delete(ta210_iddocupreventa); //Finalizar transacción if (cDblib.Transaction.ownerID.Equals(methodOwnerID)) { cDblib.commitTransaction(methodOwnerID); } return(result); } catch (Exception ex) { //rollback if (cDblib.Transaction.ownerID.Equals(methodOwnerID)) { cDblib.rollbackTransaction(methodOwnerID); } throw ex; } }
internal int Insert(Models.DocumentacionPreventa oDocumentacionPreventa) { Guid methodOwnerID = new Guid("823b88ca-b989-4191-916e-a9676cfb36ec"); OpenDbConn(); //validaciones --> comprobar que la tarea ó acción se encuentran en estado "A" if (oDocumentacionPreventa.ta204_idaccionpreventa != null) { DAL.AccionPreventa cTP = new DAL.AccionPreventa(cDblib); if (cTP.EstadoAccion((int)oDocumentacionPreventa.ta204_idaccionpreventa) != "A") { throw new Shared.ValidationException("La acción se encuentra en un estado en el que no se permite añadir nuevos documentos."); } } else if (oDocumentacionPreventa.ta207_idtareapreventa != null) { DAL.TareaPreventa cTP = new DAL.TareaPreventa(cDblib); if (cTP.EstadoTarea((int)oDocumentacionPreventa.ta207_idtareapreventa) != "A") { throw new Shared.ValidationException("La tarea se encuentra en un estado en el que no se permite añadir nuevos documentos."); } } if (cDblib.Transaction.ownerID.Equals(new Guid())) { cDblib.beginTransaction(methodOwnerID); } try { DAL.DocumentacionPreventa cDocumentacionPreventa = new DAL.DocumentacionPreventa(cDblib); oDocumentacionPreventa.t001_idficepi_autor = int.Parse(HttpContext.Current.Session["IDFICEPI_PC_ACTUAL"].ToString()); oDocumentacionPreventa.ta210_fechamod = DateTime.Now; if (oDocumentacionPreventa.ta210_kbytes == 0) { oDocumentacionPreventa.ta210_kbytes = 1; } int idDocumentacionPreventa = cDocumentacionPreventa.Insert(oDocumentacionPreventa); //Finalizar transacción if (cDblib.Transaction.ownerID.Equals(methodOwnerID)) { cDblib.commitTransaction(methodOwnerID); } return(idDocumentacionPreventa); } catch (Exception ex) { //rollback if (cDblib.Transaction.ownerID.Equals(methodOwnerID)) { cDblib.rollbackTransaction(methodOwnerID); } throw ex; } }