Skocz do zawartości

Cele przetwarzania, a Sfera

Polecane posty

Nie powinno być z tym problemów.

Podmiot posiada właściwość Zgody, która zwraca kolekcję Celów przetwarzania wraz ze statusem i datami. Żeby "zaznaczyć zgodę" na wybrany cel należy znaleźć pozycję powiązaną z wybranym celem i odpowiednio zmienić status. Jeśli w kolekcji nie ma odpowiedniej pozycji, to należy ją najpierw dodać.

 

Link to postu

Poniższy przykład powinien Panu pomóc.

void UstawStatusZgody(Podmiot podmiot, CelPrzetwarzania celPrzetwarzania, StatusZgody status)
{
	var zgoda = podmiot.Zgody.FirstOrDefault(x => x.CelPrzetwarzaniaId == celPrzetwarzania.Id);
	if (zgoda == null)
	{
		zgoda = new Zgoda();
		podmiot.Zgody.Add(zgoda);
		zgoda.CelPrzetwarzania = celPrzetwarzania;
	}
	zgoda.Status = (byte)status;
}
Link to postu

Brakowało 3 linijek no i ja mam inne podejście :) WIELKIE DZIĘKI! Pora zakończyć temat RODO w firmie ;)

Jakby ktoś potrzebował, kompletny kod, z gratisem w postaci załączania pliku zgody :D

IObiektyBibliotekiDokumentow biblioteka = sfera.PodajObiektTypu<IObiektyBibliotekiDokumentow>();
IPodmioty podmioty = sfera.PodajObiektTypu<IPodmioty>();
ICelePrzetwarzania cele = sfera.PodajObiektTypu<ICelePrzetwarzania>();
var podmitoDoEdycji = podmioty.Dane.Wszystkie().Where(p => p.Id == pid).FirstOrDefault();                	
   
if(podmitoDoEdycji == null) {}
else
  {                  
  using (IPodmiot podmiot = podmioty.Znajdz(podmitoDoEdycji))
    {
    // ustawienie zgody na określony cel
  	var cel1 = cele.Dane.Wszystkie().Where(c => c.NazwaSkrocona == "ZNPDO").FirstOrDefault();
  	var zgoda1 = podmiot.Dane.Zgody.Where(z => z.CelPrzetwarzaniaId == cel1.Id).FirstOrDefault();
    if(zgoda1==null)
  	  {
  	  zgoda1 = new Zgoda();
	  podmiot.Dane.Zgody.Add(zgoda1);
      zgoda1.CelPrzetwarzania = cel1;
  	  }    
  	zgoda1.Status = 2;

  	// załączanie pliku
    using (var dok = biblioteka.Utworz()) {
      dok.Wypelnij(@"N:\zgoda_"+podmiot.Dane.Id+".pdf");
      dok.Przypisz(podmitoDoEdycji);
      dok.Zapisz(); 
      }
    podmiot.Zapisz();  
    }
  }

 

Link to postu
×
×
  • Dodaj nową pozycję...