Esempio n. 1
0
 private bool SaveITC(GST_TRN_ITC itcData)
 {
     try
     {
         unitOfWork.ITCRepository.Create(itcData);
         unitOfWork.Save();
         return(true);
     }
     catch (Exception ex)
     { return(false); }
 }
Esempio n. 2
0
        public GST_TRN_ITC GetITC(Int64 itcID)
        {
            GST_TRN_ITC itcItem = new GST_TRN_ITC();

            try
            {
                itcItem = unitOfWork.ITCRepository.Find(f => f.ITC_ID == itcID);
            }
            catch (Exception ex)
            { }
            return(itcItem);
        }
Esempio n. 3
0
        /// <summary>
        /// Receiver SIDE ITC ADD/UPDATE
        /// </summary>
        /// <param name="invoiceData"></param>
        /// <returns></returns>
        public bool SaveItcReceiver(GST_TRN_INVOICE invoiceData)
        {
            GST_TRN_ITC item = new GST_TRN_ITC();

            item.Amount = invoiceData.GST_TRN_INVOICE_DATA.Sum(s => s.TotalAmountWithTax);
            item.IGST   = invoiceData.GST_TRN_INVOICE_DATA.Sum(s => s.IGSTAmt);
            if (item.IGST > 0)
            {
                item.TaxType = (byte)EnumConstants.TaxType.IGST;
            }

            item.CGST = invoiceData.GST_TRN_INVOICE_DATA.Sum(s => s.CGSTAmt);
            if (item.CGST > 0)
            {
                item.TaxType = (byte)EnumConstants.TaxType.CGST;
            }

            item.SGST = invoiceData.GST_TRN_INVOICE_DATA.Sum(s => s.SGSTAmt);
            if (item.SGST > 0)
            {
                item.TaxType = (byte)EnumConstants.TaxType.SGST;
            }

            if (item.SGST.Value == 0)
            {
                item.TaxType = (byte)EnumConstants.TaxType.UTGST;
                item.SGST    = invoiceData.GST_TRN_INVOICE_DATA.Sum(s => s.UGSTAmt);
            }

            item.Cess = invoiceData.GST_TRN_INVOICE_DATA.Sum(s => s.CessAmt);

            item.InvoiceID = invoiceData.InvoiceID;
            item.ITCStatus = (byte)EnumConstants.ITCStatus.Active;
            if (invoiceData.InvoiceSpecialCondition.Value == (byte)EnumConstants.InvoiceSpecialCondition.Import || invoiceData.InvoiceSpecialCondition.Value == (byte)EnumConstants.InvoiceSpecialCondition.ReverseCharges)
            {
                //item.UserID = invoiceData.ReceiverUserID;
                // item.ITCMovement = (byte)EnumConstants.ITCMovement.Debit;
            }
            else
            {
                item.UserID = invoiceData.ReceiverUserID;
                //item.ITCMovement = (byte)EnumConstants.ITCMovement.Credit;
                //item.UserID = invoiceData.ReceiverUserID;
            }
            if (invoiceData.ParentInvoiceID.HasValue)
            {
                item.ITCParentID = null;
            }

            item.ITCMovement    = GetITCMovementReceiver(invoiceData.InvoiceSpecialCondition);
            item.ITCVoucherType = this.ITCVoucherType;
            item.ITCDate        = DateTime.Now;
            item.CreatedDate    = DateTime.Now;
            item.CreatedBy      = invoiceData.CreatedBy;
            bool isSave = false;

            //   if (invoiceData.InvoiceSpecialCondition != (byte)EnumConstants.InvoiceSpecialCondition.RegularRCM || invoiceData.InvoiceSpecialCondition.Value != (byte)EnumConstants.InvoiceSpecialCondition.JobWork)
            if (invoiceData.InvoiceSpecialCondition.Value == (byte)EnumConstants.InvoiceSpecialCondition.RegularRCM)
            {
                isSave = SaveITC(item);
            }
            else if (invoiceData.InvoiceSpecialCondition.Value == (byte)EnumConstants.InvoiceSpecialCondition.Regular)
            {
                isSave = SaveITC(item);
            }
            return(isSave);
        }