private string getIPOInformation(string Cust_Code) { string cnn = SMS_Constant.CallCenter_ConnectionString; string[] ParendChild = null; string CustCode = string.Empty; string ShortCode = string.Empty; string TradeAccountBalance = string.Empty; string IPOAccountBalance = string.Empty; string IPOBalance = string.Empty; DataSqlQuery dataQuery = new DataSqlQuery(); SqlConnection conn = new SqlConnection(cnn); DataSet oDataSet = new DataSet(); SqlDataAdapter SQLDbAdapter = new SqlDataAdapter(); string query = "Select Sess.Company_Short_Code as Short_Code,Convert(decimal(28,0),ROUND((Sess.TotalAmount),2)) as TotalAmount,'" + Cust_Code + "' as Cust_Code,Convert(decimal(28,2),ROUND((Select t.Balance from tbl_Customer_Account as t where t.Cust_Code='" + Cust_Code + "'),2)) AS TradeAcc_Balance,Convert(decimal(28,2),ROUND(ISNULL((Select t.Balance from tbl_Customer_IPO_Account as t where t.Cust_Code='" + Cust_Code + "'),0),2)) AS IPOAcc_Balance from [dbksclCallCenter].[dbo].[tbl_IPO_SessionforCompanyInfo] as Sess"; SQLDbAdapter.SelectCommand = new SqlCommand(query, conn); SQLDbAdapter.Fill(oDataSet); DataTable dt = new DataTable(); dt = oDataSet.Tables[0]; var PRegcode = (dataQuery.GetParentChildCheckFormCustCode(Cust_Code)); if (PRegcode.Count != 0) { ParendChild = PRegcode.ToArray(); CustCode = ParendChild[0] + "," + ParendChild[1] + "," + ParendChild[2].ToString(); } else { CustCode = Cust_Code; } string shareSummery = "ID :" + Cust_Code + "," + "Current IPO :"; foreach (DataRow dr in dt.Rows) { ShortCode = dr["Short_Code"].ToString(); IPOBalance = dr["TotalAmount"].ToString(); TradeAccountBalance = dr["TradeAcc_Balance"].ToString(); IPOAccountBalance = dr["IPOAcc_Balance"].ToString(); if (ShortCode != "") { //MessageGenerate dd = new MessageGenerate(); //MessageGenerate.messageStroe(Cust_Code, ShortCode, IPOBalance, TradeAccountBalance, IPOAccountBalance, CustCode); shareSummery = shareSummery + " " + dr["Short_Code"].ToString() + " " + "&" + " " + "Amount:" + dr["TotalAmount"].ToString() + "," + "IPO parent Acc. Balance:" + dr["IPOAcc_Balance"].ToString() + "," + "Trade Acc. Balance:" + dr["TradeAcc_Balance"].ToString() + "," + "SMS Format:" + dr["Short_Code"].ToString() + " " + CustCode + " " + "pmipo rmipo"; } else { DataSqlQuery objdataSqlQuery = new DataSqlQuery(); string SMSCode = "SMS09"; string sMessage = objdataSqlQuery.GetNotRegisterMessage(SMSCode); shareSummery = sMessage; } } return(shareSummery); }
public List <object> IPORequest(SmsPdu pdu) { List <object> resultList = new List <object>(); //=================================================== try { if (pdu is SmsDeliverPdu) { SmsDeliverPdu dpdu = (SmsDeliverPdu)pdu; String Text = dpdu.UserDataText.ToLower(); string SMSCode = string.Empty; string output_PaymentType = string.Empty; string output_RefundType = string.Empty; string output_CompanyCode = string.Empty; string ErrorMsg = string.Empty; string[] output_CustCode = null; string output_Message = dpdu.UserDataText; string output_PnoneNumber = dpdu.OriginatingAddress; if (dpdu.OriginatingAddress.Length > 11 || dpdu.OriginatingAddress.Length == 11) { dpdu.OriginatingAddress = dpdu.OriginatingAddress.Replace("+880", "0"); } var RegCode = (objData.GetCustCodeMultipleFromPhoneNo(dpdu.OriginatingAddress)); string Output_RegCustCode = string.Join(",", RegCode.ToArray()); if (Output_RegCustCode != "") { SMSCode = SMSCode + SMSCommadCode.IPORegCust_Code + "-"; } else { SMSCode = SMSCode + SMSCommadCode.IPODefault_Code + "-"; } char[] delimiterChars = { ' ', ',', '.', ':', '\t', '/', '_', ';', '.', }; string[] Word = Text.Split(delimiterChars); List <string> listCustCodeforMessage = new List <string>(); string[] Input_CustCode = null; var listtmp = new List <string>(Regex.Split(Text, @"\D+")); Input_CustCode = listtmp.Where(t => !string.IsNullOrEmpty(Convert.ToString(t))).ToArray(); string[] RegCodeforarray = Output_RegCustCode.Split(','); #region NewWork var listRegCustCode = string.Join(",", RegCodeforarray); var listMessageplaceCustCode = string.Join(",", Input_CustCode); if (listRegCustCode.Contains(listMessageplaceCustCode)) { output_CustCode = Input_CustCode; SMSCode = SMSCode + SMSCommadCode.IPOCustomerFound + "-"; } else if (listRegCustCode.Length == listMessageplaceCustCode.Length) { List <string> ValidationRegCode = new List <string>(); foreach (string value in Input_CustCode) { if (!RegCodeforarray.Contains(value)) { ValidationRegCode.Add((value).ToString()); } } if (ValidationRegCode.Count == 0) { output_CustCode = Input_CustCode; SMSCode = SMSCode + SMSCommadCode.IPOCustomerFound + "-"; } } else { string[] RegCodeforParentAndChildCode = null; //---------- Parent Child ------------------------ List <KeyValuePair <string, string[]> > objectsGot = new List <KeyValuePair <string, string[]> >(); foreach (string Rreg in RegCodeforarray) { var PRegcode = (objData.GetParentChildCheckFormCustCode(Rreg.ToString())); RegCodeforParentAndChildCode = PRegcode.ToArray(); objectsGot.Add(new KeyValuePair <string, string[]>(Rreg.ToString(), (string[])RegCodeforParentAndChildCode)); } string Code = string.Empty; if (RegCodeforParentAndChildCode.Length != 0) { foreach (var tmp in objectsGot) { DataSqlQuery objdataSqlQuery = new DataSqlQuery(); string ErrorMsg_Tmp = MessageGenerate.IPORegErrorMessage(tmp.Key); int l = 1; int invalidFound = 0; foreach (string value in Input_CustCode) { if (!tmp.Value.Contains(value) && l < Input_CustCode.Length) { ErrorMsg_Tmp = ErrorMsg_Tmp + value + ","; invalidFound++; } else if (!tmp.Value.Contains(value)) { ErrorMsg_Tmp = ErrorMsg_Tmp + value; invalidFound++; } l++; } if (invalidFound == 0) { output_CustCode = Input_CustCode; SMSCode = SMSCode + SMSCommadCode.IPOCustomerFound + "-"; Output_RegCustCode = tmp.Key; break; } else { string SMSCodelastPart = "SMS07"; string sMessage = objdataSqlQuery.GetNotRegisterMessage(SMSCodelastPart); ErrorMsg = ErrorMsg_Tmp + sMessage; } } } else { output_CustCode = Input_CustCode; SMSCode = SMSCode + SMSCommadCode.DefaultCode + "-"; } } resultList.Add(Output_RegCustCode); if (ErrorMsg != "") { output_CustCode = Input_CustCode; SMSCode = SMSCode + SMSCommadCode.DefaultCode + "-"; } //---------- End Parent Child ------------------- #endregion //- ---------- IPO Company Select ------------------ string Comapnt_ShortCode = ""; string IpoCompanyShortCode = string.Empty; Comapnt_ShortCode = Word[0].ToLower(); if (Comapnt_ShortCode != "") { IpoCompanyShortCode = GetCompany_Short_Code_FromReg(Comapnt_ShortCode); } if (IpoCompanyShortCode != "") { output_CompanyCode = Comapnt_ShortCode; resultList.Add(output_CompanyCode); SMSCode = SMSCode + SMSCommadCode.IPOCompanyFound + "-"; } else if (IpoCompanyShortCode == "") { SMSCode = SMSCode + SMSCommadCode.IPODefault_Code + "-"; } //-------------------- End Company Select ----------------- if (ErrorMsg == "") { resultList.Add(Input_CustCode); } else { resultList.Add(Input_CustCode); } string IPO_PaymentType = "pIPO,ptrade,pmIPO,PmTrade"; string[] IPO_paymenttype = IPO_PaymentType.Split(','); foreach (string PType in IPO_paymenttype) { if (Word.Contains(PType.ToLower())) { output_PaymentType = PType.ToLower(); } } resultList.Add(output_PaymentType); if (output_PaymentType != "") { SMSCode = SMSCode + SMSCommadCode.IPOPaymentType + "-"; } else if (output_PaymentType == "") { SMSCode = SMSCode + SMSCommadCode.IPODefault_Code + "-"; } string IPO_RefundType = "rIPO,rtrade,rEFT,rmIPO,rmTrade"; string[] IPO_refundtype = IPO_RefundType.Split(','); foreach (string RType in IPO_refundtype) { if (Word.Contains(RType.ToLower())) { output_RefundType = RType.ToLower(); } } resultList.Add(output_RefundType); if (output_RefundType != "") { SMSCode = SMSCode + SMSCommadCode.IPORefundType; } else if (output_RefundType == "") { SMSCode = SMSCode + SMSCommadCode.IPODefault_Code; } string ReceiveID = objData.ReceiveID(); resultList.Add(output_Message); resultList.Add(output_PnoneNumber); resultList.Add(ReceiveID); resultList.Add(ErrorMsg); resultList.Add(SMSCode); } } catch (Exception ex) { throw new Exception(ex.Message); } //======================== return(resultList); }