提交 f0a3acc8 authored 作者: liuluyu's avatar liuluyu

问题整改前端更新

上级 bb5ba490
...@@ -10,6 +10,13 @@ export const columns: BasicColumn[] = [ ...@@ -10,6 +10,13 @@ export const columns: BasicColumn[] = [
ifShow: true, ifShow: true,
width: 100, width: 100,
}, },
{
title: '项目分类',
align: 'center',
dataIndex: 'projectCategory',
resizable: true,
width: 120,
},
{ {
title: '问题来源', title: '问题来源',
align: 'center', align: 'center',
...@@ -51,6 +58,15 @@ export const columns: BasicColumn[] = [ ...@@ -51,6 +58,15 @@ export const columns: BasicColumn[] = [
]; ];
//查询数据 //查询数据
export const searchFormSchema: FormSchema[] = [ export const searchFormSchema: FormSchema[] = [
{
label: '项目分类',
field: 'projectCategory',
component: 'JDictSelectTag',
componentProps: {
dictCode: 'project_category',
},
colProps: { span: 6 },
},
{ {
label: '问题来源', label: '问题来源',
field: 'problemSource', field: 'problemSource',
...@@ -88,19 +104,28 @@ export const formSchema: FormSchema[] = [ ...@@ -88,19 +104,28 @@ export const formSchema: FormSchema[] = [
label: '问题编号', label: '问题编号',
field: 'problemNo', field: 'problemNo',
component: 'Input', component: 'Input',
required: true, // required: true,
},
{
label: '项目分类',
field: 'projectCategory',
component: 'JDictSelectTag',
componentProps: {
dictCode: 'project_category',
},
// required: true,
}, },
{ {
label: '问题发现方', label: '问题发现方',
field: 'findUserId', field: 'findUserId',
component: 'Input', component: 'Input',
required: true, // required: true,
}, },
{ {
label: '问题来源', label: '问题来源',
field: 'problemSource', field: 'problemSource',
component: 'Input', component: 'Input',
required: true, // required: true,
}, },
{ {
label: '所属领域', label: '所属领域',
...@@ -109,13 +134,13 @@ export const formSchema: FormSchema[] = [ ...@@ -109,13 +134,13 @@ export const formSchema: FormSchema[] = [
componentProps: { componentProps: {
dictCode: 'rate_domain', dictCode: 'rate_domain',
}, },
required: true, // required: true,
}, },
{ {
label: '严重程度', label: '严重程度',
field: 'severity', field: 'severity',
component: 'JSearchSelect', component: 'JSearchSelect',
required: true, // required: true,
componentProps: { componentProps: {
dict: 'severity', dict: 'severity',
}, },
...@@ -125,7 +150,7 @@ export const formSchema: FormSchema[] = [ ...@@ -125,7 +150,7 @@ export const formSchema: FormSchema[] = [
label: '风险等级', label: '风险等级',
field: 'riskLevel', field: 'riskLevel',
component: 'JSearchSelect', component: 'JSearchSelect',
required: true, // required: true,
componentProps: { componentProps: {
dict: 'risk_level', dict: 'risk_level',
}, },
...@@ -135,7 +160,7 @@ export const formSchema: FormSchema[] = [ ...@@ -135,7 +160,7 @@ export const formSchema: FormSchema[] = [
label: '问题描述', label: '问题描述',
field: 'problemDes', field: 'problemDes',
component: 'InputTextArea', component: 'InputTextArea',
required: true, // required: true,
componentProps: { componentProps: {
rows: 3, rows: 3,
}, },
...@@ -162,7 +187,7 @@ export const planFormSchema: FormSchema[] = [ ...@@ -162,7 +187,7 @@ export const planFormSchema: FormSchema[] = [
componentProps: { componentProps: {
rows: 3, rows: 3,
}, },
required: true, // required: true,
}, },
{ {
label: '整改方案', label: '整改方案',
...@@ -171,19 +196,28 @@ export const planFormSchema: FormSchema[] = [ ...@@ -171,19 +196,28 @@ export const planFormSchema: FormSchema[] = [
componentProps: { componentProps: {
rows: 3, rows: 3,
}, },
required: true, // required: true,
},
{
label: '整改周期',
field: 'rectifyCycle',
component: 'JDictSelectTag',
componentProps: {
dictCode: 'rectify_cycle',
},
required: false,
}, },
{ {
label: '计划开始日期', label: '计划开始日期',
field: 'planStartDate', field: 'planStartDate',
component: 'DatePicker', component: 'DatePicker',
required: true, // required: true,
}, },
{ {
label: '计划完成日期', label: '计划完成日期',
field: 'planEndDate', field: 'planEndDate',
component: 'DatePicker', component: 'DatePicker',
required: true, // required: true,
}, },
{ {
label: '负责部门', label: '负责部门',
...@@ -226,7 +260,7 @@ export const executeFormSchema: FormSchema[] = [ ...@@ -226,7 +260,7 @@ export const executeFormSchema: FormSchema[] = [
field: 'execDepCode', field: 'execDepCode',
component: 'JSelectDept', component: 'JSelectDept',
label: '执行部门', label: '执行部门',
required: true, // required: true,
componentProps: { componentProps: {
multiple: false, multiple: false,
labelKey: 'departName', labelKey: 'departName',
...@@ -237,7 +271,7 @@ export const executeFormSchema: FormSchema[] = [ ...@@ -237,7 +271,7 @@ export const executeFormSchema: FormSchema[] = [
field: 'execUserId', field: 'execUserId',
component: 'JSelectUser', component: 'JSelectUser',
label: '负责人', label: '负责人',
required: true, // required: true,
componentProps: { componentProps: {
multiple: false, multiple: false,
labelKey: 'realname', labelKey: 'realname',
...@@ -248,13 +282,13 @@ export const executeFormSchema: FormSchema[] = [ ...@@ -248,13 +282,13 @@ export const executeFormSchema: FormSchema[] = [
label: '实际开始日期', label: '实际开始日期',
field: 'execStartDate', field: 'execStartDate',
component: 'DatePicker', component: 'DatePicker',
required: true, // required: true,
}, },
{ {
label: '实际完成日期', label: '实际完成日期',
field: 'execEndDate', field: 'execEndDate',
component: 'DatePicker', component: 'DatePicker',
required: true, // required: true,
}, },
{ {
label: '整改落实情况', label: '整改落实情况',
...@@ -263,7 +297,7 @@ export const executeFormSchema: FormSchema[] = [ ...@@ -263,7 +297,7 @@ export const executeFormSchema: FormSchema[] = [
componentProps: { componentProps: {
rows: 5, rows: 5,
}, },
required: true, // required: true,
}, },
{ {
label: '', label: '',
......
<template> <template>
<div> <div>
<!--Tab页导航-->
<a-tabs v-model:activeKey="activeTab" @change="handleTabChange" style="margin-left: 16px">
<a-tab-pane key="1" tab="待计划" />
<a-tab-pane key="2" tab="待执行" />
<a-tab-pane key="3" tab="待审核" />
<a-tab-pane key="4" tab="已完成" />
</a-tabs>
<!--引用表格--> <!--引用表格-->
<BasicTable @register="registerTable" :rowSelection="rowSelection"> <BasicTable @register="registerTable" :rowSelection="rowSelection">
<!--插槽:table标题--> <!--插槽:table标题-->
<template #tableTitle> <template #tableTitle>
<a-button type="primary" @click="handleAdd" preIcon="ant-design:plus-outlined"> 新增</a-button> <a-button type="primary" @click="handleAdd" preIcon="ant-design:plus-outlined"> 新增</a-button>
<a-button type="primary" preIcon="ant-design:export-outlined" @click="onExportXls"> 导出</a-button> <a-button type="primary" preIcon="ant-design:export-outlined" @click="onExportXls"> 导出1</a-button>
<j-upload-button type="primary" preIcon="ant-design:import-outlined" @click="onImportXls">导入</j-upload-button> <j-upload-button type="primary" preIcon="ant-design:import-outlined" @click="onImportXls">导入</j-upload-button>
<a-dropdown v-if="selectedRowKeys.length > 0"> <a-dropdown v-if="selectedRowKeys.length > 0">
<template #overlay> <template #overlay>
...@@ -53,14 +60,19 @@ ...@@ -53,14 +60,19 @@
import StProblemCheckReviewModal from './components/StProblemCheckReviewModal.vue'; import StProblemCheckReviewModal from './components/StProblemCheckReviewModal.vue';
import StProblemCheckFlowModal from './components/StProblemCheckFlowModal.vue'; import StProblemCheckFlowModal from './components/StProblemCheckFlowModal.vue';
import { store } from '/@/store'; import { store } from '/@/store';
import { definitionStartByDeployId } from "/@/components/Process/api/definition" import { definitionStartByDeployId } from '/@/components/Process/api/definition';
import { useRoute } from 'vue-router'; import { useRoute } from 'vue-router';
const route = useRoute(); const route = useRoute();
const checkedKeys = ref<Array<string | number>>([]); const checkedKeys = ref<Array<string | number>>([]);
//Tab页状态
const activeTab = ref('1');
//Tab页切换事件
function handleTabChange(key) {
activeTab.value = key;
reload();
}
//注册model //注册model
const [registerModal, { openModal }] = useModal(); const [registerModal, { openModal }] = useModal();
const [registerPlanModal, { openModal: openPlanModal }] = useModal(); const [registerPlanModal, { openModal: openPlanModal }] = useModal();
...@@ -82,7 +94,14 @@ ...@@ -82,7 +94,14 @@
fieldMapToTime: [], fieldMapToTime: [],
}, },
beforeFetch(params) { beforeFetch(params) {
params['id'] = route.query.id //根据Tab页筛选状态
const tabStatusMap = {
'1': '1', //待计划
'2': '2', //待执行
'3': '3', //待审核
'4': '4', //已完成
};
params['bpmStatus'] = tabStatusMap[activeTab.value];
}, },
actionColumn: { actionColumn: {
width: 400, width: 400,
...@@ -173,33 +192,50 @@ ...@@ -173,33 +192,50 @@
* 操作栏 * 操作栏
*/ */
function getTableAction(record) { function getTableAction(record) {
return [ const actions = [
{ {
label: '编辑', label: '编辑',
onClick: handleEdit.bind(null, record), onClick: handleEdit.bind(null, record),
}, },
{ {
label: '启动流程', label: '启动流程',
onClick: handleFlow.bind(null, record), // onClick: handleFlow.bind(null, record),
ifShow: ()=> { ifShow: () => {
if(record['bpmStatus']==null||record['bpmStatus']=='') if (record['bpmStatus'] == null || record['bpmStatus'] == '') return true;
return true else return false;
else return false },
}
},
{
label: '整改计划',
onClick: handlePlan.bind(null, record),
},
{
label: '整改执行',
onClick: handleExecute.bind(null, record),
},
{
label: '整改审核',
onClick: handleReview.bind(null, record),
}, },
]; ];
//根据当前Tab页显示不同的操作按钮
switch (activeTab.value) {
case '1': //待计划
actions.push({
label: '去计划',
onClick: handlePlan.bind(null, record),
});
break;
case '2': //待执行
actions.push({
label: '去执行',
onClick: handleExecute.bind(null, record),
});
break;
case '3': //待审核
actions.push({
label: '去审核',
onClick: handleReview.bind(null, record),
});
break;
case '4': //已完成
actions.push({
label: '查看详情',
onClick: handleDetail.bind(null, record),
});
break;
}
return actions;
} }
/** /**
* 下拉操作栏 * 下拉操作栏
...@@ -219,20 +255,17 @@ ...@@ -219,20 +255,17 @@
}, },
]; ];
} }
const formData = ref<any>({}) // 填写的表单数据
const refStProblemCheckFlow = ref();
function handleFlow(record: Recordable) {
formData.dataId=record.id;
formData.dataName='id';
definitionStartByDeployId(record.deployId, formData).then(res => {
console.log("计划启动----------- res",res);
handleSuccess();
})
}
const formData = ref<any>({}); // 填写的表单数据
// const refStProblemCheckFlow = ref();
// function handleFlow(record: Recordable) {
// formData.dataId = record.id;
// formData.dataName = 'id';
// definitionStartByDeployId(record.deployId, formData).then((res) => {
// console.log('计划启动----------- res', res);
// handle.valueSuccess();
// });
// }
</script> </script>
<style scoped></style> <style scoped></style>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论