示例#1
0
        private MassVoucher GetCurrentVoucher()
        {
            MassVoucher massVoucher = new MassVoucher
            {
                Amount                     = Amount,
                Project                    = SelectedProject,
                Head                       = SelectedHead,
                VoucherType                = SelectedVoucherType,
                VoucherSerialNo            = VoucherSerialNo,
                VoucherDate                = VoucherDate,
                JVDebitOrCredit            = SelectedJVDebitOrCredit,
                ContraType                 = SelectedContraType,
                IsCheque                   = IsPaymentInCheque,
                IsFixedAsset               = IsFixedAsset,
                ChequeNo                   = ChequeNo,
                ChequeDate                 = ChequeDate,
                BankName                   = BankName,
                FixedAssetName             = FixedAssetParticulars,
                FixedAssetDepreciationRate = FixedAssetDepreciationRate,
                Tag           = GetTag(),
                Narration     = Narration,
                FinancialYear = _parameterManager.GetCurrentFinancialYear()
            };

            return(massVoucher);
        }
示例#2
0
        //public void TemporaryVoucherReset()
        //{
        //    VoucherTypeChanged();
        //    VoucherDate = DateTime.Now;
        //    SelectedContraType = null;
        //}

        private void CreateVoucher()
        {
            if (_postStatus != PostStatus.Postable)
            {
                ShowFinancialYearIsNotOpenedMessage();
                return;
            }

            IMassVoucherManager massVoucherManager = BLLCoreFactory.GetMassVoucherManager();
            MassVoucher         massVoucher        = GetCurrentVoucher();

            if (massVoucher == null)
            {
                return;
            }

            bool    isAdded       = massVoucherManager.Set(massVoucher);
            Message latestMessage = MessageService.Instance.GetLatestMessage();

            if (isAdded)
            {
                IList <Record> records = massVoucherManager.GetEntryableRecords();
                AddTemporaryRecords(records);
                ClearMessage();
                SetPostButtonIsEnabled();
            }

            ShowMessage(latestMessage);
        }
示例#3
0
        public bool Set(MassVoucher massVoucher)
        {
            bool   isValid = true;
            double ignored = 0;

            if (massVoucher.Project == null)
            {
                isValid = SetErrorMessage("NoProjectSelected");
            }
            else if (massVoucher.VoucherType != "Contra" && massVoucher.Head == null)
            {
                isValid = SetErrorMessage("NoHeadSelected");
            }
            else if (massVoucher.Amount == 0)
            {
                isValid = SetErrorMessage("AmountCannotBeZero");
            }
            else if (massVoucher.VoucherType == "Contra" && string.IsNullOrWhiteSpace(massVoucher.ContraType))
            {
                isValid = SetErrorMessage("ContraTypeIsNotSelected");
            }
            else if (massVoucher.VoucherType == "JV" && string.IsNullOrWhiteSpace(massVoucher.JVDebitOrCredit))
            {
                isValid = SetErrorMessage("JVDebitOrCreditNotSelected");
            }
            else if (massVoucher.IsFixedAsset && string.IsNullOrWhiteSpace(massVoucher.FixedAssetName))
            {
                isValid = SetWarningMessage("NoFixedAssetParticularNameFound");
            }
            else if (massVoucher.IsCheque &&
                     (string.IsNullOrWhiteSpace(massVoucher.ChequeNo) || string.IsNullOrWhiteSpace(massVoucher.BankName)))
            {
                isValid = SetInformationMessage("NoChequeOrBankInfo");
            }
            else if (massVoucher.IsFixedAsset && massVoucher.FixedAssetDepreciationRate == 0)
            {
                isValid = SetInformationMessage("ZeroDepreciationProvidedForFixedAsset");
            }
            else if (_voucherManager.GetVouchers(massVoucher.VoucherType + "-" + massVoucher.VoucherSerialNo.ToString(), ref ignored).Count() != 0)
            {
                isValid = SetWarningMessage("VoucherAlreadyExists");
            }

            if (isValid)
            {
                _massVoucher = massVoucher;

                if (!massVoucher.VoucherType.Equals("Contra", StringComparison.OrdinalIgnoreCase))
                {
                    _projectHead = _projectHeadRepository.GetSingle(
                        ph => ph.Project.ID == massVoucher.Project.ID && ph.Head.ID == massVoucher.Head.ID);
                }
                isValid = SetEntryableRecords();
            }

            return(isValid);
        }