HouseworkTemplateService.java
package com.hwhub.backend.application.service;
import com.hwhub.backend.domain.enums.ProgramType;
import com.hwhub.backend.domain.model.houseworktemplate.HouseworkTemplateId;
import com.hwhub.backend.domain.model.houseworktemplate.HouseworkTemplateModel;
import com.hwhub.backend.domain.repository.HouseworkTemplateRepository;
import java.util.List;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/** 家事テンプレートに関するユースケース実行クラス。 */
@Service
@RequiredArgsConstructor
public class HouseworkTemplateService {
private final HouseworkTemplateRepository repository;
/**
* 家事テンプレート全件取得する。
*
* @return 家事テンプレート全件
*/
@Transactional(readOnly = true)
public List<HouseworkTemplateModel> findAll() {
return repository.findAll();
}
/**
* 家事テンプレートを新規登録する。
*
* @param model 家事テンプレートモデル
* @param operatorUserId 操作者ユーザーID
* @return 新規登録された家事テンプレートモデル
*/
@Transactional
public HouseworkTemplateModel create(HouseworkTemplateModel model, Long operatorUserId) {
return repository.insert(model, operatorUserId, ProgramType.ONL_ADM_HW_TP.getCode());
}
/**
* 家事テンプレートを更新する。
*
* @param model 家事テンプレートモデル
* @param operatorUserId 操作者ユーザーID
*/
@Transactional
public void update(HouseworkTemplateModel model, Long operatorUserId) {
repository.update(model, operatorUserId, ProgramType.ONL_ADM_HW_TP.getCode());
}
/**
* 家事テンプレートを削除する。
*
* @param id 家事テンプレートID
* @param operatorUserId 操作者ユーザーID
*/
@Transactional
public void delete(HouseworkTemplateId id, Long operatorUserId) {
repository.delete(id, operatorUserId, ProgramType.ONL_ADM_HW_TP.getCode());
}
}