package com.cloudroam.service.impl; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.cloudroam.bo.ContactInfoBO; import com.cloudroam.common.LocalUser; import com.cloudroam.dto.contact.CreateOrUpdateContactDTO; import com.cloudroam.dto.contact.QueryContactDTO; import com.cloudroam.common.enumeration.DeletedEnum; import com.cloudroam.mapper.ContactInfoMapperCustom; import com.cloudroam.model.*; import com.cloudroam.mapper.ContactInfoMapper; import com.cloudroam.service.ContactInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.List; /** *

* 服务实现类 *

* * @author generator@TaoJie * @since 2023-08-08 */ @Service public class ContactInfoServiceImpl extends ServiceImpl implements ContactInfoService { @Autowired private ContactInfoMapperCustom contactInfoMapperCustom; @Override @Transactional public List getContactList(QueryContactDTO dto) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("is_deleted", DeletedEnum.DELETED_NO.getCode()); if(StrUtil.isNotBlank(dto.getCompanyId())){ wrapper.eq("company_id",dto.getCompanyId()); } if(StrUtil.isNotBlank(dto.getName())){ wrapper.like("name",dto.getName()); } if(StrUtil.isNotBlank(dto.getPhone())){ wrapper.like("phone",dto.getPhone()); } if(StrUtil.isNotBlank(dto.getTitle())){ wrapper.like("title",dto.getTitle()); } return this.baseMapper.selectList(wrapper); } @Override public IPage getContactInfoPage(QueryContactDTO dto) { Page page=new Page(dto.getPage(),dto.getCount()); return contactInfoMapperCustom.getContactInfoPage(page,dto.getKeyword()); } @Override @Transactional public boolean removeByIdLogic(String id) { UserDO user = LocalUser.getLocalUser(); ContactInfoDO contactInfoDO=new ContactInfoDO(); contactInfoDO.setId(id); contactInfoDO.setIsDeleted(DeletedEnum.DELETED_YES.getCode()); contactInfoDO.setDeleteTime(new Date()); contactInfoDO.setDeleteUserId(String.valueOf(user.getId())); contactInfoDO.setDeleteUserName(user.getNickname()); return baseMapper.updateById(contactInfoDO)>0; } @Override @Transactional public boolean updateContactInfo(CreateOrUpdateContactDTO validator) { UserDO user = LocalUser.getLocalUser(); ContactInfoDO contactInfoDO=new ContactInfoDO(); BeanUtils.copyProperties(validator,contactInfoDO); contactInfoDO.setCreateTime(new Date()); contactInfoDO.setCreateUserId(String.valueOf(user.getId())); contactInfoDO.setCreateUserName(user.getNickname()); contactInfoDO.setUpdateTime(new Date()); contactInfoDO.setUpdateUserId(String.valueOf(user.getId())); contactInfoDO.setUpdateUserName(user.getNickname()); contactInfoDO.setIsDeleted(DeletedEnum.DELETED_NO.getCode()); return baseMapper.updateById(contactInfoDO)>0; } @Override @Transactional public boolean CreateContactInfo(CreateOrUpdateContactDTO validator) { UserDO user = LocalUser.getLocalUser(); ContactInfoDO contactInfoDO=new ContactInfoDO(); BeanUtils.copyProperties(validator,contactInfoDO); contactInfoDO.setId(IdUtil.simpleUUID()); contactInfoDO.setCreateTime(new Date()); contactInfoDO.setCreateUserId(String.valueOf(user.getId())); contactInfoDO.setCreateUserName(user.getNickname()); contactInfoDO.setUpdateTime(new Date()); contactInfoDO.setUpdateUserId(String.valueOf(user.getId())); contactInfoDO.setUpdateUserName(user.getNickname()); contactInfoDO.setIsDeleted(DeletedEnum.DELETED_NO.getCode()); return baseMapper.insert(contactInfoDO)>0; } }