public string[] AddMultimediaFileComponent(ref OperationResult pobjOperationResult, FileInfoDto pobjDtoEntity, List <string> ClientSession)
        {
            //mon.IsActive = true;
            string[] IDs = new string[2];
            var      multimediaFileId             = string.Empty;
            var      serviceComponentMultimediaId = string.Empty;

            try
            {
                multimediafileDto multimediaFile = new multimediafileDto();
                multimediaFile.v_PersonId      = pobjDtoEntity.PersonId;
                multimediaFile.v_FileName      = pobjDtoEntity.FileName;
                multimediaFile.b_File          = pobjDtoEntity.ByteArrayFile;
                multimediaFile.b_ThumbnailFile = pobjDtoEntity.ThumbnailFile;

                // Grabar MultimediaFile
                multimediaFileId = AddMultimediaFile(ref pobjOperationResult, multimediaFile, ClientSession, SiNo.NO);
                if (pobjOperationResult.Success == 0)
                {
                    return(null);
                }

                servicecomponentmultimediaDto serviceComponentMultimedia = new servicecomponentmultimediaDto();
                serviceComponentMultimedia.v_ServiceComponentId = pobjDtoEntity.ServiceComponentId;
                serviceComponentMultimedia.v_MultimediaFileId   = multimediaFileId;
                serviceComponentMultimedia.v_Comment            = pobjDtoEntity.Description;

                // Grabar MultimediaFileComponent
                serviceComponentMultimediaId = AddServiceComponentMultimedia(ref pobjOperationResult, serviceComponentMultimedia, ClientSession, SiNo.NO);
                if (pobjOperationResult.Success == 0)
                {
                    return(null);
                }

                IDs[0] = multimediaFileId;
                IDs[1] = serviceComponentMultimediaId;

                // Llenar entidad Log
                LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "MULTIMEDIA FILE", null, Success.Ok, null);
            }
            catch (Exception ex)
            {
                pobjOperationResult.Success          = 0;
                pobjOperationResult.ExceptionMessage = Common.Utils.ExceptionFormatter(ex);
                // Llenar entidad Log
                LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "MULTIMEDIA FILE", null, Success.Failed, pobjOperationResult.ExceptionMessage);
            }

            return(IDs);
        }
        public void UpdateMultimediaFileComponent(ref OperationResult pobjOperationResult, FileInfoDto pobjDtoEntity, List <string> ClientSession)
        {
            //mon.IsActive = true;

            try
            {
                multimediafileDto multimediaFile = new multimediafileDto();
                multimediaFile.v_MultimediaFileId = pobjDtoEntity.MultimediaFileId;
                multimediaFile.v_FileName         = pobjDtoEntity.FileName;
                multimediaFile.b_File             = pobjDtoEntity.ByteArrayFile;
                multimediaFile.b_ThumbnailFile    = pobjDtoEntity.ThumbnailFile;

                // Actualizar MultimediaFile
                UpdateMultimediaFile(ref pobjOperationResult, multimediaFile, ClientSession, SiNo.NO);
                if (pobjOperationResult.Success == 0)
                {
                    return;
                }

                servicecomponentmultimediaDto serviceComponentMultimedia = new servicecomponentmultimediaDto();
                serviceComponentMultimedia.v_ServiceComponentMultimediaId = pobjDtoEntity.ServiceComponentMultimediaId;
                serviceComponentMultimedia.v_Comment = pobjDtoEntity.Description;

                // Actualizar MultimediaFileComponent
                UpdateServiceComponentMultimedia(ref pobjOperationResult, serviceComponentMultimedia, ClientSession, SiNo.NO);
                if (pobjOperationResult.Success == 0)
                {
                    return;
                }

                // Llenar entidad Log
                LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "MULTIMEDIA FILE", null, Success.Ok, null);
                return;
            }
            catch (Exception ex)
            {
                pobjOperationResult.Success          = 0;
                pobjOperationResult.ExceptionMessage = Common.Utils.ExceptionFormatter(ex);
                // Llenar entidad Log
                LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "MULTIMEDIA FILE", null, Success.Failed, pobjOperationResult.ExceptionMessage);

                return;
            }
        }
        private string AddServiceComponentMultimedia(ref OperationResult pobjOperationResult, servicecomponentmultimediaDto pobjDtoEntity, List <string> ClientSession, SiNo ExecLog)
        {
            //mon.IsActive = true;
            string NewId = "(No generado)";

            try
            {
                SigesoftEntitiesModel      dbContext = new SigesoftEntitiesModel();
                servicecomponentmultimedia objEntity = servicecomponentmultimediaAssembler.ToEntity(pobjDtoEntity);

                objEntity.d_InsertDate   = DateTime.Now;
                objEntity.i_InsertUserId = Int32.Parse(ClientSession[2]);
                objEntity.i_IsDeleted    = 0;

                // Autogeneramos el Pk de la tabla
                int intNodeId = int.Parse(ClientSession[0]);
                NewId = Common.Utils.GetNewId(intNodeId, Utils.GetNextSecuentialId(intNodeId, 46), "FC");
                objEntity.v_ServiceComponentMultimediaId = NewId;

                dbContext.AddToservicecomponentmultimedia(objEntity);
                dbContext.SaveChanges();

                pobjOperationResult.Success = 1;

                if (ExecLog == SiNo.SI)
                {
                    // Llenar entidad Log
                    LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "SERVICE COMPONENT MULTIMEDIA", "v_ServiceComponentMultimediaId=" + NewId.ToString(), Success.Ok, null);
                }
            }
            catch (Exception ex)
            {
                pobjOperationResult.Success          = 0;
                pobjOperationResult.ExceptionMessage = Common.Utils.ExceptionFormatter(ex);

                // Llenar entidad Log
                LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.CREACION, "SERVICE COMPONENT MULTIMEDIA", "v_ServiceComponentMultimediaId=" + NewId.ToString(), Success.Failed, pobjOperationResult.ExceptionMessage);
            }

            return(NewId);
        }
        private void UpdateServiceComponentMultimedia(ref OperationResult pobjOperationResult, servicecomponentmultimediaDto pobjDtoEntity, List <string> ClientSession, SiNo ExecLog)
        {
            //mon.IsActive = true;

            try
            {
                SigesoftEntitiesModel dbContext = new SigesoftEntitiesModel();

                // Obtener la entidad fuente
                var objEntitySource = (from a in dbContext.servicecomponentmultimedia
                                       where a.v_ServiceComponentMultimediaId == pobjDtoEntity.v_ServiceComponentMultimediaId
                                       select a).FirstOrDefault();

                // Crear la entidad con los datos actualizados
                objEntitySource.v_Comment      = pobjDtoEntity.v_Comment;
                objEntitySource.d_UpdateDate   = DateTime.Now;
                objEntitySource.i_UpdateUserId = Int32.Parse(ClientSession[2]);

                // Guardar los cambios
                dbContext.SaveChanges();

                pobjOperationResult.Success = 1;

                if (ExecLog == SiNo.SI)
                {
                    // Llenar entidad Log
                    LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.ACTUALIZACION, "SERVICE COMPONENT MULTIMEDIA FILE", "v_ServiceComponentMultimediaId=" + pobjDtoEntity.v_ServiceComponentMultimediaId, Success.Ok, null);
                }
                return;
            }
            catch (Exception ex)
            {
                pobjOperationResult.Success          = 0;
                pobjOperationResult.ExceptionMessage = Common.Utils.ExceptionFormatter(ex);
                // Llenar entidad Log
                LogBL.SaveLog(ClientSession[0], ClientSession[1], ClientSession[2], LogEventType.ACTUALIZACION, "SERVICE COMPONENT MULTIMEDIA FILE", "v_ServiceComponentMultimediaId=" + pobjDtoEntity.v_ServiceComponentMultimediaId, Success.Failed, pobjOperationResult.ExceptionMessage);
                return;
            }
        }