Exemplo n.º 1
0
        /// <summary>
        /// Mapping language for SECOM bank information, sending bank information of specific payment information
        /// </summary>
        /// <param name="payment"></param>
        private void ICS010_FillBankInfo(tbt_Payment payment)
        {
            List <tbt_Payment> paymentList = new List <tbt_Payment>();

            paymentList.Add(payment);
            ICS010_FillBankInfo(paymentList);
        }
Exemplo n.º 2
0
 /// <summary>
 /// Mapping description for payment type of specific payment information
 /// </summary>
 /// <param name="doPayment">payment information</param>
 private void ICS010_FillPaymentType(tbt_Payment doPayment)
 {
     if (doPayment != null && !(string.IsNullOrEmpty(doPayment.PaymentType)))
     {
         List <string> listFieldName = new List <string>();
         listFieldName.Add(MiscType.C_PAYMENT_TYPE);
         ICommonHandler        commonHandler = ServiceContainer.GetService <ICommonHandler>() as ICommonHandler;
         List <doMiscTypeCode> listMisc      = commonHandler.GetMiscTypeCodeListByFieldName(listFieldName).Where(d => d.ValueCode == doPayment.PaymentType).ToList(); // This result has language mapping already
         if (listMisc != null && listMisc.Count > 0)
         {
             doPayment.PaymentTypeDisplay = listMisc[0].ValueDisplay;
         }
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// Validate business of payment information
        /// </summary>
        /// <param name="validator"></param>
        /// <param name="payment"></param>
        private void ICS010_ValidatePaymentBusiness(ValidatorUtil validator, tbt_Payment payment)
        {
            ICS010_ScreenParameter screenObject = GetScreenObject <ICS010_ScreenParameter>();
            bool isHaveErrorRefAdvanceReceiptNo = false;

            // Check required field by Payment Type
            if (CommonUtil.IsNullOrEmpty(payment) || CommonUtil.IsNullOrEmpty(payment.PaymentType))
            {
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                          , "PaymentType", "lblPaymentType", "PaymentType");
            }

            //Validate validate require field
            if (CommonUtil.IsNullOrEmpty(payment.SECOMAccountID))
            {
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                          , "SECOMAccountID", "lblSECOMBank", "SECOMAccountID");
            }
            if (payment.PaymentAmountCurrencyType == CurrencyUtil.C_CURRENCY_LOCAL &&
                (CommonUtil.IsNullOrEmpty(payment.PaymentAmount) || payment.PaymentAmount == 0))
            {
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                          , "PaymentAmount", "lblPaymentAmount", "PaymentAmount");
            }
            else if (payment.PaymentAmountCurrencyType == CurrencyUtil.C_CURRENCY_US &&
                     (CommonUtil.IsNullOrEmpty(payment.PaymentAmountUsd) || payment.PaymentAmountUsd == 0))
            {
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                          , "PaymentAmount", "lblPaymentAmount", "PaymentAmount");
            }
            if (!payment.PaymentDateNull.HasValue)
            {
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                          , "PaymentDateNull", "lblPaymentDate", "PaymentDateNull");
            }
            else if (payment.PaymentDateNull.Value.Date > DateTime.Now.Date)
            {
                //Payment date must not be future date.
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_INCOME, MessageUtil.MessageList.MSG7076
                                          , "PaymentDateNull", "lblPaymentDate", "PaymentDateNull");
            }

            //Validate only promissory note
            if (payment.PaymentType == PaymentType.C_PAYMENT_TYPE_PROMISSORY_NOTE || payment.PaymentType == PaymentType.C_PAYMENT_TYPE_CHEQUE_POST_DATED)
            {
                if (CommonUtil.IsNullOrEmpty(payment.DocNo))
                {
                    validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                              , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                              , "PromissoryNoteNo", "lblPromissoryNoteNo", "PromissoryNoteNo");
                }
                if (payment.DocDate.HasValue == false)
                {
                    validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                              , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                              , "PromissoryNoteDate", "lblPromissoryNoteDate", "PromissoryNoteDate");
                }

                if (CommonUtil.IsNullOrEmpty(payment.SendingBankCode))
                {
                    validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                              , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                              , "SendingBankCode", "lblSendingBank", "SendingBankCode");
                }
                if (CommonUtil.IsNullOrEmpty(payment.SendingBranchCode))
                {
                    validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                              , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                              , "SendingBranchCode", "lblSendingBranch", "SendingBranchCode");
                }
            }


            if (!string.IsNullOrEmpty(payment.PayerBankAccNo) && payment.PayerBankAccNo.Length != 20)
            {
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_INCOME, MessageUtil.MessageList.MSG7077
                                          , "");
            }

            //Comment by Jutarat A. on 01022013
            //if (!CommonUtil.IsNullOrEmpty(payment.PaymentType) && !(payment.PaymentType.Equals(PaymentType.C_PAYMENT_TYPE_BANK_TRANSFER)
            //    || payment.PaymentType.Equals(PaymentType.C_PAYMENT_TYPE_AUTO_TRANSFER)))
            //{
            //    // Ext validate require field for not bank transfer
            //    if (CommonUtil.IsNullOrEmpty(payment.RefAdvanceReceiptNo))
            //    {
            //        validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
            //          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
            //          , "RefAdvanceReceiptNo", "lblReceiptNo", "RefAdvanceReceiptNo");
            //        isHaveErrorRefAdvanceReceiptNo = true;
            //    }

            //    if (CommonUtil.IsNullOrEmpty(payment.RefAdvanceReceiptAmount))
            //    {
            //        validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
            //          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
            //          , "RefAdvanceReceiptAmount", "lblReceiptAmount", "RefAdvanceReceiptAmount");
            //        isHaveErrorRefAdvanceReceiptNo = true;
            //    }
            //    if (CommonUtil.IsNullOrEmpty(payment.RefInvoiceNo))
            //    {
            //        validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
            //          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
            //          , "RefInvoiceNo", "lblInvoiceNO", "RefInvoiceNo");
            //    }

            //    if (!isHaveErrorRefAdvanceReceiptNo)
            //    {
            //        var handler = ServiceContainer.GetService<IIncomeHandler>() as IIncomeHandler;
            //        var receiptData = handler.GetReceipt(payment.RefAdvanceReceiptNo);
            //        if (receiptData == null)
            //        {
            //            validator.AddErrorMessage(MessageUtil.MODULE_INCOME, MessageUtil.MessageList.MSG7106
            //              , "RefAdvanceReceiptNo", payment.RefAdvanceReceiptNo);
            //            isHaveErrorRefAdvanceReceiptNo = true;
            //        }

            //        if (!isHaveErrorRefAdvanceReceiptNo)
            //            ICS010_ValidateReceiptBusiness(receiptData, validator);
            //    }
            //}

            //Add by Jutarat A. on 01022013
            if (CommonUtil.IsNullOrEmpty(payment.RefAdvanceReceiptAmount) == false)
            {
                var handler     = ServiceContainer.GetService <IIncomeHandler>() as IIncomeHandler;
                var receiptData = handler.GetReceipt(payment.RefAdvanceReceiptNo);
                if (receiptData == null)
                {
                    validator.AddErrorMessage(MessageUtil.MODULE_INCOME, MessageUtil.MessageList.MSG7106
                                              , "RefAdvanceReceiptNo", payment.RefAdvanceReceiptNo);
                    isHaveErrorRefAdvanceReceiptNo = true;
                }

                if (!isHaveErrorRefAdvanceReceiptNo)
                {
                    ICS010_ValidateReceiptBusiness(receiptData, validator);
                }
            }
            if (CommonUtil.IsNullOrEmpty(payment.MatchRGroupName))
            {
                validator.AddErrorMessage(MessageUtil.MODULE_INCOME, "ICS010"
                                          , MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0007
                                          , "GroupNameInput", "lblGroupname", "GroupNameInput");
            }
            //End Add
        }