public static List <Cdnr> GetCdnrGst1Save(DataTable dtInvoice, DataTable dtInvoiceItemRate) { #region Cdnr Section List <Cdnr> _resCdnrList = new List <Cdnr>(); List <Nt> _resCdnrInv = new List <Nt>(); List <Itm3> _resCdnrItm = new List <Itm3>(); #endregion List <Cdnr> _cdnrList = new List <Cdnr>(); var distinctctin = (from DataRow dRow in dtInvoice.Rows select new { col1 = dRow["ctin"] }).Distinct().ToList(); for (int k = 0; k < distinctctin.Count(); k++) { Cdnr _cdnr = new Cdnr(); _cdnr.ctin = distinctctin[k].ToString().Replace("col1 =", "").Replace("{", "").Replace("}", ""); string _selectParam = "ctin =" + "'" + _cdnr.ctin.TrimStart().TrimEnd() + "'"; var currInvoiceLoop = dtInvoice.Select(_selectParam).CopyToDataTable(); List <ItmDet3> _itmdetList = new List <ItmDet3>(); string JSONString = string.Empty; JSONString = JsonConvert.SerializeObject(currInvoiceLoop); _resCdnrInv = Newtonsoft.Json.JsonConvert.DeserializeObject <List <Nt> >(JSONString); string JSONStringItem = string.Empty; JSONStringItem = JsonConvert.SerializeObject(dtInvoiceItemRate); _itmdetList = Newtonsoft.Json.JsonConvert.DeserializeObject <List <ItmDet3> >(JSONStringItem); _cdnr.nt = _resCdnrInv; List <Inv> _invList = new List <Inv>(); for (int i = 0; i < currInvoiceLoop.Rows.Count; i++) { Nt _inv = new Nt(); List <ItmDet3> itmdetList = new List <ItmDet3>(); List <Itm3> _itmList = new List <Itm3>(); string invoiceId = _cdnr.nt[i].InvoiceId; var _curritm = (List <ItmDet3>)_itmdetList.Where(x => x.InvoiceId == invoiceId).Select(x => x).ToList(); _inv = _resCdnrInv[i]; for (int j = 0; j < _curritm.Count(); j++) { Itm3 _itm = new Itm3(); ItmDet3 _itmdet = new ItmDet3(); _itmdet = (_curritm[j]); _itm.num = i + 1; _itm.itm_det = _itmdet; _itmList.Add(_itm); _inv.itms = _itmList; _cdnr.nt[i] = _inv; } } _cdnrList.Add(_cdnr); } return(_cdnrList); }
public Cdnr Getcdnrdata(GST_TRN_CRDR_NOTE cdnrInvoice) { Cdnr cdnrdatas = new Cdnr(); cdnrdatas.ctin = "Tin";//cdnrInvoice.TIN; cdnrdatas.nt = new List <Nt>(); foreach (var data in cdnrInvoice.GST_TRN_CRDR_NOTE_DATA) { cdnrdatas.nt.Add(GetNt(data)); } return(cdnrdatas); }
public Cdnr Getcdnrdata(GST_TRN_OFFLINE_INVOICE cdnrInvoice) { Cdnr cdnrdatas = new Cdnr(); cdnrdatas.ctin = "Tin";//cdnrInvoice.TIN; cdnrdatas.nt = new List <Nt>(); foreach (var data in cdnrInvoice.GST_TRN_OFFLINE_INVOICE_DATAITEM) { cdnrdatas.nt.Add(GetNt(data)); } return(cdnrdatas); }