/*
 * 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.impl;

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 com.triz.trizservice.service.DaoService;
import com.triz.trizservice.service.TransactionService;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

/**
 *
 * @author abder_000
 */
@Service
public class TransactionServiceImpl implements TransactionService {

    @Autowired
    DaoService daoService;

    @Transactional("transactionManager")
    @Override
    public boolean isItTimeToChangePass() {
        return daoService.isItTimeToChangePass();
    }

    @Transactional("transactionManager")
    @Override
    public ServiceUser getUserById(String userId) {
        return daoService.getUserById(userId);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceMember> getGroupsByUser(ServiceUser user) {
        return daoService.getGroupsByUser(user);
    }

    @Transactional("transactionManager")
    @Override
    public ServiceMember getGroupByUser(ServiceUser user) {
        return daoService.getGroupByUser(user);
    }

    @Transactional("transactionManager")
    @Override
    public void saveUser(ServiceUser object) {
        daoService.saveUser(object);
    }

    @Transactional("transactionManager")
    @Override
    public ServiceGroupe getGroupsById(String id) {
        return daoService.getGroupsById(id);
    }

    @Transactional("transactionManager")
    @Override
    public void saveGroup(ServiceGroupe object) {
        daoService.saveGroup(object);
    }

    @Transactional("transactionManager")
    @Override
    public void saveMembership(ServiceMember object) {
        daoService.saveMembership(object);
    }

    @Transactional("transactionManager")
    @Override
    public void saveFonctionsGroupes(ServiceFonctiongroupe object) {
        daoService.saveFonctionsGroupes(object);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceFonctionnaliter> getAllFonctionalite() {
        return daoService.getAllFonctionalite();
    }

    @Transactional("transactionManager")
    @Override
    public ServicehistoriqueConnection getLastHistoriqueConnectionByUsers(ServiceUser user) {
        return daoService.getLastHistoriqueConnectionByUsers(user);
    }

    @Transactional("transactionManager")
    @Override
    public ServicehistoriqueConnection getLastHistoriqueConnectionById(Long id) {
        return daoService.getLastHistoriqueConnectionById(id);
    }

    @Transactional("transactionManager")
    @Override
    public void save(ServicehistoriqueConnection historique) {
        daoService.save(historique);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceGroupe> getAllGroups() {
        return daoService.getAllGroups();
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceMember> getAllMembershipByUser(ServiceUser user) {
        return daoService.getAllMembershipByUser(user);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceFonctiongroupe> getAllFonctionsGroupesByGroupe(ServiceGroupe group) {
        return daoService.getAllFonctionsGroupesByGroupe(group);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceMember> getAllMembership() {
        return daoService.getAllMembership();
    }

    @Transactional("transactionManager")
    @Override
    public ServiceFonctionnaliter getFonctionnaliteById(String id) {
        return daoService.getFonctionnaliteById(id);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceFonctionnaliter> getAllFonctionnaliteServer() {
        return daoService.getAllFonctionnaliteServer();
    }

    @Transactional("transactionManager")
    @Override
    public void save(ServiceFonctionnaliter object) {
        daoService.save(object);
    }

    @Transactional("transactionManager")
    @Override
    public void save(ServiceHistoriqueManipulation object) {
        daoService.save(object);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceFonctiongroupe> getAllFonctionsGroups() {
        return daoService.getAllFonctionsGroups();
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceFonctionnaliter> getFonctionServerByGroups(ServiceGroupe groupe) {
        return daoService.getFonctionServerByGroups(groupe);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceFonctionnaliter> getFonctionServerByUsers(ServiceUser user) {
        return daoService.getFonctionServerByUsers(user);
    }

    @Transactional("transactionManager")
    @Override
    public ServiceFonctionnaliter getFonctionnaliteServerByFonction(String fonction) {
        return daoService.getFonctionnaliteServerByFonction(fonction);
    }

    public int genererBDD(String chemain, String nomSql) {
        return daoService.genererBDD(chemain, nomSql);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceMember> getAllMemberShipByUser(ServiceUser user) {
        return daoService.getAllMemberShipByUser(user);
    }

    @Transactional("transactionManager")
    @Override
    public ServiceFonctiongroupe getFonctionGroupByFonctionIdAndGoupe(String id, ServiceGroupe group) {
        return daoService.getFonctionGroupByFonctionIdAndGoupe(id, group);
    }

    @Transactional("transactionManager")
    @Override
    public void save(ServiceIncrementation object) {
        daoService.save(object);
    }

    @Transactional("transactionManager")
    @Override
    public ServiceIncrementation getIncrementation() {
        return daoService.getIncrementation();
    }

    @Transactional("transactionManager")
    @Override
    public ServiceIncrementation getFirstIncrementation() {
        return daoService.getFirstIncrementation();
    }

    @Transactional("transactionManager")
    @Override
    public void save(ServiceGroupe object) {
        daoService.save(object);
    }

    @Transactional("transactionManager")
    @Override
    public void removeFonctionsGroupes(ServiceFonctiongroupe fonctionGroupe) {
        daoService.removeFonctionsGroupes(fonctionGroupe);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServicehistoriqueConnection> getListHistoriqueConnectionByUsers(ServiceUser user) {
        return daoService.getListHistoriqueConnectionByUsers(user);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceHistoriqueManipulation> getListHistoriqueManipulationByUsersByEntreprise(ServiceUser user) {
        return daoService.getListHistoriqueManipulationByUsersByEntreprise(user);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceUser> getAllUsers() {
        return daoService.getAllUsers();
    }

    @Transactional("transactionManager")
    @Override
    public Etablissement getEtablissementById(String id) {
        return daoService.getEtablissementById(id);
    }

    @Transactional("transactionManager")
    @Override
    public List<Etablissement> getAllStockEtablissementFromUsersEtablissementByUser(ServiceUser user) {
        return daoService.getAllStockEtablissementFromUsersEtablissementByUser(user);
    }

    @Transactional("transactionManager")
    @Override
    public ServiceEtablissementUser getAllUserEtablissementByEtablissementByUser(Etablissement etablissement, ServiceUser user) {
        return daoService.getAllUserEtablissementByEtablissementByUser(etablissement, user);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceFonctionnaliter> getFonctionServerByUsersByEtablissement(ServiceUser user, Etablissement etablissement) {
        return daoService.getFonctionServerByUsersByEtablissement(user, etablissement);
    }

    @Transactional("transactionManager")
    @Override
    public ServicehistoriqueConnection getLastStockHistoriqueConnectionByUsers(ServiceUser user) {
        return daoService.getLastHistoriqueConnectionByUsers(user);
    }

    @Transactional("transactionManager")
    @Override
    public AnneeFiscale getAnneFiscalByEtablissementByActif(Etablissement etablissement) {
        return daoService.getAnneFiscalByEtablissementByActif(etablissement);
    }

    @Transactional("transactionManager")
    @Override
    public List<ServiceWilaya> getAllWilaya() {
      return daoService.getAllWilaya();
    }
}
