From 703be0d85c44081c07305d6b890655210aaff2b1 Mon Sep 17 00:00:00 2001 From: ye1023 <12588209+ye1023@user.noreply.gitee.com> Date: Fri, 5 Jun 2026 16:07:12 +0800 Subject: [PATCH] =?UTF-8?q?yxk-20260605-=E6=88=91=E4=B8=BA=E5=9B=9B?= =?UTF-8?q?=E6=89=80=E6=8A=8A=E6=8A=8A=E8=84=89=E4=BB=A3=E7=A0=81=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/bg/bqtakepulse/BgTakepulse.api.ts | 81 ++++ src/views/bg/bqtakepulse/BgTakepulse.data.ts | 287 +++++++++++++ src/views/bg/bqtakepulse/BgTakepulseList.vue | 337 +++++++++++++++ .../V20260605_1__menu_insert_BgTakepulse.sql | 26 ++ .../components/BgTakepulseForm.vue | 399 ++++++++++++++++++ .../components/BgTakepulseModal.vue | 67 +++ 6 files changed, 1197 insertions(+) create mode 100644 src/views/bg/bqtakepulse/BgTakepulse.api.ts create mode 100644 src/views/bg/bqtakepulse/BgTakepulse.data.ts create mode 100644 src/views/bg/bqtakepulse/BgTakepulseList.vue create mode 100644 src/views/bg/bqtakepulse/V20260605_1__menu_insert_BgTakepulse.sql create mode 100644 src/views/bg/bqtakepulse/components/BgTakepulseForm.vue create mode 100644 src/views/bg/bqtakepulse/components/BgTakepulseModal.vue diff --git a/src/views/bg/bqtakepulse/BgTakepulse.api.ts b/src/views/bg/bqtakepulse/BgTakepulse.api.ts new file mode 100644 index 0000000..c71c5ba --- /dev/null +++ b/src/views/bg/bqtakepulse/BgTakepulse.api.ts @@ -0,0 +1,81 @@ +import {defHttp} from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/bqtakepulse/bgTakepulse/list', + save='/bqtakepulse/bgTakepulse/add', + edit='/bqtakepulse/bgTakepulse/edit', + deleteOne = '/bqtakepulse/bgTakepulse/delete', + deleteBatch = '/bqtakepulse/bgTakepulse/deleteBatch', + importExcel = '/bqtakepulse/bgTakepulse/importExcel', + exportXls = '/bqtakepulse/bgTakepulse/exportXls', + queryDataById = '/bqtakepulse/bgTakepulse/queryById', + bgTakepulseFeedbackList = '/bqtakepulse/bgTakepulse/queryBgTakepulseFeedbackByMainId', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; + +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; + +/** + * 查询子表数据 + * @param params + */ +export const queryBgTakepulseFeedbackListByMainId = (id) => defHttp.get({url: Api.bgTakepulseFeedbackList, params:{ id }}); + +/** + * 列表接口 + * @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}); +} + +/** +* 根据id查询数据 +* @param params +*/ +export const queryDataById = (id) => defHttp.get({url: Api.queryDataById, params:{ id }}); + diff --git a/src/views/bg/bqtakepulse/BgTakepulse.data.ts b/src/views/bg/bqtakepulse/BgTakepulse.data.ts new file mode 100644 index 0000000..ab8da79 --- /dev/null +++ b/src/views/bg/bqtakepulse/BgTakepulse.data.ts @@ -0,0 +1,287 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +import {JVxeTypes,JVxeColumn} from '/@/components/jeecg/JVxeTable/types' +import { getWeekMonthQuarterYear } from '/@/utils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '密级', + align:"center", + dataIndex: 'secretLevel_dictText' + }, + { + title: '年份', + align:"center", + dataIndex: 'year_dictText' + }, + { + title: '序号', + align:"center", + dataIndex: 'number' + }, + { + title: '会议类型:行政线、技术线', + align:"center", + dataIndex: 'taskType_dictText' + }, + { + title: '类别:党的建设等其他', + align:"center", + dataIndex: 'type' + }, + { + title: '提出人', + align:"center", + dataIndex: 'proposer_dictText' + }, + { + title: '意见主题', + align:"center", + dataIndex: 'title' + }, + { + title: '具体意见', + align:"center", + dataIndex: 'content' + }, + { + title: '责任领导', + align:"center", + dataIndex: 'suoleader_dictText' + }, + { + title: '牵头部门', + align:"center", + dataIndex: 'responDeptid_dictText' + }, + { + title: '协办部门', + align:"center", + dataIndex: 'assistDeptid_dictText' + }, + { + title: '落实部门', + align:"center", + dataIndex: 'implementDeptid' + }, + { + title: '是否采纳', + align:"center", + dataIndex: 'isAdopt', + customRender:({text}) => { + return render.renderSwitch(text, [{text:'是',value:'Y'},{text:'否',value:'N'}]) + }, + }, + { + title: '落实措施/解释说明', + align:"center", + dataIndex: 'measure' + }, + { + title: '措施数量', + align:"center", + dataIndex: 'measureNumber' + }, + { + title: '成果形式', + align:"center", + dataIndex: 'achievement' + }, + { + title: '要求完成日期', + align:"center", + dataIndex: 'deadline', + customRender:({text}) =>{ + text = !text ? "" : (text.length > 10 ? text.substr(0,10) : text); + return text; + }, + }, + { + title: '备注', + align:"center", + dataIndex: 'remark' + }, + { + title: '执行情况', + align:"center", + dataIndex: 'actualExect' + }, + { + title: '实际完成时间', + align:"center", + dataIndex: 'actualTime' + }, + { + title: '提出人确认', + align:"center", + dataIndex: 'proposerConfirm' + }, + { + title: '完成状态', + align:"center", + dataIndex: 'bpmStatus_dictText' + }, + { + title: '调整落实措施及执行情况', + align:"center", + dataIndex: 'actSt' + }, + { + title: '督办次数', + align:"center", + dataIndex: 'superviseCount' + }, + { + title: '紧急程度', + align:"center", + dataIndex: 'urgencyLevel' + }, + { + title: '是否需要所办领导审批', + align:"center", + dataIndex: 'isNeedAppro', + customRender:({text}) => { + return render.renderSwitch(text, [{text:'是',value:'Y'},{text:'否',value:'N'}]) + }, + }, + { + title: '所办领导', + align:"center", + dataIndex: 'supDeptleaderid_dictText' + }, +]; + +//子表表格配置 +export const bgTakepulseFeedbackColumns: JVxeColumn[] = [ + { + title: '责任部门id', + key: 'responDeptid', + type: JVxeTypes.input, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '责任部门名称', + key: 'responDeptname', + type: JVxeTypes.input, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '反馈人id', + key: 'responPersonid', + type: JVxeTypes.input, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '反馈人姓名', + key: 'responPersonname', + type: JVxeTypes.input, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '实际执行情况', + key: 'actualExect', + type: JVxeTypes.textarea, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '实际完成时间', + key: 'actualTime', + type: JVxeTypes.datetime, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '调整落实措施及执行情况', + key: 'actSt', + type: JVxeTypes.textarea, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '完成状态', + key: 'bpmStatus', + type: JVxeTypes.input, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '提出人确认', + key: 'proposerConfirm', + type: JVxeTypes.input, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + { + title: '流程实例id', + key: 'bpmProcessId', + type: JVxeTypes.input, + width:"200px", + placeholder: '请输入${title}', + defaultValue:'', + }, + ] + +// 高级查询数据 +export const superQuerySchema = { + secretLevel: {title: '密级',order: 0,view: 'list', type: 'string',dictCode: 'secret_level',}, + year: {title: '年份',order: 1,view: 'list', type: 'string',dictCode: 'super_year',}, + number: {title: '序号',order: 2,view: 'text', type: 'string',}, + taskType: {title: '会议类型:行政线、技术线',order: 3,view: 'list', type: 'string',dictCode: 'super_takepulse_type',}, + type: {title: '类别:党的建设等其他',order: 4,view: 'text', type: 'string',}, + proposer: {title: '提出人',order: 5,view: 'sel_user', type: 'string',}, + title: {title: '意见主题',order: 6,view: 'text', type: 'string',}, + content: {title: '具体意见',order: 7,view: 'textarea', type: 'string',}, + suoleader: {title: '责任领导',order: 8,view: 'sel_user', type: 'string',}, + responDeptid: {title: '牵头部门',order: 9,view: 'sel_depart', type: 'string',}, + assistDeptid: {title: '协办部门',order: 10,view: 'sel_depart', type: 'string',}, + implementDeptid: {title: '落实部门',order: 11,view: 'text', type: 'string',}, + isAdopt: {title: '是否采纳',order: 12,view: 'switch', type: 'string',}, + measure: {title: '落实措施/解释说明',order: 13,view: 'textarea', type: 'string',}, + measureNumber: {title: '措施数量',order: 14,view: 'number', type: 'number',}, + achievement: {title: '成果形式',order: 15,view: 'textarea', type: 'string',}, + deadline: {title: '要求完成日期',order: 16,view: 'date', type: 'string',}, + remark: {title: '备注',order: 17,view: 'text', type: 'string',}, + actualExect: {title: '执行情况',order: 18,view: 'textarea', type: 'string',}, + actualTime: {title: '实际完成时间',order: 19,view: 'datetime', type: 'string',}, + proposerConfirm: {title: '提出人确认',order: 20,view: 'text', type: 'string',}, + bpmStatus: {title: '完成状态',order: 21,view: 'list', type: 'string',dictCode: 'super_status',}, + actSt: {title: '调整落实措施及执行情况',order: 22,view: 'textarea', type: 'string',}, + superviseCount: {title: '督办次数',order: 23,view: 'text', type: 'string',}, + urgencyLevel: {title: '紧急程度',order: 24,view: 'text', type: 'string',}, + isNeedAppro: {title: '是否需要所办领导审批',order: 25,view: 'switch', type: 'string',}, + supDeptleaderid: {title: '所办领导',order: 26,view: 'sel_user', type: 'string',}, + //子表高级查询 + bgTakepulseFeedback: { + title: '执行情况反馈', + view: 'table', + fields: { + responDeptid: {title: '责任部门id',order: 0,view: 'text', type: 'string',}, + responDeptname: {title: '责任部门名称',order: 1,view: 'text', type: 'string',}, + responPersonid: {title: '反馈人id',order: 2,view: 'text', type: 'string',}, + responPersonname: {title: '反馈人姓名',order: 3,view: 'text', type: 'string',}, + actualExect: {title: '实际执行情况',order: 4,view: 'textarea', type: 'string',}, + actualTime: {title: '实际完成时间',order: 5,view: 'datetime', type: 'string',}, + actSt: {title: '调整落实措施及执行情况',order: 6,view: 'textarea', type: 'string',}, + bpmStatus: {title: '完成状态',order: 7,view: 'text', type: 'string',}, + proposerConfirm: {title: '提出人确认',order: 8,view: 'text', type: 'string',}, + bpmProcessId: {title: '流程实例id',order: 9,view: 'text', type: 'string',}, + mainId: {title: '外键',order: 11,view: 'text', type: 'string',}, + } + }, +}; diff --git a/src/views/bg/bqtakepulse/BgTakepulseList.vue b/src/views/bg/bqtakepulse/BgTakepulseList.vue new file mode 100644 index 0000000..c9eb2f3 --- /dev/null +++ b/src/views/bg/bqtakepulse/BgTakepulseList.vue @@ -0,0 +1,337 @@ + + + + \ No newline at end of file diff --git a/src/views/bg/bqtakepulse/V20260605_1__menu_insert_BgTakepulse.sql b/src/views/bg/bqtakepulse/V20260605_1__menu_insert_BgTakepulse.sql new file mode 100644 index 0000000..77665f9 --- /dev/null +++ b/src/views/bg/bqtakepulse/V20260605_1__menu_insert_BgTakepulse.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/bqtakepulse文件夹下 +-- 如果你想更改到其他目录,请修改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 ('2026060503311050210', NULL, '我为四所把把脉', '/bg/bqtakepulse/bgTakepulseList', 'bg/bqtakepulse/BgTakepulseList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2026-06-05 15:31:21', 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 ('2026060503311060211', '2026060503311050210', '添加我为四所把把脉', NULL, NULL, 0, NULL, NULL, 2, 'bqtakepulse:bg_takepulse:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2026-06-05 15:31:21', 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 ('2026060503311060212', '2026060503311050210', '编辑我为四所把把脉', NULL, NULL, 0, NULL, NULL, 2, 'bqtakepulse:bg_takepulse:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2026-06-05 15:31:21', 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 ('2026060503311060213', '2026060503311050210', '删除我为四所把把脉', NULL, NULL, 0, NULL, NULL, 2, 'bqtakepulse:bg_takepulse:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2026-06-05 15:31:21', 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 ('2026060503311060214', '2026060503311050210', '批量删除我为四所把把脉', NULL, NULL, 0, NULL, NULL, 2, 'bqtakepulse:bg_takepulse:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2026-06-05 15:31:21', 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 ('2026060503311060215', '2026060503311050210', '导出excel_我为四所把把脉', NULL, NULL, 0, NULL, NULL, 2, 'bqtakepulse:bg_takepulse:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2026-06-05 15:31:21', 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 ('2026060503311060216', '2026060503311050210', '导入excel_我为四所把把脉', NULL, NULL, 0, NULL, NULL, 2, 'bqtakepulse:bg_takepulse:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2026-06-05 15:31:21', NULL, NULL, 0, 0, '1', 0); diff --git a/src/views/bg/bqtakepulse/components/BgTakepulseForm.vue b/src/views/bg/bqtakepulse/components/BgTakepulseForm.vue new file mode 100644 index 0000000..ac6e325 --- /dev/null +++ b/src/views/bg/bqtakepulse/components/BgTakepulseForm.vue @@ -0,0 +1,399 @@ + + + + diff --git a/src/views/bg/bqtakepulse/components/BgTakepulseModal.vue b/src/views/bg/bqtakepulse/components/BgTakepulseModal.vue new file mode 100644 index 0000000..7cb9bef --- /dev/null +++ b/src/views/bg/bqtakepulse/components/BgTakepulseModal.vue @@ -0,0 +1,67 @@ + + + + \ No newline at end of file