龚焕茏
2024-04-15 b86b34a3ba3a844207d3db527db8f9e9fa22033b
ycl-server/src/main/java/com/ycl/platform/service/impl/YwUnitServiceImpl.java
@@ -27,6 +27,7 @@
import com.ycl.utils.SecurityUtils;
import org.springframework.stereotype.Service;
import org.springframework.beans.BeanUtils;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.Objects;
@@ -56,6 +57,7 @@
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result add(YwUnitForm form) {
        YwUnit entity = YwUnitForm.getEntityByForm(form, null);
        if(baseMapper.insert(entity) > 0) {
@@ -86,6 +88,7 @@
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result update(YwUnitForm form) {
        YwUnit entity = baseMapper.selectById(form.getId());
@@ -111,15 +114,16 @@
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result remove(List<String> ids) {
        ids.forEach(id -> {
            // 删除运维人员账号
            SysUser sysUser = sysUserMapper.selectUserByUserName(baseMapper.selectById(id).getUnitAdminAccount());
            if (Objects.nonNull(sysUser)) {
                sysUserRoleMapper.deleteUserRoleByUserId(sysUser.getUserId());
                sysUserMapper.deleteUserById(sysUser.getUserId());
            }
        });
        List<Long> userIds = sysUserMapper.selectUserIdByNames(
                baseMapper.selectList(
                        new LambdaQueryWrapper<YwUnit>().in(YwUnit::getId, ids))
                        .stream().map(YwUnit::getUnitAdminAccount).toList());
        if (!userIds.isEmpty()) {
            sysUserMapper.deleteUserByIds(userIds.toArray(new Long[0]));
            sysUserRoleMapper.deleteUserRoleByUserIds(userIds);
        }
        if(baseMapper.deleteBatchIds(ids) > 0) {
            return Result.ok("删除成功");
        }