xuhy
2025-02-06 7f97a5eabc3ef039719e05d0b7ac7594d9ba9c39
系统设置(除开人员管理)
25个文件已修改
21个文件已添加
1221 ■■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeptController.java 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeptToUserController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFaultAreaDicController.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFaultDescribeDicController.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSysConfigController.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysOperlogController.java 79 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TDeptController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TDeptToUserController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysRole.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/dto/SysRoleDTO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/dto/TDeptUpAndDownDTO.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOperLogMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TDeptMapper.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TDeptToUserMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TFaultAreaDicMapper.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TFaultDescribeDicMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/model/TDept.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/model/TDeptToUser.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/model/TFaultAreaDic.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/model/TFaultDescribeDic.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/SysOperLogQuery.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TDeptQuery.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TFaultAreaDicQuery.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TFaultDescribeDicQuery.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysOperLogService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TDeptService.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TDeptToUserService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TFaultAreaDicService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TFaultDescribeDicService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOperLogServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDeptServiceImpl.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDeptToUserServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFaultAreaDicServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFaultDescribeDicServiceImpl.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/vo/DeptVO.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/vo/TFaultDescribeDicVO.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TDeptMapper.xml 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TDeptToUserMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TFaultAreaDicMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TFaultDescribeDicMapper.xml 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeptController.java
New file
@@ -0,0 +1,149 @@
package com.ruoyi.web.controller.api;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.dto.TDeptUpAndDownDTO;
import com.ruoyi.system.model.TDept;
import com.ruoyi.system.model.TDeptToUser;
import com.ruoyi.system.query.TDeptQuery;
import com.ruoyi.system.service.TDeptService;
import com.ruoyi.system.service.TDeptToUserService;
import com.ruoyi.system.vo.DeptVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.List;
/**
 * <p>
 * 部门管理 前端控制器
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@Api(tags = "部门管理")
@RestController
@RequestMapping("/t-dept")
public class TDeptController {
    private final TDeptService deptService;
    private final TDeptToUserService deptToUserService;
    private final TokenService tokenService;
    @Autowired
    public TDeptController(TDeptService deptService, TDeptToUserService deptToUserService, TokenService tokenService) {
        this.deptService = deptService;
        this.deptToUserService = deptToUserService;
        this.tokenService = tokenService;
    }
    /**
     * 获取部门管理管理列表
     */
    @PreAuthorize("@ss.hasPermi('system:dept:list')")
    @ApiOperation(value = "获取部门管理分页列表")
    @PostMapping(value = "/pageList")
    public R<PageInfo<DeptVO>> pageList(@RequestBody TDeptQuery query) {
        return R.ok(deptService.pageList(query));
    }
    /**
     * 添加部门管理管理
     */
    @PreAuthorize("@ss.hasPermi('system:dept:add')")
    @Log(title = "部门管理信息-新增部门管理", businessType = BusinessType.INSERT)
    @ApiOperation(value = "添加部门管理")
    @PostMapping(value = "/add")
    public R<Boolean> add(@Validated @RequestBody TDept dto) {
        // 判断部门id是否存在
        boolean flag = deptService.isExit(dto);
        if (flag){
            return R.fail("部门ID已存在");
        }
        return R.ok(deptService.save(dto));
    }
    /**
     * 修改部门管理
     */
    @PreAuthorize("@ss.hasPermi('system:dept:update')")
    @Log(title = "部门管理信息-修改部门管理", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "修改部门管理")
    @PostMapping(value = "/update")
    public R<Boolean> update(@Validated @RequestBody TDept dto) {
        // 判断部门id是否存在
        boolean flag = deptService.isExit(dto);
        if (flag){
            return R.fail("部门ID已存在");
        }
        return R.ok(deptService.updateById(dto));
    }
    /**
     * 查看部门管理详情
     */
    @PreAuthorize("@ss.hasPermi('system:dept:detail')")
    @ApiOperation(value = "查看部门管理详情")
    @GetMapping(value = "/getDetailById")
    public R<TDept> getDetailById(@RequestParam String id) {
        return R.ok(deptService.getById(id));
    }
    /**
     * 删除部门管理
     */
    @PreAuthorize("@ss.hasPermi('system:dept:delete')")
    @Log(title = "部门管理信息-删除部门管理", businessType = BusinessType.DELETE)
    @ApiOperation(value = "删除部门管理")
    @DeleteMapping(value = "/deleteById")
    public R<Boolean> deleteById(@RequestParam String id) {
        // 删除部门用户关联信息
        deptToUserService.remove(Wrappers.lambdaQuery(TDeptToUser.class)
                .eq(TDeptToUser::getDeptId, id));
        return R.ok(deptService.removeById(id));
    }
    /**
     * 批量删除部门管理
     */
    @PreAuthorize("@ss.hasPermi('system:dept:delete')")
    @Log(title = "部门管理信息-删除部门管理", businessType = BusinessType.DELETE)
    @ApiOperation(value = "批量删除部门管理")
    @DeleteMapping(value = "/deleteByIds")
    public R<Boolean> deleteByIds(@RequestBody List<String> ids) {
        // 删除部门用户关联信息
        deptToUserService.remove(Wrappers.lambdaQuery(TDeptToUser.class)
                .in(TDeptToUser::getDeptId, ids));
        return R.ok(deptService.removeByIds(ids));
    }
    /**
     * 轮播图上下架
     */
    @PreAuthorize("@ss.hasPermi('system:dept:upAndDown')")
    @ApiOperation(value = "部门管理上下架",notes = "true:上架,false:下架")
    @PostMapping(value = "/upAndDown")
    public R upAndDown(@RequestBody TDeptUpAndDownDTO dto) {
        SysUser user = tokenService.getLoginUser().getUser();
        TDept dept = deptService.getById(dto.getId());
        dept.setStatus(dto.getStatus());
        dept.setDisableRemark(dto.getDisableRemark());
        dept.setOperatingTime(LocalDateTime.now());
        dept.setOperatingPerson(user.getNickName()+"("+user.getUserName()+")");
        return R.ok(deptService.updateById(dept));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDeptToUserController.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 部门用户中间表 前端控制器
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@RestController
@RequestMapping("/t-dept-to-user")
public class TDeptToUserController {
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFaultAreaDicController.java
@@ -1,9 +1,21 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.model.TFaultAreaDic;
import com.ruoyi.system.query.TFaultAreaDicQuery;
import com.ruoyi.system.service.TFaultAreaDicService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * <p>
@@ -13,9 +25,87 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Api(tags = "故障区域")
@RestController
@RequestMapping("/t-fault-area-dic")
public class TFaultAreaDicController {
    private final TFaultAreaDicService faultAreaDicService;
    @Autowired
    public TFaultAreaDicController(TFaultAreaDicService faultAreaDicService) {
        this.faultAreaDicService = faultAreaDicService;
    }
    /**
     * 获取故障区域管理列表
     */
    @PreAuthorize("@ss.hasPermi('system:faultArea:list')")
    @ApiOperation(value = "获取故障区域分页列表")
    @PostMapping(value = "/pageList")
    public R<PageInfo<TFaultAreaDic>> pageList(@RequestBody TFaultAreaDicQuery query) {
        return R.ok(faultAreaDicService.pageList(query));
    }
    @PreAuthorize("@ss.hasPermi('system:faultArea:list')")
    @ApiOperation(value = "获取故障区域列表")
    @PostMapping(value = "/list")
    public R<List<TFaultAreaDic>> list() {
        return R.ok(faultAreaDicService.list());
    }
    /**
     * 添加故障区域管理
     */
    @PreAuthorize("@ss.hasPermi('system:faultArea:add')")
    @Log(title = "故障区域信息-新增故障区域", businessType = BusinessType.INSERT)
    @ApiOperation(value = "添加故障区域")
    @PostMapping(value = "/add")
    public R<Boolean> add(@Validated @RequestBody TFaultAreaDic dto) {
        return R.ok(faultAreaDicService.save(dto));
    }
    /**
     * 修改故障区域
     */
    @PreAuthorize("@ss.hasPermi('system:faultArea:update')")
    @Log(title = "故障区域信息-修改故障区域", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "修改故障区域")
    @PostMapping(value = "/update")
    public R<Boolean> update(@Validated @RequestBody TFaultAreaDic dto) {
        return R.ok(faultAreaDicService.updateById(dto));
    }
    /**
     * 查看故障区域详情
     */
    @PreAuthorize("@ss.hasPermi('system:faultArea:detail')")
    @ApiOperation(value = "查看故障区域详情")
    @GetMapping(value = "/getDetailById")
    public R<TFaultAreaDic> getDetailById(@RequestParam String id) {
        return R.ok(faultAreaDicService.getById(id));
    }
    /**
     * 删除故障区域
     */
    @PreAuthorize("@ss.hasPermi('system:faultArea:delete')")
    @Log(title = "故障区域信息-删除故障区域", businessType = BusinessType.DELETE)
    @ApiOperation(value = "删除故障区域")
    @DeleteMapping(value = "/deleteById")
    public R<Boolean> deleteById(@RequestParam String id) {
        return R.ok(faultAreaDicService.removeById(id));
    }
    /**
     * 批量删除故障区域
     */
    @PreAuthorize("@ss.hasPermi('system:faultArea:delete')")
    @Log(title = "故障区域信息-删除故障区域", businessType = BusinessType.DELETE)
    @ApiOperation(value = "批量删除故障区域")
    @DeleteMapping(value = "/deleteByIds")
    public R<Boolean> deleteByIds(@RequestBody List<String> ids) {
        return R.ok(faultAreaDicService.removeByIds(ids));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFaultDescribeDicController.java
@@ -1,9 +1,22 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.model.TFaultDescribeDic;
import com.ruoyi.system.query.TFaultDescribeDicQuery;
import com.ruoyi.system.service.TFaultDescribeDicService;
import com.ruoyi.system.vo.TFaultDescribeDicVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * <p>
@@ -13,9 +26,81 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Api(tags = "故障描述")
@RestController
@RequestMapping("/t-fault-describe-dic")
public class TFaultDescribeDicController {
    private final TFaultDescribeDicService faultDescribeDicService;
    @Autowired
    public TFaultDescribeDicController(TFaultDescribeDicService faultDescribeDicService) {
        this.faultDescribeDicService = faultDescribeDicService;
    }
    /**
     * 获取故障描述管理列表
     */
    @PreAuthorize("@ss.hasPermi('system:faultDescribe:list')")
    @ApiOperation(value = "获取故障描述分页列表")
    @PostMapping(value = "/pageList")
    public R<PageInfo<TFaultDescribeDicVO>> pageList(@RequestBody TFaultDescribeDicQuery query) {
        return R.ok(faultDescribeDicService.pageList(query));
    }
    /**
     * 添加故障描述管理
     */
    @PreAuthorize("@ss.hasPermi('system:faultDescribe:add')")
    @Log(title = "故障描述信息-新增故障描述", businessType = BusinessType.INSERT)
    @ApiOperation(value = "添加故障描述")
    @PostMapping(value = "/add")
    public R<Boolean> add(@Validated @RequestBody TFaultDescribeDic dto) {
        return R.ok(faultDescribeDicService.save(dto));
    }
    /**
     * 修改故障描述
     */
    @PreAuthorize("@ss.hasPermi('system:faultDescribe:update')")
    @Log(title = "故障描述信息-修改故障描述", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "修改故障描述")
    @PostMapping(value = "/update")
    public R<Boolean> update(@Validated @RequestBody TFaultDescribeDic dto) {
        return R.ok(faultDescribeDicService.updateById(dto));
    }
    /**
     * 查看故障描述详情
     */
    @PreAuthorize("@ss.hasPermi('system:faultDescribe:detail')")
    @ApiOperation(value = "查看故障描述详情")
    @GetMapping(value = "/getDetailById")
    public R<TFaultDescribeDic> getDetailById(@RequestParam String id) {
        return R.ok(faultDescribeDicService.getById(id));
    }
    /**
     * 删除故障描述
     */
    @PreAuthorize("@ss.hasPermi('system:faultDescribe:delete')")
    @Log(title = "故障描述信息-删除故障描述", businessType = BusinessType.DELETE)
    @ApiOperation(value = "删除故障描述")
    @DeleteMapping(value = "/deleteById")
    public R<Boolean> deleteById(@RequestParam String id) {
        return R.ok(faultDescribeDicService.removeById(id));
    }
    /**
     * 批量删除故障描述
     */
    @PreAuthorize("@ss.hasPermi('system:faultDescribe:delete')")
    @Log(title = "故障描述信息-删除故障描述", businessType = BusinessType.DELETE)
    @ApiOperation(value = "批量删除故障描述")
    @DeleteMapping(value = "/deleteByIds")
    public R<Boolean> deleteByIds(@RequestBody List<String> ids) {
        return R.ok(faultDescribeDicService.removeByIds(ids));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSysConfigController.java
@@ -1,9 +1,25 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.dto.TTenantDTO;
import com.ruoyi.system.model.TSysConfig;
import com.ruoyi.system.model.TTenant;
import com.ruoyi.system.query.TTenantQuery;
import com.ruoyi.system.service.TSysConfigService;
import com.ruoyi.system.service.TTenantService;
import com.ruoyi.system.vo.TenantVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
@@ -13,9 +29,38 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Api(tags = "系统公共参数设置")
@RestController
@RequestMapping("/t-sys-config")
public class TSysConfigController {
    private final TSysConfigService sysConfigService;
    @Autowired
    public TSysConfigController(TSysConfigService sysConfigService) {
        this.sysConfigService = sysConfigService;
    }
    /**
     * 系统公共参数设置详情
     */
    @PreAuthorize("@ss.hasPermi('system:config:detail')")
    @ApiOperation(value = "查看系统公共参数设置详情")
    @GetMapping(value = "/getDetailById")
    public R<TSysConfig> getDetailById() {
        return R.ok(sysConfigService.getById(1));
    }
    /**
     * 修改系统公共参数设置
     */
    @PreAuthorize("@ss.hasPermi('system:config:update')")
    @Log(title = "租户信息-修改系统公共参数设置", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "修改系统公共参数设置")
    @PostMapping(value = "/update")
    public R<Boolean> update(@RequestBody TSysConfig sysConfig) {
        return R.ok(sysConfigService.updateById(sysConfig));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysOperlogController.java
@@ -1,17 +1,18 @@
package com.ruoyi.web.controller.monitor;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.query.SysOperLogQuery;
import com.ruoyi.system.service.ISysOperLogService;
import com.ruoyi.system.vo.SysOperLogVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
@@ -30,67 +31,15 @@
    @Autowired
    private ISysOperLogService operLogService;
//    @ApiOperation(value = "操作日志分页列表")
//    @PostMapping("/list")
//    public AjaxResult list(@RequestBody SysOperLogQuery query)
//    {
//        startPage(query.getPageNum(), query.getPageSize());
//        List<SysOperLogVO> list = operLogService.selectOperLogPageList(query);
//        operLogService.getLogDetail(list);
//        return AjaxResult.success(getDataTable(list));
//    }
    @ApiOperation(value = "操作日志分页列表")
    @PostMapping("/list")
    public AjaxResult list(@RequestBody SysOperLogQuery query)
    {
        PageInfo<SysOperLogVO> list = operLogService.selectOperLogPageList(query);
        return AjaxResult.success(list);
    }
    /**
     * 查询操作日志列表导出
     */
//    @ApiOperation(value = "查询操作日志列表导出")
//    @Log(title = "操作日志-查询操作日志列表导出", businessType = BusinessType.EXPORT)
//    @PostMapping("/exportOperLog")
//    public void exportOperLog(@RequestBody SysOperLogQuery query)
//    {
//        List<SysOperLogVO> list = operLogService.selectOperLogPageList(query);
//        List<TOperLogExport> operLogExports = new ArrayList<>();
//        for (SysOperLogVO sysOperLogVO : list) {
//            TOperLogExport operLogExport = new TOperLogExport();
//            BeanUtils.copyProperties(sysOperLogVO,operLogExport);
//            operLogService.getLogDetail(list);
//            operLogExports.add(operLogExport);
//        }
//        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOperLogExport.class, operLogExports);
//        HttpServletResponse response = WebUtils.response();
//        response.setContentType("application/vnd.ms-excel");
//        response.setCharacterEncoding("utf-8");
//        ServletOutputStream outputStream = null;
//        try {
//            String fileName = URLEncoder.encode("操作日志信息.xls", "utf-8");
//            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
//            response.setContentType("application/vnd.ms-excel;charset=UTF-8");
//            response.setHeader("Pragma", "no-cache");
//            response.setHeader("Cache-Control", "no-cache");
//            outputStream = response.getOutputStream();
//            workbook.write(outputStream);
//        } catch (IOException e) {
//            e.printStackTrace();
//            log.error("操作日志导出信息导出失败!");
//        } finally {
//            try {
//                outputStream.close();
//            } catch (IOException e) {
//                e.printStackTrace();
//            }
//        }
//    }
//    @Log(title = "操作日志", businessType = BusinessType.EXPORT)
//    @PostMapping("/export")
//    public void export(HttpServletResponse response, SysOperLog operLog)
//    {
//        List<SysOperLog> list = operLogService.selectOperLogList(operLog);
//        ExcelUtil<SysOperLog> util = new ExcelUtil<SysOperLog>(SysOperLog.class);
//        util.exportExcel(response, list, "操作日志");
//    }
    @Log(title = "操作日志", businessType = BusinessType.DELETE)
    @Log(title = "删除操作日志", businessType = BusinessType.DELETE)
    @DeleteMapping("/deleteById/{operIds}")
    public AjaxResult remove(@PathVariable String operIds)
    {
@@ -102,7 +51,7 @@
        return AjaxResult.success(operLogService.deleteOperLogByIds(id));
    }
    @Log(title = "操作日志", businessType = BusinessType.CLEAN)
    @Log(title = "清除操作日志", businessType = BusinessType.CLEAN)
    @DeleteMapping("/clean")
    public AjaxResult clean()
    {
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java
@@ -15,6 +15,7 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.ruoyi.common.annotation.Log;
@@ -61,15 +62,16 @@
    @Autowired
    private ISysMenuService menuService;
    // @PreAuthorize("@ss.hasPermi('system:role:list')")
    @PreAuthorize("@ss.hasPermi('system:role:list')")
    @ApiOperation(value = "角色列表")
    @PostMapping("/list")
    public AjaxResult list(@RequestBody SysRoleQuery query)
    {
        PageInfo<SysRole> list = roleService.selectList(query);
        PageInfo<SysRole> list = roleService.selectPageList(query);
        return AjaxResult.success(list);
    }
    @PreAuthorize("@ss.hasPermi('system:role:list')")
    @ApiOperation(value = "角色列表不分页")
    @PostMapping("/listNotPage")
    public AjaxResult list()
@@ -77,7 +79,7 @@
        List<SysRole> list = roleService.selectRoleList(new SysRole());
        return AjaxResult.success(list);
    }
    @PreAuthorize("@ss.hasPermi('system:role:count')")
    @ApiOperation(value = "角色数量统计")
    @PostMapping("/roleCount")
    public AjaxResult roleCount()
@@ -106,7 +108,7 @@
    /**
     * 根据角色编号获取详细信息
     */
    // @PreAuthorize("@ss.hasPermi('system:role:query')")
     @PreAuthorize("@ss.hasPermi('system:role:query')")
    @GetMapping(value = "/{roleId}")
    public AjaxResult getInfo(@PathVariable Long roleId)
    {
@@ -114,7 +116,7 @@
        return AjaxResult.success(roleService.selectRoleById(roleId));
    }
    @PreAuthorize("@ss.hasPermi('system:role:detail')")
    @ApiOperation("角色详情")
    @GetMapping("/roleInfo")
    public AjaxResult roleInfo(@RequestParam Long roleId)
@@ -150,7 +152,7 @@
    /**
     * 新增角色
     */
    // @PreAuthorize("@ss.hasPermi('system:role:add')")
     @PreAuthorize("@ss.hasPermi('system:role:add')")
    @ApiOperation(value = "新增角色")
    @Log(title = "角色信息-新增角色", businessType = BusinessType.INSERT)
    @PostMapping("/add")
@@ -168,7 +170,7 @@
    /**
     * 修改保存角色
     */
    // @PreAuthorize("@ss.hasPermi('system:role:edit')")
     @PreAuthorize("@ss.hasPermi('system:role:edit')")
    @ApiOperation(value = "编辑角色")
    @Log(title = "角色信息-编辑角色", businessType = BusinessType.UPDATE)
    @PutMapping
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TDeptController.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 部门管理 前端控制器
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@RestController
@RequestMapping("/t-dept")
public class TDeptController {
}
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TDeptToUserController.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 部门用户中间表 前端控制器
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@RestController
@RequestMapping("/t-dept-to-user")
public class TDeptToUserController {
}
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysRole.java
@@ -1,5 +1,6 @@
package com.ruoyi.common.core.domain.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.ruoyi.common.core.domain.BaseModel;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
@@ -74,6 +75,11 @@
     * 岗位类型 1=经理 2=负责人 3=专员
     */
    private Integer postType;
    /**
     * 角色人数
     */
    @TableField(exist = false)
    private Integer userCount;
    public Integer getPostType() {
        return postType;
ruoyi-system/src/main/java/com/ruoyi/system/dto/SysRoleDTO.java
@@ -19,6 +19,8 @@
    @ApiModelProperty(value = "类型")
    private Integer postType;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "权限id集合")
    private List<Long> menuIds;
ruoyi-system/src/main/java/com/ruoyi/system/dto/TDeptUpAndDownDTO.java
New file
@@ -0,0 +1,22 @@
package com.ruoyi.system.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@Data
@ApiModel(value = "部门启用禁用dto")
public class TDeptUpAndDownDTO implements Serializable {
    @ApiModelProperty(value = "部门id")
    private String id;
    @ApiModelProperty(value = "部门状态 1=启用 0=禁用")
    private Integer status;
    @ApiModelProperty(value = "备注")
    private String disableRemark;
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOperLogMapper.java
@@ -1,7 +1,11 @@
package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.domain.SysOperLog;
import com.ruoyi.system.query.SysOperLogQuery;
import com.ruoyi.system.vo.SysOperLogVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -50,6 +54,15 @@
    public void cleanOperLog();
    /**
     * 分页查询操作日志
     * @param query
     * @param pageInfo
     * @return
     */
    List<SysOperLogVO> selectOperLogPageList(@Param("query") SysOperLogQuery query, @Param("pageInfo")PageInfo<SysOperLogVO> pageInfo);
    /**
     * 操作日志分页列表
     * @param query
     * @return
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java
@@ -125,6 +125,6 @@
    String selectByUserId(@Param("userId") Long user_id);
    List<SysRole> selectList(@Param("query")SysRoleQuery query,@Param("pageInfo") PageInfo<SysRole> pageInfo);
    List<SysRole> selectPageList(@Param("query")SysRoleQuery query,@Param("pageInfo") PageInfo<SysRole> pageInfo);
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TDeptMapper.java
New file
@@ -0,0 +1,30 @@
package com.ruoyi.system.mapper;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TDept;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.system.query.TDeptQuery;
import com.ruoyi.system.vo.DeptVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * <p>
 * 部门管理 Mapper 接口
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
public interface TDeptMapper extends BaseMapper<TDept> {
    /**
     * 分页查询部门管理
     * @param query
     * @param pageInfo
     * @return
     */
    List<DeptVO> pageList(@Param("query") TDeptQuery query, @Param("pageInfo")PageInfo<DeptVO> pageInfo);
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TDeptToUserMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.system.mapper;
import com.ruoyi.system.model.TDeptToUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 部门用户中间表 Mapper 接口
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
public interface TDeptToUserMapper extends BaseMapper<TDeptToUser> {
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TFaultAreaDicMapper.java
@@ -1,7 +1,13 @@
package com.ruoyi.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TFaultAreaDic;
import com.ruoyi.system.query.TFaultAreaDicQuery;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * <p>
@@ -11,6 +17,15 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Mapper
public interface TFaultAreaDicMapper extends BaseMapper<TFaultAreaDic> {
    /**
     * 分页查询
     * @param query
     * @param pageInfo
     * @return
     */
    List<TFaultAreaDic> pageList(@Param("query")TFaultAreaDicQuery query, @Param("pageInfo")PageInfo<TFaultAreaDic> pageInfo);
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TFaultDescribeDicMapper.java
@@ -1,7 +1,13 @@
package com.ruoyi.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TFaultDescribeDic;
import com.ruoyi.system.query.TFaultDescribeDicQuery;
import com.ruoyi.system.vo.TFaultDescribeDicVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * <p>
@@ -13,4 +19,11 @@
 */
public interface TFaultDescribeDicMapper extends BaseMapper<TFaultDescribeDic> {
    /**
     * 获取故障描述分页列表
     * @param query
     * @param pageInfo
     * @return
     */
    List<TFaultDescribeDicVO> pageList(@Param("query") TFaultDescribeDicQuery query, @Param("pageInfo") PageInfo<TFaultDescribeDicVO> pageInfo);
}
ruoyi-system/src/main/java/com/ruoyi/system/model/TDept.java
New file
@@ -0,0 +1,69 @@
package com.ruoyi.system.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
/**
 * <p>
 * 部门管理
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("t_dept")
@ApiModel(value="TDept对象", description="部门管理")
public class TDept extends BaseModel {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;
    @NotBlank(message = "部门ID不能为空")
    @ApiModelProperty(value = "部门id")
    @TableField("dept_id")
    private String deptId;
    @NotBlank(message = "部门名称不能为空")
    @ApiModelProperty(value = "部门名称")
    @TableField("dept_name")
    private String deptName;
    @ApiModelProperty(value = "部门状态 1=启用 0=禁用")
    @TableField("status")
    private Integer status;
    @ApiModelProperty(value = "备注")
    @TableField("remark")
    private String remark;
    @ApiModelProperty(value = "禁用备注")
    @TableField("disable_remark")
    private String disableRemark;
    @ApiModelProperty(value = "操作时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField("operating_time")
    private LocalDateTime operatingTime;
    @ApiModelProperty(value = "操作人  登录名(登录账号)")
    @TableField("operating_person")
    private String operatingPerson;
}
ruoyi-system/src/main/java/com/ruoyi/system/model/TDeptToUser.java
New file
@@ -0,0 +1,41 @@
package com.ruoyi.system.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * <p>
 * 部门用户中间表
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("t_dept_to_user")
@ApiModel(value="TDeptToUser对象", description="部门用户中间表")
public class TDeptToUser implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;
    @ApiModelProperty(value = "部门主键id")
    @TableField("dept_id")
    private String deptId;
    @ApiModelProperty(value = "用户id")
    @TableField("user_id")
    private Long userId;
}
ruoyi-system/src/main/java/com/ruoyi/system/model/TFaultAreaDic.java
@@ -5,10 +5,15 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import com.ruoyi.common.core.domain.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * <p>
@@ -22,16 +27,20 @@
@EqualsAndHashCode(callSuper = false)
@TableName("t_fault_area_dic")
@ApiModel(value="TFaultAreaDic对象", description="故障区域")
public class TFaultAreaDic implements Serializable {
public class TFaultAreaDic extends BaseModel {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;
    @NotBlank(message = "故障区域名称不能为空")
    @ApiModelProperty(value = "故障区域名称")
    @TableField("fault_area_name")
    private String faultAreaName;
    @NotNull(message = "权重不能为空")
    @ApiModelProperty(value = "权重")
    @TableField("sort_by")
    private Integer sortBy;
}
ruoyi-system/src/main/java/com/ruoyi/system/model/TFaultDescribeDic.java
@@ -5,6 +5,8 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import com.ruoyi.common.core.domain.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -22,7 +24,7 @@
@EqualsAndHashCode(callSuper = false)
@TableName("t_fault_describe_dic")
@ApiModel(value="TFaultDescribeDic对象", description="故障描述")
public class TFaultDescribeDic implements Serializable {
public class TFaultDescribeDic extends BaseModel {
    private static final long serialVersionUID = 1L;
@@ -37,5 +39,8 @@
    @TableField("describe_name")
    private String describeName;
    @ApiModelProperty(value = "权重")
    @TableField("sort_by")
    private Integer sortBy;
}
ruoyi-system/src/main/java/com/ruoyi/system/query/SysOperLogQuery.java
New file
@@ -0,0 +1,13 @@
package com.ruoyi.system.query;
import com.ruoyi.common.core.domain.BasePage;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel(value = "操作日志查询query")
public class SysOperLogQuery extends BasePage {
}
ruoyi-system/src/main/java/com/ruoyi/system/query/TDeptQuery.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.system.query;
import com.ruoyi.common.core.domain.BasePage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "部门管理查询条件query")
public class TDeptQuery extends BasePage {
    @ApiModelProperty(value = "部门ID/名称")
    private String deptIdOrName;
}
ruoyi-system/src/main/java/com/ruoyi/system/query/TFaultAreaDicQuery.java
New file
@@ -0,0 +1,11 @@
package com.ruoyi.system.query;
import com.ruoyi.common.core.domain.BasePage;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel(value = "故障区域query")
public class TFaultAreaDicQuery extends BasePage {
}
ruoyi-system/src/main/java/com/ruoyi/system/query/TFaultDescribeDicQuery.java
New file
@@ -0,0 +1,10 @@
package com.ruoyi.system.query;
import com.ruoyi.common.core.domain.BasePage;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel(value = "故障描述query")
public class TFaultDescribeDicQuery extends BasePage {
}
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysOperLogService.java
@@ -1,7 +1,11 @@
package com.ruoyi.system.service;
import java.util.List;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.domain.SysOperLog;
import com.ruoyi.system.query.SysOperLogQuery;
import com.ruoyi.system.vo.SysOperLogVO;
/**
 * 操作日志 服务层
@@ -51,6 +55,13 @@
     * @param query
     * @return
     */
    PageInfo<SysOperLogVO> selectOperLogPageList(SysOperLogQuery query);
    /**
     * 操作日志分页列表
     * @param query
     * @return
     */
//    List<SysOperLogVO> selectOperLogPageList(SysOperLogQuery query);
//    void getLogDetail(List<SysOperLogVO> sysOperLogVOS);
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java
@@ -223,7 +223,7 @@
    void saveRole(SysRoleDTO dto);
    PageInfo<SysRole> selectList(SysRoleQuery query);
    PageInfo<SysRole> selectPageList(SysRoleQuery query);
    /**
     * 修改保存角色信息
ruoyi-system/src/main/java/com/ruoyi/system/service/TDeptService.java
New file
@@ -0,0 +1,34 @@
package com.ruoyi.system.service;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.dto.TDeptUpAndDownDTO;
import com.ruoyi.system.model.TDept;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.query.TDeptQuery;
import com.ruoyi.system.vo.DeptVO;
/**
 * <p>
 * 部门管理 服务类
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
public interface TDeptService extends IService<TDept> {
    /**
     * 部门ID是否存在
     * @param dto
     * @return
     */
    boolean isExit(TDept dto);
    /**
     * 获取部门管理分页列表
     * @param query
     * @return
     */
    PageInfo<DeptVO> pageList(TDeptQuery query);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/TDeptToUserService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.system.service;
import com.ruoyi.system.model.TDeptToUser;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 部门用户中间表 服务类
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
public interface TDeptToUserService extends IService<TDeptToUser> {
}
ruoyi-system/src/main/java/com/ruoyi/system/service/TFaultAreaDicService.java
@@ -1,7 +1,9 @@
package com.ruoyi.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TFaultAreaDic;
import com.ruoyi.system.query.TFaultAreaDicQuery;
/**
 * <p>
@@ -13,4 +15,10 @@
 */
public interface TFaultAreaDicService extends IService<TFaultAreaDic> {
    /**
     * 获取故障区域管理列表
     * @param query
     * @return
     */
    PageInfo<TFaultAreaDic> pageList(TFaultAreaDicQuery query);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/TFaultDescribeDicService.java
@@ -1,7 +1,10 @@
package com.ruoyi.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TFaultDescribeDic;
import com.ruoyi.system.query.TFaultDescribeDicQuery;
import com.ruoyi.system.vo.TFaultDescribeDicVO;
/**
 * <p>
@@ -13,4 +16,10 @@
 */
public interface TFaultDescribeDicService extends IService<TFaultDescribeDic> {
    /**
     * 获取故障描述分页列表
     * @param query
     * @return
     */
    PageInfo<TFaultDescribeDicVO> pageList(TFaultDescribeDicQuery query);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOperLogServiceImpl.java
@@ -1,9 +1,13 @@
package com.ruoyi.system.service.impl;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.domain.SysOperLog;
import com.ruoyi.system.mapper.SysOperLogMapper;
import com.ruoyi.system.mapper.SysUserMapper;
import com.ruoyi.system.model.TFaultAreaDic;
import com.ruoyi.system.query.SysOperLogQuery;
import com.ruoyi.system.service.ISysOperLogService;
import com.ruoyi.system.vo.SysOperLogVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -78,10 +82,13 @@
        operLogMapper.cleanOperLog();
    }
//    @Override
//    public List<SysOperLogVO> selectOperLogPageList(SysOperLogQuery query) {
//        return operLogMapper.selectOperLogPageList(query);
//    }
    @Override
    public PageInfo<SysOperLogVO> selectOperLogPageList(SysOperLogQuery query) {
        PageInfo<SysOperLogVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<SysOperLogVO> list = operLogMapper.selectOperLogPageList(query,pageInfo);
        pageInfo.setRecords(list);
        return pageInfo;
    }
//    @Override
//    public void getLogDetail(List<SysOperLogVO> sysOperLogVOS) {
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
@@ -22,6 +22,7 @@
import com.ruoyi.system.domain.SysRoleMenu;
import com.ruoyi.system.domain.SysUserRole;
import com.ruoyi.system.service.ISysRoleService;
import org.springframework.util.CollectionUtils;
/**
 * 角色 业务层处理
@@ -558,6 +559,7 @@
        SysRole sysRole = new SysRole();
        sysRole.setRoleName(dto.getRoleName());
        sysRole.setPostType(dto.getPostType());
        sysRole.setRemark(dto.getRemark());
        roleMapper.insertRole(sysRole);
        // 添加角色权限中间表
@@ -573,9 +575,9 @@
    }
    @Override
    public PageInfo<SysRole> selectList(SysRoleQuery query) {
    public PageInfo<SysRole> selectPageList(SysRoleQuery query) {
        PageInfo<SysRole> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<SysRole> list = roleMapper.selectList(query,pageInfo);
        List<SysRole> list = roleMapper.selectPageList(query,pageInfo);
        pageInfo.setRecords(list);
        return pageInfo;
    }
@@ -587,6 +589,7 @@
        sysRole.setRoleId(dto.getRoleId());
        sysRole.setRoleName(dto.getRoleName());
        sysRole.setPostType(dto.getPostType());
        sysRole.setRemark(dto.getRemark());
        roleMapper.updateRole(sysRole);
        // 删除角色与菜单关联
        roleMenuMapper.deleteRoleMenuByRoleId(dto.getRoleId());
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDeptServiceImpl.java
New file
@@ -0,0 +1,49 @@
package com.ruoyi.system.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.dto.TDeptUpAndDownDTO;
import com.ruoyi.system.model.TDept;
import com.ruoyi.system.mapper.TDeptMapper;
import com.ruoyi.system.query.TDeptQuery;
import com.ruoyi.system.service.TDeptService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.vo.DeptVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
/**
 * <p>
 * 部门管理 服务实现类
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@Service
public class TDeptServiceImpl extends ServiceImpl<TDeptMapper, TDept> implements TDeptService {
    @Override
    public boolean isExit(TDept dto) {
        if(StringUtils.isNotEmpty(dto.getDeptId())){
            // 修改
            return this.count(Wrappers.lambdaQuery(TDept.class).ne(TDept::getId, dto.getId()).eq(TDept::getDeptId, dto.getDeptId())) > 0;
        }else {
            // 新增
            return this.count(Wrappers.lambdaQuery(TDept.class).eq(TDept::getDeptId, dto.getDeptId())) > 0;
        }
    }
    @Override
    public PageInfo<DeptVO> pageList(TDeptQuery query) {
        PageInfo<DeptVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<DeptVO> list = this.baseMapper.pageList(query,pageInfo);
        pageInfo.setRecords(list);
        return pageInfo;
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDeptToUserServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.system.service.impl;
import com.ruoyi.system.model.TDeptToUser;
import com.ruoyi.system.mapper.TDeptToUserMapper;
import com.ruoyi.system.service.TDeptToUserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 部门用户中间表 服务实现类
 * </p>
 *
 * @author xiaochen
 * @since 2025-02-06
 */
@Service
public class TDeptToUserServiceImpl extends ServiceImpl<TDeptToUserMapper, TDeptToUser> implements TDeptToUserService {
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFaultAreaDicServiceImpl.java
@@ -1,10 +1,17 @@
package com.ruoyi.system.service.impl;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.constant.DictConstants;
import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.system.mapper.TFaultAreaDicMapper;
import com.ruoyi.system.model.TFaultAreaDic;
import com.ruoyi.system.query.TFaultAreaDicQuery;
import com.ruoyi.system.service.TFaultAreaDicService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.vo.TenantVO;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * <p>
@@ -17,4 +24,11 @@
@Service
public class TFaultAreaDicServiceImpl extends ServiceImpl<TFaultAreaDicMapper, TFaultAreaDic> implements TFaultAreaDicService {
    @Override
    public PageInfo<TFaultAreaDic> pageList(TFaultAreaDicQuery query) {
        PageInfo<TFaultAreaDic> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TFaultAreaDic> list = this.baseMapper.pageList(query,pageInfo);
        pageInfo.setRecords(list);
        return pageInfo;
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFaultDescribeDicServiceImpl.java
@@ -1,10 +1,22 @@
package com.ruoyi.system.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.mapper.TFaultAreaDicMapper;
import com.ruoyi.system.mapper.TFaultDescribeDicMapper;
import com.ruoyi.system.model.TFaultAreaDic;
import com.ruoyi.system.model.TFaultDescribeDic;
import com.ruoyi.system.query.TFaultAreaDicQuery;
import com.ruoyi.system.query.TFaultDescribeDicQuery;
import com.ruoyi.system.service.TFaultDescribeDicService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.vo.TFaultDescribeDicVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.stream.Collectors;
/**
 * <p>
@@ -17,4 +29,23 @@
@Service
public class TFaultDescribeDicServiceImpl extends ServiceImpl<TFaultDescribeDicMapper, TFaultDescribeDic> implements TFaultDescribeDicService {
    @Autowired
    private TFaultAreaDicMapper faultAreaDicMapper;
    @Override
    public PageInfo<TFaultDescribeDicVO> pageList(TFaultDescribeDicQuery query) {
        PageInfo<TFaultDescribeDicVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TFaultDescribeDicVO> list = this.baseMapper.pageList(query,pageInfo);
        if(!CollectionUtils.isEmpty(list)){
            List<String> areaIds = list.stream().map(TFaultDescribeDicVO::getFaultId).collect(Collectors.toList());
            List<TFaultAreaDic> tFaultAreaDicList = faultAreaDicMapper.selectList(Wrappers.lambdaQuery(TFaultAreaDic.class)
                    .in(TFaultAreaDic::getId, areaIds));
            for (TFaultDescribeDicVO tFaultDescribeDicVO : list) {
                tFaultDescribeDicVO.setFaultAreaName(tFaultAreaDicList.stream().filter(t -> t.getId().equals(tFaultDescribeDicVO.getFaultId()))
                        .findFirst().orElse(new TFaultAreaDic()).getFaultAreaName());
            }
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/vo/DeptVO.java
New file
@@ -0,0 +1,15 @@
package com.ruoyi.system.vo;
import com.ruoyi.system.model.TDept;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "部门返回VO")
public class DeptVO extends TDept {
    @ApiModelProperty(value = "部门人数")
    private Integer userCount;
}
ruoyi-system/src/main/java/com/ruoyi/system/vo/TFaultDescribeDicVO.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.system.vo;
import com.ruoyi.system.model.TFaultDescribeDic;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "故障描述VO")
public class TFaultDescribeDicVO extends TFaultDescribeDic {
    @ApiModelProperty(value = "故障区域名称")
    private String faultAreaName;
}
ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml
@@ -95,19 +95,28 @@
            AND del_flag = 0
        </where>
    </select>
    <select id="selectList" resultType="com.ruoyi.common.core.domain.entity.SysRole">
        select role_id AS roleId, role_name AS roleName, role_key AS roleKey, role_sort AS roleSort, data_scope AS dataScope,
               menu_check_strictly AS menuCheckStrictly, dept_check_strictly AS deptCheckStrictly,status AS status, del_flag AS delFlag,
               create_time AS createTime,create_by AS createBy,postType AS postType,removeDays AS removeDays
        from sys_role
    <select id="selectPageList" resultType="com.ruoyi.common.core.domain.entity.SysRole">
        select a.role_id AS roleId, a.role_name AS roleName, a.role_key AS roleKey, a.role_sort AS roleSort, a.data_scope AS dataScope,
        a.menu_check_strictly AS menuCheckStrictly, a.dept_check_strictly AS deptCheckStrictly,a.status AS status, a.del_flag AS delFlag,
        a.create_time AS createTime,a.create_by AS createBy,a.postType AS postType,a.removeDays AS removeDays,
        IFNULL(b.userCount,0) as userCount
        from sys_role a
        LEFT JOIN
        (SELECT
        r.role_id AS roleId,
        COUNT(ur.user_id) AS userCount
        FROM sys_role r
        LEFT JOIN sys_user_role ur ON r.role_id = ur.role_id
        where r.del_flag = 0
        GROUP BY r.role_id) b on a.role_id = b.roleId
        <where>
            <if test="query.roleName != null and query.roleName != ''">
                AND role_name LIKE concat('%',#{query.roleName},'%')
                AND a.role_name LIKE concat('%',#{query.roleName},'%')
            </if>
            <if test="query.status != null">
                AND status = #{query.status}
                AND a.status = #{query.status}
            </if>
            AND del_flag = 0
            AND a.del_flag = 0
        </where>
    </select>
    <select id="selectCount" resultType="java.lang.Integer">
ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml
@@ -36,7 +36,9 @@
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, contract_number, contract_name, start_time, end_time, total_rent, deposit, pay_type, first_pay_time, isIncreasing, isIncreasing_deposit, proportion, house_id, party_one_name, party_one_person, party_one_phone, tenant_id, party_two_name, party_two_person, party_two_phone, contract_file, remark, status, create_time, update_time, create_by, update_by, disabled
        id, contract_number, contract_name, start_time, end_time, total_rent, deposit, pay_type, first_pay_time, isIncreasing, isIncreasing_deposit,
            proportion, house_id, party_one_name, party_one_person, party_one_phone, tenant_id, party_two_name, party_two_person, party_two_phone,
            contract_file, remark, status, create_time, update_time, create_by, update_by, disabled
    </sql>
    <select id="contractList" resultType="com.ruoyi.system.model.TContract">
        select t1.* from t_contract t1
ruoyi-system/src/main/resources/mapper/system/TDeptMapper.xml
New file
@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.system.mapper.TDeptMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ruoyi.system.model.TDept">
        <id column="id" property="id" />
        <result column="dept_id" property="deptId" />
        <result column="dept_name" property="deptName" />
        <result column="status" property="status" />
        <result column="remark" property="remark" />
        <result column="disable_remark" property="disableRemark" />
        <result column="operating_time" property="operatingTime" />
        <result column="operating_person" property="operatingPerson" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
        <result column="create_by" property="createBy" />
        <result column="update_by" property="updateBy" />
        <result column="disabled" property="disabled" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, dept_id, dept_name, status, remark, disable_remark, operating_time, operating_person, create_time, update_time, create_by, update_by, disabled
    </sql>
    <select id="pageList" resultType="com.ruoyi.system.vo.DeptVO">
        select
            t.id,
            t.dept_id,
            t.dept_name,
            t.status,
            t.remark,
            t.disable_remark,
            t.operating_time,
            t.operating_person,
            t.create_time,
            t.update_time,
            t.create_by,
            t.update_by,
            t.disabled,
            b.userCount
        from t_dept t
                 LEFT JOIN
             (SELECT a.id,COUNT(tu.user_id) AS userCount
              FROM t_dept a
              LEFT JOIN t_dept_to_user tu ON a.id = tu.dept_id
              where a.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
              GROUP BY a.id) b on t.id = b.id
        <where>
            <if test="query.deptIdOrName != null and query.deptIdOrName != ''">
                AND (t.dept_id like concat('%', #{query.deptIdOrName},'%')
                         OR t.dept_name like concat('%', #{query.deptIdOrName},'%'))
            </if>
            AND t.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        </where>
        ORDER BY t.create_time DESC
    </select>
</mapper>
ruoyi-system/src/main/resources/mapper/system/TDeptToUserMapper.xml
New file
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.system.mapper.TDeptToUserMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ruoyi.system.model.TDeptToUser">
        <id column="id" property="id" />
        <result column="dept_id" property="deptId" />
        <result column="user_id" property="userId" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, dept_id, user_id
    </sql>
</mapper>
ruoyi-system/src/main/resources/mapper/system/TFaultAreaDicMapper.xml
@@ -6,11 +6,23 @@
    <resultMap id="BaseResultMap" type="com.ruoyi.system.model.TFaultAreaDic">
        <id column="id" property="id" />
        <result column="fault_area_name" property="faultAreaName" />
        <result column="sort_by" property="sortBy" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
        <result column="create_by" property="createBy" />
        <result column="update_by" property="updateBy" />
        <result column="disabled" property="disabled" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, fault_area_name
        id, fault_area_name,sort_by, create_time, update_time, create_by, update_by, disabled
    </sql>
    <select id="pageList" resultType="com.ruoyi.system.model.TFaultAreaDic">
        SELECT <include refid="Base_Column_List"></include>
        FROM t_fault_area_dic
        WHERE disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        ORDER BY create_time DESC
    </select>
</mapper>
ruoyi-system/src/main/resources/mapper/system/TFaultDescribeDicMapper.xml
@@ -7,11 +7,24 @@
        <id column="id" property="id" />
        <result column="fault_id" property="faultId" />
        <result column="describe_name" property="describeName" />
        <result column="sort_by" property="sortBy" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
        <result column="create_by" property="createBy" />
        <result column="update_by" property="updateBy" />
        <result column="disabled" property="disabled" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, fault_id, describe_name
        id, fault_id, describe_name,sort_by, create_time, update_time, create_by, update_by, disabled
    </sql>
    <select id="pageList" resultType="com.ruoyi.system.vo.TFaultDescribeDicVO">
        select
        <include refid="Base_Column_List"/>
        from t_fault_describe_dic
        where disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        ORDER BY create_time DESC
    </select>
</mapper>