/// <summary> /// ������ϸ��Ϣ�� /// </summary> /// <param name="bill"></param> /// <param name="g"></param> /// <param name="x"></param> /// <param name="y"></param> private void DrawBill(LdtBillInfo bill,Graphics g, int x,int y) { g.DrawString(bill.CalledPhoneNo, ftBill, sb, x, y); g.DrawString(bill.CallStartTimePrintString, ftBill, sb, x + 20, y); g.DrawString(bill.TalkSecond.ToString(), ftBill, sb, x + 44, y); g.DrawString(bill.Fee.ToString("F2"), ftBill, sb, x + 54, y); }
/// <summary> /// ��ȡ����ͨ���嵥�� /// </summary> /// <param name="talkTimeFrom"></param> /// <param name="talkTimeTo"></param> /// <returns>ͨ���嵥��</returns> public void LoadLdtBillCache(DateTime? talkTimeFrom,DateTime? talkTimeTo) { string sql = "select A_NBR,[DATETIME], FEE, TALK_MIN, B_NBR, B_AREA FROM MAILDDBILL_LONGDIST_LIST where 1=1 "; if (talkTimeFrom != null) sql += string.Format("and [DATETIME]>=#{0}# ", talkTimeFrom); if(talkTimeTo != null) sql += string.Format("and [DATETIME]<=#{0}# ", talkTimeTo); dicBillCache = new Dictionary<string, IList<LdtBillInfo>>(); DataTable table = Select(sql); foreach (DataRow row in table.Rows) { string id = row["A_NBR"].ToString().Trim(); LdtBillInfo bill = new LdtBillInfo(); bill.CallerPhoneNo = id; bill.CalledAreaNo = row["B_AREA"].ToString().Trim(); bill.CalledPhoneNo = row["B_NBR"].ToString().Trim(); bill.CallStartTime = ConvertUtil.ToDateTime(row["DATETIME"]); bill.TalkSecond = ConvertUtil.ToInt32(row["TALK_MIN"]); bill.Fee = ConvertUtil.ToDecimal(row["FEE"]); if (!dicBillCache.ContainsKey(id)) dicBillCache[id] = new List<LdtBillInfo>(); dicBillCache[id].Add(bill); } }