Esempio n. 1
0
        public bool CaseReject(sSessionInfo session, int reasonID, int offenceSet, int fileNumber, int nextFileNumber, int officerID, string sheetNo, bool sheetNoChanged, ref sCaseInfo caseInfo, ref sCaseInfo remoteCaseInfo, ref List <sCaptureTypes> types, string computerName)
        {
            _error = string.Empty;

            types.Clear();

            try
            {
                OracleParameter par;
                var             cmd = new OracleCommand("ITS.OFFENCE_CAPTURE.reject_cap_multi_image", DbConnection);
                cmd.CommandType = CommandType.StoredProcedure;

                // Inputs
                par              = new OracleParameter("P_USER_ID", _credentialID);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_USER_NAME", _credentialUsername);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_COMPUTER_NAME", computerName);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_OFFENCE_SET", offenceSet);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_CAM_DATE", session.mCamDate);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_CAM_SESSION", session.mCamSession);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_LOCATION_CODE", session.mLocationCode);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_FILE_NUMBER", fileNumber);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_NEXT_FILE_NUMBER", nextFileNumber);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_REJECTION_ID", reasonID);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_OFFICER_ID", officerID);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_FIELD_SHEET_NO", sheetNo);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_FIELD_SHEET_CHANGE", sheetNoChanged ? 1 : 0);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);

                // Outputs
                cmd.Parameters.Add(new OracleParameter("O_VEHICLE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_VEHICLE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_LOCAL_IMAGE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_LOCAL_IMAGE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_REMOTE_IMAGE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_REMOTE_IMAGE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_ALT_VEHICLE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_ALT_VEHICLE_CURSOR"));

                CaseInitialise(out caseInfo);

                cmd.ExecuteNonQuery();

                if (nextFileNumber != -1) // Not last ticket
                {
                    if (!VehicleFromCursor((OracleRefCursor)cmd.Parameters["O_VEHICLE_CURSOR"].Value, ref caseInfo))
                    {
                        return(false);
                    }

                    if (!ImagesFromCursor((OracleRefCursor)cmd.Parameters["O_LOCAL_IMAGE_CURSOR"].Value, ref caseInfo))
                    {
                        return(false);
                    }

                    if (!ImagesFromCursor((OracleRefCursor)cmd.Parameters["O_REMOTE_IMAGE_CURSOR"].Value, ref remoteCaseInfo))
                    {
                        return(false);
                    }

                    if (!TypesFromCursor((OracleRefCursor)cmd.Parameters["O_ALT_VEHICLE_CURSOR"].Value, ref types))
                    {
                        return(false);
                    }
                }

                cmd.Dispose();
            }
            catch (Exception ex)
            {
                _error = ex.Message;
                ErrorCheckFriendly();
                return(false);
            }

            return(true);
        }
Esempio n. 2
0
        public bool CasePrevious(sSessionInfo session, int offenceSet, int fileNumber, ref sCaseInfo caseInfo, ref sCaseInfo remoteCaseInfo, ref List <sCaptureTypes> types, string computerName)
        {
            _error = string.Empty;

            types.Clear();

            try
            {
                OracleParameter par;
                var             cmd = new OracleCommand("ITS.OFFENCE_CAPTURE.get_last_cap_multi_image", DbConnection);
                cmd.CommandType = CommandType.StoredProcedure;

                // Inputs
                par              = new OracleParameter("P_USER_ID", _credentialID);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_USER_NAME", _credentialUsername);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_COMPUTER_NAME", computerName);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_OFFENCE_SET", offenceSet);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_FILE_NUMBER", fileNumber);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);

                // Outputs
                cmd.Parameters.Add(new OracleParameter("O_VEHICLE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_VEHICLE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_LOCAL_IMAGE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_LOCAL_IMAGE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_REMOTE_IMAGE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_REMOTE_IMAGE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_ALT_VEHICLE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_ALT_VEHICLE_CURSOR"));

                CaseInitialise(out caseInfo);

                cmd.ExecuteNonQuery();

                if (!VehicleFromCursor((OracleRefCursor)cmd.Parameters["O_VEHICLE_CURSOR"].Value, ref caseInfo))
                {
                    return(false);
                }

                if (!ImagesFromCursor((OracleRefCursor)cmd.Parameters["O_LOCAL_IMAGE_CURSOR"].Value, ref caseInfo))
                {
                    return(false);
                }

                if (!ImagesFromCursor((OracleRefCursor)cmd.Parameters["O_REMOTE_IMAGE_CURSOR"].Value, ref remoteCaseInfo))
                {
                    return(false);
                }

                if (!TypesFromCursor((OracleRefCursor)cmd.Parameters["O_ALT_VEHICLE_CURSOR"].Value, ref types))
                {
                    return(false);
                }

                cmd.Dispose();
            }
            catch (Exception ex)
            {
                _error = ex.Message;
                ErrorCheckFriendly();
                return(false);
            }

            return(true);
        }
Esempio n. 3
0
        public bool CaseFirst(sSessionInfo session, bool loadNewOnly, ref List <sRejectReasons> reasons, ref List <sCaptureTypes> types, ref List <int> fileNumbers, ref List <sOfficerInfo> officers, ref sCaseInfo caseInfo, ref sCaseInfo remoteCaseInfo, out int offenceSet, out int startIndex, string computerName)
        {
            _error     = string.Empty;
            offenceSet = -1;
            startIndex = 0;

            CaseInitialise(out caseInfo);
            CaseInitialise(out remoteCaseInfo);

            fileNumbers.Clear();
            reasons.Clear();
            types.Clear();

            try
            {
                OracleParameter par;
                var             cmd = new OracleCommand("ITS.OFFENCE_CAPTURE.get_cap_multi_image_lookup", DbConnection);
                cmd.CommandType = CommandType.StoredProcedure;

                // Inputs
                par              = new OracleParameter("P_USER_ID", _credentialID);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_COMPUTER_NAME", computerName);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_CAM_DATE", session.mCamDate);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_CAM_SESSION", session.mCamSession);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_LOCATION_CODE", session.mLocationCode);
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Varchar2;
                cmd.Parameters.Add(par);
                par              = new OracleParameter("P_LOAD_TYPE", (loadNewOnly ? 1 : 0));
                par.Direction    = ParameterDirection.Input;
                par.OracleDbType = OracleDbType.Int32;
                cmd.Parameters.Add(par);


                // Outputs
                cmd.Parameters.Add(new OracleParameter("O_NUMBER_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_NUMBER_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_HOLDING_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_HOLDING_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_REJECTION_REASON_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_REJECTION_REASON_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_OFFICER_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_OFFICER_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_VEHICLE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_VEHICLE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_LOCAL_IMAGE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_LOCAL_IMAGE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_REMOTE_IMAGE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_REMOTE_IMAGE_CURSOR"));
                cmd.Parameters.Add(new OracleParameter("O_ALT_VEHICLE_CURSOR", OracleDbType.RefCursor, 0, ParameterDirection.Output, true, 0, 0, "", DataRowVersion.Current, "O_ALT_VEHICLE_CURSOR"));

                par = new OracleParameter();
                par.ParameterName = "O_FIRST_FILE_NR";
                par.Direction     = ParameterDirection.Output;
                par.OracleDbType  = OracleDbType.Int32;
                par.Size          = 4;
                cmd.Parameters.Add(par);

                par = new OracleParameter();
                par.ParameterName = "O_OFFENCE_SET";
                par.Direction     = ParameterDirection.Output;
                par.OracleDbType  = OracleDbType.Int32;
                par.Size          = 4;
                cmd.Parameters.Add(par);

                par = new OracleParameter();
                par.ParameterName = "O_CENTRAL_INDICATOR";
                par.Direction     = ParameterDirection.Output;
                par.OracleDbType  = OracleDbType.Int32;
                par.Size          = 4;
                cmd.Parameters.Add(par);

                cmd.ExecuteNonQuery();

                int firstFileNumber = int.Parse(cmd.Parameters["O_FIRST_FILE_NR"].Value.ToString());
                offenceSet = int.Parse(cmd.Parameters["O_OFFENCE_SET"].Value.ToString());
                _numberPlateCapturedOnCentral = (int.Parse(cmd.Parameters["O_CENTRAL_INDICATOR"].Value.ToString()) == 1 ? true : false);

                FileNumbersFromCursor((OracleRefCursor)cmd.Parameters["O_HOLDING_CURSOR"].Value, ref fileNumbers);
                startIndex = fileNumbers.Count;
                fileNumbers.Add(firstFileNumber);
                FileNumbersFromCursor((OracleRefCursor)cmd.Parameters["O_NUMBER_CURSOR"].Value, ref fileNumbers);

                if (!ReasonsFromCursor((OracleRefCursor)cmd.Parameters["O_REJECTION_REASON_CURSOR"].Value, ref reasons))
                {
                    return(false);
                }

                if (!OfficersFromCursor((OracleRefCursor)cmd.Parameters["O_OFFICER_CURSOR"].Value, ref officers))
                {
                    return(false);
                }

                if (!VehicleFromCursor((OracleRefCursor)cmd.Parameters["O_VEHICLE_CURSOR"].Value, ref caseInfo))
                {
                    return(false);
                }

                if (!ImagesFromCursor((OracleRefCursor)cmd.Parameters["O_LOCAL_IMAGE_CURSOR"].Value, ref caseInfo))
                {
                    return(false);
                }

                if (!ImagesFromCursor((OracleRefCursor)cmd.Parameters["O_REMOTE_IMAGE_CURSOR"].Value, ref remoteCaseInfo))
                {
                    return(false);
                }

                if (!TypesFromCursor((OracleRefCursor)cmd.Parameters["O_ALT_VEHICLE_CURSOR"].Value, ref types))
                {
                    return(false);
                }

                cmd.Dispose();
            }
            catch (Exception ex)
            {
                _error = ex.Message;
                ErrorCheckFriendly();
                return(false);
            }

            return(true);
        }