diff --git a/client/src/api/edu.js b/client/src/api/edu.js
new file mode 100644
index 0000000..00f9320
--- /dev/null
+++ b/client/src/api/edu.js
@@ -0,0 +1,43 @@
+import request from '@/utils/request'
+
+//获取列表
+export function getCertificateList(query) {
+ return request({
+ url: '/edu/certificate/',
+ method: 'get',
+ params: query
+ })
+}
+export function createCertificate(data) {
+ return request({
+ url: '/edu/certificate/',
+ method: 'post',
+ data
+ })
+ }
+ export function updateCertificate(id, data) {
+ return request({
+ url: `/edu/certificate/${id}/`,
+ method: 'put',
+ data
+ })
+ }
+ export function impCertificate(data) {
+ return request({
+ url: '/edu/certificate/imp/',
+ method: 'post',
+ data
+ })
+ }
+ export function deleteCertificate(id) {
+ return request({
+ url: `/edu/certificate/${id}/`,
+ method: 'delete'
+ })
+ }
+ export function getCertificate(id) {
+ return request({
+ url: `/edu/certificate/${id}/`,
+ method: 'get'
+ })
+ }
\ No newline at end of file
diff --git a/client/src/router/index.js b/client/src/router/index.js
index 14359e0..3bddf2b 100644
--- a/client/src/router/index.js
+++ b/client/src/router/index.js
@@ -408,6 +408,12 @@ export const asyncRoutes = [
meta: { title: '视频培训', icon: 'video', perms: ['video_views'] },
alwaysShow: true,
children: [
+ {
+ path: 'certificate',
+ name: 'certificate',
+ component: () => import('@/views/testvideo/certificate.vue'),
+ meta: { title: '证书列表', perms: ['video_view'] }
+ },
{
path: 'videolist',
name: 'videolist',
diff --git a/client/src/views/testvideo/certificate.vue b/client/src/views/testvideo/certificate.vue
new file mode 100644
index 0000000..e6f1f51
--- /dev/null
+++ b/client/src/views/testvideo/certificate.vue
@@ -0,0 +1,366 @@
+
+
+
+
+
+ 搜索
+
+
+
新增证书
+
+ 导入证书
+
+
+ 上传导入
+
+
+ 导入证书
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 内审员
+
+
+
+
+ 内审员
+ 授权签字人
+ 最高管理者
+ 质量负责人
+
+
+
+ {{scope.row.create_time.substring(0, 10)}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 取消
+ 确认
+
+
+
+
+
+
+
+ 关闭
+
+
+
+
+
+