شركة التطبيقات المتكاملة لتصميم النظم البرمجية الخاصة ش.ش.و.

Integrated Applications Programming Company

Skip Navigation LinksHome » Code Library » ServiceRequestService

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

Service Request Service Entity Framework class for Optical Fiber Network (OFN) entity model.

   1:  using System;
   2:  using System.Collections.Generic;
   3:  using System.ComponentModel.DataAnnotations;
   4:  using System.ComponentModel.DataAnnotations.Schema;
   5:  using System.Linq;
   6:  using System.Threading;
   7:  using System.Threading.Tasks;
   8:   
   9:  namespace Ia.Ngn.Cl.Model
  10:  {
  11:      ////////////////////////////////////////////////////////////////////////////
  12:   
  13:      /// <summary publish="true">
  14:      /// Service Request Service Entity Framework class for Optical Fiber Network (OFN) entity 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 ServiceRequestService
  31:      {
  32:          /// <summary/>
  33:          public ServiceRequestService()
  34:          {
  35:          }
  36:   
  37:          /// <summary/>
  38:          [Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
  39:          public string Id { get; set; }
  40:   
  41:          /// <summary/>
  42:          public string Service { get; set; }
  43:   
  44:          /// <summary/>
  45:          public int Serial { get; set; }
  46:   
  47:          /// <summary/>
  48:          public int ServiceType { get; set; }
  49:   
  50:          /// <summary/>
  51:          public int Type { get; set; }
  52:   
  53:          /// <summary/>
  54:          public bool Provisioned { get; set; }
  55:   
  56:          /// <summary/>
  57:          public int AreaCode { get; set; }
  58:   
  59:          /// <summary/>
  60:          public bool CallWaiting { get; set; }
  61:   
  62:          /// <summary/>
  63:          public bool CallForwarding { get; set; }
  64:   
  65:          /// <summary/>
  66:          public bool AlarmCall { get; set; }
  67:   
  68:          /// <summary/>
  69:          public bool InternationalCallingUserControlled { get; set; }
  70:   
  71:          /// <summary/>
  72:          public bool InternationalCalling { get; set; }
  73:   
  74:          /// <summary/>
  75:          public bool CallerId { get; set; }
  76:   
  77:          /// <summary/>
  78:          public bool WakeupCall { get; set; }
  79:   
  80:          /// <summary/>
  81:          public bool ConferenceCall { get; set; }
  82:   
  83:          /// <summary/>
  84:          public bool CallBarring { get; set; }
  85:   
  86:          /// <summary/>
  87:          public bool ServiceSuspension { get; set; }
  88:   
  89:          /// <summary/>
  90:          public int ServiceSuspensionTypeId { get; set; }
  91:   
  92:          /// <summary/>
  93:          public bool AbbriviatedCalling { get; set; }
  94:   
  95:          /// <summary/>
  96:          public bool CallForwardingUnconditional { get; set; }
  97:   
  98:          /// <summary/>
  99:          public bool CallingLineIdentificationRestriction { get; set; }
 100:   
 101:          /// <summary/>
 102:          public bool ConnectedLineIdentificationRestriction { get; set; }
 103:   
 104:          /// <summary/>
 105:          public bool WakeUp { get; set; }
 106:   
 107:          /// <summary/>
 108:          public bool CallForwardingByTime { get; set; }
 109:   
 110:          /// <summary/>
 111:          public bool MutlimediaInformationPresentation { get; set; }
 112:   
 113:          /// <summary/>
 114:          public bool SelectiveOutgoingCallBarring { get; set; }
 115:   
 116:          /// <summary/>
 117:          public bool DialNumberCallOutAllow { get; set; }
 118:   
 119:          /// <summary/>
 120:          public bool DoNotDisturb { get; set; }
 121:   
 122:          /// <summary/>
 123:          public bool OutgoingCallBarring { get; set; }
 124:   
 125:          /// <summary/>
 126:          public bool TemporaryLine { get; set; }
 127:   
 128:          /// <summary/>
 129:          public bool CodecControl { get; set; }
 130:   
 131:          /// <summary/>
 132:          public bool SelectiveIncomingCallBarring { get; set; }
 133:   
 134:          /// <summary/>
 135:          public bool SelectiveCallForwarding { get; set; }
 136:   
 137:          /// <summary/>
 138:          public bool DialNumberCallOutBarring { get; set; }
 139:   
 140:          /// <summary/>
 141:          public bool CallForwardingBasedonBlackList { get; set; }
 142:   
 143:          /// <summary/>
 144:          public bool CallForwardingBusy { get; set; }
 145:   
 146:          /// <summary/>
 147:          public bool CallForwardingNoReply { get; set; }
 148:   
 149:          /// <summary/>
 150:          public bool CallForwardingOffline { get; set; }
 151:   
 152:          /// <summary/>
 153:          public bool CallForwardingOnUserNotReachable { get; set; }
 154:   
 155:          /// <summary/>
 156:          public bool CallForwardingNoReplyinCallWaiting { get; set; }
 157:   
 158:          /// <summary/>
 159:          public bool MultiRinging { get; set; }
 160:   
 161:          /// <summary/>
 162:          public bool ConvergentInterPersonalService { get; set; }
 163:   
 164:          /// <summary/>
 165:          public bool CallForwardingBySequence { get; set; }
 166:   
 167:          /// <summary/>
 168:          public bool UserNumberChange { get; set; }
 169:   
 170:          /// <summary/>
 171:          public bool BlackNumberData { get; set; }
 172:   
 173:          /// <summary/>
 174:          public bool WhiteNumberData { get; set; }
 175:   
 176:          /// <summary/>
 177:          public bool OwedRestriction { get; set; }
 178:   
 179:          /// <summary/>
 180:          public bool Strategy { get; set; }
 181:   
 182:          /// <summary/>
 183:          public bool GreenNumberData { get; set; }
 184:   
 185:          /// <summary/>
 186:          public bool RedNumberData { get; set; }
 187:   
 188:          /// <summary/>
 189:          public bool BarringOfAllOutgoingCalls { get; set; }
 190:   
 191:          /// <summary/>
 192:          public bool BarringOfAllOutgoingInternationalCalls { get; set; }
 193:   
 194:          /// <summary/>
 195:          public bool BarringOfOutgoingInternationalCallsExceptThoseDirectedToTheHomePlmnCountry { get; set; }
 196:   
 197:          /// <summary/>
 198:          public bool BarringOfAllIncomingCalls { get; set; }
 199:   
 200:          /// <summary/>
 201:          public bool BarringOfIncomingCallsWhenRoamingOutsideTheHomePlmnCountry { get; set; }
 202:   
 203:          /// <summary/>
 204:          public bool SpeedDial { get; set; }
 205:   
 206:          /// <summary/>
 207:          public bool GreenCall { get; set; }
 208:   
 209:          /// <summary/>
 210:          public bool SetDataUpgrade { get; set; }
 211:   
 212:          /// <summary/>
 213:          public bool AutoConsole { get; set; }
 214:   
 215:          /// <summary/>
 216:          public bool NightService { get; set; }
 217:   
 218:          /// <summary/>
 219:          public bool BackupNumber { get; set; }
 220:   
 221:          /// <summary/>
 222:          public bool Absence { get; set; }
 223:   
 224:          /// <summary/>
 225:          public bool AuthorizedCodeForStdIdd { get; set; }
 226:   
 227:          /// <summary/>
 228:          public bool Hotline { get; set; }
 229:   
 230:          /// <summary/>
 231:          public bool CetMaliciousCommunicationIdentification { get; set; }
 232:   
 233:          /// <summary/>
 234:          public bool MissCallNotify { get; set; }
 235:   
 236:          /// <summary/>
 237:          public bool SubscriptionStatus { get; set; }
 238:   
 239:          /// <summary/>
 240:          public bool UsbDongleOneKeyService { get; set; }
 241:   
 242:          /// <summary/>
 243:          public bool IRoamingInboundSingleImsiMultiMsisdn { get; set; }
 244:   
 245:          /// <summary/>
 246:          public bool IRoamingOutboundSingleImsiMultiMsisdn { get; set; }
 247:   
 248:          /// <summary/>
 249:          public bool NpaSplit { get; set; }
 250:   
 251:          /// <summary/>
 252:          public bool AllCallForwardingGroup { get; set; }
 253:   
 254:          /// <summary/>
 255:          public bool ConditionalCallForwardingGroup { get; set; }
 256:   
 257:          /// <summary/>
 258:          public bool GeneralOrigIdentificationRestriction { get; set; }
 259:   
 260:          /// <summary/>
 261:          public bool MultimediaOfOrigIdRestriction { get; set; }
 262:   
 263:          /// <summary/>
 264:          public bool TerminatingIdentityRestriction { get; set; }
 265:   
 266:          /// <summary/>
 267:          public bool DistinctiveRing { get; set; }
 268:   
 269:          /// <summary/>
 270:          public bool VisitedNetworkImpu { get; set; }
 271:   
 272:          /// <summary/>
 273:          public bool SeasonalSuspend { get; set; }
 274:   
 275:          /// <summary/>
 276:          public bool NumberInvalidation { get; set; }
 277:   
 278:          /// <summary/>
 279:          public bool IroamingServiceProvision { get; set; }
 280:   
 281:          /// <summary/>
 282:          public bool IptvCallerId { get; set; }
 283:   
 284:          /// <summary/>
 285:          public bool IptvVideoCall { get; set; }
 286:   
 287:          /// <summary/>
 288:          public bool NumberPortability { get; set; }
 289:   
 290:          /// <summary/>
 291:          public bool SecretaryService { get; set; }
 292:   
 293:          /// <summary/>
 294:          public bool SalesBlock { get; set; }
 295:   
 296:          /// <summary/>
 297:          public bool FilterCriteria { get; set; }
 298:   
 299:          /// <summary/>
 300:          public bool CallerInformation { get; set; }
 301:   
 302:          /// <summary/>
 303:          public bool PresenceStatus { get; set; }
 304:   
 305:          /// <summary/>
 306:          public bool OneNumberService { get; set; }
 307:   
 308:          /// <summary/>
 309:          public bool AssociationList { get; set; }
 310:   
 311:          /// <summary/>
 312:          public int Pin { get; set; }
 313:   
 314:          /// <summary/>
 315:          [ForeignKey("Access_Id")]
 316:          public virtual Access Access { get; set; }
 317:   
 318:          /// <summary/>
 319:          public virtual ICollection<ServiceRequest> ServiceRequests { get; set; }
 320:   
 321:          /// <summary/>
 322:          public DateTime LastRequestDateTime { get; set; }
 323:   
 324:          /// <summary/>
 325:          public DateTime Created { get; set; }
 326:   
 327:          /// <summary/>
 328:          public DateTime Updated { get; set; }
 329:   
 330:          /// <summary/>
 331:          public System.Guid UserId { get; set; }
 332:   
 333:          ////////////////////////////////////////////////////////////////////////////
 334:   
 335:          /// <summary>
 336:          /// 
 337:          /// </summary>
 338:          public static bool operator ==(ServiceRequestService obj1, ServiceRequestService obj2)
 339:          {
 340:              if (ReferenceEquals(obj1, obj2))
 341:              {
 342:                  return true;
 343:              }
 344:   
 345:              if (obj1 is null)
 346:              {
 347:                  return false;
 348:              }
 349:              if (obj2 is null)
 350:              {
 351:                  return false;
 352:              }
 353:   
 354:              return (obj1.Id == obj2.Id &&
 355:              obj1.Service == obj2.Service &&
 356:              obj1.Serial == obj2.Serial &&
 357:              obj1.Provisioned == obj2.Provisioned &&
 358:              obj1.CallWaiting == obj2.CallWaiting &&
 359:              obj1.InternationalCallingUserControlled == obj2.InternationalCallingUserControlled &&
 360:              obj1.CallerId == obj2.CallerId &&
 361:              obj1.CallForwarding == obj2.CallForwarding &&
 362:              obj1.CallBarring == obj2.CallBarring &&
 363:              obj1.ConferenceCall == obj2.ConferenceCall &&
 364:              obj1.AbbriviatedCalling == obj2.AbbriviatedCalling &&
 365:              obj1.InternationalCalling == obj2.InternationalCalling &&
 366:              obj1.AlarmCall == obj2.AlarmCall &&
 367:              obj1.WakeupCall == obj2.WakeupCall &&
 368:              obj1.BarringOfAllOutgoingCalls == obj2.BarringOfAllOutgoingCalls &&
 369:              obj1.BarringOfAllIncomingCalls == obj2.BarringOfAllIncomingCalls);
 370:          }
 371:   
 372:          ////////////////////////////////////////////////////////////////////////////
 373:   
 374:          /// <summary>
 375:          /// 
 376:          /// </summary>
 377:          public static bool operator !=(ServiceRequestService obj1, ServiceRequestService obj2)
 378:          {
 379:              return !(obj1 == obj2);
 380:          }
 381:   
 382:          ////////////////////////////////////////////////////////////////////////////
 383:   
 384:          /// <summary>
 385:          /// 
 386:          /// </summary>
 387:          public bool Equals(ServiceRequestService obj1)
 388:          {
 389:              if (obj1 is null)
 390:              {
 391:                  return false;
 392:              }
 393:              if (ReferenceEquals(this, obj1))
 394:              {
 395:                  return true;
 396:              }
 397:   
 398:              return (obj1.Id == Id &&
 399:              obj1.Service == Service &&
 400:              obj1.Serial == Serial &&
 401:              obj1.Provisioned == Provisioned &&
 402:              obj1.CallWaiting == CallWaiting &&
 403:              obj1.InternationalCallingUserControlled == InternationalCallingUserControlled &&
 404:              obj1.CallerId == CallerId &&
 405:              obj1.CallForwarding == CallForwarding &&
 406:              obj1.CallBarring == CallBarring &&
 407:              obj1.ConferenceCall == ConferenceCall &&
 408:              obj1.AbbriviatedCalling == AbbriviatedCalling &&
 409:              obj1.InternationalCalling == InternationalCalling &&
 410:              obj1.AlarmCall == AlarmCall &&
 411:              obj1.WakeupCall == WakeupCall &&
 412:              obj1.BarringOfAllOutgoingCalls == BarringOfAllOutgoingCalls &&
 413:              obj1.BarringOfAllIncomingCalls == BarringOfAllIncomingCalls);
 414:          }
 415:   
 416:          ////////////////////////////////////////////////////////////////////////////
 417:   
 418:          /// <summary>
 419:          /// 
 420:          /// </summary>
 421:          public override bool Equals(object obj)
 422:          {
 423:              if (obj is null)
 424:              {
 425:                  return false;
 426:              }
 427:              if (ReferenceEquals(this, obj))
 428:              {
 429:                  return true;
 430:              }
 431:   
 432:              return obj.GetType() == GetType() && Equals((ServiceRequestService)obj);
 433:          }
 434:   
 435:          ////////////////////////////////////////////////////////////////////////////
 436:   
 437:          /// <summary>
 438:          /// 
 439:          /// </summary>
 440:          public override int GetHashCode()
 441:          {
 442:              unchecked
 443:              {
 444:                  int hashCode = Id.GetHashCode();
 445:                  hashCode = (hashCode * 397) ^ Service.GetHashCode();
 446:                  hashCode = (hashCode * 397) ^ Serial.GetHashCode();
 447:                  hashCode = (hashCode * 397) ^ Provisioned.GetHashCode();
 448:                  hashCode = (hashCode * 397) ^ CallWaiting.GetHashCode();
 449:                  hashCode = (hashCode * 397) ^ InternationalCallingUserControlled.GetHashCode();
 450:                  hashCode = (hashCode * 397) ^ CallerId.GetHashCode();
 451:                  hashCode = (hashCode * 397) ^ CallForwarding.GetHashCode();
 452:                  hashCode = (hashCode * 397) ^ CallBarring.GetHashCode();
 453:                  hashCode = (hashCode * 397) ^ ConferenceCall.GetHashCode();
 454:                  hashCode = (hashCode * 397) ^ AbbriviatedCalling.GetHashCode();
 455:                  hashCode = (hashCode * 397) ^ InternationalCalling.GetHashCode();
 456:                  hashCode = (hashCode * 397) ^ AlarmCall.GetHashCode();
 457:                  hashCode = (hashCode * 397) ^ WakeupCall.GetHashCode();
 458:                  hashCode = (hashCode * 397) ^ BarringOfAllOutgoingCalls.GetHashCode();
 459:                  hashCode = (hashCode * 397) ^ BarringOfAllIncomingCalls.GetHashCode();
 460:                  return hashCode;
 461:              }
 462:          }
 463:   
 464:          ////////////////////////////////////////////////////////////////////////////
 465:   
 466:          /// <summary>
 467:          ///
 468:          /// </summary>
 469:          public bool Update(ServiceRequestService updatedServiceRequestService)
 470:          {
 471:              // below: this will not update Id, Created
 472:              bool updated;
 473:   
 474:              updated = false;
 475:   
 476:              if (this.Service != updatedServiceRequestService.Service) { this.Service = updatedServiceRequestService.Service; updated = true; }
 477:              if (this.Serial != updatedServiceRequestService.Serial) { this.Serial = updatedServiceRequestService.Serial; updated = true; }
 478:              if (this.ServiceType != updatedServiceRequestService.ServiceType) { this.ServiceType = updatedServiceRequestService.ServiceType; updated = true; }
 479:              if (this.Type != updatedServiceRequestService.Type) { this.Type = updatedServiceRequestService.Type; updated = true; }
 480:              if (this.Provisioned != updatedServiceRequestService.Provisioned) { this.Provisioned = updatedServiceRequestService.Provisioned; updated = true; }
 481:              if (this.AreaCode != updatedServiceRequestService.AreaCode) { this.AreaCode = updatedServiceRequestService.AreaCode; updated = true; }
 482:              if (this.CallWaiting != updatedServiceRequestService.CallWaiting) { this.CallWaiting = updatedServiceRequestService.CallWaiting; updated = true; }
 483:              if (this.CallForwarding != updatedServiceRequestService.CallForwarding) { this.CallForwarding = updatedServiceRequestService.CallForwarding; updated = true; }
 484:   
 485:              if (this.AlarmCall != updatedServiceRequestService.AlarmCall) { this.AlarmCall = updatedServiceRequestService.AlarmCall; updated = true; }
 486:              if (this.WakeupCall != updatedServiceRequestService.WakeupCall) { this.WakeupCall = updatedServiceRequestService.WakeupCall; updated = true; }
 487:   
 488:              if (this.CallBarring != updatedServiceRequestService.CallBarring) { this.CallBarring = updatedServiceRequestService.CallBarring; updated = true; }
 489:              if (this.InternationalCallingUserControlled != updatedServiceRequestService.InternationalCallingUserControlled) { this.InternationalCallingUserControlled = updatedServiceRequestService.InternationalCallingUserControlled; updated = true; }
 490:              if (this.InternationalCalling != updatedServiceRequestService.InternationalCalling) { this.InternationalCalling = updatedServiceRequestService.InternationalCalling; updated = true; }
 491:              if (this.CallerId != updatedServiceRequestService.CallerId) { this.CallerId = updatedServiceRequestService.CallerId; updated = true; }
 492:              if (this.ConferenceCall != updatedServiceRequestService.ConferenceCall) { this.ConferenceCall = updatedServiceRequestService.ConferenceCall; updated = true; }
 493:              if (this.ServiceSuspensionTypeId != updatedServiceRequestService.ServiceSuspensionTypeId) { this.ServiceSuspensionTypeId = updatedServiceRequestService.ServiceSuspensionTypeId; updated = true; }
 494:              if (this.AbbriviatedCalling != updatedServiceRequestService.AbbriviatedCalling) { this.AbbriviatedCalling = updatedServiceRequestService.AbbriviatedCalling; updated = true; }
 495:              if (this.CallForwardingUnconditional != updatedServiceRequestService.CallForwardingUnconditional) { this.CallForwardingUnconditional = updatedServiceRequestService.CallForwardingUnconditional; updated = true; }
 496:              if (this.CallingLineIdentificationRestriction != updatedServiceRequestService.CallingLineIdentificationRestriction) { this.CallingLineIdentificationRestriction = updatedServiceRequestService.CallingLineIdentificationRestriction; updated = true; }
 497:              if (this.ConnectedLineIdentificationRestriction != updatedServiceRequestService.ConnectedLineIdentificationRestriction) { this.ConnectedLineIdentificationRestriction = updatedServiceRequestService.ConnectedLineIdentificationRestriction; updated = true; }
 498:              if (this.WakeUp != updatedServiceRequestService.WakeUp) { this.WakeUp = updatedServiceRequestService.WakeUp; updated = true; }
 499:              if (this.CallForwardingByTime != updatedServiceRequestService.CallForwardingByTime) { this.CallForwardingByTime = updatedServiceRequestService.CallForwardingByTime; updated = true; }
 500:              if (this.MutlimediaInformationPresentation != updatedServiceRequestService.MutlimediaInformationPresentation) { this.MutlimediaInformationPresentation = updatedServiceRequestService.MutlimediaInformationPresentation; updated = true; }
 501:              if (this.SelectiveOutgoingCallBarring != updatedServiceRequestService.SelectiveOutgoingCallBarring) { this.SelectiveOutgoingCallBarring = updatedServiceRequestService.SelectiveOutgoingCallBarring; updated = true; }
 502:              if (this.DialNumberCallOutAllow != updatedServiceRequestService.DialNumberCallOutAllow) { this.DialNumberCallOutAllow = updatedServiceRequestService.DialNumberCallOutAllow; updated = true; }
 503:              if (this.DoNotDisturb != updatedServiceRequestService.DoNotDisturb) { this.DoNotDisturb = updatedServiceRequestService.DoNotDisturb; updated = true; }
 504:              if (this.OutgoingCallBarring != updatedServiceRequestService.OutgoingCallBarring) { this.OutgoingCallBarring = updatedServiceRequestService.OutgoingCallBarring; updated = true; }
 505:              if (this.TemporaryLine != updatedServiceRequestService.TemporaryLine) { this.TemporaryLine = updatedServiceRequestService.TemporaryLine; updated = true; }
 506:              if (this.CodecControl != updatedServiceRequestService.CodecControl) { this.CodecControl = updatedServiceRequestService.CodecControl; updated = true; }
 507:              if (this.SelectiveIncomingCallBarring != updatedServiceRequestService.SelectiveIncomingCallBarring) { this.SelectiveIncomingCallBarring = updatedServiceRequestService.SelectiveIncomingCallBarring; updated = true; }
 508:              if (this.SelectiveCallForwarding != updatedServiceRequestService.SelectiveCallForwarding) { this.SelectiveCallForwarding = updatedServiceRequestService.SelectiveCallForwarding; updated = true; }
 509:              if (this.DialNumberCallOutBarring != updatedServiceRequestService.DialNumberCallOutBarring) { this.DialNumberCallOutBarring = updatedServiceRequestService.DialNumberCallOutBarring; updated = true; }
 510:              if (this.CallForwardingBasedonBlackList != updatedServiceRequestService.CallForwardingBasedonBlackList) { this.CallForwardingBasedonBlackList = updatedServiceRequestService.CallForwardingBasedonBlackList; updated = true; }
 511:              if (this.CallForwardingBusy != updatedServiceRequestService.CallForwardingBusy) { this.CallForwardingBusy = updatedServiceRequestService.CallForwardingBusy; updated = true; }
 512:              if (this.CallForwardingNoReply != updatedServiceRequestService.CallForwardingNoReply) { this.CallForwardingNoReply = updatedServiceRequestService.CallForwardingNoReply; updated = true; }
 513:              if (this.CallForwardingOffline != updatedServiceRequestService.CallForwardingOffline) { this.CallForwardingOffline = updatedServiceRequestService.CallForwardingOffline; updated = true; }
 514:              if (this.CallForwardingOnUserNotReachable != updatedServiceRequestService.CallForwardingOnUserNotReachable) { this.CallForwardingOnUserNotReachable = updatedServiceRequestService.CallForwardingOnUserNotReachable; updated = true; }
 515:              if (this.CallForwardingNoReplyinCallWaiting != updatedServiceRequestService.CallForwardingNoReplyinCallWaiting) { this.CallForwardingNoReplyinCallWaiting = updatedServiceRequestService.CallForwardingNoReplyinCallWaiting; updated = true; }
 516:              if (this.MultiRinging != updatedServiceRequestService.MultiRinging) { this.MultiRinging = updatedServiceRequestService.MultiRinging; updated = true; }
 517:              if (this.ConvergentInterPersonalService != updatedServiceRequestService.ConvergentInterPersonalService) { this.ConvergentInterPersonalService = updatedServiceRequestService.ConvergentInterPersonalService; updated = true; }
 518:              if (this.CallForwardingBySequence != updatedServiceRequestService.CallForwardingBySequence) { this.CallForwardingBySequence = updatedServiceRequestService.CallForwardingBySequence; updated = true; }
 519:              if (this.UserNumberChange != updatedServiceRequestService.UserNumberChange) { this.UserNumberChange = updatedServiceRequestService.UserNumberChange; updated = true; }
 520:              if (this.BlackNumberData != updatedServiceRequestService.BlackNumberData) { this.BlackNumberData = updatedServiceRequestService.BlackNumberData; updated = true; }
 521:              if (this.WhiteNumberData != updatedServiceRequestService.WhiteNumberData) { this.WhiteNumberData = updatedServiceRequestService.WhiteNumberData; updated = true; }
 522:              if (this.OwedRestriction != updatedServiceRequestService.OwedRestriction) { this.OwedRestriction = updatedServiceRequestService.OwedRestriction; updated = true; }
 523:              if (this.Strategy != updatedServiceRequestService.Strategy) { this.Strategy = updatedServiceRequestService.Strategy; updated = true; }
 524:              if (this.GreenNumberData != updatedServiceRequestService.GreenNumberData) { this.GreenNumberData = updatedServiceRequestService.GreenNumberData; updated = true; }
 525:              if (this.RedNumberData != updatedServiceRequestService.RedNumberData) { this.RedNumberData = updatedServiceRequestService.RedNumberData; updated = true; }
 526:              if (this.BarringOfAllOutgoingCalls != updatedServiceRequestService.BarringOfAllOutgoingCalls) { this.BarringOfAllOutgoingCalls = updatedServiceRequestService.BarringOfAllOutgoingCalls; updated = true; }
 527:              if (this.BarringOfAllOutgoingInternationalCalls != updatedServiceRequestService.BarringOfAllOutgoingInternationalCalls) { this.BarringOfAllOutgoingInternationalCalls = updatedServiceRequestService.BarringOfAllOutgoingInternationalCalls; updated = true; }
 528:              if (this.BarringOfOutgoingInternationalCallsExceptThoseDirectedToTheHomePlmnCountry != updatedServiceRequestService.BarringOfOutgoingInternationalCallsExceptThoseDirectedToTheHomePlmnCountry) { this.BarringOfOutgoingInternationalCallsExceptThoseDirectedToTheHomePlmnCountry = updatedServiceRequestService.BarringOfOutgoingInternationalCallsExceptThoseDirectedToTheHomePlmnCountry; updated = true; }
 529:              if (this.BarringOfAllIncomingCalls != updatedServiceRequestService.BarringOfAllIncomingCalls) { this.BarringOfAllIncomingCalls = updatedServiceRequestService.BarringOfAllIncomingCalls; updated = true; }
 530:              if (this.BarringOfIncomingCallsWhenRoamingOutsideTheHomePlmnCountry != updatedServiceRequestService.BarringOfIncomingCallsWhenRoamingOutsideTheHomePlmnCountry) { this.BarringOfIncomingCallsWhenRoamingOutsideTheHomePlmnCountry = updatedServiceRequestService.BarringOfIncomingCallsWhenRoamingOutsideTheHomePlmnCountry; updated = true; }
 531:              if (this.SpeedDial != updatedServiceRequestService.SpeedDial) { this.SpeedDial = updatedServiceRequestService.SpeedDial; updated = true; }
 532:              if (this.GreenCall != updatedServiceRequestService.GreenCall) { this.GreenCall = updatedServiceRequestService.GreenCall; updated = true; }
 533:              if (this.SetDataUpgrade != updatedServiceRequestService.SetDataUpgrade) { this.SetDataUpgrade = updatedServiceRequestService.SetDataUpgrade; updated = true; }
 534:              if (this.AutoConsole != updatedServiceRequestService.AutoConsole) { this.AutoConsole = updatedServiceRequestService.AutoConsole; updated = true; }
 535:              if (this.NightService != updatedServiceRequestService.NightService) { this.NightService = updatedServiceRequestService.NightService; updated = true; }
 536:              if (this.BackupNumber != updatedServiceRequestService.BackupNumber) { this.BackupNumber = updatedServiceRequestService.BackupNumber; updated = true; }
 537:              if (this.Absence != updatedServiceRequestService.Absence) { this.Absence = updatedServiceRequestService.Absence; updated = true; }
 538:              if (this.AuthorizedCodeForStdIdd != updatedServiceRequestService.AuthorizedCodeForStdIdd) { this.AuthorizedCodeForStdIdd = updatedServiceRequestService.AuthorizedCodeForStdIdd; updated = true; }
 539:              if (this.Hotline != updatedServiceRequestService.Hotline) { this.Hotline = updatedServiceRequestService.Hotline; updated = true; }
 540:              if (this.CetMaliciousCommunicationIdentification != updatedServiceRequestService.CetMaliciousCommunicationIdentification) { this.CetMaliciousCommunicationIdentification = updatedServiceRequestService.CetMaliciousCommunicationIdentification; updated = true; }
 541:              if (this.MissCallNotify != updatedServiceRequestService.MissCallNotify) { this.MissCallNotify = updatedServiceRequestService.MissCallNotify; updated = true; }
 542:              if (this.SubscriptionStatus != updatedServiceRequestService.SubscriptionStatus) { this.SubscriptionStatus = updatedServiceRequestService.SubscriptionStatus; updated = true; }
 543:              if (this.UsbDongleOneKeyService != updatedServiceRequestService.UsbDongleOneKeyService) { this.UsbDongleOneKeyService = updatedServiceRequestService.UsbDongleOneKeyService; updated = true; }
 544:              if (this.IRoamingInboundSingleImsiMultiMsisdn != updatedServiceRequestService.IRoamingInboundSingleImsiMultiMsisdn) { this.IRoamingInboundSingleImsiMultiMsisdn = updatedServiceRequestService.IRoamingInboundSingleImsiMultiMsisdn; updated = true; }
 545:              if (this.IRoamingOutboundSingleImsiMultiMsisdn != updatedServiceRequestService.IRoamingOutboundSingleImsiMultiMsisdn) { this.IRoamingOutboundSingleImsiMultiMsisdn = updatedServiceRequestService.IRoamingOutboundSingleImsiMultiMsisdn; updated = true; }
 546:              if (this.NpaSplit != updatedServiceRequestService.NpaSplit) { this.NpaSplit = updatedServiceRequestService.NpaSplit; updated = true; }
 547:              if (this.AllCallForwardingGroup != updatedServiceRequestService.AllCallForwardingGroup) { this.AllCallForwardingGroup = updatedServiceRequestService.AllCallForwardingGroup; updated = true; }
 548:              if (this.ConditionalCallForwardingGroup != updatedServiceRequestService.ConditionalCallForwardingGroup) { this.ConditionalCallForwardingGroup = updatedServiceRequestService.ConditionalCallForwardingGroup; updated = true; }
 549:              if (this.GeneralOrigIdentificationRestriction != updatedServiceRequestService.GeneralOrigIdentificationRestriction) { this.GeneralOrigIdentificationRestriction = updatedServiceRequestService.GeneralOrigIdentificationRestriction; updated = true; }
 550:              if (this.MultimediaOfOrigIdRestriction != updatedServiceRequestService.MultimediaOfOrigIdRestriction) { this.MultimediaOfOrigIdRestriction = updatedServiceRequestService.MultimediaOfOrigIdRestriction; updated = true; }
 551:              if (this.TerminatingIdentityRestriction != updatedServiceRequestService.TerminatingIdentityRestriction) { this.TerminatingIdentityRestriction = updatedServiceRequestService.TerminatingIdentityRestriction; updated = true; }
 552:              if (this.DistinctiveRing != updatedServiceRequestService.DistinctiveRing) { this.DistinctiveRing = updatedServiceRequestService.DistinctiveRing; updated = true; }
 553:              if (this.VisitedNetworkImpu != updatedServiceRequestService.VisitedNetworkImpu) { this.VisitedNetworkImpu = updatedServiceRequestService.VisitedNetworkImpu; updated = true; }
 554:              if (this.SeasonalSuspend != updatedServiceRequestService.SeasonalSuspend) { this.SeasonalSuspend = updatedServiceRequestService.SeasonalSuspend; updated = true; }
 555:              if (this.NumberInvalidation != updatedServiceRequestService.NumberInvalidation) { this.NumberInvalidation = updatedServiceRequestService.NumberInvalidation; updated = true; }
 556:              if (this.IroamingServiceProvision != updatedServiceRequestService.IroamingServiceProvision) { this.IroamingServiceProvision = updatedServiceRequestService.IroamingServiceProvision; updated = true; }
 557:              if (this.IptvCallerId != updatedServiceRequestService.IptvCallerId) { this.IptvCallerId = updatedServiceRequestService.IptvCallerId; updated = true; }
 558:              if (this.IptvVideoCall != updatedServiceRequestService.IptvVideoCall) { this.IptvVideoCall = updatedServiceRequestService.IptvVideoCall; updated = true; }
 559:              if (this.NumberPortability != updatedServiceRequestService.NumberPortability) { this.NumberPortability = updatedServiceRequestService.NumberPortability; updated = true; }
 560:              if (this.SecretaryService != updatedServiceRequestService.SecretaryService) { this.SecretaryService = updatedServiceRequestService.SecretaryService; updated = true; }
 561:              if (this.SalesBlock != updatedServiceRequestService.SalesBlock) { this.SalesBlock = updatedServiceRequestService.SalesBlock; updated = true; }
 562:              if (this.FilterCriteria != updatedServiceRequestService.FilterCriteria) { this.FilterCriteria = updatedServiceRequestService.FilterCriteria; updated = true; }
 563:              if (this.CallerInformation != updatedServiceRequestService.CallerInformation) { this.CallerInformation = updatedServiceRequestService.CallerInformation; updated = true; }
 564:              if (this.PresenceStatus != updatedServiceRequestService.PresenceStatus) { this.PresenceStatus = updatedServiceRequestService.PresenceStatus; updated = true; }
 565:              if (this.OneNumberService != updatedServiceRequestService.OneNumberService) { this.OneNumberService = updatedServiceRequestService.OneNumberService; updated = true; }
 566:              if (this.AssociationList != updatedServiceRequestService.AssociationList) { this.AssociationList = updatedServiceRequestService.AssociationList; updated = true; }
 567:              if (this.Pin != updatedServiceRequestService.Pin) { this.Pin = updatedServiceRequestService.Pin; updated = true; }
 568:   
 569:              // below: ServiceSuspension is updated individually
 570:              // if (this.ServiceSuspension != updatedServiceRequestService.ServiceSuspension) { this.ServiceSuspension = updatedServiceRequestService.ServiceSuspension; updated = true; }
 571:   
 572:              // important: ServiceRequestService.Update() will only update stored.Access if it is null, or (stored.userId == Guid.Empty && update.Id > stored.Id)
 573:              // this is important to enable manual staff update.
 574:              if (this.Access == null && updatedServiceRequestService.Access != null) { this.Access = updatedServiceRequestService.Access; updated = true; }
 575:              else if (this.Access != null && updatedServiceRequestService.Access != null && this.Access.Id != updatedServiceRequestService.Access.Id && this.UserId == Guid.Empty /*&& long.Parse(updatedServiceRequestService.Id) > long.Parse(this.Id)*/) { this.Access = updatedServiceRequestService.Access; updated = true; }
 576:   
 577:              // important: I will not update this.UserId if update.UserId is Guid.Empty so that I don't override staff this.UserId. I need this to be valid for this.Access test above
 578:              if (this.UserId != updatedServiceRequestService.UserId && updatedServiceRequestService.UserId != Guid.Empty) { this.UserId = updatedServiceRequestService.UserId; updated = true; }
 579:   
 580:              //if (this.ServiceRequests != updatedServiceRequestService.ServiceRequests) { this.ServiceRequests = updatedServiceRequestService.ServiceRequests; updated = true; }
 581:   
 582:              if (this.LastRequestDateTime != updatedServiceRequestService.LastRequestDateTime) { this.LastRequestDateTime = updatedServiceRequestService.LastRequestDateTime; updated = true; }
 583:   
 584:              if (updated) this.Updated = DateTime.UtcNow.AddHours(3);
 585:   
 586:              return updated;
 587:          }
 588:   
 589:          ////////////////////////////////////////////////////////////////////////////
 590:   
 591:          /// <summary>
 592:          /// Copy value from another ServiceRequestService
 593:          /// </summary>
 594:          public void Copy(ServiceRequestService sourceServiceRequestService)
 595:          {
 596:              // below: this will not ...
 597:   
 598:              this.Id = sourceServiceRequestService.Id;
 599:              this.Service = sourceServiceRequestService.Service;
 600:              this.Serial = sourceServiceRequestService.Serial;
 601:              this.ServiceType = sourceServiceRequestService.ServiceType;
 602:              this.Type = sourceServiceRequestService.Type;
 603:              this.Provisioned = sourceServiceRequestService.Provisioned;
 604:              this.AreaCode = sourceServiceRequestService.AreaCode;
 605:   
 606:              this.CallWaiting = sourceServiceRequestService.CallWaiting;
 607:              this.CallForwarding = sourceServiceRequestService.CallForwarding;
 608:   
 609:              this.AlarmCall = sourceServiceRequestService.AlarmCall;
 610:              this.WakeupCall = sourceServiceRequestService.WakeupCall;
 611:   
 612:              this.CallBarring = sourceServiceRequestService.CallBarring;
 613:              this.InternationalCallingUserControlled = sourceServiceRequestService.InternationalCallingUserControlled;
 614:              this.InternationalCalling = sourceServiceRequestService.InternationalCalling;
 615:              this.CallerId = sourceServiceRequestService.CallerId;
 616:              this.ConferenceCall = sourceServiceRequestService.ConferenceCall;
 617:              this.ServiceSuspensionTypeId = sourceServiceRequestService.ServiceSuspensionTypeId;
 618:              this.AbbriviatedCalling = sourceServiceRequestService.AbbriviatedCalling;
 619:              this.CallForwardingUnconditional = sourceServiceRequestService.CallForwardingUnconditional;
 620:              this.CallingLineIdentificationRestriction = sourceServiceRequestService.CallingLineIdentificationRestriction;
 621:              this.ConnectedLineIdentificationRestriction = sourceServiceRequestService.ConnectedLineIdentificationRestriction;
 622:              this.WakeUp = sourceServiceRequestService.WakeUp;
 623:              this.CallForwardingByTime = sourceServiceRequestService.CallForwardingByTime;
 624:              this.MutlimediaInformationPresentation = sourceServiceRequestService.MutlimediaInformationPresentation;
 625:              this.SelectiveOutgoingCallBarring = sourceServiceRequestService.SelectiveOutgoingCallBarring;
 626:              this.DialNumberCallOutAllow = sourceServiceRequestService.DialNumberCallOutAllow;
 627:              this.DoNotDisturb = sourceServiceRequestService.DoNotDisturb;
 628:              this.OutgoingCallBarring = sourceServiceRequestService.OutgoingCallBarring;
 629:              this.TemporaryLine = sourceServiceRequestService.TemporaryLine;
 630:              this.CodecControl = sourceServiceRequestService.CodecControl;
 631:              this.SelectiveIncomingCallBarring = sourceServiceRequestService.SelectiveIncomingCallBarring;
 632:              this.SelectiveCallForwarding = sourceServiceRequestService.SelectiveCallForwarding;
 633:              this.DialNumberCallOutBarring = sourceServiceRequestService.DialNumberCallOutBarring;
 634:              this.CallForwardingBasedonBlackList = sourceServiceRequestService.CallForwardingBasedonBlackList;
 635:              this.CallForwardingBusy = sourceServiceRequestService.CallForwardingBusy;
 636:              this.CallForwardingNoReply = sourceServiceRequestService.CallForwardingNoReply;
 637:              this.CallForwardingOffline = sourceServiceRequestService.CallForwardingOffline;
 638:              this.CallForwardingOnUserNotReachable = sourceServiceRequestService.CallForwardingOnUserNotReachable;
 639:              this.CallForwardingNoReplyinCallWaiting = sourceServiceRequestService.CallForwardingNoReplyinCallWaiting;
 640:              this.MultiRinging = sourceServiceRequestService.MultiRinging;
 641:              this.ConvergentInterPersonalService = sourceServiceRequestService.ConvergentInterPersonalService;
 642:              this.CallForwardingBySequence = sourceServiceRequestService.CallForwardingBySequence;
 643:              this.UserNumberChange = sourceServiceRequestService.UserNumberChange;
 644:              this.BlackNumberData = sourceServiceRequestService.BlackNumberData;
 645:              this.WhiteNumberData = sourceServiceRequestService.WhiteNumberData;
 646:              this.OwedRestriction = sourceServiceRequestService.OwedRestriction;
 647:              this.Strategy = sourceServiceRequestService.Strategy;
 648:              this.GreenNumberData = sourceServiceRequestService.GreenNumberData;
 649:              this.RedNumberData = sourceServiceRequestService.RedNumberData;
 650:              this.BarringOfAllOutgoingCalls = sourceServiceRequestService.BarringOfAllOutgoingCalls;
 651:              this.BarringOfAllOutgoingInternationalCalls = sourceServiceRequestService.BarringOfAllOutgoingInternationalCalls;
 652:              this.BarringOfOutgoingInternationalCallsExceptThoseDirectedToTheHomePlmnCountry = sourceServiceRequestService.BarringOfOutgoingInternationalCallsExceptThoseDirectedToTheHomePlmnCountry;
 653:              this.BarringOfAllIncomingCalls = sourceServiceRequestService.BarringOfAllIncomingCalls;
 654:              this.BarringOfIncomingCallsWhenRoamingOutsideTheHomePlmnCountry = sourceServiceRequestService.BarringOfIncomingCallsWhenRoamingOutsideTheHomePlmnCountry;
 655:              this.SpeedDial = sourceServiceRequestService.SpeedDial;
 656:              this.GreenCall = sourceServiceRequestService.GreenCall;
 657:              this.SetDataUpgrade = sourceServiceRequestService.SetDataUpgrade;
 658:              this.AutoConsole = sourceServiceRequestService.AutoConsole;
 659:              this.NightService = sourceServiceRequestService.NightService;
 660:              this.BackupNumber = sourceServiceRequestService.BackupNumber;
 661:              this.Absence = sourceServiceRequestService.Absence;
 662:              this.AuthorizedCodeForStdIdd = sourceServiceRequestService.AuthorizedCodeForStdIdd;
 663:              this.Hotline = sourceServiceRequestService.Hotline;
 664:              this.CetMaliciousCommunicationIdentification = sourceServiceRequestService.CetMaliciousCommunicationIdentification;
 665:              this.MissCallNotify = sourceServiceRequestService.MissCallNotify;
 666:              this.SubscriptionStatus = sourceServiceRequestService.SubscriptionStatus;
 667:              this.UsbDongleOneKeyService = sourceServiceRequestService.UsbDongleOneKeyService;
 668:              this.IRoamingInboundSingleImsiMultiMsisdn = sourceServiceRequestService.IRoamingInboundSingleImsiMultiMsisdn;
 669:              this.IRoamingOutboundSingleImsiMultiMsisdn = sourceServiceRequestService.IRoamingOutboundSingleImsiMultiMsisdn;
 670:              this.NpaSplit = sourceServiceRequestService.NpaSplit;
 671:              this.AllCallForwardingGroup = sourceServiceRequestService.AllCallForwardingGroup;
 672:              this.ConditionalCallForwardingGroup = sourceServiceRequestService.ConditionalCallForwardingGroup;
 673:              this.GeneralOrigIdentificationRestriction = sourceServiceRequestService.GeneralOrigIdentificationRestriction;
 674:              this.MultimediaOfOrigIdRestriction = sourceServiceRequestService.MultimediaOfOrigIdRestriction;
 675:              this.TerminatingIdentityRestriction = sourceServiceRequestService.TerminatingIdentityRestriction;
 676:              this.DistinctiveRing = sourceServiceRequestService.DistinctiveRing;
 677:              this.VisitedNetworkImpu = sourceServiceRequestService.VisitedNetworkImpu;
 678:              this.SeasonalSuspend = sourceServiceRequestService.SeasonalSuspend;
 679:              this.NumberInvalidation = sourceServiceRequestService.NumberInvalidation;
 680:              this.IroamingServiceProvision = sourceServiceRequestService.IroamingServiceProvision;
 681:              this.IptvCallerId = sourceServiceRequestService.IptvCallerId;
 682:              this.IptvVideoCall = sourceServiceRequestService.IptvVideoCall;
 683:              this.NumberPortability = sourceServiceRequestService.NumberPortability;
 684:              this.SecretaryService = sourceServiceRequestService.SecretaryService;
 685:              this.SalesBlock = sourceServiceRequestService.SalesBlock;
 686:              this.FilterCriteria = sourceServiceRequestService.FilterCriteria;
 687:              this.CallerInformation = sourceServiceRequestService.CallerInformation;
 688:              this.PresenceStatus = sourceServiceRequestService.PresenceStatus;
 689:              this.OneNumberService = sourceServiceRequestService.OneNumberService;
 690:              this.AssociationList = sourceServiceRequestService.AssociationList;
 691:              this.Pin = sourceServiceRequestService.Pin;
 692:   
 693:              this.LastRequestDateTime = sourceServiceRequestService.LastRequestDateTime;
 694:   
 695:              // ServiceSuspection is updated individually using a seperate function
 696:              // this.ServiceSuspension = srs.ServiceSuspension;
 697:   
 698:              this.UserId = sourceServiceRequestService.UserId;
 699:          }
 700:   
 701:          ////////////////////////////////////////////////////////////////////////////
 702:          ////////////////////////////////////////////////////////////////////////////
 703:      }
 704:   
 705:      ////////////////////////////////////////////////////////////////////////////
 706:      ////////////////////////////////////////////////////////////////////////////
 707:  }