| package com.zt.modules.sys.service; | 
|   | 
| import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | 
| import com.zt.common.service.BaseService; | 
| import com.zt.modules.sys.dao.SysPostUserDao; | 
| import com.zt.modules.sys.dto.PostDto; | 
| import com.zt.modules.sys.model.SysPostUser; | 
| import org.springframework.stereotype.Service; | 
| import org.springframework.transaction.annotation.Transactional; | 
|   | 
| import java.util.List; | 
| import java.util.stream.Collectors; | 
|   | 
| /** | 
|  * SYS_POST_USER | 
|  * | 
|  * @author zt generator | 
|  * @since 1.0.0 2020-06-11 | 
|  */ | 
| @Service | 
| public class SysPostUserService extends BaseService<SysPostUserDao, SysPostUser> { | 
|   | 
|     /** | 
|      * 根据用户ID,获取岗位ID列表 | 
|      */ | 
|     public List<PostDto> getUserPosts(Long userId) { | 
|         return baseDao.getUserPosts(userId); | 
|     } | 
|   | 
|     @Transactional(rollbackFor = Exception.class) | 
|     public void saveOrUpdate(Long userId, List<Long> postIdList) { | 
|         List<SysPostUser> list = postIdList.stream().map(postId -> new SysPostUser(postId, userId)) | 
|                 .collect(Collectors.toList()); | 
|         this.saveRelatedDatas("user_id", userId, "post_id", list); | 
|     } | 
|   | 
|     /** | 
|      * 根据岗位id,删除岗位用户关系 | 
|      * | 
|      * @param postId | 
|      *            岗位id | 
|      */ | 
|     @Transactional(rollbackFor = Exception.class) | 
|     public void deleteByPostId(Long postId) { | 
|         baseDao.delete(new QueryWrapper<SysPostUser>().lambda().eq(SysPostUser::getPostId, postId)); | 
|     } | 
| } |