Files
bflows-bandi-be/src/main/java/net/gepafin/tendermanagement/service/impl/CompanyServiceImpl.java
2024-09-29 19:59:10 +05:30

84 lines
2.8 KiB
Java

package net.gepafin.tendermanagement.service.impl;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import jakarta.servlet.http.HttpServletRequest;
import net.gepafin.tendermanagement.dao.CompanyDao;
import net.gepafin.tendermanagement.dao.VatCheckDao;
import net.gepafin.tendermanagement.entities.CompanyEntity;
import net.gepafin.tendermanagement.entities.UserEntity;
import net.gepafin.tendermanagement.entities.UserWithCompanyEntity;
import net.gepafin.tendermanagement.model.request.CompanyRequest;
import net.gepafin.tendermanagement.model.response.CompanyResponse;
import net.gepafin.tendermanagement.service.CompanyService;
import net.gepafin.tendermanagement.util.Validator;
@Service
public class CompanyServiceImpl implements CompanyService {
@Autowired
private Validator validator;
@Autowired
private CompanyDao companyDao;
@Autowired
private VatCheckDao vatCheckDao;
@Override
@Transactional(rollbackFor = Exception.class)
public CompanyResponse createCompany(HttpServletRequest request, CompanyRequest companyRequest) {
UserEntity userEntity =validator.validateUser(request);
return companyDao.createCompany(userEntity, companyRequest);
}
@Override
@Transactional(rollbackFor = Exception.class)
public CompanyResponse updateCompany(HttpServletRequest request, Long companyId, CompanyRequest companyRequest) {
UserEntity userEntity =validator.validateUser(request);
return companyDao.updateCompany(userEntity, companyId, companyRequest);
}
@Override
@Transactional(readOnly = true)
public CompanyResponse getCompany(HttpServletRequest request, Long companyId) {
UserEntity userEntity =validator.validateUser(request);
return companyDao.getCompany(userEntity, companyId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteCompany(HttpServletRequest request, Long companyId) {
UserEntity userEntity =validator.validateUser(request);
companyDao.deleteCompany(userEntity, companyId);
}
@Override
@Transactional(readOnly = true)
public List<CompanyResponse> getCompanyByUserId(HttpServletRequest request, Long userId) {
UserEntity userEntity = validator.validateUser(request);
return companyDao.getCompanyByUserId(userId);
}
@Override
@Transactional(readOnly = true)
public Map<String, Object> checkVatNumber(HttpServletRequest request, String vatNumber) {
return vatCheckDao.checkVatNumber(vatNumber);
}
@Override
public CompanyEntity validateCompany(Long companyId) {
return companyDao.validateCompany(companyId);
}
@Override
public UserWithCompanyEntity validateUserWithCompny(Long userId, Long companyId) {
return companyDao.validateUserWithCompny(userId, companyId);
}
}