From 322749627a725c79a881198490966120c980f8f0 Mon Sep 17 00:00:00 2001 From: bai <1643359946@qq.com> Date: Wed, 18 Oct 2023 08:15:48 +0800 Subject: [PATCH] =?UTF-8?q?2023=E5=B9=B410=E6=9C=8818=E6=97=A5=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E6=99=BA=E6=85=A7=E6=95=99=E5=AE=A4=E5=B1=95=E7=A4=BA?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.ts | 2 +- src/views/kc/jiaoshi/KcJiaoxuelouInfo.api.ts | 64 +++ src/views/kc/jiaoshi/KcJiaoxuelouInfo.data.ts | 51 ++ src/views/kc/jiaoshi/KcJiaoxuelouInfoList.vue | 173 +++++++ .../jiaoshi/KcZhihuijiaoshiAccessLog.api.ts | 64 +++ .../jiaoshi/KcZhihuijiaoshiAccessLog.data.ts | 143 ++++++ .../jiaoshi/KcZhihuijiaoshiAccessLogList.vue | 173 +++++++ .../jiaoshi/KcZhihuijiaoshiOperateLog.api.ts | 64 +++ .../jiaoshi/KcZhihuijiaoshiOperateLog.data.ts | 159 ++++++ .../jiaoshi/KcZhihuijiaoshiOperateLogList.vue | 173 +++++++ .../components/KcJiaoxuelouInfoForm.vue | 70 +++ .../components/KcJiaoxuelouInfoModal.vue | 66 +++ .../KcZhihuijiaoshiAccessLogForm.vue | 70 +++ .../KcZhihuijiaoshiAccessLogModal.vue | 66 +++ .../KcZhihuijiaoshiOperateLogForm.vue | 70 +++ .../KcZhihuijiaoshiOperateLogModal.vue | 66 +++ src/views/kc/jiaoshi/index.vue | 90 ++-- src/views/kc/jiaoshi/indexOld.vue | 460 ++++++++++++++++++ src/views/site/common/header.vue | 2 +- 19 files changed, 1978 insertions(+), 48 deletions(-) create mode 100644 src/views/kc/jiaoshi/KcJiaoxuelouInfo.api.ts create mode 100644 src/views/kc/jiaoshi/KcJiaoxuelouInfo.data.ts create mode 100644 src/views/kc/jiaoshi/KcJiaoxuelouInfoList.vue create mode 100644 src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.api.ts create mode 100644 src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.data.ts create mode 100644 src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLogList.vue create mode 100644 src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.api.ts create mode 100644 src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.data.ts create mode 100644 src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLogList.vue create mode 100644 src/views/kc/jiaoshi/components/KcJiaoxuelouInfoForm.vue create mode 100644 src/views/kc/jiaoshi/components/KcJiaoxuelouInfoModal.vue create mode 100644 src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogForm.vue create mode 100644 src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogModal.vue create mode 100644 src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogForm.vue create mode 100644 src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogModal.vue create mode 100644 src/views/kc/jiaoshi/indexOld.vue diff --git a/src/main.ts b/src/main.ts index de4c9d0..70dee34 100644 --- a/src/main.ts +++ b/src/main.ts @@ -43,7 +43,7 @@ async function bootstrap() { initAppConfigStore(); // 注册外部模块路由(注册online模块lib) - // registerPackages(app); + registerPackages(app); // 注册全局组件 registerGlobComp(app); diff --git a/src/views/kc/jiaoshi/KcJiaoxuelouInfo.api.ts b/src/views/kc/jiaoshi/KcJiaoxuelouInfo.api.ts new file mode 100644 index 0000000..4de20fc --- /dev/null +++ b/src/views/kc/jiaoshi/KcJiaoxuelouInfo.api.ts @@ -0,0 +1,64 @@ +import {defHttp} from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/jiaoshi/kcJiaoxuelouInfo/list', + save='/jiaoshi/kcJiaoxuelouInfo/add', + edit='/jiaoshi/kcJiaoxuelouInfo/edit', + deleteOne = '/jiaoshi/kcJiaoxuelouInfo/delete', + deleteBatch = '/jiaoshi/kcJiaoxuelouInfo/deleteBatch', + importExcel = '/jiaoshi/kcJiaoxuelouInfo/importExcel', + exportXls = '/jiaoshi/kcJiaoxuelouInfo/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/src/views/kc/jiaoshi/KcJiaoxuelouInfo.data.ts b/src/views/kc/jiaoshi/KcJiaoxuelouInfo.data.ts new file mode 100644 index 0000000..a3540e8 --- /dev/null +++ b/src/views/kc/jiaoshi/KcJiaoxuelouInfo.data.ts @@ -0,0 +1,51 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '删除状态', + align:"center", + dataIndex: 'delFlag' + }, + { + title: '教学楼名称', + align:"center", + dataIndex: 'jxlhName' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '删除状态', + field: 'delFlag', + component: 'InputNumber', + }, + { + label: '教学楼名称', + field: 'jxlhName', + component: 'Input', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false + }, +]; + + + +/** +* 流程表单调用这个方法获取formSchema +* @param param +*/ +export function getBpmFormSchema(_formData): FormSchema[]{ + // 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema + return formSchema; +} \ No newline at end of file diff --git a/src/views/kc/jiaoshi/KcJiaoxuelouInfoList.vue b/src/views/kc/jiaoshi/KcJiaoxuelouInfoList.vue new file mode 100644 index 0000000..8cc3847 --- /dev/null +++ b/src/views/kc/jiaoshi/KcJiaoxuelouInfoList.vue @@ -0,0 +1,173 @@ + + + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.api.ts b/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.api.ts new file mode 100644 index 0000000..28b60f1 --- /dev/null +++ b/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.api.ts @@ -0,0 +1,64 @@ +import {defHttp} from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/jiaoshi/kcZhihuijiaoshiAccessLog/list', + save='/jiaoshi/kcZhihuijiaoshiAccessLog/add', + edit='/jiaoshi/kcZhihuijiaoshiAccessLog/edit', + deleteOne = '/jiaoshi/kcZhihuijiaoshiAccessLog/delete', + deleteBatch = '/jiaoshi/kcZhihuijiaoshiAccessLog/deleteBatch', + importExcel = '/jiaoshi/kcZhihuijiaoshiAccessLog/importExcel', + exportXls = '/jiaoshi/kcZhihuijiaoshiAccessLog/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.data.ts b/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.data.ts new file mode 100644 index 0000000..f58185e --- /dev/null +++ b/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLog.data.ts @@ -0,0 +1,143 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '日志类型(1播放成功,2播放失败)', + align:"center", + dataIndex: 'logType' + }, + { + title: '教学楼编号', + align:"center", + dataIndex: 'jxlId' + }, + { + title: '教学楼名称', + align:"center", + dataIndex: 'jxlName' + }, + { + title: '教室编号', + align:"center", + dataIndex: 'jsbh' + }, + { + title: '教室名称', + align:"center", + dataIndex: 'jsmc' + }, + { + title: '课堂ID', + align:"center", + dataIndex: 'ketangbiaoId' + }, + { + title: '课堂名称', + align:"center", + dataIndex: 'ketangbiaoName' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "日志类型(1播放成功,2播放失败)", + field: 'logType', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教学楼编号", + field: 'jxlId', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教学楼名称", + field: 'jxlName', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教室编号", + field: 'jsbh', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教室名称", + field: 'jsmc', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "课堂ID", + field: 'ketangbiaoId', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "课堂名称", + field: 'ketangbiaoName', + component: 'Input', + colProps: {span: 6}, + }, +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '日志类型(1播放成功,2播放失败)', + field: 'logType', + component: 'InputNumber', + }, + { + label: '教学楼编号', + field: 'jxlId', + component: 'Input', + }, + { + label: '教学楼名称', + field: 'jxlName', + component: 'Input', + }, + { + label: '教室编号', + field: 'jsbh', + component: 'Input', + }, + { + label: '教室名称', + field: 'jsmc', + component: 'Input', + }, + { + label: '课堂ID', + field: 'ketangbiaoId', + component: 'Input', + }, + { + label: '课堂名称', + field: 'ketangbiaoName', + component: 'Input', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false + }, +]; + + + +/** +* 流程表单调用这个方法获取formSchema +* @param param +*/ +export function getBpmFormSchema(_formData): FormSchema[]{ + // 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema + return formSchema; +} \ No newline at end of file diff --git a/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLogList.vue b/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLogList.vue new file mode 100644 index 0000000..bfc247d --- /dev/null +++ b/src/views/kc/jiaoshi/KcZhihuijiaoshiAccessLogList.vue @@ -0,0 +1,173 @@ + + + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.api.ts b/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.api.ts new file mode 100644 index 0000000..80dde33 --- /dev/null +++ b/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.api.ts @@ -0,0 +1,64 @@ +import {defHttp} from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/jiaoshi/kcZhihuijiaoshiOperateLog/list', + save='/jiaoshi/kcZhihuijiaoshiOperateLog/add', + edit='/jiaoshi/kcZhihuijiaoshiOperateLog/edit', + deleteOne = '/jiaoshi/kcZhihuijiaoshiOperateLog/delete', + deleteBatch = '/jiaoshi/kcZhihuijiaoshiOperateLog/deleteBatch', + importExcel = '/jiaoshi/kcZhihuijiaoshiOperateLog/importExcel', + exportXls = '/jiaoshi/kcZhihuijiaoshiOperateLog/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.data.ts b/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.data.ts new file mode 100644 index 0000000..a15ae37 --- /dev/null +++ b/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLog.data.ts @@ -0,0 +1,159 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '日志类型(1自动执行日志,2手动操作操作日志)', + align:"center", + dataIndex: 'logType' + }, + { + title: '教学楼编号', + align:"center", + dataIndex: 'jxlId' + }, + { + title: '教学楼名称', + align:"center", + dataIndex: 'jxlName' + }, + { + title: '教室编号', + align:"center", + dataIndex: 'jsbh' + }, + { + title: '教室名称', + align:"center", + dataIndex: 'jsmc' + }, + { + title: '操作类型(1开启,0关闭)', + align:"center", + dataIndex: 'operateType' + }, + { + title: '操作结果', + align:"center", + dataIndex: 'operateUrl' + }, + { + title: '操作结果', + align:"center", + dataIndex: 'operateResult' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "日志类型(1自动执行日志,2手动操作操作日志)", + field: 'logType', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教学楼编号", + field: 'jxlId', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教学楼名称", + field: 'jxlName', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教室编号", + field: 'jsbh', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "教室名称", + field: 'jsmc', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "操作类型(1开启,0关闭)", + field: 'operateType', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "操作结果", + field: 'operateUrl', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "操作结果", + field: 'operateResult', + component: 'Input', + colProps: {span: 6}, + }, +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '日志类型(1自动执行日志,2手动操作操作日志)', + field: 'logType', + component: 'InputNumber', + }, + { + label: '教学楼编号', + field: 'jxlId', + component: 'Input', + }, + { + label: '教学楼名称', + field: 'jxlName', + component: 'Input', + }, + { + label: '教室编号', + field: 'jsbh', + component: 'Input', + }, + { + label: '教室名称', + field: 'jsmc', + component: 'Input', + }, + { + label: '操作类型(1开启,0关闭)', + field: 'operateType', + component: 'Input', + }, + { + label: '操作结果', + field: 'operateUrl', + component: 'InputTextArea', + }, + { + label: '操作结果', + field: 'operateResult', + component: 'InputTextArea', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false + }, +]; + + + +/** +* 流程表单调用这个方法获取formSchema +* @param param +*/ +export function getBpmFormSchema(_formData): FormSchema[]{ + // 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema + return formSchema; +} \ No newline at end of file diff --git a/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLogList.vue b/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLogList.vue new file mode 100644 index 0000000..f9f5300 --- /dev/null +++ b/src/views/kc/jiaoshi/KcZhihuijiaoshiOperateLogList.vue @@ -0,0 +1,173 @@ + + + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/components/KcJiaoxuelouInfoForm.vue b/src/views/kc/jiaoshi/components/KcJiaoxuelouInfoForm.vue new file mode 100644 index 0000000..dda869e --- /dev/null +++ b/src/views/kc/jiaoshi/components/KcJiaoxuelouInfoForm.vue @@ -0,0 +1,70 @@ + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/components/KcJiaoxuelouInfoModal.vue b/src/views/kc/jiaoshi/components/KcJiaoxuelouInfoModal.vue new file mode 100644 index 0000000..8516971 --- /dev/null +++ b/src/views/kc/jiaoshi/components/KcJiaoxuelouInfoModal.vue @@ -0,0 +1,66 @@ + + + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogForm.vue b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogForm.vue new file mode 100644 index 0000000..16a7f4e --- /dev/null +++ b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogForm.vue @@ -0,0 +1,70 @@ + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogModal.vue b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogModal.vue new file mode 100644 index 0000000..17bf4c1 --- /dev/null +++ b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiAccessLogModal.vue @@ -0,0 +1,66 @@ + + + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogForm.vue b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogForm.vue new file mode 100644 index 0000000..6539764 --- /dev/null +++ b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogForm.vue @@ -0,0 +1,70 @@ + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogModal.vue b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogModal.vue new file mode 100644 index 0000000..49868cb --- /dev/null +++ b/src/views/kc/jiaoshi/components/KcZhihuijiaoshiOperateLogModal.vue @@ -0,0 +1,66 @@ + + + + + \ No newline at end of file diff --git a/src/views/kc/jiaoshi/index.vue b/src/views/kc/jiaoshi/index.vue index 85779f2..368d29c 100644 --- a/src/views/kc/jiaoshi/index.vue +++ b/src/views/kc/jiaoshi/index.vue @@ -28,7 +28,24 @@ - +
+ + + +
名称:{{ item.jxlName }}
+
总数:{{ item.child.length }}
+ + + +
正在上课的教室{{ item.child.filter(x => x?.nowIsClass).length || 0}}间
+
正常直播的教室{{ item.child.filter(x => x?.child['教师近景']?.isOnLine).length || 0}}间
+
没开启直播的教室{{ item.child.filter(x => !x?.child['教师近景']?.isOnLine).length || 0 }}间
+
+
+
+
+ +