From 2bc1bb970e54c5fda39c10e5225c64ed564b1a55 Mon Sep 17 00:00:00 2001 From: Gitea Date: Wed, 25 Oct 2023 14:20:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=93=E5=AE=B6=E5=88=86=E7=BB=84=E9=A2=98?= =?UTF-8?q?=E7=9B=AE=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/anncomgrotop/AnnComGroTop.api.ts | 72 +++++ .../views/anncomgrotop/AnnComGroTop.data.ts | 74 ++++++ .../views/anncomgrotop/AnnComGroTopList.vue | 240 +++++++++++++++++ .../anncomgrotop/AnnComGroTop_menu_insert.sql | 26 ++ .../components/AnnComGroTopForm.vue | 146 ++++++++++ .../components/AnnComGroTopModal.vue | 76 ++++++ .../anncomgrotop/components/Topic.api.ts | 84 ++++++ .../anncomgrotop/components/Topic.data.ts | 120 +++++++++ .../anncomgrotop/components/TopicList.vue | 249 +++++++++++++++++ .../views/anncomgrotopp/AnnComGroTopP.api.ts | 72 +++++ .../views/anncomgrotopp/AnnComGroTopP.data.ts | 50 ++++ .../views/anncomgrotopp/AnnComGroTopPList.vue | 225 ++++++++++++++++ .../AnnComGroTopP_menu_insert.sql | 26 ++ .../components/AnnComGroTopPForm.vue | 140 ++++++++++ .../components/AnnComGroTopPModal.vue | 76 ++++++ .../components/ChaoseTopicPersion.api.ts | 82 ++++++ .../components/ChaoseTopicPersion.data.ts | 55 ++++ .../components/ChaoseTopicPersionList.vue | 250 ++++++++++++++++++ .../annualcompgroup/AnnualCompGroupList.vue | 15 ++ 19 files changed, 2078 insertions(+) create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.api.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.data.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTopList.vue create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop_menu_insert.sql create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopForm.vue create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopModal.vue create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.api.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.data.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotop/components/TopicList.vue create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.api.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.data.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopPList.vue create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP_menu_insert.sql create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPForm.vue create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPModal.vue create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.api.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.data.ts create mode 100644 jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersionList.vue diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.api.ts b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.api.ts new file mode 100644 index 000000000..1bebbfe97 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/anncomgrotop/annComGroTop/list', + save='/anncomgrotop/annComGroTop/add', + edit='/anncomgrotop/annComGroTop/edit', + deleteOne = '/anncomgrotop/annComGroTop/delete', + deleteBatch = '/anncomgrotop/annComGroTop/deleteBatch', + importExcel = '/anncomgrotop/annComGroTop/importExcel', + exportXls = '/anncomgrotop/annComGroTop/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/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.data.ts b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.data.ts new file mode 100644 index 000000000..eae8a0627 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop.data.ts @@ -0,0 +1,74 @@ +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: 'annid_dictText' + }, + { + title: '年度比赛项目', + align: "center", + dataIndex: 'annComP_dictText' + }, + { + title: '专家组', + align: "center", + dataIndex: 'annComPG_dictText' + }, + { + title: '题目', + align: "center", + dataIndex: 'topid_dictText' + }, +]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '年度', + field: 'annid', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "annual,annual_name,id" + }, + }, + { + label: '年度比赛项目', + field: 'annComP', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "annual_comp_point,obj_name,id" + }, + }, + { + label: '专家组', + field: 'annComPG', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "annual_comp_group,name,id" + }, + }, + { + label: '题目', + field: 'topid', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "topic,name,id" + }, + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTopList.vue b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTopList.vue new file mode 100644 index 000000000..2941fa942 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTopList.vue @@ -0,0 +1,240 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop_menu_insert.sql b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop_menu_insert.sql new file mode 100644 index 000000000..f06a27954 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/AnnComGroTop_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/anncomgrotop文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023102310307550470', NULL, '专家组年度比赛项目题目', '/anncomgrotop/annComGroTopList', 'anncomgrotop/AnnComGroTopList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-10-23 10:30:47', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102310307560471', '2023102310307550470', '添加专家组年度比赛项目题目', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotop:ann_com_gro_top:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-23 10:30:47', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102310307560472', '2023102310307550470', '编辑专家组年度比赛项目题目', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotop:ann_com_gro_top:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-23 10:30:47', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102310307560473', '2023102310307550470', '删除专家组年度比赛项目题目', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotop:ann_com_gro_top:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-23 10:30:47', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102310307560474', '2023102310307550470', '批量删除专家组年度比赛项目题目', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotop:ann_com_gro_top:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-23 10:30:47', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102310307560475', '2023102310307550470', '导出excel_专家组年度比赛项目题目', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotop:ann_com_gro_top:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-23 10:30:47', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102310307560476', '2023102310307550470', '导入excel_专家组年度比赛项目题目', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotop:ann_com_gro_top:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-23 10:30:47', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopForm.vue b/jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopForm.vue new file mode 100644 index 000000000..9e37d1521 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopForm.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopModal.vue b/jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopModal.vue new file mode 100644 index 000000000..9a3fe1aea --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/components/AnnComGroTopModal.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.api.ts b/jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.api.ts new file mode 100644 index 000000000..61add094e --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.api.ts @@ -0,0 +1,84 @@ +import {defHttp} from '/@/utils/http/axios'; +import {useMessage} from "/@/hooks/web/useMessage"; + +const {createConfirm} = useMessage(); + +enum Api { + list = '/topic/topic/szlist', + list1 = '/topic/topic/list1', + list2 = '/topic/topic/list2', + list3 = '/topic/topic/list3', + select = '/topic/topic/select', + save = '/topic/topic/szadd', + edit = '/topic/topic/edit', + deleteOne = '/topic/topic/delete', + deleteBatch = '/topic/topic/deleteBatch', + importExcel = '/topic/topic/importExcel', + exportXls = '/topic/topic/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 list1 = (params) => defHttp.get({url: Api.list1, params}); +export const list2 = (params) => defHttp.get({url: Api.list2, params}); +export const list3 = (params) => defHttp.get({url: Api.list3, params}); +export const Update = (params) => defHttp.post({url: Api.edit, params}); +export const select = (params) => defHttp.post({url: Api.select, 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.get({url: url, params}, {isTransformResponse: false}); +} diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.data.ts b/jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.data.ts new file mode 100644 index 000000000..78cd0d0c6 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/components/Topic.data.ts @@ -0,0 +1,120 @@ +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: 'annualCompid_dictText' + }, + { + title: '题目编号', + align: "center", + dataIndex: 'number' + }, + { + title: '题目名称', + align: "center", + dataIndex: 'name' + }, + { + title: '是否启用', + align: "center", + dataIndex: 'isopen', + customRender:({text}) => { + return render.renderSwitch(text, [{text:'是',value:'Y'},{text:'否',value:'N'}]); + }, + }, +]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ + { + label: "年度比赛项目", + field: 'annualCompid', + component: 'JSearchSelect', + colProps: {span: 6}, + }, + { + label: "题目名称", + field: 'name', + component: 'Input', + colProps: {span: 6}, + }, + +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '年度比赛项目', + field: 'annualCompid', + component: 'JPopup', + componentProps: ({ formActionType }) => { + const {setFieldsValue} = formActionType; + return{ + setFieldsValue:setFieldsValue, + code:"point", + fieldConfig: [ + { source: 'id', target: 'annualCompid' }, + { source: 'obj_name', target: 'annualCompid_dictText' }, + ], + multi:true + } + }, + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入年度比赛项目id!'}, + ]; + }, + }, + { + label: '题目编号', + field: 'number', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入题目编号!'}, + ]; + }, + }, + { + label: '题目名称', + field: 'name', + component: 'Input', + dynamicRules: ({model,schema}) => { + return [ + { required: true, message: '请输入题目名称!'}, + ]; + }, + }, + { + label: '题目简介及其要求', + field: 'info', + component: 'InputTextArea', + }, + { + label: '题目状态', + field: 'status', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "topic_status" + }, + }, + { + label: '开关', + field: 'isopen', + component: 'JSwitch', + componentProps:{ + }, + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/jeecgboot-vue3-master/src/views/anncomgrotop/components/TopicList.vue b/jeecgboot-vue3-master/src/views/anncomgrotop/components/TopicList.vue new file mode 100644 index 000000000..8eeaaedaf --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotop/components/TopicList.vue @@ -0,0 +1,249 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.api.ts b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.api.ts new file mode 100644 index 000000000..9e9ab5232 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/anncomgrotopp/annComGroTopP/list', + save='/anncomgrotopp/annComGroTopP/add', + edit='/anncomgrotopp/annComGroTopP/edit', + deleteOne = '/anncomgrotopp/annComGroTopP/delete', + deleteBatch = '/anncomgrotopp/annComGroTopP/deleteBatch', + importExcel = '/anncomgrotopp/annComGroTopP/importExcel', + exportXls = '/anncomgrotopp/annComGroTopP/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/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.data.ts b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.data.ts new file mode 100644 index 000000000..65c20717e --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP.data.ts @@ -0,0 +1,50 @@ +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: 'topid_dictText' + }, + { + title: '报名编号', + align: "center", + dataIndex: 'bmcode' + }, +]; + +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '专家组年度比赛项目题目', + field: 'annComGroTopid', + component: 'Input', + }, + { + label: '题目', + field: 'topid', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "topic,name,id" + }, + }, + { + label: '报名编号', + field: 'bmcode', + component: 'Input', + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopPList.vue b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopPList.vue new file mode 100644 index 000000000..789f5c377 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopPList.vue @@ -0,0 +1,225 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP_menu_insert.sql b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP_menu_insert.sql new file mode 100644 index 000000000..f4eb8d6aa --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/AnnComGroTopP_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/anncomgrotopp文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023102408569760310', NULL, '专家组年度比赛项目题目报名编号', '/anncomgrotopp/annComGroTopPList', 'anncomgrotopp/AnnComGroTopPList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-10-24 08:56:31', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102408569760311', '2023102408569760310', '添加专家组年度比赛项目题目报名编号', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotopp:ann_com_gro_top_p:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-24 08:56:31', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102408569760312', '2023102408569760310', '编辑专家组年度比赛项目题目报名编号', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotopp:ann_com_gro_top_p:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-24 08:56:31', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102408569760313', '2023102408569760310', '删除专家组年度比赛项目题目报名编号', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotopp:ann_com_gro_top_p:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-24 08:56:31', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102408569760314', '2023102408569760310', '批量删除专家组年度比赛项目题目报名编号', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotopp:ann_com_gro_top_p:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-24 08:56:31', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102408569760315', '2023102408569760310', '导出excel_专家组年度比赛项目题目报名编号', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotopp:ann_com_gro_top_p:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-24 08:56:31', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023102408569760316', '2023102408569760310', '导入excel_专家组年度比赛项目题目报名编号', NULL, NULL, 0, NULL, NULL, 2, 'anncomgrotopp:ann_com_gro_top_p:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-10-24 08:56:31', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPForm.vue b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPForm.vue new file mode 100644 index 000000000..e3cb7a261 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPForm.vue @@ -0,0 +1,140 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPModal.vue b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPModal.vue new file mode 100644 index 000000000..ae5d3c3c9 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/AnnComGroTopPModal.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.api.ts b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.api.ts new file mode 100644 index 000000000..f8e58c6aa --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.api.ts @@ -0,0 +1,82 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/chooseTopicPersion/chaoseTopicPersion/bmbhlist', + watch = '/chooseTopicPersion/chaoseTopicPersion/watch', + list4 = '/topic/topic/list4', + save='/chooseTopicPersion/chaoseTopicPersion/bmbhadd', + edit='/chooseTopicPersion/chaoseTopicPersion/edit', + edit1='/chooseTopicPersion/chaoseTopicPersion/edit1', + deleteOne = '/chooseTopicPersion/chaoseTopicPersion/delete', + deleteBatch = '/chooseTopicPersion/chaoseTopicPersion/deleteBatch', + importExcel = '/chooseTopicPersion/chaoseTopicPersion/importExcel', + exportXls = '/chooseTopicPersion/chaoseTopicPersion/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 list4 = (params) => defHttp.get({ url: Api.list4, params }); +export const watch = (params) => defHttp.get({ url: Api.watch, 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(); + }); + } + }); +} +export const update = (params) => { + return defHttp.post({ url: Api.edit1, params }); +} +export const update1 = (params) => { + return defHttp.post({ url: Api.edit1, params }, { isTransformResponse: false }); +} +/** + * 保存或者更新 + * @param params + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.get({ url: url, params }, { isTransformResponse: false }); +} diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.data.ts b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.data.ts new file mode 100644 index 000000000..95aff3c74 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersion.data.ts @@ -0,0 +1,55 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '报名编号', + align: "center", + dataIndex: 'bmcode' + }, + { + title: '题目', + align: "center", + dataIndex: 'timul_dictText' + }, + { + title: '状态', + align: "center", + dataIndex: 'status_dictText' + } +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; + +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '报名编号', + field: 'bmcode', + component: 'Input', + }, + { + label: '题目', + field: 'timul', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "topic,name,id" + }, + }, + { + label: '状态', + field: 'status', + component: 'JDictSelectTag', + componentProps:{ + dictCode: "choose_topic_persion_status" + }, + }, + // TODO 主键隐藏字段,目前写死为ID + { + label: '', + field: 'id', + component: 'Input', + show: false, + }, +]; diff --git a/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersionList.vue b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersionList.vue new file mode 100644 index 000000000..5a02f9cf4 --- /dev/null +++ b/jeecgboot-vue3-master/src/views/anncomgrotopp/components/ChaoseTopicPersionList.vue @@ -0,0 +1,250 @@ + + + + + diff --git a/jeecgboot-vue3-master/src/views/annualcompgroup/AnnualCompGroupList.vue b/jeecgboot-vue3-master/src/views/annualcompgroup/AnnualCompGroupList.vue index 8cac3c888..f5963ec00 100644 --- a/jeecgboot-vue3-master/src/views/annualcompgroup/AnnualCompGroupList.vue +++ b/jeecgboot-vue3-master/src/views/annualcompgroup/AnnualCompGroupList.vue @@ -201,6 +201,11 @@ onClick: bdcy.bind(null, record), //this.$Router.push }, + { + label: '设置题目', + onClick: sztm.bind(null, record), + //this.$Router.push + }, ] } @@ -214,6 +219,16 @@ router.push({ path: '/expgroup/ExpGroupList', query: {id} }) } + /** + * 设置题目事件 + */ + function sztm(record: Recordable) { + //console.log(record.annalComp) + //let ndbsid = record.annalComp; + let id= record.id; + router.push({ path: '/anncomgrotop/AnnComGroTopList', query: {id} }) + } + /** * 查询 */