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

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

    1: using System.Text;
    2:  
    3: namespace Ia.Ftn.Wa.Models.Maintenance
    4: {
    5:     ////////////////////////////////////////////////////////////////////////////
    6:  
    7:     /// <summary publish="true">
    8:     ///
    9:     /// </summary>
   10:     /// 
   11:     /// <remarks> 
   12:     /// Copyright © 2006-2025 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
   13:     /// </remarks> 
   14:     public static class Integrity
   15:     {
   16:         ////////////////////////////////////////////////////////////////////////////
   17:  
   18:         /// <summary>
   19:         ///
   20:         /// </summary>
   21:         public static void ViewModel(ref Ia.Ftn.Wa.Models.Maintenance.IntegrityViewModel integrityViewModel)
   22:         {
   23:             Dictionary<string, string> sNoProvisionedSrsDictionary, sNoNddOntDictionary, provisionedSrsNoSDictionary, srsNoNddOntDictionary, sWithNddOntNoEqualToSrsNddOntDictionary, srsWithNddOntNoEqualToSNddOntDictionary;
   24:             Dictionary<string, string> serviceToUpdateServiceServiceIdAccessIdDictionary, serviceToCreateServiceIdAccessIdDictionary, serviceToDeleteServiceIdAccessIdDictionary;
   25:             Dictionary<string, string> imsSWithSiteNoProvisionedSrsDictionary, pstnSWithSiteNoProvisionedSrsDictionary, pstnSWithSiteMismatchedWithSrsDictionary, provisionedSrsWithSiteNoSDictionary;
   26:  
   27:             // Add: Ia.Ftn.Cl.Models.Data.Service.ServiceThatDoNotExistInServiceRequestServiceServiceIdList();
   28:  
   29:             var stringBuilder = new StringBuilder();
   30:  
   31:             Ia.Ftn.Cl.Models.Data.Provision.ServiceToUpdateServiceIdAccessIdDictionary_ServiceToCreateServiceIdAccessIdDictionary_ServiceToDeleteServiceIdAccessIdDictionary(out serviceToUpdateServiceServiceIdAccessIdDictionary, out serviceToCreateServiceIdAccessIdDictionary, out serviceToDeleteServiceIdAccessIdDictionary);
   32:  
   33:             Ia.Ftn.Cl.Models.Data.Provision.ServiceToCreateServiceIdDictionary_ServiceToDeleteServiceIdDictionary(out Dictionary<string, string> serviceToCreateServiceIdDictionary, out Dictionary<string, string> serviceToDeleteServiceIdDictionary);
   34:  
   35:             ////////////////////////////////////////////////////////////////////////////
   36:  
   37:             var count = 0;
   38:             stringBuilder.Clear();
   39:             foreach (string serviceId in serviceToCreateServiceIdAccessIdDictionary.Keys) HttpLinkFormat(serviceId, ref stringBuilder, ref count);
   40:             foreach (string serviceId in serviceToCreateServiceIdDictionary.Keys) HttpLinkFormat(serviceId, ref stringBuilder, ref count);
   41:  
   42:             integrityViewModel.ServiceToCreateListLabel = count.ToString();
   43:             integrityViewModel.ServiceToCreateListLiteral = stringBuilder.ToString();
   44:  
   45:             ////////////////////////////////////////////////////////////////////////////
   46:  
   47:             count = 0;
   48:             stringBuilder.Clear();
   49:             foreach (string serviceId in serviceToUpdateServiceServiceIdAccessIdDictionary.Keys) HttpLinkFormat(serviceId, ref stringBuilder, ref count);
   50:  
   51:             integrityViewModel.ServiceToUpdateListLabel = count.ToString();
   52:             integrityViewModel.ServiceToUpdateListLiteral = stringBuilder.ToString();
   53:  
   54:             ////////////////////////////////////////////////////////////////////////////
   55:  
   56:             count = 0;
   57:             stringBuilder.Clear();
   58:             foreach (string serviceId in serviceToDeleteServiceIdAccessIdDictionary.Keys) HttpLinkFormat(serviceId, ref stringBuilder, ref count);
   59:             foreach (string serviceId in serviceToDeleteServiceIdDictionary.Keys) HttpLinkFormat(serviceId, ref stringBuilder, ref count);
   60:  
   61:             integrityViewModel.ServiceToDeleteListLabel = count.ToString();
   62:             integrityViewModel.ServiceToDeleteListLiteral = stringBuilder.ToString();
   63:  
   64:             /*
   65:             ////////////////////////////////////////////////////////////////////////////
   66: 
   67:             c = 0;
   68:             sb.Clear();
   69:             foreach (string s in Ia.Ftn.Cl.Models.Data.ServiceRequestService.ServiceRequestServiceServiceIdWhereProvisionedIsTrueAndAccessIsNullList()) HttpLinkFormat(s, ref sb, ref c);
   70: 
   71:             provisionedServiceRequestServiceWithNullAccessListLabel = c.ToString();
   72:             provisionedServiceRequestServiceWithNullAccessListLiteral = sb.ToString();
   73: 
   74:             ////////////////////////////////////////////////////////////////////////////
   75: 
   76:             c = 0;
   77:             sb.Clear();
   78:             foreach (string s in Ia.Ftn.Cl.Models.Data.Service2.ServiceServiceIdWithNullAccessList()) HttpLinkFormat(s, ref sb, ref c);
   79: 
   80:             serviceWithNullAccessListLabel = c.ToString();
   81:             serviceWithNullAccessListLiteral = sb.ToString();
   82:             */
   83:  
   84:             ////////////////////////////////////////////////////////////////////////////
   85:  
   86:             count = 0;
   87:             stringBuilder.Clear();
   88:             var provisionedServiceRequestServiceAndServiceMismatchAccessServiceIdList = Ia.Ftn.Cl.Models.Data.Provision.ProvisionedServiceRequestServiceAndServiceMismatchAccessServiceIdList();
   89:             foreach (string s in provisionedServiceRequestServiceAndServiceMismatchAccessServiceIdList.Keys) HttpLinkFormat(s, ref stringBuilder, ref count);
   90:  
   91:             integrityViewModel.ProvisionedServiceRequestServiceAndServiceMismatchAccessServiceIdListLabel = count.ToString();
   92:             integrityViewModel.ProvisionedServiceRequestServiceAndServiceMismatchAccessServiceIdListLiteral = stringBuilder.ToString();
   93:  
   94:             /*
   95:             ////////////////////////////////////////////////////////////////////////////
   96: 
   97:             c = 0;
   98:             sb.Clear();
   99:             foreach (string s in Ia.Ftn.Cl.Models.Data.Nokia.AgcfGatewayRecord.AgcfGatewayRecordIpListNotInNetworkDesignDocument.Keys) Procedure(s, ref sb, ref c);
  100: 
  101:             agcfGatewayRecordIpThatDontExistInNetworkDesignDocumentLabel = c.ToString();
  102:             agcfGatewayRecordIpThatDontExistInNetworkDesignDocumentLiteral = sb.ToString();
  103:             */
  104:  
  105:             ////////////////////////////////////////////////////////////////////////////
  106:             ////////////////////////////////////////////////////////////////////////////
  107:             ////////////////////////////////////////////////////////////////////////////
  108:  
  109:             // New with Access
  110:  
  111:             IntegrityWithAccess(out sNoProvisionedSrsDictionary, out sNoNddOntDictionary, out provisionedSrsNoSDictionary, out srsNoNddOntDictionary, out sWithNddOntNoEqualToSrsNddOntDictionary, out srsWithNddOntNoEqualToSNddOntDictionary);
  112:  
  113:             ////////////////////////////////////////////////////////////////////////////
  114:  
  115:             count = 0;
  116:             stringBuilder.Clear();
  117:             ServiceGroupedByPonGroupSymbolInHttpLinkFormat(provisionedSrsNoSDictionary, ref stringBuilder, ref count);
  118:  
  119:             integrityViewModel.ProvisionedSrsNoSLabel = count.ToString();
  120:             integrityViewModel.ProvisionedSrsNoSLiteral = stringBuilder.ToString();
  121:  
  122:             ////////////////////////////////////////////////////////////////////////////
  123:  
  124:             count = 0;
  125:             stringBuilder.Clear();
  126:             ServiceGroupedByPonGroupSymbolInHttpLinkFormat(sNoProvisionedSrsDictionary, ref stringBuilder, ref count);
  127:  
  128:             integrityViewModel.SNoProvisionedSrsLabel = count.ToString();
  129:             integrityViewModel.SNoProvisionedSrsLiteral = stringBuilder.ToString();
  130:  
  131:             ////////////////////////////////////////////////////////////////////////////
  132:  
  133:             count = 0;
  134:             stringBuilder.Clear();
  135:             ServiceGroupedByPonGroupSymbolInHttpLinkFormat(sNoNddOntDictionary, ref stringBuilder, ref count);
  136:  
  137:             integrityViewModel.SNoNddOntLabel = count.ToString();
  138:             integrityViewModel.SNoNddOntLiteral = stringBuilder.ToString();
  139:  
  140:             ////////////////////////////////////////////////////////////////////////////
  141:  
  142:             count = 0;
  143:             stringBuilder.Clear();
  144:             ServiceGroupedByPonGroupSymbolInHttpLinkFormat(srsNoNddOntDictionary, ref stringBuilder, ref count);
  145:  
  146:             integrityViewModel.SrsNoNddOntLabel = count.ToString();
  147:             integrityViewModel.SrsNoNddOntLiteral = stringBuilder.ToString();
  148:  
  149:             ////////////////////////////////////////////////////////////////////////////
  150:  
  151:             count = 0;
  152:             stringBuilder.Clear();
  153:             ServiceGroupedByPonGroupSymbolInHttpLinkFormat(sWithNddOntNoEqualToSrsNddOntDictionary, ref stringBuilder, ref count);
  154:  
  155:             integrityViewModel.SWithNddOntNoEqualToSrsNddOntLabel = count.ToString();
  156:             integrityViewModel.SWithNddOntNoEqualToSrsNddOntLiteral = stringBuilder.ToString();
  157:  
  158:             ////////////////////////////////////////////////////////////////////////////
  159:  
  160:             count = 0;
  161:             stringBuilder.Clear();
  162:             ServiceGroupedByPonGroupSymbolInHttpLinkFormat(srsWithNddOntNoEqualToSNddOntDictionary, ref stringBuilder, ref count);
  163:  
  164:             integrityViewModel.SrsWithNddOntNoEqualToSNddOntLabel = count.ToString();
  165:             integrityViewModel.SrsWithNddOntNoEqualToSNddOntLiteral = stringBuilder.ToString();
  166:  
  167:             ////////////////////////////////////////////////////////////////////////////
  168:             ////////////////////////////////////////////////////////////////////////////
  169:             ////////////////////////////////////////////////////////////////////////////
  170:  
  171:             // New with Site
  172:  
  173:             IntegrityWithSite(out imsSWithSiteNoProvisionedSrsDictionary, out pstnSWithSiteNoProvisionedSrsDictionary, out pstnSWithSiteMismatchedWithSrsDictionary, out provisionedSrsWithSiteNoSDictionary);
  174:  
  175:             ////////////////////////////////////////////////////////////////////////////
  176:  
  177:             count = 0;
  178:             stringBuilder.Clear();
  179:             ServiceGroupedBySiteInHttpLinkFormat(imsSWithSiteNoProvisionedSrsDictionary, ref stringBuilder, ref count);
  180:  
  181:             integrityViewModel.ImsSWithSiteNoProvisionedSrsLabel = count.ToString();
  182:             integrityViewModel.ImsSWithSiteNoProvisionedSrsLiteral = stringBuilder.ToString();
  183:  
  184:             count = 0;
  185:             stringBuilder.Clear();
  186:             ServiceGroupedBySiteInHttpLinkFormat(pstnSWithSiteNoProvisionedSrsDictionary, ref stringBuilder, ref count);
  187:  
  188:             integrityViewModel.PstnSWithSiteNoProvisionedSrsLabel = count.ToString();
  189:             integrityViewModel.PstnSWithSiteNoProvisionedSrsLiteral = stringBuilder.ToString();
  190:  
  191:             count = 0;
  192:             stringBuilder.Clear();
  193:             ServiceGroupedBySiteInHttpLinkFormat(pstnSWithSiteMismatchedWithSrsDictionary, ref stringBuilder, ref count);
  194:  
  195:             integrityViewModel.PstnSWithSiteMismatchedWithSrsLabel = count.ToString();
  196:             integrityViewModel.PstnSWithSiteMismatchedWithSrsLiteral = stringBuilder.ToString();
  197:  
  198:             ////////////////////////////////////////////////////////////////////////////
  199:  
  200:             count = 0;
  201:             stringBuilder.Clear();
  202:             ServiceGroupedBySiteInHttpLinkFormat(provisionedSrsWithSiteNoSDictionary, ref stringBuilder, ref count);
  203:  
  204:             integrityViewModel.ProvisionedSrsWithSiteNoSLabel = count.ToString();
  205:             integrityViewModel.ProvisionedSrsWithSiteNoSLiteral = stringBuilder.ToString();
  206:  
  207:             ////////////////////////////////////////////////////////////////////////////
  208:         }
  209:  
  210:         ////////////////////////////////////////////////////////////////////////////
  211:  
  212:         /// <summary>
  213:         ///
  214:         /// </summary>
  215:         private static void HttpLinkFormat(string s, ref StringBuilder sb, ref int c)
  216:         {
  217:             string u;
  218:  
  219:             u = s.Replace(":1:965", "");
  220:             u = @"<a href=""find.aspx?input=" + u + @""">" + u + "</a>";
  221:             sb.Append(u + ", ");
  222:  
  223:             c++;
  224:         }
  225:  
  226:         ////////////////////////////////////////////////////////////////////////////
  227:  
  228:         /// <summary>
  229:         ///
  230:         /// </summary>
  231:         private static void ServiceGroupedByPonGroupSymbolInHttpLinkFormat(Dictionary<string, string> dic, ref StringBuilder sb, ref int c)
  232:         {
  233:             string ponGroupSymbol;
  234:  
  235:             Dictionary<string, string> ponGroupSymbolServiceDictionary;
  236:  
  237:             ponGroupSymbolServiceDictionary = new Dictionary<string, string>();
  238:  
  239:             //u = s.Replace(":1:965", "");
  240:             //u = @"<a href=""find.aspx?input=" + u + @""">" + u + "</a>";
  241:             //sb.Append(u + ", ");
  242:  
  243:             foreach (KeyValuePair<string, string> kvp in dic)
  244:             {
  245:                 if (!string.IsNullOrEmpty(kvp.Value))
  246:                 {
  247:                     ponGroupSymbol = kvp.Value.Substring(0, 3);
  248:  
  249:                     if (ponGroupSymbolServiceDictionary.ContainsKey(ponGroupSymbol))
  250:                     {
  251:                         ponGroupSymbolServiceDictionary[ponGroupSymbol] = ponGroupSymbolServiceDictionary[ponGroupSymbol] + ", " + kvp.Key;
  252:                     }
  253:                     else ponGroupSymbolServiceDictionary[ponGroupSymbol] = kvp.Key;
  254:  
  255:                     c++;
  256:                 }
  257:             }
  258:  
  259:             foreach (KeyValuePair<string, string> kvp in ponGroupSymbolServiceDictionary)
  260:             {
  261:                 sb.AppendLine("<p><b>" + kvp.Key + "</b>: " + kvp.Value + "</p>");
  262:             }
  263:         }
  264:  
  265:         ////////////////////////////////////////////////////////////////////////////
  266:  
  267:         /// <summary>
  268:         ///
  269:         /// </summary>
  270:         private static void ServiceGroupedBySiteInHttpLinkFormat(Dictionary<string, string> dic, ref StringBuilder sb, ref int c)
  271:         {
  272:             string siteSymbol;
  273:  
  274:             Dictionary<string, string> siteSymbolServiceDictionary;
  275:  
  276:             siteSymbolServiceDictionary = new Dictionary<string, string>();
  277:  
  278:             //u = s.Replace(":1:965", "");
  279:             //u = @"<a href=""find.aspx?input=" + u + @""">" + u + "</a>";
  280:             //sb.Append(u + ", ");
  281:  
  282:             foreach (KeyValuePair<string, string> kvp in dic)
  283:             {
  284:                 if (!string.IsNullOrEmpty(kvp.Value))
  285:                 {
  286:                     siteSymbol = kvp.Value.Substring(0, 3);
  287:  
  288:                     if (siteSymbolServiceDictionary.ContainsKey(siteSymbol))
  289:                     {
  290:                         siteSymbolServiceDictionary[siteSymbol] = siteSymbolServiceDictionary[siteSymbol] + ", " + kvp.Key;
  291:                     }
  292:                     else siteSymbolServiceDictionary[siteSymbol] = kvp.Key;
  293:  
  294:                     c++;
  295:                 }
  296:             }
  297:  
  298:             foreach (KeyValuePair<string, string> kvp in siteSymbolServiceDictionary)
  299:             {
  300:                 sb.AppendLine("<p><b>" + kvp.Key + "</b>: " + kvp.Value + "</p>");
  301:             }
  302:         }
  303:  
  304:         ////////////////////////////////////////////////////////////////////////////
  305:  
  306:         /// <summary>
  307:         /// 
  308:         /// </summary>
  309:         public static void IntegrityWithAccess(out Dictionary<string, string> sNoProvisionedSrs, out Dictionary<string, string> sNoNddOnt, out Dictionary<string, string> provisionedSrsNoS, out Dictionary<string, string> srsNoNddOnt, out Dictionary<string, string> sWithNddOntNoEqualToSrsNddOnt, out Dictionary<string, string> srsWithNddOntNoEqualToSNddOnt)
  310:         {
  311:             string service, accessName, accessName2;
  312:  
  313:             sNoProvisionedSrs = new Dictionary<string, string>();
  314:             sNoNddOnt = new Dictionary<string, string>();
  315:             provisionedSrsNoS = new Dictionary<string, string>();
  316:             srsNoNddOnt = new Dictionary<string, string>();
  317:             sWithNddOntNoEqualToSrsNddOnt = new Dictionary<string, string>();
  318:             srsWithNddOntNoEqualToSNddOnt = new Dictionary<string, string>();
  319:  
  320:             // dictionary of S - NddOnt and SRS-NddOnt
  321:             var serviceToNddOntDictionary = Ia.Ftn.Cl.Models.Data.Service2.ServiceToNddOntDictionary;
  322:             var serviceRequestServiceProvisionedServiceToNddOntDictionary = Ia.Ftn.Cl.Models.Data.ServiceRequestService.ProvisionedServiceToNddOntDictionary;
  323:  
  324:             /*
  325:             foreach S
  326:                 S no SRS
  327:                 S no nddOnt             
  328:             */
  329:             foreach (var kvp in serviceToNddOntDictionary)
  330:             {
  331:                 service = kvp.Key;
  332:                 accessName = (kvp.Value != null) ? kvp.Value.Access.Name : string.Empty;
  333:  
  334:                 if (!serviceRequestServiceProvisionedServiceToNddOntDictionary.ContainsKey(service)) sNoProvisionedSrs.Add(service, accessName);
  335:  
  336:                 if (string.IsNullOrEmpty(accessName)) sNoNddOnt.Add(service, string.Empty);
  337:             }
  338:  
  339:             /*
  340:             foreach SRS
  341:                 SRS no S
  342:                 SRS no nddOnt
  343:             */
  344:             foreach (var kvp in serviceRequestServiceProvisionedServiceToNddOntDictionary)
  345:             {
  346:                 service = kvp.Key;
  347:                 accessName = (kvp.Value != null) ? kvp.Value.Access.Name : string.Empty;
  348:  
  349:                 if (!serviceToNddOntDictionary.ContainsKey(service)) provisionedSrsNoS.Add(service, accessName);
  350:  
  351:                 if (string.IsNullOrEmpty(accessName)) srsNoNddOnt.Add(service, string.Empty);
  352:             }
  353:  
  354:             /*
  355:             foreach S with nddOnt
  356:                  S nddOnt!= SRS nddOnt if exists
  357:             */
  358:             foreach (var kvp in serviceToNddOntDictionary)
  359:             {
  360:                 service = kvp.Key;
  361:  
  362:                 if (!sNoNddOnt.ContainsKey(service))
  363:                 {
  364:                     accessName = kvp.Value.Access.Name;
  365:  
  366:                     if (serviceRequestServiceProvisionedServiceToNddOntDictionary.ContainsKey(service))
  367:                     {
  368:                         if (!srsNoNddOnt.ContainsKey(service))
  369:                         {
  370:                             accessName2 = serviceRequestServiceProvisionedServiceToNddOntDictionary[service].Access.Name;
  371:  
  372:                             if (accessName != accessName2)
  373:                             {
  374:                                 sWithNddOntNoEqualToSrsNddOnt.Add(service, accessName);
  375:                             }
  376:                         }
  377:                     }
  378:                 }
  379:             }
  380:  
  381:  
  382:             /*
  383:             foreach SRS with nddOnt
  384:                  SRS nddOnt!= S nddOnt if exists
  385:             */
  386:             foreach (var kvp in serviceRequestServiceProvisionedServiceToNddOntDictionary)
  387:             {
  388:                 service = kvp.Key;
  389:  
  390:                 if (!srsNoNddOnt.ContainsKey(service))
  391:                 {
  392:                     accessName = kvp.Value.Access.Name;
  393:  
  394:                     if (serviceToNddOntDictionary.ContainsKey(service))
  395:                     {
  396:                         if (!sNoNddOnt.ContainsKey(service))
  397:                         {
  398:                             accessName2 = serviceToNddOntDictionary[service].Access.Name;
  399:  
  400:                             if (accessName != accessName2)
  401:                             {
  402:                                 srsWithNddOntNoEqualToSNddOnt.Add(service, accessName);
  403:                             }
  404:                         }
  405:                     }
  406:                 }
  407:             }
  408:         }
  409:  
  410:         ////////////////////////////////////////////////////////////////////////////
  411:  
  412:         /// <summary>
  413:         /// 
  414:         /// </summary>
  415:         public static void IntegrityWithSite(out Dictionary<string, string> imsSWithSiteNoProvisionedSrsDictionary, out Dictionary<string, string> pstnSWithSiteNoProvisionedSrsDictionary, out Dictionary<string, string> pstnSWithSiteMismatchedWithSrsDictionary, out Dictionary<string, string> provisionedSrsWithSiteNoSDictionary)
  416:         {
  417:             string service, siteName;
  418:  
  419:             provisionedSrsWithSiteNoSDictionary = new Dictionary<string, string>();
  420:             pstnSWithSiteNoProvisionedSrsDictionary = new Dictionary<string, string>();
  421:  
  422:             // dictionary of S-Site and SRS-Site
  423:             var serviceToSiteNameDictionary = Ia.Ftn.Cl.Models.Data.Service2.ServiceToSiteDictionary;
  424:             var serviceRequestServiceProvisionedServiceToSiteNameDictionary = Ia.Ftn.Cl.Models.Data.ServiceRequestService.ProvisionedServiceToSiteDictionary;
  425:  
  426:             /*
  427:             foreach IMS S
  428:                 S no SRS
  429:             */
  430:             imsSWithSiteNoProvisionedSrsDictionary = Ia.Ftn.Cl.Models.Data.Service2.ImsServiceNotInProvisionedServiceRequestServiceToSiteDictionary;
  431:  
  432:             /*
  433:             foreach PSTN S
  434:                 S no SRS
  435:             */
  436:             pstnSWithSiteNoProvisionedSrsDictionary = Ia.Ftn.Cl.Models.Data.Service2.PstnServiceNotInProvisionedServiceRequestServiceToSiteDictionary;
  437:  
  438:             /*
  439:             foreach SRS
  440:                 SRS no S
  441:             */
  442:             foreach (var kvp in serviceRequestServiceProvisionedServiceToSiteNameDictionary)
  443:             {
  444:                 service = kvp.Key;
  445:                 siteName = kvp.Value.Name;
  446:  
  447:                 if (!serviceToSiteNameDictionary.ContainsKey(service)) provisionedSrsWithSiteNoSDictionary.Add(service, siteName);
  448:             }
  449:  
  450:             /*
  451:             foreach S with SRS exists
  452:                 S != SRS
  453:             */
  454:  
  455:             var complementaryPstnServiceMismatchBetweenProvisionedServiceRequestServiceAndServiceServiceIdAccessIdList = Ia.Ftn.Cl.Models.Data.Provision.ComplementaryPstnServiceMismatchBetweenProvisionedServiceRequestServiceAndServiceServiceIdAccessIdList(DateTime.MinValue);
  456:  
  457:             pstnSWithSiteMismatchedWithSrsDictionary = new Dictionary<string, string>();
  458:             foreach (KeyValuePair<string, string> kvp in complementaryPstnServiceMismatchBetweenProvisionedServiceRequestServiceAndServiceServiceIdAccessIdList)
  459:             {
  460:                 service = Ia.Ftn.Cl.Models.Business.Service.ServiceIdToService(kvp.Key);
  461:  
  462:                 if (serviceToSiteNameDictionary.ContainsKey(service))
  463:                 {
  464:                     siteName = serviceToSiteNameDictionary[service].Name;
  465:  
  466:                     pstnSWithSiteMismatchedWithSrsDictionary.Add(service, siteName);
  467:                 }
  468:                 else pstnSWithSiteMismatchedWithSrsDictionary.Add(service, string.Empty);
  469:             }
  470:         }
  471:  
  472:         ////////////////////////////////////////////////////////////////////////////
  473:         ////////////////////////////////////////////////////////////////////////////
  474:     }
  475:  
  476:     ////////////////////////////////////////////////////////////////////////////
  477:     ////////////////////////////////////////////////////////////////////////////
  478: }