Public general use code classes and xml files that we've compiled and used over the years:
Find subscriber and network information support class for the Fixed Telecommunications Network business model
1: using Microsoft.EntityFrameworkCore;
2: using System;
3: using System.Collections.Generic;
4: using System.Data;
5: using System.Linq;
6: using System.Text.RegularExpressions;
7: using System.Web;
8:
9: namespace Ia.Ftn.Cl.Model.Business.Maintenance
10: {
11: ////////////////////////////////////////////////////////////////////////////
12:
13: /// <summary publish="true">
14: /// Find subscriber and network information support class for the Fixed Telecommunications Network business model
15: /// </summary>
16: ///
17: /// <remarks>
18: /// Copyright © 2006-2021 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
19: ///
20: /// This library is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by
21: /// the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
22: ///
23: /// This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
24: /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
25: ///
26: /// You should have received a copy of the GNU General Public License along with this library. If not, see http://www.gnu.org/licenses.
27: ///
28: /// Copyright notice: This notice may not be removed or altered from any source distribution.
29: /// </remarks>
30: public class Find
31: {
32: public const string ServiceRequestCustomerIdInputTypeString = "serviceRequestCustomerId";
33: public const string PaciInputTypeString = "paci";
34:
35: ////////////////////////////////////////////////////////////////////////////
36:
37: /// <summary>
38: ///
39: /// </summary>
40: public Find() { }
41:
42: ////////////////////////////////////////////////////////////////////////////
43:
44: /// <summary>
45: ///
46: /// </summary>
47: public static string Url(string input)
48: {
49: return "~/maintenance/find.aspx?input=" + HttpUtility.UrlEncode(input);
50: }
51:
52: ////////////////////////////////////////////////////////////////////////////
53:
54: /// <summary>
55: ///
56: /// </summary>
57: public static void Search(Ia.Ftn.Cl.Model.Business.Administration.Framework framework, string rawInput, string inputType, out List<Ia.Ftn.Cl.Model.Ui.Service2> serviceList, out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList, out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList, out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList, out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList, out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList, out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList, out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList, out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList, out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList, out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList, out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList, out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList, out List<Ia.Ftn.Cl.Model.Ont> ontList, out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList, out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList, out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList, out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList, out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList, out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList, out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList, out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList, out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList, out List<Ia.Ftn.Cl.Model.Event> eventList, out List<Ia.Ftn.Cl.Model.Access> accessList, out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList, out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList, out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList, out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList, out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList, out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList, out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList, out List<Ia.Ftn.Cl.Model.Report> reportList, out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList, out Ia.Cl.Models.Result result)
58: {
59: var enqueueIntoMsmq = true;
60: var stopwatch = new Ia.Cl.Models.Stopwatch();
61:
62: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Search(ref stopwatch, framework, enqueueIntoMsmq, rawInput, inputType, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
63: }
64:
65: ////////////////////////////////////////////////////////////////////////////
66:
67: /// <summary>
68: ///
69: /// </summary>
70: public static Ia.Cl.Models.Result TriggerSearchToRefreshAspNetAndDatabaseConnection(string input)
71: {
72: var enqueueIntoMsmq = false;
73: var inputType = string.Empty;
74: var stopwatch = new Ia.Cl.Models.Stopwatch();
75:
76: var staff = Ia.Ftn.Cl.Model.Business.Authority.ApplicationStaff ?? Ia.Ftn.Cl.Model.Business.Authority.SuperStaff;
77:
78: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Search(ref stopwatch, staff.Framework, enqueueIntoMsmq, input, inputType, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out Ia.Cl.Models.Result result);
79:
80: return result;
81: }
82:
83: ////////////////////////////////////////////////////////////////////////////
84:
85: /// <summary>
86: ///
87: /// </summary>
88: public static void Search(ref Ia.Cl.Models.Stopwatch stopwatch,
89: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
90: bool enqueueIntoMsmq,
91: string rawInput,
92: string inputType,
93: out List<Ia.Ftn.Cl.Model.Ui.Service2> serviceList,
94: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
95: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
96: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
97: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
98: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
99: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
100: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
101: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
102: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
103: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
104: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
105: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
106: out List<Ia.Ftn.Cl.Model.Ont> ontList,
107: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
108: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
109: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
110: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
111: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
112: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
113: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
114: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
115: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
116: out List<Ia.Ftn.Cl.Model.Event> eventList,
117: out List<Ia.Ftn.Cl.Model.Access> accessList,
118: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
119: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
120: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
121: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
122: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
123: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
124: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
125: out List<Ia.Ftn.Cl.Model.Report> reportList,
126: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
127: out Ia.Cl.Models.Result result)
128: {
129: bool inputIsValid;
130: string input;
131:
132: serviceList = null;
133: agcfGatewayRecordList = null;
134: agcfEndpointList = null;
135: mgwList = null;
136: asbrList = null;
137: subPartyList = null;
138: subscriberList = null;
139: sbrList = null;
140: owsbrList = null;
141: seruattrList = null;
142: axeSubscriberList = null;
143: ewsdSubscriberList = null;
144: nddOntList = null;
145: ontList = null;
146: ontServiceVoipList = null;
147: ontOntPotsList = null;
148: emsDevList = null;
149: emsBoardList = null;
150: emsPortList = null;
151: emsOntList = null;
152: emsOntSipInfoList = null;
153: emsVoipPstnUserList = null;
154: emsVagList = null;
155: eventList = null;
156: accessList = null;
157: serviceRequestServiceList = null;
158: serviceRequestList = null;
159: serviceRequestAdministrativeIssueList = null;
160: serviceRequestHistoryList = null;
161: serviceRequestTypeList = null;
162: serviceRequestOntList = null;
163: serviceRequestOntDetailList = null;
164: reportList = null;
165: reportHistoryList = null;
166:
167: result = new Ia.Cl.Models.Result();
168:
169: if (!string.IsNullOrEmpty(rawInput))
170: {
171: rawInput = rawInput.Trim();
172: input = rawInput.ToLower();
173:
174: if (input.Length > 0)
175: {
176: inputIsValid = true;
177:
178: if (Ia.Ftn.Cl.Model.Business.Service.ServiceHasEightDigitsAndIsWithinKuwaitLandlineDomainList(input) || Ia.Ftn.Cl.Model.Business.NumberFormatConverter.IsMatchToServiceWithCountryCode(input) || Ia.Ftn.Cl.Model.Business.NumberFormatConverter.IsMatchToImpuSipDomain(input))
179: {
180: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Number(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
181: }
182: else if (Ia.Ftn.Cl.Model.Business.Access.AccessNameIsInAValidFormat(input))
183: {
184: Ia.Ftn.Cl.Model.Business.Maintenance.Find.OntName(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
185: }
186: else if (Ia.Ftn.Cl.Model.Business.Access.PonNameIsInValidFormat(input))
187: {
188: Ia.Ftn.Cl.Model.Business.Maintenance.Find.PonName(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
189: }
190: else if (Regex.IsMatch(input, @"^[a-zA-Z]{3}\-\d{1,2}\-\d{1,2}\-\d{1,2}\-\d{1,2}$")) // MsanDevLicPosition() regex must come before OntPosition()
191: {
192: Ia.Ftn.Cl.Model.Business.Maintenance.Find.MsanDevLicPosition(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
193: }
194: else if (Regex.IsMatch(input, @"^[\w\d\-]+\-\d{1,2}\-\d{1,2}\-\d{1,2}$"))
195: {
196: Ia.Ftn.Cl.Model.Business.Maintenance.Find.OntPosition(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
197: }
198: else if (Ia.Ftn.Cl.Model.Business.Huawei.Ont.IsValidSerialNumber(input) || Ia.Ftn.Cl.Model.Business.Nokia.Ont.IsValidSerialNumber(input)) // Huawei or Nokia ONT serial
199: {
200: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Serial(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
201: }
202: else if (Ia.Ftn.Cl.Model.Business.Access.PaciIsInAValidFormat(input))
203: {
204: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Paci(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
205:
206: /*
207: if (!string.IsNullOrEmpty(inputType) && inputType == Ia.Ftn.Cl.Model.Business.Maintenance.Find.PaciInputTypeString)
208: {
209: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Paci(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
210: }
211: */
212: }
213: else if (Ia.Cl.Models.Default.IsValidIpv4(input))
214: {
215: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Ip(rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
216: }
217: else if (Regex.IsMatch(input, @"^[a-zA-Z]{3},\d{1,3}$"))
218: {
219: Ia.Ftn.Cl.Model.Business.Maintenance.Find.AreaBlock(rawInput, out accessList, out result);
220: }
221: else if (Regex.IsMatch(input, @"^[a-zA-Z]{3},\d{0,3},\d{0,3},\d{0,3},\d{0,3}$"))
222: {
223: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Address(rawInput, out accessList, out result);
224: }
225: else if (Regex.IsMatch(input, @"^\d{1,7}$"))
226: {
227: if (!string.IsNullOrEmpty(inputType) && inputType == Ia.Ftn.Cl.Model.Business.Maintenance.Find.ServiceRequestCustomerIdInputTypeString)
228: {
229: // max value of ServiceRequest CustomerId is a 7 digit number
230:
231: Ia.Ftn.Cl.Model.Business.Maintenance.Find.CustomerId(rawInput, out serviceRequestList, out result);
232: }
233: else Ia.Ftn.Cl.Model.Business.Maintenance.Find.GatewayId(ref stopwatch, framework, enqueueIntoMsmq, rawInput, out serviceList, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
234: }
235: else if (Regex.IsMatch(input, @"^[\p{L}|\s]+$")) // "\p{L}" matches unicode characters
236: {
237: Ia.Ftn.Cl.Model.Business.Maintenance.Find.CustomerName(rawInput, out serviceRequestList, out result);
238: }
239: else inputIsValid = false;
240:
241: stopwatch.RecordElapsedMilliseconds("N");
242:
243: if (inputIsValid)
244: {
245: if (
246: (serviceList == null || serviceList != null && serviceList.Count == 0) &&
247: (agcfGatewayRecordList == null || agcfGatewayRecordList != null && agcfGatewayRecordList.Count == 0) &&
248: (agcfEndpointList == null || agcfEndpointList != null && agcfEndpointList.Count == 0) &&
249: (mgwList == null || mgwList != null && mgwList.Count == 0) &&
250: (asbrList == null || asbrList != null && asbrList.Count == 0) &&
251: (subPartyList == null || subPartyList != null && subPartyList.Count == 0) &&
252: (subscriberList == null || subscriberList != null && subscriberList.Count == 0) &&
253: (sbrList == null || sbrList != null && sbrList.Count == 0) &&
254: (owsbrList == null || owsbrList != null && owsbrList.Count == 0) &&
255: (seruattrList == null || seruattrList != null && seruattrList.Count == 0) &&
256: (axeSubscriberList == null || axeSubscriberList != null && axeSubscriberList.Count == 0) &&
257: (ewsdSubscriberList == null || ewsdSubscriberList != null && ewsdSubscriberList.Count == 0) &&
258: (nddOntList == null || nddOntList != null && nddOntList.Count == 0) &&
259: (ontList == null || ontList != null && ontList.Count == 0) &&
260: (ontServiceVoipList == null || ontServiceVoipList != null && ontServiceVoipList.Count == 0) &&
261: (ontOntPotsList == null || ontOntPotsList != null && ontOntPotsList.Count == 0) &&
262: (emsDevList == null || emsDevList != null && emsDevList.Count == 0) &&
263: (emsBoardList == null || emsBoardList != null && emsBoardList.Count == 0) &&
264: (emsPortList == null || emsPortList != null && emsPortList.Count == 0) &&
265: (emsOntList == null || emsOntList != null && emsOntList.Count == 0) &&
266: (emsOntSipInfoList == null || emsOntSipInfoList != null && emsOntSipInfoList.Count == 0) &&
267: (emsVoipPstnUserList == null || emsVoipPstnUserList != null && emsVoipPstnUserList.Count == 0) &&
268: (emsVagList == null || emsVagList != null && emsVagList.Count == 0) &&
269: (eventList == null || eventList != null && eventList.Count == 0) &&
270: (accessList == null || accessList != null && accessList.Count == 0) &&
271: (serviceRequestServiceList == null || serviceRequestServiceList != null && serviceRequestServiceList.Count == 0) &&
272: (serviceRequestList == null || serviceRequestList != null && serviceRequestList.Count == 0) &&
273: (serviceRequestAdministrativeIssueList == null || serviceRequestAdministrativeIssueList != null && serviceRequestAdministrativeIssueList.Count == 0) &&
274: (serviceRequestHistoryList == null || serviceRequestHistoryList != null && serviceRequestHistoryList.Count == 0) &&
275: (serviceRequestTypeList == null || serviceRequestTypeList != null && serviceRequestTypeList.Count == 0) &&
276: (serviceRequestOntList == null || serviceRequestOntList != null && serviceRequestOntList.Count == 0) &&
277: (serviceRequestOntDetailList == null || serviceRequestOntDetailList != null && serviceRequestOntDetailList.Count == 0) &&
278: (reportList == null || reportList != null && reportList.Count == 0) &&
279: (reportHistoryList == null || reportHistoryList != null && reportHistoryList.Count == 0))
280: {
281: if (result.IsSuccessful)
282: {
283: result.AddWarning("No data records were found for \"" + rawInput + "\" (لا توجد معلومات عن القيمة المعطاة). ");
284: }
285: else { };// result.AddError(result.Error);
286: }
287: else
288: {
289: /*
290: if (result.IsSuccessful)
291: {
292: if (!string.IsNullOrEmpty(result.Message)) result.AddSuccess(result.Message);
293: }
294: //else result.AddError(result.Error);
295: */
296: }
297: }
298: else result.AddError("Input format is unknown (قيمة غير مفهومة). ");
299: }
300: else result.AddError("No input was entered (لم يتم إدخال أي شيء). ");
301: }
302: else result.AddError("Input is null or empty (لم يتم إدخال أي شيء). ");
303: }
304:
305: ////////////////////////////////////////////////////////////////////////////
306: ////////////////////////////////////////////////////////////////////////////
307:
308:
309:
310:
311:
312:
313: ////////////////////////////////////////////////////////////////////////////
314: ////////////////////////////////////////////////////////////////////////////
315:
316: /// <summary>
317: ///
318: /// </summary>
319: public static void GatewayId(ref Ia.Cl.Models.Stopwatch stopwatch,
320: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
321: bool enqueueIntoMsmq,
322: string input,
323: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
324: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
325: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
326: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
327: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
328: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
329: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
330: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
331: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
332: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
333: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
334: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
335: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
336: out List<Ia.Ftn.Cl.Model.Ont> ontList,
337: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
338: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
339: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
340: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
341: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
342: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
343: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
344: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
345: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
346: out List<Ia.Ftn.Cl.Model.Event> eventList,
347: out List<Ia.Ftn.Cl.Model.Access> accessList,
348: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
349: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
350: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
351: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
352: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
353: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
354: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
355: out List<Ia.Ftn.Cl.Model.Report> reportList,
356: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
357: out Ia.Cl.Models.Result result)
358: {
359: int gatewayId;
360:
361: var gatewayIdList = new List<int>();
362:
363: result = new Ia.Cl.Models.Result();
364:
365: service2List = null;
366: agcfGatewayRecordList = null;
367: agcfEndpointList = null;
368: mgwList = null;
369: asbrList = null;
370: subPartyList = null;
371: subscriberList = null;
372: sbrList = null;
373: owsbrList = null;
374: seruattrList = null;
375: axeSubscriberList = null;
376: ewsdSubscriberList = null;
377: nddOntList = null;
378: ontList = null;
379: ontServiceVoipList = null;
380: ontOntPotsList = null;
381: emsDevList = null;
382: emsBoardList = null;
383: emsPortList = null;
384: emsOntList = null;
385: emsOntSipInfoList = null;
386: emsVoipPstnUserList = null;
387: emsVagList = null;
388: eventList = null;
389: accessList = null;
390: serviceRequestServiceList = null;
391: serviceRequestList = null;
392: serviceRequestAdministrativeIssueList = null;
393: serviceRequestHistoryList = null;
394: serviceRequestTypeList = null;
395: serviceRequestOntList = null;
396: serviceRequestOntDetailList = null;
397: reportList = null;
398: reportHistoryList = null;
399:
400: gatewayId = int.Parse(input);
401:
402: if (gatewayId >= Ia.Ftn.Cl.Model.Business.Nokia.Ims.FirstGatewayId && gatewayId <= Ia.Ftn.Cl.Model.Business.Nokia.Ims.LastGatewayId)
403: {
404: gatewayIdList.Add(gatewayId);
405:
406: Ia.Ftn.Cl.Model.Business.Maintenance.Find.GatewayIdTwo(ref stopwatch, framework, enqueueIntoMsmq, gatewayIdList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
407: }
408: else
409: {
410: result.AddError("The gatewayId \"" + input + "\" is not within the allowed gatewayId range (الرقم لا ينتمي للمجال). ");
411: }
412: }
413:
414: ////////////////////////////////////////////////////////////////////////////
415:
416: /// <summary>
417: ///
418: /// </summary>
419: private static void GatewayIdTwo(ref Ia.Cl.Models.Stopwatch stopwatch,
420: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
421: bool enqueueIntoMsmq,
422: List<int> gatewayIdList,
423: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
424: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
425: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
426: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
427: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
428: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
429: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
430: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
431: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
432: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
433: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
434: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
435: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
436: out List<Ia.Ftn.Cl.Model.Ont> ontList,
437: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
438: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
439: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
440: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
441: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
442: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
443: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
444: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
445: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
446: out List<Ia.Ftn.Cl.Model.Event> eventList,
447: out List<Ia.Ftn.Cl.Model.Access> accessList,
448: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
449: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
450: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
451: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
452: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
453: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
454: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
455: out List<Ia.Ftn.Cl.Model.Report> reportList,
456: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
457: out Ia.Cl.Models.Result result)
458: {
459: var serviceList = new List<string>();
460:
461: service2List = null;
462: agcfGatewayRecordList = null;
463: agcfEndpointList = null;
464: mgwList = null;
465: asbrList = null;
466: subPartyList = null;
467: subscriberList = null;
468: sbrList = null;
469: owsbrList = null;
470: seruattrList = null;
471: axeSubscriberList = null;
472: ewsdSubscriberList = null;
473: nddOntList = null;
474: ontList = null;
475: ontServiceVoipList = null;
476: ontOntPotsList = null;
477: emsDevList = null;
478: emsBoardList = null;
479: emsPortList = null;
480: emsOntList = null;
481: emsOntSipInfoList = null;
482: emsVoipPstnUserList = null;
483: emsVagList = null;
484: eventList = null;
485: accessList = null;
486: serviceRequestServiceList = null;
487: serviceRequestList = null;
488: serviceRequestAdministrativeIssueList = null;
489: serviceRequestHistoryList = null;
490: serviceRequestTypeList = null;
491: serviceRequestOntList = null;
492: serviceRequestOntDetailList = null;
493: reportList = null;
494: reportHistoryList = null;
495:
496: var serviceLongList = new List<long>();
497: var numberList = new List<int>();
498: var partyIdList = new List<string>();
499: var prividUserList = new List<string>();
500: var impuSipDomainList = new List<string>();
501: var sipUserNameList = new List<string>();
502: var serviceWithCountryCodeList = new List<string>();
503: var serviceIdList = new List<string>();
504:
505: var subscriberIdList = new List<string>();
506: var subPartyIdList = new List<string>();
507: var agcfEndpointIdList = new List<string>();
508: var agcfGatewayRecordIdList = new List<int>();
509: var agcfGatewayRecordIpList = new List<string>();
510:
511: var asbrIdList = new List<string>();
512: var mgwIdList = new List<string>();
513:
514: var sbrImpuList = new List<string>();
515: var owsbrImpuList = new List<string>();
516:
517: var ontIdList = new List<string>();
518: var ontOntPotsIdList = new List<string>();
519: var ontServiceVoipIdList = new List<string>();
520: var ontServiceVoipIpList = new List<string>();
521:
522: var ipList = new List<string>();
523:
524: var emsDevIdList = new List<int>();
525: var emsBoardIdList = new List<string>();
526: var emsPortIdList = new List<string>();
527: var emsOntIdList = new List<string>();
528: var emsVoipPstnUserIdList = new List<string>();
529:
530: result = new Ia.Cl.Models.Result();
531:
532: // gateways belong to Nokia switch
533: var switchVendorList = new List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor>() { Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia };
534:
535: try
536: {
537: if (switchVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia))
538: {
539: agcfGatewayRecordIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordIdListFromGatewayIdList(gatewayIdList);
540:
541: agcfGatewayRecordIpList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordIpListFromIdList(agcfGatewayRecordIdList);
542: ipList.AddRange(agcfGatewayRecordIpList);
543: ipList = ipList.Distinct().ToList();
544:
545: agcfEndpointIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfEndpointIdListFromAgcfGatewayRecordIdList(agcfGatewayRecordIdList);
546: subPartyIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubPartyIdListFromAgcfEndpointIdList(agcfEndpointIdList);
547: subscriberIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberIdListFromSubPartyIdList(subPartyIdList);
548: subPartyIdList = subscriberIdList;
549:
550: var nddOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntIdListFromIpList(ipList);
551:
552: var accessVendorList = Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.AccessVendorListByOntIdList(nddOntIdList);
553:
554: if (accessVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia))
555: {
556: ontIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntIdListFromNddOntIdList(nddOntIdList);
557: ontOntPotsIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntOntPotsIdListFromOntIdList(ontIdList);
558: ontServiceVoipIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipsIdListFromOntIdList(ontIdList);
559: ontServiceVoipIpList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipIpList(ontServiceVoipIdList);
560: ipList.AddRange(ontServiceVoipIpList);
561: ipList = ipList.Distinct().ToList();
562: }
563:
564: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
565:
566: var serviceRequestServiceIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestServiceIdListFromServiceIdList(serviceIdList);
567:
568: var accessIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdListFromServiceIdList(serviceIdList);
569: accessIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdListFromServiceRequestServiceIdList(serviceRequestServiceIdList));
570: accessIdList = accessIdList.Distinct().ToList();
571:
572: //Ia.Ftn.Cl.Model.Data.Maintenance.Find.UpdateServiceListFromServiceRequestServiceIdOrService2IdList(service2IdList, ref serviceList);
573: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
574:
575: var reportIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportIdListFromServiceList(serviceList);
576: reportIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportIdListFromAccessIdList(accessIdList));
577: reportIdList = reportIdList.Distinct().ToList();
578:
579: var serviceRequestIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestIdListFromServiceAndRelatedChangedAndChangedToServiceList(serviceList);
580: serviceRequestIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestIdListFromServiceRequestServiceIdList(serviceRequestServiceIdList));
581: serviceRequestIdList = serviceRequestIdList.Distinct().ToList();
582:
583: var serviceRequestAdministrativeIssueIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestAdministrativeIssueIdListFromServiceIdList(serviceIdList);
584:
585: var serviceRequestHistoryIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestHistoryIdListFromServiceAndRelatedChangedAndChangedToServiceList(serviceList);
586: var serviceRequestTypeIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestTypeIdListFromServiceRequestIdList(serviceRequestIdList);
587: var serviceRequestOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntIdListFromAccessIdList(accessIdList);
588:
589: if (accessVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei))// || aServiceInServiceListIsWithinMsanDomainList)
590: {
591: emsOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntIdListFromNddOntIdList(nddOntIdList);
592:
593: emsVoipPstnUserIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserIdListFromEmsOntIdList(emsOntIdList);
594: emsVoipPstnUserIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserIdListFromServiceList(serviceList));
595: emsVoipPstnUserIdList = emsVoipPstnUserIdList.Distinct().ToList();
596:
597: emsPortIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortIdListFromEmsOntIdList(emsOntIdList);
598: emsPortIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortIdListFromEmsVoipPstnUserIdList(emsVoipPstnUserIdList));
599: emsPortIdList = emsPortIdList.Distinct().ToList();
600:
601: emsBoardIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardIdListFromEmsPortIdList(emsPortIdList);
602: emsBoardIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardIdListFromAccessIdList(accessIdList));
603: emsBoardIdList = emsBoardIdList.Distinct().ToList();
604:
605: emsDevIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromEmsBoardIdList(emsBoardIdList);
606: emsDevIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromAccessIdList(accessIdList));
607: //emsDevIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromEmsVoipPstnUserIdList(emsVoipPstnUserIdList));
608: emsDevIdList = emsDevIdList.Distinct().ToList();
609:
610: ipList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntIpListFromNddOntIdList(nddOntIdList));
611: ipList = ipList.Distinct().ToList();
612: }
613:
614:
615:
616:
617:
618: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
619:
620: var aServiceInServiceListIsWithinMsanDomainList = Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinMsanDomainList(serviceList);
621:
622: var service2IdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.Service2IdListFromServiceIdList(serviceIdList);
623:
624: /*
625: if (switchVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei))
626: {
627: asbrIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AsbrIdListFromImpuSipDomainList(impuSipDomainList);
628: mgwIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.MgwIdListFromAsbrIdList(asbrIdList);
629:
630: sbrImpuList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SbrImpuListFromImpuSipDomainList(impuSipDomainList);
631: owsbrImpuList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OwSbrImpuListFromImpuSipDomainList(impuSipDomainList);
632:
633: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
634: }
635: */
636:
637: /////////////////////////////////
638:
639: agcfGatewayRecordList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordList(agcfGatewayRecordIdList);
640: agcfEndpointList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfEndpointList(agcfEndpointIdList);
641: subPartyList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubPartyList(subPartyIdList);
642: subscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberList(subscriberIdList);
643:
644: mgwList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.MgwList(mgwIdList);
645: asbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AsbrList(asbrIdList);
646:
647: sbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SbrList(sbrImpuList);
648: owsbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OwsbrList(owsbrImpuList);
649:
650: if (Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinPstnThatUsesNpServerDomainList(serviceList))
651: {
652: seruattrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SeruattrListFromServiceIdList(serviceIdList);
653: }
654:
655: axeSubscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AxeSubscriberListFromServiceIdList(serviceIdList);
656: ewsdSubscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EwsdSubscriberListFromServiceIdList(serviceIdList);
657:
658: ontList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntList(ontIdList);
659: ontOntPotsList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntOntPotsListFromOntOntPotsIdList(ontOntPotsIdList);
660: ontServiceVoipList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipList(ontServiceVoipIdList);
661:
662: emsDevList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevList(emsDevIdList);
663: emsBoardList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardList(emsBoardIdList);
664: emsPortList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortList(emsPortIdList);
665: emsOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntList(emsOntIdList);
666:
667: emsOntSipInfoList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntSipInfoListFromEmsOntIdListAndService(emsOntIdList, sipUserNameList);
668: emsVoipPstnUserList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserList(emsVoipPstnUserIdList);
669: emsVagList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.VagListFromEmsOntIdList(emsOntIdList);
670:
671: service2List = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceList(service2IdList);
672:
673: nddOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntList(nddOntIdList);
674:
675: accessList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessList(accessIdList);
676:
677: serviceRequestServiceList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestServiceList(serviceRequestServiceIdList);
678:
679: serviceRequestList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestList(serviceRequestIdList);
680: serviceRequestAdministrativeIssueList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestAdministrativeIssueList(serviceRequestAdministrativeIssueIdList);
681: serviceRequestHistoryList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestHistoryList(serviceRequestHistoryIdList);
682: serviceRequestTypeList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestTypeList(serviceRequestTypeIdList);
683: serviceRequestOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntList(serviceRequestOntIdList);
684: serviceRequestOntDetailList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntDetailFromServieListList(serviceList); // more appropaite to display records related to the service numbers only
685:
686: reportList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportList(reportIdList);
687:
688: if (enqueueIntoMsmq)
689: {
690: foreach (var service in serviceList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadService, service);
691: foreach (var nddOnt in nddOntList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadAccess, nddOnt.Access.Name);
692: foreach (var gatewayId in gatewayIdList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadGateway, gatewayId);
693: }
694: }
695: }
696: catch (Exception ex)
697: {
698: result.AddError("Exception: Retrieval error of data for \"" + string.Join(", ", serviceList) + "\": " + ex.ToString());
699: }
700: }
701:
702: ////////////////////////////////////////////////////////////////////////////
703:
704: /// <summary>
705: ///
706: /// </summary>
707: public static void Ip(string rawInput,
708: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
709: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
710: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
711: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
712: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
713: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
714: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
715: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
716: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
717: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
718: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
719: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
720: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
721: out List<Ia.Ftn.Cl.Model.Ont> ontList,
722: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
723: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
724: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
725: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
726: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
727: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
728: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
729: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
730: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
731: out List<Ia.Ftn.Cl.Model.Event> eventList,
732: out List<Ia.Ftn.Cl.Model.Access> accessList,
733: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
734: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
735: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
736: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
737: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
738: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
739: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
740: out List<Ia.Ftn.Cl.Model.Report> reportList,
741: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
742: out Ia.Cl.Models.Result result)
743: {
744: string input;
745: List<int> agcfGatewayRecordIdList, numberList;
746: List<long> serviceLongList;
747: List<string> serviceList, serviceIdList, service2IdList, impuSipDomainList, sipUserNameList, serviceWithCountryCodeList, accessIdList, ontIdList, partyIdList, prividUserList, serviceRequestAdministrativeIssueIdList;
748:
749: service2IdList = new List<string>();
750: accessIdList = new List<string>();
751: ontIdList = new List<string>();
752: agcfGatewayRecordIdList = new List<int>();
753: numberList = new List<int>();
754: serviceLongList = new List<long>();
755: impuSipDomainList = new List<string>();
756: sipUserNameList = new List<string>();
757: serviceWithCountryCodeList = new List<string>();
758: serviceList = new List<string>();
759: partyIdList = new List<string>();
760: prividUserList = new List<string>();
761: serviceList = new List<string>();
762: serviceIdList = new List<string>();
763: serviceRequestAdministrativeIssueIdList = new List<string>();
764:
765: result = new Ia.Cl.Models.Result();
766:
767: service2List = null;
768:
769: agcfGatewayRecordList = null;
770: agcfEndpointList = null;
771: mgwList = null;
772: asbrList = null;
773: subPartyList = null;
774: subscriberList = null;
775:
776: sbrList = null;
777: owsbrList = null;
778: seruattrList = null;
779: axeSubscriberList = null;
780: ewsdSubscriberList = null;
781:
782: nddOntList = null;
783: ontList = null;
784: ontServiceVoipList = null;
785: ontOntPotsList = null;
786: emsDevList = null;
787: emsBoardList = null;
788: emsPortList = null;
789: emsOntList = null;
790: emsOntSipInfoList = null;
791: emsVoipPstnUserList = null;
792: emsVagList = null;
793: eventList = null;
794: accessList = null;
795: serviceRequestServiceList = null;
796: serviceRequestList = null;
797: serviceRequestAdministrativeIssueList = null;
798: serviceRequestHistoryList = null;
799: serviceRequestTypeList = null;
800: serviceRequestOntList = null;
801: serviceRequestOntDetailList = null;
802: reportList = null;
803: reportHistoryList = null;
804:
805: input = rawInput.ToLower();
806:
807: // var ip = mgw.EID.Replace(":" + Ia.Ftn.Cl.Model.Business.Huawei.SoftX.RemotePort, "");
808:
809: try
810: {
811: using (var db = new Ia.Ftn.Cl.Model.Db())
812: {
813: ontServiceVoipList = (from ov in db.OntServiceVoips where ov.Ip == input select ov).Include(u => u.Ont).ToList();
814: foreach (var v in ontServiceVoipList) ontIdList.Add(v.Ont.Id);
815: ontIdList = ontIdList.Distinct().ToList();
816:
817: agcfGatewayRecordList = (from gr in db.AgcfGatewayRecords
818: where gr.IP1 == input || gr.IP2 == input
819: select new Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord()
820: {
821: Id = gr.Id,
822: GwId = gr.GwId,
823: GwUserId = gr.GwUserId,
824: GwDomain = gr.GwDomain,
825: GwName = gr.GwName,
826: IP1 = gr.IP1,
827: IP2 = gr.IP2,
828: MateExternalIPAddr = gr.MateExternalIPAddr,
829: IsPrimary = gr.IsPrimary,
830: Created = gr.Created,
831: Updated = gr.Updated
832: }).ToList();
833: foreach (var v in agcfGatewayRecordList) agcfGatewayRecordIdList.Add(v.Id);
834: agcfGatewayRecordIdList = agcfGatewayRecordIdList.Distinct().ToList();
835:
836: agcfEndpointList = (from e in db.AgcfEndpoints
837: where agcfGatewayRecordIdList.Contains(e.AgcfGatewayRecord.Id)
838: select new Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint()
839: {
840: Id = e.Id,
841: PrividUser = e.PrividUser,
842: GwId = e.GwId,
843: Dn = e.Dn,
844: FlatTermID = e.FlatTermID,
845: CallHoldLc = e.CallHoldLc,
846: CallWaitingLc = e.CallWaitingLc,
847: CallToggleLc = e.CallToggleLc,
848: ThreeWayCallLc = e.ThreeWayCallLc,
849: McidLc = e.McidLc,
850: Password = e.Password,
851: CallTransferLc = e.CallTransferLc,
852: Created = e.Created,
853: Updated = e.Updated
854: }).ToList();
855:
856: // mgwList =
857:
858: // asbrList =
859:
860: // agcfEndpointIdList = (from ep in agcfEndpointList select ep.Id).ToList();
861:
862: Ia.Ftn.Cl.Model.Data.Maintenance.Find.CollectServiceListFromAgcfEndpointList(agcfEndpointList, ref serviceList);
863: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
864:
865: service2List = (from s in db.Service2
866: where serviceList.Contains(s.Service) && s.ServiceType == Ia.Ftn.Cl.Model.Business.Service.ServiceType.ImsService
867: select new Ia.Ftn.Cl.Model.Ui.Service2()
868: {
869: AbbriviatedCalling = s.AbbriviatedCalling,
870: AlarmCall = s.AlarmCall,
871: CallBarring = s.CallBarring,
872: CallerId = s.CallerId,
873: CallForwarding = s.CallForwarding,
874: CallWaiting = s.CallWaiting,
875: ConferenceCall = s.ConferenceCall,
876: Created = s.Created,
877: InternationalCalling = s.InternationalCalling,
878: InternationalCallingUserControlled = s.InternationalCallingUserControlled,
879: Port = s.Port,
880: Pin = s.Pin,
881: Service = s.Service,
882: ServiceType = s.ServiceType,
883: ServiceSuspension = s.ServiceSuspension,
884: ServiceTypeName = s.ServiceType.ToString(),
885: Updated = s.Updated,
886: AccessId = s.Access.Id
887: }).ToList();
888:
889: serviceRequestServiceList = (from srs in db.ServiceRequestServices
890: where accessIdList.Contains(srs.Access.Id)
891: select new Ia.Ftn.Cl.Model.Ui.ServiceRequestService()
892: {
893: Id = srs.Id,
894: AbbriviatedCalling = srs.AbbriviatedCalling,
895: Access = srs.Access,
896: AlarmCall = srs.AlarmCall,
897: CallBarring = srs.CallBarring,
898: CallerId = srs.CallerId,
899: CallForwarding = srs.CallForwarding,
900: CallWaiting = srs.CallWaiting,
901: ConferenceCall = srs.ConferenceCall,
902: Created = srs.Created,
903: InternationalCalling = srs.InternationalCalling,
904: InternationalCallingUserControlled = srs.InternationalCallingUserControlled,
905: LastRequestDateTime = srs.LastRequestDateTime,
906: Provisioned = srs.Provisioned,
907: Service = srs.Service,
908: Serial = srs.Serial,
909: ServiceType = srs.ServiceType,
910: //ServiceSuspension = srs.ServiceSuspension,
911: Type = srs.Type,
912: Updated = srs.Updated
913: }).ToList();
914:
915: subscriberList = (from s in db.Subscribers
916: where partyIdList.Contains(s.PartyId)
917: select s).AsEnumerable().Select(s => new Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber()
918: {
919: Id = s.Id,
920: AlternateOtasRealm = s.AlternateOtasRealm,
921: PartyId = s.PartyId,
922: AbbriviatedCalling = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.OneDigitSpeedDialIsAssigned(s._OneDigitSpeedDial),
923: AlarmCall = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.ReminderCallIsAssigned(s._ReminderCall),
924: CallerId = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.CallingLineIdIsAssigned(s._CallingLineId),
925: CallForwarding = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.CallForwardingIsAssigned(s._CallForwardingVari),
926: CallWaiting = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.CallWaitingIsAssigned(s._CallWaiting, false),
927: ConferenceCall = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.ConferenceCallIsAssigned(s._ConferenceCalling),
928: InternationalCalling = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.InternationalCallingIsAssigned(s._CallBarring),
929: InternationalCallingUserControlled = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.InternationalCallingUserControlledIsAssigned(s._OutgoingCallBarring),
930: //ServiceSuspention = Ia.Ftn.Cl.Model.Business.Nokia.Subscriber.ServiceSuspentionIsAssigned(s._ServiceSuspention),
931: Created = s.Created,
932: Updated = s.Updated,
933: }).ToList();
934:
935: subPartyList = (from sp in db.SubParties
936: where partyIdList.Contains(sp.PartyId)
937: select new Ia.Ftn.Cl.Model.Ui.Nokia.SubParty()
938: {
939: Id = sp.Id,
940: PartyId = sp.PartyId,
941: PrimaryPUIDCPEProfileNumber = sp.PrimaryPUIDCPEProfileNumber,
942: DisplayName = sp.DisplayName,
943: Category = sp.Category,
944: AssocOtasRealm = sp.AssocOtasRealm,
945: ServiceSuspension = sp.ServiceSuspension,
946: Created = sp.Created,
947: Updated = sp.Updated
948: }).ToList();
949:
950:
951: sbrList = (from h in db.Sbrs
952: where impuSipDomainList.Contains(h.IMPU)
953: select new Ia.Ftn.Cl.Model.Ui.Huawei.Sbr()
954: {
955: COP = h.COP,
956: CSC = h.CSC,
957: Id = h.Id,
958: IMPU = h.IMPU,
959: ITT = h.ITT,
960: LP = h.LP,
961: NS3PTY = h.NS3PTY,
962: NSABRC = h.NSABRC,
963: NSCBA = h.NSCBA,
964: NSCFU = h.NSCFU,
965: NSCLIP = h.NSCLIP,
966: NSCW = h.NSCW,
967: NSFAX = h.NSFAX,
968: NSHOLD = h.NSHOLD,
969: NSNPTY = h.NSNPTY,
970: NSWAKE_UP = h.NSWAKE_UP,
971: Created = h.Created,
972: Updated = h.Updated
973: }).ToList();
974:
975: owsbrList = (from o in db.Owsbrs where impuSipDomainList.Contains(o.IMPU) select o).ToList();
976:
977: serviceRequestList = (from sr in db.ServiceRequests where numberList.Contains(sr.Number) select sr).ToList();
978: serviceRequestAdministrativeIssueList = (from srai in db.ServiceRequestAdministrativeIssues where serviceIdList.Contains(srai.Service) select srai).ToList();
979:
980: //serviceRequestHistoryList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestList(serviceRequestHistoryIdList);
981: serviceRequestTypeList = (from srt in db.ServiceRequestTypes
982: join sr in db.ServiceRequests on srt.ServiceRequest equals sr
983: where numberList.Contains(sr.Number)
984: select srt).ToList();
985:
986: reportList = (from r in db.Reports where service2IdList.Contains(r.Service) select r).Include(u => u.ReportHistories).ToList();
987:
988:
989: nddOntList = new List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont>();
990: nddOntList.Add(Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.OntByIp(input));
991:
992: foreach (var v in nddOntList) ontIdList.Add(v.Id);
993: ontIdList = ontIdList.Distinct().ToList();
994:
995: ontList = (from o in db.Onts where ontIdList.Contains(o.Id) select o).ToList();
996: foreach (var v in ontList) ontIdList.Add(v.Id);
997: ontIdList = ontIdList.Distinct().ToList();
998:
999: foreach (var v in ontList) if (v.Access != null) accessIdList.Add(v.Access.Id);
1000: accessIdList = accessIdList.Distinct().ToList();
1001:
1002: ontOntPotsList = (from op in db.OntOntPots where ontIdList.Contains(op.Ont.Id) select op).ToList();
1003: ontServiceVoipList = (from ov in db.OntServiceVoips where ontIdList.Contains(ov.Ont.Id) select ov).ToList();
1004:
1005: foreach (var v in nddOntList)
1006: {
1007: //eventSystemList.Add(v.Pon.PonGroup.Olt.AmsName);
1008: //eventAidOntList.Add("ONT-1-1-" + v.Card + "-" + v.Port + "-" + v.Number);
1009: //eventAidOntVoipList.Add("ONTVOIP-1-1-" + v.Card + "-" + v.Port + "-1");
1010:
1011: //foreach (var w in ontOntPotsList) eventAidOntPotsList.Add("ONTPOTS-1-1-" + v.Card + "-" + v.Port + "-" + w.Card + "-" + w.Port);
1012: }
1013:
1014: //eventSystemList = eventSystemList.Distinct().ToList();
1015: //eventAidOntList = eventAidOntList.Distinct().ToList();
1016: //eventAidOntVoipList = eventAidOntVoipList.Distinct().ToList();
1017:
1018: /*
1019: eventList = (from e in db.Events where eventSystemList.Contains(e.System) where eventAidOntList.Contains(e.Aid) select e)
1020: .Union(from e in db.Events where eventSystemList.Contains(e.System) where eventAidOntList.Contains(e.Aid) where eventAidOntVoipList.Contains(e.Aid) select e)
1021: .Union(from e in db.Events where eventSystemList.Contains(e.System) where eventAidOntList.Contains(e.Aid) where eventAidOntPotsList.Contains(e.Aid) select e)
1022: .ToList();
1023: */
1024:
1025: accessList = (from a in db.Accesses where accessIdList.Contains(a.Id) select a).ToList();
1026: }
1027: }
1028: catch (Exception ex)
1029: {
1030: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
1031: }
1032: }
1033:
1034: ////////////////////////////////////////////////////////////////////////////
1035: ////////////////////////////////////////////////////////////////////////////
1036:
1037: /// <summary>
1038: ///
1039: /// </summary>
1040: public static void Number(ref Ia.Cl.Models.Stopwatch stopwatch,
1041: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
1042: bool enqueueIntoMsmq,
1043: string input,
1044: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
1045: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
1046: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
1047: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
1048: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
1049: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
1050: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
1051: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
1052: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
1053: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
1054: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
1055: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
1056: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
1057: out List<Ia.Ftn.Cl.Model.Ont> ontList,
1058: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
1059: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
1060: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
1061: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
1062: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
1063: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
1064: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
1065: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
1066: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
1067: out List<Ia.Ftn.Cl.Model.Event> eventList,
1068: out List<Ia.Ftn.Cl.Model.Access> accessList,
1069: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
1070: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
1071: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
1072: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
1073: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
1074: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
1075: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
1076: out List<Ia.Ftn.Cl.Model.Report> reportList,
1077: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
1078: out Ia.Cl.Models.Result result)
1079: {
1080: string service;
1081:
1082: var serviceList = new List<string>();
1083:
1084: result = new Ia.Cl.Models.Result();
1085:
1086: service2List = null;
1087: agcfGatewayRecordList = null;
1088: agcfEndpointList = null;
1089: mgwList = null;
1090: asbrList = null;
1091: subPartyList = null;
1092: subscriberList = null;
1093: sbrList = null;
1094: owsbrList = null;
1095: seruattrList = null;
1096: axeSubscriberList = null;
1097: ewsdSubscriberList = null;
1098: nddOntList = null;
1099: ontList = null;
1100: ontServiceVoipList = null;
1101: ontOntPotsList = null;
1102: emsDevList = null;
1103: emsBoardList = null;
1104: emsPortList = null;
1105: emsOntList = null;
1106: emsOntSipInfoList = null;
1107: emsVoipPstnUserList = null;
1108: emsVagList = null;
1109: eventList = null;
1110: accessList = null;
1111: serviceRequestServiceList = null;
1112: serviceRequestList = null;
1113: serviceRequestAdministrativeIssueList = null;
1114: serviceRequestHistoryList = null;
1115: serviceRequestTypeList = null;
1116: serviceRequestOntList = null;
1117: serviceRequestOntDetailList = null;
1118: reportList = null;
1119: reportHistoryList = null;
1120:
1121: stopwatch.RecordElapsedMilliseconds("A");
1122:
1123: service = Ia.Ftn.Cl.Model.Business.NumberFormatConverter.Service(input.ToLower());
1124:
1125: if (Ia.Ftn.Cl.Model.Business.Service.ServiceHasEightDigitsAndIsWithinAllowedDomainList(service))
1126: {
1127: if (Ia.Ftn.Cl.Model.Business.Authority.NumberIsWithinFrameworkSiteDomainList(framework, service))
1128: {
1129: serviceList.Add(service);
1130:
1131: Ia.Ftn.Cl.Model.Business.Maintenance.Find.NumberTwo(ref stopwatch, framework, enqueueIntoMsmq, serviceList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
1132: }
1133: else
1134: {
1135: result.AddError("Number " + service + " is not in staff site domain (الرقم لا ينتمي لنطاقات المستخدم). ");
1136: }
1137: }
1138: else
1139: {
1140: result.AddError("The number \"" + input + "\" does not belong to the network (الرقم لا ينتمي للشبكة).");
1141: }
1142:
1143: stopwatch.RecordElapsedMilliseconds("M");
1144: }
1145:
1146: ////////////////////////////////////////////////////////////////////////////
1147:
1148: /// <summary>
1149: ///
1150: /// </summary>
1151: public static void Number(ref Ia.Cl.Models.Stopwatch stopwatch,
1152: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
1153: bool enqueueIntoMsmq,
1154: List<string> inputList,
1155: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
1156: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
1157: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
1158: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
1159: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
1160: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
1161: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
1162: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
1163: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
1164: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
1165: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
1166: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
1167: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
1168: out List<Ia.Ftn.Cl.Model.Ont> ontList,
1169: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
1170: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
1171: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
1172: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
1173: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
1174: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
1175: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
1176: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
1177: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
1178: out List<Ia.Ftn.Cl.Model.Event> eventList,
1179: out List<Ia.Ftn.Cl.Model.Access> accessList,
1180: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
1181: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
1182: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
1183: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
1184: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
1185: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
1186: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
1187: out List<Ia.Ftn.Cl.Model.Report> reportList,
1188: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
1189: out Ia.Cl.Models.Result result)
1190: {
1191: string service;
1192:
1193: var serviceList = new List<string>();
1194:
1195: result = new Ia.Cl.Models.Result();
1196:
1197: service2List = null;
1198: agcfGatewayRecordList = null;
1199: agcfEndpointList = null;
1200: mgwList = null;
1201: asbrList = null;
1202: subPartyList = null;
1203: subscriberList = null;
1204: sbrList = null;
1205: owsbrList = null;
1206: seruattrList = null;
1207: axeSubscriberList = null;
1208: ewsdSubscriberList = null;
1209: nddOntList = null;
1210: ontList = null;
1211: ontServiceVoipList = null;
1212: ontOntPotsList = null;
1213: emsDevList = null;
1214: emsBoardList = null;
1215: emsPortList = null;
1216: emsOntList = null;
1217: emsOntSipInfoList = null;
1218: emsVoipPstnUserList = null;
1219: emsVagList = null;
1220: eventList = null;
1221: accessList = null;
1222: serviceRequestServiceList = null;
1223: serviceRequestList = null;
1224: serviceRequestAdministrativeIssueList = null;
1225: serviceRequestHistoryList = null;
1226: serviceRequestTypeList = null;
1227: serviceRequestOntList = null;
1228: serviceRequestOntDetailList = null;
1229: reportList = null;
1230: reportHistoryList = null;
1231:
1232: foreach (var input in inputList)
1233: {
1234: service = Ia.Ftn.Cl.Model.Business.NumberFormatConverter.Service(input.ToLower());
1235:
1236: if (Ia.Ftn.Cl.Model.Business.Service.ServiceHasEightDigitsAndIsWithinAllowedDomainList(service))
1237: {
1238: if (Ia.Ftn.Cl.Model.Business.Authority.NumberIsWithinFrameworkSiteDomainList(framework, service))
1239: {
1240: serviceList.Add(service);
1241:
1242: Ia.Ftn.Cl.Model.Business.Maintenance.Find.NumberTwo(ref stopwatch, framework, enqueueIntoMsmq, serviceList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
1243: }
1244: else
1245: {
1246: result.AddError("Number " + service + " is not in staff site domain (الرقم لا ينتمي لنطاقات المستخدم). ");
1247: }
1248: }
1249: else
1250: {
1251: result.AddError("The number \"" + input + "\" does not belong to the network (الرقم لا ينتمي للشبكة).");
1252: }
1253: }
1254: }
1255:
1256: ////////////////////////////////////////////////////////////////////////////
1257:
1258: /// <summary>
1259: ///
1260: /// </summary>
1261: private static void NumberTwo(ref Ia.Cl.Models.Stopwatch stopwatch,
1262: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
1263: bool enqueueIntoMsmq,
1264: List<string> serviceList,
1265: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
1266: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
1267: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
1268: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
1269: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
1270: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
1271: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
1272: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
1273: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
1274: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
1275: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
1276: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
1277: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
1278: out List<Ia.Ftn.Cl.Model.Ont> ontList,
1279: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
1280: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
1281: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
1282: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
1283: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
1284: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
1285: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
1286: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
1287: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
1288: out List<Ia.Ftn.Cl.Model.Event> eventList,
1289: out List<Ia.Ftn.Cl.Model.Access> accessList,
1290: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
1291: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
1292: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
1293: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
1294: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
1295: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
1296: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
1297: out List<Ia.Ftn.Cl.Model.Report> reportList,
1298: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
1299: out Ia.Cl.Models.Result result)
1300: {
1301: service2List = null;
1302: agcfGatewayRecordList = null;
1303: agcfEndpointList = null;
1304: mgwList = null;
1305: asbrList = null;
1306: subPartyList = null;
1307: subscriberList = null;
1308: sbrList = null;
1309: owsbrList = null;
1310: seruattrList = null;
1311: axeSubscriberList = null;
1312: ewsdSubscriberList = null;
1313: nddOntList = null;
1314: ontList = null;
1315: ontServiceVoipList = null;
1316: ontOntPotsList = null;
1317: emsDevList = null;
1318: emsBoardList = null;
1319: emsPortList = null;
1320: emsOntList = null;
1321: emsOntSipInfoList = null;
1322: emsVoipPstnUserList = null;
1323: emsVagList = null;
1324: eventList = null;
1325: accessList = null;
1326: serviceRequestServiceList = null;
1327: serviceRequestList = null;
1328: serviceRequestAdministrativeIssueList = null;
1329: serviceRequestHistoryList = null;
1330: serviceRequestTypeList = null;
1331: serviceRequestOntList = null;
1332: serviceRequestOntDetailList = null;
1333: reportList = null;
1334: reportHistoryList = null;
1335:
1336: var serviceLongList = new List<long>();
1337: var numberList = new List<int>();
1338: var partyIdList = new List<string>();
1339: var prividUserList = new List<string>();
1340: var impuSipDomainList = new List<string>();
1341: var sipUserNameList = new List<string>();
1342: var serviceWithCountryCodeList = new List<string>();
1343: var serviceIdList = new List<string>();
1344:
1345: var subscriberIdList = new List<string>();
1346: var subPartyIdList = new List<string>();
1347: var agcfEndpointIdList = new List<string>();
1348: var agcfGatewayRecordIdList = new List<int>();
1349: var gatewayIdList = new List<int>();
1350:
1351: var asbrIdList = new List<string>();
1352: var mgwIdList = new List<string>();
1353:
1354: var sbrImpuList = new List<string>();
1355: var owsbrImpuList = new List<string>();
1356:
1357: var ontIdList = new List<string>();
1358: var ontOntPotsIdList = new List<string>();
1359: var ontServiceVoipIdList = new List<string>();
1360: var ontServiceVoipIpList = new List<string>();
1361:
1362: var ipList = new List<string>();
1363:
1364: var emsDevIdList = new List<int>();
1365: var emsBoardIdList = new List<string>();
1366: var emsPortIdList = new List<string>();
1367: var emsOntIdList = new List<string>();
1368: var emsVoipPstnUserIdList = new List<string>();
1369:
1370: result = new Ia.Cl.Models.Result();
1371:
1372: stopwatch.RecordElapsedMilliseconds("B");
1373:
1374: var switchVendorList = Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.SwitchVendorListByServiceList(serviceList);
1375:
1376: var serviceListHasANumberThatIsWithinMsanDomainList = Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinMsanDomainList(serviceList);
1377:
1378: try
1379: {
1380: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
1381:
1382: // Who uses serviceId: AxeSubscribers,EwsdSubscriners,Seruattrs,Service2,ServiceExemptions,ServiceRequestServices: Id is seviceId
1383: stopwatch.RecordElapsedMilliseconds("C0");
1384:
1385: var service2IdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.Service2IdListFromServiceIdList(serviceIdList);
1386: stopwatch.RecordElapsedMilliseconds("C1");
1387:
1388: if (switchVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia))
1389: {
1390: subscriberIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberIdListFromPartyIdList(partyIdList);
1391: stopwatch.RecordElapsedMilliseconds("C2");
1392:
1393: subPartyIdList = subscriberIdList; // Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberIdListFromPartyIdList(partyIdList);
1394:
1395: agcfEndpointIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfEndpointIdListFromPrividUserList(prividUserList);
1396: stopwatch.RecordElapsedMilliseconds("C4");
1397:
1398: agcfGatewayRecordIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordIdListFromAgcfEndpointIdList(agcfEndpointIdList);
1399: stopwatch.RecordElapsedMilliseconds("C5");
1400:
1401: gatewayIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.GatewayIdFromAgcfGatewayRecordIdListList(agcfGatewayRecordIdList);
1402:
1403: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
1404: }
1405:
1406: if (switchVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei))
1407: {
1408: if (Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinSoftXServer(serviceList))
1409: {
1410: asbrIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AsbrIdListFromImpuSipDomainList(impuSipDomainList);
1411: mgwIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.MgwIdListFromAsbrIdList(asbrIdList);
1412: }
1413:
1414: sbrImpuList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SbrImpuListFromImpuSipDomainList(impuSipDomainList);
1415: owsbrImpuList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OwSbrImpuListFromImpuSipDomainList(impuSipDomainList);
1416:
1417: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
1418: }
1419:
1420: stopwatch.RecordElapsedMilliseconds("D");
1421:
1422: var serviceRequestServiceIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestServiceIdListFromServiceIdList(serviceIdList);
1423: stopwatch.RecordElapsedMilliseconds("D2");
1424:
1425: var accessIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdListFromServiceIdList(serviceIdList);
1426: accessIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdListFromServiceRequestServiceIdList(serviceRequestServiceIdList));
1427: accessIdList = accessIdList.Distinct().ToList();
1428:
1429: stopwatch.RecordElapsedMilliseconds("D3");
1430:
1431: Ia.Ftn.Cl.Model.Data.Maintenance.Find.UpdateServiceListFromServiceRequestServiceIdOrService2IdList(service2IdList, ref serviceList);
1432: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
1433:
1434: stopwatch.RecordElapsedMilliseconds("D4");
1435:
1436: var reportIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportIdListFromServiceList(serviceList);
1437: stopwatch.RecordElapsedMilliseconds("D41");
1438:
1439: reportIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportIdListFromAccessIdList(accessIdList));
1440: stopwatch.RecordElapsedMilliseconds("D42");
1441:
1442: reportIdList = reportIdList.Distinct().ToList();
1443:
1444: var serviceRequestIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestIdListFromServiceAndRelatedChangedAndChangedToServiceList(serviceList);
1445: stopwatch.RecordElapsedMilliseconds("D52");
1446:
1447: serviceRequestIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestIdListFromServiceRequestServiceIdList(serviceRequestServiceIdList));
1448: stopwatch.RecordElapsedMilliseconds("D53");
1449:
1450: serviceRequestIdList = serviceRequestIdList.Distinct().ToList();
1451:
1452: stopwatch.RecordElapsedMilliseconds("D6");
1453:
1454: var serviceRequestAdministrativeIssueIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestAdministrativeIssueIdListFromServiceIdList(serviceIdList);
1455: stopwatch.RecordElapsedMilliseconds("D7");
1456:
1457: var serviceRequestHistoryIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestHistoryIdListFromServiceAndRelatedChangedAndChangedToServiceList(serviceList);
1458: stopwatch.RecordElapsedMilliseconds("D71");
1459:
1460: var serviceRequestTypeIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestTypeIdListFromServiceRequestIdList(serviceRequestIdList);
1461: stopwatch.RecordElapsedMilliseconds("D72");
1462:
1463: var serviceRequestOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntIdListFromAccessIdList(accessIdList);
1464: stopwatch.RecordElapsedMilliseconds("D73");
1465:
1466: stopwatch.RecordElapsedMilliseconds("D8");
1467:
1468: var nddOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntIdListFromAccessIdList(accessIdList);
1469: nddOntIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntIdListFromEmsOntSipInfoListAndEmsVoipPstnUserListByServiceList(serviceList));
1470: nddOntIdList = nddOntIdList.Distinct().ToList();
1471:
1472: var accessVendorList = Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.AccessVendorListByOntIdList(nddOntIdList);
1473:
1474: stopwatch.RecordElapsedMilliseconds("E");
1475:
1476: if (accessVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia))
1477: {
1478: ontIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntIdListFromNddOntIdList(nddOntIdList);
1479: ontOntPotsIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntOntPotsIdListFromOntIdList(ontIdList);
1480: ontServiceVoipIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipsIdListFromOntIdList(ontIdList);
1481: ontServiceVoipIpList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipIpList(ontServiceVoipIdList);
1482:
1483: stopwatch.RecordElapsedMilliseconds("E1");
1484:
1485: ipList = ontServiceVoipIpList;
1486: }
1487:
1488: if (accessVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei) || serviceListHasANumberThatIsWithinMsanDomainList)
1489: {
1490: emsOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntIdListFromNddOntIdList(nddOntIdList);
1491: stopwatch.RecordElapsedMilliseconds("E2");
1492:
1493: emsVoipPstnUserIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserIdListFromServiceList(serviceList);
1494: //emsVoipPstnUserIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserIdListFromEmsOntIdList(emsOntIdList)); will display other numbers, which is not appropriate
1495: //emsVoipPstnUserIdList = emsVoipPstnUserIdList.Distinct().ToList();
1496: stopwatch.RecordElapsedMilliseconds("E3");
1497:
1498: emsPortIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortIdListFromEmsOntIdList(emsOntIdList);
1499: emsPortIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortIdListFromEmsVoipPstnUserIdList(emsVoipPstnUserIdList));
1500: emsPortIdList = emsPortIdList.Distinct().ToList();
1501: stopwatch.RecordElapsedMilliseconds("E4");
1502:
1503: emsBoardIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardIdListFromEmsPortIdList(emsPortIdList);
1504: emsBoardIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardIdListFromAccessIdList(accessIdList));
1505: emsBoardIdList = emsBoardIdList.Distinct().ToList();
1506: stopwatch.RecordElapsedMilliseconds("E5");
1507:
1508: emsDevIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromEmsBoardIdList(emsBoardIdList);
1509: emsDevIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromAccessIdList(accessIdList));
1510: //emsDevIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromEmsVoipPstnUserIdList(emsVoipPstnUserIdList));
1511: emsDevIdList = emsDevIdList.Distinct().ToList();
1512: stopwatch.RecordElapsedMilliseconds("E6");
1513:
1514: ipList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntIpListFromNddOntIdList(nddOntIdList));
1515: ipList = ipList.Distinct().ToList();
1516: }
1517:
1518: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
1519:
1520: stopwatch.RecordElapsedMilliseconds("F");
1521:
1522: /////////////////////////////////
1523:
1524: agcfGatewayRecordList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordList(agcfGatewayRecordIdList);
1525: agcfEndpointList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfEndpointList(agcfEndpointIdList);
1526: subPartyList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubPartyList(subPartyIdList);
1527: subscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberList(subscriberIdList);
1528:
1529: mgwList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.MgwList(mgwIdList);
1530: asbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AsbrList(asbrIdList);
1531:
1532: sbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SbrList(sbrImpuList);
1533: owsbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OwsbrList(owsbrImpuList);
1534:
1535: stopwatch.RecordElapsedMilliseconds("G");
1536:
1537: if (Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinPstnThatUsesNpServerDomainList(serviceList))
1538: {
1539: seruattrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SeruattrListFromServiceIdList(serviceIdList);
1540: }
1541:
1542: axeSubscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AxeSubscriberListFromServiceIdList(serviceIdList);
1543: ewsdSubscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EwsdSubscriberListFromServiceIdList(serviceIdList);
1544:
1545: ontList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntList(ontIdList);
1546: ontOntPotsList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntOntPotsListFromOntOntPotsIdList(ontOntPotsIdList);
1547: ontServiceVoipList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipList(ontServiceVoipIdList);
1548:
1549: emsDevList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevList(emsDevIdList);
1550: emsBoardList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardList(emsBoardIdList);
1551: emsPortList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortList(emsPortIdList);
1552: emsOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntList(emsOntIdList);
1553:
1554: emsOntSipInfoList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntSipInfoListFromEmsOntIdListAndService(emsOntIdList, sipUserNameList);
1555: emsVoipPstnUserList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserList(emsVoipPstnUserIdList);
1556: emsVagList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.VagListFromEmsOntIdList(emsOntIdList);
1557:
1558: stopwatch.RecordElapsedMilliseconds("H");
1559:
1560: service2List = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceList(service2IdList);
1561: stopwatch.RecordElapsedMilliseconds("H2");
1562:
1563: nddOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntList(nddOntIdList);
1564: stopwatch.RecordElapsedMilliseconds("H3");
1565:
1566: accessList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessList(accessIdList);
1567: stopwatch.RecordElapsedMilliseconds("H4");
1568:
1569: serviceRequestServiceList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestServiceList(serviceRequestServiceIdList);
1570: stopwatch.RecordElapsedMilliseconds("H5");
1571:
1572: serviceRequestList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestList(serviceRequestIdList);
1573: stopwatch.RecordElapsedMilliseconds("H51");
1574:
1575: serviceRequestAdministrativeIssueList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestAdministrativeIssueList(serviceRequestAdministrativeIssueIdList);
1576: stopwatch.RecordElapsedMilliseconds("H52");
1577:
1578: serviceRequestHistoryList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestHistoryList(serviceRequestHistoryIdList);
1579: stopwatch.RecordElapsedMilliseconds("H53");
1580:
1581: serviceRequestTypeList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestTypeList(serviceRequestTypeIdList);
1582: stopwatch.RecordElapsedMilliseconds("H54");
1583:
1584: serviceRequestOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntList(serviceRequestOntIdList);
1585: stopwatch.RecordElapsedMilliseconds("H55");
1586:
1587: serviceRequestOntDetailList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntDetailFromServieListList(serviceList); // more appropriate to display records related to the service numbers only
1588: stopwatch.RecordElapsedMilliseconds("H66");
1589:
1590: reportList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportList(reportIdList);
1591: stopwatch.RecordElapsedMilliseconds("H7");
1592:
1593: if (enqueueIntoMsmq)
1594: {
1595: foreach (var service in serviceList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadService, service);
1596: foreach (var nddOnt in nddOntList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadAccess, nddOnt.Access.Name);
1597: foreach (var gatewayId in gatewayIdList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadGateway, gatewayId);
1598: }
1599:
1600: stopwatch.RecordElapsedMilliseconds("I");
1601: }
1602: catch (Exception ex)
1603: {
1604: stopwatch.RecordElapsedMilliseconds("Exception");
1605:
1606: result.AddError("Exception: Retrieval error of data for \"" + string.Join(", ", serviceList) + "\": " + ex.ToString());
1607: }
1608: }
1609:
1610: ////////////////////////////////////////////////////////////////////////////
1611: ////////////////////////////////////////////////////////////////////////////
1612:
1613: /// <summary>
1614: ///
1615: /// </summary>
1616: public static void OntName(ref Ia.Cl.Models.Stopwatch stopwatch,
1617: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
1618: bool enqueueIntoMsmq,
1619: string rawInput,
1620: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
1621: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
1622: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
1623: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
1624: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
1625: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
1626: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
1627: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
1628: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
1629: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
1630: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
1631: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
1632: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
1633: out List<Ia.Ftn.Cl.Model.Ont> ontList,
1634: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
1635: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
1636: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
1637: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
1638: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
1639: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
1640: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
1641: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
1642: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
1643: out List<Ia.Ftn.Cl.Model.Event> eventList,
1644: out List<Ia.Ftn.Cl.Model.Access> accessList,
1645: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
1646: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
1647: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
1648: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
1649: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
1650: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
1651: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
1652: out List<Ia.Ftn.Cl.Model.Report> reportList,
1653: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
1654: out Ia.Cl.Models.Result result)
1655: {
1656: string input;
1657: Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont nddOnt;
1658: List<string> accessIdList, nddOntIdList, ipList;
1659:
1660: ipList = new List<string>();
1661: nddOntIdList = new List<string>();
1662: accessIdList = new List<string>();
1663:
1664: result = new Ia.Cl.Models.Result();
1665:
1666: service2List = null;
1667: agcfGatewayRecordList = null;
1668: agcfEndpointList = null;
1669: mgwList = null;
1670: asbrList = null;
1671: subPartyList = null;
1672: subscriberList = null;
1673: sbrList = null;
1674: owsbrList = null;
1675: seruattrList = null;
1676: axeSubscriberList = null;
1677: ewsdSubscriberList = null;
1678: nddOntList = null;
1679: ontList = null;
1680: ontServiceVoipList = null;
1681: ontOntPotsList = null;
1682: emsDevList = null;
1683: emsBoardList = null;
1684: emsPortList = null;
1685: emsOntList = null;
1686: emsOntSipInfoList = null;
1687: emsVoipPstnUserList = null;
1688: emsVagList = null;
1689: eventList = null;
1690: accessList = null;
1691: serviceRequestServiceList = null;
1692: serviceRequestList = null;
1693: serviceRequestAdministrativeIssueList = null;
1694: serviceRequestHistoryList = null;
1695: serviceRequestTypeList = null;
1696: serviceRequestOntList = null;
1697: serviceRequestOntDetailList = null;
1698: reportList = null;
1699: reportHistoryList = null;
1700:
1701: input = rawInput.ToUpper();
1702:
1703: stopwatch.RecordElapsedMilliseconds("A");
1704:
1705: nddOnt = Ia.Ftn.Cl.Model.Business.Default.NddOntUsingExtractedAccessNameWithValidSymbolAndLegalFormatForPonAndOntFromValue(input);
1706:
1707: if (nddOnt != null)
1708: {
1709: if (Ia.Ftn.Cl.Model.Business.Authority.AccessNameIsWithinFrameworkSiteAreaSymbolList(framework, nddOnt.Access.Name))
1710: {
1711: try
1712: {
1713: ipList.Add(nddOnt.Ip);
1714:
1715: accessIdList.Add(nddOnt.Access.Id);
1716:
1717: nddOntIdList.Add(nddOnt.Id);
1718:
1719: stopwatch.RecordElapsedMilliseconds("B");
1720:
1721: OntNameOrPonNameOrPositionOrSerialOrPaci(ref stopwatch, enqueueIntoMsmq, nddOntIdList, accessIdList, ipList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList);
1722: }
1723: catch (Exception ex)
1724: {
1725: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
1726: }
1727: }
1728: else
1729: {
1730: result.AddError("Access " + nddOnt.Access.Name + " is not in staff site access list (رقم الجهاز لا ينتمي لمقسم المستخدم). ");
1731: }
1732: }
1733: else
1734: {
1735: result.AddError("The ONT \"" + rawInput + "\" does not belong to the network (الجهاز لا ينتمي للشبكة). ");
1736: }
1737: }
1738:
1739: ////////////////////////////////////////////////////////////////////////////
1740:
1741: /// <summary>
1742: ///
1743: /// </summary>
1744: public static void PonName(ref Ia.Cl.Models.Stopwatch stopwatch,
1745: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
1746: bool enqueueIntoMsmq,
1747: string rawInput,
1748: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
1749: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
1750: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
1751: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
1752: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
1753: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
1754: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
1755: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
1756: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
1757: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
1758: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
1759: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
1760: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
1761: out List<Ia.Ftn.Cl.Model.Ont> ontList,
1762: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
1763: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
1764: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
1765: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
1766: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
1767: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
1768: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
1769: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
1770: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
1771: out List<Ia.Ftn.Cl.Model.Event> eventList,
1772: out List<Ia.Ftn.Cl.Model.Access> accessList,
1773: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
1774: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
1775: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
1776: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
1777: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
1778: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
1779: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
1780: out List<Ia.Ftn.Cl.Model.Report> reportList,
1781: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
1782: out Ia.Cl.Models.Result result)
1783: {
1784: int oltId, ponNumber;
1785: string input, ponName;
1786: Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Pon nddPon;
1787: List<string> accessIdList, nddOntIdList, ipList;
1788:
1789: result = new Ia.Cl.Models.Result();
1790:
1791: service2List = null;
1792: agcfGatewayRecordList = null;
1793: agcfEndpointList = null;
1794: mgwList = null;
1795: asbrList = null;
1796: subPartyList = null;
1797: subscriberList = null;
1798: sbrList = null;
1799: owsbrList = null;
1800: seruattrList = null;
1801: axeSubscriberList = null;
1802: ewsdSubscriberList = null;
1803: nddOntList = null;
1804: ontList = null;
1805: ontServiceVoipList = null;
1806: ontOntPotsList = null;
1807: emsDevList = null;
1808: emsBoardList = null;
1809: emsPortList = null;
1810: emsOntList = null;
1811: emsOntSipInfoList = null;
1812: emsVoipPstnUserList = null;
1813: emsVagList = null;
1814: eventList = null;
1815: accessList = null;
1816: serviceRequestServiceList = null;
1817: serviceRequestList = null;
1818: serviceRequestAdministrativeIssueList = null;
1819: serviceRequestHistoryList = null;
1820: serviceRequestTypeList = null;
1821: serviceRequestOntList = null;
1822: serviceRequestOntDetailList = null;
1823: reportList = null;
1824: reportHistoryList = null;
1825:
1826: input = rawInput.ToUpper();
1827:
1828: ponName = Ia.Ftn.Cl.Model.Business.Default.ExtractPonNameWithValidSymbolAndLegalFormatForPonAndOntFromValue(input);
1829:
1830: nddPon = (from p in Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.PonList where p.Name == ponName select p).SingleOrDefault();
1831:
1832: if (nddPon != null)
1833: {
1834: oltId = nddPon.PonGroup.Olt.Id;
1835: ponNumber = nddPon.Number;
1836:
1837: try
1838: {
1839: ipList = new List<string>(); // pass empty
1840:
1841: accessIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdList(oltId, ponNumber);
1842:
1843: nddOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntIdList(oltId, ponNumber);
1844:
1845: OntNameOrPonNameOrPositionOrSerialOrPaci(ref stopwatch, enqueueIntoMsmq, nddOntIdList, accessIdList, ipList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList);
1846: }
1847: catch (Exception ex)
1848: {
1849: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
1850: }
1851: }
1852: else
1853: {
1854: result.AddError("The PON \"" + rawInput + "\" had a null values. ");
1855: }
1856: }
1857:
1858: ////////////////////////////////////////////////////////////////////////////
1859:
1860: /// <summary>
1861: ///
1862: /// </summary>
1863: public static void OntPosition(ref Ia.Cl.Models.Stopwatch stopwatch,
1864: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
1865: bool enqueueIntoMsmq,
1866: string rawInput,
1867: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
1868: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
1869: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
1870: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
1871: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
1872: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
1873: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
1874: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
1875: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
1876: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
1877: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
1878: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
1879: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
1880: out List<Ia.Ftn.Cl.Model.Ont> ontList,
1881: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
1882: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
1883: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
1884: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
1885: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
1886: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
1887: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
1888: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
1889: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
1890: out List<Ia.Ftn.Cl.Model.Event> eventList,
1891: out List<Ia.Ftn.Cl.Model.Access> accessList,
1892: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
1893: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
1894: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
1895: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
1896: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
1897: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
1898: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
1899: out List<Ia.Ftn.Cl.Model.Report> reportList,
1900: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
1901: out Ia.Cl.Models.Result result)
1902: {
1903: int oltId, ponNumber, ontInternalNumber;
1904: string input;
1905: Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont nddOnt;
1906: List<string> accessIdList, nddOntIdList, ipList;
1907:
1908: ipList = new List<string>();
1909:
1910: result = new Ia.Cl.Models.Result();
1911:
1912: service2List = null;
1913: agcfGatewayRecordList = null;
1914: agcfEndpointList = null;
1915: mgwList = null;
1916: asbrList = null;
1917: subPartyList = null;
1918: subscriberList = null;
1919: sbrList = null;
1920: owsbrList = null;
1921: seruattrList = null;
1922: axeSubscriberList = null;
1923: ewsdSubscriberList = null;
1924: nddOntList = null;
1925: ontList = null;
1926: ontServiceVoipList = null;
1927: ontOntPotsList = null;
1928: emsDevList = null;
1929: emsBoardList = null;
1930: emsPortList = null;
1931: emsOntList = null;
1932: emsOntSipInfoList = null;
1933: emsVoipPstnUserList = null;
1934: emsVagList = null;
1935: eventList = null;
1936: accessList = null;
1937: serviceRequestServiceList = null;
1938: serviceRequestList = null;
1939: serviceRequestAdministrativeIssueList = null;
1940: serviceRequestHistoryList = null;
1941: serviceRequestTypeList = null;
1942: serviceRequestOntList = null;
1943: serviceRequestOntDetailList = null;
1944: reportList = null;
1945: reportHistoryList = null;
1946:
1947: input = rawInput.ToUpper();
1948:
1949: nddOnt = Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.OntByPosition(input);
1950:
1951: if (nddOnt != null)
1952: {
1953: oltId = nddOnt.Pon.PonGroup.Olt.Id;
1954: ponNumber = nddOnt.Pon.Number;
1955: ontInternalNumber = nddOnt.InternalNumber;
1956:
1957: try
1958: {
1959: ipList.Add(nddOnt.Ip);
1960:
1961: accessIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdList(oltId, ponNumber, ontInternalNumber);
1962:
1963: nddOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntIdList(oltId, ponNumber, ontInternalNumber);
1964:
1965: OntNameOrPonNameOrPositionOrSerialOrPaci(ref stopwatch, enqueueIntoMsmq, nddOntIdList, accessIdList, ipList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList);
1966: }
1967: catch (Exception ex)
1968: {
1969: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
1970: }
1971: }
1972: else
1973: {
1974: result.AddError("The ONT position \"" + rawInput + "\" was not found in the network. ");
1975: }
1976: }
1977:
1978: ////////////////////////////////////////////////////////////////////////////
1979:
1980: /// <summary>
1981: ///
1982: /// </summary>
1983: public static void MsanDevLicPosition(ref Ia.Cl.Models.Stopwatch stopwatch,
1984: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
1985: bool enqueueIntoMsmq,
1986: string input,
1987: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
1988: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
1989: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
1990: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
1991: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
1992: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
1993: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
1994: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
1995: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
1996: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
1997: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
1998: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
1999: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
2000: out List<Ia.Ftn.Cl.Model.Ont> ontList,
2001: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
2002: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
2003: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
2004: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
2005: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
2006: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
2007: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
2008: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
2009: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
2010: out List<Ia.Ftn.Cl.Model.Event> eventList,
2011: out List<Ia.Ftn.Cl.Model.Access> accessList,
2012: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
2013: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
2014: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
2015: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
2016: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
2017: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
2018: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
2019: out List<Ia.Ftn.Cl.Model.Report> reportList,
2020: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
2021: out Ia.Cl.Models.Result result)
2022: {
2023: string service;
2024:
2025: var serviceList = new List<string>();
2026:
2027: result = new Ia.Cl.Models.Result();
2028:
2029: service2List = null;
2030: agcfGatewayRecordList = null;
2031: agcfEndpointList = null;
2032: mgwList = null;
2033: asbrList = null;
2034: subPartyList = null;
2035: subscriberList = null;
2036: sbrList = null;
2037: owsbrList = null;
2038: seruattrList = null;
2039: axeSubscriberList = null;
2040: ewsdSubscriberList = null;
2041: nddOntList = null;
2042: ontList = null;
2043: ontServiceVoipList = null;
2044: ontOntPotsList = null;
2045: emsDevList = null;
2046: emsBoardList = null;
2047: emsPortList = null;
2048: emsOntList = null;
2049: emsOntSipInfoList = null;
2050: emsVoipPstnUserList = null;
2051: emsVagList = null;
2052: eventList = null;
2053: accessList = null;
2054: serviceRequestServiceList = null;
2055: serviceRequestList = null;
2056: serviceRequestAdministrativeIssueList = null;
2057: serviceRequestHistoryList = null;
2058: serviceRequestTypeList = null;
2059: serviceRequestOntList = null;
2060: serviceRequestOntDetailList = null;
2061: reportList = null;
2062: reportHistoryList = null;
2063:
2064: stopwatch.RecordElapsedMilliseconds("A");
2065:
2066: var lic = Ia.Ftn.Cl.Model.Business.Huawei.Dev.MsanDev.Lic.Parse(input);
2067:
2068: if (lic != null)
2069: {
2070: service = lic.Service;
2071:
2072: if (Ia.Ftn.Cl.Model.Business.Service.ServiceHasEightDigitsAndIsWithinAllowedDomainList(service))
2073: {
2074: if (Ia.Ftn.Cl.Model.Business.Authority.NumberIsWithinFrameworkSiteDomainList(framework, service))
2075: {
2076: serviceList.Add(service);
2077:
2078: Ia.Ftn.Cl.Model.Business.Maintenance.Find.NumberTwo(ref stopwatch, framework, enqueueIntoMsmq, serviceList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList, out result);
2079: }
2080: else
2081: {
2082: result.AddError("Number " + service + " is not in staff site domain (الرقم لا ينتمي لنطاقات المستخدم). ");
2083: }
2084: }
2085: else
2086: {
2087: result.AddError("The number \"" + input + "\" does not belong to the network (الرقم لا ينتمي للشبكة).");
2088: }
2089:
2090: stopwatch.RecordElapsedMilliseconds("M");
2091: }
2092: else
2093: {
2094: result.AddError("The LIC \"" + input + "\" is empty or does not belong to the network (رقم الربط شاغر أو لا ينتمي للشبكة).");
2095: }
2096: }
2097:
2098: ////////////////////////////////////////////////////////////////////////////
2099:
2100: /// <summary>
2101: ///
2102: /// </summary>
2103: public static void Serial(ref Ia.Cl.Models.Stopwatch stopwatch,
2104: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
2105: bool enqueueIntoMsmq,
2106: string rawInput,
2107: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
2108: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
2109: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
2110: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
2111: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
2112: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
2113: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
2114: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
2115: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
2116: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
2117: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
2118: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
2119: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
2120: out List<Ia.Ftn.Cl.Model.Ont> ontList,
2121: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
2122: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
2123: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
2124: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
2125: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
2126: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
2127: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
2128: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
2129: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
2130: out List<Ia.Ftn.Cl.Model.Event> eventList,
2131: out List<Ia.Ftn.Cl.Model.Access> accessList,
2132: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
2133: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
2134: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
2135: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
2136: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
2137: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
2138: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
2139: out List<Ia.Ftn.Cl.Model.Report> reportList,
2140: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
2141: out Ia.Cl.Models.Result result)
2142: {
2143: string input;
2144: Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor accessVendor;
2145: List<string> accessIdList, nddOntIdList, ipList;
2146:
2147: result = new Ia.Cl.Models.Result();
2148:
2149: service2List = null;
2150: agcfGatewayRecordList = null;
2151: agcfEndpointList = null;
2152: mgwList = null;
2153: asbrList = null;
2154: subPartyList = null;
2155: subscriberList = null;
2156: sbrList = null;
2157: owsbrList = null;
2158: seruattrList = null;
2159: axeSubscriberList = null;
2160: ewsdSubscriberList = null;
2161: nddOntList = null;
2162: ontList = null;
2163: ontServiceVoipList = null;
2164: ontOntPotsList = null;
2165: emsDevList = null;
2166: emsBoardList = null;
2167: emsPortList = null;
2168: emsOntList = null;
2169: emsOntSipInfoList = null;
2170: emsVoipPstnUserList = null;
2171: emsVagList = null;
2172: eventList = null;
2173: accessList = null;
2174: serviceRequestServiceList = null;
2175: serviceRequestList = null;
2176: serviceRequestAdministrativeIssueList = null;
2177: serviceRequestHistoryList = null;
2178: serviceRequestTypeList = null;
2179: serviceRequestOntList = null;
2180: serviceRequestOntDetailList = null;
2181: reportList = null;
2182: reportHistoryList = null;
2183:
2184: input = rawInput;
2185:
2186: if (Ia.Ftn.Cl.Model.Business.Nokia.Ont.IsValidSerialNumber(input))
2187: {
2188: accessVendor = Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia;
2189:
2190: accessIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdListFromOntSerial(input.ToUpper());
2191: }
2192: else if (Ia.Ftn.Cl.Model.Business.Huawei.Ont.IsValidSerialNumber(input))
2193: {
2194: accessVendor = Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei;
2195:
2196: accessIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdListFromEmsOntSerial(input.ToUpper());
2197: }
2198: else
2199: {
2200: accessVendor = Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Undefined;
2201:
2202: accessIdList = new List<string>();
2203: }
2204:
2205: if (accessVendor == Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia || accessVendor == Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei)
2206: {
2207: if (accessIdList.Count > 0)
2208: {
2209: nddOntIdList = new List<string>();
2210: ipList = new List<string>();
2211:
2212: try
2213: {
2214: OntNameOrPonNameOrPositionOrSerialOrPaci(ref stopwatch, enqueueIntoMsmq, nddOntIdList, accessIdList, ipList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList);
2215: }
2216: catch (Exception ex)
2217: {
2218: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
2219: }
2220: }
2221: else
2222: {
2223: result.AddError("Did not find any accesses with serial number " + input.ToUpper() + " (لا يوجد جهاز برقم تسلسل). ");
2224: }
2225: }
2226: else
2227: {
2228: result.AddError("Access vendor is undefined (مزود الجهاز غير معرف). ");
2229: }
2230: }
2231:
2232: ////////////////////////////////////////////////////////////////////////////
2233:
2234: /// <summary>
2235: ///
2236: /// </summary>
2237: public static void Paci(ref Ia.Cl.Models.Stopwatch stopwatch,
2238: Ia.Ftn.Cl.Model.Business.Administration.Framework framework,
2239: bool enqueueIntoMsmq,
2240: string rawInput,
2241: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
2242: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
2243: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
2244: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
2245: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
2246: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
2247: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
2248: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
2249: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
2250: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
2251: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
2252: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
2253: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
2254: out List<Ia.Ftn.Cl.Model.Ont> ontList,
2255: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
2256: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
2257: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
2258: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
2259: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
2260: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
2261: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
2262: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
2263: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
2264: out List<Ia.Ftn.Cl.Model.Event> eventList,
2265: out List<Ia.Ftn.Cl.Model.Access> accessList,
2266: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
2267: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
2268: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
2269: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
2270: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
2271: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
2272: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
2273: out List<Ia.Ftn.Cl.Model.Report> reportList,
2274: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList,
2275: out Ia.Cl.Models.Result result)
2276: {
2277: string input;
2278: List<string> accessIdList, nddOntIdList, ipList;
2279:
2280: result = new Ia.Cl.Models.Result();
2281:
2282: service2List = null;
2283: agcfGatewayRecordList = null;
2284: agcfEndpointList = null;
2285: mgwList = null;
2286: asbrList = null;
2287: subPartyList = null;
2288: subscriberList = null;
2289: sbrList = null;
2290: owsbrList = null;
2291: seruattrList = null;
2292: axeSubscriberList = null;
2293: ewsdSubscriberList = null;
2294: nddOntList = null;
2295: ontList = null;
2296: ontServiceVoipList = null;
2297: ontOntPotsList = null;
2298: emsDevList = null;
2299: emsBoardList = null;
2300: emsPortList = null;
2301: emsOntList = null;
2302: emsOntSipInfoList = null;
2303: emsVoipPstnUserList = null;
2304: emsVagList = null;
2305: eventList = null;
2306: accessList = null;
2307: serviceRequestServiceList = null;
2308: serviceRequestList = null;
2309: serviceRequestAdministrativeIssueList = null;
2310: serviceRequestHistoryList = null;
2311: serviceRequestTypeList = null;
2312: serviceRequestOntList = null;
2313: serviceRequestOntDetailList = null;
2314: reportList = null;
2315: reportHistoryList = null;
2316:
2317: input = rawInput.ToLower();
2318:
2319: if (int.TryParse(input, out int paci))
2320: {
2321: accessIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessIdListFromPaci(paci);
2322:
2323: if (accessIdList.Count > 0)
2324: {
2325: nddOntIdList = new List<string>();
2326: ipList = new List<string>();
2327:
2328: try
2329: {
2330: OntNameOrPonNameOrPositionOrSerialOrPaci(ref stopwatch, enqueueIntoMsmq, nddOntIdList, accessIdList, ipList, out service2List, out agcfGatewayRecordList, out agcfEndpointList, out mgwList, out asbrList, out subPartyList, out subscriberList, out sbrList, out owsbrList, out seruattrList, out axeSubscriberList, out ewsdSubscriberList, out nddOntList, out ontList, out ontServiceVoipList, out ontOntPotsList, out emsDevList, out emsBoardList, out emsPortList, out emsOntList, out emsOntSipInfoList, out emsVoipPstnUserList, out emsVagList, out eventList, out accessList, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out serviceRequestTypeList, out serviceRequestOntList, out serviceRequestOntDetailList, out reportList, out reportHistoryList);
2331: }
2332: catch (Exception ex)
2333: {
2334: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
2335: }
2336: }
2337: else result.AddError("Did not find any accesses with PACI number " + input.ToUpper() + " (لا يوجد أي جهاز بالرقم المدني). ");
2338: }
2339: else result.AddError("Input format is unknown (قيمة غير مفهومة). ");
2340: }
2341:
2342: ////////////////////////////////////////////////////////////////////////////
2343:
2344: /// <summary>
2345: ///
2346: /// </summary>
2347: public static void OntNameOrPonNameOrPositionOrSerialOrPaci(ref Ia.Cl.Models.Stopwatch stopwatch,
2348: bool enqueueIntoMsmq,
2349: List<string> nddOntIdList,
2350: List<string> accessIdList,
2351: List<string> ipList,
2352: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
2353: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfGatewayRecord> agcfGatewayRecordList,
2354: out List<Ia.Ftn.Cl.Model.Ui.Nokia.AgcfEndpoint> agcfEndpointList,
2355: out List<Ia.Ftn.Cl.Model.Huawei.Mgw> mgwList,
2356: out List<Ia.Ftn.Cl.Model.Huawei.Asbr> asbrList,
2357: out List<Ia.Ftn.Cl.Model.Ui.Nokia.SubParty> subPartyList,
2358: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
2359: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
2360: out List<Ia.Ftn.Cl.Model.Huawei.Owsbr> owsbrList,
2361: out List<Ia.Ftn.Cl.Model.Huawei.Seruattr> seruattrList,
2362: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
2363: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
2364: out List<Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Ont> nddOntList,
2365: out List<Ia.Ftn.Cl.Model.Ont> ontList,
2366: out List<Ia.Ftn.Cl.Model.OntServiceVoip> ontServiceVoipList,
2367: out List<Ia.Ftn.Cl.Model.OntOntPots> ontOntPotsList,
2368: out List<Ia.Ftn.Cl.Model.Huawei.EmsDev> emsDevList,
2369: out List<Ia.Ftn.Cl.Model.Huawei.EmsBoard> emsBoardList,
2370: out List<Ia.Ftn.Cl.Model.Huawei.EmsPort> emsPortList,
2371: out List<Ia.Ftn.Cl.Model.Ui.Huawei.EmsOnt> emsOntList,
2372: out List<Ia.Ftn.Cl.Model.Huawei.EmsOntSipInfo> emsOntSipInfoList,
2373: out List<Ia.Ftn.Cl.Model.Huawei.EmsVoipPstnUser> emsVoipPstnUserList,
2374: out List<Ia.Ftn.Cl.Model.Huawei.EmsVag> emsVagList,
2375: out List<Ia.Ftn.Cl.Model.Event> amsEventList,
2376: out List<Ia.Ftn.Cl.Model.Access> accessList,
2377: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
2378: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
2379: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
2380: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
2381: out List<Ia.Ftn.Cl.Model.ServiceRequestType> serviceRequestTypeList,
2382: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
2383: out List<Ia.Ftn.Cl.Model.ServiceRequestOntDetail> serviceRequestOntDetailList,
2384: out List<Ia.Ftn.Cl.Model.Report> reportList,
2385: out List<Ia.Ftn.Cl.Model.ReportHistory> reportHistoryList)
2386: {
2387: service2List = null;
2388: agcfGatewayRecordList = null;
2389: agcfEndpointList = null;
2390: mgwList = null;
2391: asbrList = null;
2392: subPartyList = null;
2393: subscriberList = null;
2394: sbrList = null;
2395: owsbrList = null;
2396: seruattrList = null;
2397: axeSubscriberList = null;
2398: ewsdSubscriberList = null;
2399: nddOntList = null;
2400: ontList = null;
2401: ontServiceVoipList = null;
2402: ontOntPotsList = null;
2403: emsDevList = null;
2404: emsBoardList = null;
2405: emsPortList = null;
2406: emsOntList = null;
2407: emsOntSipInfoList = null;
2408: emsVoipPstnUserList = null;
2409: emsVagList = null;
2410: amsEventList = null;
2411: accessList = null;
2412: serviceRequestServiceList = null;
2413: serviceRequestList = null;
2414: serviceRequestAdministrativeIssueList = null;
2415: serviceRequestHistoryList = null;
2416: serviceRequestTypeList = null;
2417: serviceRequestOntList = null;
2418: serviceRequestOntDetailList = null;
2419: reportList = null;
2420: reportHistoryList = null;
2421:
2422: var serviceList = new List<string>();
2423: var serviceLongList = new List<long>();
2424: var numberList = new List<int>();
2425: var partyIdList = new List<string>();
2426: var prividUserList = new List<string>();
2427: var impuSipDomainList = new List<string>();
2428: var sipUserNameList = new List<string>();
2429: var serviceWithCountryCodeList = new List<string>();
2430: var serviceIdList = new List<string>();
2431:
2432: var subscriberIdList = new List<string>();
2433: var subPartyIdList = new List<string>();
2434: var agcfEndpointIdList = new List<string>();
2435: var agcfGatewayRecordIdList = new List<int>();
2436: var gatewayIdList = new List<int>();
2437:
2438: var asbrIdList = new List<string>();
2439: var mgwIdList = new List<string>();
2440:
2441: var sbrImpuList = new List<string>();
2442: var owsbrImpuList = new List<string>();
2443:
2444: var ontIdList = new List<string>();
2445: var ontOntPotsIdList = new List<string>();
2446: var ontServiceVoipIdList = new List<string>();
2447: var ontServiceVoipIpList = new List<string>();
2448:
2449: var emsDevIdList = new List<int>();
2450: var emsBoardIdList = new List<string>();
2451: var emsPortIdList = new List<string>();
2452: var emsOntIdList = new List<string>();
2453: var emsVoipPstnUserIdList = new List<string>();
2454:
2455: stopwatch.RecordElapsedMilliseconds("C");
2456:
2457: nddOntIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntIdListFromAccessIdList(accessIdList));
2458: nddOntIdList = nddOntIdList.Distinct().ToList();
2459:
2460: var accessVendorList = Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.AccessVendorListByOntIdList(nddOntIdList);
2461: var switchVendorList = Ia.Ftn.Cl.Model.Data.NetworkDesignDocument.SwitchVendorListByOntIdList(nddOntIdList);
2462:
2463: stopwatch.RecordElapsedMilliseconds("D");
2464:
2465: var service2IdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceIdListFromAccessIdList(accessIdList);
2466:
2467: stopwatch.RecordElapsedMilliseconds("E");
2468:
2469: Ia.Ftn.Cl.Model.Data.Maintenance.Find.UpdateServiceListFromServiceRequestServiceIdOrService2IdList(service2IdList, ref serviceList);
2470: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
2471:
2472:
2473: stopwatch.RecordElapsedMilliseconds("F");
2474:
2475: if (accessVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia))
2476: {
2477: ontIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntIdListFromNddOntIdList(nddOntIdList);
2478: ontOntPotsIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntOntPotsIdListFromOntIdList(ontIdList);
2479: ontServiceVoipIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipsIdListFromOntIdList(ontIdList);
2480: ontServiceVoipIpList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipIpList(ontServiceVoipIdList);
2481: //amsEventIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EventIdListFromNddOntIdList(nddOntIdList, 10);
2482:
2483: ipList.AddRange(ontServiceVoipIpList);
2484: ipList = ipList.Distinct().ToList();
2485: }
2486:
2487: stopwatch.RecordElapsedMilliseconds("G");
2488:
2489: var serviceListHasANumberThatIsWithinMsanDomainList = Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinMsanDomainList(serviceList);
2490:
2491: if (accessVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei) || serviceListHasANumberThatIsWithinMsanDomainList)
2492: {
2493: emsOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntIdListFromNddOntIdList(nddOntIdList);
2494:
2495: stopwatch.RecordElapsedMilliseconds("H");
2496:
2497: emsVoipPstnUserIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserIdListFromEmsOntIdList(emsOntIdList);
2498: emsVoipPstnUserIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserIdListFromServiceList(serviceList));
2499: emsVoipPstnUserIdList = emsVoipPstnUserIdList.Distinct().ToList();
2500:
2501: stopwatch.RecordElapsedMilliseconds("I");
2502:
2503: emsPortIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortIdListFromEmsOntIdList(emsOntIdList);
2504: emsPortIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortIdListFromEmsVoipPstnUserIdList(emsVoipPstnUserIdList));
2505: emsPortIdList = emsPortIdList.Distinct().ToList();
2506:
2507: stopwatch.RecordElapsedMilliseconds("J");
2508:
2509: emsBoardIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardIdListFromEmsPortIdList(emsPortIdList);
2510: emsBoardIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardIdListFromAccessIdList(accessIdList));
2511: emsBoardIdList = emsBoardIdList.Distinct().ToList();
2512:
2513: stopwatch.RecordElapsedMilliseconds("K");
2514:
2515: emsDevIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromEmsBoardIdList(emsBoardIdList);
2516: emsDevIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromAccessIdList(accessIdList));
2517: //emsDevIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevIdListFromEmsVoipPstnUserIdList(emsVoipPstnUserIdList));
2518: emsDevIdList = emsDevIdList.Distinct().ToList();
2519:
2520: stopwatch.RecordElapsedMilliseconds("L");
2521:
2522: ipList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntIpListFromNddOntIdList(nddOntIdList));
2523: ipList = ipList.Distinct().ToList();
2524:
2525: stopwatch.RecordElapsedMilliseconds("M");
2526:
2527: Ia.Ftn.Cl.Model.Data.Maintenance.Find.CollectServiceListFromEmsOntSipInfoListAndEmsVoipPstnUserListByEmsOntIdList(emsOntIdList, ref serviceList);
2528: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
2529: }
2530:
2531: stopwatch.RecordElapsedMilliseconds("N");
2532:
2533: if (switchVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Nokia))
2534: {
2535: subscriberIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberIdListFromPartyIdList(partyIdList);
2536: subPartyIdList = subscriberIdList; // Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberIdListFromPartyIdList(partyIdList);
2537: agcfEndpointIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfEndpointIdListFromPrividUserList(prividUserList);
2538:
2539: stopwatch.RecordElapsedMilliseconds("O");
2540:
2541: agcfGatewayRecordIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordIdListFromAgcfEndpointIdList(agcfEndpointIdList);
2542: agcfGatewayRecordIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordIdListFromIpList(ipList));
2543: agcfGatewayRecordIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordIdListFromNddOntIdList(nddOntIdList));
2544: agcfGatewayRecordIdList = agcfGatewayRecordIdList.Distinct().ToList();
2545:
2546: stopwatch.RecordElapsedMilliseconds("O4");
2547:
2548: gatewayIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.GatewayIdFromAgcfGatewayRecordIdListList(agcfGatewayRecordIdList);
2549:
2550: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
2551: }
2552:
2553: stopwatch.RecordElapsedMilliseconds("P");
2554:
2555: var serviceRequestServiceIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestServiceIdListFromAccessIdList(accessIdList);
2556:
2557: stopwatch.RecordElapsedMilliseconds("Q");
2558:
2559: Ia.Ftn.Cl.Model.Data.Maintenance.Find.UpdateServiceListFromServiceRequestServiceIdOrService2IdList(serviceRequestServiceIdList, ref serviceList);
2560: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
2561:
2562: stopwatch.RecordElapsedMilliseconds("R");
2563:
2564: serviceRequestServiceIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestServiceIdListFromServiceIdList(serviceIdList));
2565: serviceRequestServiceIdList = serviceRequestServiceIdList.Distinct().ToList();
2566:
2567: stopwatch.RecordElapsedMilliseconds("S");
2568:
2569: var reportIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportIdListFromServiceList(serviceList);
2570: reportIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportIdListFromAccessIdList(accessIdList));
2571:
2572: stopwatch.RecordElapsedMilliseconds("T");
2573:
2574: service2IdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.Service2IdListFromServiceIdList(serviceIdList));
2575: service2IdList = service2IdList.Distinct().ToList();
2576:
2577: stopwatch.RecordElapsedMilliseconds("U");
2578:
2579: var serviceRequestIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestIdListFromServiceAndRelatedChangedAndChangedToServiceList(serviceList);
2580: serviceRequestIdList.AddRange(Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestIdListFromServiceRequestServiceIdList(serviceRequestServiceIdList));
2581: serviceRequestIdList = serviceRequestIdList.Distinct().ToList();
2582:
2583: stopwatch.RecordElapsedMilliseconds("V");
2584:
2585: var serviceRequestAdministrativeIssueIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestAdministrativeIssueIdListFromServiceIdList(serviceIdList);
2586:
2587: stopwatch.RecordElapsedMilliseconds("W");
2588:
2589: var serviceRequestHistoryIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestHistoryIdListFromServiceAndRelatedChangedAndChangedToServiceList(serviceList);
2590: var serviceRequestTypeIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestTypeIdListFromServiceRequestIdList(serviceRequestIdList);
2591: var serviceRequestOntIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntIdListFromAccessIdList(accessIdList);
2592:
2593: if (switchVendorList.Contains(Ia.Ftn.Cl.Model.Business.NetworkDesignDocument.Vendor.Huawei))
2594: {
2595: if (Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinSoftXServer(serviceList))
2596: {
2597: stopwatch.RecordElapsedMilliseconds("X");
2598: asbrIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AsbrIdListFromImpuSipDomainList(impuSipDomainList);
2599: stopwatch.RecordElapsedMilliseconds("X1");
2600: mgwIdList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.MgwIdListFromAsbrIdList(asbrIdList);
2601: stopwatch.RecordElapsedMilliseconds("X2");
2602: mgwIdList = mgwIdList.Union(Ia.Ftn.Cl.Model.Data.Maintenance.Find.MgwIdListFromIpList(ipList)).Distinct().ToList(); ;
2603: stopwatch.RecordElapsedMilliseconds("X3");
2604: }
2605:
2606: sbrImpuList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SbrImpuListFromImpuSipDomainList(impuSipDomainList);
2607: owsbrImpuList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OwSbrImpuListFromImpuSipDomainList(impuSipDomainList);
2608:
2609: Ia.Ftn.Cl.Model.Data.Maintenance.Find.SynchronizeNumberFormatLists(ref partyIdList, ref prividUserList, ref serviceList, ref numberList, ref serviceLongList, ref impuSipDomainList, ref sipUserNameList, ref serviceWithCountryCodeList, ref serviceIdList);
2610: }
2611:
2612: stopwatch.RecordElapsedMilliseconds("Z");
2613:
2614: /////////////////////////////////
2615:
2616: agcfGatewayRecordList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfGatewayRecordList(agcfGatewayRecordIdList);
2617: agcfEndpointList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AgcfEndpointList(agcfEndpointIdList);
2618: subPartyList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubPartyList(subPartyIdList);
2619: subscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SubscriberList(subscriberIdList);
2620:
2621: mgwList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.MgwList(mgwIdList);
2622: asbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AsbrList(asbrIdList);
2623:
2624: sbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SbrList(sbrImpuList);
2625: owsbrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OwsbrList(owsbrImpuList);
2626:
2627: if (Ia.Ftn.Cl.Model.Data.Service.ServiceListHasANumberThatIsWithinPstnThatUsesNpServerDomainList(serviceList))
2628: {
2629: seruattrList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.SeruattrListFromServiceIdList(serviceIdList);
2630: }
2631:
2632: axeSubscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AxeSubscriberListFromServiceIdList(serviceIdList);
2633: ewsdSubscriberList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EwsdSubscriberListFromServiceIdList(serviceIdList);
2634:
2635: ontList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntList(ontIdList);
2636: ontOntPotsList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntOntPotsListFromOntOntPotsIdList(ontOntPotsIdList);
2637: ontServiceVoipList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.OntServiceVoipList(ontServiceVoipIdList);
2638: //amsEventList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EventList(amsEventIdList);
2639:
2640: emsDevList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsDevList(emsDevIdList);
2641: emsBoardList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsBoardList(emsBoardIdList);
2642: emsPortList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsPortList(emsPortIdList);
2643: emsOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntList(emsOntIdList);
2644:
2645: emsOntSipInfoList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntSipInfoListFromEmsOntIdListAndService(emsOntIdList, sipUserNameList);
2646: emsVoipPstnUserList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserList(emsVoipPstnUserIdList);
2647: emsVagList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.VagListFromEmsOntIdList(emsOntIdList);
2648:
2649: /*
2650: emsOntSipInfoList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsOntSipInfoListFromEmsOntIdList(emsOntIdList);
2651: emsVoipPstnUserList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.EmsVoipPstnUserListFromEmsOntIdList(emsOntIdList);
2652: emsVagList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.VagListFromEmsOntIdList(emsOntIdList);
2653: */
2654:
2655: service2List = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceList(service2IdList);
2656:
2657: nddOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.NddOntList(nddOntIdList);
2658: accessList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessList(accessIdList);
2659:
2660: serviceRequestServiceList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestServiceList(serviceRequestServiceIdList);
2661:
2662: serviceRequestList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestList(serviceRequestIdList);
2663: serviceRequestAdministrativeIssueList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestAdministrativeIssueList(serviceRequestAdministrativeIssueIdList);
2664: serviceRequestHistoryList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestHistoryList(serviceRequestHistoryIdList);
2665: serviceRequestTypeList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestTypeList(serviceRequestTypeIdList);
2666: serviceRequestOntList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntList(serviceRequestOntIdList);
2667: serviceRequestOntDetailList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestOntDetailList(serviceRequestOntIdList);
2668:
2669: stopwatch.RecordElapsedMilliseconds("ZA");
2670:
2671: reportList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ReportList(reportIdList);
2672:
2673: if (enqueueIntoMsmq)
2674: {
2675: foreach (var v in serviceList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadService, v);
2676: foreach (var v in nddOntList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadAccess, v.Access.Name);
2677: foreach (var v in gatewayIdList) Ia.Ftn.Cl.Model.Data.Msmq.SecretaryApplication.Enqueue(Ia.Ftn.Cl.Model.Business.Msmq.Application.FtnApplication, Ia.Ftn.Cl.Model.Business.Msmq.Process.ReadGateway, v);
2678: }
2679: }
2680:
2681: ////////////////////////////////////////////////////////////////////////////
2682: ////////////////////////////////////////////////////////////////////////////
2683:
2684: /// <summary>
2685: ///
2686: /// </summary>
2687: public static void MigrationReview(Ia.Ftn.Cl.Model.Business.Administration.Framework framework, string accessName, List<string> serviceList,
2688: out List<Ia.Ftn.Cl.Model.Ui.Service2> service2List,
2689: out List<Ia.Ftn.Cl.Model.Ui.Nokia.Subscriber> subscriberList,
2690: out List<Ia.Ftn.Cl.Model.Ui.Huawei.Sbr> sbrList,
2691: out List<Ia.Ftn.Cl.Model.Ericsson.AxeSubscriber> axeSubscriberList,
2692: out List<Ia.Ftn.Cl.Model.Siemens.EwsdSubscriber> ewsdSubscriberList,
2693: out List<Ia.Ftn.Cl.Model.Access> accessList,
2694: out List<Ia.Ftn.Cl.Model.Ui.ServiceRequestService> serviceRequestServiceList,
2695: out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList,
2696: out List<Ia.Ftn.Cl.Model.ServiceRequestAdministrativeIssue> serviceRequestAdministrativeIssueList,
2697: out List<Ia.Ftn.Cl.Model.ServiceRequestHistory> serviceRequestHistoryList,
2698: out List<Ia.Ftn.Cl.Model.ServiceRequestOnt> serviceRequestOntList,
2699: out Ia.Cl.Models.Result result)
2700: {
2701: string input;
2702:
2703: service2List = null;
2704: subscriberList = null;
2705: sbrList = null;
2706: axeSubscriberList = null;
2707: ewsdSubscriberList = null;
2708: accessList = null;
2709: serviceRequestServiceList = null;
2710: serviceRequestList = null;
2711: serviceRequestAdministrativeIssueList = null;
2712: serviceRequestHistoryList = null;
2713: serviceRequestOntList = null;
2714:
2715: var stopwatch = new Ia.Cl.Models.Stopwatch();
2716:
2717: result = new Ia.Cl.Models.Result();
2718:
2719: if (!string.IsNullOrEmpty(accessName))
2720: {
2721: accessName = accessName.Trim().ToUpper();
2722: input = accessName;
2723:
2724: if (input.Length > 0)
2725: {
2726: Ia.Ftn.Cl.Model.Business.Maintenance.Find.OntName(ref stopwatch, framework, true, accessName, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out accessList, out _, out _, out _, out _, out _, out serviceRequestOntList, out _, out _, out _, out Ia.Cl.Models.Result result1);
2727:
2728: Ia.Ftn.Cl.Model.Business.Maintenance.Find.Number(ref stopwatch, framework, true, serviceList, out service2List, out _, out _, out _, out _, out _, out subscriberList, out sbrList, out _, out _, out axeSubscriberList, out ewsdSubscriberList, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out _, out serviceRequestServiceList, out serviceRequestList, out serviceRequestAdministrativeIssueList, out serviceRequestHistoryList, out _, out _, out _, out _, out _, out Ia.Cl.Models.Result result2);
2729:
2730: if (
2731: (service2List == null || service2List != null && service2List.Count == 0) &&
2732: (subscriberList == null || subscriberList != null && subscriberList.Count == 0) &&
2733: (sbrList == null || sbrList != null && sbrList.Count == 0) &&
2734: (axeSubscriberList == null || axeSubscriberList != null && axeSubscriberList.Count == 0) &&
2735: (ewsdSubscriberList == null || ewsdSubscriberList != null && ewsdSubscriberList.Count == 0) &&
2736: (accessList == null || accessList != null && accessList.Count == 0) &&
2737: (serviceRequestServiceList == null || serviceRequestServiceList != null && serviceRequestServiceList.Count == 0) &&
2738: (serviceRequestList == null || serviceRequestList != null && serviceRequestList.Count == 0) &&
2739: (serviceRequestAdministrativeIssueList == null || serviceRequestAdministrativeIssueList != null && serviceRequestAdministrativeIssueList.Count == 0) &&
2740: (serviceRequestHistoryList == null || serviceRequestHistoryList != null && serviceRequestHistoryList.Count == 0) &&
2741: (serviceRequestOntList == null || serviceRequestOntList != null && serviceRequestOntList.Count == 0))
2742: {
2743: if (result.IsSuccessful)
2744: {
2745: result.AddWarning("No data records were found for \"" + accessName + "\" (لا توجد معلومات عن القيمة المعطاة). ");
2746: }
2747: else { };// result.AddError(result.Error);
2748: }
2749: else
2750: {
2751: /*
2752: if (result.IsSuccessful)
2753: {
2754: if (!string.IsNullOrEmpty(result.Message)) result.AddSuccess(result.Message);
2755: }
2756: //else result.AddError(result.Error);
2757: */
2758: }
2759: }
2760: else result.AddError("No input was entered (لم يتم إدخال أي شيء). ");
2761: }
2762: else result.AddError("Input is null or empty (لم يتم إدخال أي شيء). ");
2763: }
2764:
2765: ////////////////////////////////////////////////////////////////////////////
2766:
2767: /// <summary>
2768: ///
2769: /// </summary>
2770: public static void BulkSearch(string rawInput, out List<Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessName> serviceAccessNameList, out Ia.Cl.Models.Result result)
2771: {
2772: bool inputIsValid;
2773: string input;
2774:
2775: //inputIsValid = false;
2776: //result = null;
2777:
2778: serviceAccessNameList = null;
2779:
2780: result = new Ia.Cl.Models.Result();
2781:
2782: if (!string.IsNullOrEmpty(rawInput))
2783: {
2784: rawInput = rawInput.Trim();
2785: input = rawInput;
2786:
2787: if (input.Length > 0)
2788: {
2789: inputIsValid = true;
2790:
2791: Ia.Ftn.Cl.Model.Business.Maintenance.Find.NumberStringListToAccessNameList(rawInput, out serviceAccessNameList, out result);
2792:
2793:
2794: //var v = Ia.Ftn.Cl.Model.Data.Access.IdToAccessDictionary;
2795:
2796: if (inputIsValid)
2797: {
2798: if (serviceAccessNameList == null || serviceAccessNameList != null && serviceAccessNameList.Count == 0)
2799: {
2800: if (result.IsSuccessful)
2801: {
2802: result.AddWarning("No data records were found for \"" + rawInput + "\" (لا توجد معلومات عن القيمة أو القيم المعطاة)");
2803: }
2804: else { };// result.AddError(result.Error);
2805: }
2806: else
2807: {
2808: if (result.IsSuccessful)
2809: {
2810: if (!string.IsNullOrEmpty(result.Message)) result.AddSuccess(result.Message);
2811: }
2812: //else result.AddError(result.Error);
2813: }
2814: }
2815: else result.AddError("Input format is unknown (قيمة غير مفهومة)");
2816: }
2817: else result.AddError("No input was entered (لم يتم إدخال أي شيء)");
2818: }
2819: else result.AddError("Input is null or empty (لم يتم إدخال أي شيء)");
2820: }
2821:
2822: ////////////////////////////////////////////////////////////////////////////
2823:
2824: /// <summary>
2825: ///
2826: /// </summary>
2827: public static void BulkSearch(string rawInput, out List<Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessNameAddress> serviceAccessNameAddressList, out Ia.Cl.Models.Result result)
2828: {
2829: bool inputIsValid;
2830: string input;
2831:
2832: //inputIsValid = false;
2833: //result = null;
2834:
2835: serviceAccessNameAddressList = null;
2836:
2837: result = new Ia.Cl.Models.Result();
2838:
2839: if (!string.IsNullOrEmpty(rawInput))
2840: {
2841: rawInput = rawInput.Trim();
2842: input = rawInput.ToLower();
2843:
2844: if (input.Length > 0)
2845: {
2846: inputIsValid = true;
2847:
2848: Ia.Ftn.Cl.Model.Business.Maintenance.Find.NumberStringListToAccessNameAddressList(rawInput, out serviceAccessNameAddressList, out result);
2849:
2850: if (inputIsValid)
2851: {
2852: if (serviceAccessNameAddressList == null || serviceAccessNameAddressList != null && serviceAccessNameAddressList.Count == 0)
2853: {
2854: if (result.IsSuccessful)
2855: {
2856: result.AddWarning("No data records were found for \"" + rawInput + "\" (لا توجد معلومات عن القيمة أو القيم المعطاة). ");
2857: }
2858: else { };// result.AddError(result.Error);
2859: }
2860: else
2861: {
2862: if (result.IsSuccessful)
2863: {
2864: if (!string.IsNullOrEmpty(result.Message)) result.AddSuccess(result.Message);
2865: }
2866: //else result.AddError(result.Error);
2867: }
2868: }
2869: else result.AddError("Input format is unknown (قيمة غير مفهومة). ");
2870: }
2871: else result.AddError("No input was entered (لم يتم إدخال أي شيء). ");
2872: }
2873: else result.AddError("Input is null or empty (لم يتم إدخال أي شيء). ");
2874: }
2875:
2876: ////////////////////////////////////////////////////////////////////////////
2877:
2878: /// <summary>
2879: ///
2880: /// </summary>
2881: public static void NumberStringListToAccessNameList(string rawInput, out List<Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessName> serviceAccessNameList, out Ia.Cl.Models.Result result)
2882: {
2883: string input, serviceId;
2884: int number;
2885: string numberString;
2886: Dictionary<string, string> serviceToAccessNameDictionary;
2887: MatchCollection matchCollection;
2888: Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessName serviceAccessName;
2889:
2890: result = new Ia.Cl.Models.Result();
2891:
2892: serviceAccessNameList = new List<Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessName>();
2893:
2894: input = rawInput.ToLower();
2895:
2896: serviceToAccessNameDictionary = Ia.Ftn.Cl.Model.Data.Service2.ServiceIdToAccessNameDictionary;
2897:
2898: matchCollection = Regex.Matches(input, @"\d{8}");
2899:
2900: if (matchCollection.Count > 0)
2901: {
2902: foreach (Match match in matchCollection)
2903: {
2904: numberString = match.Value;
2905:
2906: number = int.Parse(numberString);
2907:
2908: if (Ia.Ftn.Cl.Model.Business.Service.ServiceHasEightDigitsAndIsWithinAllowedDomainList(number))
2909: {
2910: serviceAccessName = new Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessName();
2911:
2912: serviceId = numberString + ":1:965";
2913:
2914: serviceAccessName.Service = number.ToString();
2915:
2916: if (serviceToAccessNameDictionary.ContainsKey(serviceId))
2917: {
2918: serviceAccessName.AccessName = serviceToAccessNameDictionary[serviceId];
2919: }
2920:
2921: serviceAccessNameList.Add(serviceAccessName);
2922: }
2923: else
2924: {
2925: result.AddWarning("The number \"" + numberString + "\" does not belong to the network (الرقم لا ينتمي للشبكة).");
2926: }
2927: }
2928: }
2929: else
2930: {
2931: result.AddError("No input was entered (لم يتم إدخال أي شيء). ");
2932: }
2933: }
2934:
2935: ////////////////////////////////////////////////////////////////////////////
2936:
2937: /// <summary>
2938: ///
2939: /// </summary>
2940: public static void NumberStringListToAccessNameAddressList(string rawInput, out List<Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessNameAddress> serviceAccessNameAddressList, out Ia.Cl.Models.Result result)
2941: {
2942: string input, serviceId;
2943: int number;
2944: string numberString;
2945: MatchCollection matchCollection;
2946: Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessNameAddress serviceAccessNameAddress;
2947:
2948: result = new Ia.Cl.Models.Result();
2949:
2950: serviceAccessNameAddressList = new List<Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessNameAddress>();
2951:
2952: input = rawInput.ToLower();
2953:
2954: var serviceToAccessNameDictionary = Ia.Ftn.Cl.Model.Data.Service2.ServiceIdToAccessNameDictionary;
2955: var serviceIdToAccessIdDictionary = Ia.Ftn.Cl.Model.Data.Service2.ServiceIdToAccessIdDictionary;
2956: var accessIdToAccessDictionary = Ia.Ftn.Cl.Model.Data.Access.IdToAccessDictionary;
2957:
2958: matchCollection = Regex.Matches(input, @"\d{8}");
2959:
2960: if (matchCollection.Count > 0)
2961: {
2962: foreach (Match match in matchCollection)
2963: {
2964: numberString = match.Value;
2965:
2966: number = int.Parse(numberString);
2967:
2968: if (Ia.Ftn.Cl.Model.Business.Service.ServiceHasEightDigitsAndIsWithinAllowedDomainList(number))
2969: {
2970: serviceAccessNameAddress = new Ia.Ftn.Cl.Model.Business.ServiceNddOntAccessNameAddress();
2971:
2972: serviceId = numberString + ":1:965";
2973:
2974: serviceAccessNameAddress.Service = number.ToString();
2975:
2976: if (serviceToAccessNameDictionary.ContainsKey(serviceId))
2977: {
2978: serviceAccessNameAddress.AccessName = serviceToAccessNameDictionary[serviceId];
2979: }
2980:
2981: if (serviceIdToAccessIdDictionary.ContainsKey(serviceId))
2982: {
2983: var accessId = serviceIdToAccessIdDictionary[serviceId];
2984:
2985: if (accessIdToAccessDictionary.ContainsKey(accessId))
2986: {
2987: serviceAccessNameAddress.Address = accessIdToAccessDictionary[accessId].Address;
2988: }
2989: }
2990:
2991: serviceAccessNameAddressList.Add(serviceAccessNameAddress);
2992: }
2993: else
2994: {
2995: result.AddWarning("The number \"" + numberString + "\" does not belong to the network (الرقم لا ينتمي للشبكة).");
2996: }
2997: }
2998: }
2999: else
3000: {
3001: result.AddError("No input was entered (لم يتم إدخال أي شيء). ");
3002: }
3003: }
3004:
3005: ////////////////////////////////////////////////////////////////////////////
3006: ////////////////////////////////////////////////////////////////////////////
3007:
3008: /// <summary>
3009: ///
3010: /// </summary>
3011: public static void AreaBlock(string rawInput, out List<Ia.Ftn.Cl.Model.Access> accessList, out Ia.Cl.Models.Result result)
3012: {
3013: string input;
3014:
3015: result = new Ia.Cl.Models.Result();
3016: accessList = null;
3017:
3018: input = rawInput.ToLower();
3019:
3020: try
3021: {
3022: // note that this returns 0 int values for missing fields
3023: ExtractAreaBlockFromSearchAreaBlockTerm(input, out Ia.Ftn.Cl.Model.Business.Service.KuwaitFtnArea kuwaitFtnArea, out string block);
3024:
3025: if (kuwaitFtnArea != null)
3026: {
3027: //using (var db = new Ia.Ftn.Cl.Model.Ftn())
3028: //{
3029: accessList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessListFromAreaAndBlock(kuwaitFtnArea.Id, block);
3030: //}
3031: }
3032: else
3033: {
3034: result.AddError("The area of \"" + rawInput + "\" is unrecognized. ");
3035: }
3036: }
3037: catch (Exception ex)
3038: {
3039: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
3040: }
3041: }
3042:
3043: ////////////////////////////////////////////////////////////////////////////
3044:
3045: /// <summary>
3046: ///
3047: /// </summary>
3048: public static void Address(string rawInput, out List<Ia.Ftn.Cl.Model.Access> accessList, out Ia.Cl.Models.Result result)
3049: {
3050: string input;
3051:
3052: result = new Ia.Cl.Models.Result();
3053: accessList = null;
3054:
3055: input = rawInput.ToLower();
3056:
3057: try
3058: {
3059: // note that this returns 0 int values for missing fields
3060: ExtractAddressFromSearchAddressTerm(input, out Ia.Ftn.Cl.Model.Business.Service.KuwaitFtnArea kuwaitFtnArea, out string block, out int street, out int premisesOld, out int premisesNew);
3061:
3062: if (kuwaitFtnArea != null)
3063: {
3064: accessList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.AccessListFromAddress(kuwaitFtnArea.Id, block, street, premisesOld, premisesNew);
3065: }
3066: else
3067: {
3068: result.AddError("The area of \"" + rawInput + "\" is unrecognized. ");
3069: }
3070: }
3071: catch (Exception ex)
3072: {
3073: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
3074: }
3075: }
3076:
3077: ////////////////////////////////////////////////////////////////////////////
3078:
3079: /// <summary>
3080: ///
3081: /// </summary>
3082: public static void CustomerName(string rawInput, out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList, out Ia.Cl.Models.Result result)
3083: {
3084: string input;
3085: int maxNumberOfResults = 1000;
3086: string customerName;
3087:
3088: result = new Ia.Cl.Models.Result();
3089: serviceRequestList = null;
3090:
3091: input = rawInput.ToLower();
3092:
3093: try
3094: {
3095: //using (var db = new Ia.Ftn.Cl.Model.Ftn())
3096: //{
3097: customerName = Ia.Ftn.Cl.Model.Business.Default.CorrectCustomerName(input);
3098:
3099: //if (!string.IsNullOrEmpty(customerName))
3100: //{
3101: serviceRequestList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestListForCustomerName(customerName, maxNumberOfResults);
3102:
3103: if (serviceRequestList.Count >= maxNumberOfResults) result.AddSuccess("The search returned " + maxNumberOfResults + " or more results. The output is limited to " + maxNumberOfResults + ". ");
3104: //}
3105: //else
3106: //{
3107: // serviceRequestList = null;
3108: //}
3109: //}
3110: }
3111: catch (Exception ex)
3112: {
3113: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
3114: }
3115: }
3116:
3117: ////////////////////////////////////////////////////////////////////////////
3118:
3119: /// <summary>
3120: ///
3121: /// </summary>
3122: public static void CustomerId(string rawInput, out List<Ia.Ftn.Cl.Model.ServiceRequest> serviceRequestList, out Ia.Cl.Models.Result result)
3123: {
3124: string input;
3125: int customerId, maxNumberOfResults = 10000;
3126:
3127: result = new Ia.Cl.Models.Result();
3128: serviceRequestList = null;
3129:
3130: input = rawInput.ToLower();
3131:
3132: try
3133: {
3134: using (var db = new Ia.Ftn.Cl.Model.Db())
3135: {
3136: customerId = int.Parse(input);
3137:
3138: serviceRequestList = Ia.Ftn.Cl.Model.Data.Maintenance.Find.ServiceRequestListForCustomerId(customerId, maxNumberOfResults);
3139:
3140: if (serviceRequestList.Count >= maxNumberOfResults) result.AddSuccess("The search returned " + maxNumberOfResults + " or more results. The output is limited to " + maxNumberOfResults + ". ");
3141: }
3142: }
3143: catch (Exception ex)
3144: {
3145: result.AddError("Exception: Retrieval error of data for \"" + rawInput + "\": " + ex.ToString());
3146: }
3147: }
3148:
3149: ////////////////////////////////////////////////////////////////////////////
3150:
3151: /// <summary>
3152: /// Extract area,block from search term like "SLA,2" {kuwaitAreaSymbol,block}
3153: /// </summary>
3154: private static void ExtractAreaBlockFromSearchAreaBlockTerm(string addressTerm, out Ia.Ftn.Cl.Model.Business.Service.KuwaitFtnArea kuwaitFtnArea, out string block)
3155: {
3156: //int i;
3157: string kuwaitFtnAreaSymbol;
3158: Match match;
3159:
3160: // "SLA,2"
3161: match = Regex.Match(addressTerm, @"^([a-zA-Z]{3}),(\d{1,3})$");
3162:
3163: kuwaitFtnAreaSymbol = match.Groups[1].Value.ToUpper();
3164: block = match.Groups[2].Value;
3165:
3166: kuwaitFtnArea = Ia.Ftn.Cl.Model.Data.Service.KuwaitFtnAreaBySymbol(kuwaitFtnAreaSymbol);
3167: }
3168:
3169: ////////////////////////////////////////////////////////////////////////////
3170:
3171: /// <summary>
3172: /// Extract address from search term like "SLA,2,202,339,36" {kuwaitAreaSymbol,block,street,old premises,new premises}
3173: /// </summary>
3174: private static void ExtractAddressFromSearchAddressTerm(string addressTerm, out Ia.Ftn.Cl.Model.Business.Service.KuwaitFtnArea kuwaitFtnArea, out string block, out int street, out int premisesOld, out int premisesNew)
3175: {
3176: string kuwaitFtnAreaSymbol;
3177: Match match;
3178:
3179: // "SLA,2,202,339,36"
3180: match = Regex.Match(addressTerm, @"^([a-zA-Z]{3}),(\d{0,3}),(\d{0,3}),(\d{0,3}),(\d{0,3})$");
3181:
3182: kuwaitFtnAreaSymbol = match.Groups[1].Value.ToUpper();
3183: block = match.Groups[2].Value;
3184: street = int.TryParse(match.Groups[3].Value, out int i) ? i : 0;
3185: premisesOld = int.TryParse(match.Groups[4].Value, out i) ? i : 0;
3186: premisesNew = int.TryParse(match.Groups[5].Value, out i) ? i : 0;
3187:
3188: kuwaitFtnArea = Ia.Ftn.Cl.Model.Data.Service.KuwaitFtnAreaBySymbol(kuwaitFtnAreaSymbol);
3189: }
3190:
3191: ////////////////////////////////////////////////////////////////////////////
3192: ////////////////////////////////////////////////////////////////////////////
3193: }
3194:
3195: ////////////////////////////////////////////////////////////////////////////
3196: ////////////////////////////////////////////////////////////////////////////
3197: }
- Mouse (Ia.Cl.Model) : Windows mouse movements and properties control support class.
- Winapi (Ia.Cl.Model) : WINAPI click events support class.
- ApplicationOperator (Ia.Cl.Model) : ApplicationOperator
- Access (Ia.Ftn.Cl.Model.Business) : Access support class for Fixed Telecommunications Network (FTN) business model.
- Address (Ia.Ftn.Cl.Model.Business) : Address Framework class for Fixed Telecommunications Network (FTN) business model.
- Administration (Ia.Ftn.Cl.Model.Business) : Administration support class of Fixed Telecommunications Network (FTN) business model.
- Default (Ia.Ftn.Cl.Model.Business.Application) : Default Application network information support class for the Fixed Telecommunications Network business model
- Authority (Ia.Ftn.Cl.Model.Business) : Authority support class of Fixed Telecommunications Network (FTN) business model.
- Configuration (Ia.Ftn.Cl.Model.Business) : Configuration Framework class for Fixed Telecommunications Network (FTN) business model.
- Contact (Ia.Ftn.Cl.Model.Business) : Contact support class of Fixed Telecommunications Network (FTN) business model.
- Default (Ia.Ftn.Cl.Model.Business) : Default general support class of Fixed Telecommunications Network (FTN) business model.
- Axe (Ia.Ftn.Cl.Model.Business.Ericsson) : Ericsson AXE support class of Fixed Telecommunications Network (FTN) business model.
- Subscriber (Ia.Ftn.Cl.Model.Business.Ericsson) : AXE Subscriber support class for Fixed Telecommunications Network (FTN) business model.
- Heartbeat (Ia.Ftn.Cl.Model.Business) : Heartbeat information support class for the Fixed Telecommunications Network business model
- Asbr (Ia.Ftn.Cl.Model.Business.Huawei) : AGCF Users (ASBR) support class for Huawei's Fixed Telecommunications Network (FTN) business model.
- Board (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's Board support class of Fixed Telecommunications Network (FTN) business model.
- Default (Ia.Ftn.Cl.Model.Business.Huawei) : Defaul general support class for Huawei's Fixed Telecommunications Network (FTN) business model.
- Dev (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's Dev support class of Fixed Telecommunications Network (FTN) business model.
- Ems (Ia.Ftn.Cl.Model.Business.Huawei) : Element Management System (EMS) support class for Huawei's Fixed Telecommunications Network (FTN) business model.
- Ims (Ia.Ftn.Cl.Model.Business.Huawei) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Huawei's Fixed Telecommunications Network (FTN) business model
- Mgw (Ia.Ftn.Cl.Model.Business.Huawei) : Media Gateway (MGW) support class for Huawei's Fixed Telecommunications Network (FTN) business model.
- Nce (Ia.Ftn.Cl.Model.Business.Huawei) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Huawei's Fixed Telecommunications Network (FTN) business model
- OntSipInfo (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's EMS ONT SIP Info support class of Fixed Telecommunications Network (FTN) business model.
- Ont (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's Ont support class of Fixed Telecommunications Network (FTN) business model.
- Onu (Ia.Ngn.Cl.Model.Business.Huawei) : Huawei's ONU support class of Next Generation Network'a (NGN's) business model.
- Owsbr (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's OwSbr Entity Framework class for Fixed Telecommunications Network (FTN) business model.
- Port (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's Port support class of Fixed Telecommunications Network (FTN) business model.
- Sbr (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's Sbr Entity Framework class for Fixed Telecommunications Network (FTN) business model.
- Seruattr (Ia.Ftn.Cl.Model.Business.Huawei) : SERUATTR Signaling Service Processing System (SPS) support class for Huawei's Fixed Telecommunications Network (FTN) business model.
- SoftX (Ia.Ftn.Cl.Model.Business.Huawei) : U2020 Northbound Interface IP (SoftX) support class for Huawei's Fixed Telecommunications Network (FTN) business model.
- Sps (Ia.Ftn.Cl.Model.Business.Huawei) : Signaling Service Processing System (SPS) support class for Huawei's Fixed Telecommunications Network (FTN) business model.
- Vag (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's EMS VAG Entity Framework class for Fixed Telecommunications Network (FTN) business model.
- VoipPstnUser (Ia.Ftn.Cl.Model.Business.Huawei) : Huawei's EMS VOIP PSTN User support class of Fixed Telecommunications Network (FTN) business model.
- Ims (Ia.Ftn.Cl.Model.Business) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Fixed Telecommunications Network (FTN) business model
- Ip (Ia.Ftn.Cl.Model.Business) : IP support class of Fixed Telecommunications Network (FTN) business model.
- Mail (Ia.Ftn.Cl.Model.Business) : Mail process support class of Fixed Telecommunications Network (FTN) business model.
- Default (Ia.Ftn.Cl.Model.Business.Maintenance) : Default maintenance network information support class for the Fixed Telecommunications Network business model
- Find (Ia.Ftn.Cl.Model.Business.Maintenance) : Find subscriber and network information support class for the Fixed Telecommunications Network business model
- Script (Ia.Ftn.Cl.Model.Business.Maintenance) : Script support class for Fixed Telecommunications Network (FTN) class library model.
- Task (Ia.Ftn.Cl.Model.Business.Maintenance) : Execute backend task support class for the Fixed Telecommunications Network business model
- DatabaseInformation (Ia.Ftn.Mdaa.Cl.Model.Business) : DatabaseInformation support class for Ministry Database Analysis Application business model.
- Default (Ia.Ftn.Cl.Model.Business.Mdaa) : Default mdaa network information support class for the Fixed Telecommunications Network business model
- MinistryDatabase (Ia.Ftn.Cl.Model.Business.Mdaa) : MinistryDatabase support class for Fixed Telecommunications Network (FTN) business model.
- TableInformation (Ia.Ftn.Mdaa.Cl.Model.Business) : TableInformation support class for Ministry Database Analysis Application business model.
- Migration (Ia.Ftn.Cl.Model.Business) : Migration support class of Fixed Telecommunications Network (FTN) business model.
- Msmq (Ia.Ftn.Cl.Model.Business) : MSMQ support class for Fixed Telecommunications Network (FTN) business model.
- NetworkDesignDocument (Ia.Ftn.Cl.Model.Business) : Network Design Document support class for Fixed Telecommunications Network (FTN) business model.
- AgcfEndpoint (Ia.Ftn.Cl.Model.Business.Nokia) : AGCF Endpoint support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- AgcfGatewayRecord (Ia.Ftn.Cl.Model.Business.Nokia) : AGCF Gateway Records support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- AgcfGatewayTable (Ia.Ftn.Cl.Model.Business.Nokia) : AGCF Gateway Table support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- AmsTransaction (Ia.Ftn.Cl.Model.Nokia.Business) : Nokia AmsTransaction Entity Framework class for Fixed Telecommunications Network (FTN) business model.
- Ams (Ia.Ftn.Cl.Model.Business.Nokia) : Access Management System (AMS) support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- Ims (Ia.Ftn.Cl.Model.Business.Nokia) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- OntOntPots (Ia.Ftn.Cl.Model.Business.Nokia) : ONT-ONTPOTS support class of Fixed Telecommunications Network (FTN) Nokia business model.
- OntServiceHsi (Ia.Ngn.Cl.Model.Business.Nokia) : ONT-SERVICEHSI support class of Next Generation Network'a (NGN's) Nokia business model.
- OntServiceVoip (Ia.Ftn.Cl.Model.Business.Nokia) : ONT-SERVICEVOIP support class of Fixed Telecommunications Network (FTN) Nokia business model.
- Ont (Ia.Ftn.Cl.Model.Business.Nokia) : ONT support class of Fixed Telecommunications Network (FTN) Nokia business model.
- Sdc (Ia.Ftn.Cl.Model.Business.Nokia) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- SubParty (Ia.Ftn.Cl.Model.Business.Nokia) : SubParty support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- Subscriber (Ia.Ftn.Cl.Model.Business.Nokia) : Subscriber support class for Nokia's Fixed Telecommunications Network (FTN) business model.
- Procedure (Ia.Ftn.Cl.Model.Business) : Provision support class of Fixed Telecommunications Network (FTN) business model.
- Provision (Ia.Ftn.Cl.Model.Business) : Provision support class of Fixed Telecommunications Network (FTN) business model.
- Report (Ia.Ftn.Cl.Model.Business) : Report support class of Fixed Telecommunications Network (FTN) business model.
- Secretary (Ia.Ftn.Cl.Model.Business) : Secretary support class of Fixed Telecommunications Network (FTN) business model.
- ServiceAddress (Ia.Ftn.Cl.Model.Business) : ServiceAddress Framework class for Fixed Telecommunications Network (FTN) business model.
- ServiceRequestAdministrativeIssue (Ia.Ftn.Cl.Model.Business) : Service Request Administrative Issue support class of Fixed Telecommunications Network (FTN) business model.
- ServiceRequestHistory (Ia.Ftn.Cl.Model.Business) : Service Request History support class of Fixed Telecommunications Network (FTN) business model.
- ServiceRequestHsi (Ia.Ngn.Cl.Model.Business) : Service Request Hsi support class of Next Generation Network'a (NGN's) business model.
- ServiceRequestOntDetail (Ia.Ftn.Cl.Model.Business) : Service Request Ont Detail support class of Fixed Telecommunications Network (FTN) business model.
- ServiceRequestOnt (Ia.Ftn.Cl.Model.Business) : Service Request Ont support class of Fixed Telecommunications Network (FTN) business model.
- ServiceRequestService (Ia.Ftn.Cl.Model.Business) : Service Request Service support class of Fixed Telecommunications Network (FTN) business model.
- ServiceRequestStatisticalVariable (Ia.Ftn.Cl.Model.Business) : ServiceRequestStatisticalVariable support class of Fixed Telecommunications Network (FTN) business model.
- ServiceRequestType (Ia.Ftn.Cl.Model.Business) : Service Request Type support class of Fixed Telecommunications Network (FTN) business model.
- ServiceRequest (Ia.Ftn.Cl.Model.Business) : Service Request support class of Fixed Telecommunications Network (FTN) business model.
- ServiceSerialRequestService (Ia.Ftn.Cl.Model.Business) : Service Serial Request Service support class of Fixed Telecommunications Network (FTN) business model.
- ServiceServiceRequestOnt (Ia.Ftn.Cl.Model.Business) : ServiceServiceRequestOnt support class for Fixed Telecommunications Network (FTN) business model.
- Service (Ia.Ftn.Cl.Model.Business) : Service support class of Fixed Telecommunications Network (FTN) business model.
- Service2 (Ia.Ftn.Cl.Model.Business) : Service Entity Framework class for Fixed Telecommunications Network (FTN) business model.
- Ewsd (Ia.Ftn.Cl.Model.Business.Siemens) : Nokia's Siemens EWSD support class of Fixed Telecommunications Network (FTN) business model.
- Subscriber (Ia.Ftn.Cl.Model.Business.Siemens) : EWSD Subscriber support class for Fixed Telecommunications Network (FTN) business model.
- Transction (Ia.Ftn.Cl.Model.Business) : Transction support class of Fixed Telecommunications Network (FTN) business model.
- Axe (Ia.Ftn.Cl.Model.Client.Ericsson) : Ericsson's AXE support class for Ericsson's PSTN Exchange Migration to Fixed Telecommunications Network (FTN) client model.
- Ems (Ia.Ftn.Cl.Model.Client.Huawei) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) client support class for Huawei's Fixed Telecommunications Network (FTN) EMS client model.
- Ims (Ia.Ftn.Cl.Model.Client.Huawei) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) client support class for Huawei's Fixed Telecommunications Network (FTN) client model.
- SoftX (Ia.Ftn.Cl.Model.Client.Huawei) : U2020 Northbound Interface IP (SoftX) support class for Huawei's Fixed Telecommunications Network (FTN) client model.
- Sps (Ia.Ftn.Cl.Model.Client.Huawei) : Signaling Service Processing System (SPS) support class for Huawei's Fixed Telecommunications Network (FTN) SPS client model.
- Ams (Ia.Ftn.Cl.Model.Client.Nokia) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) client support class for Nokia's Fixed Telecommunications Network (FTN) AMS client model.
- Ims (Ia.Ftn.Cl.Model.Client.Nokia) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) client support class for Nokia's Fixed Telecommunications Network (FTN) client model.
- Sdc (Ia.Ftn.Cl.Model.Client.Nokia) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) client support class for Nokia's Fixed Telecommunications Network (FTN) client model.
- Access (Ia.Ftn.Cl.Model.Data) : Access support class for Fixed Telecommunications Network (FTN) data model.
- Administration (Ia.Ftn.Cl.Model.Data) : Administration support class for Fixed Telecommunications Network (FTN) data model.
- Contact (Ia.Ftn.Cl.Model.Data) : Contact Entity Framework class for Fixed Telecommunications Network (FTN) data model.
- Default (Ia.Ftn.Cl.Model.Data) : Default support class for Fixed Telecommunications Network (FTN) data model.
- Axe (Ia.Ftn.Cl.Model.Data.Ericsson) : Ericsson AXE support class of Fixed Telecommunications Network (FTN) data model.
- Subscriber (Ia.Ftn.Cl.Model.Data.Ericsson) : AXE Subscriber support class for Fixed Telecommunications Network (FTN) data model.
- Event (Ia.Ftn.Cl.Model.Data) : Nokia AMS Event support class for Fixed Telecommunications Network (FTN) data model.
- Guide (Ia.Ftn.Cl.Model.Data) : Guide support class for Fixed Telecommunications Network (FTN) data model.
- Help (Ia.Ftn.Cl.Model.Data) : Help class for Fixed Telecommunications Network (FTN) data model.
- Asbr (Ia.Ftn.Cl.Model.Data.Huawei) : AGCF Users (ASBR) support class for Huawei's Fixed Telecommunications Network (FTN) data model.
- Board (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's Board support class of Fixed Telecommunications Network (FTN) data model.
- Default (Ia.Ftn.Cl.Model.Data.Huawei) : Defaul general support class for Huawei's Fixed Telecommunications Network (FTN) data model.
- Dev (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's Dev support class of Fixed Telecommunications Network (FTN) data model.
- Ems (Ia.Ftn.Cl.Model.Data.Huawei) : Access Management System (AMS) support class for Huawei's Fixed Telecommunications Network (FTN) data model.
- Ims (Ia.Ftn.Cl.Model.Data.Huawei) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Huawei's Fixed Telecommunications Network (FTN) data model
- Mgw (Ia.Ftn.Cl.Model.Data.Huawei) : Media Gateway (MGW) support class for Huawei's Fixed Telecommunications Network (FTN) data model.
- OntSipInfo (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's EMS ONT SIP INFO support class of Fixed Telecommunications Network (FTN) data model.
- Ont (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's Ont support class of Fixed Telecommunications Network (FTN) data model.
- Onu (Ia.Ngn.Cl.Model.Data.Huawei) : Huawei ONU support class for Next Generation Network (NGN) data model.
- Owsbr (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's Owsbr Entity Framework class for Fixed Telecommunications Network (FTN) data model.
- Port (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's Port support class of Fixed Telecommunications Network (FTN) data model.
- Sbr (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's Sbr Entity Framework class for Fixed Telecommunications Network (FTN) data model.
- Seruattr (Ia.Ftn.Cl.Model.Data.Huawei) : SERUATTR Signaling Service Processing System (SPS) support class for Huawei's Fixed Telecommunications Network (FTN) data model.
- SoftX (Ia.Ftn.Cl.Model.Data.Huawei) : U2020 Northbound Interface IP (SoftX) support class for Huawei's Fixed Telecommunications Network (FTN) data model.
- Sps (Ia.Ftn.Cl.Model.Data.Huawei) : Signaling Service Processing System (SPS) support class for Huawei's Fixed Telecommunications Network (FTN) data model.
- Vag (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's EMS VAG Entity Framework class for Fixed Telecommunications Network (FTN) data model.
- VoipPstnUser (Ia.Ftn.Cl.Model.Data.Huawei) : Huawei's EMS VOIP PSTN User support class of Fixed Telecommunications Network (FTN) data model.
- Ims (Ia.Ftn.Cl.Model.Data) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Fixed Telecommunications Network (FTN) data model
- Mail (Ia.Ftn.Cl.Model.Data) : Mail class for Fixed Telecommunications Network (FTN) data model.
- Cache (Ia.Ngn.Cl.Model.Data.Maintenance) : Cache support class for the Next Generation Network data model
- Find (Ia.Ftn.Cl.Model.Data.Maintenance) : Find subscriber and network information support class for the Fixed Telecommunications Network data model
- MinistryDatabase (Ia.Ftn.Cl.Model.Data) : MinistryDatabase support class for Fixed Telecommunications Network (FTN) data model.
- Migration (Ia.Ftn.Cl.Model.Data) : Migration support class of Fixed Telecommunications Network (FTN) data model.
- Miscellaneous (Ia.Ftn.Cl.Model.Data) : Miscellaneous Entity Framework class for Fixed Telecommunications Network (FTN) data model.
- Msmq (Ia.Ftn.Cl.Model.Data) : MSMQ support class for Fixed Telecommunications Network (FTN) data model.
- NetworkDesignDocument (Ia.Ftn.Cl.Model.Data) : Network Design Document support class for Fixed Telecommunications Network (FTN) data model.
- AgcfEndpoint (Ia.Ftn.Cl.Model.Data.Nokia) : AGCF Endpoint support class for Nokia data model.
- AgcfGatewayRecord (Ia.Ftn.Cl.Model.Data.Nokia) : AGCF Gateway Records support class for Nokia data model.
- AmsTransaction (Ia.Ftn.Cl.Model.Data.Nokia) : Nokia AmsTransaction Entity Framework class for Fixed Telecommunications Network (FTN) data model.
- Ams (Ia.Ftn.Cl.Model.Data.Nokia) : Access Management System (AMS) support class for Nokia data model.
- Default (Ia.Ftn.Cl.Model.Data.Nokia) : Defaul general support class for Nokia's Fixed Telecommunications Network (FTN) data model.
- Ims (Ia.Ftn.Cl.Model.Data.Nokia) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Nokia's Fixed Telecommunications Network (FTN) data model.
- OntOntPots (Ia.Ftn.Cl.Model.Data.Nokia) : ONT-ONTPOTS support class for Fixed Telecommunications Network (FTN) Nokia data model.
- OntServiceHsi (Ia.Ngn.Cl.Model.Data.Nokia) : ONT-SERVICEHSI support class for Next Generation Network (NGN) Nokia data model.
- OntServiceVoip (Ia.Ftn.Cl.Model.Data.Nokia) : ONT-SERVICEVOIP support class for Fixed Telecommunications Network (FTN) Nokia data model.
- Ont (Ia.Ftn.Cl.Model.Data.Nokia) : ONT support class for Fixed Telecommunications Network (FTN) Nokia data model.
- Sdc (Ia.Ftn.Cl.Model.Data.Nokia) : Fixed Telecommunications Network's Operations Support System Management Intranet (FTN OSS) support class for Nokia's Fixed Telecommunications Network (FTN) data model.
- SubParty (Ia.Ftn.Cl.Model.Data.Nokia) : SubParty support class for Nokia's Fixed Telecommunications Network (FTN) data model.
- Subscriber (Ia.Ftn.Cl.Model.Data.Nokia) : Subscriber Entity Framework class for Fixed Telecommunications Network (FTN) data model.
- Pots (Ia.Ftn.Cl.Model.Data) : POTS legacy support class for Fixed Telecommunications Network (FTN) data model.
- Provision (Ia.Ftn.Cl.Model.Data) : Provision support class for Fixed Telecommunications Network (FTN) data model.
- ReportHistory (Ia.Ftn.Cl.Model.Data) : Report History support class for Fixed Telecommunications Network (FTN) data model.
- Report (Ia.Ftn.Cl.Model.Data) : Report support class for Fixed Telecommunications Network (FTN) data model.
- Secretary (Ia.Ftn.Cl.Model.Data) : Secretary support class of Fixed Telecommunications Network (FTN) data model.
- ServiceExemption (Ia.Ftn.Cl.Model.Data) : ServiceExemption Framework class for Fixed Telecommunications Network (FTN) data model.
- ServiceInitialState (Ia.Ngn.Cl.Model.Data) : Service Initial State Framework class for Next Generation Network (NGN) data model.
- ServiceRequestAdministrativeIssue (Ia.Ftn.Cl.Model.Data) : Service Request Administrative Issue support class for Fixed Telecommunications Network (FTN) data model.
- ServiceRequestHistory (Ia.Ftn.Cl.Model.Data) : Service Request History support class for Fixed Telecommunications Network (FTN) data model.
- ServiceRequestHsi (Ia.Ngn.Cl.Model.Data) : Service Request Hsi support class for Next Generation Network (NGN) data model.
- ServiceRequestOntDetail (Ia.Ftn.Cl.Model.Data) : Service Request Ont Detail support class for Fixed Telecommunications Network (FTN) data model.
- ServiceRequestOnt (Ia.Ftn.Cl.Model.Data) : Service Request Ont support class for Fixed Telecommunications Network (FTN) data model.
- ServiceRequestService (Ia.Ftn.Cl.Model.Data) : Service Request Service support class for Fixed Telecommunications Network (FTN) data model.
- ServiceRequestType (Ia.Ftn.Cl.Model.Data) : Service Request Type support class for Fixed Telecommunications Network (FTN) data model.
- ServiceRequest (Ia.Ftn.Cl.Model.Data) : Service Request support class for Fixed Telecommunications Network (FTN) data model.
- Service (Ia.Ftn.Cl.Model.Data) : Service support class for Fixed Telecommunications Network (FTN) data model.
- Service2 (Ia.Ftn.Cl.Model.Data) : Service support class for Fixed Telecommunications Network (FTN) data model.
- Ewsd (Ia.Ftn.Cl.Model.Data.Siemens) : Nokia's Siemens EWSD support class of Fixed Telecommunications Network (FTN) data model.
- Subscriber (Ia.Ftn.Cl.Model.Data.Siemens) : EWSD Subscriber support class for Fixed Telecommunications Network (FTN) data model.
- Staff (Ia.Ftn.Cl.Model.Data) : Staff support class for Fixed Telecommunications Network (FTN) data model.
- Transaction (Ia.Ftn.Cl.Model.Data) : Transaction support class for Fixed Telecommunications Network (FTN) data model.
- Access (Ia.Ftn.Cl.Model) : Access Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Contact (Ia.Ftn.Cl.Model) : Contact Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- AxeSubscriber (Ia.Ftn.Cl.Model.Ericsson) : AXE Subscriber Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Event (Ia.Ftn.Cl.Model) : Event Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Asbr (Ia.Ftn.Cl.Model.Huawei) : Huawei's AGCF Users (ASBR) Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- EmsBoard (Ia.Ftn.Cl.Model.Huawei) : Huawei's EMS Board Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- EmsDev (Ia.Ftn.Cl.Model.Huawei) : Huawei's EMS Dev Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Mgw (Ia.Ftn.Cl.Model.Huawei) : Huawei's Media Gateway (MGW) Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Msan (Ia.Ngn.Cl.Model.Huawei) : Huawei's Msan Entity Framework class for Next Generation Network (NGN) entity model.
- EmsOntSipInfo (Ia.Ftn.Cl.Model.Huawei) : Huawei's EMS ONT SIP INFO Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- EmsOnt (Ia.Ftn.Cl.Model.Huawei) : Huawei's EMS Ont Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Onu (Ia.Ngn.Cl.Model.Huawei) : Huawei's ONU Entity Framework class for Next Generation Network (NGN) entity model.
- Owsbr (Ia.Ftn.Cl.Model.Huawei) : Huawei's Owsbr Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- EmsPort (Ia.Ftn.Cl.Model.Huawei) : Huawei's EMS Port Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Sbr (Ia.Ftn.Cl.Model.Huawei) : Huawei's Sbr Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Seruattr (Ia.Ftn.Cl.Model.Huawei) : SERUATTR Signaling Service Processing System (SPS) support class for Huawei's Fixed Telecommunications Network (FTN) entity model.
- EmsVag (Ia.Ftn.Cl.Model.Huawei) : Huawei's EMS VAG Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- EmsVoipPstnUser (Ia.Ftn.Cl.Model.Huawei) : Huawei's EMS VOIP PSTN User Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Inventory (Ia.Ftn.Cl.Model) : Inventory Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- LogicalCircuit (Ia.Ngn.Cl.Model) : Logical-Circuit Entity Framework class for Next Generation Network (NGN) entity model.
- Miscellaneous (Ia.Ftn.Cl.Model) : Miscellaneous Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- NddPon (Ia.Ngn.Cl.Model.NetworkDesignDocument) : Network Design Document support class for Next Generation Network (NGN) entity model.
- AgcfEndpoint (Ia.Ftn.Cl.Model.Nokia) : AGCF Endpoint Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- AgcfGatewayRecord (Ia.Ftn.Cl.Model.Nokia) : AGCF Gateway Record Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- AlInitialInstallation (Ia.Ngn.Cl.Model.AlcatelLucent) : Alcatel-Lucent Initial Installation Entity Framework class for Next Generation Network (NGN) entity model.
- AmsTransaction (Ia.Ftn.Cl.Model.Nokia) : Nokia AmsTransaction Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- SubParty (Ia.Ftn.Cl.Model.Nokia) : SubParty Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Subscriber (Ia.Ftn.Cl.Model.Nokia) : Subscriber Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- OntOntPots (Ia.Ftn.Cl.Model) : ONT-ONTPOTS Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- OntServiceHsi (Ia.Ngn.Cl.Model) : ONT-SERVICEHSI Entity Framework class for Next Generation Network (NGN) entity model.
- OntServiceVoip (Ia.Ftn.Cl.Model) : ONT-SERVICEVOIP Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Ont (Ia.Ftn.Cl.Model) : ONT Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ReportHistory (Ia.Ftn.Cl.Model) : Report History Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Report (Ia.Ftn.Cl.Model) : Report Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceExemption (Ia.Ftn.Cl.Model) : ServiceExemption Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceInitialState (Ia.Ngn.Cl.Model) : Service Initial State Entity Framework class for Next Generation Network (NGN) entity model.
- ServiceRequestAdministrativeIssue (Ia.Ftn.Cl.Model) : Service Request Administrative Issue Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceRequestHistory (Ia.Ftn.Cl.Model) : Service Request History Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceRequestHsi (Ia.Ngn.Cl.Model) : Service Request Hsi Entity Framework class for Next Generation Network (NGN) entity model.
- ServiceRequestOntDetail (Ia.Ftn.Cl.Model) : Service Request Ont Detail Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceRequestOnt (Ia.Ftn.Cl.Model) : Service Request Ont Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceRequestService (Ia.Ftn.Cl.Model) : Service Request Service Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceRequestType (Ia.Ftn.Cl.Model) : Service Request Type Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- ServiceRequest (Ia.Ftn.Cl.Model) : Service Request Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Service2 (Ia.Ftn.Cl.Model) : Service Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- EwsdSubscriber (Ia.Ftn.Cl.Model.Siemens) : EWSD Subscriber Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Staff (Ia.Ftn.Cl.Model) : Staff Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Transaction (Ia.Ftn.Cl.Model) : Transaction Entity Framework class for Fixed Telecommunications Network (FTN) entity model.
- Chat (Ia.Ftn.Cl.Model.Telegram) : Telegram Chat/Group/User support class of Fixed Telecommunications Network (FTN) business and data model.
- Access (Ia.Ftn.Cl.Model.Ui) : Access support class for Fixed Telecommunications Network (FTN) ui model.
- Default (Ia.Ftn.Cl.Model.Ui.Administration) : Administration support class for Fixed Telecommunications Network (FTN) ui model.
- Framework (Ia.Ftn.Cl.Model.Ui.Administration) : Network Design Document support class for Fixed Telecommunications Network (FTN) UI model.
- Default (Ia.Ftn.Cl.Model.Ui) : Default support class for Fixed Telecommunications Network (FTN) ui model.
- Subscriber (Ia.Ftn.Cl.Model.Ui.Ericsson) : AXE Subscriber Entity Framework class for Fixed Telecommunications Network (FTN) UI model.
- EmsOnt (Ia.Ftn.Cl.Model.Ui.Huawei) : Huawei's EMS Ont Entity Framework class for Fixed Telecommunications Network (FTN) UI model.
- Sbr (Ia.Ftn.Cl.Model.Ui.Huawei) : Huawei's Sbr Entity Framework class for Fixed Telecommunications Network (FTN) UI model.
- InventoryForDataGridView (Ia.Ftn.Cl.Model.Ui) : Inventory For DataGridView support class for Fixed Telecommunications Network (FTN) ui model.
- Mail (Ia.Ftn.Cl.Model.Ui) : Mail process support class of Fixed Telecommunications Network (FTN) UI model.
- AccessFamilyTypeAreaBlock (Ia.Ftn.Cl.Model.Ui.Maintenance) : Maintenance support class for Fixed Telecommunications Network (FTN) ui model.
- Find (Ia.Ftn.Cl.Model.Ui.Maintenance) : Find subscriber and network information support class for the Fixed Telecommunications Network ui model
- Ams (Ia.Ftn.Cl.Model.Ui.Maintenance.Transaction) : Ams support class for Fixed Telecommunications Network (FTN) ui model.
- Default (Ia.Ftn.Cl.Model.Ui.Maintenance.Report) : Maintenance Report data support class for the Fixed Telecommunications Network ui model
- NetworkDesignDocument (Ia.Ftn.Cl.Model.Ui) : Network Design Document support class for Fixed Telecommunications Network (FTN) UI model.
- AgcfEndpoint (Ia.Ftn.Cl.Model.Ui.Nokia) : AGCF Endpoint Entity Framework class for Fixed Telecommunications Network (FTN) ui model.
- AgcfGatewayRecord (Ia.Ftn.Cl.Model.Ui.Nokia) : AGCF Gateway Record Entity Framework class for Fixed Telecommunications Network (FTN) UI model.
- SubParty (Ia.Ftn.Cl.Model.Ui.Nokia) : SubParty Entity Framework class for Fixed Telecommunications Network (FTN) ui model.
- Subscriber (Ia.Ftn.Cl.Model.Ui.Nokia) : Subscriber Entity Framework class for Fixed Telecommunications Network (FTN) ui model.
- Performance (Ia.Ftn.Cl.Model.Ui) : Performance support class for Fixed Telecommunications Network (FTN) ui model.
- Access (Ia.Ftn.Cl.Model.Ui.Provision) : Access support class for Fixed Telecommunications Network (FTN) ui model.
- ReportAccessServiceRequest (Ia.Ftn.Cl.Model.Ui) : Report Access Service Request support class for Fixed Telecommunications Network (FTN) ui model.
- Report (Ia.Ftn.Cl.Model.Ui) : Report support class for Fixed Telecommunications Network (FTN) ui model.
- ServiceAccessFlatTermId (Ia.Ftn.Cl.Model.Ui) : ServiceAccessFlatTermId support class for Fixed Telecommunications Network (FTN) ui model.
- ServiceCustomerAddressAccessStatisticalAccessName (Ia.Ftn.Cl.Model.Ui) : ServiceRequest ServiceRequestService Access Statistic support class for Fixed Telecommunications Network (FTN) ui model.
- ServiceRequestAdministrativeIssue (Ia.Ftn.Cl.Model.Ui) : Service Request Administrative Issue Entity Framework class for Fixed Telecommunications Network (FTN) UI model.
- ServiceRequestService (Ia.Ftn.Cl.Model.Ui) : Service Request Service Entity Framework class for Fixed Telecommunications Network (FTN) UI model.
- Service2 (Ia.Ftn.Cl.Model.Ui) : Service class for Fixed Telecommunications Network (FTN) UI model.
- Subscriber (Ia.Ftn.Cl.Model.Ui.Siemens) : EWSD Subscriber Entity Framework class for Fixed Telecommunications Network (FTN) UI model.
- Text (Ia.Ftn.Cl.Model.Ui) : Text support class for Fixed Telecommunications Network (FTN) ui model.
- Administration (Ia.Ftn.Wa.Model.Business) : Administration support class for Fixed Telecommunications Network (FTN) web application (Intranet) model.
- Contact (Ia.Ftn.Wa.Model.Business) : Contact support class for Fixed Telecommunications Network (FTN) web application (Intranet) model.
- Default (Ia.Ftn.Wa.Model.Business) : Administration support class for Fixed Telecommunications Network (FTN) web application (Intranet) model.
- Script (Ia.Ftn.Wa.Model.Business.Maintenance) : Script support class for Fixed Telecommunications Network (FTN) web application (Intranet) model.
- AccessController (Ia.Ngn.Ofn.Wa.Api.Model.Controller) : Access API Controller class of Optical Fiber Network (OFN) model.
- EncryptionController (Ia.Ngn.Ofn.Wa.Api.Controller.Cryptography) : Cryptography, Encryption Controller
- Default2Controller (Ia.Ftn.Wa.Api.Model.Controller) : Default API Controller class of Optical Fiber Network (OFN) model.
- MaintenanceController (Ia.Ngn.Ofn.Wa.Api.Model.Controller) : Maintenance API Controller class of Optical Fiber Network (OFN) model.
- ServiceRequestAdministrativeIssueController (Ia.Ngn.Ofn.Wa.Api.Model.Controller) : Service Request Administrative Issue API Controller class of Optical Fiber Network (OFN) model.
- ServiceRequestTypeController (Ia.Ngn.Ofn.Wa.Api.Model.Controller) : Service Request Type API Controller class of Optical Fiber Network (OFN) model.
- ServiceRequestController (Ia.Ngn.Ofn.Wa.Api.Model.Controller) : Service Request API Controller class of Optical Fiber Network (OFN) model.
- ServiceController (Ia.Ngn.Ofn.Wa.Api.Model.Controller) : Service API Controller class of Optical Fiber Network (OFN) model.
- Administration (Ia.Ftn.Wa.Model.Data) : Administration support class for Fixed Telecommunications Network (FTN) web application (Intranet) model.
- Script (Ia.Ftn.Wa.Model.Data) : Script support class for Fixed Telecommunications Network (FTN) web application (Intranet) model.
- Default (Ia.Ftn.Wa.Model.Ui) : Default support class for Fixed Telecommunications Network (FTN) web application (Intranet) model.
- Mouse (Ia.Cl.Model) : Windows mouse movements and properties control support class.
- Winapi (Ia.Cl.Model) : WINAPI click events support class.
- Agent (Ia.Cl.Model) : Agent model
- ApplicationConfiguration (Ia.Cl.Model) : Webhook API Controller class.
- Authentication (Ia.Cl.Model) : Manage and verify user logging and passwords. The administrator will define the user's password and logging website. The service will issue a true of false according to authentication.
- Storage (Ia.Cl.Models.Azure) : Azure Cloud related support functions.
- Default (Ia.Cl.Models.Business.Nfc) : Default NFC Near-Field Communication (NFC) Support Business functions
- Inventory (Ia.Cl.Models.Business.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Business functions
- Tag (Ia.Cl.Models.Business.Nfc) : TAG NFC Near-Field Communication (NFC) Support Business functions
- Country (Ia.Cl.Model) : Country geographic coordinates and standard UN naming conventions.
- Germany (Ia.Cl.Model) : German cities and states.
- Kuwait (Ia.Cl.Model) : Kuwait provinces, cities, and areas.
- SaudiArabia (Ia.Cl.Model) : Saudi Arabia provinces, cities, and areas.
- Encryption (Ia.Cl.Models.Cryptography) : Symmetric Key Algorithm (Rijndael/AES) to encrypt and decrypt data.
- Default (Ia.Cl.Models.Data) : Support class for data model
- Default (Ia.Cl.Models.Data.Nfc) : Default NFC Near-Field Communication (NFC) Support Data functions
- Inventory (Ia.Cl.Models.Data.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Data functions
- Project (Ia.Cl.Models.Nfc.Data) : Project Support class for NFC data model
- Tag (Ia.Cl.Models.Data.Nfc) : TAG NFC Near-Field Communication (NFC) Support Data functions
- Default (Ia.Cl.Models.Db) : Database support class.
- Msmq (Ia.Cl.Models.Db) : MSMQ Database support class. This handles storing and retrieving MSMQ storage.
- MySql (Ia.Model.Db) : MySQL supporting class.
- Object (Ia.Cl.Models.Db) : Object entity class
- Odbc (Ia.Cl.Models.Db) : ODBC support class.
- OleDb (Ia.Cl.Models.Db) : OLEDB support class
- Oracle (Ia.Cl.Models.Db) : Oracle support class.
- Sqlite (Ia.Cl.Models.Db) : SQLite support class.
- SqlServer (Ia.Cl.Models.Db) : SQL Server support class.
- SqlServerCe (Ia.Cs.Db) : SQL Server CE support class.
- Temp (Ia.Cl.Models.Db) : Temporary Storage support class.
- Text (Ia.Cl.Models.Db) : Text Database support class. This handles storing and retrieving text storage.
- Xml (Ia.Cl.Models.Db) : XML Database support class. This handles storing and retrieving XDocument storage.
- Default (Ia.Cl.Model) : General use static class of common functions used by most applications.
- Gv (Ia.Model.Design) : ASP.NET design related support class.
- Enumeration () : Enumeration class. Extends enumeration to class like behaviour.
- Extention () : Extention methods for different class objects.
- File (Ia.Cl.Model) : File manipulation related support class.
- Ftp (Ia.Cl.Model) : A wrapper class for .NET 2.0 FTP
- Location (Ia.Cl.Models.Geography) : Geographic location related function, location, coordinates (latitude, longitude), bearing, degree and radian conversions, CMap value for resolution, and country geographic info-IP from MaxMind.
- GeoIp (Ia.Cl.Model) : GeoIp class of Internet Application project model.
- Gmail (Ia.Cl.Model) : Gmail API support class
- StaticMap (Ia.Cl.Models.Google) : Google support class.
- Drive (Ia.Cl.Models.Google) : Google Drive Directory and File support class.
- Heartbeat (Ia.Cl.Model) : Heartbeat class.
- Hijri (Ia.Cl.Model) : Hijri date handler class.
- HtmlHelper (Ia.Cl.Model) : HtmlHelper for ASP.Net Core.
- Html (Ia.Cl.Model) : Handle HTML encoding, decoding functions.
- Http (Ia.Cl.Model) : Contains functions that relate to posting and receiving data from remote Internet/Intranet pages
- Identity (Ia.Cl.Model) : ASP.NET Identity support class.
- Image (Ia.Cl.Model) : Image processing support class.
- Imap (Ia.Cl.Model) : IMAP support class.
- Language (Ia.Cl.Model) : Language related support class including langauge list and codes.
- Individual (Ia.Cl.Models.Life) : Individual object.
- Main (Ia.Cl.Models.Life) : General base class for life entities. Make it link through delegates to create and update database objects.
- Log (Ia.Cl.Model) : Log file support class.
- Mouse (Ia.Cl.Model) : Windows mouse movements and properties control support class.
- Msmq (Ia.Cl.Model) : MSMQ (Microsoft Message Queuing) Support class.
- Newspaper (Ia.Cl.Model) : Newspaper and publication display format support class.
- Inventory (Ia.Cl.Models.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Entity functions
- Tag (Ia.Cl.Models.Nfc) : TAG NFC Near-Field Communication (NFC) Support Entity functions
- Ocr (Ia.Cl.Model) : Handles OCR operations.
- Packet (Ia.Cl.Model) : Packet model
- PrayerTime (Ia.Cl.Model) : Prayer times support class.
- Punycode (Ia.Cl.Model) : Punycode support class.
- QrCode (Ia.Cl.Model) : QR Code support class.
- Result (Ia.Cl.Model) : Result support class.
- Seo (Ia.Cl.Model) : Search Engine Optimization (SEO) support class.
- DynamicSiteMapProvider () : Sitemap support class.
- Sms (Ia.Cl.Model) : SMS API service support class. Handles sending and recieving SMS messages through the ClickATell.com SMS API Service gateway. Requires subscription.
- Smtp (Ia.Cl.Model) : SMTP send mail server suppot class.
- Socket (Ia.Cl.Model) : Search Engine Optimization (SEO) support class.
- Sound (Ia.Cl.Model) : Sound support class.
- Stopwatch (Ia.Cl.Model) : Stopwatch model
- TagHelper (Ia.Cl.Models.T) : TagHelper for ASP.Net Core.
- Telnet (Ia.Cl.Model) : Telnet communication support class.
- Trace (Ia.Cl.Model) : Trace function to try to identifiy a user using IP addresses, cookies, and session states.
- Default (Ia.Cl.Models.Ui) : Default support UI class
- Upload (Ia.Cl.Model) : Handle file uploading functions.
- Utf8 (Ia.Cl.Model) : Handle UTF8 issues.
- Weather (Ia.Cl.Model) : Weather class
- Winapi (Ia.Cl.Model) : WINAPI click events support class.
- Word (Ia.Cl.Model) : Word object.
- Twitter (Ia.Cl.Model) : Twitter API support class.
- Xml (Ia.Cl.Model) : XML support class.
- Zip (Ia.Cl.Model) : Zip
- Business (Ia.Islamic.Koran.Belief.Model) : Koran Reference Network support functions: Business model
- Default (Ia.Islamic.Cl.Model.Business) : Koran Reference Network Class Library support functions: Business model
- PrayerTime (Ia.Islamic.Koran.Cl.Model.Business) : Prayer Time Business class of Islamic Koran Reference Network project model.
- Word (Ia.Islamic.Cl.Model.Business) : Koran Reference Network Class Library support functions: business model
- DefaultController (Ia.Ngn.Cl.Model.Api.Controller) : Service Suspension API Controller class of Next Generation Network'a (NGN's) model.
- KoranController (Ia.Islamic.Koran.Cl.Model.Api.Controller) : Koran API Controller class of Islamic Koran Reference Network project model.
- PrayerTimeController (Ia.Islamic.Koran.Cl.Model.Api.Controller) : Prayer Time API Controller class of Islamic Koran Reference Network project model.
- Chapter (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Default (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: Data model
- Koran (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- VerseTopic (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Verse (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Koran (Ia.Islamic.Cl.Model.Context) : Koran Reference Network Data Context
- Ef (Ia.Cl.Model) : Entity Framework support function
- Chapter (Ia.Islamic.Cl.Model) : Chapter Koran Reference Network Class Library support functions: Entity model
- Koran (Ia.Islamic.Cl.Model) : Koran Koran Reference Network Class Library support functions: Entity model
- VerseTopic (Ia.Islamic.Cl.Model) : VerseTopic Koran Reference Network Class Library support functions: Entity model
- Verse (Ia.Islamic.Cl.Model) : Verse Koran Reference Network Class Library support functions: Entity model
- WordVerse (Ia.Islamic.Cl.Model) : WordVerse Koran Reference Network Class Library support functions: Entity model
- Word (Ia.Islamic.Cl.Model) : Word Koran Reference Network Class Library support functions: Entity model
- Translation (Ia.Islamic.Cl.Model) : Koran Reference Network Class Library support functions: Data model
- VerseTopicUi (Ia.Islamic.Cl.Model.Ui) : Koran Reference Network Class Library support functions: UI model
- Default (Ia.Islamic.Koran.Wa.Model.Ui) : Koran Reference Network Class Library support functions: UI model
- Default (Ia.Islamic.Koran.Wfa.Model.Business) : Koran Reference Network Windows Form support functions: Business model
- Preparation (Ia.Islamic.Koran.Wfa.Model.Business) : Koran Reference Network Windows Form support functions: Business model
- Default (Ia.Islamic.Koran.Wfa.Model.Data) : Koran Reference Network Windows Form support functions: Data model
- Kanji (Ia.Learning.Cl.Model.Business) : Kanji business support class
- Kanji (Ia.Learning.Cl.Model.Data) : Kanji support class
- Default (Ia.Learning.Cl.Model) : Default data support functions
- MoeBook (Ia.Learning.Cl.Model) : Ministry of Education Books support class for Learning data model.
- Business (Ia.Learning.Kafiya.Model) : Default business support class.
- Data (Ia.Learning.Kafiya.Model) : Default data support class.
- Default (Ia.Learning.Kanji.Model.Business) : Default business support class.
- Default (Ia.Learning.Kanji.Model.Ui) : Default UI support class.
- Newspaper (Ia.Cl.Model) : Newspaper and publication display format support class.
- Default (Ia.Statistics.Cl.Model.Boutiqaat) : Structure of the boutiqaat.com website.
- Default (Ia.Statistics.Cl.Model.Dabdoob) : Structure of the dabdoob.com website.
- Default (Ia.Statistics.Cl.Model.EnglishBookshop) : Structure of the theenglishbookshop.com website.
- Default (Ia.Statistics.Cl.Model.FantasyWorldToys) : Structure of the fantasyworldtoys.com website.
- Default (Ia.Statistics.Cl.Model.HsBookstore) : Structure of the hsbookstore.com website.
- Default (Ia.Statistics.Cl.Model.LuluHypermarket) : Structure of the lulutypermarket.com website.
- Default (Ia.Statistics.Cl.Model.Natureland) : Structure of the natureland.net website.
- Site (Ia.Statistics.Cl.Model) : Site support class for Optical Fiber Network (OFN) data model.
- Default (Ia.Statistics.Cl.Model.SultanCenter) : Structure of the sultan-center.com website.
- Default (Ia.Statistics.Cl.Model.Taw9eel) : Structure of the taw9eel.com website.
- Default (Ia.TentPlay.Cl.Model.Business) : Support class for TentPlay business model
- Default (Ia.TentPlay.Cl.Model.Business.Trek) : Support class for TentPlay Trek business model
- FeatureClassDistanceToCapital (Ia.TentPlay.Cl.Model.Business.Trek) : FeatureClassDistanceToCapital Support class for TentPlay business model
- FeatureClass (Ia.TentPlay.Cl.Model.Business.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureDesignation (Ia.TentPlay.Cl.Model.Business.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureName (Ia.TentPlay.Cl.Model.Business.Trek) : Support class for TentPlay Trek business model
- Feature (Ia.TentPlay.Cl.Model.Business.Trek) : Feature class for TentPlay Trek business model
- CompanyInformation (Ia.TentPlay.Cl.Model.Data) : CompanyInformation Support class for TentPlay data model
- Default (Ia.TentPlay.Cl.Model.Data) : Support class for TentPlay data model
- ApplicationInformation (Ia.TentPlay.Cl.Model.Data.Trek) : ApplicationInformation Support class for TentPlay Trek data model
- Default (Ia.TentPlay.Cl.Model.Data.Trek) : Default class for TentPlay Trek data model
- FeatureClass (Ia.TentPlay.Cl.Model.Data.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureDesignation (Ia.TentPlay.Cl.Model.Data.Trek) : FeatureDesignation Support class for TentPlay Trek data model
- Feature (Ia.TentPlay.Cl.Model.Data.Trek) : Feature Support class for TentPlay entity data
- NgaCountryWaypoint (Ia.TentPlay.Waypoint.Cl.Model.Data) : NgaCountryWaypoint Support class for TentPlay Waypoint entity data
- Score (Ia.TentPlay.Cl.Model.Memorise) : Score entity functions
- FeatureDesignation (Ia.TentPlay.Cl.Model.Trek) : FeatureDesignation Support class for TentPlay Trek entity model
- Feature (Ia.TentPlay.Cl.Model.Trek) : Feature Support class for TentPlay entity model
- ApplicationInformation (Ia.TentPlay.Cl.Model.Memorise) : ApplicationInformation Support class for TentPlay Memorise model
- Default (Ia.TentPlay.Cl.Model.Memorise) : Default class for TentPlay Memorise data model
- German (Ia.TentPlay.Cl.Model.Memorise) : German class
- Kana (Ia.TentPlay.Cl.Model.Memorise) : Kana class
- Kanji (Ia.TentPlay.Cl.Model.Memorise) : Kanji class
- Math (Ia.TentPlay.Cl.Model.Memorise) : Math Class
- MorseCode (Ia.TentPlay.Cl.Model.Memorise) : Morse code class
- PhoneticAlphabet (Ia.TentPlay.Cl.Model.Memorise) : Phonetic Alphabet
- Russian (Ia.TentPlay.Cl.Model.Memorise) : Russian class
- Test (Ia.TentPlay.Cl.Model.Memorise) : Test Class
- Default (Ia.TentPlay.Cl.Model.Ui.Trek) : Default class for TentPlay Trek UI model