package com.cloudroam.manager.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.cloudroam.dto.sysDict.CreateOrUpdateSysDictDTO;
|
import com.cloudroam.common.enumeration.DeletedEnum;
|
import com.cloudroam.manager.SysDictManager;
|
import com.cloudroam.mapper.SysDictItemMapper;
|
import com.cloudroam.mapper.SysDictMapper;
|
import com.cloudroam.model.SysDictDO;
|
import com.cloudroam.model.SysDictItemDO;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.Date;
|
|
@Service
|
public class SysDictManagerImpl implements SysDictManager {
|
|
|
@Autowired
|
private SysDictMapper sysDictMapper;
|
|
@Autowired
|
private SysDictItemMapper sysDictItemMapper;
|
|
@Override
|
@Transactional
|
public boolean deleteSysDictById(String id) {
|
|
|
// 删除字典
|
SysDictDO sysDictDO=new SysDictDO();
|
sysDictDO.setId(id);
|
sysDictDO.setIsDeleted(DeletedEnum.DELETED_YES.getCode());
|
sysDictDO.setDeleteTime(new Date());
|
|
sysDictMapper.updateById(sysDictDO);
|
|
// 删除字典项
|
SysDictItemDO sysDictItemDO=new SysDictItemDO();
|
sysDictItemDO.setDictId(id);
|
sysDictItemDO.setIsDeleted(DeletedEnum.DELETED_YES.getCode());
|
sysDictItemDO.setDeleteTime(new Date());
|
|
QueryWrapper<SysDictItemDO> queryWrapper=new QueryWrapper<SysDictItemDO>().eq("dict_id",id);
|
sysDictItemMapper.update(sysDictItemDO,queryWrapper);
|
|
/*
|
QueryWrapper<SysDictDO> dictQueryWrapper=new QueryWrapper<SysDictDO>().eq("id",id);
|
|
sysDictMapper.delete(dictQueryWrapper);
|
|
QueryWrapper<SysDictItemDO> queryWrapper=new QueryWrapper<SysDictItemDO>().eq("dict_id",id);
|
sysDictItemMapper.delete(queryWrapper);*/
|
return true;
|
}
|
|
@Override
|
@Transactional
|
public boolean updateSysDict(SysDictDO sysDictDO, CreateOrUpdateSysDictDTO validator) {
|
|
// 更新字典
|
sysDictDO.setName(validator.getName());
|
sysDictDO.setRemark(validator.getRemark());
|
sysDictDO.setUpdateTime(new Date());
|
sysDictMapper.updateById(sysDictDO);
|
|
// 更新字典项
|
QueryWrapper<SysDictItemDO> wrapper = new QueryWrapper<>();
|
wrapper.eq("is_deleted",DeletedEnum.DELETED_NO.getCode());
|
wrapper.eq("dict_id",sysDictDO.getId());
|
|
SysDictItemDO sysDictItemDO=new SysDictItemDO();
|
sysDictItemDO.setDictType(validator.getName());
|
sysDictItemMapper.update(sysDictItemDO,wrapper);
|
|
|
return true;
|
}
|
}
|