private void LoadInitialControls() { if (this.InvokeRequired) { this.Invoke(new SenderInvoker(LoadInitialControls)); } else { pnlLeft.Controls.Clear(); pnlLeft.Controls.Add(Loader.GetReferenceUserControl("ucMenuReservations")); pnlMiddle.Controls.Clear(); pnlMiddle.Controls.Add(Loader.GetReferenceUserControl("ucConnected")); pnlArea.Controls.Clear(); pnlArea.Controls.Add(Loader.GetReferenceUserControl("ucArea")); toolStripButtonQueue.Visible = true; Common.SetCurrentArea(Common.Area.Area_A); if (Login.IsMySabreBlocked) { MyCTSAPI.EnabledBrowser(false); } } }
/// <summary> /// Valida la respuesta de mySabre cuando aparece la respuesta *PAC /// </summary> private void APIResponseDIN() { string result = string.Empty; string recordLocator = string.Empty; ERR_TicketsEmission.err_ticketsEmission(sabreAnswer); if (ERR_TicketsEmission.Status == false) { ERR_TicketsEmission.ok_ticketsEmission(sabreAnswer); if (ERR_TicketsEmission.StatusOk == true) { int row = 0; int col = 0; if (sabreAnswer.Contains(Resources.TicketEmission.ValitationLabels.ETR_MESSAGE_PROCESSED) || sabreAnswer.Contains(Resources.TicketEmission.ValitationLabels.ETR_EXCHANGE_PROCESSED)) { CommandsAPI2.send_MessageToEmulator(Resources.TicketEmission.Constants.MESSAGE_ISSUE); } CommandsQik.searchResponse(sabreAnswer, Resources.TicketEmission.ValitationLabels.INVOICED, ref row, ref col); if (row != 0 || col != 0) { int rowMessage = row - 2; recordLocator = string.Empty; CommandsQik.CopyResponse(sabreAnswer, ref recordLocator, rowMessage + 1, 9, 6); } Common.BeginManualCommandsTransactions(); try { //CommandsAPI2.send_MessageToEmulator(Resources.TicketEmission.Constants.MESSAGE_ISSUE); AddRecordsContainerBL.AddRecordsContainer(recordLocator, Login.Agent, true); send = string.Empty; send = string.Concat(Resources.TicketEmission.Constants.AST, recordLocator); using (CommandsAPI objCommand = new CommandsAPI()) { objCommand.SendReceive(send); } QueueAgent(); send = string.Empty; MyCTSAPI.SendReservationLog(Login.Firm, Login.PCC, recordLocator, 1); send = string.Concat(Resources.TicketEmission.Constants.AST, recordLocator); using (CommandsAPI objCommand = new CommandsAPI()) { objCommand.SendReceive(send); } SendValidationTicketCommand(); } catch { } //Common.EndManualCommandsTransactions(); ExecEndCommandTransaction(); //System.Threading.Thread.Sleep(1000); ClearValues(); if (ucTicketEmissionBuildCommand.emiting) { SetCSCLog(); ucTicketEmissionBuildCommand.emiting = false; } } else { MessageBox.Show("OCURRIO UN ERROR AL IMPRIMIR FACTURA. VERIFIQUE RESPUESTAS", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Warning); if (ucTicketEmissionBuildCommand.emiting) { SetCSCLog(); ucTicketEmissionBuildCommand.emiting = false; } //UC = "sendTicketInvoice"; Loader.AddToPanel(Loader.Zone.Middle, this, Resources.TicketEmission.Constants.UC_SEND_TICKET_INVOICE); } } else if (ERR_TicketsEmission.StatusSendCommand == true) { sabreAnswer = string.Empty; using (CommandsAPI objCommand = new CommandsAPI()) { sabreAnswer = objCommand.SendReceive(send); } ERR_TicketsEmission.ok_ticketsEmission(sabreAnswer); if (ERR_TicketsEmission.StatusOk == true) { int row = 0; int col = 0; if (sabreAnswer.Contains(Resources.TicketEmission.ValitationLabels.ETR_MESSAGE_PROCESSED) || sabreAnswer.Contains(Resources.TicketEmission.ValitationLabels.ETR_EXCHANGE_PROCESSED)) { CommandsAPI2.send_MessageToEmulator(Resources.TicketEmission.Constants.MESSAGE_ISSUE); } CommandsQik.searchResponse(sabreAnswer, Resources.TicketEmission.ValitationLabels.INVOICED, ref row, ref col); if (row != 0 || col != 0) { int rowMessage = row - 2; recordLocator = string.Empty; CommandsQik.CopyResponse(sabreAnswer, ref recordLocator, rowMessage + 1, 9, 6); } Common.BeginManualCommandsTransactions(); try { //CommandsAPI2.send_MessageToEmulator(Resources.TicketEmission.Constants.MESSAGE_ISSUE); AddRecordsContainerBL.AddRecordsContainer(recordLocator, Login.Agent, true); send = string.Empty; send = string.Concat(Resources.TicketEmission.Constants.AST, recordLocator); using (CommandsAPI objCommand = new CommandsAPI()) { objCommand.SendReceive(send); } QueueAgent(); send = string.Empty; MyCTSAPI.SendReservationLog(Login.Firm, Login.PCC, recordLocator, 1); send = string.Concat(Resources.TicketEmission.Constants.AST, recordLocator); using (CommandsAPI objCommand = new CommandsAPI()) { objCommand.SendReceive(send); } SendValidationTicketCommand(); if (ucTicketEmissionBuildCommand.emiting) { SetCSCLog(); ucTicketEmissionBuildCommand.emiting = false; } } catch { } } //Common.EndManualCommandsTransactions(); ExecEndCommandTransaction(); //System.Threading.Thread.Sleep(1000); ClearValues(); } else { MessageBox.Show("OCURRIO UN ERROR AL IMPRIMIR FACTURA. VERIFIQUE RESPUESTAS", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Warning); if (ucTicketEmissionBuildCommand.emiting) { SetCSCLog(); ucTicketEmissionBuildCommand.emiting = false; } //UC = "sendTicketInvoice";// Loader.AddToPanel(Loader.Zone.Middle, this, Resources.TicketEmission.Constants.UC_SEND_TICKET_INVOICE); } }
private void LoadControl() { //Carga el nombre del Splash en caso de que ocurra un //error para registrarlo en el log Common.LogApplicationItem.UserControlName = "Splash"; #region Datos Usuario User usuarioDto = m_userDto; string password = m_password; Login.Firm = usuarioDto.Firm; Login.passWord = password; Login.PCC = usuarioDto.PCC; Login.TA = usuarioDto.TA; Login.UserId = usuarioDto.UserId; Login.Queue = usuarioDto.Queue; Login.Mail = usuarioDto.UserMail; Login.NombreCompleto = usuarioDto.FamilyName; Login.IsMySabreBlocked = usuarioDto.IsMySabreBlocked; Login.Agent = usuarioDto.Agent; Login.IsFramework35Installed = usuarioDto.IsFramework35Installed; Login.ProfileAllAccess = usuarioDto.ProfileAllAccess; Login.ApplicationName = usuarioDto.ApplicationName; Login.OrgId = usuarioDto.OrgId; UserBL.OrgIdBL = usuarioDto.OrgId; Login.Supervisor = usuarioDto.Supervisor; Login.UpgradeStatus = usuarioDto.UpgradeStatus; //Crear perfil de properties de mySABRE por default #endregion if (Login.UpgradeStatus.Equals(0) && Login.ByParameters) { MessageBox.Show("Acción Cancelada. Ejecutar la aplicación MyCTS que se encuentra en el escritorio."); CloseApp(); } else if (Login.UpgradeStatus.Equals(0) && !Login.ByParameters) { GlobalConstants.PATH_SABRE_USER = string.Format(ConfigurationManager.AppSettings["PATH_MYSABRE_USER"] + "{0}", Login.Firm); GlobalConstants.PATH_SABRE_COMPILED = ConfigurationManager.AppSettings["PATH_MYSABRE_COMPILED"]; } else if (Login.UpgradeStatus.Equals(2) && !Login.ByParameters) { bool exists = File.Exists(Path.Combine(ConfigurationManager.AppSettings["PATH_SABRERED_USER"], @"Profiles\3L64_1571\mysabre.exe")); if (!exists) { MessageBox.Show("Su usuario no puede trabajar con la versión instalada en este equipo, se empezara a actualizar a MyCTS2"); Login.UpgradeStatus = 1; UpdateSRW(); } } GlobalConstants.PATH_SABRE_USER = ConfigurationManager.AppSettings["PATH_SABRERED_USER"]; GlobalConstants.PATH_SABRE_COMPILED = ConfigurationManager.AppSettings["PATH_SABRERED_COMPILED"]; try { SendMessages("Inicializando . . ."); Parameters.ServerDateTime = MyCTS.Services.Contracts.Productivity.GetCurrentDateTime(); Parameters.LocalDateTime = DateTime.Now; //Verifica que el usuario tenga framework 3.5 instalado if (usuarioDto.InstallFramework35) { SilentInstaller.CheckFrameworkVersion(); } DeleteInitialFiles(); GlobalConstants.FilesDBList = CatalogsBL.GetCatalogsFileNames(); try { MyCTSAPI.EnabledBrowser(true); } catch {} // Actualizar a SRW UpdateSRW(); //Tiempos de respuesta del API para comandos manuales y comandos extendidos try { Parameters.CurrentTimeAPINormal = ParameterBL.GetParameterValue("CurrentTimeAPINormal").Values; Parameters.CurrentTimeAPIExtended = ParameterBL.GetParameterValue("CurrentTimeAPIExtended").Values; } catch { Parameters.CurrentTimeAPINormal = "29"; Parameters.CurrentTimeAPIExtended = "240"; } Parameters.TimeExtendedAPI = false; } catch { } #region Verificando configuración . . . string[] driversPath = new string[] { "c:\\", "d:\\" }; string strPath = string.Empty; string strPathTurbo = string.Empty; string strTA = null; try { SendMessages("Verificando configuración . . ."); if (string.IsNullOrEmpty(usuarioDto.TA)) { Login.IsFirstTime = true; foreach (string myDrive in driversPath) { //Obtener la TA de cada maquina. strPath = myDrive + Resources.Constants.PATH_TA_FILE; strTA = GetTAUserMachine(strPath); usuarioDto.TA = strTA; if (!string.IsNullOrEmpty(strTA)) { break; } } } //Update la TA UserBL.UpdateUser(usuarioDto.ApplicationId, usuarioDto.UserId, usuarioDto.UserName, usuarioDto.LoweredUserName, usuarioDto.UserMail, DateTime.Now, usuarioDto.Firm, password, usuarioDto.FamilyName, usuarioDto.Agent, usuarioDto.Queue, usuarioDto.PCC, usuarioDto.TA); //Obtiene el profile del usuario. Profile profileDto = m_userDto.ProfileUser; //Cambiar el nombre del archivo de TurboSABRE if (profileDto != null) { string bannerText = Common.GetProfileElement("BANNER", profileDto.PropertyNames, profileDto.PropertyValuesString); if (string.IsNullOrEmpty(bannerText)) { bannerText = Resources.Constants.BANNER_TEXT; } Login.BannerText = bannerText; Login.UserProfile = profileDto; if (!profileDto.LastUpdatedDate.Equals(DateTime.MinValue)) { foreach (string myDrive in driversPath) { //Obtener la TA de cada maquina. strPathTurbo = myDrive + Resources.Constants.PATH_TURBO_FILE; ChangeTurboSABREFile(strPathTurbo); } } } } catch (Exception ex) { Common.AddMessageToLog(ex); MessageBox.Show("No ha sido posible verificar la información del perfil, por favor contacte con el área de soporte.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); CloseApp(); } #endregion ActualizaVersionDeMyCTS(); #region Creando datos del perfil . . . SendMessages("Cargando datos del perfil . . ."); try { SetSettingsUser(); } catch (Exception ex) { Common.AddMessageToLog(ex); MessageBox.Show("No ha sido posible copiar los archivos de configuración, por favor contacte con el área de soporte.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); CloseApp(); } #endregion #region Cargando archivos de inicio . . . SendMessages("Cargando archivos de inicio . . ."); try { LoadMissingCatalogs(); } catch (Exception ex) { Common.AddMessageToLog(ex); MessageBox.Show("No ha sido posible descargar la información, por favor contacte con el área de soporte.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); CloseApp(); } #endregion //Obtiene la contraseña para poder ingresar comandos de forma manual Parameter parameter = ParameterBL.GetParameterValue("ManualCommands"); Parameters.PasswordManualCommands = (parameter != null) ? parameter.Values : string.Empty; parameter = ParameterBL.GetParameterValue("SecondsLogs"); Parameters.SecondsLogs = (parameter != null) ? parameter.Values : "60000"; parameter = ParameterBL.GetParameterValue("NumCommandsToInsertLogs"); Parameters.NumCommandsToInsertLogs = (parameter != null) ? parameter.Values : "15"; CloseThisWin(); }
/// <summary> /// This will create a Application Reference file on the users desktop /// if they do not already have one when the program is loaded. /// Check for them running the deployed version before doing this, /// so it doesn't kick it when you're running it from Visual Studio. /// </summary static void CheckForShortcut() { if (ApplicationDeployment.IsNetworkDeployed) { ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment; if (ad.IsFirstRun) //first time user has run the app since installation or update { Assembly code = Assembly.GetExecutingAssembly(); string title = string.Empty; if (Attribute.IsDefined(code, typeof(AssemblyTitleAttribute))) { AssemblyTitleAttribute asmTitle = (AssemblyTitleAttribute)Attribute.GetCustomAttribute(code, typeof(AssemblyTitleAttribute)); title = asmTitle.Title; } if (title != string.Empty) { string desktopPath = string.Empty; string shortcutName = string.Empty; desktopPath = string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "\\", title, ".appref-ms"); shortcutName = string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "\\", title, "\\", title, ".appref-ms"); if (!File.Exists(desktopPath)) { FileInfo fShortCut = new FileInfo(shortcutName); if (fShortCut.Exists) { fShortCut.CopyTo(desktopPath, true); } //Si no existe el icono de MyCTS lo coloca en el escritorio y realiza un refresh para mostrarlo MyCTSAPI.RefreshDesktop(); } //Copy the fix MyCTS on the programs bar string webBrowserPath = System.Reflection.Assembly.GetExecutingAssembly().Location; string nameEXE = System.IO.Path.GetFileName(Application.ExecutablePath); string webBrowserPath_temp = webBrowserPath.Substring(0, webBrowserPath.Length - nameEXE.Length) + "WebBrowser\\UninstallMyCTS.exe"; string destino = string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "\\", title, "\\", "UninstallMyCTS.exe"); if (File.Exists(destino)) { File.Delete(destino); } System.IO.File.Copy(webBrowserPath_temp, destino, true); } } } #region Old Code //if (ApplicationDeployment.IsNetworkDeployed) //{ // ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment; // if (ad.IsFirstRun) //first time user has run the app since installation or update // { // Assembly code = Assembly.GetExecutingAssembly(); // string company = string.Empty; // string description = string.Empty; // if (Attribute.IsDefined(code, typeof(AssemblyCompanyAttribute))) // { // AssemblyCompanyAttribute ascompany = // (AssemblyCompanyAttribute)Attribute.GetCustomAttribute(code, // typeof(AssemblyCompanyAttribute)); // company = ascompany.Company; // } // if (Attribute.IsDefined(code, typeof(AssemblyDescriptionAttribute))) // { // AssemblyDescriptionAttribute asdescription = // (AssemblyDescriptionAttribute)Attribute.GetCustomAttribute(code, // typeof(AssemblyDescriptionAttribute)); // description = asdescription.Description; // } // if (company != string.Empty && description != string.Empty) // { // string desktopPath = string.Empty; // desktopPath = string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "\\", description, ".appref-ms"); // string shortcutName = string.Empty; // shortcutName = string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "\\", company, "\\", description, ".appref-ms"); // //Restart computer // if (System.IO.File.Exists(desktopPath)) // MyCTSAPI.Reiniciar(); // if (System.IO.File.Exists(shortcutName)) // System.IO.File.Copy(shortcutName, desktopPath, true); // //Copy the fix MyCTS on the programs bar // string webBrowserPath = System.Reflection.Assembly.GetExecutingAssembly().Location; // string nameEXE = System.IO.Path.GetFileName(Application.ExecutablePath); // string webBrowserPath_temp = webBrowserPath.Substring(0, webBrowserPath.Length - nameEXE.Length) + "WebBrowser\\UninstallMyCTS.exe"; // string destino = string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "\\", company, "\\", "UninstallMyCTS.exe"); // System.IO.File.Copy(webBrowserPath_temp, destino, true); // } // } //} #endregion }