package com.zt.modules.sys.service;
|
|
import cn.hutool.core.convert.Convert;
|
import com.zt.common.service.BaseService;
|
import com.zt.core.context.UserContext;
|
import com.zt.modules.sys.dao.SysMapDao;
|
import com.zt.modules.sys.dto.MapDto;
|
import com.zt.modules.sys.model.SysMap;
|
import org.apache.commons.lang3.StringUtils;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Date;
|
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 SysMapService extends BaseService<SysMapDao, SysMap> {
|
|
/**
|
* 根据用户ID,获取岗位ID列表
|
*/
|
|
public List<MapDto> getMapsDto(Long mainId, String type) {
|
return baseDao.getMapsDto(mainId, type);
|
}
|
|
public List<SysMap> getMaps(Long mainId, String type) {
|
return baseDao.getList(mainId, type);
|
}
|
|
public List<Long> getIdList(Long mainId, String type) {
|
List<SysMap> maps = this.getMaps(mainId, type);
|
return maps.stream().map(map -> map.getSubId()).collect(Collectors.toList());
|
}
|
|
public String getIds(Long mainId, String type) {
|
List<SysMap> maps = this.getMaps(mainId, type);
|
String result = maps.stream().map(map -> map.getSubId().toString()).collect(Collectors.joining(","));
|
return result;
|
}
|
|
public void saveOrUpdate(String type, Long mainId, String subIds) {
|
baseDao.deleteByMainId(mainId, type);
|
if (!StringUtils.isBlank(subIds)) {
|
String[] subIdList = subIds.split(",");
|
for (String subId : subIdList) {
|
SysMap sysMap = new SysMap();
|
sysMap.setType(type);
|
sysMap.setMainId(mainId);
|
sysMap.setSubId(Convert.toLong(subId));
|
sysMap.setIsDelete(0);
|
sysMap.setUpdateDate(new Date());
|
sysMap.setCreateDate(new Date());
|
|
sysMap.setUpdater(0L);
|
sysMap.setCreator(0L);
|
baseDao.insert(sysMap);
|
}
|
}
|
}
|
|
public void saveOrUpdate(String type, Long mainId, List<Long> subIdList) {
|
baseDao.deleteByMainId(mainId, type);
|
for (Long subId : subIdList) {
|
SysMap sysMap = new SysMap();
|
sysMap.setType(type);
|
sysMap.setMainId(mainId);
|
sysMap.setSubId(subId);
|
sysMap.setIsDelete(0);
|
sysMap.setUpdateDate(new Date());
|
sysMap.setCreateDate(new Date());
|
|
sysMap.setUpdater(0L);
|
sysMap.setCreator(0L);
|
baseDao.insert(sysMap);
|
}
|
}
|
|
public void insertData(String type, Long mainId, String subIds) {
|
String[] splitIds = subIds.split(",");
|
for (String id : splitIds) {
|
Integer num = baseDao.checkItemNum(type, mainId, id);
|
if (num>0)
|
continue;
|
SysMap sysMap = new SysMap();
|
sysMap.setType(type);
|
sysMap.setMainId(mainId);
|
sysMap.setSubId(Long.parseLong(id));
|
sysMap.setIsDelete(0);
|
sysMap.setUpdateDate(new Date());
|
sysMap.setCreateDate(new Date());
|
|
Long userId = UserContext.getUser().getId();
|
sysMap.setUpdater(userId);
|
sysMap.setCreator(userId);
|
baseDao.insert(sysMap);
|
}
|
}
|
|
/**
|
* 根据岗位id,删除岗位用户关系
|
*
|
* @param postId
|
* 岗位id
|
*/
|
// @Transactional(rollbackFor = Exception.class)
|
// public void deleteByPostId(Long postId) {
|
// baseDao.delete(new QueryWrapper<SysPostUser>().lambda().eq(SysPostUser::getPostId, postId));
|
// }
|
}
|