public static IEnumerable <sms.smsTransC> GetMonthSMSTransaction(int yr, int month) { if (yr == 0 | month == 0) { return(null); } if (DATA_SMS_TRANSACTION == null) { DATA_SMS_TRANSACTION = new SortedList <int, SortedList <int, List <smsTransC> > >(); } if (DATA_SMS_TRANSACTION.Keys.IndexOf(yr) == -1) { DATA_SMS_TRANSACTION.Add(yr, new SortedList <int, List <smsTransC> >()); DATA_SMS_TRANSACTION[yr].Add(month, new List <smsTransC>()); } if (DATA_SMS_TRANSACTION[yr][month].Count > 0) { return(DATA_SMS_TRANSACTION[yr][month]); } var _month_fs = fn.GetFsIDMonth(month, yr); string _str = string.Format("select * from sms_trans_tb where partition_id between {0} and {1}", _month_fs[0], _month_fs[1]); sms.smsTransC _obj = null; using (var _dr = dbm.SelectCommand(_str)) { if (_dr == null) { return(null); } while (_dr.Read()) { try { _obj = new smsTransC(); _obj.trans_fs_id = _dr["trans_fs_id"].ToInt32(); _obj.fs_obj = datam.DATA_FS[yr][_obj.trans_fs_id]; _obj.trans_id = _dr["trans_id"].ToInt32(); _obj.trans_time = _dr["trans_time"].ToStringNullable(); _obj.heading = _dr["heading"].ToStringNullable(); _obj.max_char_per_msg = _dr["max_char_per_msg"].ToInt32(); _obj.message_string = _dr["message"].ToStringNullable(); _obj.message_count = _dr["message_count"].ToInt32(); _obj.no_of_characters = _dr["no_of_characters"].ToInt32(); _obj.pc_us_id = _dr["pc_us_id"].ToInt32(); _obj.phone_count = _dr["phone_count"].ToInt32(); _obj.phone_string = _dr["phone_string"].ToStringNullable(); _obj.client_name = _dr["client_name"].ToStringNullable(); _obj.client_id = _dr["client_id"].ToInt32(); _obj.client_sms_cp = _dr["client_sms_cp"].ToFloat(); _obj.admin_sms_cp = _dr["admin_sms_cp"].ToFloat(); _obj.sms_type = (em.sms_type)_dr["sms_type"].ToByte(); _obj.trans_date = _dr["trans_date"] == null ? null : _dr.GetDateTime("trans_date").ToString(new CultureInfo("en-US")); _obj.WasScheduled = _dr["sms_type"].ToByte() == 0 ? false : true; if (LAST_SMS_TRANS_ID < _obj.trans_id) { LAST_SMS_TRANS_ID = _obj.trans_id; } DATA_SMS_TRANSACTION[yr][month].Add(_obj); _obj = null; } catch (Exception ex) { return(null); } } return(DATA_SMS_TRANSACTION[yr][month]); } }
private void InsertRecordIntoDB() { #region Insert Into The Database sms.smsTransC _trans = new smsTransC(); _trans.fs_obj = datam.CURR_FS; _trans.heading = m_HEADER; _trans.max_char_per_msg = SMS_MAX; _trans.message_count = m_msg_count; _trans.message_string = m_MESSAGE; _trans.no_of_characters = _trans.message_string.Length; _trans.pc_us_id = datam.PC_US_ID; _trans.phone_count = m_phone_count; _trans.phone_string = m_PhoneString; _trans.sms_type = em.sms_type.company; _trans.trans_date = datam.CURR_DATE.ToShortDateString(); _trans.trans_fs_id = datam.CURR_FS.fs_id; _trans.client_sms_cp = m_client.client_sms_cp; _trans.trans_time = datam.CURR_DATE.ToShortTimeString(); _trans.client_name = m_client.client_name; _trans.client_id = m_client.client_id; //_trans.admin_account_id = -1964; _trans.account_id = -1964; string[] _cols = new string[] { "trans_year", "trans_date", "trans_time", "trans_fs_id", "account_id", "client_name", "client_id", "heading", "message", "max_char_per_msg", "message_count", "no_of_characters", "phone_string", "phone_count", "admin_sms_cp", "account_sms_cp", "client_sms_cp", "sms_type", "partition_id", "admin_account_id", "account_type_id", "comp_cat_id", "user_type_id", "pc_us_id" }; var _row = new object[] { datam.CURR_DATE.Year, datam.CURR_DATE.Date, _trans.trans_time, _trans.trans_fs_id, _trans.account_id, _trans.client_name, _trans.client_id, _trans.heading, _trans.message_string, _trans.max_char_per_msg, _trans.message_count, _trans.no_of_characters, null, _trans.phone_count, _trans.admin_sms_cp, _trans.account_sms_cp, _trans.client_sms_cp, _trans.sms_type.ToByte(), _trans.trans_fs_id, //partition_id _trans.admin_account_id, 12, //account_type_id 13, //comp_cat_id, 0, //user type _id datam.PC_US_ID }; using (var xd = new xing()) { _trans.trans_id = xd.SingleInsertCommandInt("sms_trans_tb", _cols, _row); xd.InsertUpdateDelete(string.Format("update sms_count_tb set s_count=(s_count+{0})", m_phone_count)); xd.CommitTransaction(); } datam.DATA_SMS_TRANSACTION[datam.CURR_DATE.Year][datam.CURR_DATE.Month].Add(_trans); datam.LAST_SMS_TRANS_ID = _trans.trans_id; (this.Owner.Owner as sms.SmsManager).NewTransaction(_trans); _trans = null; #endregion }