wangzhibo
4 天以前 10595d8632f959d0954d1939243196f4eed02372
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
import { config } from "../../config";
import request from "./request";
 
export class BaseService {
    namespace?: string;
 
    constructor(namespace?: string) {
        if (namespace) {
            this.namespace = namespace;
        }
    }
 
    // 发送请求
    async request(options: any = {}) {
        let url = options.url;
 
        if (url && url.indexOf("http") < 0) {
            if (this.namespace) {
                url = this.namespace + url;
            }
 
            if (options.proxy !== false) {
                url = config.baseUrl + "/" + url;
            }
        }
 
        // 处理参数
        options.data =
            options.method?.toLocaleUpperCase() == "POST" ? options.data : options.params;
 
        return request({
            ...options,
            url,
        });
    }
 
    // 获取列表
    async list(data: any) {
        return this.request({
            url: "/list",
            method: "POST",
            data,
        });
    }
 
    // 分页查询
    async page(data: any) {
        return this.request({
            url: "/page",
            method: "POST",
            data,
        });
    }
 
    // 获取信息
    async info(params: any) {
        return this.request({
            url: "/info",
            params,
        });
    }
 
    // 更新数据
    async update(data: any) {
        return this.request({
            url: "/update",
            method: "POST",
            data,
        });
    }
 
    // 删除数据
    async delete(data: any) {
        return this.request({
            url: "/delete",
            method: "POST",
            data,
        });
    }
 
    // 添加数据
    async add(data: any) {
        return this.request({
            url: "/add",
            method: "POST",
            data,
        });
    }
}