Ejemplo n.º 1
0
        public NewCaseModel AcceptCase(AcceptCaseModel model, string computerName)
        {
            var request = new RestRequest("/api/Capture/Case/Accept", Method.POST);

            request.AddQueryParameter("computerName", computerName);
            request.AddJsonBody(model);

            var response = RestClient.Execute(request);

            if (response.StatusCode != HttpStatusCode.OK)
            {
                throw CreateException(response);
            }

            return(JsonConvert.DeserializeObject <NewCaseModel>(response.Content));
        }
Ejemplo n.º 2
0
        public IHttpActionResult acceptCase([FromBody] AcceptCaseModel model, string computerName)
        {
            using (var dbContext = new DataContext())
            {
                var captureTypes = new List <CaptureRepository.sCaptureTypes>();
                var caseInfo     = new CaptureRepository.sCaseInfo()
                {
                    mVehicleRegNo = model.CaseInfo.VehicleRegisterNumber,
                    mVehicleType  = model.CaseInfo.VehicleType,
                    mOffenceDate  = model.CaseInfo.OffenceDate,
                    mOffencePlace = model.CaseInfo.OffencePlace,
                    mPrevRejectID = model.CaseInfo.PreviousRejectID,
                    mOffenceSpeed = model.CaseInfo.OffenceSpeed,
                    mOffenceZone  = model.CaseInfo.OffenceZone,
                    mImage1       = model.CaseInfo.Image1,
                    mImage2       = model.CaseInfo.Image2,
                    mImage3       = model.CaseInfo.Image3,
                    mImage4       = model.CaseInfo.Image4,
                    mImageNP      = model.CaseInfo.ImageNP,
                    mImage1ID     = model.CaseInfo.Image1ID,
                    mImage2ID     = model.CaseInfo.Image2ID,
                    mImage3ID     = model.CaseInfo.Image3ID,
                    mImage4ID     = model.CaseInfo.Image4ID,
                    mOnlyOneImage = model.CaseInfo.OnlyOneImage,
                    mPrintImageNo = model.CaseInfo.PrintImageNumber,
                };

                var captureType =
                    new CaptureRepository.sCaptureTypes()
                {
                    mID          = model.CaptureType.ID,
                    mCode        = model.CaptureType.Code,
                    mType        = model.CaptureType.Type,
                    mAmount      = model.CaptureType.Amount,
                    mBeskrywing  = model.CaptureType.Beskrywing,
                    mDescription = model.CaptureType.Description
                };
                var session =
                    new CaptureRepository.sSessionInfo()
                {
                    mLocationCode   = model.Session.LocationCode,
                    mCamDate        = model.Session.CameraDate,
                    mCamSession     = model.Session.CameraSessionID,
                    mMachineId      = model.Session.MachineID,
                    mNothingDoneCol = model.Session.NothingDoneCol,
                    mNothingDone    = model.Session.NothingDone,
                    mCamDateCol     = model.Session.CamDateCol,
                    mColumns        = model.Session.Columns
                };

                var remoteCaseInfo = new CaptureRepository.sCaseInfo();

                var captureRepository = new CaptureRepository(dbContext, SessionModel.CredentialID, SessionModel.UserName);

                if (!captureRepository.CaseAccept(session, model.OffenceSetID, model.FileNumber, model.NextFileNumber, model.OfficerID, model.SheetNumber, model.HasSheetNumberChanged, ref caseInfo, ref remoteCaseInfo, captureType, ref captureTypes, model.PrintImageID, computerName))
                {
                    return(this.BadRequestEx(Error.PopulateMethodFailed(captureRepository.Error)));
                }

                return(Ok(
                           new NewCaseModel
                {
                    Case = new CaseModel
                    {
                        VehicleRegisterNumber = caseInfo.mVehicleRegNo,
                        VehicleType = caseInfo.mVehicleType,
                        OffenceDate = caseInfo.mOffenceDate,
                        OffencePlace = caseInfo.mOffencePlace,
                        PreviousRejectID = caseInfo.mPrevRejectID,
                        OffenceSpeed = caseInfo.mOffenceSpeed,
                        OffenceZone = caseInfo.mOffenceZone,
                        Image1 = caseInfo.mImage1,
                        Image2 = caseInfo.mImage2,
                        Image3 = caseInfo.mImage3,
                        Image4 = caseInfo.mImage4,
                        ImageNP = caseInfo.mImageNP,
                        Image1ID = caseInfo.mImage1ID,
                        Image2ID = caseInfo.mImage2ID,
                        Image3ID = caseInfo.mImage3ID,
                        Image4ID = caseInfo.mImage4ID,
                        OnlyOneImage = caseInfo.mOnlyOneImage,
                        PrintImageNumber = caseInfo.mPrintImageNo,
                        RemoteImage1 = remoteCaseInfo.mImage1,
                        RemoteImage2 = remoteCaseInfo.mImage2,
                        RemoteImage3 = remoteCaseInfo.mImage3,
                        RemoteImage4 = remoteCaseInfo.mImage4,
                        RemoteImageNP = remoteCaseInfo.mImageNP,
                        RemoteImage1ID = remoteCaseInfo.mImage1ID,
                        RemoteImage2ID = remoteCaseInfo.mImage2ID,
                        RemoteImage3ID = remoteCaseInfo.mImage3ID,
                        RemoteImage4ID = remoteCaseInfo.mImage4ID,
                        RemotePrintImageNumber = remoteCaseInfo.mPrintImageNo,
                        IsNumberPlateCentralCaptured = captureRepository.NumberPlateCapturedOnCentral,
                        NumberPlateCentralPath = captureRepository.NumberPlateCapturePath
                    },
                    CaptureTypes = captureTypes.Select(f => new CaptureTypeModel {
                        ID = f.mID, Amount = f.mAmount, Code = f.mCode, Description = f.mDescription, Beskrywing = f.mBeskrywing, Type = f.mType
                    }).ToList(),
                }));
            }
        }