Subversion Repositories SmartDukaan

Rev

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

Rev 18530 Rev 18657
Line 162... Line 162...
162
 
162
 
163
	private static final String delhiPincodePrefix = "11";
163
	private static final String delhiPincodePrefix = "11";
164
	private static final String[] maharashtraPincodePrefix = {"40", "41", "42", "43", "44"};
164
	private static final String[] maharashtraPincodePrefix = {"40", "41", "42", "43", "44"};
165
	private static final String[] karnatakaPincodePrefix = {"56", "57", "58", "59"};
165
	private static final String[] karnatakaPincodePrefix = {"56", "57", "58", "59"};
166
	private static final String[] telanganaPincodes = {"500001","500002","500003","500004","500005","500006","500007","500008","500009","500010","500011","500012","500013","500014","500015","500016","500017","500018","500019","500020","500021","500022","500023","500024","500025","500026","500027","500028","500029","500030","500031","500032","500033","500034","500035","500036","500037","500038","500039","500040","500041","500042","500043","500044","500045","500046","500047","500048","500049","500050","500051","500052","500053","500054","500055","500056","500057","500058","500059","500060","500061","500062","500063","500064","500065","500066","500067","500068","500069","500070","500071","500072","500073","500074","500075","500076","500077","500078","500079","500080","500081","500082","500083","500084","500085","500086","500087","500088","500089","500090","500091","500092","500093","500094","500095","500096","500097","500098","500178","500409","501218","501301","501401","501510","501511","501512","502307","502319","517501","517502","517503","517505","517507","520001","520002","520003","520004","520005","520006","520007","520008","520009","520010","520011","520012","520013","520014","520015","521108","521225","522001","522002","522003","522004","522005","522006","522007","522019","522509","530001","530002","530003","530004","530005","530007","530008","530009","530010","530010","530011","530012","530013","530014","530015","530016","530017","530018","530020","530021","530022","530023","530024","530026","530027","530028","530029","530032","530035","530040","530041","530043","530044","530045","530046","531001","533101","533103","533104","533105"};
166
	private static final String[] telanganaPincodes = {"500001","500002","500003","500004","500005","500006","500007","500008","500009","500010","500011","500012","500013","500014","500015","500016","500017","500018","500019","500020","500021","500022","500023","500024","500025","500026","500027","500028","500029","500030","500031","500032","500033","500034","500035","500036","500037","500038","500039","500040","500041","500042","500043","500044","500045","500046","500047","500048","500049","500050","500051","500052","500053","500054","500055","500056","500057","500058","500059","500060","500061","500062","500063","500064","500065","500066","500067","500068","500069","500070","500071","500072","500073","500074","500075","500076","500077","500078","500079","500080","500081","500082","500083","500084","500085","500086","500087","500088","500089","500090","500091","500092","500093","500094","500095","500096","500097","500098","500178","500409","501218","501301","501401","501510","501511","501512","502307","502319","517501","517502","517503","517505","517507","520001","520002","520003","520004","520005","520006","520007","520008","520009","520010","520011","520012","520013","520014","520015","521108","521225","522001","522002","522003","522004","522005","522006","522007","522019","522509","530001","530002","530003","530004","530005","530007","530008","530009","530010","530010","530011","530012","530013","530014","530015","530016","530017","530018","530020","530021","530022","530023","530024","530026","530027","530028","530029","530032","530035","530040","530041","530043","530044","530045","530046","531001","533101","533103","533104","533105"};
-
 
167
	private Address billingAddress;
167
 
168
 
168
	public InvoiceGenerationService() {
169
	public InvoiceGenerationService() {
169
		try {
170
		try {
170
			tsc = new TransactionClient();
171
			tsc = new TransactionClient();
171
			csc = new InventoryClient();
172
			csc = new InventoryClient();
Line 1050... Line 1051...
1050
		
1051
		
1051
		
1052
		
1052
		PdfPTable logoTable = new PdfPTable(2);
1053
		PdfPTable logoTable = new PdfPTable(2);
1053
		addLogoTable(logoTable,order); 
1054
		addLogoTable(logoTable,order); 
1054
		
1055
		
1055
		if (order.getOrderType().equals(OrderType.B2B)) {
-
 
1056
			phrase = new Phrase("TAX INVOICE", helveticaBold12);
-
 
1057
		} else {
-
 
1058
			phrase = new Phrase("RETAIL INVOICE", helveticaBold12);
-
 
1059
		}
-
 
1060
		PdfPCell retailInvoiceTitleCell = new PdfPCell(phrase);
1056
		PdfPCell retailInvoiceTitleCell = new PdfPCell(phrase);
1061
		retailInvoiceTitleCell.setHorizontalAlignment(Element.ALIGN_CENTER);
1057
		retailInvoiceTitleCell.setHorizontalAlignment(Element.ALIGN_CENTER);
1062
		retailInvoiceTitleCell.setBorder(Rectangle.NO_BORDER);
1058
		retailInvoiceTitleCell.setBorder(Rectangle.NO_BORDER);
1063
 
1059
 
1064
		Paragraph sorlAddress = new Paragraph(ourAddress + "\n Contact No.- +91-9811247808" + "\nTIN NO. " + tinNo, new Font(FontFamily.TIMES_ROMAN, 8f, Element.ALIGN_CENTER));
1060
		Paragraph sorlAddress = new Paragraph(ourAddress + "\n Contact No.- +91-9811247808" + "\nTIN NO. " + tinNo, new Font(FontFamily.TIMES_ROMAN, 8f, Element.ALIGN_CENTER));
1065
		PdfPCell sorlAddressCell = new PdfPCell(sorlAddress);
1061
		PdfPCell sorlAddressCell = new PdfPCell(sorlAddress);
1066
		sorlAddressCell.addElement(sorlAddress);
1062
		sorlAddressCell.addElement(sorlAddress);
1067
		sorlAddressCell.setHorizontalAlignment(Element.ALIGN_LEFT);
1063
		sorlAddressCell.setHorizontalAlignment(Element.ALIGN_LEFT);
1068
 
1064
 
1069
		PdfPTable customerAddress = getCustomerAddressTable(order, null, true, helvetica8, true, true);
1065
		PdfPTable customerAddress = getCustomerAddressTable(order, null, true, helvetica8, true, true);
-
 
1066
		if (order.getOrderType().equals(OrderType.B2B)) {
-
 
1067
			if(billingAddress!=null){
-
 
1068
				if(order.getCustomer_state().trim().equalsIgnoreCase(billingAddress.getState())){
-
 
1069
					phrase = new Phrase("TAX INVOICE", helveticaBold12);
-
 
1070
				}else{
-
 
1071
					phrase = new Phrase("RETAIL INVOICE", helveticaBold12);
-
 
1072
				}
-
 
1073
			}else{
-
 
1074
				phrase = new Phrase("TAX INVOICE", helveticaBold12);
-
 
1075
			}
-
 
1076
		} else {
-
 
1077
			phrase = new Phrase("RETAIL INVOICE", helveticaBold12);
-
 
1078
		}
1070
		PdfPTable orderDetails = getOrderDetails(order, provider);
1079
		PdfPTable orderDetails = getOrderDetails(order, provider);
1071
 
1080
 
1072
		PdfPTable addrAndOrderDetailsTable = new PdfPTable(new float[]{0.5f, 0.1f, 0.4f});
1081
		PdfPTable addrAndOrderDetailsTable = new PdfPTable(new float[]{0.5f, 0.1f, 0.4f});
1073
		addrAndOrderDetailsTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
1082
		addrAndOrderDetailsTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
1074
		addrAndOrderDetailsTable.addCell(customerAddress);
1083
		addrAndOrderDetailsTable.addCell(customerAddress);
Line 1202... Line 1211...
1202
		flipkartTable.addCell(vatAmtBarCodeCell);
1211
		flipkartTable.addCell(vatAmtBarCodeCell);
1203
		
1212
		
1204
		return flipkartTable;
1213
		return flipkartTable;
1205
		
1214
		
1206
	}
1215
	}
-
 
1216
	
-
 
1217
	private void setBillingAddress(long userId, in.shop2020.model.v1.user.UserContextService.Client userClient) throws TException{
-
 
1218
		billingAddress = userClient.getBillingAddressForUser(userId);
-
 
1219
	}
1207
 
1220
 
1208
	private PdfPTable getCustomerAddressTable(Order order, String destCode, boolean showPaymentMode, Font font, boolean forInvoce, boolean billingAdd){
1221
	private PdfPTable getCustomerAddressTable(Order order, String destCode, boolean showPaymentMode, Font font, boolean forInvoce, boolean billingAdd){
1209
		PdfPTable customerTable = new PdfPTable(1);
1222
		PdfPTable customerTable = new PdfPTable(1);
1210
		customerTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
1223
		customerTable.getDefaultCell().setBorder(Rectangle.NO_BORDER);
1211
		if(forInvoce || order.getPickupStoreId() == 0){
1224
		if(forInvoce || order.getPickupStoreId() == 0){
1212
			in.shop2020.model.v1.user.UserContextService.Client userClient = usc.getClient();
1225
			in.shop2020.model.v1.user.UserContextService.Client userClient = usc.getClient();
1213
			try {
1226
			try {
1214
				if(billingAdd && userClient.isPrivateDealUser(order.getCustomer_id())){
1227
				if(billingAdd && userClient.isPrivateDealUser(order.getCustomer_id())){
1215
					Address billingAddress = userClient.getBillingAddressForUser(order.getCustomer_id());
1228
					setBillingAddress(order.getCustomer_id(), userClient);
-
 
1229
					if(billingAddress!=null){
1216
					customerTable.addCell(new Phrase(billingAddress.getName(), font));
1230
						customerTable.addCell(new Phrase(billingAddress.getName(), font));
1217
					customerTable.addCell(new Phrase(billingAddress.getLine1(), font));
1231
						customerTable.addCell(new Phrase(billingAddress.getLine1(), font));
1218
					customerTable.addCell(new Phrase(billingAddress.getLine2(), font));
1232
						customerTable.addCell(new Phrase(billingAddress.getLine2(), font));
1219
					customerTable.addCell(new Phrase(billingAddress.getCity() + "," + billingAddress.getState(), font));
1233
						customerTable.addCell(new Phrase(billingAddress.getCity() + "," + billingAddress.getState(), font));
1220
					customerTable.addCell(new Phrase(billingAddress.getPin(), font));
1234
						customerTable.addCell(new Phrase(billingAddress.getPin(), font));
1221
					customerTable.addCell(new Phrase("Phone : " + (billingAddress.getPhone()== null ? "" : billingAddress.getPhone()), font));
1235
						customerTable.addCell(new Phrase("Phone : " + (billingAddress.getPhone()== null ? "" : billingAddress.getPhone()), font));
-
 
1236
					}else{
-
 
1237
						customerTable.addCell(new Phrase(order.getCustomer_name(), font));
-
 
1238
						if(order.getSource() == OrderSource.HOMESHOP18.getValue()){
-
 
1239
							HsOrder hsOrder = null;
-
 
1240
							try {
-
 
1241
								hsOrder = tsc.getClient().getHomeShopOrder(order.getId(), null, null).get(0);
-
 
1242
							}catch (TException e) {
-
 
1243
								logger.error("Error while getting homeshop18 order", e);
-
 
1244
							}
-
 
1245
							String hsShippingName = hsOrder.getShippingName();
-
 
1246
							if(hsShippingName!=null && !hsShippingName.isEmpty()){
-
 
1247
								customerTable.addCell(new Phrase("Shipped To: "+hsShippingName, font));
-
 
1248
							}
-
 
1249
						}
-
 
1250
						customerTable.addCell(new Phrase(order.getCustomer_address1(), font));
-
 
1251
						customerTable.addCell(new Phrase(order.getCustomer_address2(), font));
-
 
1252
						customerTable.addCell(new Phrase(order.getCustomer_city() + "," + order.getCustomer_state(), font));
-
 
1253
						//Start:-Added By Manish Sharma for FedEx Integration - Shipment Creation on 21-Aug-2013
-
 
1254
						if(order.getLogistics_provider_id()!=7L){
-
 
1255
							if(destCode != null)
-
 
1256
								customerTable.addCell(new Phrase(order.getCustomer_pincode() + " - " + destCode, helvetica16));
-
 
1257
							else
-
 
1258
								customerTable.addCell(new Phrase(order.getCustomer_pincode(), font));
-
 
1259
							}
-
 
1260
						else{
-
 
1261
							in.shop2020.model.v1.order.TransactionService.Client tclient = tsc.getClient();
-
 
1262
							String fedexLocationcode = "";
-
 
1263
							try {
-
 
1264
								fedexLocationcode = tclient.getOrderAttributeValue(order.getId(), "FedEx_Location_Code");
-
 
1265
							} catch (TException e1) {
-
 
1266
								logger.error("Error while getting the provider information.", e1);
-
 
1267
							}
-
 
1268
							customerTable.addCell(new Phrase(order.getCustomer_pincode() + " - " + fedexLocationcode, helvetica16));
-
 
1269
						}
-
 
1270
						//Start:-Added By Manish Sharma for FedEx Integration - Shipment Creation on 21-Aug-2013
-
 
1271
						if(order.getCustomer_mobilenumber()!=null && !order.getCustomer_mobilenumber().isEmpty()) {
-
 
1272
							customerTable.addCell(new Phrase("Phone : " + (order.getCustomer_mobilenumber()== null ? "" : order.getCustomer_mobilenumber()), font));
-
 
1273
						}
-
 
1274
					}
1222
				}else{
1275
				}else{
1223
					customerTable.addCell(new Phrase(order.getCustomer_name(), font));
1276
					customerTable.addCell(new Phrase(order.getCustomer_name(), font));
1224
					if(order.getSource() == OrderSource.HOMESHOP18.getValue()){
1277
					if(order.getSource() == OrderSource.HOMESHOP18.getValue()){
1225
						HsOrder hsOrder = null;
1278
						HsOrder hsOrder = null;
1226
						try {
1279
						try {