public IHttpActionResult FirstCase(string computerName) { using (var dbContext = new DataContext()) { var ticketCount = 0; var rejectReasons = new List <AdjudicateRepository.sRejectReasons>(); var caseInfo = new AdjudicateRepository.sCaseInfo(); var remoteCaseInfo = new AdjudicateRepository.sCaseInfo(); var adjudicateRepository = new AdjudicateRepository(dbContext, SessionModel.CredentialID, SessionModel.UserName); if (!adjudicateRepository.caseFirst(ref rejectReasons, out ticketCount, out caseInfo, out remoteCaseInfo, computerName)) { return(this.BadRequestEx(Error.PopulateMethodFailed(adjudicateRepository.Error))); } return(Ok( new FirstCaseModel { Case = new CaseModel { TicketNo = caseInfo.mTicketNo, Notification = caseInfo.mNotification, VehicleRegNo = caseInfo.mVehicleRegNo, VehicleRegNoConfirmed = caseInfo.mVehicleRegNoConfirmed, VehicleMake = caseInfo.mVehicleMake, VehicleModel = caseInfo.mVehicleModel, VehicleColour = caseInfo.mVehicleColour, VehicleType = caseInfo.mVehicleType, VehicleLicenseExpire = caseInfo.mVehicleLicenseExpire, OffenceSet = caseInfo.mOffenceSet, OffenceDate = caseInfo.mOffenceDate, OffenceSpeed = caseInfo.mOffenceSpeed, OffenceZone = caseInfo.mOffenceZone, OffenceDirectionLane = caseInfo.mOffenceDirectionLane, OffenceCode = caseInfo.mOffenceCode, OffenceNotes = caseInfo.mOffenceNotes, OffenceAdditionalsXml = caseInfo.mOffenceAdditionalsXml, Image1 = caseInfo.mImage1, Image2 = caseInfo.mImage2, ImageNP = caseInfo.mImageNP, RemoteImage1 = remoteCaseInfo.mImage1, RemoteImage2 = remoteCaseInfo.mImage2, RemoteImageNP = remoteCaseInfo.mImageNP }, TicketCount = ticketCount, RejectReasons = rejectReasons.Select(f => new RejectReasonModel { ID = f.mID, Description = f.mDescription }).ToList() })); } }
public IHttpActionResult FishpondCase(string ticketNumber, string computerName) { using (var dbContext = new DataContext()) { var caseInfo = new AdjudicateRepository.sCaseInfo(); var remoteCaseInfo = new AdjudicateRepository.sCaseInfo(); var adjudicateRepository = new AdjudicateRepository(dbContext, SessionModel.CredentialID, SessionModel.UserName); if (!adjudicateRepository.fishpondGetCase(ticketNumber, ref caseInfo, ref remoteCaseInfo, computerName)) { return(this.BadRequestEx(Error.PopulateMethodFailed(adjudicateRepository.Error))); } return(Ok( new CaseModel { TicketNo = caseInfo.mTicketNo, Notification = caseInfo.mNotification, VehicleRegNo = caseInfo.mVehicleRegNo, VehicleRegNoConfirmed = caseInfo.mVehicleRegNoConfirmed, VehicleMake = caseInfo.mVehicleMake, VehicleModel = caseInfo.mVehicleModel, VehicleColour = caseInfo.mVehicleColour, VehicleType = caseInfo.mVehicleType, VehicleLicenseExpire = caseInfo.mVehicleLicenseExpire, OffenceSet = caseInfo.mOffenceSet, OffenceDate = caseInfo.mOffenceDate, OffenceSpeed = caseInfo.mOffenceSpeed, OffenceZone = caseInfo.mOffenceZone, OffenceDirectionLane = caseInfo.mOffenceDirectionLane, OffenceCode = caseInfo.mOffenceCode, OffenceNotes = caseInfo.mOffenceNotes, OffenceAdditionalsXml = caseInfo.mOffenceAdditionalsXml, Image1 = caseInfo.mImage1, Image2 = caseInfo.mImage2, ImageNP = caseInfo.mImageNP, RemoteImage1 = remoteCaseInfo.mImage1, RemoteImage2 = remoteCaseInfo.mImage2, RemoteImageNP = remoteCaseInfo.mImageNP })); } }
public IHttpActionResult AcceptFishpondCase([FromBody] CaseModel model, string computerName) { using (var dbContext = new DataContext()) { var caseInfo = new AdjudicateRepository.sCaseInfo(); caseInfo.mTicketNo = model.TicketNo; caseInfo.mOffenceAdditionalsXml = model.OffenceAdditionalsXml; caseInfo.mOffenceSet = model.OffenceSet; caseInfo.mOffenceNotes = model.OffenceNotes; var adjudicateRepository = new AdjudicateRepository(dbContext, SessionModel.CredentialID, SessionModel.UserName); if (!adjudicateRepository.fishpondCaseAccept(caseInfo, computerName)) { return(this.BadRequestEx(Error.PopulateMethodFailed(adjudicateRepository.Error))); } return(Ok()); } }
public IHttpActionResult AcceptCase([FromBody] CaseModel model, string computerName) { using (var dbContext = new DataContext()) { var ticketCount = 0; var caseInfo = new AdjudicateRepository.sCaseInfo(); caseInfo.mTicketNo = model.TicketNo; caseInfo.mOffenceAdditionalsXml = model.OffenceAdditionalsXml; caseInfo.mOffenceSet = model.OffenceSet; caseInfo.mOffenceNotes = model.OffenceNotes; var remoteCaseInfo = new AdjudicateRepository.sCaseInfo(); var adjudicateRepository = new AdjudicateRepository(dbContext, SessionModel.CredentialID, SessionModel.UserName); if (!adjudicateRepository.caseAdjudicate(ref caseInfo, ref remoteCaseInfo, out ticketCount, computerName)) { return(this.BadRequestEx(Error.PopulateMethodFailed(adjudicateRepository.Error))); } var register = dbContext.Registers.SingleOrDefault(f => f.ReferenceNumber == caseInfo.mTicketNo); if (register == null) { return(this.BadRequestEx( Error.PopulateUnexpectedException( new Exception(string.Format("Case ({0}) not added to Registers table.", caseInfo.mTicketNo))))); } var referenceNumber = dbContext.GeneratedReferenceNumbers.SingleOrDefault(f => f.ReferenceNumber == caseInfo.mTicketNo); if (referenceNumber == null) { return(this.BadRequestEx( Error.PopulateUnexpectedException( new Exception(string.Format("Case ({0}) not added to GeneratedReferenceNumbers table.", caseInfo.mTicketNo))))); } var paymentProvider = ProviderFactory.Get(); var transactionIDModel = paymentProvider.RegisterTransaction( new ThirdParty.Payment.Models.TransactionModel { CompanyRef = referenceNumber.ReferenceNumber, CompanyAccRef = string.Empty, Amount = register.OutstandingAmount.HasValue ? register.OutstandingAmount.Value : 0, UserID = SessionModel.UserName, ServiceDescription = "Reserved Payment Token", ServiceType = 6067 }); referenceNumber.ExternalToken = transactionIDModel.TransactionToken; referenceNumber.ExternalReference = transactionIDModel.TransactionReference; dbContext.SaveChanges(); return(Ok( new FirstCaseModel { Case = new CaseModel { TicketNo = caseInfo.mTicketNo, Notification = caseInfo.mNotification, VehicleRegNo = caseInfo.mVehicleRegNo, VehicleRegNoConfirmed = caseInfo.mVehicleRegNoConfirmed, VehicleMake = caseInfo.mVehicleMake, VehicleModel = caseInfo.mVehicleModel, VehicleColour = caseInfo.mVehicleColour, VehicleType = caseInfo.mVehicleType, VehicleLicenseExpire = caseInfo.mVehicleLicenseExpire, OffenceSet = caseInfo.mOffenceSet, OffenceDate = caseInfo.mOffenceDate, OffenceSpeed = caseInfo.mOffenceSpeed, OffenceZone = caseInfo.mOffenceZone, OffenceDirectionLane = caseInfo.mOffenceDirectionLane, OffenceCode = caseInfo.mOffenceCode, OffenceNotes = caseInfo.mOffenceNotes, OffenceAdditionalsXml = caseInfo.mOffenceAdditionalsXml, Image1 = caseInfo.mImage1, Image2 = caseInfo.mImage2, ImageNP = caseInfo.mImageNP, RemoteImage1 = remoteCaseInfo.mImage1, RemoteImage2 = remoteCaseInfo.mImage2, RemoteImageNP = remoteCaseInfo.mImageNP }, TicketCount = ticketCount })); } }