package com.mindskip.xzs.service.impl; import com.alibaba.fastjson.JSON; import com.mindskip.xzs.context.WebContext; import com.mindskip.xzs.domain.PracticeQuestionCondition; import com.mindskip.xzs.repository.PracticeQuestionConditionMapper; import com.mindskip.xzs.service.PracticeQuestionConditionService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.Date; import java.util.Objects; /** * @author:xp * @date:2024/5/14 17:26 */ @Service @RequiredArgsConstructor public class PracticeQuestionConditionServiceImpl implements PracticeQuestionConditionService { private final PracticeQuestionConditionMapper mapper; private final WebContext webContext; @Override public void save(PracticeQuestionCondition entity) { PracticeQuestionCondition old = mapper.selectByPracticeId(entity.getPracticeId()); if (Objects.isNull(old)) { old = new PracticeQuestionCondition(); old.setUserId(webContext.getCurrentUser().getId()); old.setPracticeId(entity.getPracticeId()); old.setContent(JSON.toJSONString(entity.getQuestionConditions())); old.setLatestTime(new Date()); mapper.save(old); } else { // 更新内容 mapper.updateContentById(JSON.toJSONString(entity.getQuestionConditions()), old.getId(), new Date()); } } @Override public PracticeQuestionCondition selectByPracticeId(Integer practiceId) { PracticeQuestionCondition old = mapper.selectByPracticeId(practiceId); return old; } }