added new JBilling API getCustomerIdsInStatus()
added new JBilling API getLogoPath(), getUserEventLog()
added new JBilling API getSelectOption()
added new JBilling API getAgeReceivableReport()
added new JBilling API importInvoices()
added New payment method - Bank

Client tier modifications:
Modified following jsp pages: payment/viewBody.jsp, payment/editBody.jsp, payment/customerSelect.jsp, 
payment/createBodyTop.jsp, payment/createRefundTop.jsp
Modified class com.sapienter.jbilling.client.payment.PaymentCrudAction to support new payment method


WEB Service changes:
Added validation to PaymentInfoBankDTO in 
com.sapienter.jbilling.server.util.WebServicesSessionSpringBean.validatePayment(PaymentWS dto)
added validation field to ws-validation.xml for PaymentInfoBankDTO

Descriptors:
- struts-config.xml added cash fields to "payment" com.sapienter.jbilling.client.util.DynaForm
- validation.xml extra validation rules for payment dyna form to validate cash payment date.
- application resources for Bank form and page title.

		

Server tier modifications:

Added new classes:
 com.sapienter.jbilling.server.entity.PaymentInfoBankDTO
 com.sapienter.jbilling.server.payment.db.PaymentInfoBankDTO
 com.sapienter.jbilling.server.payment.db.PaymentInfoBankDAS

Updated classes:
 com.sapienter.jbilling.server.payment.db.PaymentDTO added values here
 com.sapienter.jbilling.server.payment.PaymentDTOEx added bank field
 com.sapienter.jbilling.server.payment.PaymentWS added bank field
 com.sapienter.jbilling.server.payment.PaymentBL
 com.sapienter.jbilling.server.user.UserBL menu filter
 com.sapienter.jbilling.common.CommonConstants PAYMENT_METHOD_BANK = 11;

Database tier modifications: 


CREATE TABLE `jbilling`.`payment_info_bank` (
  `id` MEDIUMINT(9) UNSIGNED NOT NULL,
  `payment_id` MEDIUMINT(9) UNSIGNED,
  `paid_to` VARCHAR(100),
  `reference` VARCHAR(100),
  `bank_date` DATETIME,
  `OPTLOCK` MEDIUMINT(9) UNSIGNED NOT NULL,
  PRIMARY KEY (`id`),
  INDEX `payment_id` USING BTREE(`payment_id`)
)
ENGINE = MyISAM;

// add sequence for table
INSERT INTO jbilling_seqs SET name='payment_info_bank', next_id=1

// add new payment into payment_method table
INSERT INTO payment_method SET id=11


// Add new Menu Options
INSERT INTO menu_option SET id = 100, link = '/payment/customerSelect.jsp?create=yes&bank=yes',
level_field=2, parent_id=2;
INSERT INTO menu_option SET id = 101, link = '/payment/customerSelect.jsp?create=yes&bank=yes&refund=yes',
level_field=2, parent_id=31;

// Description have to be added into international_description table
// table_id, foreign_id, psudo_column, language, content

// payment method
INSERT INTO international_description SET table_id = 35, foreign_id = 11,
psudo_column='description', language_id=1, content='Bank'
// menu option
INSERT INTO international_description SET table_id = 63, foreign_id = 100,
psudo_column='display', language_id=1, content='Bank'
// menu option
INSERT INTO international_description SET table_id = 63, foreign_id = 101,
psudo_column='display', language_id=1, content='Bank'


// Permission have to be added for (permission_type 1 Menu Option)
INSERT INTO permission SET id=149, type_id=1, foreign_id=100
INSERT INTO permission SET id=150, type_id=1, foreign_id=101
// map roles to inserted permission (Internal 1, Superuser 2)
INSERT INTO permission_role_map SET permission_id=149, role_id=1
INSERT INTO permission_role_map SET permission_id=150, role_id=1
INSERT INTO permission_role_map SET permission_id=149, role_id=2
INSERT INTO permission_role_map SET permission_id=150, role_id=2