diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollect.api.ts b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollect.api.ts
new file mode 100644
index 00000000..57f5daed
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollect.api.ts
@@ -0,0 +1,64 @@
+import {defHttp} from '/@/utils/http/axios';
+import { useMessage } from "/@/hooks/web/useMessage";
+
+const { createConfirm } = useMessage();
+
+enum Api {
+ list = '/abilityEvaluation/personalAbilityEvaluationCollect/liststu',
+ save='/abilityEvaluation/personalAbilityEvaluationCollect/add',
+ edit='/abilityEvaluation/personalAbilityEvaluationCollect/edit',
+ deleteOne = '/abilityEvaluation/personalAbilityEvaluationCollect/delete',
+ deleteBatch = '/abilityEvaluation/personalAbilityEvaluationCollect/deleteBatch',
+ importExcel = '/abilityEvaluation/personalAbilityEvaluationCollect/importExcel',
+ exportXls = '/abilityEvaluation/personalAbilityEvaluationCollect/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/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollect.data.ts b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollect.data.ts
new file mode 100644
index 00000000..e390ed45
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollect.data.ts
@@ -0,0 +1,111 @@
+import {BasicColumn, FormSchema} from '/@/components/Table';
+//列表数据
+export const columns: BasicColumn[] = [
+ {
+ title: '所属部门',
+ align: "center",
+ dataIndex: 'depetId_dictText'
+ },
+ {
+ title: '学号',
+ align: "center",
+ dataIndex: 'workOn'
+ },
+ {
+ title: '姓名',
+ align: "center",
+ dataIndex: 'name'
+ },
+ {
+ title: '能力名称',
+ align:"center",
+ dataIndex: 'capacityName'
+ },
+ {
+ title: '能力值',
+ align:"center",
+ dataIndex: 'value'
+ },
+];
+//查询数据
+export const searchFormSchema: FormSchema[] = [
+ {
+ label: "所属部门",
+ field: 'depetId',
+ component: 'JDictSelectTag',
+ componentProps: {
+ dictCode: "sys_depart,depart_name,id"
+ },
+ colProps: {span: 6},
+ },
+ {
+ label: "能力名称",
+ field: 'capacityId',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"basicsskill,name,id"
+ },
+ colProps: {span: 6},
+ },
+ {
+ label: "学号",
+ field: 'workOn',
+ component: 'Input',
+ colProps: {span: 6},
+ },
+ {
+ label: "姓名",
+ field: 'name',
+ component: 'Input',
+ colProps: {span: 6},
+ },
+];
+//表单数据
+export const formSchema: FormSchema[] = [
+ {
+ label: '所属部门',
+ field: 'depetId',
+ component: 'JDictSelectTag',
+ componentProps: {
+ dictCode: "sys_depart,depart_name,id"
+ },
+ },
+ {
+ label: '学号',
+ field: 'workOn',
+ component: 'Input',
+ },
+ {
+ label: '姓名',
+ field: 'name',
+ component: 'Input',
+ },
+ {
+ label: '能力名称',
+ field: 'capacityName',
+ component: 'Input',
+ },
+ {
+ label: '能力值',
+ field: 'value',
+ component: 'InputNumber',
+ },
+
+ // TODO 主键隐藏字段,目前写死为ID
+ {
+ label: '',
+ field: 'id',
+ component: 'Input',
+ show: false
+ },
+];
+
+
+/**
+ * 流程表单调用这个方法获取formSchema
+ * @param param
+ */
+export function getBpmFormSchema(_formData): FormSchema[] {
+ // 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema
+ return formSchema;
+}
diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollectList.vue b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollectList.vue
new file mode 100644
index 00000000..774f6893
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/PersonalAbilityEvaluationCollectList.vue
@@ -0,0 +1,178 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+ 批量操作
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ getAreaTextByCode(text) }}
+
+
+ 无文件
+ 下载
+
+
+
+
+
+
+
+
+
+
diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/components/PersonalAbilityEvaluationCollectForm.vue b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/components/PersonalAbilityEvaluationCollectForm.vue
new file mode 100644
index 00000000..0e2e5df5
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/components/PersonalAbilityEvaluationCollectForm.vue
@@ -0,0 +1,70 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/components/PersonalAbilityEvaluationCollectModal.vue b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/components/PersonalAbilityEvaluationCollectModal.vue
new file mode 100644
index 00000000..5c5031c5
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persanlCollect/components/PersonalAbilityEvaluationCollectModal.vue
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluation.api.ts b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluation.api.ts
new file mode 100644
index 00000000..0b3d8f4c
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluation.api.ts
@@ -0,0 +1,64 @@
+import {defHttp} from '/@/utils/http/axios';
+import { useMessage } from "/@/hooks/web/useMessage";
+
+const { createConfirm } = useMessage();
+
+enum Api {
+ list = '/abilityEvaluation/personalAbilityEvaluation/liststu',
+ save='/abilityEvaluation/personalAbilityEvaluation/add',
+ edit='/abilityEvaluation/personalAbilityEvaluation/edit',
+ deleteOne = '/abilityEvaluation/personalAbilityEvaluation/delete',
+ deleteBatch = '/abilityEvaluation/personalAbilityEvaluation/deleteBatch',
+ importExcel = '/abilityEvaluation/personalAbilityEvaluation/importExcel',
+ exportXls = '/abilityEvaluation/personalAbilityEvaluation/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/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluation.data.ts b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluation.data.ts
new file mode 100644
index 00000000..7e7204ac
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluation.data.ts
@@ -0,0 +1,171 @@
+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: 'depetId_dictText'
+ },
+ {
+ title: '年度',
+ align:"center",
+ dataIndex: 'annualId_dictText'
+ },
+ {
+ title: '年度比赛',
+ align:"center",
+ dataIndex: 'annualCompId_dictText'
+ },
+ {
+ title: '年度比赛项目',
+ align:"center",
+ dataIndex: 'annualCompP_dictText'
+ },
+ {
+ title: '学号',
+ align:"center",
+ dataIndex: 'workOn'
+ },
+ {
+ title: '姓名',
+ align:"center",
+ dataIndex: 'name'
+ },
+ {
+ title: '能力名称',
+ align:"center",
+ dataIndex: 'capacityName'
+ },
+ {
+ title: '能力值',
+ align:"center",
+ dataIndex: 'value'
+ },
+];
+//查询数据
+export const searchFormSchema: FormSchema[] = [
+ {
+ label: "所属部门",
+ field: 'depetId',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"sys_depart,depart_name,id"
+ },
+ colProps: {span: 6},
+ },
+ {
+ label: "年度",
+ field: 'annualId',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"annual,annual_name,id"
+ },
+ colProps: {span: 6},
+ },
+ {
+ label: "年度比赛项目",
+ field: 'annualCompP',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"annual_comp_point,obj_name,id"
+ },
+ colProps: {span: 6},
+ },
+ {
+ label: "能力名称",
+ field: 'capacityId',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"basicsskill,name,id"
+ },
+ colProps: {span: 6},
+ },
+ {
+ label: "学号",
+ field: 'workOn',
+ component: 'Input',
+ colProps: {span: 6},
+ },
+ {
+ label: "姓名",
+ field: 'name',
+ component: 'Input',
+ colProps: {span: 6},
+ },
+];
+//表单数据
+export const formSchema: FormSchema[] = [
+ {
+ label: '所属部门',
+ field: 'depetId',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"sys_depart,depart_name,id"
+ },
+ },
+ {
+ label: '年度',
+ field: 'annualId',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"annual,annual_name,id"
+ },
+ },
+ {
+ label: '年度比赛',
+ field: 'annualCompId',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:""
+ },
+ },
+ {
+ label: '年度比赛项目',
+ field: 'annualCompP',
+ component: 'JDictSelectTag',
+ componentProps:{
+ dictCode:"annual_comp_point,obj_name,id"
+ },
+ },
+ {
+ label: '学号',
+ field: 'workOn',
+ component: 'Input',
+ },
+ {
+ label: '姓名',
+ field: 'name',
+ component: 'Input',
+ },
+ {
+ label: '能力名称',
+ field: 'capacityName',
+ component: 'Input',
+ },
+ {
+ label: '能力值',
+ field: 'value',
+ component: 'InputNumber',
+ },
+ // TODO 主键隐藏字段,目前写死为ID
+ {
+ label: '',
+ field: 'id',
+ component: 'Input',
+ show: false
+ },
+];
+
+
+
+/**
+ * 流程表单调用这个方法获取formSchema
+ * @param param
+ */
+export function getBpmFormSchema(_formData): FormSchema[]{
+ // 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema
+ return formSchema;
+}
diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluationList.vue b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluationList.vue
new file mode 100644
index 00000000..a5ca36b0
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/PersonalAbilityEvaluationList.vue
@@ -0,0 +1,184 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ getAreaTextByCode(text) }}
+
+
+ 无文件
+ 下载
+
+
+
+
+
+
+
+
+
+
diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/components/PersonalAbilityEvaluationForm.vue b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/components/PersonalAbilityEvaluationForm.vue
new file mode 100644
index 00000000..fd577f13
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/components/PersonalAbilityEvaluationForm.vue
@@ -0,0 +1,70 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/components/PersonalAbilityEvaluationModal.vue b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/components/PersonalAbilityEvaluationModal.vue
new file mode 100644
index 00000000..c94da9aa
--- /dev/null
+++ b/jeecgboot-vue3-master/src/views/stu/abilityEvaluation/persoanl/components/PersonalAbilityEvaluationModal.vue
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file