环节统计报表查询
diff --git a/leave-school-vue/src/mock/class.js b/leave-school-vue/src/mock/class.js
index 01fc0ae..dd05dad 100644
--- a/leave-school-vue/src/mock/class.js
+++ b/leave-school-vue/src/mock/class.js
@@ -8,7 +8,7 @@
     'njmc|1': ['2017', '2018', '2019'],
     'yx|1-26': 26,
     'yxmc': '@cword(6, 15)',
-    'zy|27-375': 375,
+    'zy|30-40': 50,
     'zymc': '@cword(3, 5)',
     'bjdm': '@word(5)',
     'bjmc': '@cword(6, 10)',
@@ -43,6 +43,15 @@
       code: 200
     }
   },
+  getBjListByZy: config => {
+    const { zy } = param2Obj(config.url)
+    const mockList = clsList.filter(item => item.zy + '' === zy + '')
+
+    return {
+      items: mockList,
+      code: 200
+    }
+  },
   getItem: config => {
     const { id } = param2Obj(config.url)
     const mockList = clsList.filter(item => item.id + '' === id + '')
diff --git a/leave-school-vue/src/mock/department.js b/leave-school-vue/src/mock/department.js
index ce07f0b..0ce4f87 100644
--- a/leave-school-vue/src/mock/department.js
+++ b/leave-school-vue/src/mock/department.js
@@ -5,7 +5,7 @@
   'list|26': [{
     'id': '@increment',
     'dwdm': '000@id',
-    'dwmc': '@cword(6, 15)',
+    'dwmc|1': ['教育学院', '经管学院', '人文学院', '数学学院', '计算机学院', '电子学院', '电气学院', '生命科学院'],
     'dwjc': '@cword(3, 5)',
     'dwywmc': '@word(6, 10)',
     'sfqy|1': ['启用', '未启用'],
diff --git a/leave-school-vue/src/mock/index.js b/leave-school-vue/src/mock/index.js
index 981622e..5fa59ec 100644
--- a/leave-school-vue/src/mock/index.js
+++ b/leave-school-vue/src/mock/index.js
@@ -12,7 +12,9 @@
 import departmentleaderApi from './departmentleader'
 import instructorApi from './instructor'
 import newspublishApi from './newspublish'
-import handlinghApi from './handling'
+import handlingApi from './handling'
+import nodereportApi from './nodereport'
+import leavestudentApi from './leavestudent'
 
 // 登录
 Mock.mock(/\/api\/login\/login/, 'post', loginApi.loginByUsername)
@@ -45,6 +47,7 @@
 Mock.mock(/\/api\/system\/class\/create-class/, 'post', classApi.createData)
 Mock.mock(/\/api\/system\/class\/delete-class/, 'delete', classApi.deleteData)
 Mock.mock(/\/api\/system\/class\/get-item/, 'get', classApi.getItem)
+Mock.mock(/\/api\/system\/major\/list-byzy-api/, 'get', classApi.getBjListByZy)
 
 // 学年管理
 Mock.mock(/\/api\/system\/schoolyear\/list-api/, 'get', schoolyearApi.getList)
@@ -89,7 +92,15 @@
 Mock.mock(/\/api\/news\/newspublish\/get-item/, 'get', newspublishApi.getItem)
 
 // 办理情况查询
-Mock.mock(/\/api\/statistical\/handling\/list-api/, 'get', handlinghApi.getList)
-Mock.mock(/\/api\/statistical\/handling\/get-item/, 'get', handlinghApi.getItem)
+Mock.mock(/\/api\/statistical\/handling\/list-api/, 'get', handlingApi.getList)
+Mock.mock(/\/api\/statistical\/handling\/get-item/, 'get', handlingApi.getItem)
+
+// 环节统计报表查询
+Mock.mock(/\/api\/statistical\/nodereport\/list-api/, 'get', nodereportApi.getList)
+Mock.mock(/\/api\/statistical\/nodereport\/get-item/, 'get', nodereportApi.getItem)
+Mock.mock(/\/api\/statistical\/nodereport\/leaveresult/, 'get', nodereportApi.getLeaveAuditResult)
+
+// 离校学生审核查询
+Mock.mock(/\/api\/leaveprocess\/leavestudent\/auditlist-api/, 'get', leavestudentApi.getList)
 
 export default Mock
diff --git a/leave-school-vue/src/mock/leavestudent.js b/leave-school-vue/src/mock/leavestudent.js
new file mode 100644
index 0000000..8681db0
--- /dev/null
+++ b/leave-school-vue/src/mock/leavestudent.js
@@ -0,0 +1,45 @@
+import Mock from 'mockjs'
+import { param2Obj } from '@/utils'
+
+const clsList = Mock.mock({
+  'list|26': [{
+    'id': '@increment',
+    'hjmc|1': ['后勤处', '财务处', '学生处'],
+    'xh': '@word(8)',
+    'xm': '@cword(2, 3)',
+    'yx|1': ['教育学院', '经管学院', '人文学院', '数学学院', '计算机学院', '电子学院', '电气学院', '生命科学院'],
+    'yxid|1': ['1', '2', '3', '4', '5', '6', '7', '8'],
+    'zy': '@cword(6, 7)',
+    'bj': '@cword(6, 7)',
+    'shzt|1': ['待审核', '审核通过', '审核不通过'],
+    'shyj': '@cword(6, 10)',
+    'shztcode|1': ['1', '2', '3']
+  }]
+}).list
+
+export default{
+  getList: config => {
+    const { xh, xm, pcmc, xslb, bynf, byyf, yx, zy, xb, shhj, shzt, pageIndex = 1, pageSize = 20 } = param2Obj(config.url)
+    const mockList = clsList.filter(item => {
+      if (pcmc && item.pcmc && item.pcmc + '' !== pcmc + '') return false
+      if (xslb && item.xslb && item.xslb !== xslb) return false
+      if (bynf && item.bynf && item.bynf !== bynf) return false
+      if (byyf && item.byyf && item.byyf !== byyf) return false
+      if (yx && item.yxid && item.yxid !== yx) return false
+      if (zy && item.zy && item.zy !== zy) return false
+      if (xb && item.xb && item.xb !== xb) return false
+      if (shhj && item.shhj && item.shhj !== shhj) return false
+      if (shzt && item.shztcode && item.shztcode !== shzt) return false
+      if (xh && item.xh && item.xh !== xh) return false
+      if (xm && item.xm && item.xm !== xm) return false
+      return true
+    })
+
+    const pageList = mockList.filter((item, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1))
+    return {
+      items: pageList,
+      recordCount: mockList.length,
+      code: 200
+    }
+  }
+}
diff --git a/leave-school-vue/src/mock/major.js b/leave-school-vue/src/mock/major.js
index fe9b977..2999c65 100644
--- a/leave-school-vue/src/mock/major.js
+++ b/leave-school-vue/src/mock/major.js
@@ -2,10 +2,10 @@
 import { param2Obj } from '@/utils'
 
 const majorList = Mock.mock({
-  'list|350': [{
+  'list|20': [{
     'id': '@increment',
     'zydm': '000@id',
-    'zymc': '@cword(6, 15)',
+    'zymc': '@cword(4, 6)',
     'sfky|1': ['可用', '不可用'],
     'sfkycode|1': ['1', '0'],
     'ssyx|1': ['教育学院', '经管学院', '人文学院', '数学学院', '计算机学院', '电子学院', '电气学院', '生命科学院'],
@@ -37,7 +37,7 @@
     const mockList = majorList.filter(item => item.ssyxid === yx)
 
     return {
-      list: mockList,
+      items: mockList,
       code: 200
     }
   },
diff --git a/leave-school-vue/src/mock/menulist.js b/leave-school-vue/src/mock/menulist.js
index 343a71e..cc1ded8 100644
--- a/leave-school-vue/src/mock/menulist.js
+++ b/leave-school-vue/src/mock/menulist.js
@@ -103,8 +103,8 @@
       {
         path: 'nodereport',
         code: 'nodereport',
-        resource: '/views/news/newview/index',
-        meta: { title: '环节统计报表查询', icon: 'newview' }
+        resource: '/views/statistical/nodereport/index',
+        meta: { title: '环节统计报表查询', icon: 'nodereport' }
       }
     ]
   }
diff --git a/leave-school-vue/src/mock/nodereport.js b/leave-school-vue/src/mock/nodereport.js
new file mode 100644
index 0000000..bb91f1c
--- /dev/null
+++ b/leave-school-vue/src/mock/nodereport.js
@@ -0,0 +1,46 @@
+import Mock from 'mockjs'
+import { param2Obj } from '@/utils'
+
+const recordList = Mock.mock({
+  'list|4': [{
+    'id': '@increment',
+    'hjmc|1': ['后勤处', '财务处', '学生处'],
+    'hjid': '@word(5)',
+    'dsh|1-1000': 100,
+    'shtg|1-1000': 100,
+    'shbtg|1-1000': 100
+  }]
+}).list
+
+export default{
+  getList: config => {
+    const { pcmc, xh, xm, sfzylx, yx, zy, bj, xslb, pageIndex = 1, pageSize = 20 } = param2Obj(config.url)
+    const mockList = recordList.filter(item => {
+      if (pcmc && item.pcmc + '' !== pcmc + '') return false
+      if (xh && item.xh !== xh) return false
+      if (xm && item.xm !== xm) return false
+      if (sfzylx && item.sfzylx !== sfzylx) return false
+      if (yx && item.yx !== yx) return false
+      if (zy && item.zy !== zy) return false
+      if (bj && item.bj !== bj) return false
+      if (xslb && item.xslb !== xslb) return false
+      return true
+    })
+
+    const pageList = mockList.filter((item, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1))
+    return {
+      items: pageList,
+      recordCount: mockList.length,
+      code: 200
+    }
+  },
+  getLeaveAuditResult: config => {
+    return {
+      data: {
+        zylx: 100,
+        bzylx: 200
+      },
+      code: 200
+    }
+  }
+}