public jackpotProcessInfoDTO payJackpot(long sequenceNumber, long siteId, string userId, string firstName, string lastName, string cashDeskLocation)
        {
            jackpotProcessInfoDTO response = new jackpotProcessInfoDTO();

            try
            {
                response = handpay.payJackpot(sequenceNumber.ToString(), Convert.ToInt32(siteId), userId, firstName, lastName, cashDeskLocation);
            }
            catch (Exception Ex)
            {
                ExceptionManager.Publish(Ex);
            }
            return(response);
        }
        public jackpotProcessInfoDTO getJackpotStatusAmount(long sequenceNumber, long siteId)
        {
            jackpotProcessInfoDTO response = new jackpotProcessInfoDTO();

            try
            {
                response = handpay.getJackpotStatusAmount(sequenceNumber.ToString(), Convert.ToInt32(siteId));
            }
            catch (Exception Ex)
            {
                ExceptionManager.Publish(Ex);
            }
            return(response);
        }
        public jackpotProcessInfoDTO payJackpot(string SequenceNumber, int SiteId, string userId, string firstName, string lastName, string cashDeskLocation)
        {
            LinqDataAccessDataContext linqDB = new LinqDataAccessDataContext(CommonDataAccess.ExchangeConnectionString);
            jackpotProcessInfoDTO     jpinfo = getJackpotStatusAmount(SequenceNumber, SiteId);
            Treasury objTreasury             = new Treasury();
            int?     Treasury_No             = 0;
            int      result;
            int      iInstallationNumber = 0;
            ISingleResult <HandpayEntities> lstHpDetails = linqDB.GetHpDetails(Convert.ToInt32(jpinfo.sequenceNumber));

            int IsManualAttendantPay = 0;

            try
            {
                foreach (HandpayEntities ticket in lstHpDetails)
                {
                    IsManualAttendantPay = ticket.IsManualAttendantPay;
                    iInstallationNumber  = int.Parse(ticket.installation_no.ToString());
                    result = linqDB.InsertTreasuryCage(ticket.installation_no, 0, userId, ticket.handpaytype, "", Convert.ToDecimal(ticket.amount)
                                                       , false, "", 0, 0, false, 0, ticket.TeDate, userId, userId, DateTime.Now, 0, int.Parse(SequenceNumber), ref Treasury_No);
                }

                if (Treasury_No.Value > 0)
                {
                    if (Convert.ToInt32(SequenceNumber) > 0)
                    {
                        result = linqDB.UpdateFinalStatusTicketException(Convert.ToInt32(SequenceNumber));
                    }
                    jpinfo.processSuccessful = true;
                }

                if (Treasury_No.Value <= 0)
                {
                    jpinfo.errCode = -1;
                }
                //LogManager.WriteLog("Clear Handpay/Jackpot Lock InstallatioNo:[" + iInstallationNumber.ToString() + "Manual:" + IsManualAttendantPay.ToString () + " ]", LogManager.enumLogLevel.Debug);
                ////Clear the lock in the slot
                //if (IsManualAttendantPay == 0)
                //{
                //    Clearhandpay(iInstallationNumber);
                //}
            }
            catch (Exception Ex)
            {
                ExceptionManager.Publish(Ex);
                jpinfo.errCode = -1;
            }
            return(jpinfo);
        }
 public BMC.Transport.jackpotProcessInfoDTO getJackpotStatusAmount(string JackpotSlipNumber, int SiteNo)
 {
     try
     {
         jackpotProcessInfoDTO jpdto     = null;
         SqlParameter[]        ObjParams = new SqlParameter[2];
         ObjParams[0] = new SqlParameter(DBConstants.CONST_PARAM_TE_Slip_NUMBER, JackpotSlipNumber);
         ObjParams[1] = new SqlParameter(DBConstants.CONST_PARAM_JACKPOT_SITE, SiteNo);
         SqlDataReader reader = SqlHelper.ExecuteReader(CommonDataAccess.ExchangeConnectionString, CommandType.StoredProcedure,
                                                        "rsp_GetJackpotDetails", ObjParams);
         while (reader.Read())
         {
             jpdto = new jackpotProcessInfoDTO();
             jpdto.assetConfigNumber = reader["Asset"].ToString();
             jpdto.errCode           = Convert.ToInt16(reader["Error"]);
             jpdto.errMessage        = reader["ErrorMessage"].ToString();
             jpdto.hpjpAmount        = Convert.ToInt32(reader["Amount"]);
             //jpdto.hpjpAmountSpecified = true;
             jpdto.jackpotNetAmount = Convert.ToInt32(reader["Amount"]);
             //jpdto.jackpotNetAmountSpecified = true;
             jpdto.jackpotTypeId = Convert.ToInt16(reader["HPType"]);
             //jpdto.jackpotTypeIdSpecified = true;
             jpdto.processFlagId = 1;         // "Auto";
             //jpdto.processFlagIdSpecified = true;
             jpdto.processSuccessful = false; //currently unprocessed
             jpdto.sequenceNumber    = Convert.ToInt32(reader["SlipNo"]);
             //jpdto.sequenceNumberSpecified = true;
             jpdto.siteId = Convert.ToInt32(reader["Site"]);
             //jpdto.siteIdSpecified = true;
             jpdto.siteNo          = reader["Sitename"].ToString();
             jpdto.slipReferenceID = Convert.ToInt32(reader["SlipNo"]);
             jpdto.statusFlagId    = reader["Error"].ToString() == "8801" ? Convert.ToInt16(4002) : reader["Error"].ToString() == "8802" ? Convert.ToInt16(4003)
                 : reader["Error"].ToString() == "8804" ? Convert.ToInt16(4001) : reader["Error"].ToString() == "8803" ? Convert.ToInt16(4006) : Convert.ToInt16(4014);
             //jpdto.statusFlagIdSpecified = true;
         }
         return(jpdto);
     }
     catch (Exception ex)
     {
         ExceptionManager.Publish(ex);
         return(null);
     }
 }
        public getJackpotStatusAmountResponse1 getJackpotStatusAmount(getJackpotStatusAmountRequest request)
        {
            if (!CheckCageEnabled())
            {
                return(null);
            }
            getJackpotStatusAmountResponse1 oResponse = new getJackpotStatusAmountResponse1();

            oResponse.getJackpotStatusAmountResponse = new getJackpotStatusAmountResponse();
            jackpotProcessInfoDTO response = new jackpotProcessInfoDTO();

            try
            {
                oResponse.getJackpotStatusAmountResponse.@return = handpay.getJackpotStatusAmount(request.getJackpotStatusAmount.arg0.ToString(), Convert.ToInt32(request.getJackpotStatusAmount.arg1));
                //oResponse.getJackpotStatusAmountResponse.@return = handpay.getJackpotStatusAmount(request.getJackpotStatusAmount.arg0.ToString(), 1030);
            }
            catch (Exception Ex)
            {
                ExceptionManager.Publish(Ex);
            }
            return(oResponse);
        }
        public payJackpotResponse1 payJackpot(payJackpotRequest request)
        {
            if (!CheckCageEnabled())
            {
                return(null);
            }
            payJackpotResponse1 oResponse = new payJackpotResponse1();

            oResponse.payJackpotResponse = new payJackpotResponse();
            jackpotProcessInfoDTO response = new jackpotProcessInfoDTO();

            try
            {
                oResponse.payJackpotResponse.@return = handpay.payJackpot(request.payJackpot.arg0.ToString(), int.Parse(request.payJackpot.arg1.ToString()), request.payJackpot.arg2, request.payJackpot.arg3, request.payJackpot.arg4, request.payJackpot.arg5);
                //oResponse.payJackpotResponse.@return = handpay.payJackpot(request.payJackpot.arg0.ToString(), 1030, request.payJackpot.arg2, request.payJackpot.arg3, request.payJackpot.arg4, request.payJackpot.arg5);
                //response =                            handpay.payJackpot(sequenceNumber.ToString(), Convert.ToInt32(siteId), userId, firstName, lastName, cashDeskLocation);
            }
            catch (Exception Ex)
            {
                ExceptionManager.Publish(Ex);
            }
            return(oResponse);
        }
Beispiel #7
0
        private void GenerateManulJackpot()
        {
            double amount = 0;

            if (txtBox != null && txtBox.Text.Length > 0)
            {
                double.TryParse(txtBox.Text.ToString(), NumberStyles.Currency, new CultureInfo(ExtensionMethods.CurrentCurrenyCulture), out amount);
            }

            //if (amount > Settings.W2GWinAmount)
            //{
            //    MessageBox.ShowBox("MessageID367", BMC_Icon.Information);
            //    //return;
            //}
            try
            {
                jackpotProcessInfoDTO jpinfo       = new jackpotProcessInfoDTO();
                CAuthorize            objAuthorize = null;
                string HP_Type = string.Empty;
                Double iAmount = 0;
                if (txtBox != null && txtBox.Text.Length > 0)
                {
                    // Issue fix for ->set cultureinfo='en-US',  currencyculture='it-IT'
                    Double.TryParse(txtBox.Text.ToString(), NumberStyles.Currency, new CultureInfo(ExtensionMethods.CurrentCurrenyCulture), out iAmount);
                }

                if (Settings.Client != null && Settings.Client.ToLower() == "winchells" &&
                    Settings.MaxHandPayAuthRequired &&
                    txtBox != null &&
                    (iAmount > Settings.HandpayPayoutCustomer_Max))
                {
                    objAuthorize      = new CAuthorize("CashdeskOperator.Authorize.cs.MaxHandpay");
                    objAuthorize.User = Security.SecurityHelper.CurrentUser;
                    if (!Security.SecurityHelper.HasAccess("CashdeskOperator.Authorize.cs.MaxHandpay"))
                    {
                        objAuthorize.ShowDialog();
                        if (!objAuthorize.IsAuthorized)
                        {
                            return;
                        }
                    }
                    else
                    {
                        objAuthorize.IsAuthorized = true;
                    }
                }
                if (optHandpay.IsChecked == true)
                {
                    HP_Type = "AttendantPay Credit";
                    jpinfo.jackpotTypeId = 4;
                }
                else if (optJackpot.IsChecked == true)
                {
                    HP_Type = "AttendantPay Jackpot";
                    jpinfo.jackpotTypeId = 5;
                }
                else
                {
                    HP_Type = "AttendantPay Progressive";
                    jpinfo.jackpotTypeId = 6;
                }

                // Finding Denom for the machine-CR# 167677

                decimal DenomValue = 0;
                DataSet oDt        = handpay.createTickeException_HandpayCAGE(int.Parse((cmbBarPositions.SelectedItem as BarPositions).Bar_Pos_Name), iAmount, 0, HP_Type);
                List <DenomValueResult> lstDenom = handpay.GetDenomValue(oDt.Tables[0].Rows[0]["Asset"].ToString());
                foreach (var denom in lstDenom)
                {
                    DenomValue = denom.Denom;
                }
                jpinfo.Slot = (cmbBarPositions.SelectedItem as BarPositions).Bar_Pos_Name;
                jpinfo.assetConfigNumber = oDt.Tables[0].Rows[0]["Asset"].ToString();
                jpinfo.Denom             = DenomValue;
                jpinfo.hpjpAmount        = long.Parse(oDt.Tables[0].Rows[0]["TE_VALUE"].ToString());
                jpinfo.jackpotNetAmount  = long.Parse(oDt.Tables[0].Rows[0]["TE_VALUE"].ToString());
                jpinfo.sequenceNumber    = long.Parse(oDt.Tables[0].Rows[0]["TE_ID"].ToString());
                jpinfo.TransactionDate   = oDt.Tables[0].Rows[0]["TE_Date"].ToString();
                jpinfo.UserID            = Security.SecurityHelper.CurrentUser.SecurityUserID.ToString();
                jpinfo.siteNo            = Settings.SiteName;
                jpinfo.siteId            = Convert.ToInt32(Settings.SiteCode);
                txtBox.Text = this.DefaultAmount();
                handpay.PrintSlip(jpinfo);


                //send PT 10 from client

                Treasury treasury = new Treasury();
                treasury.ActualTreasuryDate = Convert.ToDateTime(jpinfo.TransactionDate);
                treasury.Asset              = Asset;
                treasury.Authorized_Date    = Convert.ToDateTime(jpinfo.TransactionDate);
                treasury.AuthorizedUser_No  = SecurityHelper.CurrentUser.User_No;
                treasury.CustomerID         = SecurityHelper.CurrentUser.User_No;
                treasury.InstallationNumber = InstallationNumber;
                treasury.TreasuryAmount     = iAmount;
                treasury.UserID             = SecurityHelper.CurrentUser.User_No;
                treasury.TreasuryType       = HP_Type;

                if (((bool)optJackpot.IsChecked) || ((bool)optProgressive.IsChecked)) //|| ((bool)optHandpay.IsChecked))
                {
                    PostHandpayEvent(treasury);
                }
            }
            catch (Exception Ex)
            {
                ExceptionManager.Publish(Ex);
            }
        }
        public void PrintSlip(jackpotProcessInfoDTO jackpot)
        {
            filename = "Print.txt";
            filepath = System.Windows.Forms.Application.StartupPath + "\\" + filename;
            if (File.Exists(filepath))
            {
                File.Delete(filepath);
            }
            outputfile = new FileStream(filepath, FileMode.OpenOrCreate, FileAccess.Write);
            writer     = new StreamWriter(outputfile);
            writer.BaseStream.Seek(0, SeekOrigin.End);

            string Type = string.Empty;

            switch (jackpot.jackpotTypeId)
            {
            case 1:
                Type = "AttendantPay Credit";
                break;

            case 2:
                Type = "AttendantPay Jackpot";
                break;

            case 3:
                Type = "Progressive";
                break;

            case 4:
                Type = "MANUAL CREDIT";
                break;

            case 5:
                Type = "MANUAL JACKPOT";
                break;

            case 6:
                Type = "MANUAL PROGRESSIVE";
                break;

            default:
                Type = "Handpay";
                break;
            }

            dynTableHeader = "";

            string sVersion = CommonDataAccess.GetVersion();

            DoWrite(" Site Name : " + jackpot.siteNo + "                            BMC Version : " + sVersion);

            //   DoWrite(dynTableHeader);
            DoWrite("<LN>");

            //DoWrite(" TYPE OF JACKPOT ");
            //   DoWrite(dynTableHeader);

            DoWrite("");

            DoWrite(" JP TYPE : " + Type);
            //   DoWrite(dynTableHeader);

            DoWrite(" SLOT :" + jackpot.Slot);
            //   DoWrite(dynTableHeader);

            DoWrite(" STAND : " + jackpot.assetConfigNumber);
            //   DoWrite(dynTableHeader);

            DoWrite(" TRANSACTION DATE : " + jackpot.TransactionDate);
            //   DoWrite(dynTableHeader);

            DoWrite(" EMPLOYEE ID : " + jackpot.UserID);
            //   DoWrite(dynTableHeader);

            DoWrite(" EMPLOYEE NAME : " + jackpot.UserName);
            //   DoWrite(dynTableHeader);


            DoWrite(" SITE ID : " + jackpot.siteId);
            //   DoWrite(dynTableHeader);


            DoWrite(" DENOM : " + jackpot.Denom);
            //   DoWrite(dynTableHeader);
            double JAmt = Double.Parse(jackpot.hpjpAmount.ToString()) / 100;

            DoWrite(" ORIGINAL AMT : " + CommonUtilities.GetCurrency(JAmt));
            //   DoWrite(dynTableHeader);

            DoWrite(" ACTUAL AMT : " + CommonUtilities.GetCurrency(JAmt));
            //   DoWrite(dynTableHeader);

            DoWrite(" HP JP AMT : " + CommonUtilities.GetCurrency(JAmt));
            //   DoWrite(dynTableHeader);

            DoWrite(" TOTAL TAX AMT : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" TOTAL JACKPOT AMT : " + CommonUtilities.GetCurrency(JAmt));
            //   DoWrite(dynTableHeader);

            DoWrite(" AMT IN WRITING : " +
                    objWords.ConvertValueToWords(JAmt, CommonDataAccess.GetSettingValue("Region") == "US" ? "en-US" :
                                                 CommonDataAccess.GetSettingValue("Region") == "UK" ? "en-GB" :
                                                 CommonDataAccess.GetSettingValue("Region") == "IT" ? "it-IT" : "en-US"));
            //   DoWrite(dynTableHeader);

            DoWrite(" SHIFT: DAY ");
            //   DoWrite(dynTableHeader);

            DoWrite(" PAYLINE : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" COINS PLAYED : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" WINNING COMBO : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" WINDOW : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" PLAYER CARD : 0000000000 ");
            //   DoWrite(dynTableHeader);

            DoWrite(" PLAYER NAME : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" TOP : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" MIDDLE : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" BOTTOM : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" IN-MTR : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" RESET : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" REEL SYMBOLS : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" KIOSK : " + Environment.MachineName);
            //   DoWrite(dynTableHeader);

            DoWrite(" GAMING DAY : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" AREA : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" SLOT ATTN ID : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" SLOT ATTN NAME : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" FIRST AUTH EMP ID : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" FIRST AUTH EMP NAME : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" SECOND AUTH EMP ID : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" SECOND AUTH EMP NAME : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" PRINTER : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" REGULATORY ID :  ------------------------- ");
            //   DoWrite(dynTableHeader);


            DoWrite(" JP DESCRIPTION : -------------------------");
            //   DoWrite(dynTableHeader);


            DoWrite(" FLOOR PERSON : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" CHANGE PERSON : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" PREPARER : -------------------------");
            //   DoWrite(dynTableHeader);

            DoWrite(" PRINTED DATE : " + DateTime.Now.GetUniversalDateTimeFormat());
            //   DoWrite(dynTableHeader);

            DoWrite(" SEQUENCE NO : " + jackpot.sequenceNumber.ToString());
            //  //   DoWrite(dynTableHeader);
            DoWrite("<LN>");

            writer.Close();
            PrintSlippage();
        }
        public void PrintSlip(jackpotProcessInfoDTO jackpot)
        {
            JackpotXml xml = null;

            try
            {
                filename = "Print.txt";
                filepath = System.Windows.Forms.Application.StartupPath + "\\" + filename;
                if (File.Exists(filepath))
                {
                    File.Delete(filepath);
                }
                outputfile = new FileStream(filepath, FileMode.OpenOrCreate, FileAccess.Write);
                writer     = new StreamWriter(outputfile);
                writer.BaseStream.Seek(0, SeekOrigin.End);

                xml = new JackpotXml(writer);
                xml.ParseXmlFile();

                ModuleName module     = ModuleName.AttendantPay;
                string     Type       = string.Empty;
                string     screenName = Settings.CAGE_ENABLED ? "PrintCageSlip|" : "";
                switch (jackpot.jackpotTypeId)
                {
                case 1:
                    Type        = "AttendantPay Credit";
                    screenName += "AttendantPay Credit";
                    break;

                case 2:
                    Type        = "AttendantPay Jackpot";
                    screenName += "AttendantPay Jackpot";
                    break;

                case 3:
                    Type        = "Progressive";
                    screenName += "Progressive";
                    break;

                case 4:
                    Type        = "MANUAL CREDIT";
                    module      = ModuleName.ManualAttendantPay;
                    screenName += "MANUAL CREDIT";
                    break;

                case 5:
                    Type        = "MANUAL JACKPOT";
                    module      = ModuleName.ManualAttendantPay;
                    screenName += "MANUAL JACKPOT";
                    break;

                case 6:
                    Type        = "MANUAL PROGRESSIVE";
                    module      = ModuleName.ManualAttendantPay;
                    screenName += "MANUAL PROGRESSIVE";
                    break;

                default:
                    Type        = "Handpay";
                    screenName += "Handpay";
                    break;
                }

                // Modified by A.Vinod Kumar at 3:40 PM 17/01/12
                // required values for xml
                string sVersion   = CommonDataAccess.GetVersion();
                double JAmt       = Double.Parse(jackpot.hpjpAmount.ToString()) / 100;
                double jActualAmt = JAmt;
                if (JAmt < 0)
                {
                    jActualAmt = (-1 * JAmt);
                }
                string JAmtInWords = objWords.ConvertValueToWords(jActualAmt,
                                                                  CommonDataAccess.GetSettingValue("Region") == "US" ? "en-US" :
                                                                  CommonDataAccess.GetSettingValue("Region") == "UK" ? "en-GB" :
                                                                  CommonDataAccess.GetSettingValue("Region") == "IT" ? "it-IT" : "en-US");

                // fill the values
                xml[JackpotXmlFields.SiteName].Value            = jackpot.siteNo;                                 // Site Name
                xml[JackpotXmlFields.BMCVersion].Value          = sVersion;                                       // BMC Version
                xml[JackpotXmlFields.Type].Value                = Type;                                           // Type
                xml[JackpotXmlFields.Amount].Value              = CommonUtilities.GetCurrency(JAmt);              // Amount
                xml[JackpotXmlFields.AmountInWords].Value       = JAmtInWords;                                    // Amount in Words
                xml[JackpotXmlFields.TransactionDateTime].Value = jackpot.TransactionDate;                        // Transaction Date/Time
                xml[JackpotXmlFields.BarPosition].Value         = jackpot.assetConfigNumber + "/" + jackpot.Slot; // Bar Position
                xml[JackpotXmlFields.SlotDenom].Value           = jackpot.Denom.ToString();                       // Slot Denomination
                xml[JackpotXmlFields.SiteID].Value              = jackpot.siteId.ToString();                      // Site Id
                xml[JackpotXmlFields.PrintedDate].Value         = DateTime.Now.GetUniversalDateTimeFormat();      // Printed Date/Time
                xml[JackpotXmlFields.SequenceNo].Value          = jackpot.sequenceNumber.ToString();              // Sequence No

                xml.Write();
                writer.Close();
                _textSettings = xml.TextSettings;
                PrintSlippage(xml.TextSettings);

                AuditViewerBusiness.InsertAuditData(new Audit.Transport.Audit_History
                {
                    AuditModuleName    = module,
                    Audit_Screen_Name  = screenName,
                    Audit_Desc         = Type,
                    AuditOperationType = OperationType.ADD,
                    Audit_Field        = "Amount",
                    Audit_New_Vl       = xml[JackpotXmlFields.Amount].Value.ToString(),
                    Audit_Slot         = xml[JackpotXmlFields.BarPosition].Value
                });
            }
            catch (Exception ex)
            {
                ExceptionManager.Publish(ex);
            }
            finally
            {
                if (xml != null)
                {
                    xml.Dispose();
                    xml = null;
                }
            }
        }