mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 16:23:42 +08:00 
			
		
		
		
	接口使用泛型使其看到响应属性字段
This commit is contained in:
		@@ -13,7 +13,7 @@ import org.springframework.web.bind.annotation.RequestBody;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMapping;
 | 
			
		||||
import org.springframework.web.bind.annotation.RestController;
 | 
			
		||||
import com.ruoyi.common.core.controller.BaseController;
 | 
			
		||||
import com.ruoyi.common.core.domain.AjaxResult;
 | 
			
		||||
import com.ruoyi.common.core.domain.R;
 | 
			
		||||
import com.ruoyi.common.utils.StringUtils;
 | 
			
		||||
import io.swagger.annotations.Api;
 | 
			
		||||
import io.swagger.annotations.ApiImplicitParam;
 | 
			
		||||
@@ -40,24 +40,24 @@ public class TestController extends BaseController
 | 
			
		||||
 | 
			
		||||
    @ApiOperation("获取用户列表")
 | 
			
		||||
    @GetMapping("/list")
 | 
			
		||||
    public AjaxResult userList()
 | 
			
		||||
    public R<List<UserEntity>> userList()
 | 
			
		||||
    {
 | 
			
		||||
        List<UserEntity> userList = new ArrayList<UserEntity>(users.values());
 | 
			
		||||
        return AjaxResult.success(userList);
 | 
			
		||||
        return R.ok(userList);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @ApiOperation("获取用户详细")
 | 
			
		||||
    @ApiImplicitParam(name = "userId", value = "用户ID", required = true, dataType = "int", paramType = "path", dataTypeClass = Integer.class)
 | 
			
		||||
    @GetMapping("/{userId}")
 | 
			
		||||
    public AjaxResult getUser(@PathVariable Integer userId)
 | 
			
		||||
    public R<UserEntity> getUser(@PathVariable Integer userId)
 | 
			
		||||
    {
 | 
			
		||||
        if (!users.isEmpty() && users.containsKey(userId))
 | 
			
		||||
        {
 | 
			
		||||
            return AjaxResult.success(users.get(userId));
 | 
			
		||||
            return R.ok(users.get(userId));
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
            return error("用户不存在");
 | 
			
		||||
            return R.fail("用户不存在");
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -69,44 +69,46 @@ public class TestController extends BaseController
 | 
			
		||||
        @ApiImplicitParam(name = "mobile", value = "用户手机", dataType = "String", dataTypeClass = String.class)
 | 
			
		||||
    })
 | 
			
		||||
    @PostMapping("/save")
 | 
			
		||||
    public AjaxResult save(UserEntity user)
 | 
			
		||||
    public R<String> save(UserEntity user)
 | 
			
		||||
    {
 | 
			
		||||
        if (StringUtils.isNull(user) || StringUtils.isNull(user.getUserId()))
 | 
			
		||||
        {
 | 
			
		||||
            return error("用户ID不能为空");
 | 
			
		||||
            return R.fail("用户ID不能为空");
 | 
			
		||||
        }
 | 
			
		||||
        return AjaxResult.success(users.put(user.getUserId(), user));
 | 
			
		||||
        users.put(user.getUserId(), user);
 | 
			
		||||
        return R.ok();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @ApiOperation("更新用户")
 | 
			
		||||
    @PutMapping("/update")
 | 
			
		||||
    public AjaxResult update(@RequestBody UserEntity user)
 | 
			
		||||
    public R<String> update(@RequestBody UserEntity user)
 | 
			
		||||
    {
 | 
			
		||||
        if (StringUtils.isNull(user) || StringUtils.isNull(user.getUserId()))
 | 
			
		||||
        {
 | 
			
		||||
            return error("用户ID不能为空");
 | 
			
		||||
            return R.fail("用户ID不能为空");
 | 
			
		||||
        }
 | 
			
		||||
        if (users.isEmpty() || !users.containsKey(user.getUserId()))
 | 
			
		||||
        {
 | 
			
		||||
            return error("用户不存在");
 | 
			
		||||
            return R.fail("用户不存在");
 | 
			
		||||
        }
 | 
			
		||||
        users.remove(user.getUserId());
 | 
			
		||||
        return AjaxResult.success(users.put(user.getUserId(), user));
 | 
			
		||||
        users.put(user.getUserId(), user);
 | 
			
		||||
        return R.ok();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @ApiOperation("删除用户信息")
 | 
			
		||||
    @ApiImplicitParam(name = "userId", value = "用户ID", required = true, dataType = "int", paramType = "path", dataTypeClass = Integer.class)
 | 
			
		||||
    @DeleteMapping("/{userId}")
 | 
			
		||||
    public AjaxResult delete(@PathVariable Integer userId)
 | 
			
		||||
    public R<String> delete(@PathVariable Integer userId)
 | 
			
		||||
    {
 | 
			
		||||
        if (!users.isEmpty() && users.containsKey(userId))
 | 
			
		||||
        {
 | 
			
		||||
            users.remove(userId);
 | 
			
		||||
            return success();
 | 
			
		||||
            return R.ok();
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
            return error("用户不存在");
 | 
			
		||||
            return R.fail("用户不存在");
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										104
									
								
								ruoyi-common/src/main/java/com/ruoyi/common/core/domain/R.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								ruoyi-common/src/main/java/com/ruoyi/common/core/domain/R.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,104 @@
 | 
			
		||||
package com.ruoyi.common.core.domain;
 | 
			
		||||
 | 
			
		||||
import java.io.Serializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 响应信息主体
 | 
			
		||||
 *
 | 
			
		||||
 * @author ruoyi
 | 
			
		||||
 */
 | 
			
		||||
public class R<T> implements Serializable
 | 
			
		||||
{
 | 
			
		||||
    private static final long serialVersionUID = 1L;
 | 
			
		||||
 | 
			
		||||
    /** 成功 */
 | 
			
		||||
    public static final int SUCCESS = 0;
 | 
			
		||||
 | 
			
		||||
    /** 失败 */
 | 
			
		||||
    public static final int FAIL = 500;
 | 
			
		||||
 | 
			
		||||
    private int code;
 | 
			
		||||
 | 
			
		||||
    private String msg;
 | 
			
		||||
 | 
			
		||||
    private T data;
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> ok()
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(null, SUCCESS, "操作成功");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> ok(T data)
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(data, SUCCESS, "操作成功");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> ok(T data, String msg)
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(data, SUCCESS, msg);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> fail()
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(null, FAIL, "操作失败");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> fail(String msg)
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(null, FAIL, msg);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> fail(T data)
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(data, FAIL, "操作失败");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> fail(T data, String msg)
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(data, FAIL, msg);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static <T> R<T> fail(int code, String msg)
 | 
			
		||||
    {
 | 
			
		||||
        return restResult(null, code, msg);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static <T> R<T> restResult(T data, int code, String msg)
 | 
			
		||||
    {
 | 
			
		||||
        R<T> apiResult = new R<>();
 | 
			
		||||
        apiResult.setCode(code);
 | 
			
		||||
        apiResult.setData(data);
 | 
			
		||||
        apiResult.setMsg(msg);
 | 
			
		||||
        return apiResult;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public int getCode()
 | 
			
		||||
    {
 | 
			
		||||
        return code;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setCode(int code)
 | 
			
		||||
    {
 | 
			
		||||
        this.code = code;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getMsg()
 | 
			
		||||
    {
 | 
			
		||||
        return msg;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setMsg(String msg)
 | 
			
		||||
    {
 | 
			
		||||
        this.msg = msg;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public T getData()
 | 
			
		||||
    {
 | 
			
		||||
        return data;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setData(T data)
 | 
			
		||||
    {
 | 
			
		||||
        this.data = data;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user