diff --git a/leave-school-vue/src/api/auditscope-api.js b/leave-school-vue/src/api/auditscope-api.js
new file mode 100644
index 0000000..b24dab5
--- /dev/null
+++ b/leave-school-vue/src/api/auditscope-api.js
@@ -0,0 +1,32 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/auditscope/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/system/auditscope/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createAuditScope(data) {
+  return request({
+    url: '/api/system/auditscope/create-auditscope',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteAuditScope(data) {
+  return request({
+    url: '/api/system/auditscope/delete-auditscope',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/autoaudittype-api.js b/leave-school-vue/src/api/autoaudittype-api.js
new file mode 100644
index 0000000..03829f2
--- /dev/null
+++ b/leave-school-vue/src/api/autoaudittype-api.js
@@ -0,0 +1,32 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/autoaudittype/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/system/autoaudittype/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createAutoAuditType(data) {
+  return request({
+    url: '/api/system/autoaudittype/create-autoaudittype',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteAutoAuditType(data) {
+  return request({
+    url: '/api/system/autoaudittype/delete-autoaudittype',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/class-api.js b/leave-school-vue/src/api/class-api.js
new file mode 100644
index 0000000..44d271d
--- /dev/null
+++ b/leave-school-vue/src/api/class-api.js
@@ -0,0 +1,39 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/class/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getAllList(params) {
+  return request({
+    url: '/api/system/class/all-list',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/system/class/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createClass(data) {
+  return request({
+    url: '/api/system/class/create-class',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteClass(data) {
+  return request({
+    url: '/api/system/class/delete-class',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/department-api.js b/leave-school-vue/src/api/department-api.js
new file mode 100644
index 0000000..b8cbc29
--- /dev/null
+++ b/leave-school-vue/src/api/department-api.js
@@ -0,0 +1,40 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/department/list-api',
+    // url: 'http://localhost:8080/leaveschool/api/v1/base/department',
+    method: 'get',
+    params
+  })
+}
+export function getAllList(params) {
+  return request({
+    url: '/api/system/department/all-list',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/system/department/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createDepartment(data) {
+  return request({
+    url: '/api/system/department/create-department',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteDepartment(data) {
+  return request({
+    url: '/api/system/department/delete-department',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/departmentleader-api.js b/leave-school-vue/src/api/departmentleader-api.js
new file mode 100644
index 0000000..0fe7ee0
--- /dev/null
+++ b/leave-school-vue/src/api/departmentleader-api.js
@@ -0,0 +1,32 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/workteam/departmentleader/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/workteam/departmentleader/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createDepartmentleader(data) {
+  return request({
+    url: '/api/workteam/departmentleader/create-departmentleader',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteDepartmentleader(data) {
+  return request({
+    url: '/api/workteam/departmentleader/delete-departmentleader',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/dictionary-api.js b/leave-school-vue/src/api/dictionary-api.js
new file mode 100644
index 0000000..586820c
--- /dev/null
+++ b/leave-school-vue/src/api/dictionary-api.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function getDicList(params) {
+  return request({
+    url: '/api/system/dictionary/getdiclist',
+    method: 'get',
+    params
+  })
+}
diff --git a/leave-school-vue/src/api/instructor-api.js b/leave-school-vue/src/api/instructor-api.js
new file mode 100644
index 0000000..312169b
--- /dev/null
+++ b/leave-school-vue/src/api/instructor-api.js
@@ -0,0 +1,32 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/workteam/instructor/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/workteam/instructor/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createInstructor(data) {
+  return request({
+    url: '/api/workteam/instructor/create-instructor',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteInstructor(data) {
+  return request({
+    url: '/api/workteam/instructor/delete-instructor',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/login.js b/leave-school-vue/src/api/login.js
new file mode 100644
index 0000000..c9558cf
--- /dev/null
+++ b/leave-school-vue/src/api/login.js
@@ -0,0 +1,27 @@
+import request from '@/utils/request'
+
+export function login(username, password) {
+  return request({
+    url: '/api/login/login',
+    method: 'post',
+    data: {
+      username,
+      password
+    }
+  })
+}
+
+export function getInfo(token) {
+  return request({
+    url: '/api/system/user/info',
+    method: 'get',
+    params: { token }
+  })
+}
+
+export function logout() {
+  return request({
+    url: '/api/login/logout-api',
+    method: 'post'
+  })
+}
diff --git a/leave-school-vue/src/api/major-api.js b/leave-school-vue/src/api/major-api.js
new file mode 100644
index 0000000..2318b22
--- /dev/null
+++ b/leave-school-vue/src/api/major-api.js
@@ -0,0 +1,39 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/major/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getZyListByYx(params) {
+  return request({
+    url: '/api/system/major/list-byyx-api',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/system/major/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createMajor(data) {
+  return request({
+    url: '/api/system/major/create-major',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteMajor(data) {
+  return request({
+    url: '/api/system/major/delete-major',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/menulist-api.js b/leave-school-vue/src/api/menulist-api.js
new file mode 100644
index 0000000..3735e5d
--- /dev/null
+++ b/leave-school-vue/src/api/menulist-api.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function getMenuList(params) {
+  return request({
+    url: '/api/system/menu/list',
+    method: 'get',
+    params
+  })
+}
diff --git a/leave-school-vue/src/api/newspublish-api.js b/leave-school-vue/src/api/newspublish-api.js
new file mode 100644
index 0000000..44c7368
--- /dev/null
+++ b/leave-school-vue/src/api/newspublish-api.js
@@ -0,0 +1,40 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/news/newspublish/list-api',
+    // url: 'http://localhost:8080/leaveschool/api/v1/base/newspublish',
+    method: 'get',
+    params
+  })
+}
+export function getAllList(params) {
+  return request({
+    url: '/api/news/newspublish/all-list',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/news/newspublish/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createNewspublish(data) {
+  return request({
+    url: '/api/news/newspublish/create-newspublish',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteNewspublish(data) {
+  return request({
+    url: '/api/news/newspublish/delete-newspublish',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/rostersyncinterface-api.js b/leave-school-vue/src/api/rostersyncinterface-api.js
new file mode 100644
index 0000000..949955f
--- /dev/null
+++ b/leave-school-vue/src/api/rostersyncinterface-api.js
@@ -0,0 +1,32 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/rostersyncinterface/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/system/rostersyncinterface/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createRosterSyncInterface(data) {
+  return request({
+    url: '/api/system/rostersyncinterface/create-rostersyncinterface',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteRosterSyncInterface(data) {
+  return request({
+    url: '/api/system/rostersyncinterface/delete-rostersyncinterface',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/schoolyear-api.js b/leave-school-vue/src/api/schoolyear-api.js
new file mode 100644
index 0000000..01bf016
--- /dev/null
+++ b/leave-school-vue/src/api/schoolyear-api.js
@@ -0,0 +1,32 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/schoolyear/list-api',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/system/schoolyear/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createSchoolyear(data) {
+  return request({
+    url: '/api/system/schoolyear/create-schoolyear',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteSchoolyear(data) {
+  return request({
+    url: '/api/system/schoolyear/delete-schoolyear',
+    method: 'delete',
+    data
+  })
+}
diff --git a/leave-school-vue/src/api/user-api.js b/leave-school-vue/src/api/user-api.js
new file mode 100644
index 0000000..9b237f3
--- /dev/null
+++ b/leave-school-vue/src/api/user-api.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/system/user/list-api',
+    method: 'get',
+    params
+  })
+}
