diff --git a/src/hooks/system/useMethods.ts b/src/hooks/system/useMethods.ts index e46724b..9c1b274 100644 --- a/src/hooks/system/useMethods.ts +++ b/src/hooks/system/useMethods.ts @@ -78,7 +78,19 @@ export function useMethods() { createMessage.error(fileInfo.message || `${data.file.name} 导入失败`); //update-end---author:wangshuai ---date:20221121 for:[VUEN-2827]导入无权限,提示图标错误------------ } else { - createMessage.success(fileInfo.message || `${data.file.name} 文件上传成功`); + // createMessage.success(fileInfo.message || `${data.file.name} 文件上传成功`); + // createMessage.success({ + // content:`
${fileInfo.message}
`, + // style: { + // marginTop: '20vh', + // }, + // }); + createWarningModal({ + centered: false, + content: `
+ ${fileInfo.message}
+
`, + }); } } catch (error) { console.log('导入的数据异常', error); diff --git a/src/views/kc/kcZzThpjb/KcZzThpjb.api.ts b/src/views/kc/kcZzThpjb/KcZzThpjb.api.ts new file mode 100644 index 0000000..52b5618 --- /dev/null +++ b/src/views/kc/kcZzThpjb/KcZzThpjb.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/kcZzThpjb/kcZzThpjb/list', + save='/kcZzThpjb/kcZzThpjb/add', + edit='/kcZzThpjb/kcZzThpjb/edit', + deleteOne = '/kcZzThpjb/kcZzThpjb/delete', + deleteBatch = '/kcZzThpjb/kcZzThpjb/deleteBatch', + importExcel = '/kcZzThpjb/kcZzThpjb/importExcel', + exportXls = '/kcZzThpjb/kcZzThpjb/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 }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +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 + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/kc/kcZzThpjb/KcZzThpjb.data.ts b/src/views/kc/kcZzThpjb/KcZzThpjb.data.ts new file mode 100644 index 0000000..fc41cc7 --- /dev/null +++ b/src/views/kc/kcZzThpjb/KcZzThpjb.data.ts @@ -0,0 +1,229 @@ +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: 'kcbh' + }, + { + title: '课程名称', + align: "center", + dataIndex: 'kcmc' + }, + { + title: '授课教师', + align: "center", + dataIndex: 'skjs' + }, + { + title: '授课时间', + align: "center", + dataIndex: 'sksj', + customRender:({text}) =>{ + return !text?"":(text.length>10?text.substr(0,10):text); + }, + }, + { + title: '上课地点', + align: "center", + dataIndex: 'skdd' + }, + { + title: '使用教材', + align: "center", + dataIndex: 'syjc' + }, + { + title: '授课对象', + align: "center", + dataIndex: 'skdx' + }, + { + title: '授课教授', + align: "center", + dataIndex: 'skjiaoshou' + }, + { + title: '教学理解', + align: "center", + dataIndex: 'jxlj' + }, + { + title: '教学态度', + align: "center", + dataIndex: 'jxtd' + }, + { + title: '教学过程', + align: "center", + dataIndex: 'jxgc' + }, + { + title: '教学效果', + align: "center", + dataIndex: 'jxxg' + }, + { + title: '教学特殊', + align: "center", + dataIndex: 'jxts' + }, + { + title: '总分', + align: "center", + dataIndex: 'zf' + }, + { + title: '优点或建议', + align: "center", + dataIndex: 'ydhjy' + }, + { + title: '评价时间', + align: "center", + sorter: true, + dataIndex: 'pjsj' + }, +]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "课程编号", + field: 'kcbh', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "课程名称", + field: 'kcmc', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课教师", + field: 'skjs', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课时间", + field: 'sksj', + component: 'DatePicker', + colProps: {span: 6}, + }, + { + label: "上课地点", + field: 'skdd', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "评价时间", + field: 'pjsj', + component: 'DatePicker', + componentProps: { + showTime: true, + }, + colProps: {span: 6}, + }, +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '课程编号', + field: 'kcbh', + component: 'Input', + }, + { + label: '课程名称', + field: 'kcmc', + component: 'Input', + }, + { + label: '授课教师', + field: 'skjs', + component: 'Input', + }, + { + label: '授课时间', + field: 'sksj', + component: 'DatePicker', + }, + { + label: '上课地点', + field: 'skdd', + component: 'Input', + }, + { + label: '使用教材', + field: 'syjc', + component: 'Input', + }, + { + label: '授课对象', + field: 'skdx', + component: 'Input', + }, + { + label: '授课教授', + field: 'skjiaoshou', + component: 'Input', + }, + { + label: '教学理解', + field: 'jxlj', + component: 'Input', + }, + { + label: '教学态度', + field: 'jxtd', + component: 'Input', + }, + { + label: '教学过程', + field: 'jxgc', + component: 'Input', + }, + { + label: '教学效果', + field: 'jxxg', + component: 'Input', + }, + { + label: '教学特殊', + field: 'jxts', + component: 'Input', + }, + { + label: '总分', + field: 'zf', + component: 'Input', + }, + { + label: '优点或建议', + field: 'ydhjy', + component: 'Input', + }, + { + label: '评价时间', + field: 'pjsj', + component: 'DatePicker', + componentProps: { + showTime: true, + valueFormat: 'YYYY-MM-DD HH:mm:ss' + }, + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/src/views/kc/kcZzThpjb/KcZzThpjbList.vue b/src/views/kc/kcZzThpjb/KcZzThpjbList.vue new file mode 100644 index 0000000..ef0d727 --- /dev/null +++ b/src/views/kc/kcZzThpjb/KcZzThpjbList.vue @@ -0,0 +1,259 @@ + + + + + diff --git a/src/views/kc/kcZzThpjb/components/KcZzThpjbForm.vue b/src/views/kc/kcZzThpjb/components/KcZzThpjbForm.vue new file mode 100644 index 0000000..c955bfc --- /dev/null +++ b/src/views/kc/kcZzThpjb/components/KcZzThpjbForm.vue @@ -0,0 +1,217 @@ + + + + + diff --git a/src/views/kc/kcZzThpjb/components/KcZzThpjbModal.vue b/src/views/kc/kcZzThpjb/components/KcZzThpjbModal.vue new file mode 100644 index 0000000..3ffbe5e --- /dev/null +++ b/src/views/kc/kcZzThpjb/components/KcZzThpjbModal.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/views/kc/kcZzXstkb/KcZzXstkb.api.ts b/src/views/kc/kcZzXstkb/KcZzXstkb.api.ts new file mode 100644 index 0000000..e245cae --- /dev/null +++ b/src/views/kc/kcZzXstkb/KcZzXstkb.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/kcZzXstkb/kcZzXstkb/list', + save='/kcZzXstkb/kcZzXstkb/add', + edit='/kcZzXstkb/kcZzXstkb/edit', + deleteOne = '/kcZzXstkb/kcZzXstkb/delete', + deleteBatch = '/kcZzXstkb/kcZzXstkb/deleteBatch', + importExcel = '/kcZzXstkb/kcZzXstkb/importExcel', + exportXls = '/kcZzXstkb/kcZzXstkb/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 }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +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 + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/kc/kcZzXstkb/KcZzXstkb.data.ts b/src/views/kc/kcZzXstkb/KcZzXstkb.data.ts new file mode 100644 index 0000000..0914f31 --- /dev/null +++ b/src/views/kc/kcZzXstkb/KcZzXstkb.data.ts @@ -0,0 +1,300 @@ +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: 'kcbh' + }, + { + title: '课程名称', + align: "center", + dataIndex: 'kcmc' + }, + { + title: '授课教师', + align: "center", + dataIndex: 'skjs' + }, + { + title: '授课时间', + align: "center", + dataIndex: 'sksj', + customRender:({text}) =>{ + return !text?"":(text.length>10?text.substr(0,10):text); + }, + }, + { + title: '上课地点', + align: "center", + dataIndex: 'skdd' + }, + { + title: '听课教师姓名', + align: "center", + dataIndex: 'tkjsxm' + }, + { + title: '听课教师工号', + align: "center", + dataIndex: 'tkjsgh' + }, + { + title: '听课时间', + align: "center", + dataIndex: 'tksj' + }, + { + title: '1.声音和画面情况', + align: "center", + dataIndex: 'ans1_dictText' + }, + { + title: '2.ppt等课件情况', + align: "center", + dataIndex: 'ans2_dictText' + }, + { + title: '3.教师出镜情况', + align: "center", + dataIndex: 'ans3_dictText' + }, + { + title: '4.教师仪态仪表方面', + align: "center", + dataIndex: 'ans4_dictText' + }, + { + title: '5.教师所在环境情况', + align: "center", + dataIndex: 'ans5_dictText' + }, + { + title: '6.学生出席情况', + align: "center", + dataIndex: 'ans6_dictText' + }, + { + title: '7.课堂秩序情况', + align: "center", + dataIndex: 'ans7_dictText' + }, + { + title: '8.课堂教学互动情况', + align: "center", + dataIndex: 'ans8_dictText' + }, + { + title: '9.过程性评价情况', + align: "center", + dataIndex: 'ans9_dictText' + }, + { + title: '总体评价', + align: "center", + dataIndex: 'ztpj_dictText' + }, + { + title: '您认为课堂值得肯定的方面或者需要改进的方面', + align: "center", + dataIndex: 'pjnr' + }, +]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "课程编号", + field: 'kcbh', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "课程名称", + field: 'kcmc', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课教师", + field: 'skjs', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课时间", + field: 'sksj', + component: 'DatePicker', + colProps: {span: 6}, + }, + { + label: "上课地点", + field: 'skdd', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "听课教师姓名", + field: 'tkjsxm', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "听课教师工号", + field: 'tkjsgh', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "听课时间", + field: 'tksj', + component: 'DatePicker', + componentProps: { + showTime: true, + }, + colProps: {span: 6}, + }, +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '课程编号', + field: 'kcbh', + component: 'Input', + }, + { + label: '课程名称', + field: 'kcmc', + component: 'Input', + }, + { + label: '授课教师', + field: 'skjs', + component: 'Input', + }, + { + label: '授课时间', + field: 'sksj', + component: 'DatePicker', + }, + { + label: '上课地点', + field: 'skdd', + component: 'Input', + }, + { + label: '听课教师姓名', + field: 'tkjsxm', + component: 'Input', + }, + { + label: '听课教师工号', + field: 'tkjsgh', + component: 'Input', + }, + { + label: '听课时间', + field: 'tksj', + component: 'DatePicker', + componentProps: { + showTime: true, + valueFormat: 'YYYY-MM-DD HH:mm:ss' + }, + }, + { + label: '1.声音和画面情况', + field: 'ans1', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '2.ppt等课件情况', + field: 'ans2', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '3.教师出镜情况', + field: 'ans3', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '4.教师仪态仪表方面', + field: 'ans4', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '5.教师所在环境情况', + field: 'ans5', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '6.学生出席情况', + field: 'ans6', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '7.课堂秩序情况', + field: 'ans7', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '8.课堂教学互动情况', + field: 'ans8', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "fix_dict" + }, + }, + { + label: '9.过程性评价情况', + field: 'ans9', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "fix_dict" + }, + }, + { + label: '总体评价', + field: 'ztpj', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '您认为课堂值得肯定的方面或者需要改进的方面', + field: 'pjnr', + component: 'InputTextArea', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/src/views/kc/kcZzXstkb/KcZzXstkbList.vue b/src/views/kc/kcZzXstkb/KcZzXstkbList.vue new file mode 100644 index 0000000..94ef581 --- /dev/null +++ b/src/views/kc/kcZzXstkb/KcZzXstkbList.vue @@ -0,0 +1,269 @@ + + + + + diff --git a/src/views/kc/kcZzXstkb/components/KcZzXstkbForm.vue b/src/views/kc/kcZzXstkb/components/KcZzXstkbForm.vue new file mode 100644 index 0000000..5cf0c55 --- /dev/null +++ b/src/views/kc/kcZzXstkb/components/KcZzXstkbForm.vue @@ -0,0 +1,238 @@ + + + + + diff --git a/src/views/kc/kcZzXstkb/components/KcZzXstkbModal.vue b/src/views/kc/kcZzXstkb/components/KcZzXstkbModal.vue new file mode 100644 index 0000000..2ff2cfe --- /dev/null +++ b/src/views/kc/kcZzXstkb/components/KcZzXstkbModal.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/views/kc/kcZzYbtkb/KcZzYbtkb.api.ts b/src/views/kc/kcZzYbtkb/KcZzYbtkb.api.ts new file mode 100644 index 0000000..85ee9fc --- /dev/null +++ b/src/views/kc/kcZzYbtkb/KcZzYbtkb.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/kcZzYbtkb/kcZzYbtkb/list', + save='/kcZzYbtkb/kcZzYbtkb/add', + edit='/kcZzYbtkb/kcZzYbtkb/edit', + deleteOne = '/kcZzYbtkb/kcZzYbtkb/delete', + deleteBatch = '/kcZzYbtkb/kcZzYbtkb/deleteBatch', + importExcel = '/kcZzYbtkb/kcZzYbtkb/importExcel', + exportXls = '/kcZzYbtkb/kcZzYbtkb/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 }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +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 + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/kc/kcZzYbtkb/KcZzYbtkb.data.ts b/src/views/kc/kcZzYbtkb/KcZzYbtkb.data.ts new file mode 100644 index 0000000..09ef9fa --- /dev/null +++ b/src/views/kc/kcZzYbtkb/KcZzYbtkb.data.ts @@ -0,0 +1,281 @@ +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: 'kcbh' + }, + { + title: '课程名称', + align: "center", + dataIndex: 'kcmc' + }, + { + title: '授课教师', + align: "center", + dataIndex: 'skjs' + }, + { + title: '授课时间', + align: "center", + dataIndex: 'skrq', + customRender:({text}) =>{ + return !text?"":(text.length>10?text.substr(0,10):text); + }, + }, + { + title: '上课地点', + align: "center", + dataIndex: 'skdd' + }, + { + title: '听课教师编号', + align: "center", + dataIndex: 'tkjsbh' + }, + { + title: '听课教师姓名', + align: "center", + dataIndex: 'tkjsxm' + }, + { + title: '评课时间', + align: "center", + dataIndex: 'pksj' + }, + { + title: '授课有启发性,能给予学生思考、联想、创造的启迪', + align: "center", + dataIndex: 'ans1_dictText' + }, + { + title: '能有效利用各种教学媒体,课件或板书使用效果好', + align: "center", + dataIndex: 'ans2_dictText' + }, + { + title: '仪表得体,按时上下课,严格要求学生', + align: "center", + dataIndex: 'ans3_dictText' + }, + { + title: '讲课有热情,精神饱满,能调动学生情绪,课堂气氛活跃', + align: "center", + dataIndex: 'ans4_dictText' + }, + { + title: '教学目标明确,内容丰富,重点突出,言语表达清楚。', + align: "center", + dataIndex: 'ans5_dictText' + }, + { + title: '无迟到、早退、旷课现象', + align: "center", + dataIndex: 'ans6_dictText' + }, + { + title: '课堂教学秩序好,无喧闹、打瞌睡、发短信、玩手机等现象', + align: "center", + dataIndex: 'ans7_dictText' + }, + { + title: '上课认真听讲、积极思考、主动与老师交流互动', + align: "center", + dataIndex: 'ans8_dictText' + }, + { + title: '课堂教学总体印象评价', + align: "center", + dataIndex: 'ans9_dictText' + }, + { + title: '请填写对课堂内容以及其他方面的具体意见或建议', + align: "center", + dataIndex: 'ans10' + }, +]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "课程编号", + field: 'kcbh', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "课程名称", + field: 'kcmc', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课教师", + field: 'skjs', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课时间", + field: 'skrq', + component: 'DatePicker', + colProps: {span: 6}, + }, + { + label: "听课教师编号", + field: 'tkjsbh', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "听课教师姓名", + field: 'tkjsxm', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "评课时间", + field: 'pksj', + component: 'DatePicker', + componentProps: { + showTime: true, + }, + colProps: {span: 6}, + }, +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '课程编号', + field: 'kcbh', + component: 'Input', + }, + { + label: '课程名称', + field: 'kcmc', + component: 'Input', + }, + { + label: '授课教师', + field: 'skjs', + component: 'Input', + }, + { + label: '授课时间', + field: 'skrq', + component: 'DatePicker', + }, + { + label: '上课地点', + field: 'skdd', + component: 'Input', + }, + { + label: '听课教师编号', + field: 'tkjsbh', + component: 'Input', + }, + { + label: '听课教师姓名', + field: 'tkjsxm', + component: 'Input', + }, + { + label: '评课时间', + field: 'pksj', + component: 'DatePicker', + componentProps: { + showTime: true, + valueFormat: 'YYYY-MM-DD HH:mm:ss' + }, + }, + { + label: '授课有启发性,能给予学生思考、联想、创造的启迪', + field: 'ans1', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '能有效利用各种教学媒体,课件或板书使用效果好', + field: 'ans2', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '仪表得体,按时上下课,严格要求学生', + field: 'ans3', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '讲课有热情,精神饱满,能调动学生情绪,课堂气氛活跃', + field: 'ans4', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '教学目标明确,内容丰富,重点突出,言语表达清楚。', + field: 'ans5', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '无迟到、早退、旷课现象', + field: 'ans6', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '课堂教学秩序好,无喧闹、打瞌睡、发短信、玩手机等现象', + field: 'ans7', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '上课认真听讲、积极思考、主动与老师交流互动', + field: 'ans8', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '课堂教学总体印象评价', + field: 'ans9', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "five_dict" + }, + }, + { + label: '请填写对课堂内容以及其他方面的具体意见或建议', + field: 'ans10', + component: 'InputTextArea', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/src/views/kc/kcZzYbtkb/KcZzYbtkbList.vue b/src/views/kc/kcZzYbtkb/KcZzYbtkbList.vue new file mode 100644 index 0000000..ba9f9c7 --- /dev/null +++ b/src/views/kc/kcZzYbtkb/KcZzYbtkbList.vue @@ -0,0 +1,264 @@ + + + + + diff --git a/src/views/kc/kcZzYbtkb/components/KcZzYbtkbForm.vue b/src/views/kc/kcZzYbtkb/components/KcZzYbtkbForm.vue new file mode 100644 index 0000000..701658d --- /dev/null +++ b/src/views/kc/kcZzYbtkb/components/KcZzYbtkbForm.vue @@ -0,0 +1,232 @@ + + + + + diff --git a/src/views/kc/kcZzYbtkb/components/KcZzYbtkbModal.vue b/src/views/kc/kcZzYbtkb/components/KcZzYbtkbModal.vue new file mode 100644 index 0000000..3b52023 --- /dev/null +++ b/src/views/kc/kcZzYbtkb/components/KcZzYbtkbModal.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/views/kc/szkc/KcKechengbiao.api.ts b/src/views/kc/szkc/KcKechengbiao.api.ts new file mode 100644 index 0000000..9b5ee7e --- /dev/null +++ b/src/views/kc/szkc/KcKechengbiao.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/ktgl/kcKechengbiao/list', + save='/ktgl/kcKechengbiao/add', + edit='/ktgl/kcKechengbiao/edit', + deleteOne = '/ktgl/kcKechengbiao/delete', + deleteBatch = '/ktgl/kcKechengbiao/deleteBatch', + importExcel = '/ktgl/kcKechengbiao/importExcel', + exportXls = '/ktgl/kcKechengbiao/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 }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +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 + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/kc/szkc/KcKechengbiao.data.ts b/src/views/kc/szkc/KcKechengbiao.data.ts new file mode 100644 index 0000000..d152a09 --- /dev/null +++ b/src/views/kc/szkc/KcKechengbiao.data.ts @@ -0,0 +1,418 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +// import { render } from '/@/utils/common/renderUtils'; +import { JVxeColumn, JVxeTypes } from '/@/components/jeecg/JVxeTable/types'; +//列表数据 + +export const columns = ([ + { + title: '课程编号', + align: "left", + width: '300px', + key: 'kcbh', + }, + { + title: '课程名称', + align: "left", + key: 'kcmc' + }, + { + title: '授课教师', + align: "left", + key: 'skjs' + }, + { + title: '学科人数', + align: "left", + width: '80px', + key: 'xkrs' + }, + { + title: '开课单位', + align: "left", + width: '100px', + key: 'kkdw_dictText' + }, + { + title: '课程性质', + align: "left", + width: '105px', + key: 'kcxz_dictText' + }, + { + title: '上课地点', + align: "left", + width: '100px', + key: 'skdd' + }, + { + title: '上课周次', + align: "left", + width: '100px', + key: 'jkzc_dictText' + }, + { + title: '节次', + align: "left", + width: '70px', + key: 'hh_dictText' + }, + { + title: '星期', + align: "left", + width: '70px', + key: 'week_dictText' + }, + { + title: '学分', + align: "left", + width: '50px', + key: 'xf' + }, + // { + // title: '操作', + // key: 'action', + // type: JVxeTypes.slot, + // align: 'center', + // slotName: 'myAction', + // }, + +]); + + +// export const columns: BasicColumn[] = [ +// { +// title: 'id', +// align: "center", +// width: '0', +// dataIndex: 'id', +// // ifShow: false, +// }, +// { +// title: '课程号', +// align: "center", +// width: '300px', +// dataIndex: 'kcbh' +// }, +// { +// title: '课程名称', +// align: "center", +// dataIndex: 'kcmc' +// }, +// { +// title: '授课教师', +// align: "center", +// dataIndex: 'skjs' +// }, +// { +// title: '学科人数', +// align: "center", +// width: '80px', +// dataIndex: 'xkrs' +// }, +// { +// title: '开课单位', +// align: "center", +// width: '100px', +// dataIndex: 'kkdw_dictText' +// }, +// { +// title: '课程性质', +// align: "center", +// width: '105px', +// dataIndex: 'kcxz_dictText' +// }, +// { +// title: '上课地点', +// align: "center", +// width: '100px', +// dataIndex: 'skdd' +// }, +// { +// title: '上课周次', +// align: "center", +// width: '100px', +// dataIndex: 'jkzc_dictText' +// }, +// { +// title: '节次', +// align: "center", +// width: '70px', +// dataIndex: 'hh_dictText' +// }, +// { +// title: '星期', +// align: "center", +// width: '70px', +// dataIndex: 'week_dictText' +// }, +// { +// title: '学分', +// align: "center", +// width: '50px', +// dataIndex: 'xf' +// }, +// { +// title: '是否出镜', +// align: "center", +// dataIndex: 'sfcj', +// edit: true, +// editComponent: 'Select', +// // editComponentProps: { +// // // //选中 +// // checkedChildren: "是-", +// // // checkedValue: 0, +// // // //未选中 +// // unCheckedChildren:'否-', +// // // unCheckedValue: 1, +// // // onClick: (checked: boolean | string | number, event: Event) => { +// // // event.stopPropagation(); +// // // console.log('选择后回调',checked,event); + +// // // } +// // }, +// // editValueMap: (value) => value == '0'?'是':'否', +// // editValueMap: (value) => value?'0':'1', +// // format: (text) => ,C +// editComponentProps: { +// options: [ +// { label: '是', value: 0, }, +// { label: '否', value: 1, }, +// ], +// }, +// // customRender: (r) => r.text == 0?'是':'否' +// }, + + +// { +// title: '上课形式', +// align: "center", +// dataIndex: 'skxs', +// edit: true, +// editComponent: 'Select', +// editComponentProps: { +// options: [ +// { label: '线上', value: 0, }, +// { label: '线下', value: 1, }, +// { label: '线上线下混合', value: 2, }, +// ], +// }, +// // customRender: (r) => r.text == 0?'线上':r.text == 1?'线下':'线上线下混合' +// }, +// ]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "课程名称", + field: 'kcmc', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课教师", + field: 'skjs', + component: 'JDictSelectTag', + componentProps:{ + }, + colProps: {span: 6}, + }, + { + label: "开课单位", + field: 'kkdw', + component: 'JDictSelectTag', + componentProps:{ + }, + colProps: {span: 6}, + }, + { + label: "课程性质", + field: 'kcxz', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "节次", + field: 'hh', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "skjc" + }, + colProps: {span: 6}, + }, + { + label: "星期几", + field: 'week', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "week" + }, + colProps: {span: 6}, + }, +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '课程编号', + field: 'kcbh', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入课程编号!'}, + {...rules.duplicateCheckRule('kc_kechengbiao', 'kcbh',model,schema)[0]}, + ]; + }, + }, + { + label: '课程名称', + field: 'kcmc', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入课程名称!'}, + ]; + }, + }, + { + label: '授课教师', + field: 'skjs', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入授课教师!'}, + ]; + }, + }, + { + label: '学科人数', + field: 'xkrs', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入学科人数!'}, + ]; + }, + }, + { + label: '开课单位', + field: 'kkdw', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入开课单位!'}, + ]; + }, + }, + { + label: '课程性质', + field: 'kcxz', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入课程性质!'}, + ]; + }, + }, + { + label: '上课地点', + field: 'skdd', + component: 'Input', + }, + { + label: '上课周次', + field: 'jkzc', + component: 'JSelectMultiple', + componentProps:{ + dictCode: "skzc" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入上课周次!'}, + ]; + }, + }, + { + label: '节次', + field: 'hh', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "skjc" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入节次!'}, + ]; + }, + }, + { + label: '星期几', + field: 'week', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "week" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入星期几!'}, + ]; + }, + }, + { + label: '直播方式', + field: 'zbfs', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "skpt" + }, + }, + { + label: '会议号', + field: 'hyh', + component: 'Input', + }, + { + label: '会议密码', + field: 'hymm', + component: 'Input', + }, + { + label: '课程链接', + field: 'kclj', + component: 'Input', + }, + { + label: '学分', + field: 'xf', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入学分!'}, + ]; + }, + }, + { + label: '是否出镜,0-出镜,1-不出镜', + field: 'sfcj', + component: 'InputNumber', + }, + { + label: '上课形式,0-线上,1-线下,2-线上线下混合', + field: 'skxs', + component: 'InputNumber', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/src/views/kc/szkc/KcKechengbiaoList.vue b/src/views/kc/szkc/KcKechengbiaoList.vue new file mode 100644 index 0000000..696afe1 --- /dev/null +++ b/src/views/kc/szkc/KcKechengbiaoList.vue @@ -0,0 +1,254 @@ + + + + + diff --git a/src/views/kc/szkc/components/KcKechengbiaoForm.vue b/src/views/kc/szkc/components/KcKechengbiaoForm.vue new file mode 100644 index 0000000..33faafd --- /dev/null +++ b/src/views/kc/szkc/components/KcKechengbiaoForm.vue @@ -0,0 +1,291 @@ + + + + + diff --git a/src/views/kc/szkc/components/KcKechengbiaoModal.vue b/src/views/kc/szkc/components/KcKechengbiaoModal.vue new file mode 100644 index 0000000..6d42e3a --- /dev/null +++ b/src/views/kc/szkc/components/KcKechengbiaoModal.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/views/kc/szkc/components/XzKechengbiao.api.ts b/src/views/kc/szkc/components/XzKechengbiao.api.ts new file mode 100644 index 0000000..31abb7b --- /dev/null +++ b/src/views/kc/szkc/components/XzKechengbiao.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/ktgl/kcKechengbiao/listGroupBy', + save='/ktgl/kcKechengbiao/editYichu', + edit='/ktgl/kcKechengbiao/editSzkc', + deleteOne = '/ktgl/kcKechengbiao/delete', + deleteBatch = '/ktgl/kcKechengbiao/deleteBatch', + importExcel = '/ktgl/kcKechengbiao/importExcel', + exportXls = '/ktgl/kcKechengbiao/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 }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +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 + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/kc/szkc/components/XzKechengbiao.data.ts b/src/views/kc/szkc/components/XzKechengbiao.data.ts new file mode 100644 index 0000000..4603063 --- /dev/null +++ b/src/views/kc/szkc/components/XzKechengbiao.data.ts @@ -0,0 +1,381 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +// import { render } from '/@/utils/common/renderUtils'; +import { JVxeColumn, JVxeTypes } from '/@/components/jeecg/JVxeTable/types'; +//列表数据 + +export const columns = ([ + { + title: '课程编号', + align: "left", + width: '300px', + key: 'kcbh', + }, + { + title: '课程名称', + align: "left", + key: 'kcmc' + }, + // { + // title: '授课教师', + // align: "left", + // key: 'skjs' + // }, + { + title: '开课单位', + align: "left", + width: '100px', + key: 'kkdw' + }, + { + title: '课程性质', + align: "left", + width: '105px', + key: 'kcxz_dictText' + }, + // { + // title: '上课地点', + // align: "left", + // width: '100px', + // key: 'skdd' + // }, + +]); + + +// export const columns: BasicColumn[] = [ +// { +// title: 'id', +// align: "center", +// width: '0', +// dataIndex: 'id', +// // ifShow: false, +// }, +// { +// title: '课程号', +// align: "center", +// width: '300px', +// dataIndex: 'kcbh' +// }, +// { +// title: '课程名称', +// align: "center", +// dataIndex: 'kcmc' +// }, +// { +// title: '授课教师', +// align: "center", +// dataIndex: 'skjs' +// }, +// { +// title: '学科人数', +// align: "center", +// width: '80px', +// dataIndex: 'xkrs' +// }, +// { +// title: '开课单位', +// align: "center", +// width: '100px', +// dataIndex: 'kkdw_dictText' +// }, +// { +// title: '课程性质', +// align: "center", +// width: '105px', +// dataIndex: 'kcxz_dictText' +// }, +// { +// title: '上课地点', +// align: "center", +// width: '100px', +// dataIndex: 'skdd' +// }, +// { +// title: '上课周次', +// align: "center", +// width: '100px', +// dataIndex: 'jkzc_dictText' +// }, +// { +// title: '节次', +// align: "center", +// width: '70px', +// dataIndex: 'hh_dictText' +// }, +// { +// title: '星期', +// align: "center", +// width: '70px', +// dataIndex: 'week_dictText' +// }, +// { +// title: '学分', +// align: "center", +// width: '50px', +// dataIndex: 'xf' +// }, +// { +// title: '是否出镜', +// align: "center", +// dataIndex: 'sfcj', +// edit: true, +// editComponent: 'Select', +// // editComponentProps: { +// // // //选中 +// // checkedChildren: "是-", +// // // checkedValue: 0, +// // // //未选中 +// // unCheckedChildren:'否-', +// // // unCheckedValue: 1, +// // // onClick: (checked: boolean | string | number, event: Event) => { +// // // event.stopPropagation(); +// // // console.log('选择后回调',checked,event); + +// // // } +// // }, +// // editValueMap: (value) => value == '0'?'是':'否', +// // editValueMap: (value) => value?'0':'1', +// // format: (text) => ,C +// editComponentProps: { +// options: [ +// { label: '是', value: 0, }, +// { label: '否', value: 1, }, +// ], +// }, +// // customRender: (r) => r.text == 0?'是':'否' +// }, + + +// { +// title: '上课形式', +// align: "center", +// dataIndex: 'skxs', +// edit: true, +// editComponent: 'Select', +// editComponentProps: { +// options: [ +// { label: '线上', value: 0, }, +// { label: '线下', value: 1, }, +// { label: '线上线下混合', value: 2, }, +// ], +// }, +// // customRender: (r) => r.text == 0?'线上':r.text == 1?'线下':'线上线下混合' +// }, +// ]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "课程名称", + field: 'kcmc', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "授课教师", + field: 'skjs', + component: 'JDictSelectTag', + componentProps:{ + }, + colProps: {span: 6}, + }, + { + label: "开课单位", + field: 'kkdw', + component: 'JDictSelectTag', + componentProps:{ + }, + colProps: {span: 6}, + }, + { + label: "课程性质", + field: 'kcxz', + component: 'Input', + colProps: {span: 6}, + }, + { + label: "节次", + field: 'hh', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "skjc" + }, + colProps: {span: 6}, + }, + { + label: "星期几", + field: 'week', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "week" + }, + colProps: {span: 6}, + }, +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '课程编号', + field: 'kcbh', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入课程编号!'}, + {...rules.duplicateCheckRule('kc_kechengbiao', 'kcbh',model,schema)[0]}, + ]; + }, + }, + { + label: '课程名称', + field: 'kcmc', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入课程名称!'}, + ]; + }, + }, + { + label: '授课教师', + field: 'skjs', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入授课教师!'}, + ]; + }, + }, + { + label: '学科人数', + field: 'xkrs', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入学科人数!'}, + ]; + }, + }, + { + label: '开课单位', + field: 'kkdw', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入开课单位!'}, + ]; + }, + }, + { + label: '课程性质', + field: 'kcxz', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入课程性质!'}, + ]; + }, + }, + { + label: '上课地点', + field: 'skdd', + component: 'Input', + }, + { + label: '上课周次', + field: 'jkzc', + component: 'JSelectMultiple', + componentProps:{ + dictCode: "skzc" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入上课周次!'}, + ]; + }, + }, + { + label: '节次', + field: 'hh', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "skjc" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入节次!'}, + ]; + }, + }, + { + label: '星期几', + field: 'week', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "week" + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入星期几!'}, + ]; + }, + }, + { + label: '直播方式', + field: 'zbfs', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "skpt" + }, + }, + { + label: '会议号', + field: 'hyh', + component: 'Input', + }, + { + label: '会议密码', + field: 'hymm', + component: 'Input', + }, + { + label: '课程链接', + field: 'kclj', + component: 'Input', + }, + { + label: '学分', + field: 'xf', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入学分!'}, + ]; + }, + }, + { + label: '是否出镜,0-出镜,1-不出镜', + field: 'sfcj', + component: 'InputNumber', + }, + { + label: '上课形式,0-线上,1-线下,2-线上线下混合', + field: 'skxs', + component: 'InputNumber', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/src/views/kc/szkc/components/XzKechengbiaoList.vue b/src/views/kc/szkc/components/XzKechengbiaoList.vue new file mode 100644 index 0000000..b590746 --- /dev/null +++ b/src/views/kc/szkc/components/XzKechengbiaoList.vue @@ -0,0 +1,219 @@ + + + + + diff --git a/src/views/kc/szkc/components/XzKechengbiaoListModal.vue b/src/views/kc/szkc/components/XzKechengbiaoListModal.vue new file mode 100644 index 0000000..6b19f47 --- /dev/null +++ b/src/views/kc/szkc/components/XzKechengbiaoListModal.vue @@ -0,0 +1,91 @@ + + + + + diff --git a/src/views/kc/szkc/components/YcKechengbiaoList.vue b/src/views/kc/szkc/components/YcKechengbiaoList.vue new file mode 100644 index 0000000..ac1ba77 --- /dev/null +++ b/src/views/kc/szkc/components/YcKechengbiaoList.vue @@ -0,0 +1,214 @@ + + + + + diff --git a/src/views/kc/szkc/components/YcKechengbiaoListModal.vue b/src/views/kc/szkc/components/YcKechengbiaoListModal.vue new file mode 100644 index 0000000..0208d4b --- /dev/null +++ b/src/views/kc/szkc/components/YcKechengbiaoListModal.vue @@ -0,0 +1,91 @@ + + + + + diff --git a/src/views/site/jrkclb/kclbList.vue b/src/views/site/jrkclb/kclbList.vue index deb4154..e1843e6 100644 --- a/src/views/site/jrkclb/kclbList.vue +++ b/src/views/site/jrkclb/kclbList.vue @@ -37,11 +37,12 @@ + - + 听课 - + 评价 + +
+ 已预约 + 预约 +
+
+ 评价 +
- 已预约 - 预约
@@ -74,6 +81,7 @@ import KcErrorreportIndexModal from '/@/views/kc/kcErrorreport/components/KcErro import { getUserId } from '/@/views/site/utils/index'; import addModalPage from '/@/views/site/tingKeZuJi/components/addModal.vue'; import { useRouter } from 'vue-router' +import dayjs from 'dayjs'; //用户相关 import { useUserStore } from '/@/store/modules/user'; @@ -135,6 +143,16 @@ async function funYuyue(record){ }); } +function isNow(item){ + const jssj = dayjs(item.skrq + " " +item.jssj, 'YYYY-MM-DD hh:mm:ss'); + const dqsj = dayjs(new Date(), 'YYYY-MM-DD hh:mm:ss'); + if(jssj -
+ +
diff --git a/src/views/site/renKeJiaoCheng/index.vue b/src/views/site/renKeJiaoCheng/index.vue index 46af961..25fdd2c 100644 --- a/src/views/site/renKeJiaoCheng/index.vue +++ b/src/views/site/renKeJiaoCheng/index.vue @@ -1,7 +1,7 @@