)>}]
شركة التطبيقات المتكاملة لتصميم وبرمجة البرمجيات الخاصة ش.ش.و.
Integrated Applications Programming Company
Home » Code Library » Report (Ia.Ftn.Cl.Models.Ui)

Public general use code classes and xml files that we've compiled and used over the years:

Report support class for Fixed Telecommunications Network (FTN) ui model.

    1: using System;
    2: using System.Collections.Generic;
    3: using System.Data;
    4: using System.Linq;
    5: using System.Text;
    6: using System.Text.RegularExpressions;
    7:  
    8: namespace Ia.Ftn.Cl.Models.Ui
    9: {
   10:     ////////////////////////////////////////////////////////////////////////////
   11:  
   12:     /// <summary publish="true">
   13:     /// Report support class for Fixed Telecommunications Network (FTN) ui model.
   14:     /// </summary>
   15:     /// 
   16:     /// <remarks> 
   17:     /// Copyright © 2006-2017 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
   18:     /// </remarks> 
   19:     public class Report
   20:     {
   21:         ////////////////////////////////////////////////////////////////////////////
   22:  
   23:         /// <summary>
   24:         ///
   25:         /// </summary>
   26:         public Report() { }
   27:  
   28:         ////////////////////////////////////////////////////////////////////////////
   29:  
   30:         /// <summary>
   31:         ///
   32:         /// </summary>
   33:         public static List<Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest> ReportWithReportOpenStatusByUserIdListAndFrameworkIdList(List<string> userIdList, List<string> frameworkIdList)
   34:         {
   35:             var list = Ia.Ftn.Cl.Models.Data.Report.ReportWithReportOpenStatusByUserIdListAndFrameworkIdList(userIdList, frameworkIdList);
   36:  
   37:             list = (from rasr in list
   38:                     orderby (rasr.Access != null ? rasr.Access.AreaId : 0), (rasr.Access != null ? rasr.Access.Block : string.Empty), (rasr.Access != null ? rasr.Access.Street : string.Empty), (rasr.Access != null ? rasr.Access.PremisesOld : string.Empty) ascending
   39:                     select rasr).ToList();
   40:  
   41:             return list;
   42:         }
   43:  
   44:         ////////////////////////////////////////////////////////////////////////////
   45:  
   46:         /// <summary>
   47:         ///
   48:         /// </summary>
   49:         public static List<Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest> ReportWithReportOpenStatusByUserIdListAndFrameworkIdList(List<string> userIdList, string frameworkId)
   50:         {
   51:             List<string> frameworkIdList;
   52:  
   53:             if (string.IsNullOrEmpty(frameworkId)) frameworkIdList = new List<string> { };
   54:             else frameworkIdList = new List<string> { frameworkId };
   55:  
   56:             var list = ReportWithReportOpenStatusByUserIdListAndFrameworkIdList(userIdList, frameworkIdList);
   57:  
   58:             return list;
   59:         }
   60:  
   61:         ////////////////////////////////////////////////////////////////////////////
   62:         ////////////////////////////////////////////////////////////////////////////
   63:  
   64:         /// <summary>
   65:         ///
   66:         /// </summary>
   67:         public static DataTable ToSimpleTextDataTable(List<string> userIdList, string siteId, List<int> actionCheckBoxSelectedItemValueList)
   68:         {
   69:             // below:
   70:             DataRow dr;
   71:             DataTable dt;
   72:             List<Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest> reportAccessServiceRequestList;
   73:  
   74:             dt = new DataTable("");
   75:             dt.Columns.Add("Service");
   76:             dt.Columns.Add("Action");
   77:             dt.Columns.Add("Access/ONT Name");
   78:             dt.Columns.Add("Address");
   79:             dt.Columns.Add("Detail");
   80:             dt.Columns.Add("Note");
   81:             dt.Columns.Add("Contact");
   82:  
   83:             reportAccessServiceRequestList = Ia.Ftn.Cl.Models.Ui.Report.ReportWithReportOpenStatusByUserIdListAndFrameworkIdList(userIdList, siteId);
   84:  
   85:             reportAccessServiceRequestList = (from l in reportAccessServiceRequestList
   86:                                               where actionCheckBoxSelectedItemValueList.Contains(l.Report.LastReportHistory.Action)
   87:                                               select l).ToList();
   88:  
   89:             foreach (Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest reportAccessServiceRequest in reportAccessServiceRequestList)
   90:             {
   91:                 dr = dt.NewRow();
   92:  
   93:                 dr["Service"] = Ia.Ftn.Cl.Models.Business.Service.ServiceName(reportAccessServiceRequest.Report.Service, reportAccessServiceRequest.Report.ServiceType);
   94:                 dr["Action"] = (reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Ftn.Cl.Models.Data.Report.ActionDictionary[reportAccessServiceRequest.Report.LastReportHistory.Action].ToString() : string.Empty;
   95:                 dr["Access/ONT Name"] = ((reportAccessServiceRequest.Access != null) ? reportAccessServiceRequest.Access.Name : string.Empty);
   96:                 dr["Address"] = ((reportAccessServiceRequest.Access != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Access.Address) : string.Empty);
   97:                 dr["Detail"] = (reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.LastReportHistory.Detail) : string.Empty;
   98:                 dr["Note"] = (reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.LastReportHistory.Note) : string.Empty;
   99:                 dr["Contact"] = Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.Contact);
  100:  
  101:                 dt.Rows.Add(dr);
  102:             }
  103:  
  104:             return dt;
  105:         }
  106:  
  107:         ////////////////////////////////////////////////////////////////////////////
  108:         ////////////////////////////////////////////////////////////////////////////
  109:  
  110:         /// <summary>
  111:         ///
  112:         /// </summary>
  113:         public static string ToSimpleTextString(List<string> userIdList, string siteId, List<int> actionCheckBoxSelectedItemValueList)
  114:         {
  115:             string s;
  116:             StringBuilder sb;
  117:             List<Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest> reportAccessServiceRequestList;
  118:  
  119:             s = string.Empty;
  120:             sb = new StringBuilder();
  121:  
  122:             reportAccessServiceRequestList = Ia.Ftn.Cl.Models.Ui.Report.ReportWithReportOpenStatusByUserIdListAndFrameworkIdList(userIdList, siteId);
  123:  
  124:             reportAccessServiceRequestList = (from l in reportAccessServiceRequestList
  125:                                               where actionCheckBoxSelectedItemValueList.Contains(l.Report.LastReportHistory.Action)
  126:                                               select l).ToList();
  127:  
  128:             foreach (Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest reportAccessServiceRequest in reportAccessServiceRequestList)
  129:             {
  130:                 sb.AppendLine("Service: " + Ia.Ftn.Cl.Models.Business.Service.ServiceName(reportAccessServiceRequest.Report.Service, reportAccessServiceRequest.Report.ServiceType).Trim());
  131:                 sb.AppendLine("Action: " + ((reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Ftn.Cl.Models.Data.Report.ActionDictionary[reportAccessServiceRequest.Report.LastReportHistory.Action].ToString() : string.Empty).Trim());
  132:                 sb.AppendLine("Access: " + ((reportAccessServiceRequest.Access != null) ? reportAccessServiceRequest.Access.Name : string.Empty).Trim());
  133:                 sb.AppendLine("Address: " + ((reportAccessServiceRequest.Access != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Access.Address) : string.Empty).Trim());
  134:                 sb.AppendLine("Detail: " + ((reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.LastReportHistory.Detail) : string.Empty).Trim());
  135:                 sb.AppendLine("Note: " + ((reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.LastReportHistory.Note) : string.Empty).Trim());
  136:                 sb.AppendLine("Contact: " + Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.Contact).Trim());
  137:                 sb.AppendLine(" ");
  138:  
  139:                 s = Regex.Replace(sb.ToString(), @"[\r\n]{2,}", "\r\n");
  140:             }
  141:  
  142:             return s;
  143:         }
  144:  
  145:         ////////////////////////////////////////////////////////////////////////////
  146:  
  147:         /// <summary>
  148:         ///
  149:         /// </summary>
  150:         public static string ToSimpleQrCodeTextString(List<string> userIdList, string siteId)
  151:         {
  152:             string s;
  153:             StringBuilder sb;
  154:             List<Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest> reportAccessServiceRequestList;
  155:  
  156:             s = string.Empty;
  157:             sb = new StringBuilder();
  158:  
  159:             reportAccessServiceRequestList = Ia.Ftn.Cl.Models.Ui.Report.ReportWithReportOpenStatusByUserIdListAndFrameworkIdList(userIdList, siteId);
  160:  
  161:             foreach (Ia.Ftn.Cl.Models.Ui.ReportAccessServiceRequest reportAccessServiceRequest in reportAccessServiceRequestList)
  162:             {
  163:                 sb.AppendLine(Ia.Ftn.Cl.Models.Business.Service.ServiceName(reportAccessServiceRequest.Report.Service, reportAccessServiceRequest.Report.ServiceType).Trim());
  164:                 //sb.AppendLine(reportAccessServiceRequest.Port.ToString().Trim());
  165:                 sb.AppendLine(((reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Ftn.Cl.Models.Data.Report.ActionDictionary[reportAccessServiceRequest.Report.LastReportHistory.Action].ToString() : string.Empty).Trim());
  166:                 sb.AppendLine(((reportAccessServiceRequest.Access != null) ? reportAccessServiceRequest.Access.Name : string.Empty).Trim());
  167:                 sb.AppendLine(((reportAccessServiceRequest.Access != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Access.Address) : string.Empty).Trim());
  168:                 sb.AppendLine(((reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.LastReportHistory.Detail) : string.Empty).Trim());
  169:                 sb.AppendLine(((reportAccessServiceRequest.Report.LastReportHistory != null) ? Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.LastReportHistory.Note) : string.Empty).Trim());
  170:                 sb.AppendLine(Ia.Cl.Models.Html.Decode(reportAccessServiceRequest.Report.Contact).Trim());
  171:                 sb.AppendLine(" ");
  172:  
  173:                 s = Regex.Replace(sb.ToString(), @"[\r\n]{2,}", "\r\n");
  174:             }
  175:  
  176:             return s;
  177:         }
  178:  
  179:         ////////////////////////////////////////////////////////////////////////////
  180:         ////////////////////////////////////////////////////////////////////////////   
  181:  
  182:     }
  183:  
  184:     ////////////////////////////////////////////////////////////////////////////
  185:     ////////////////////////////////////////////////////////////////////////////   
  186: }