liujie
2026-01-22 8686002d4ac3575ed8c42945c5d0ed7ba9a8e0d9
大屏项目接口
1个文件已添加
8个文件已修改
86 ■■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/EntrustProjectController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ProjectController.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/ScreenAccountMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/ScreenAccountService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenAccountServiceImpl.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/vo/LoginNameVo.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/ScreenAccountMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/EntrustProjectController.java
@@ -12,8 +12,6 @@
import com.ruoyi.system.vo.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.models.auth.In;
import lombok.var;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ProjectController.java
@@ -59,16 +59,29 @@
    @Autowired
    private PositionService positionService;
    @Autowired
    private PlanService planService;
    @Autowired
    private ScreenAccountService screenAccountService;
    @ApiOperation(value = "获取项目列表",response = Project.class)
    @GetMapping("/getProjectList")
    public R<List<Project>> getProjectList(@RequestParam Integer clientId) {
        List<Project> list = projectService.list(new LambdaQueryWrapper<Project>().eq(Project::getDeleted, false).eq(Project::getClientId, clientId).orderByDesc(Project::getCreateTime));
        return R.ok(list);
    @ApiOperation(value = "获取项目/委托方列表",response = LoginNameVo.class)
    @GetMapping("/getLoginNameVoList")
    public R<List<LoginNameVo>> getProjectList(@RequestParam Integer userId) {
        ScreenAccount screenAccount = screenAccountService.getById(userId);
        String clientProjectIds = screenAccount.getClientProjectIds();
        if(screenAccount.getType()==1){
            // 委托方
            List<LoginNameVo> list = screenAccountService.getLoginClient(clientProjectIds);
            return R.ok(list);
        }else {
            // 项目
            List<LoginNameVo> list = screenAccountService.getLoginProject(clientProjectIds);
            return R.ok(list);
        }
    }
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java
@@ -71,6 +71,9 @@
     */
    private SysUser user;
    private Integer type;
    public LoginUser()
    {
    }
@@ -89,6 +92,14 @@
        this.permissions = permissions;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Long getUserId()
    {
        return userId;
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
@@ -99,6 +99,7 @@
        sysUser.setUserName(user.getName());
        sysUser.setPassword(user.getPassword());
        loginUser.setUser(sysUser);
        loginUser.setType(user.getType());
        // 生成token
        return loginUser;
    }
ruoyi-system/src/main/java/com/ruoyi/system/mapper/ScreenAccountMapper.java
@@ -3,10 +3,16 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.system.model.Contract;
import com.ruoyi.system.model.ScreenAccount;
import com.ruoyi.system.vo.LoginNameVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface ScreenAccountMapper extends BaseMapper<ScreenAccount> {
    Long getToken(@Param("key") String key);
    List<LoginNameVo> getLoginClient(@Param("ids") List<String> ids);
    List<LoginNameVo> getLoginProject(@Param("ids") List<String> ids);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/ScreenAccountService.java
@@ -3,6 +3,9 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.model.OnDuty;
import com.ruoyi.system.model.ScreenAccount;
import com.ruoyi.system.vo.LoginNameVo;
import java.util.List;
/**
 * <p>
@@ -18,4 +21,9 @@
    Long getToken(String key);
    List<LoginNameVo> getLoginClient(String clientProjectIds);
    List<LoginNameVo> getLoginProject(String clientProjectIds);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenAccountServiceImpl.java
@@ -8,7 +8,11 @@
import com.ruoyi.system.model.ScreenAccount;
import com.ruoyi.system.service.OnDutyService;
import com.ruoyi.system.service.ScreenAccountService;
import com.ruoyi.system.vo.LoginNameVo;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
/**
 * <p>
@@ -30,4 +34,15 @@
    public Long getToken(String key) {
        return this.baseMapper.getToken(key);
    }
    @Override
    public List<LoginNameVo> getLoginClient(String clientProjectIds) {
        return this.baseMapper.getLoginClient(Arrays.asList(clientProjectIds.split( ",")));
    }
    @Override
    public List<LoginNameVo> getLoginProject(String clientProjectIds) {
        return this.baseMapper.getLoginProject(Arrays.asList(clientProjectIds.split( ",")));
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/vo/LoginNameVo.java
New file
@@ -0,0 +1,12 @@
package com.ruoyi.system.vo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel("登录查看选择账户")
public class LoginNameVo {
    private Integer id;
    private String name;
}
ruoyi-system/src/main/resources/mapper/system/ScreenAccountMapper.xml
@@ -5,4 +5,10 @@
    <select id="getToken" resultType="java.lang.Long">
        select id from user_session where token = #{key} and `state`="ENABLED" limit 1
    </select>
    <select id="getLoginClient" resultType="com.ruoyi.system.vo.LoginNameVo">
        select id,name from client where id in <foreach collection="ids" separator="," item="id" close=")" open="(" >#{id}</foreach>
    </select>
    <select id="getLoginProject" resultType="com.ruoyi.system.vo.LoginNameVo">
        select id,name from project where id in <foreach collection="ids" separator="," item="id" close=")" open="(" >#{id}</foreach>
    </select>
</mapper>