jihongshun
5 小时以前 307db148645230afc780a3d5d16ffb97aa32c189
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
/**
 * 全局统一的增删改查请求
 * 说明:自带增删改查
 * 如果有特殊的api 就在modules中新增 并且引用 全局中使用 this.$api 进行引用
 * */
import request from '@/utils/request';
import Element from 'element-ui';
function install(Vue) {
  Vue.prototype.$api = {
    list(controller, params) {
      return new Promise((resolve, reject) => {
        return request({
          url: controller,
          method: 'get',
          params: params
        }).then((res) => {
          resolve(res);
        });
      });
    },
    detail(controller, id) {
      return new Promise((resolve, reject) => {
        request({
          url: `${controller}/${id}`,
          method: 'get'
        }).then((res) => {
          resolve(res);
        });
      });
    },
    saveCamera(controller, idName, params) {
      if (params[idName]) {
        // 更新
        return new Promise((resolve, reject) => {
          request({
            url: controller,
            method: 'put',
            data: params
          }).then((res) => {
            console.log(res);
            Element.Message.success({
              message: `修改成功(${res.data})`,
              duration: 4000
            });
            // Element.Message.success(
            //   language == 'en-US' ? 'Modified successfully' : `修改成功(${res.data})`
            // );
            resolve(res);
          });
        });
      } else {
        // 新增
        return new Promise((resolve, reject) => {
          request({
            url: controller,
            method: 'post',
            data: params
          }).then((res) => {
            Element.Message.success({
              message: `新增成功(${res.data})`,
              duration: 4000
            });
            // Element.Message.success(language == 'en-US' ? 'New success' : `新增成功(${res.data})`);
            resolve(res);
          });
        });
      }
    },
    save(controller, idName, params) {
      if (params[idName]) {
        // 更新
        return new Promise((resolve, reject) => {
          request({
            url: controller,
            method: 'put',
            data: params
          }).then((res) => {
            Element.Message.success('修改成功');
            resolve(res);
          });
        });
      } else {
        // 新增
        return new Promise((resolve, reject) => {
          request({
            url: controller,
            method: 'post',
            data: params
          }).then((res) => {
            Element.Message.success('新增成功');
            resolve(res);
          });
        });
      }
    },
    delete(controller, ids) {
      return new Promise((resolve, reject) => {
        Element.MessageBox.confirm('是否确认删除编号为"' + ids + '"的数据项?', '系统提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning'
        })
          .then(() => {
            request({
              url: `${controller}/${ids}`,
              method: 'delete'
            }).then((res) => {
              Element.Message.success('删除成功');
              resolve(res);
            });
          })
          .catch(() => {
            Element.Message.info('操作已取消');
          });
      });
    },
    deleteByName(controller, ids, name) {
      return new Promise((resolve, reject) => {
        Element.MessageBox.confirm('是否确认删除名称为"' + name + '"的数据项?', '系统提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning'
        })
          .then(() => {
            request({
              url: `${controller}/${ids}`,
              method: 'delete'
            }).then((res) => {
              Element.Message.success('删除成功');
              resolve(res);
            });
          })
          .catch(() => {
            Element.Message.info('操作已取消');
          });
      });
    }
  };
}
 
export default install;