package com.everyday.word.service.impl; import com.everyday.word.dao.EnglishWordsMapper; import com.everyday.word.entity.EnglishWords; import com.everyday.word.exception.EnglishWordsException; import com.everyday.word.service.inter.EnglishWordsService; import org.springframework.stereotype.Service; import org.yeshi.utils.StringUtil; import javax.annotation.Resource; import java.util.Date; import java.util.List; /** * @author hxh * @title: EnglishWordsServiceImpl * @description: * @date 2024/9/14 13:40 */ @Service public class EnglishWordsServiceImpl implements EnglishWordsService { @Resource private EnglishWordsMapper englishWordsMapper; @Override public void addEnglishWords(EnglishWords word) throws EnglishWordsException { if(word==null|| StringUtil.isNullOrEmpty(word.getSpelling())){ throw new EnglishWordsException("数据不完整"); } EnglishWords oldWord = selectBySpelling(word.getSpelling()); if(oldWord!=null){ word.setId(oldWord.getId()); word.setUpdateTime(new Date()); englishWordsMapper.updateByPrimaryKeySelective(word); }else{ if(word.getCreateTime()==null){ word.setCreateTime(new Date()); } englishWordsMapper.insertSelective(word); } } @Override public EnglishWords selectBySpelling(String spelling) { EnglishWordsMapper.DaoQuery daoQuery=new EnglishWordsMapper.DaoQuery(); daoQuery.spelling=spelling; daoQuery.count = 1; List list = englishWordsMapper.list(daoQuery); if(!list.isEmpty()){ return list.get(0); } return null; } @Override public List list(EnglishWordsMapper.DaoQuery query, int page, int pageSize) { query.start=(page-1)*pageSize; query.count = pageSize; return englishWordsMapper.list(query); } @Override public long count(EnglishWordsMapper.DaoQuery query) { return englishWordsMapper.count(query); } }