
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.triz.trizservice.service;

import com.triz.trizservice.modeles.AnneeFiscale;
import com.triz.trizservice.modeles.Etablissement;
import com.triz.trizservice.modeles.ServiceEtablissementUser;
import com.triz.trizservice.modeles.ServiceFonctiongroupe;
import com.triz.trizservice.modeles.ServiceFonctionnaliter;
import com.triz.trizservice.modeles.ServiceGroupe;
import com.triz.trizservice.modeles.ServiceIncrementation;
import com.triz.trizservice.modeles.ServiceMember;
import com.triz.trizservice.modeles.ServiceUser;
import com.triz.trizservice.modeles.ServicehistoriqueConnection;
import com.triz.trizservice.modeles.ServiceHistoriqueManipulation;
import com.triz.trizservice.modeles.ServiceWilaya;
import com.triz.trizservice.modeles.ServiceHistoriqueManipulation;
import java.util.List;

/**
 *
 * @author abder_000
 */
public interface TransactionService {

    public List<ServiceUser> getAllUsers();
    
    public List<ServiceFonctionnaliter> getAllFonctionalite();
    
    public boolean isItTimeToChangePass();
    
    public ServiceUser getUserById(String userId) ;
    
    public List<ServiceMember> getGroupsByUser(ServiceUser user);
    
    public ServiceMember getGroupByUser(ServiceUser user);
    
    public void saveUser(ServiceUser object);
    
    public ServiceGroupe getGroupsById(String id);
    
    public void saveGroup(ServiceGroupe object);
    
    public void saveMembership(ServiceMember object);
    
    public void saveFonctionsGroupes(ServiceFonctiongroupe object);
    
    public ServicehistoriqueConnection getLastHistoriqueConnectionByUsers(ServiceUser user);
    
    public ServicehistoriqueConnection getLastHistoriqueConnectionById(Long id);
    
    public void save(ServicehistoriqueConnection historique);
    
    public List<ServiceGroupe> getAllGroups();
    
    public List<ServiceMember> getAllMembershipByUser(ServiceUser user);
    
    public List<ServiceFonctiongroupe> getAllFonctionsGroupesByGroupe(ServiceGroupe group);
    
    public List<ServiceMember> getAllMembership();
    
    public ServiceFonctionnaliter getFonctionnaliteById(String id);
    
    public List<ServiceFonctionnaliter> getAllFonctionnaliteServer();
    
    public void save(ServiceFonctionnaliter object);
    
    public void save(ServiceHistoriqueManipulation object);
    
    public List<ServiceFonctiongroupe> getAllFonctionsGroups();
    
    public List<ServiceFonctionnaliter> getFonctionServerByGroups(ServiceGroupe groupe);
    
    public List<ServiceFonctionnaliter> getFonctionServerByUsers(ServiceUser user);
    
    public ServiceFonctionnaliter getFonctionnaliteServerByFonction(String fonction);
    
    public int genererBDD(String chemain, String nomSql);
    
    public List<ServiceMember> getAllMemberShipByUser(ServiceUser user);
    
    public ServiceFonctiongroupe getFonctionGroupByFonctionIdAndGoupe(String id, ServiceGroupe group);
    
    public void save(ServiceIncrementation object);
    
    public ServiceIncrementation getIncrementation();
    
    public ServiceIncrementation getFirstIncrementation();
    
    public void save(ServiceGroupe object);
    
    public void removeFonctionsGroupes(ServiceFonctiongroupe fonctionGroupe);
    
    public List<ServicehistoriqueConnection> getListHistoriqueConnectionByUsers(ServiceUser user);
    
    public List<ServiceHistoriqueManipulation> getListHistoriqueManipulationByUsersByEntreprise(ServiceUser user);
    
    public Etablissement getEtablissementById(String id);
    
    public List<Etablissement> getAllStockEtablissementFromUsersEtablissementByUser(ServiceUser user);
    
    public ServiceEtablissementUser getAllUserEtablissementByEtablissementByUser(Etablissement etablissement,ServiceUser user);
    
    public List<ServiceFonctionnaliter> getFonctionServerByUsersByEtablissement(ServiceUser user,Etablissement etablissement);
    
    public ServicehistoriqueConnection getLastStockHistoriqueConnectionByUsers(ServiceUser user);
    
    public AnneeFiscale getAnneFiscalByEtablissementByActif(Etablissement etablissement);
    
    public List<ServiceWilaya> getAllWilaya();
}
