/// <summary> /// Validating Existence of Asset,New GMU NO, Serial No /// </summary> /// <param name="item_ags"></param> /// <param name="ErrorMsg"></param> /// <returns></returns> private bool Vaildate(BMC.Transport.AGSdetails item_ags, ref string ErrorMsg) { bool retval = true; try { int mygmuno = 0; int.TryParse(item_ags.GMUNo, out mygmuno); if (mygmuno == 0) { ErrorMsg = "MessageID524"; retval = false; } else if (mygmuno > 0 && mygmuno > 99999) { ErrorMsg = "MessageID525"; retval = false; } else if (UpdateGMUNo.CreateInstance().CheckAGSCombination(item_ags.ActualAssetNo, item_ags.GMUNo, item_ags.SerialNo)) { ErrorMsg = "MessageID510"; retval = false; } } catch (Exception ex) { retval = false; ErrorMsg = "MessageID511"; ExceptionManager.Publish(ex); } return(retval); }
private void UserControl_Loaded(object sender, RoutedEventArgs e) { try { LogManager.WriteLog(strScreenName + "Get Machine AGS Combination Details", LogManager.enumLogLevel.Info); lst_ags = UpdateGMUNo.CreateInstance().GetAGSDetails();//Load Machine Details (i.e. GMUNo,AssetNo) lvGMUNo.ItemsSource = lst_ags; if (Settings.AGSValue.Trim() != "16") { border_GMU.IsEnabled = false; } else { txtGMUDisable.Visibility = Visibility.Hidden; } //di_Method.Add("RemoveMachineFromPollingList", UpdateGMUNo.CreateInstance().RemoveMachineFromPollingList); //di_Method.Add("AddToPollingList", UpdateGMUNo.CreateInstance().AddToPollingList); //RetryCount = Convert.ToInt32(BMC.Common.ConfigurationManagement.ConfigManager.Read("GMUNoUpdateRetryCount")); } catch (Exception Ex) { ExceptionManager.Publish(Ex); } }
/// <summary> /// Send AGS details to enterprise /// </summary> /// <param name="item_ags"></param> private void SaveAGSCombination(BMC.Transport.AGSdetails item_ags) { try { string strXml = UpdateGMUNo.CreateInstance().ExportAGSDetails(item_ags.MachineID, item_ags.GMUNo); Proxy oProxy = new Proxy(Settings.SiteCode); if (oProxy.UpdateGMUNumber(strXml))//Send AGS Details to Enterprise { LogManager.WriteLog(strScreenName + "Enterprise GMU Number Updated Successfully", LogManager.enumLogLevel.Info); if (UpdateGMUNo.CreateInstance().UpdateGMUDetails(item_ags.MachineID, item_ags.GMUNo, item_ags.Installation_No.Value)) //After Vaildating in Enterprise Updating GMUNo in Exchange { if (SendDetailsToExcomms(item_ags)) //Send to Excomms i.e. GMU No is modified { BMC.Presentation.MessageBox.ShowBox("MessageID506", BMC_Icon.Information); LogManager.WriteLog(strScreenName + "Exchange GMU Number Updated Successfully GMUNo: " + item_ags.OldGMUNo + "-->" + item_ags.GMUNo, LogManager.enumLogLevel.Info); AuditModule("GMU Updated Successfully for an Asset ", item_ags.AssetNo, item_ags.OldGMUNo, item_ags.GMUNo); } else { AuditModule("GMU Updated Failed for an Asset ", item_ags.AssetNo, item_ags.OldGMUNo, item_ags.GMUNo); UpdateGMUNo.CreateInstance().UpdateGMUDetails(item_ags.MachineID, item_ags.OldGMUNo, item_ags.Installation_No.Value); LogManager.WriteLog(strScreenName + "Rollback GMU Number Updation in Exchange GMUNo: " + item_ags.GMUNo + "-->" + item_ags.OldGMUNo, LogManager.enumLogLevel.Info); strXml = UpdateGMUNo.CreateInstance().ExportAGSDetails(item_ags.MachineID, item_ags.OldGMUNo); oProxy.UpdateGMUNumber(strXml); LogManager.WriteLog(strScreenName + "Rollback GMU Number Updation in Enterprise GMUNo: " + item_ags.GMUNo + "-->" + item_ags.OldGMUNo, LogManager.enumLogLevel.Info); item_ags.GMUNo = item_ags.OldGMUNo; AuditModule("Rollback GMU Number Updation for an Asset ", item_ags.AssetNo, item_ags.GMUNo, item_ags.OldGMUNo); } } else { AuditModule("GMU Updated Failed for an Asset ", item_ags.AssetNo, item_ags.OldGMUNo, item_ags.GMUNo); BMC.Presentation.MessageBox.ShowBox("MessageID507", BMC_Icon.Information); LogManager.WriteLog(strScreenName + "Exchange GMU Number Updated Failed for GMUNo: " + item_ags.GMUNo, LogManager.enumLogLevel.Info); item_ags.GMUNo = item_ags.OldGMUNo; } } else { BMC.Presentation.MessageBox.ShowBox("MessageID529", BMC_Icon.Information); // AuditModule("GMU Updated Failed for an Asset ", item_ags.AssetNo, item_ags.OldGMUNo, item_ags.GMUNo); LogManager.WriteLog(strScreenName + "Enterprise GMU Number Updated Failed for GMUNo: " + item_ags.GMUNo, LogManager.enumLogLevel.Info); item_ags.GMUNo = item_ags.OldGMUNo; } } catch (Exception Ex) { AuditModule("GMU Updated Failed for an Asset ", item_ags.AssetNo, item_ags.OldGMUNo, item_ags.GMUNo); BMC.Presentation.MessageBox.ShowBox("MessageID507", BMC_Icon.Information); item_ags.GMUNo = item_ags.OldGMUNo; ExceptionManager.Publish(Ex); } }
///// <summary> ///// This Method will retry around certain number of times if it fails ///// </summary> ///// <param name="Key"></param> ///// <param name="Installation_No"></param> ///// <param name="Bar_Pos_Port"></param> ///// <param name="DisableMachine"></param> ///// <returns></returns> //private bool InvokeMethod(string Key, int Installation_No, int Bar_Pos_Port, int DisableMachine) //{ // bool retVal = false; // int Count = 0; // try // { // while (Count < RetryCount) // { // ar_wait.WaitOne(2000); // if (Key == "RemoveMachineFromPollingList") // { // if (di_Method[Key].Invoke(Installation_No, DisableMachine)) // { // ar_wait.Set(); // retVal = true; // break; // } // } // else // { // if (di_Method[Key].Invoke(Installation_No, Bar_Pos_Port)) // { // ar_wait.Set(); // retVal = true; // break; // } // } // Count++; // } // } // catch (Exception Ex) // { // ExceptionManager.Publish(Ex); // } // return retVal; //} /// <summary> /// Remove machine from polling list and then adding to polling list with same installtion /// </summary> /// <param name="item_ags"></param> /// <returns>true or false</returns> private bool SendDetailsToExcomms(BMC.Transport.AGSdetails item_ags) { bool retVal = false; try { EnrollmentDataAccess enrollmentDataAccess = new EnrollmentDataAccess(); int Bar_Pos_Port = enrollmentDataAccess.GetBarPosPort(item_ags.Installation_No.Value); if (item_ags.IsNull) { if (UpdateGMUNo.CreateInstance().RemoveMachineFromPollingList(item_ags.Installation_No.Value, 0)) { LogManager.WriteLog(strScreenName + " Remove Machine From PollingList Succeed InstallationNo:" + item_ags.Installation_No.Value, LogManager.enumLogLevel.Info); LogManager.WriteLog(strScreenName + "'NULL' string updated successfully for an asset :" + item_ags.AssetNo, LogManager.enumLogLevel.Info); bool retGMUEvent = UpdateGMUNo.CreateInstance().UpdateGMUDownEvent(item_ags.Installation_No.Value); LogManager.WriteLog(strScreenName + "'GMUDownEvent inserted - " + retGMUEvent.ToString() + " - for an asset :" + item_ags.AssetNo, LogManager.enumLogLevel.Info); retVal = true; } else { BMC.Presentation.MessageBox.ShowBox("MessageID208", BMC_Icon.Error); LogManager.WriteLog(strScreenName + "Unable to Remove Machine From PollingList InstallationNo:" + item_ags.Installation_No.Value, LogManager.enumLogLevel.Info); } } else { if (UpdateGMUNo.CreateInstance().AddToPollingList(item_ags.Installation_No.Value, Bar_Pos_Port)) { LogManager.WriteLog(strScreenName + "Add Machine To PollingList Succeed InstallationNo:" + item_ags.Installation_No.Value, LogManager.enumLogLevel.Info); retVal = true; } else { BMC.Presentation.MessageBox.ShowBox("MessageID508", BMC_Icon.Error); LogManager.WriteLog(strScreenName + "Unable to Add Machine To PollingList InstallationNo:" + item_ags.Installation_No.Value, LogManager.enumLogLevel.Info); } } } catch (Exception ex) { ExceptionManager.Publish(ex); } return(retVal); }
private void EnrollMachine() { Application.Current.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart) delegate { try { LogManager.WriteLog("Inside Enroll_Click", LogManager.enumLogLevel.Info); int installationNo = 0; if (Settings.ValidateGMUInSite && Settings.AGSValue.Trim() == Settings.DefaultGMUValue.Trim()) { if (UpdateGMUNo.CreateInstance().CheckAGSCombination("", lblGMUNo.Content.ToString().Trim(), "")) { MessageBox.ShowBox("MessageID510", BMC_Icon.Information); return; } } int agsValue = Convert.ToInt32(Settings.AGSValue.Trim()); if (UpdateGMUNo.CreateInstance().CheckAGSCombination(((agsValue & 8) == 8) ? objPosDetails.ActAssetNo :"", ((agsValue & 16) == 16) ? lblGMUNo.Content.ToString().Trim() : "", ((agsValue & 4) == 4) ? objPosDetails.ActSerialNo : "")) { MessageBox.ShowBox("Enrollment_MessageID511", BMC_Icon.Information); return; } GetAssetDetailsFromEnterprise(); if (EnterpriseSuccess) { if (lblSerialNo.Content.ToString() == string.Empty) { MessageBox.ShowBox("MessageID300", BMC_Icon.Information); return; } LogManager.WriteLog("Inside If - EnterpriseSuccess", LogManager.enumLogLevel.Info); //if (!ValidateControls()) // return; LogManager.WriteLog("Assigning values to object...", LogManager.enumLogLevel.Info); //objPosDetails.CreditValue = Int32.Parse(txtCreditValue.Text.Trim()); objPosDetails.CreditValue = Convert.ToInt32(cmbCoinType.SelectedValue); LogManager.WriteLog("CreditValue assigned", LogManager.enumLogLevel.Info); objPosDetails.Jackpot = 0;// Int32.Parse(txtJackpot.Text.Trim()); ; //LogManager.WriteLog("Jackpot value assigned", LogManager.enumLogLevel.Info); LogManager.WriteLog("Invoking InstallMachine....", LogManager.enumLogLevel.Info); EnrollmentErrorCodes ReturnValue = EnrollmentBusinessObject.CreateInstance().InstallMachine(objPosDetails, Security.SecurityHelper.CurrentUser.SecurityUserID, out installationNo); LogManager.WriteLog(string.Format("Install Machine Completed with ReturnCode - {0}", ReturnValue), LogManager.enumLogLevel.Info); switch (ReturnValue) { case EnrollmentErrorCodes.UpdateToOptionFileParameterFailure: { try { LogManager.WriteLog(string.Format("Machine Removal due to UpdateToOptionFileParameterFailure : Serial No:{0}, Installation No: (1) ", objPosDetails.SerialNo, objPosDetails.InstallationNo), LogManager.enumLogLevel.Info); //EnrollmentErrorCodes ErrorCode = EnrollmentBusinessObject.CreateInstance().RemoveMachine(objPosDetails.InstallationNo, 0, string.Empty); } catch (Exception ex) { LogManager.WriteLog("Machine Removal due to UpdateToOptionFileParameterFailure", LogManager.enumLogLevel.Info); ExceptionManager.Publish(ex); } ShowMessage("MessageID351"); Audit_Error("Unable to update the Option File Parameter."); break; } case EnrollmentErrorCodes.AddToPollingListFailure: { try { LogManager.WriteLog(string.Format("Machine Removal due to AddToPollingListFailure : Serial No:{0}, Installation No: (1) ", objPosDetails.SerialNo, objPosDetails.InstallationNo), LogManager.enumLogLevel.Info); //EnrollmentErrorCodes ErrorCode = EnrollmentBusinessObject.CreateInstance().RemoveMachine(objPosDetails.InstallationNo, 0, string.Empty); } catch (Exception ex) { LogManager.WriteLog("Machine Removal due to AddToPollingListFailure", LogManager.enumLogLevel.Info); ExceptionManager.Publish(ex); } ShowMessage("MessageID234"); Audit_Error("Unable to Add to Polling list."); break; } case EnrollmentErrorCodes.ExchangeHostServiceNotRunning: { try { LogManager.WriteLog(string.Format("Machine Removal due to AddToPollingList TimeOut : Serial No:{0}, Installation No: (1) ", objPosDetails.SerialNo, objPosDetails.InstallationNo), LogManager.enumLogLevel.Info); //EnrollmentErrorCodes ErrorCode = EnrollmentBusinessObject.CreateInstance().RemoveMachine(objPosDetails.InstallationNo, 0, string.Empty); } catch (Exception ex) { LogManager.WriteLog("Machine Removal due to AddToPollingList TimeOut ", LogManager.enumLogLevel.Info); ExceptionManager.Publish(ex); } ShowMessage("MessageID358"); Audit_Error("Unable to Add to Polling list. Time Out Occured"); break; } case EnrollmentErrorCodes.DatabaseError: { ShowMessage("MessageID235"); Audit_Error("Database Error."); break; } case EnrollmentErrorCodes.EnterpriseDatabaseError: { ShowMessage("MessageID236"); Audit_Error("Enterprise Database Error."); break; } case EnrollmentErrorCodes.EnterpriseWebServiceCommunicationFailure: { ShowMessage("MessageID237"); Audit_Error("Enterprise WebService Communication Failure."); break; } case EnrollmentErrorCodes.EnterpriseAssetInUse: { ShowMessage("MessageID238"); Audit_Error("Enterprise Asset in Use."); break; } case EnrollmentErrorCodes.EnterpriseAssetNotAvailable: { ShowMessage("MessageID239"); Audit_Error("Enterprise Asset not Availble."); break; } case EnrollmentErrorCodes.PositionLocked: { ShowMessage("MessageID240"); Audit_Error("Postion is Locked."); break; } case EnrollmentErrorCodes.LockExists: { ShowMessage("MessageID240"); Audit_Error("Lock Exists"); break; } case EnrollmentErrorCodes.LockError: { ShowMessage("MessageID240"); Audit_Error("Lock Error."); break; } case EnrollmentErrorCodes.Success: { MessageBox.ShowBox("MessageID241", BMC_Icon.Information); AuditViewerBusiness.InsertAuditData(new Audit.Transport.Audit_History { AuditModuleName = ModuleName.Enrollment, Audit_Screen_Name = "Enrollment|MachineInstallation", Audit_Desc = chkInTransitAsset.IsChecked == false ? "Machine Installed" : "Transit Machine Installed", AuditOperationType = OperationType.ADD, Audit_Field = "Position", Audit_New_Vl = objPosDetails.Position, Audit_Slot = objPosDetails.AssetNo }); // Insert Hourly Records if the machine installation is successful ExecuteHourlyVTP(installationNo); EnrollmentBusinessObject.CreateInstance().UpdateHourlyStatsGamingday(installationNo.ToString()); EnrollmentBusinessObject.CreateInstance().InsertIntoExportHistory(installationNo); CloseWindow(); } break; } } } catch (Exception ex) { ExceptionManager.Publish(ex); } }); }