Beispiel #1
0
        protected override void CreateSmallLabel(PDFDocument document, TachographDocument tachographDocument)
        {
            var table = new PdfPTable(4);

            table.TotalWidth = 136;
            table.SetWidths(new float[] { 58, 10, 10, 58 });

            GetSmallImage(document, table);

            document.AddSpannedCell(table, Resources.TXT_TACHOGRAPH_AND_M1N1_INSPECTION_PLATE, 4, document.GetSmallerFont(), 29);

            document.AddSpannedCell(table, string.Format(Resources.TXT_W_FACTOR_IMP_KM, tachographDocument.WFactor), 2, document.GetXSmallFont(false), 15);
            document.AddSpannedCell(table, string.Format(Resources.TXT_K_FACTOR_IMP_KM, tachographDocument.KFactor), 2, document.GetXSmallFont(false), 15);

            document.AddSpannedCell(table, string.Format(Resources.TXT_L_FACTOR_MM, tachographDocument.LFactor), 1, document.GetXSmallFont(false), 15, 58);
            document.AddSpannedCell(table, string.Format(Resources.TXT_VIN_SMALL_LABEL, tachographDocument.VIN), 3, document.GetXXSmallFont(), 16, 68);

            document.AddSpannedCell(table, string.Format(Resources.TXT_TYRE_SIZE_SMALL_LABEL, tachographDocument.TyreSize), 4, document.GetSmallFont(false), 17, Element.ALIGN_LEFT);
            document.AddSpannedCell(table, string.Format(Resources.TXT_SERIAL_NUMBER_SMALL_LABEL, tachographDocument.SerialNumber), 4, document.GetSmallFont(false), 17, Element.ALIGN_LEFT);

            document.AddSpannedCell(table, string.Format(Resources.TXT_M1N1_SERIAL_SMALL_LABEL, tachographDocument.TachographAdapterSerialNumber), 4, document.GetSmallFont(false), 18, Element.ALIGN_LEFT);
            document.AddSpannedCell(table, string.Format(Resources.TXT_LOCATION_SMALL_LABEL, tachographDocument.TachographAdapterLocation), 4, document.GetSmallFont(false), 16, Element.ALIGN_LEFT);
            document.AddSpannedCell(table, string.Format(Resources.TXT_COLOR_SMALL_LABEL, tachographDocument.TachographCableColor), 4, document.GetSmallFont(false), 16, Element.ALIGN_LEFT);

            GetCompanyDetails(document, table, 69, 3, document.GetSmallerFont());

            document.AddSpannedCell(table, Resources.TXT_SMALL_LABEL_DATE + GetCalibrationTime(tachographDocument.CalibrationTime), 1, document.GetRegularFont(false));
            document.AddSpannedCell(table, GetLicenseNumberParagraph(document, false), 4, 16, Element.ALIGN_LEFT);

            table.WriteSelectedRows(0, -1, document.Document.LeftMargin + 2, document.Height - 103, document.ContentByte);
        }
Beispiel #2
0
        protected override void CreateSmallLabel(PDFDocument document, TachographDocument tachographDocument)
        {
            var table = new PdfPTable(4)
            {
                TotalWidth = 136
            };

            table.SetWidths(new float[] { 58, 10, 20, 48 });

            GetSmallImage(document, table);

            document.AddSpannedCell(table, TrimDocumentType(tachographDocument.DocumentType), 4, document.GetSmallerFont(), 21);

            document.AddSpannedCell(table, string.Format(Resources.TXT_SMALL_W_FACTOR, tachographDocument.WFactor), 2, document.GetXSmallFont(false), 20);
            document.AddSpannedCell(table, string.Format(Resources.TXT_SMALL_K_FACTOR, tachographDocument.KFactor), 2, document.GetXSmallFont(false), 20);

            document.AddSpannedCell(table, string.Format(Resources.TXT_SMALL_L_FACTOR, tachographDocument.LFactor, Resources.TXT_MM), 4, document.GetRegularFont(false), 20, 58);
            document.AddSpannedCell(table, string.Format(Resources.TXT_SMALL_TYRE_SIZE, tachographDocument.TyreSize), 4, document.GetSmallerFont(), 20, Element.ALIGN_LEFT);
            document.AddSpannedCell(table, string.Format(Resources.TXT_SMALL_VIN, tachographDocument.VIN), 4, document.GetSmallerFont(), 20, 68);
            document.AddSpannedCell(table, string.Format(Resources.TXT_SMALL_SERIAL_NUMBER, tachographDocument.SerialNumber), 4, document.GetSmallerFont(), 20, Element.ALIGN_LEFT);

            GetCompanyDetails(document, table, 85, 3, document.GetRegularFont(false));

            document.AddSpannedCell(table, string.Format(Resources.TXT_SMALL_DATE, GetCalibrationTime(tachographDocument.CalibrationTime)), 1, document.GetSmallFont(false));
            document.AddSpannedCell(table, GetLicenseNumberParagraph(document, false), 4, 20, Element.ALIGN_LEFT);

            table.WriteSelectedRows(0, -1, document.Document.LeftMargin + 2, document.Height - 103, document.ContentByte);
        }
        public static TachographDocument Create(CalibrationRecord calibrationRecord)
        {
            var tachographDocument = new TachographDocument();

            tachographDocument.Convert(calibrationRecord);
            tachographDocument.IsDigital = true;

            var documentTypes = DocumentType.GetDocumentTypes(true);
            var settings      = ContainerBootstrapper.Resolve <ISettingsRepository <MiscellaneousSettings> >().GetMiscellaneousSettings();

            tachographDocument.DocumentType = tachographDocument.DocumentType ?? documentTypes.FirstOrDefault(c => string.Equals(c, settings.DefaultDigitalDocumentType));

            SetTechnician(tachographDocument, calibrationRecord);
            SetTachographModel(tachographDocument, calibrationRecord);
            SetDepotName(tachographDocument);

            tachographDocument.Created = DateTime.Now;

            if (tachographDocument.CalibrationTime == null)
            {
                tachographDocument.CalibrationTime = DateTime.Now;
            }

            return(tachographDocument);
        }
        private Document FindDocumentLocally()
        {
            TachographDocument tachographDocument = Find(TachographDocumentRepository);

            if (tachographDocument != null)
            {
                return(tachographDocument);
            }

            UndownloadabilityDocument undownloadabilityDocument = Find(UndownloadabilityDocumentRepository);

            if (undownloadabilityDocument != null)
            {
                return(undownloadabilityDocument);
            }

            LetterForDecommissioningDocument letterForDecommissioningDocument = Find(LetterForDecommissioningRepository);

            if (letterForDecommissioningDocument != null)
            {
                return(letterForDecommissioningDocument);
            }

            return(null);
        }
        protected void TryAddSignature(PDFDocument document, TachographDocument tachographDocument, int x, int y = 88)
        {
            Image signatureImage = null;

            var userRepository = ContainerBootstrapper.Resolve <IRepository <User> >();
            var user           = UserManagement.GetUser(userRepository, UserManagement.LoggedInUserName);

            if (user != null && user.Image != null)
            {
                signatureImage = user.Image;
            }

            IRepository <Technician> technicianRepository = ContainerBootstrapper.Resolve <IRepository <Technician> >();
            var technicianUser = technicianRepository.FirstOrDefault(c => string.Equals(c.Name, tachographDocument.Technician));

            if (technicianUser != null && technicianUser.Image != null)
            {
                signatureImage = technicianUser.Image;
            }

            if (signatureImage != null)
            {
                Image image = ImageHelper.Scale(signatureImage, 500, 50);
                document.AddImage(ImageHelper.ToByteArray(image), image.Width, image.Height, x, y);
            }
        }
Beispiel #6
0
        protected override void CreateMediumLabel(PDFDocument document, TachographDocument tachographDocument)
        {
            var table = new PdfPTable(4)
            {
                TotalWidth = 266
            };

            table.SetWidths(new float[] { 108, 54, 54, 108 });

            GetWorkshopImage(document, table);
            document.AddSpannedCell(table, TrimDocumentType(tachographDocument.DocumentType), 2, document.GetSmallerFont(), 29);

            document.AddSpannedCell(table, string.Format(Resources.TXT_MEDIUM_W_FACTOR, tachographDocument.WFactor), 1, document.GetXSmallFont(false), 16);
            document.AddSpannedCell(table, string.Format(Resources.TXT_MEDIUM_K_FACTOR, tachographDocument.KFactor), 2, document.GetXSmallFont(false), 16);
            document.AddSpannedCell(table, string.Format(Resources.TXT_MEDIUM_L_FACTOR, tachographDocument.LFactor, Resources.TXT_MM), 1, document.GetXSmallFont(false), 16);

            document.AddSpannedCell(table, string.Format(Resources.TXT_MEDIUM_VIN, tachographDocument.VIN), 2, document.GetSmallFont(false), 16, 68);
            document.AddSpannedCell(table, string.Format(Resources.TXT_MEDIUM_TYRE_SIZE, tachographDocument.TyreSize), 2, document.GetSmallFont(false), 17, Element.ALIGN_LEFT);

            document.AddSpannedCell(table, string.Format(Resources.TXT_MEDIUM_SERIAL_NUMBER, tachographDocument.SerialNumber), 2, document.GetSmallFont(false), 17, Element.ALIGN_LEFT);
            document.AddSpannedCell(table, string.Format(Resources.TXT_MEDIUM_DATE, GetCalibrationTime(tachographDocument.CalibrationTime)), 2, document.GetRegularFont(false));

            GetCompanyDetails(document, table, 45, 4, document.GetRegularFont(false));
            document.AddSpannedCell(table, GetLicenseNumberParagraph(document, true), 4, 12, Element.ALIGN_LEFT);

            table.WriteSelectedRows(0, -1, document.Document.LeftMargin + 193, document.Height - 103, document.ContentByte);
        }
Beispiel #7
0
        private static void CreateDataTable(IList <TachographDocument> documents)
        {
            var table = new PdfPTable(10);

            table.SetWidths(new float[] { 170, 100, 100, 130, 100, 100, 100, 100, 110, 150 });

            Document.AddCell(table, Resources.TXT_VOSA_REGISTRATION_HEADER);
            Document.AddCell(table, Resources.TXT_VOSA_VEHICLE_TYPE_HEADER);
            Document.AddSpannedCell(table, Resources.TXT_VOSA_TACHOGRAPH_DETAILS_HEADER, 2);
            Document.AddCell(table, Resources.TXT_VOSA_TYPE_INSPECTION_HEADER);
            Document.AddCell(table, Resources.TXT_VOSA_TURNS_HEADER);
            Document.AddCell(table, Resources.TXT_VOSA_L_HEADER);
            Document.AddCell(table, Resources.TXT_VOSA_DATE_HEADER);
            Document.AddCell(table, Resources.TXT_VOSA_TECH_INITIALS_HEADER);
            Document.AddCell(table, Resources.TXT_VOSA_INVOICE_NUMBER_HEADER);

            for (int j = 1; j < 19; j++)
            {
                if (j < documents.Count + 1)
                {
                    TachographDocument tachograph = documents[j - 1];


                    BaseColor backgroundColor = null;
                    if (tachograph.IsQCCheck)
                    {
                        backgroundColor = new BaseColor(255, 255, 224);
                    }

                    AddCell(table, $"{tachograph.RegistrationNumber} / \n{tachograph.VIN}", backgroundColor);
                    AddCell(table, tachograph.VehicleType.Substring(0, 1).ToUpper(), backgroundColor);

                    string type = tachograph.IsDigital ? Resources.TXT_DIGITAL : Resources.TXT_ANALOGUE;
                    if (tachograph.Tampered)
                    {
                        type = type + Resources.TXT_STAR;
                    }
                    AddCell(table, type, backgroundColor);

                    AddCell(table, tachograph.SerialNumber, backgroundColor);
                    AddCell(table, tachograph.DocumentType.Substring(0, 1).ToUpper(), backgroundColor);
                    AddCell(table, tachograph.WFactor, backgroundColor);
                    AddCell(table, tachograph.LFactor, backgroundColor);
                    AddCell(table, GetCalibrationTime(tachograph.CalibrationTime), backgroundColor);
                    AddCell(table, tachograph.IsDigital ? tachograph.CardSerialNumber : GetTechnicianInitials(tachograph.Technician), backgroundColor);
                    AddCell(table, tachograph.InvoiceNumber, backgroundColor);
                }
                else
                {
                    for (int i = 0; i < 11; i++)
                    {
                        AddCell(table, String.Empty);
                    }
                }
            }

            table.TotalWidth = 520;
            table.WriteSelectedRows(0, -1, Document.Document.LeftMargin + 10, Document.Height - 160, Document.ContentByte);
        }
 public void Create(PDFDocument pdfDocument, TachographDocument tachographDocument)
 {
     CustomerContact = _customerContactRepository.FirstOrDefault(c => c.Name == tachographDocument.CustomerContact);
     CreateLargeLabelLogos(pdfDocument, tachographDocument, 0, 10);
     CreateLargeLabelAddress(pdfDocument, tachographDocument, 0, 230);
     CreateLargeLabel(pdfDocument, tachographDocument, 0, 400);
     CreateLargeLabelExpiry(pdfDocument, tachographDocument, 0, 360);
 }
Beispiel #9
0
        protected override void CreateLargeLabelExpiry(PDFDocument document, TachographDocument tachographDocument, int startHorizontal, int startVertical)
        {
            DateTime?calibrationDate = tachographDocument.CalibrationTime ?? DateTime.Today;

            string expiryDate = Resources.TXT_EXPIRATION_DATE + (GetCalibrationTime(calibrationDate.Value.AddYears(2).AddDays(-1)));

            AbsolutePositionText(document, expiryDate, (startHorizontal + 30), (startVertical), 580, 100, document.GetXLargeFont(false));
        }
        private void PrintLabel(TachographDocument tachographDocument)
        {
            if (ReprintMode != ReprintMode.Label)
            {
                return;
            }

            LabelHelper.Print(tachographDocument);
        }
Beispiel #11
0
        public void PopulateFromCalibration(TachographDocument document)
        {
            if (document == null || !document.IsQCCheck)
            {
                return;
            }

            Document = new QCReportViewModel(document);
        }
Beispiel #12
0
        protected override void CreateLargeLabelAddress(PDFDocument document, TachographDocument tachographDocument, int startHorizontal, int startVertical)
        {
            //Add Workshop Adress!!
            int verticalPos = startVertical;

            if (CustomerContact != null)
            {
                if (CustomerContact.Name != string.Empty)
                {
                    AbsolutePositionText(document, CustomerContact.Name, (startHorizontal + 350), (verticalPos), 580, 100, document.GetXLargeFont(false));
                    verticalPos += 20;
                }
                if (CustomerContact.Address != string.Empty)
                {
                    AbsolutePositionText(document, CustomerContact.Address, (startHorizontal + 350), (verticalPos), 580, 100, document.GetXLargeFont(false));
                    verticalPos += 20;
                }
                if (CustomerContact.Town != string.Empty)
                {
                    AbsolutePositionText(document, CustomerContact.Town, (startHorizontal + 350), (verticalPos), 580, 100, document.GetXLargeFont(false));
                    verticalPos += 20;
                }
                if (CustomerContact.PostCode != string.Empty)
                {
                    AbsolutePositionText(document, CustomerContact.PostCode, (startHorizontal + 350), (verticalPos), 580, 100, document.GetXLargeFont(false));
                }
            }


            //Add Company Address
            verticalPos = startVertical;
            if (WorkshopSettings.WorkshopName != string.Empty)
            {
                AbsolutePositionText(document, WorkshopSettings.WorkshopName, (startHorizontal + 32), (verticalPos), 580, 100, document.GetXLargeFont(false));
                verticalPos += 20;
            }
            if (WorkshopSettings.Address1 != string.Empty)
            {
                AbsolutePositionText(document, WorkshopSettings.Address1, (startHorizontal + 32), (verticalPos), 580, 100, document.GetXLargeFont(false));
                verticalPos += 20;
            }

            if (WorkshopSettings.Town != string.Empty)
            {
                AbsolutePositionText(document, WorkshopSettings.Town, (startHorizontal + 32), (verticalPos), 580, 100, document.GetXLargeFont(false));
                verticalPos += 20;
            }

            if (WorkshopSettings.PostCode != string.Empty)
            {
                AbsolutePositionText(document, WorkshopSettings.PostCode, (startHorizontal + 32), (verticalPos), 580, 100, document.GetXLargeFont(false));
            }
        }
Beispiel #13
0
 public static void Upload(TachographDocument document, bool isUpdating = false)
 {
     CallAsync(() =>
     {
         if (isUpdating)
         {
             _connectClient.Service.UpdateTachographDocument(CheckSerializedData(document));
         }
         else
         {
             _connectClient.Service.UploadTachographDocument(CheckSerializedData(document));
         }
         SaveDocumentUpload(document);
     });
 }
Beispiel #14
0
        public static void Print(TachographDocument document)
        {
            var registrationData = GetRegistrationData();
            var workshopSettings = GetWorkshopSettings();
            var printerSettings  = GetPrinterSettings();

            var parameters = new WorkerParameters();

            parameters.SetParameter("AutoPrintLabels", printerSettings.AutoPrintLabels);
            parameters.SetParameter("LabelNumberOfCopies", printerSettings.LabelNumberOfCopies);

            parameters.SetParameter("Address1", workshopSettings.Address1);
            parameters.SetParameter("Town", workshopSettings.Town);
            parameters.SetParameter("PostCode", workshopSettings.PostCode);
            parameters.SetParameter("WorkshopName", workshopSettings.WorkshopName);
            parameters.SetParameter("PhoneNumber", workshopSettings.PhoneNumber);
            parameters.SetParameter("DateFormat", Constants.LongYearDateFormat);
            parameters.SetParameter("LicenseKey", registrationData.LicenseKey);
            parameters.SetParameter("ExpirationDate", registrationData.ExpirationDate);
            parameters.SetParameter("DefaultLabelPrinter", printerSettings.DefaultLabelPrinter);
            parameters.SetParameter("CompanyName", registrationData.CompanyName);
            parameters.SetParameter("TemporaryDirectory", ImageHelper.GetTemporaryDirectory());
            parameters.SetParameter("DefaultFont", printerSettings.DefaultFont);
            parameters.SetParameter("ShowCompanyNameOnLabels", printerSettings.ShowCompanyNameOnLabels);

            parameters.SetParameter("DocumentType", document.DocumentType);
            parameters.SetParameter("KFactor", document.KFactor);
            parameters.SetParameter("WFactor", document.WFactor);
            parameters.SetParameter("LFactor", document.LFactor);
            parameters.SetParameter("VIN", document.VIN);
            parameters.SetParameter("SerialNumber", document.SerialNumber);
            parameters.SetParameter("TyreSize", document.TyreSize);
            parameters.SetParameter("CalibrationTime", document.CalibrationTime);

            parameters.SetParameter("SealNumber", registrationData.SealNumber);
            parameters.SetParameter("SkillrayTachoIcon", ImageHelper.LoadFromResources("skillray_tacho_icon").ToByteArray());

            var workerTask = new WorkerTask {
                TaskName = WorkerTaskName.LabelPrint
            };

            workerTask.SetWorkerParameters(parameters);

            WorkerHelper.QueueTask(workerTask);
        }
Beispiel #15
0
        public void Parse(TachographDocument document)
        {
            if (document == null)
            {
                return;
            }

            CalibrationDate = document.CalibrationTime.GetValueOrDefault();
            InspectionDate  = document.InspectionDate.GetValueOrDefault();
            VehicleMake     = document.VehicleMake;
            VehicleModel    = document.VehicleModel;
            TachoModel      = document.TachographModel;

            if (!string.IsNullOrEmpty(document.InspectionInfo))
            {
                InspectionData = document.InspectionInfo;
            }
        }
Beispiel #16
0
        protected override void CreateLargeLabelLogos(PDFDocument document, TachographDocument tachographDocument, int startHorizontal, int startVertical)
        {
            if (WorkshopSettings.Image != null)
            {
                const float profileImageMaxHeight = 145;
                const float profileImageMaxWidth  = 545;

                float widthScale  = profileImageMaxWidth / WorkshopSettings.Image.Width;
                float heightScale = profileImageMaxHeight / WorkshopSettings.Image.Height;
                float scale       = Math.Min(widthScale, heightScale);
                float newWidth    = WorkshopSettings.Image.Width * scale;
                float newHeight   = WorkshopSettings.Image.Height * scale;

                document.AddImage(WorkshopSettings.RawImage, newWidth, newHeight, (startHorizontal + 20), (startVertical + 675));
            }

            //Skillray
            Image image = ImageHelper.LoadFromResources("webcal_print_logo").ToBitmap();

            document.AddImage(image.ToByteArray(), 180, 41, (startHorizontal + 350), (startVertical + 670));
        }
Beispiel #17
0
        public QCReportViewModel(TachographDocument document) : this()
        {
            var workshopSettings = ContainerBootstrapper.Resolve <ISettingsRepository <WorkshopSettings> >().GetWorkshopSettings();

            TachoCentreLine1            = workshopSettings.Address1;
            TachoCentreLine2            = workshopSettings.Address2;
            TachoCentreLine3            = workshopSettings.Address3;
            TachoCentreCity             = workshopSettings.Town;
            TachoCentrePostCode         = workshopSettings.PostCode;
            TechnicianName              = document.Technician;
            DateOfAudit                 = document.InspectionDate.HasValue ? document.InspectionDate.Value : DateTime.Now;
            TachographMake              = document.TachographMake;
            TachographModel             = document.TachographModel;
            TachographSerialNumber      = document.SerialNumber;
            VehicleMake                 = document.VehicleMake;
            VehicleType                 = document.VehicleType;
            VehicleRegistrationNumber   = document.RegistrationNumber;
            VehicleIdentificationNumber = document.VIN;
            WFactor = document.WFactor.ToInt();
            LFactor = document.LFactor.ToInt();
            KFactor = document.KFactor.ToInt();

            IsUILocked = true;
        }
Beispiel #18
0
 protected virtual void CreateLargeLabelLogos(PDFDocument document, TachographDocument tachographDocument, int startHorizontal, int startVertical)
 {
 }
Beispiel #19
0
 protected virtual void CreateKFactorLabel(PDFDocument document, TachographDocument tachographDocument)
 {
 }
Beispiel #20
0
 protected virtual void CreateSmallLabel(PDFDocument document, TachographDocument tachographDocument)
 {
 }
Beispiel #21
0
 public void CreateFullCertificate(PDFDocument pdfDocument, TachographDocument tachographDocument, bool excludeLogos)
 {
     CustomerContact = _customerContactRepository.FirstOrDefault(c => c.Name == tachographDocument.CustomerContact);
     CreateLargeCertificate(pdfDocument, tachographDocument, excludeLogos);
 }
Beispiel #22
0
        protected override void CreateLargeCertificate(PDFDocument document, TachographDocument tachographDocument, bool excludeLogos)
        {
            const int startHorizontal = 20;
            const int startVertical   = 0;

            document.DrawLine((startHorizontal), (startVertical), (startHorizontal + 555), (startVertical), TotalPageHeight);

            document.DrawLine((startHorizontal), (startVertical), (startHorizontal), (startVertical + 800), TotalPageHeight);

            document.DrawLine((startHorizontal + 555), (startVertical), (startHorizontal + 555), (startVertical + 800), TotalPageHeight);

            document.DrawLine((startHorizontal), (startVertical + 800), (startHorizontal + 555), (startVertical + 800), TotalPageHeight);

            document.DrawLine((startHorizontal), (startVertical + 290), (startHorizontal + 555), (startVertical + 290), TotalPageHeight);

            if (tachographDocument.MinorWorkDetails == null)
            {
                document.DrawLine((startHorizontal), (startVertical + 400), (startHorizontal + 555), (startVertical + 400), TotalPageHeight);
                document.DrawLine((startHorizontal), (startVertical + 600), (startHorizontal + 555), (startVertical + 600), TotalPageHeight);
            }
            else
            {
                document.DrawLine((startHorizontal), (startVertical + 420), (startHorizontal + 555), (startVertical + 420), TotalPageHeight);
                document.DrawLine((startHorizontal), (startVertical + 630), (startHorizontal + 555), (startVertical + 630), TotalPageHeight);
            }

            if (WorkshopSettings.Image != null && !excludeLogos)
            {
                var image = ImageHelper.Scale(WorkshopSettings.RawImage.ToImage(), 545, 150);
                document.AddImage(image, image.Width, image.Height, startHorizontal + 5, startVertical + 660);
            }

            AbsolutePositionText(document, Resources.TXT_TACHOGRAPH_CALIBRATION_CERTIFICATE.ToUpper(), startHorizontal + 200, startVertical + 170, 580, 100, document.GetRegularFont(true));
            document.DrawLine(startHorizontal + 200, startVertical + 188, startHorizontal + 367, startVertical + 188, TotalPageHeight);

            if (CustomerContact != null)
            {
                AbsolutePositionText(document, Resources.TXT_CUSTOMER_DETAILS.ToUpper(), startHorizontal + 5, startVertical + 200, 200, 40, document.GetRegularFont(true));
                if (CustomerContact.Name != null)
                {
                    AbsolutePositionText(document, CustomerContact.Name.ToUpper(), startHorizontal + 5, startVertical + 220, 200, 40, document.GetRegularFont(false));
                }
                if (CustomerContact.Address != null)
                {
                    AbsolutePositionText(document, CustomerContact.Address.ToUpper(), startHorizontal + 5, startVertical + 230, 200, 40, document.GetRegularFont(false));
                }
                if (CustomerContact.Town != null)
                {
                    AbsolutePositionText(document, CustomerContact.Town.ToUpper(), startHorizontal + 5, startVertical + 240, 200, 40, document.GetRegularFont(false));
                }
                if (CustomerContact.PostCode != null)
                {
                    AbsolutePositionText(document, CustomerContact.PostCode.ToUpper(), startHorizontal + 5, startVertical + 250, 200, 40, document.GetRegularFont(false));
                }
            }

            if (!string.IsNullOrEmpty(tachographDocument.InvoiceNumber))
            {
                AbsolutePositionText(document, Resources.TXT_INVOICE_NUMBER.ToUpper(), startHorizontal + 287, startVertical + 240, 400, 40, document.GetRegularFont(true));
                AbsolutePositionText(document, tachographDocument.InvoiceNumber, startHorizontal + 540, startVertical + 240, 390, 40, document.GetRegularFont(false));
            }
            if (!string.IsNullOrEmpty(tachographDocument.VehicleType))
            {
                AbsolutePositionText(document, Resources.TXT_VEHICLE_TYPE.ToUpper(), startHorizontal + 299, startVertical + 250, 400, 40, document.GetRegularFont(true));
                AbsolutePositionText(document, tachographDocument.VehicleType, startHorizontal + 490, startVertical + 250, 390, 40, document.GetRegularFont(false));
            }

            DateTime?calibrationDate = tachographDocument.CalibrationTime ?? DateTime.Today;
            string   expiryDate      = GetCalibrationTime(calibrationDate.Value.AddYears(2).AddDays(-1));

            AbsolutePositionText(document, Resources.TXT_DATE.ToUpper(), startHorizontal + 370, (startVertical + 210), 355, 40, document.GetRegularFont(true));

            AbsolutePositionText(document, GetCalibrationTime(tachographDocument.CalibrationTime).ToUpper(), (startHorizontal + 450), (startVertical + 210), 390, 40, document.GetRegularFont(false));

            if (tachographDocument.DocumentType != Resources.TXT_MINOR_WORK_DETAILS && tachographDocument.IsDigital)
            {
                AbsolutePositionText(document, Resources.TXT_EXP.ToUpper(), startHorizontal + 260, (startVertical + 220), 400, 40, document.GetRegularFont(true));
                AbsolutePositionText(document, expiryDate.ToUpper(), (startHorizontal + 450), (startVertical + 220), 390, 40, document.GetRegularFont(false));
            }

            AbsolutePositionText(document, Resources.TXT_ANALOGUE_INSPECTIONS.ToUpper(), (startHorizontal + 5), (startVertical + 300), 590, 40, document.GetRegularFont(true));

            AbsolutePositionText(document, Resources.TXT_CALIBRATION.ToUpper(), (startHorizontal + 15), (startVertical + 310), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 5), (startVertical + 320), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_INSTALLATION)
            {
                document.DrawCheck((startHorizontal + 5), (startVertical + 320), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_2_YEAR.ToUpper(), (startHorizontal + 15), (startVertical + 320), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 5), (startVertical + 330), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_TWO_YEAR_INSPECTION)
            {
                document.DrawCheck((startHorizontal + 5), (startVertical + 330), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_6_YEAR.ToUpper(), (startHorizontal + 15), (startVertical + 330), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 5), (startVertical + 340), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_SIX_YEAR_CALIBRATION)
            {
                document.DrawCheck((startHorizontal + 5), (startVertical + 340), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_RECALIBRATION_CERTIFICATE.ToUpper(), (startHorizontal + 15), (startVertical + 340), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 5), (startVertical + 350), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_RECALIBRATION)
            {
                document.DrawCheck((startHorizontal + 5), (startVertical + 350), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_MINOR_WORK.ToUpper(), (startHorizontal + 15),
                                 (startVertical + 350), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 5), (startVertical + 360), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_MINOR_WORK && !tachographDocument.IsDigital)
            {
                document.DrawCheck((startHorizontal + 5), (startVertical + 360), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_DIGITAL_INSPECTIONS.ToUpper(), (startHorizontal + 240), (startVertical + 300), 590, 40, document.GetRegularFont(true));

            AbsolutePositionText(document, Resources.TXT_CALIBRATION.ToUpper(), (startHorizontal + 255), (startVertical + 310), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 240), (startVertical + 320), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_DIGITAL_INITIAL)
            {
                document.DrawCheck((startHorizontal + 240), (startVertical + 320), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_2_YEAR.ToUpper(), (startHorizontal + 255),
                                 (startVertical + 320), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 240), (startVertical + 330), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_DIGITAL_TWO_YEAR)
            {
                document.DrawCheck((startHorizontal + 240), (startVertical + 330), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_MINOR_WORK.ToUpper(), (startHorizontal + 255), (startVertical + 330), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 240), (startVertical + 340), TotalPageHeight);
            if (tachographDocument.DocumentType == Resources.TXT_LARGE_MINOR_WORK && tachographDocument.IsDigital)
            {
                document.DrawCheck((startHorizontal + 240), (startVertical + 340), TotalPageHeight);
            }

            AbsolutePositionText(document, Resources.TXT_NEW_BATTERY.ToUpper(), (startHorizontal + 255), (startVertical + 350), 590, 40, document.GetRegularFont(false));
            document.DrawCheckBox((startHorizontal + 240), (startVertical + 360), TotalPageHeight);
            if (tachographDocument.NewBattery)
            {
                document.DrawCheck((startHorizontal + 240), (startVertical + 360), TotalPageHeight);
            }

            if (tachographDocument.MinorWorkDetails != null)
            {
                AbsolutePositionText(document, Resources.TXT_MINOR_WORK_DETAILS_DETAILS.ToUpper(), (startHorizontal + 5), (startVertical + 370), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, tachographDocument.MinorWorkDetails.ToUpper(), (startHorizontal + 5), (startVertical + 380), 550, 72);
            }

            if (tachographDocument.MinorWorkDetails == null)
            {
                AbsolutePositionText(document, Resources.TXT_TACHOGRAPH.ToUpper(), (startHorizontal + 5), (startVertical + 410), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_MAKE.ToUpper(), (startHorizontal + 140), (startVertical + 430), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_TYPE.ToUpper(), (startHorizontal + 140), (startVertical + 440), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_SERIAL_NUMBER.ToUpper(), (startHorizontal + 140), (startVertical + 450), 550, 72, document.GetRegularFont(true));

                if (!string.IsNullOrEmpty(tachographDocument.TachographMake))
                {
                    AbsolutePositionText(document, tachographDocument.TachographMake.ToUpper(), (startHorizontal + 300), (startVertical + 430), 550, 72);
                }
                if (!string.IsNullOrEmpty(tachographDocument.TachographModel))
                {
                    AbsolutePositionText(document, tachographDocument.TachographModel.ToUpper(), (startHorizontal + 300), (startVertical + 440), 550, 72);
                }
                if (!string.IsNullOrEmpty(tachographDocument.SerialNumber))
                {
                    AbsolutePositionText(document, tachographDocument.SerialNumber.ToUpper(), (startHorizontal + 300), (startVertical + 450), 550, 72);
                }

                AbsolutePositionText(document, Resources.TXT_VEHICLE.ToUpper(), (startHorizontal + 5), (startVertical + 470), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, Resources.TXT_VRN.ToUpper(), (startHorizontal + 140), (startVertical + 490), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_VIN.ToUpper(), (startHorizontal + 140), (startVertical + 500), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_TYRE_SIZE.ToUpper(), (startHorizontal + 140), (startVertical + 510), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_W_FACTOR.ToUpper(), (startHorizontal + 140), (startVertical + 520), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_TYRE_L_FACTOR.ToUpper(), (startHorizontal + 140), (startVertical + 530), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_ODOMETER_READING.ToUpper(), (startHorizontal + 140), (startVertical + 540), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_SET_K_FACTOR.ToUpper(), (startHorizontal + 140), (startVertical + 550), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, $"{tachographDocument.VehicleMake} {tachographDocument.VehicleModel}".ToUpper(), (startHorizontal + 140), (startVertical + 480), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, tachographDocument.RegistrationNumber.ToUpper(), (startHorizontal + 300), (startVertical + 490), 550, 72);
                AbsolutePositionText(document, tachographDocument.VIN.ToUpper(), (startHorizontal + 300), (startVertical + 500), 550, 72);
                AbsolutePositionText(document, tachographDocument.TyreSize.ToUpper(), (startHorizontal + 300), (startVertical + 510), 550, 72);
                AbsolutePositionText(document, string.Format(Resources.TXT_IMP_KM, tachographDocument.WFactor).ToUpper(), (startHorizontal + 300), (startVertical + 520), 550, 72);
                AbsolutePositionText(document, string.Format(Resources.TXT_MM, tachographDocument.LFactor).ToUpper(), (startHorizontal + 300), (startVertical + 530), 550, 72);
                AbsolutePositionText(document, tachographDocument.OdometerReading.ToUpper(), (startHorizontal + 300), (startVertical + 540), 550, 72);
                AbsolutePositionText(document, string.Format(Resources.TXT_IMP_KM, tachographDocument.KFactor).ToUpper(), (startHorizontal + 300), (startVertical + 550), 550, 72);

                if (tachographDocument.MinorWorkDetails != null)
                {
                    AbsolutePositionText(document, Resources.TXT_MINOR_WORK_DETAILS_DETAILS.ToUpper(), (startHorizontal + 140), (startVertical + 570), 550, 72, document.GetRegularFont(true));
                    AbsolutePositionText(document, tachographDocument.MinorWorkDetails.ToUpper(), (startHorizontal + 140), (startVertical + 580), 550, 72);
                }

                AbsolutePositionText(document, Resources.TXT_AUTHORISED_TACHOGRAPH_CENTER, (startHorizontal + 30), (startVertical + 620), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, RegistrationData.CompanyName, (startHorizontal + 30), (startVertical + 650), 550, 72, document.GetRegularFont(false));

                AbsolutePositionText(document, WorkshopSettings.Address1, (startHorizontal + 30), (startVertical + 670), 550, 72, document.GetRegularFont(false));

                AbsolutePositionText(document, WorkshopSettings.Town, (startHorizontal + 30), (startVertical + 690), 550, 72, document.GetRegularFont(false));

                AbsolutePositionText(document, WorkshopSettings.PostCode, (startHorizontal + 30), (startVertical + 710), 550, 72, document.GetRegularFont(false));

                AbsolutePositionText(document, Resources.TXT_AUTHORISED_TESTERS_SIGNATURE, (startHorizontal + 300), (startVertical + 620), 700, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, string.Format(Resources.TXT_SIGNATURE_TECHNICIAN, tachographDocument.Technician), (startHorizontal + 300), (startVertical + 650), 550, 20);

                TryAddSignature(document, tachographDocument, (startHorizontal + 300));

                document.DrawLine((startHorizontal + 300), (startVertical + 715), (startHorizontal + 490), (startVertical + 715), TotalPageHeight);
                AbsolutePositionText(document, string.Format(Resources.TXT_DISTRIBUTOR_SEAL, RegistrationData.SealNumber), (startHorizontal + 300), (startVertical + 710), 550, 72, document.GetXSmallFont(false));

                AddAdvertisingSection(document, startHorizontal, startVertical);
            }
            else
            {
                AbsolutePositionText(document, Resources.TXT_TACHOGRAPH.ToUpper(), (startHorizontal + 5), (startVertical + 430), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_MAKE.ToUpper(), (startHorizontal + 140), (startVertical + 450), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_TYPE.ToUpper(), (startHorizontal + 140), (startVertical + 460), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_SERIAL_NUMBER.ToUpper(), (startHorizontal + 140), (startVertical + 470), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, tachographDocument.TachographMake.ToUpper(), (startHorizontal + 300), (startVertical + 450), 550, 72);
                AbsolutePositionText(document, tachographDocument.TachographModel.ToUpper(), (startHorizontal + 300), (startVertical + 460), 550, 72);
                AbsolutePositionText(document, tachographDocument.SerialNumber.ToUpper(), (startHorizontal + 300), (startVertical + 470), 550, 72);

                AbsolutePositionText(document, Resources.TXT_VEHICLE.ToUpper(), (startHorizontal + 5), (startVertical + 490), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, Resources.TXT_VRN.ToUpper(), (startHorizontal + 140), (startVertical + 510), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_VIN.ToUpper(), (startHorizontal + 140), (startVertical + 520), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_TYRE_SIZE.ToUpper(), (startHorizontal + 140), (startVertical + 530), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_W_FACTOR.ToUpper(), (startHorizontal + 140), (startVertical + 540), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_TYRE_L_FACTOR.ToUpper(), (startHorizontal + 140), (startVertical + 550), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_ODOMETER_READING.ToUpper(), (startHorizontal + 140), (startVertical + 560), 550, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, Resources.TXT_SET_K_FACTOR.ToUpper(), (startHorizontal + 140), (startVertical + 570), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, string.Format("{0} {1}", tachographDocument.VehicleMake, tachographDocument.VehicleModel).ToUpper(), (startHorizontal + 140), (startVertical + 500), 550, 72, document.GetRegularFont(true));

                AbsolutePositionText(document, tachographDocument.RegistrationNumber.ToUpper(), (startHorizontal + 300), (startVertical + 510), 550, 72);
                AbsolutePositionText(document, tachographDocument.VIN.ToUpper(), (startHorizontal + 300), (startVertical + 520), 550, 72);
                AbsolutePositionText(document, tachographDocument.TyreSize.ToUpper(), (startHorizontal + 300), (startVertical + 530), 550, 72);
                AbsolutePositionText(document, string.Format(Resources.TXT_IMP_KM, tachographDocument.WFactor).ToUpper(), (startHorizontal + 300), (startVertical + 540), 550, 72);
                AbsolutePositionText(document, string.Format(Resources.TXT_MM, tachographDocument.LFactor).ToUpper(), (startHorizontal + 300), (startVertical + 550), 550, 72);
                AbsolutePositionText(document, tachographDocument.OdometerReading.ToUpper(), (startHorizontal + 300), (startVertical + 560), 550, 72);
                AbsolutePositionText(document, string.Format(Resources.TXT_IMP_KM, tachographDocument.KFactor).ToUpper(), (startHorizontal + 300), (startVertical + 570), 550, 72);

                AbsolutePositionText(document, Resources.TXT_AUTHORISED_TACHOGRAPH_CENTER, (startHorizontal + 30), (startVertical + 640), 550, 72, document.GetRegularFont(true));
                if (RegistrationData.CompanyName != null)
                {
                    AbsolutePositionText(document, RegistrationData.CompanyName, (startHorizontal + 30), (startVertical + 670), 550, 72, document.GetRegularFont(false));
                }
                if (WorkshopSettings.Address1 != null)
                {
                    AbsolutePositionText(document, WorkshopSettings.Address1, (startHorizontal + 30), (startVertical + 690), 550, 72, document.GetRegularFont(false));
                }
                if (WorkshopSettings.Town != null)
                {
                    AbsolutePositionText(document, WorkshopSettings.Town, (startHorizontal + 30), (startVertical + 710), 550, 72, document.GetRegularFont(false));
                }

                if (WorkshopSettings.PostCode != null)
                {
                    AbsolutePositionText(document, WorkshopSettings.PostCode, (startHorizontal + 30), (startVertical + 730), 550, 72, document.GetRegularFont(false));
                }

                AbsolutePositionText(document, Resources.TXT_AUTHORISED_TESTERS_SIGNATURE, (startHorizontal + 300), (startVertical + 640), 700, 72, document.GetRegularFont(true));
                AbsolutePositionText(document, string.Format(Resources.TXT_SIGNATURE_TECHNICIAN, tachographDocument.Technician), (startHorizontal + 300), (startVertical + 670), 550, 20);

                TryAddSignature(document, tachographDocument, (startHorizontal + 300));

                document.DrawLine((startHorizontal + 300), (startVertical + 735), (startHorizontal + 490), (startVertical + 735), TotalPageHeight);
                AbsolutePositionText(document, string.Format(Resources.TXT_DISTRIBUTOR_SEAL, RegistrationData.SealNumber), (startHorizontal + 300), (startVertical + 730), 550, 72, document.GetXSmallFont(false));

                AddAdvertisingSection(document, startHorizontal, startVertical);
            }
        }
Beispiel #23
0
        protected override void CreateLargeCertificate(PDFDocument document, TachographDocument tachographDocument, bool excludeLogos)
        {
            const int startHorizontal = 0;
            const int startVertical   = 0;

            document.DrawLine((startHorizontal), (startVertical), (startHorizontal + 545), (startVertical), TotalPageHeight);

            document.DrawLine((startHorizontal), (startVertical), (startHorizontal), (startVertical + 790), TotalPageHeight);

            document.DrawLine((startHorizontal + 545), (startVertical), (startHorizontal + 545), (startVertical + 790), TotalPageHeight);

            document.DrawLine((startHorizontal), (startVertical + 790), (startHorizontal + 545), (startVertical + 790), TotalPageHeight);

            document.DrawLine((startHorizontal), (startVertical + 290), (startHorizontal + 545), (startVertical + 290), TotalPageHeight);
            document.DrawLine((startHorizontal), (startVertical + 400), (startHorizontal + 545), (startVertical + 400), TotalPageHeight);
            document.DrawLine((startHorizontal), (startVertical + 600), (startHorizontal + 545), (startVertical + 600), TotalPageHeight);

            if (WorkshopSettings.Image != null && !excludeLogos)
            {
                const float profileImageMaxHeight = 150;
                const float profileImageMaxWidth  = 200;

                float widthScale  = profileImageMaxWidth / WorkshopSettings.Image.Width;
                float heightScale = profileImageMaxHeight / WorkshopSettings.Image.Height;
                float scale       = Math.Min(widthScale, heightScale);
                float newWidth    = WorkshopSettings.Image.Width * scale;
                float newHeight   = WorkshopSettings.Image.Height * scale;

                document.AddImage(WorkshopSettings.RawImage, newWidth, newHeight, (startHorizontal + 5), startVertical + 5);
            }

            AbsolutePositionText(document, Resources.TXT_TACHOGRAPH_CALIBRATION_CERTIFICATE, (startHorizontal + 32), (startVertical + 0), 580, 100, document.GetXLargeFont(false), Element.ALIGN_CENTER);

            AbsolutePositionText(document, Resources.TXT_DATE, (startHorizontal + 355), (startVertical + 200), 200, 40);
            AbsolutePositionText(document, GetCalibrationTime(tachographDocument.CalibrationTime), (startHorizontal + 400), (startVertical + 200), 200, 40);

            DateTime?calibrationDate = tachographDocument.CalibrationTime;

            if (calibrationDate == null)
            {
                calibrationDate = DateTime.Today;
            }

            string expiryDate = Resources.TXT_EXPIRY + (GetCalibrationTime(calibrationDate.Value.AddYears(2).AddDays(-1)));

            if (tachographDocument.DocumentType != Resources.TXT_MINOR_WORK_DETAILS)
            {
                AbsolutePositionText(document, expiryDate, (startHorizontal + 355), (startVertical + 200), 580, 100);
            }

            AbsolutePositionText(document, Resources.TXT_ANALOGUE_INSPECTIONS, (startHorizontal + 320), (startVertical + 5), 200, 40);

            AbsolutePositionText(document, Resources.TXT_DIGITAL_INSPECTIONS, (startHorizontal + 320), (startVertical + 240), 200, 40);

            AbsolutePositionText(document, Resources.TXT_MAKE, (startHorizontal + 150), (startVertical + 20), 550, 72, document.GetRegularFont(true));

            AbsolutePositionText(document, Resources.TXT_TYPE, (startHorizontal + 347), (startVertical + 20), 550, 72, document.GetRegularFont(true));

            AbsolutePositionText(document, Resources.TXT_SERIAL_NUMBER, (startHorizontal + 347), (startVertical + 46), 550, 72, document.GetRegularFont(true));

            AbsolutePositionText(document, tachographDocument.TachographMake, (startHorizontal + 150), (startVertical + 32), 550, 72);

            AbsolutePositionText(document, tachographDocument.TachographModel, (startHorizontal + 347), (startVertical + 32), 550, 72);

            AbsolutePositionText(document, tachographDocument.SerialNumber, (startHorizontal + 347), (startVertical + 58), 550, 72);

            AbsolutePositionText(document, Resources.TXT_VEHICLE, (startHorizontal + 5), (startVertical + 104), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, Resources.TXT_VRN, (startHorizontal + 170), (startVertical + 510), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_VIN, (startHorizontal + 170), (startVertical + 520), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYRE_SIZE, (startHorizontal + 170), (startVertical + 530), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_W_FACTOR, (startHorizontal + 170), (startVertical + 540), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYRE_L_FACTOR, (startHorizontal + 170), (startVertical + 550), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_ODOMETER_READING, (startHorizontal + 170), (startVertical + 560), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_SET_K_FACTOR, (startHorizontal + 170), (startVertical + 72), 570, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, $"{tachographDocument.VehicleMake} {tachographDocument.VehicleModel}", (startHorizontal + 170), (startVertical + 500), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, tachographDocument.RegistrationNumber, (startHorizontal + 240), (startVertical + 510), 550, 72);
            AbsolutePositionText(document, tachographDocument.VIN, (startHorizontal + 240), (startVertical + 520), 550, 72);
            AbsolutePositionText(document, tachographDocument.TyreSize, (startHorizontal + 240), (startVertical + 530), 550, 72);
            AbsolutePositionText(document, string.Format(Resources.TXT_IMP_KM, tachographDocument.WFactor), (startHorizontal + 240), (startVertical + 540), 550, 72);
            AbsolutePositionText(document, string.Format(Resources.TXT_MM, tachographDocument.LFactor), (startHorizontal + 240), (startVertical + 550), 550, 72);
            AbsolutePositionText(document, tachographDocument.OdometerReading, (startHorizontal + 240), (startVertical + 560), 550, 72);
            AbsolutePositionText(document, tachographDocument.KFactor, (startHorizontal + 240), (startVertical + 570), 550, 72);

            AbsolutePositionText(document, Resources.TXT_AUTHORISED_TACHOGRAPH_CENTER, (startHorizontal + 30), (startVertical + 650), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, RegistrationData.CompanyName, (startHorizontal + 30), (startVertical + 670), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, WorkshopSettings.Address1, (startHorizontal + 30), (startVertical + 700), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, $"{WorkshopSettings.Town} {WorkshopSettings.PostCode}", (startHorizontal + 30), (startVertical + 730), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, string.Format(Resources.TXT_DISTRIBUTOR_SEAL, RegistrationData.SealNumber), (startHorizontal + 30), (startVertical + 760), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, Resources.TXT_AUTHORISED_TESTERS_SIGNATURE, (startHorizontal + 350), (startVertical + 246), 550, 72, document.GetLargerFont(false));

            TryAddSignature(document, tachographDocument, (startHorizontal + 350));
            AbsolutePositionText(document, string.Format(Resources.TXT_SIGNATURE_TECHNICIAN, tachographDocument.Technician), (startHorizontal + 350), (startVertical + 340), 550, 20);

            Image logoImage = Image.GetInstance(ImageHelper.CopyResourceToFileSystem("skillray_small"));

            logoImage.SetAbsolutePosition(50, 790);
        }
 public void AutoUploadTachographDocument(TachographDocument tachographDocument)
 {
     AutoUploadDocument(tachographDocument);
 }
Beispiel #25
0
        protected override void CreateKFactorLabel(PDFDocument document, TachographDocument tachographDocument)
        {
            ColumnText kValueColumn = document.GetNewColumn(425, document.Height - 356, 480, 100);

            document.AddParagraph(tachographDocument.KFactor, kValueColumn);
        }
Beispiel #26
0
        protected override void CreateLargeLabel(PDFDocument document, TachographDocument tachographDocument, int startHorizontal, int startVertical)
        {
            AbsolutePositionText(document, Resources.TXT_TACHOGRAPH_RECORD_SHEET, (startHorizontal + 32), (startVertical + 0), 580, 100, document.GetXLargeFont(false), Element.ALIGN_CENTER);
            AbsolutePositionText(document, TrimDocumentType(tachographDocument.DocumentType), (startHorizontal + 32), (startVertical + 30), 580, 100, document.GetRegularFont(false));

            //Outlining
            DrawLargeLabelRectangle(document, startHorizontal, startVertical);
            document.DrawLine((startHorizontal + 50), (startVertical + 146), (startHorizontal + 545), (startVertical + 146), TotalPageHeight);
            document.DrawLine((startHorizontal + 50), (startVertical + 234), (startHorizontal + 545), (startVertical + 234), TotalPageHeight);
            document.DrawLine((startHorizontal + 150), (startVertical + 334), (startHorizontal + 298), (startVertical + 334), TotalPageHeight);
            document.DrawLine((startHorizontal + 347), (startVertical + 334), (startHorizontal + 494), (startVertical + 334), TotalPageHeight);

            AbsolutePositionText(document, Resources.TXT_TACHOGRAPH, (startHorizontal + 50), (startVertical + 93), 150, 100);
            AbsolutePositionText(document, Resources.TXT_VEHICLE, (startHorizontal + 50), (startVertical + 175), 150, 100);
            AbsolutePositionText(document, Resources.TXT_TECHNICIAN, (startHorizontal + 50), (startVertical + 270), 150, 20);
            AbsolutePositionText(document, Resources.TXT_DATE, (startHorizontal + 150), (startVertical + 328), 200, 40);

            TryAddSignature(document, tachographDocument, (startHorizontal + 330));
            AbsolutePositionText(document, string.Format(Resources.TXT_SIGNATURE_TECHNICIAN_LARGE, tachographDocument.Technician), (startHorizontal + 347), (startVertical + 328), 550, 40);

            //Tachograph
            AbsolutePositionText(document, Resources.TXT_MAKE, (startHorizontal + 150), (startVertical + 60), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYPE, (startHorizontal + 347), (startVertical + 60), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.TachographMake, (startHorizontal + 150), (startVertical + 72), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.TachographModel, (startHorizontal + 347), (startVertical + 72), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, Resources.TXT_ODOMETER_READING, (startHorizontal + 150), (startVertical + 86), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_SERIAL_NUMBER, (startHorizontal + 347), (startVertical + 86), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.OdometerReading, (startHorizontal + 150), (startVertical + 98), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.SerialNumber, (startHorizontal + 347), (startVertical + 98), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, Resources.TXT_SET_K_FACTOR, (startHorizontal + 150), (startVertical + 112), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.KFactor, (startHorizontal + 150), (startVertical + 124), 550, 72, document.GetRegularFont(false));

            if (tachographDocument.DocumentType == Resources.TXT_MINOR_WORK_DETAILS)
            {
                const int workDetailsHeight = 19;
                document.ContentByte.SetColorStroke(new BaseColor(Color.Black));
                document.ContentByte.Rectangle((startHorizontal + 20), (TotalPageHeight - (startVertical + 44 + workDetailsHeight)), 555, workDetailsHeight);
                document.ContentByte.Stroke();

                AbsolutePositionText(document, Resources.TXT_WORK_CARRIED_OUT, (startHorizontal + 50), (startVertical + 40), 150, 100, document.GetSmallerFont());
                AbsolutePositionText(document, tachographDocument.MinorWorkDetails, (startHorizontal + 150), (startVertical + 40), 450, 100, document.GetSmallerFont());
            }

            //Vehicle

            AbsolutePositionText(document, Resources.TXT_MAKE_AND_MODEL, (startHorizontal + 150), (startVertical + 144), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_VRN, (startHorizontal + 347), (startVertical + 144), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, string.Format("{0} {1}", tachographDocument.VehicleMake, tachographDocument.VehicleModel), (startHorizontal + 150), (startVertical + 156), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.RegistrationNumber, (startHorizontal + 347), (startVertical + 156), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, Resources.TXT_VIN, (startHorizontal + 150), (startVertical + 170), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYRE_SIZE, (startHorizontal + 347), (startVertical + 170), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, tachographDocument.VIN, (startHorizontal + 150), (startVertical + 182), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.TyreSize, (startHorizontal + 347), (startVertical + 182), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, Resources.TXT_W_FACTOR, (startHorizontal + 150), (startVertical + 196), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYRE_L_FACTOR, (startHorizontal + 347), (startVertical + 196), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, string.Format(Resources.TXT_IMP_KM_VEHICLE, tachographDocument.WFactor), (startHorizontal + 150), (startVertical + 208), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.LFactor + Resources.TXT_MM, (startHorizontal + 347), (startVertical + 208), 550, 72, document.GetRegularFont(false));

            //Technician

            AbsolutePositionText(document, RegistrationData.CompanyName, (startHorizontal + 150), (startVertical + 234), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, WorkshopSettings.Address1, (startHorizontal + 150), (startVertical + 258), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, string.Format("{0} {1}", WorkshopSettings.Town, WorkshopSettings.PostCode), (startHorizontal + 150), (startVertical + 272), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, string.Format(Resources.TXT_MINIMAL_LICENSE_NUMBER, RegistrationData.SealNumber), (startHorizontal + 347), (startVertical + 234), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, GetCalibrationTime(tachographDocument.CalibrationTime), (startHorizontal + 150), (startVertical + 314), 250, 40, document.GetRegularFont(false));
        }
 public void UpdateTachographDocument(TachographDocument tachographDocument)
 {
     UpdateDocument(tachographDocument);
 }
Beispiel #28
0
 protected virtual void CreateLargeCertificate(PDFDocument document, TachographDocument tachographDocument, bool excludeLogos)
 {
 }
 public void UploadTachographDocument(TachographDocument tachographDocument)
 {
     UploadDocument(tachographDocument);
 }
Beispiel #30
0
        protected override void CreateLargeLabel(PDFDocument document, TachographDocument tachographDocument, int startHorizontal, int startVertical)
        {
            AbsolutePositionText(document, Resources.TXT_CERTIFICATION_INSPECTION_SEALING_TACHOGRAPH_M1N1, (startHorizontal + 32), (startVertical + 0), 580, 100, document.GetXLargeFont(false), Element.ALIGN_CENTER);

            //Outlining
            DrawLargeLabelRectangle(document, startHorizontal, startVertical);

            document.DrawLine((startHorizontal + 50), (startVertical + 106), (startHorizontal + 545), (startVertical + 106), TotalPageHeight);
            document.DrawLine((startHorizontal + 50), (startVertical + 192), (startHorizontal + 545), (startVertical + 192), TotalPageHeight);
            document.DrawLine((startHorizontal + 50), (startVertical + 247), (startHorizontal + 545), (startVertical + 247), TotalPageHeight);
            document.DrawLine((startHorizontal + 150), (startVertical + 344), (startHorizontal + 298), (startVertical + 344), TotalPageHeight);
            document.DrawLine((startHorizontal + 347), (startVertical + 344), (startHorizontal + 494), (startVertical + 344), TotalPageHeight);

            AbsolutePositionText(document, Resources.TXT_TACHOGRAPH, (startHorizontal + 50), (startVertical + 52), 150, 20);
            AbsolutePositionText(document, Resources.TXT_VEHICLE, (startHorizontal + 50), (startVertical + 137), 150, 20);
            AbsolutePositionText(document, Resources.TXT_M1N1_ADAPTER, (startHorizontal + 50), (startVertical + 208), 150, 20);
            AbsolutePositionText(document, Resources.TXT_TECHNICIAN, (startHorizontal + 50), (startVertical + 270), 150, 20);
            AbsolutePositionText(document, Resources.TXT_DATE, (startHorizontal + 150), (startVertical + 340), 200, 20);

            TryAddSignature(document, tachographDocument, (startHorizontal + 330));
            AbsolutePositionText(document, string.Format(Resources.TXT_SIGNATURE_TECHNICIAN, tachographDocument.Technician), (startHorizontal + 347), (startVertical + 340), 550, 20);

            //Tachograph
            AbsolutePositionText(document, Resources.TXT_MAKE, (startHorizontal + 150), (startVertical + 20), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYPE, (startHorizontal + 347), (startVertical + 20), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.TachographMake, (startHorizontal + 150), (startVertical + 32), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, tachographDocument.TachographModel, (startHorizontal + 347), (startVertical + 32), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, Resources.TXT_ODOMETER_READING, (startHorizontal + 150), (startVertical + 46), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_SERIAL_NUMBER, (startHorizontal + 347), (startVertical + 46), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.OdometerReading, (startHorizontal + 150), (startVertical + 58), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, tachographDocument.SerialNumber, (startHorizontal + 347), (startVertical + 58), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, Resources.TXT_SET_K_FACTOR, (startHorizontal + 150), (startVertical + 72), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, tachographDocument.KFactor, (startHorizontal + 150), (startVertical + 84), 550, 72, document.GetLargerFont(false));

            //Vehicle

            AbsolutePositionText(document, Resources.TXT_MAKE_AND_MODEL, (startHorizontal + 150), (startVertical + 104), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_VRN, (startHorizontal + 347), (startVertical + 104), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, string.Format("{0} {1}", tachographDocument.VehicleMake, tachographDocument.VehicleModel), (startHorizontal + 150), (startVertical + 116), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, tachographDocument.RegistrationNumber, (startHorizontal + 347), (startVertical + 116), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, Resources.TXT_VIN, (startHorizontal + 150), (startVertical + 130), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYRE_SIZE, (startHorizontal + 347), (startVertical + 130), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, tachographDocument.VIN, (startHorizontal + 150), (startVertical + 142), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, tachographDocument.TyreSize, (startHorizontal + 347), (startVertical + 142), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, Resources.TXT_W_FACTOR, (startHorizontal + 150), (startVertical + 156), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_TYRE_L_FACTOR, (startHorizontal + 347), (startVertical + 156), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, string.Format(Resources.TXT_IMP_KM, tachographDocument.WFactor), (startHorizontal + 150), (startVertical + 168), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, string.Format(Resources.TXT_MM, tachographDocument.LFactor), (startHorizontal + 347), (startVertical + 168), 550, 72, document.GetLargerFont(false));

            //M1N1 Adapter

            AbsolutePositionText(document, Resources.TXT_M1N1_SERIAL_NUMBER, (startHorizontal + 150), (startVertical + 188), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, Resources.TXT_COLOR, (startHorizontal + 347), (startVertical + 188), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, tachographDocument.TachographAdapterSerialNumber, (startHorizontal + 150), (startVertical + 200), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, tachographDocument.TachographCableColor, (startHorizontal + 347), (startVertical + 200), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, Resources.TXT_LOCATION, (startHorizontal + 150), (startVertical + 214), 550, 72, document.GetRegularFont(false));

            AbsolutePositionText(document, tachographDocument.TachographAdapterLocation, (startHorizontal + 150), (startVertical + 226), 550, 72, document.GetLargerFont(false));

            //Technician

            AbsolutePositionText(document, RegistrationData.CompanyName, (startHorizontal + 150), (startVertical + 246), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, WorkshopSettings.Address1, (startHorizontal + 150), (startVertical + 270), 550, 72, document.GetLargerFont(false));
            AbsolutePositionText(document, string.Format("{0} {1}", WorkshopSettings.Town, WorkshopSettings.PostCode), (startHorizontal + 150), (startVertical + 284), 550, 72, document.GetLargerFont(false));

            AbsolutePositionText(document, string.Format(Resources.TXT_DISTRIBUTOR_SEAL, RegistrationData.SealNumber), (startHorizontal + 347), (startVertical + 246), 550, 72, document.GetRegularFont(false));
            AbsolutePositionText(document, GetCalibrationTime(tachographDocument.CalibrationTime), (startHorizontal + 150), (startVertical + 324), 250, 40, document.GetLargerFont(false));
        }