public async Task <IActionResult> ApplyGraves([FromBody] ApplyGravesViewModel applyGraves) { ApplicationUser user = await userManager.GetUserAsync(HttpContext.User); CollectionManager.CollectionManager collectionMgr = (CollectionManager.CollectionManager) await collectionManagerFactory.Create(user.Id); await collectionMgr.RemoveNotes(applyGraves.Chunk.Notes); await collectionMgr.RemoveCards(applyGraves.Chunk.Cards); await collectionMgr.RemoveDecks(applyGraves.Chunk.Decks); /* * * Collection collection = await context.Collections * .Where(c => c.User == user) * .FirstOrDefaultAsync(); * * List<long> gravedNoteIds = applyGraves.Chunk.Notes; * List<long> gravedCardIds = applyGraves.Chunk.Cards; * List<long> gravedDeckIds = applyGraves.Chunk.Decks; * * // Remove notes * var gravedNotes = context.Notes * .Where(n => n.User == user && gravedNoteIds.Contains(n.Id)); * * context.Notes.RemoveRange(gravedNotes); * * // Remove cards * var gravedCards = context.Cards * .Where(c => c.User == user && gravedCardIds.Contains(c.Id)); * * context.Cards.RemoveRange(gravedCards); * * // Handle deck removals by searching for the associated cards * // and notes for the given decks. * var gravedDeckCards = context.Cards * .Where(c => c.User == user && gravedDeckIds.Contains(c.Id)); * * var gravedDeckNoteIds = gravedDeckCards * .Select(c => c.NoteId) * .ToList<long>(); * * var gravedDeckNotes = context.Notes * .Where(n => gravedDeckNoteIds.Contains(n.Id) && n.User == user); * * context.Cards.RemoveRange(gravedDeckCards); * context.Notes.RemoveRange(gravedDeckNotes); * * // Save the grave records * context.AddRange( * gravedNoteIds * .Select(noteId => new Grave * { * User = user, * UpdateSequenceNumber = collection.UpdateSequenceNumber, * OriginalId = noteId, * Type = GraveType.Note, * }) * ); * * context.AddRange( * gravedCardIds * .Select(cardId => new Grave * { * User = user, * UpdateSequenceNumber = collection.UpdateSequenceNumber, * OriginalId = cardId, * Type = GraveType.Card, * }) * ); * * context.AddRange( * gravedDeckIds * .Select(deckId => new Grave * { * User = user, * UpdateSequenceNumber = collection.UpdateSequenceNumber, * OriginalId = deckId, * Type = GraveType.Deck, * }) * ); * * context.SaveChanges(); */ return(Ok(new List <long>())); }
void sbUpdate_Click(object sender, EventArgs e) { SplashScreenManager.ShowForm(this, typeof(WaitForm1), true, true, false); //strname switch (Program.intCode) { case 13: //Akwa Ibom state break; case 32: //kogi state break; case 37: //ogun state using (var DriveCollection = new CollectionManager.CollectionManager()) { dss = DriveCollection.CmuCollectionDownload(strTin); } break; case 40: //oyo state break; default: break; } if (dss.Tables.Count == 0) { //looping through the return dataset foreach (DataRow dr in dss.Tables[0].Rows) { //get reccord from the dataset string payref = dr["PaymentRefNumber"].ToString(); //check it paymentref exit before in the table string conn = Logic.ConfigureSettings(); db_con = new OleDbConnection(conn); String query = String.Format("Select * from tblCollectionReport where PaymentRefNumber = '{0}' ", payref); DataSet ds = new DataSet(); db_con.Open(); OleDbDataAdapter da = new OleDbDataAdapter(query, conn); //Fill the DataSet da.Fill(ds, "tblCollectionReport"); db_con.Close(); if (ds.Tables[0].Rows.Count >= 1) { //record exits den do update string query1 = String.Format("UPDATE tblCollectionReport SET [Provider] = '{0}',[Channel] = '{1}',[DepositSlipNumber] = '{2}' ,[PaymentDate] ='{3:MM/dd/yyyy HH:mm:ss tt}',[PayerID] = '{4}',[PayerName] = '{5}',[Amount] = '{6}',[PaymentMethod] = '{7}',[ChequeNumber] ='{8}',[ChequeValueDate] = '{9:MM/dd/yyyy HH:mm:ss tt}',[ChequeStatus] = '{10}',[DateChequeReturned] = '{11:MM/dd/yyyy HH:mm:ss tt}',[TelephoneNumber] = '{12}',[ReceiptNo] = '{13}',[ReceiptDate] = '{14:MM/dd/yyyy HH:mm:ss tt}',[PayerAddress] = '{15}',[User] ='{16}',[RevenueCode] ='{17}',[Description] = '{18}',[ChequeBankCode] ='{19}',[ChequeBankName] = '{20}',[AgencyName] = '{21}',[AgencyCode] = '{22}',[BankCode] = '{23}',[BankName] = '{24}',[BranchCode] = '{25}',[BranchName] = '{26}',[ZoneCode] = '{27}',[ZoneName] = '{27}',[Username] = '{28}',[AmountWords] = '{30}',[EReceipts] = '{31}' ,[EReceiptsDate] = '{32:MM/dd/yyyy HH:mm:ss tt}',[GeneratedBy] = '{33}' ,[StationCode] = '{34}',[StationName] = '{35}' WHERE PaymentRefNumber = '{36}'", dr["Provider"], dr["Channel"], dr["DepositSlipNumber"], dr["PaymentDate"], dr["PayerID"], dr["PayerName"], dr["Amount"], dr["PaymentMethod"], dr["ChequeNumber"], dr["ChequeValueDate"], dr["ChequeStatus"], dr["DateChequeReturned"], dr["TelephoneNumber"], dr["ReceiptNo"], dr["ReceiptDate"], dr["PayerAddress"], dr["User"], dr["RevenueCode"], dr["Description"], dr["ChequeBankCode"], dr["ChequeBankName"], dr["AgencyName"], dr["AgencyCode"], dr["BankCode"], dr["BankName"], dr["BranchCode"], dr["BranchName"], dr["ZoneCode"], dr["ZoneName"], dr["Username"], dr["AmountWords"], dr["EReceipts"], dr["EReceiptsDate"], dr["GeneratedBy"], dr["StationCode"], dr["StationName"], dr["PaymentRefNumber"]); //string conn = Logic.ConfigureSettings(); db_con = new OleDbConnection(conn); OleDbCommand cmd = new OleDbCommand(query1, db_con); cmd.ExecuteNonQuery(); } else { //insert update string qury = string.Format("Insert into tblCollectionReport ([Provider],[Channel] ,[DepositSlipNumber] ,[PaymentDate] ,[PayerID] ,[PayerName] ,[Amount] ,[PaymentMethod] ,[ChequeNumber],[ChequeValueDate] ,[ChequeStatus],[DateChequeReturned] ,[TelephoneNumber] ,[ReceiptNo],[ReceiptDate],[PayerAddress] ,[User] ,[RevenueCode],[Description] ,[ChequeBankCode],[ChequeBankName],[AgencyName],[AgencyCode],[BankCode],[BankName],[BranchCode] ,[BranchName] ,[ZoneCode],[ZoneName],[Username],[AmountWords],[EReceipts] ,[EReceiptsDate] ,[GeneratedBy] ,[StationCode],[StationName,PaymentRefNumber])VALUES('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}','{21}','{22}','{23}','{24}','{25}','{26}','{27}','{28}','{29}','{30}','{31}','{32}','{33}','{34}','{35}','{36}')", dr["Provider"], dr["Channel"], dr["DepositSlipNumber"], dr["PaymentDate"], dr["PayerID"], dr["PayerName"], dr["Amount"], dr["PaymentMethod"], dr["ChequeNumber"], dr["ChequeValueDate"], dr["ChequeStatus"], dr["DateChequeReturned"], dr["TelephoneNumber"], dr["ReceiptNo"], dr["ReceiptDate"], dr["PayerAddress"], dr["User"], dr["RevenueCode"], dr["Description"], dr["ChequeBankCode"], dr["ChequeBankName"], dr["AgencyName"], dr["AgencyCode"], dr["BankCode"], dr["BankName"], dr["BranchCode"], dr["BranchName"], dr["ZoneCode"], dr["ZoneName"], dr["Username"], dr["AmountWords"], dr["EReceipts"], dr["EReceiptsDate"], dr["GeneratedBy"], dr["StationCode"], dr["StationName"], dr["PaymentRefNumber"]); db_con = new OleDbConnection(conn); OleDbCommand cmd = new OleDbCommand(qury, db_con); cmd.ExecuteNonQuery(); } } //update online table after download switch (Program.intCode) { case 13: //Akwa Ibom state break; case 32: //kogi state break; case 37: //ogun state using (var DriveCollection = new CollectionManager.CollectionManager()) { dsreturn = DriveCollection.CmuCollectionDownloadUpdate(dss, strTin); } break; case 40: //oyo state break; default: break; } } else { MessageBox.Show(String.Format("No More Records for {0} Tax Drive Team", strname)); return; } SplashScreenManager.CloseForm(false); }