Subversion Repositories SmartDukaan

Rev

Rev 8017 | Rev 8035 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 8017 Rev 8034
Line 58... Line 58...
58
import com.itextpdf.text.Image;
58
import com.itextpdf.text.Image;
59
import com.itextpdf.text.Paragraph;
59
import com.itextpdf.text.Paragraph;
60
import com.itextpdf.text.Phrase;
60
import com.itextpdf.text.Phrase;
61
import com.itextpdf.text.Rectangle;
61
import com.itextpdf.text.Rectangle;
62
import com.itextpdf.text.Font.FontFamily;
62
import com.itextpdf.text.Font.FontFamily;
-
 
63
import com.itextpdf.text.pdf.Barcode128;
63
import com.itextpdf.text.pdf.BaseFont;
64
import com.itextpdf.text.pdf.BaseFont;
64
import com.itextpdf.text.pdf.PdfPCell;
65
import com.itextpdf.text.pdf.PdfPCell;
65
import com.itextpdf.text.pdf.PdfPTable;
66
import com.itextpdf.text.pdf.PdfPTable;
66
import com.itextpdf.text.pdf.PdfWriter;
67
import com.itextpdf.text.pdf.PdfWriter;
67
import com.itextpdf.text.pdf.draw.DottedLineSeparator;
68
import com.itextpdf.text.pdf.draw.DottedLineSeparator;
Line 212... Line 213...
212
					}
213
					}
213
					document.add(getExtraInfoTable(order, provider, 16, warehouse.getBillingType()));
214
					document.add(getExtraInfoTable(order, provider, 16, warehouse.getBillingType()));
214
					continue;
215
					continue;
215
				}
216
				}
216
 
217
 
217
				PdfPTable dispatchAdviceTable = getDispatchAdviceTable(order, warehouse, provider, barcodeFontSize, destCode, withBill, shippingLocation);
218
				PdfPTable dispatchAdviceTable = getDispatchAdviceTable(order, warehouse, provider, barcodeFontSize, destCode, withBill, shippingLocation, PdfWriter.getInstance(document, baosPDF));
218
				dispatchAdviceTable.setSpacingAfter(10.0f);
219
				dispatchAdviceTable.setSpacingAfter(10.0f);
219
				dispatchAdviceTable.setWidthPercentage(90.0f);
220
				dispatchAdviceTable.setWidthPercentage(90.0f);
220
 
221
 
221
				document.add(dispatchAdviceTable);
222
				document.add(dispatchAdviceTable);
222
				if(withBill){
223
				if(withBill){
Line 253... Line 254...
253
			logger.error("Error while generating Invoice: ", e);
254
			logger.error("Error while generating Invoice: ", e);
254
		}
255
		}
255
		return baosPDF;
256
		return baosPDF;
256
	}
257
	}
257
 
258
 
258
	private PdfPTable getDispatchAdviceTable(Order order, Warehouse warehouse, Provider provider, float barcodeFontSize, String destCode, boolean withBill, Warehouse shippingLocation){
259
	private PdfPTable getDispatchAdviceTable(Order order, Warehouse warehouse, Provider provider, float barcodeFontSize, String destCode, boolean withBill, Warehouse shippingLocation, PdfWriter pdfWriter){
259
		Font barCodeFont = getBarCodeFont(provider, barcodeFontSize);
260
		Font barCodeFont = getBarCodeFont(provider, barcodeFontSize);
260
 
261
 
261
		PdfPTable table = new PdfPTable(1);
262
		PdfPTable table = new PdfPTable(1);
262
		table.getDefaultCell().setBorder(Rectangle.NO_BORDER);
263
		table.getDefaultCell().setBorder(Rectangle.NO_BORDER);
263
 
264
 
264
		PdfPTable logoTable = new PdfPTable(2);
265
		PdfPTable logoTable = new PdfPTable(2);
265
		addLogoTable(logoTable, order);
266
		addLogoTable(logoTable, order);
266
		
267
		
267
		PdfPCell titleCell = getTitleCell();
268
		PdfPCell titleCell = getTitleCell();
268
		PdfPTable customerTable = getCustomerAddressTable(order, destCode, false, helvetica12, false);
269
		PdfPTable customerTable = getCustomerAddressTable(order, destCode, false, helvetica12, false);
269
		PdfPTable providerInfoTable = getProviderTable(order, provider, barCodeFont);
270
		PdfPTable providerInfoTable = getProviderTable(order, provider, barCodeFont, pdfWriter);
270
 
271
 
271
		PdfPTable dispatchTable = new PdfPTable(new float[]{0.5f, 0.1f, 0.4f});
272
		PdfPTable dispatchTable = new PdfPTable(new float[]{0.5f, 0.1f, 0.4f});
272
		dispatchTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
273
		dispatchTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
273
		dispatchTable.addCell(customerTable);
274
		dispatchTable.addCell(customerTable);
274
		dispatchTable.addCell(new Phrase(" "));
275
		dispatchTable.addCell(new Phrase(" "));
Line 291... Line 292...
291
				try {
292
				try {
292
					fedexCodReturnBarcode = tclient.getOrderAttributeValue(order.getId(), "FedEx_COD_Return_BarCode");
293
					fedexCodReturnBarcode = tclient.getOrderAttributeValue(order.getId(), "FedEx_COD_Return_BarCode");
293
				} catch (TException e1) {
294
				} catch (TException e1) {
294
					logger.error("Error while getting the provider information.", e1);
295
					logger.error("Error while getting the provider information.", e1);
295
				}
296
				}
296
				PdfPCell formIdCell= new PdfPCell(new Paragraph("COD Return Form id-0325", helvetica6));
297
				PdfPCell formIdCell= new PdfPCell(new Paragraph("COD Return "+order.getAirwaybill_no()+" Form id-0325", helvetica6));
297
				formIdCell.setPaddingTop(5.0f);
298
				formIdCell.setPaddingTop(5.0f);
298
				formIdCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
299
				formIdCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
299
				formIdCell.setBorder(Rectangle.NO_BORDER);
300
				formIdCell.setBorder(Rectangle.NO_BORDER);
300
				PdfPCell awbNumberCell= new PdfPCell(new Paragraph("*" + fedexCodReturnBarcode + "*", barCodeFont));
301
				Barcode128 code128 = new Barcode128();
301
				awbNumberCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
302
				code128.setGenerateChecksum(true);
302
				awbNumberCell.setBorder(Rectangle.NO_BORDER);
303
				code128.setCode("*"+fedexCodReturnBarcode+"*"); 
303
				chargesTable.addCell(new Phrase("PRIORITY OVERNIGHT ", helvetica8));
304
				chargesTable.addCell(new Phrase("PRIORITY OVERNIGHT ", helvetica8));
304
				chargesTable.addCell(formIdCell);
305
				chargesTable.addCell(formIdCell);
305
				chargesTable.addCell(awbNumberCell);
306
				chargesTable.addCell(code128.createImageWithBarcode(pdfWriter.getDirectContent(), null, null));
306
			}
307
			}
307
			//End:-Added By Manish Sharma for FedEx Integration - Shipment Creation on 21-Aug-2013
308
			//End:-Added By Manish Sharma for FedEx Integration - Shipment Creation on 21-Aug-2013
308
		} else {
309
		} else {
309
			chargesTable.addCell(new Phrase("Do not pay any extra charges to the Courier."));  
310
			chargesTable.addCell(new Phrase("Do not pay any extra charges to the Courier."));  
310
		}
311
		}
Line 369... Line 370...
369
		titleCell.setHorizontalAlignment(Element.ALIGN_CENTER);
370
		titleCell.setHorizontalAlignment(Element.ALIGN_CENTER);
370
		titleCell.setBorder(Rectangle.NO_BORDER);
371
		titleCell.setBorder(Rectangle.NO_BORDER);
371
		return titleCell;
372
		return titleCell;
372
	}
373
	}
373
 
374
 
374
	private PdfPTable getProviderTable(Order order, Provider provider, Font barCodeFont) {
375
	private PdfPTable getProviderTable(Order order, Provider provider, Font barCodeFont, PdfWriter pdfWriter) {
375
		PdfPTable providerInfoTable = new PdfPTable(1);
376
		PdfPTable providerInfoTable = new PdfPTable(1);
376
		providerInfoTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
377
		providerInfoTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
377
		if(order.isLogisticsCod()){
378
		if(order.isLogisticsCod()){
378
			PdfPCell deliveryTypeCell = new PdfPCell(new Phrase("COD   ", helvetica28));
379
			PdfPCell deliveryTypeCell = new PdfPCell(new Phrase("COD   ", helvetica28));
379
			deliveryTypeCell.setHorizontalAlignment(Element.ALIGN_RIGHT);
380
			deliveryTypeCell.setHorizontalAlignment(Element.ALIGN_RIGHT);
Line 385... Line 386...
385
		providerNameCell.setHorizontalAlignment(Element.ALIGN_LEFT);
386
		providerNameCell.setHorizontalAlignment(Element.ALIGN_LEFT);
386
		providerNameCell.setBorder(Rectangle.NO_BORDER);
387
		providerNameCell.setBorder(Rectangle.NO_BORDER);
387
		PdfPCell formIdCell= null;
388
		PdfPCell formIdCell= null;
388
		if(order.getLogistics_provider_id()==7L){
389
		if(order.getLogistics_provider_id()==7L){
389
			if(order.isCod()){
390
			if(order.isCod()){
390
				formIdCell = new PdfPCell(new Paragraph("Form id-0305", helvetica6));
391
				formIdCell = new PdfPCell(new Paragraph(order.getAirwaybill_no()+" Form id-0305", helvetica6));
391
			}
392
			}
392
			else{
393
			else{
393
				formIdCell = new PdfPCell(new Paragraph("Form id-0467", helvetica6));
394
				formIdCell = new PdfPCell(new Paragraph(order.getAirwaybill_no()+" Form id-0467", helvetica6));
394
			}
395
			}
395
			formIdCell.setPaddingTop(20.0f);
396
			formIdCell.setPaddingTop(20.0f);
396
			formIdCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
397
			formIdCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
397
			formIdCell.setBorder(Rectangle.NO_BORDER);
398
			formIdCell.setBorder(Rectangle.NO_BORDER);
398
		}
399
		}
399
		
400
		
400
	
401
	
401
		PdfPCell awbNumberCell= null;
402
		PdfPCell awbNumberCell= null;
-
 
403
		String fedexPackageBarcode = "";
402
		if(order.getLogistics_provider_id()!=7L){
404
		if(order.getLogistics_provider_id()!=7L){
403
			awbNumberCell = new PdfPCell(new Paragraph("*" + order.getAirwaybill_no() + "*", barCodeFont));
405
			awbNumberCell = new PdfPCell(new Paragraph("*" + order.getAirwaybill_no() + "*", barCodeFont));
404
			awbNumberCell.setPaddingTop(20.0f);
406
			awbNumberCell.setPaddingTop(20.0f);
405
		}
407
		}
406
		else{
408
		else{
407
			in.shop2020.model.v1.order.TransactionService.Client tclient = tsc.getClient();
409
			in.shop2020.model.v1.order.TransactionService.Client tclient = tsc.getClient();
408
			String fedexPackageBarcode = "";
-
 
409
			try {
410
			try {
410
				fedexPackageBarcode = tclient.getOrderAttributeValue(order.getId(), "FedEx_Package_BarCode");
411
				fedexPackageBarcode = tclient.getOrderAttributeValue(order.getId(), "FedEx_Package_BarCode");
411
			} catch (TException e1) {
412
			} catch (TException e1) {
412
				logger.error("Error while getting the provider information.", e1);
413
				logger.error("Error while getting the provider information.", e1);
413
			}
414
			}
414
			awbNumberCell = new PdfPCell(new Paragraph("*" + fedexPackageBarcode + "*", barCodeFont));
415
			awbNumberCell = new PdfPCell(new Paragraph(" ", helvetica6));
415
			awbNumberCell.setPaddingBottom(5.0f);
416
			awbNumberCell.setPaddingBottom(5.0f);
416
		}
417
		}
417
		awbNumberCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
418
		awbNumberCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
418
		awbNumberCell.setBorder(Rectangle.NO_BORDER);
419
		awbNumberCell.setBorder(Rectangle.NO_BORDER);
419
 
420
 
Line 421... Line 422...
421
		if(formIdCell != null){
422
		if(formIdCell != null){
422
			providerInfoTable.addCell(formIdCell);
423
			providerInfoTable.addCell(formIdCell);
423
		}
424
		}
424
		//End:-Added By Manish Sharma for FedEx Integration - Shipment Creation on 21-Aug-2013
425
		//End:-Added By Manish Sharma for FedEx Integration - Shipment Creation on 21-Aug-2013
425
		providerInfoTable.addCell(awbNumberCell);
426
		providerInfoTable.addCell(awbNumberCell);
-
 
427
		if(order.getLogistics_provider_id()==7L && fedexPackageBarcode!=null ){
-
 
428
			Barcode128 code128 = new Barcode128();
-
 
429
			code128.setGenerateChecksum(true);
-
 
430
			code128.setCode("*"+fedexPackageBarcode+"*"); 
-
 
431
			providerInfoTable.addCell(code128.createImageWithBarcode(pdfWriter.getDirectContent(), null, null));
-
 
432
		}
426
		
433
		
427
		Warehouse warehouse = null;
434
		Warehouse warehouse = null;
428
		try{
435
		try{
429
    		InventoryClient isc = new InventoryClient();
436
    		InventoryClient isc = new InventoryClient();
430
    		warehouse = isc.getClient().getWarehouse(order.getWarehouse_id());
437
    		warehouse = isc.getClient().getWarehouse(order.getWarehouse_id());