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

问题整改前端更新

上级 bb5ba490
......@@ -10,6 +10,13 @@ export const columns: BasicColumn[] = [
ifShow: true,
width: 100,
},
{
title: '项目分类',
align: 'center',
dataIndex: 'projectCategory',
resizable: true,
width: 120,
},
{
title: '问题来源',
align: 'center',
......@@ -51,6 +58,15 @@ export const columns: BasicColumn[] = [
];
//查询数据
export const searchFormSchema: FormSchema[] = [
{
label: '项目分类',
field: 'projectCategory',
component: 'JDictSelectTag',
componentProps: {
dictCode: 'project_category',
},
colProps: { span: 6 },
},
{
label: '问题来源',
field: 'problemSource',
......@@ -88,19 +104,28 @@ export const formSchema: FormSchema[] = [
label: '问题编号',
field: 'problemNo',
component: 'Input',
required: true,
// required: true,
},
{
label: '项目分类',
field: 'projectCategory',
component: 'JDictSelectTag',
componentProps: {
dictCode: 'project_category',
},
// required: true,
},
{
label: '问题发现方',
field: 'findUserId',
component: 'Input',
required: true,
// required: true,
},
{
label: '问题来源',
field: 'problemSource',
component: 'Input',
required: true,
// required: true,
},
{
label: '所属领域',
......@@ -109,13 +134,13 @@ export const formSchema: FormSchema[] = [
componentProps: {
dictCode: 'rate_domain',
},
required: true,
// required: true,
},
{
label: '严重程度',
field: 'severity',
component: 'JSearchSelect',
required: true,
// required: true,
componentProps: {
dict: 'severity',
},
......@@ -125,7 +150,7 @@ export const formSchema: FormSchema[] = [
label: '风险等级',
field: 'riskLevel',
component: 'JSearchSelect',
required: true,
// required: true,
componentProps: {
dict: 'risk_level',
},
......@@ -135,7 +160,7 @@ export const formSchema: FormSchema[] = [
label: '问题描述',
field: 'problemDes',
component: 'InputTextArea',
required: true,
// required: true,
componentProps: {
rows: 3,
},
......@@ -162,7 +187,7 @@ export const planFormSchema: FormSchema[] = [
componentProps: {
rows: 3,
},
required: true,
// required: true,
},
{
label: '整改方案',
......@@ -171,19 +196,28 @@ export const planFormSchema: FormSchema[] = [
componentProps: {
rows: 3,
},
required: true,
// required: true,
},
{
label: '整改周期',
field: 'rectifyCycle',
component: 'JDictSelectTag',
componentProps: {
dictCode: 'rectify_cycle',
},
required: false,
},
{
label: '计划开始日期',
field: 'planStartDate',
component: 'DatePicker',
required: true,
// required: true,
},
{
label: '计划完成日期',
field: 'planEndDate',
component: 'DatePicker',
required: true,
// required: true,
},
{
label: '负责部门',
......@@ -226,7 +260,7 @@ export const executeFormSchema: FormSchema[] = [
field: 'execDepCode',
component: 'JSelectDept',
label: '执行部门',
required: true,
// required: true,
componentProps: {
multiple: false,
labelKey: 'departName',
......@@ -237,7 +271,7 @@ export const executeFormSchema: FormSchema[] = [
field: 'execUserId',
component: 'JSelectUser',
label: '负责人',
required: true,
// required: true,
componentProps: {
multiple: false,
labelKey: 'realname',
......@@ -248,13 +282,13 @@ export const executeFormSchema: FormSchema[] = [
label: '实际开始日期',
field: 'execStartDate',
component: 'DatePicker',
required: true,
// required: true,
},
{
label: '实际完成日期',
field: 'execEndDate',
component: 'DatePicker',
required: true,
// required: true,
},
{
label: '整改落实情况',
......@@ -263,7 +297,7 @@ export const executeFormSchema: FormSchema[] = [
componentProps: {
rows: 5,
},
required: true,
// required: true,
},
{
label: '',
......
<template>
<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">
<!--插槽:table标题-->
<template #tableTitle>
<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>
<a-dropdown v-if="selectedRowKeys.length > 0">
<template #overlay>
......@@ -53,14 +60,19 @@
import StProblemCheckReviewModal from './components/StProblemCheckReviewModal.vue';
import StProblemCheckFlowModal from './components/StProblemCheckFlowModal.vue';
import { store } from '/@/store';
import { definitionStartByDeployId } from "/@/components/Process/api/definition"
import { definitionStartByDeployId } from '/@/components/Process/api/definition';
import { useRoute } from 'vue-router';
const route = useRoute();
const checkedKeys = ref<Array<string | number>>([]);
//Tab页状态
const activeTab = ref('1');
//Tab页切换事件
function handleTabChange(key) {
activeTab.value = key;
reload();
}
//注册model
const [registerModal, { openModal }] = useModal();
const [registerPlanModal, { openModal: openPlanModal }] = useModal();
......@@ -82,7 +94,14 @@
fieldMapToTime: [],
},
beforeFetch(params) {
params['id'] = route.query.id
//根据Tab页筛选状态
const tabStatusMap = {
'1': '1', //待计划
'2': '2', //待执行
'3': '3', //待审核
'4': '4', //已完成
};
params['bpmStatus'] = tabStatusMap[activeTab.value];
},
actionColumn: {
width: 400,
......@@ -173,33 +192,50 @@
* 操作栏
*/
function getTableAction(record) {
return [
const actions = [
{
label: '编辑',
onClick: handleEdit.bind(null, record),
},
{
label: '启动流程',
onClick: handleFlow.bind(null, record),
ifShow: ()=> {
if(record['bpmStatus']==null||record['bpmStatus']=='')
return true
else return false
}
},
{
label: '整改计划',
onClick: handlePlan.bind(null, record),
},
{
label: '整改执行',
onClick: handleExecute.bind(null, record),
},
{
label: '整改审核',
onClick: handleReview.bind(null, record),
// onClick: handleFlow.bind(null, record),
ifShow: () => {
if (record['bpmStatus'] == null || record['bpmStatus'] == '') return true;
else return false;
},
},
];
//根据当前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 @@
},
];
}
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>
<style scoped></style>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论