package com.ruoyi.system.service.impl; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.system.domain.ConferenceRoomOrder; import com.ruoyi.system.domain.SignIn; import com.ruoyi.system.mapper.ConferenceRoomOrderMapper; import com.ruoyi.system.mapper.SignInMapper; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.service.ISignInService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * 会议室签到Service业务层处理 * * @author boman * @date 2024-11-04 */ @Service public class SignInServiceImpl implements ISignInService { @Autowired private SignInMapper signInMapper; @Autowired private SysUserMapper sysUserMapper; @Autowired private ConferenceRoomOrderMapper conferenceRoomOrderMapper; /** * 查询会议室签到 * * @param signInId 会议室签到主键 * @return 会议室签到 */ @Override public SignIn selectSignInBySignInId(Long signInId) { return signInMapper.selectSignInBySignInId(signInId); } /** * 查询会议室签到列表 * * @param signIn 会议室签到 * @return 会议室签到 */ @Override public List selectSignInList(SignIn signIn) { return signInMapper.selectSignInList(signIn); } /** * 新增会议室签到 * * @param signIn 会议室签到 * @return 结果 */ @Override public int insertSignIn(SignIn signIn) { int row = 0; Long userId = signIn.getUserId(); SysUser sysUser = sysUserMapper.selectUserById(userId); if (sysUser != null) { String avatar = sysUser.getAvatar(); if (StringUtils.isNotBlank(avatar)) { signIn.setAvatar(avatar); } String nickName = sysUser.getNickName(); if (StringUtils.isNotBlank(nickName)) { signIn.setNickName(nickName); } } signIn.setSignTime(DateUtils.getNowDate()); //先去查询用户是否已经签到 SignIn sign = new SignIn(); Long conferenceRoomOrderId = signIn.getConferenceRoomOrderId(); ConferenceRoomOrder conferenceRoomOrder = conferenceRoomOrderMapper.selectConferenceRoomOrderByConferenceRoomOrderId(conferenceRoomOrderId); if (conferenceRoomOrder != null){ sign.setConferenceRoomName(conferenceRoomOrder.getConferenceRoomName()); sign.setConferenceRoomOrderName(conferenceRoomOrder.getConferenceName()); sign.setConferenceRoomOrderId(conferenceRoomOrderId); sign.setUserId(userId); List signIns = signInMapper.selectSignInList(sign); if (signIns != null && signIns.size() > 0) { Long signInId = signIns.get(0).getSignInId(); signIn.setSignInId(signInId); row = signInMapper.updateSignIn(signIn); } else { row = signInMapper.insertSignIn(signIn); } } return row; } /** * 修改会议室签到 * * @param signIn 会议室签到 * @return 结果 */ @Override public int updateSignIn(SignIn signIn) { signIn.setUpdateTime(DateUtils.getNowDate()); return signInMapper.updateSignIn(signIn); } /** * 批量删除会议室签到 * * @param signInIds 需要删除的会议室签到主键 * @return 结果 */ @Override public int deleteSignInBySignInIds(Long[] signInIds) { return signInMapper.deleteSignInBySignInIds(signInIds); } /** * 删除会议室签到信息 * * @param signInId 会议室签到主键 * @return 结果 */ @Override public int deleteSignInBySignInId(Long signInId) { return signInMapper.deleteSignInBySignInId(signInId); } }