فهرست منبع

待办事项判断进入报销页面l

huangguoce 3 ماه پیش
والد
کامیت
70252addca
3فایلهای تغییر یافته به همراه372 افزوده شده و 403 حذف شده
  1. 115 141
      src/views/flowable/task/ApplyList.vue
  2. 110 106
      src/views/flowable/task/HistoryList.vue
  3. 147 156
      src/views/flowable/task/TodoList.vue

+ 115 - 141
src/views/flowable/task/ApplyList.vue

@@ -1,73 +1,27 @@
 <template>
 <template>
 	<div class="page" style="height: calc(100% - 80px);">
 	<div class="page" style="height: calc(100% - 80px);">
-		<el-form
-			:inline="true"
-			v-if="searchVisible"
-			class="query-form m-b-10"
-			ref="searchForm"
-			:model="searchForm"
-			@keyup.enter="refreshList()"
-			@submit.prevent
-		>
+		<el-form :inline="true" v-if="searchVisible" class="query-form m-b-10" ref="searchForm" :model="searchForm"
+			@keyup.enter="refreshList()" @submit.prevent>
 			<el-form-item label="创建时间:" prop="searchDates">
 			<el-form-item label="创建时间:" prop="searchDates">
-				<el-date-picker
-					v-model="searchDates"
-					type="datetimerange"
-					value-format="YYYY-MM-DD HH:mm:ss"
-					range-separator="至"
-					start-placeholder="开始日期"
-					end-placeholder="结束日期"
-				/>
+				<el-date-picker v-model="searchDates" type="datetimerange" value-format="YYYY-MM-DD HH:mm:ss"
+					range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" />
 			</el-form-item>
 			</el-form-item>
 			<el-form-item>
 			<el-form-item>
-				<el-button type="primary" @click="refreshList()" icon="search"
-					>查询</el-button
-				>
-				<el-button
-					type="default"
-					@click="resetSearch()"
-					icon="refresh-right"
-					>重置</el-button
-				>
+				<el-button type="primary" @click="refreshList()" icon="search">查询</el-button>
+				<el-button type="default" @click="resetSearch()" icon="refresh-right">重置</el-button>
 			</el-form-item>
 			</el-form-item>
 		</el-form>
 		</el-form>
 		<div class="jp-table">
 		<div class="jp-table">
-			<vxe-toolbar
-				ref="applyToolbar"
-				:refresh="{ query: refreshList }"
-				export
-				print
-				custom
-			>
+			<vxe-toolbar ref="applyToolbar" :refresh="{ query: refreshList }" export print custom>
 				<template #tools>
 				<template #tools>
-					<vxe-button
-						type="text"
-						:title="searchVisible ? '收起检索' : '展开检索'"
-						icon="vxe-icon-search"
-						class="tool-btn"
-						@click="searchVisible = !searchVisible"
-					></vxe-button>
+					<vxe-button type="text" :title="searchVisible ? '收起检索' : '展开检索'" icon="vxe-icon-search"
+						class="tool-btn" @click="searchVisible = !searchVisible"></vxe-button>
 				</template>
 				</template>
 			</vxe-toolbar>
 			</vxe-toolbar>
 			<div class="jp-table-body">
 			<div class="jp-table-body">
-				<vxe-table
-					border="inner"
-					auto-resize
-					resizable
-					height="auto"
-					:loading="loading"
-					size="small"
-					ref="applyTable"
-					show-header-overflow
-					show-overflow
-					highlight-hover-row
-					:menu-config="{}"
-					:print-config="{}"
-					:import-config="{}"
-					:export-config="{}"
-					:data="dataList"
-					:checkbox-config="{}"
-				>
+				<vxe-table border="inner" auto-resize resizable height="auto" :loading="loading" size="small"
+					ref="applyTable" show-header-overflow show-overflow highlight-hover-row :menu-config="{}"
+					:print-config="{}" :import-config="{}" :export-config="{}" :data="dataList" :checkbox-config="{}">
 					<vxe-column type="seq" width="40"></vxe-column>
 					<vxe-column type="seq" width="40"></vxe-column>
 					<vxe-column type="checkbox" width="40px"></vxe-column>
 					<vxe-column type="checkbox" width="40px"></vxe-column>
 					<vxe-column title="流程标题" field="vars.title">
 					<vxe-column title="流程标题" field="vars.title">
@@ -77,8 +31,7 @@
 					<vxe-column title="当前节点" field="taskName"></vxe-column>
 					<vxe-column title="当前节点" field="taskName"></vxe-column>
 					<vxe-column title="流程状态" field="status">
 					<vxe-column title="流程状态" field="status">
 						<template #default="scope">
 						<template #default="scope">
-							<el-tag :type="scope.row.level"
-								>{{ scope.row.status }}
+							<el-tag :type="scope.row.level">{{ scope.row.status }}
 							</el-tag>
 							</el-tag>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
@@ -86,110 +39,53 @@
 					</vxe-column>
 					</vxe-column>
 					<vxe-column field="endTime" type="html" title="结束时间">
 					<vxe-column field="endTime" type="html" title="结束时间">
 					</vxe-column>
 					</vxe-column>
-					<vxe-column
-						title="操作"
-						width="150px"
-						type="html"
-						fixed="right"
-						align="center"
-					>
+					<vxe-column title="操作" width="150px" type="html" fixed="right" align="center">
 						<template #default="scope">
 						<template #default="scope">
-							<el-button
-								type="primary"
-								text
-								@click="detail(scope.row)"
-								>历史</el-button
-							>
-							<el-dropdown
-								v-if="
-									scope.row.code === 1 ||
-									scope.row.code === 3 ||
-									scope.row.code === 4
-								"
-								style="margin-left: 10px"
-							>
+							<el-button type="primary" text @click="detail(scope.row)">历史</el-button>
+							<el-dropdown v-if="
+								scope.row.code === 1 ||
+								scope.row.code === 3 ||
+								scope.row.code === 4
+							" style="margin-left: 10px">
 								<el-button type="primary" text>
 								<el-button type="primary" text>
-									更多<el-icon class="el-icon--right"
-										><arrow-down
-									/></el-icon>
+									更多<el-icon class="el-icon--right"><arrow-down /></el-icon>
 								</el-button>
 								</el-button>
 								<template #dropdown>
 								<template #dropdown>
 									<el-dropdown-menu>
 									<el-dropdown-menu>
-										<el-dropdown-item
-											v-if="scope.row.code === 1"
-											><el-button
-												text
-												type="primary"
-												@click="urge(scope.row)"
-												>催办</el-button
-											></el-dropdown-item
-										>
-										<el-dropdown-item
-											v-if="scope.row.code === 1"
-											><el-button
-												text
-												type="primary"
-												@click="revoke(scope.row)"
-												>撤销</el-button
-											></el-dropdown-item
-										>
-										<el-dropdown-item
-											v-if="
-												scope.row.code === 3 ||
-												scope.row.code === 4
-											"
-											><el-button
-												text
-												type="primary"
-												@click="restart(scope.row)"
-												>编辑</el-button
-											></el-dropdown-item
-										>
+										<el-dropdown-item v-if="scope.row.code === 1"><el-button text type="primary"
+												@click="urge(scope.row)">催办</el-button></el-dropdown-item>
+										<el-dropdown-item v-if="scope.row.code === 1"><el-button text type="primary"
+												@click="revoke(scope.row)">撤销</el-button></el-dropdown-item>
+										<el-dropdown-item v-if="
+											scope.row.code === 3 ||
+											scope.row.code === 4
+										"><el-button text type="primary" @click="restart(scope.row)">编辑</el-button></el-dropdown-item>
 									</el-dropdown-menu>
 									</el-dropdown-menu>
 								</template>
 								</template>
 							</el-dropdown>
 							</el-dropdown>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
 				</vxe-table>
 				</vxe-table>
-				<vxe-pager
-					background
-					size="small"
-					:current-page="tablePage.currentPage"
-					:page-size="tablePage.pageSize"
-					:total="tablePage.total"
-					:page-sizes="[
+				<vxe-pager background size="small" :current-page="tablePage.currentPage" :page-size="tablePage.pageSize"
+					:total="tablePage.total" :page-sizes="[
 						10,
 						10,
 						20,
 						20,
 						100,
 						100,
 						1000,
 						1000,
 						{ label: '全量数据', value: 1000000 },
 						{ label: '全量数据', value: 1000000 },
-					]"
-					:layouts="[
+					]" :layouts="[
 						'PrevPage',
 						'PrevPage',
 						'JumpNumber',
 						'JumpNumber',
 						'NextPage',
 						'NextPage',
 						'FullJump',
 						'FullJump',
 						'Sizes',
 						'Sizes',
 						'Total',
 						'Total',
-					]"
-					@page-change="currentChangeHandle"
-				>
+					]" @page-change="currentChangeHandle">
 				</vxe-pager>
 				</vxe-pager>
 			</div>
 			</div>
 		</div>
 		</div>
-		<v-dialog
-			title="查看流程历史"
-			:close-on-click-modal="true"
-			v-model="visible"
-			height="600px"
-		>
-			<iframe
-				:src="processPhotoUrl"
-				frameborder="0"
-				scrolling="auto"
-				width="100%"
-				height="600px"
-			></iframe>
+		<v-dialog title="查看流程历史" :close-on-click-modal="true" v-model="visible" height="600px">
+			<iframe :src="processPhotoUrl" frameborder="0" scrolling="auto" width="100%" height="600px"></iframe>
 		</v-dialog>
 		</v-dialog>
 		<urge-form ref="urgeForm"></urge-form>
 		<urge-form ref="urgeForm"></urge-form>
 	</div>
 	</div>
@@ -222,7 +118,7 @@ export default {
 			processPhotoUrl: "",
 			processPhotoUrl: "",
 		};
 		};
 	},
 	},
-	created () {
+	created() {
 		this.refreshList()
 		this.refreshList()
 	},
 	},
 	mounted() {
 	mounted() {
@@ -284,7 +180,26 @@ export default {
 					procInsId: row.processInstanceId,
 					procInsId: row.processInstanceId,
 					procDefId: row.processDefinitionId,
 					procDefId: row.processDefinitionId,
 				})
 				})
-				.then((data) => {
+				.then(async (data) => {
+					// 如果为报销
+					if (this.isReimbursementProcess(data.procDefKey)) {
+						// 根据流程名称获取对应的报销表单地址
+						let url = this.isReimbursementUrl(row.processDefinitionName)
+						if (url) {
+							let approvalTime = await taskService.getApprovalTimeByProcInsId(row.task.processInstanceId)
+							if (approvalTime) {
+								// 根据发起审批的时间判断是否为新版本报销页面
+								let newStartDate = this.$dictUtils.getDictLabel("new_version_reimbursement_date", '1', '-')
+								const compareResult = this.validateXG.compareDate(approvalTime, newStartDate);
+								const newVersionFlag = compareResult == 'same' || compareResult == 'after';
+
+								if (newVersionFlag) {
+									data.formUrl = url
+								}
+							}
+						}
+					}
+
 					this.$router.push({
 					this.$router.push({
 						path: "/flowable/task/TaskFormDetail",
 						path: "/flowable/task/TaskFormDetail",
 						query: {
 						query: {
@@ -308,6 +223,65 @@ export default {
 					});
 					});
 				});
 				});
 		},
 		},
+		isReimbursementUrl(name) {
+			// 会计
+			let cw = ["会计-所长报销", "会计-所长报销-电子发票", "会计-总经办报销", "盛所会计-报销申请", "会计-报销审批", "会计-报销审批-电子发票"]
+			// 中审
+			let zs = ["中审-所长报销", "中审-所长报销-电子发票", "中审-总经办报销", "中审-报销审批", "中审-报销审批-电子发票"]
+			// 评估
+			let pg = ["评估-总经办报销", "评估-所长报销", "评估-所长报销-电子发票", "评估-报销申请", "评估-报销审批-电子发票"]
+			// 项目
+			let ccpm = ["物资-项目报销", "项目-总经办报销", "项目-报销审批", "项目-报销审批-电子发票", "盛所项目-报销申请",]
+			// 咨询
+			let zx = ["咨询-总经办报销", "咨询-所长报销", "咨询-所长报销-电子发票", "咨询-报销审批", "咨询-报销审批-电子发票"]
+			if (cw.includes(name)) {
+				return '/cw/reimbursementApproval/info/NewReimbursementForm'
+			}
+			if (zs.includes(name)) {
+				return '/zs/reimbursement/info/NewReimbursementForm'
+			}
+			if (pg.includes(name)) {
+				return '/reimbursement/info/NewReimbursementForm'
+			}
+			if (ccpm.includes(name)) {
+				return '/ccpm/reimbursement/info/NewReimbursementForm'
+			}
+			if (zx.includes(name)) {
+				return '/consultancy/reimbursement/info/NewReimbursementForm'
+			}
+			return null;
+		},
+		isReimbursementProcess(procDefKey) {
+			const reimbursementProcesses = [
+				"Process_1669271524486",
+				"Process_1669271524487",
+				"Process_1704851888818",
+				"Process_1705370333755",
+				"Process_1705389994103",
+				"Process_1705390592348",
+				"Process_1673924346231",
+				"Process_1673924346232",
+				"Process_1705391439287",
+				"Process_1705391725816",
+				"Process_1665383385070",
+				"Process_1665383385071",
+				"Process_1705454007925",
+				"Process_1705454863808",
+				"Process_1706170102059",
+				"Process_1706175399469",
+				"Process_1706176397312",
+				"Process_1706176937876",
+				"Process_1706671221048",
+				"Process_1706679472488",
+				"Process_1706680073642",
+				"Process_1706680331785",
+				"Process_1706680660857",
+				"Process_1709102298565",
+				"Process_1709104787957",
+				"Process_1711418224962",
+			];
+			return reimbursementProcesses.includes(procDefKey);
+		},
 		// 重新填写
 		// 重新填写
 		restart(row) {
 		restart(row) {
 			// 读取流程表单
 			// 读取流程表单

+ 110 - 106
src/views/flowable/task/HistoryList.vue

@@ -1,97 +1,47 @@
 <template>
 <template>
 	<div class="page" style="height: calc(100% - 80px);">
 	<div class="page" style="height: calc(100% - 80px);">
-		<el-form
-			:inline="true"
-			v-if="searchVisible"
-			class="query-form m-b-10"
-			ref="searchForm"
-			:model="searchForm"
-			@keyup.enter="refreshList()"
-			@submit.prevent
-		>
+		<el-form :inline="true" v-if="searchVisible" class="query-form m-b-10" ref="searchForm" :model="searchForm"
+			@keyup.enter="refreshList()" @submit.prevent>
 			<el-form-item label="完成时间:" prop="searchDates">
 			<el-form-item label="完成时间:" prop="searchDates">
-				<el-date-picker
-					v-model="searchDates"
-					type="datetimerange"
-					value-format="YYYY-MM-DD HH:mm:ss"
-					range-separator="至"
-					start-placeholder="开始日期"
-					end-placeholder="结束日期"
-				/>
+				<el-date-picker v-model="searchDates" type="datetimerange" value-format="YYYY-MM-DD HH:mm:ss"
+					range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" />
 			</el-form-item>
 			</el-form-item>
 			<el-form-item label="实例标题" prop="title">
 			<el-form-item label="实例标题" prop="title">
-				<el-input  v-model="searchForm.title" placeholder="实例标题" clearable></el-input>
+				<el-input v-model="searchForm.title" placeholder="实例标题" clearable></el-input>
 			</el-form-item>
 			</el-form-item>
 			<el-form-item label="流程发起人" prop="assigneeId">
 			<el-form-item label="流程发起人" prop="assigneeId">
-				<el-input  v-model="searchForm.assigneeId" placeholder="请选择流程发起人">
+				<el-input v-model="searchForm.assigneeId" placeholder="请选择流程发起人">
 					<template #suffix>
 					<template #suffix>
-						<el-button style="background-color: white;color: #1b1e25;border-color: white;" type="primary" slot="append" icon="el-icon-search" @click="openUserDia">
+						<el-button style="background-color: white;color: #1b1e25;border-color: white;" type="primary"
+							slot="append" icon="el-icon-search" @click="openUserDia">
 							<!--						<UserSelect2  :modelValue="searchForm.assigneeId" :limit='1' @update:modelValue='(value, label) => {searchForm.assigneeId = value}'></UserSelect2>-->
 							<!--						<UserSelect2  :modelValue="searchForm.assigneeId" :limit='1' @update:modelValue='(value, label) => {searchForm.assigneeId = value}'></UserSelect2>-->
 						</el-button>
 						</el-button>
 					</template>
 					</template>
 				</el-input>
 				</el-input>
 			</el-form-item>
 			</el-form-item>
 			<el-form-item>
 			<el-form-item>
-				<el-button type="primary" @click="refreshList()" icon="search"
-					>查询</el-button
-				>
-				<el-button
-					type="default"
-					@click="resetSearch()"
-					icon="refresh-right"
-					>重置</el-button
-				>
+				<el-button type="primary" @click="refreshList()" icon="search">查询</el-button>
+				<el-button type="default" @click="resetSearch()" icon="refresh-right">重置</el-button>
 			</el-form-item>
 			</el-form-item>
 		</el-form>
 		</el-form>
 		<div class="jp-table">
 		<div class="jp-table">
-			<vxe-toolbar
-				ref="todoToolbar"
-				:refresh="{ query: refreshList }"
-				export
-				print
-				custom
-			>
+			<vxe-toolbar ref="todoToolbar" :refresh="{ query: refreshList }" export print custom>
 				<template #tools>
 				<template #tools>
-					<vxe-button
-						type="text"
-						:title="searchVisible ? '收起检索' : '展开检索'"
-						icon="vxe-icon-search"
-						class="tool-btn"
-						@click="searchVisible = !searchVisible"
-					></vxe-button>
+					<vxe-button type="text" :title="searchVisible ? '收起检索' : '展开检索'" icon="vxe-icon-search"
+						class="tool-btn" @click="searchVisible = !searchVisible"></vxe-button>
 				</template>
 				</template>
 			</vxe-toolbar>
 			</vxe-toolbar>
 			<div class="jp-table-body">
 			<div class="jp-table-body">
-				<vxe-table
-					border="inner"
-					auto-resize
-					resizable
-					height="auto"
-					:loading="loading"
-					size="small"
-					ref="todoTable"
-					show-header-overflow
-					show-overflow
-					highlight-hover-row
-					:menu-config="{}"
-					:print-config="{}"
-					:import-config="{}"
-					:export-config="{}"
-					:data="dataList"
-					:checkbox-config="{}"
-				>
+				<vxe-table border="inner" auto-resize resizable height="auto" :loading="loading" size="small"
+					ref="todoTable" show-header-overflow show-overflow highlight-hover-row :menu-config="{}"
+					:print-config="{}" :import-config="{}" :export-config="{}" :data="dataList" :checkbox-config="{}">
 					<vxe-column type="seq" width="40"></vxe-column>
 					<vxe-column type="seq" width="40"></vxe-column>
 					<vxe-column type="checkbox" width="40px"></vxe-column>
 					<vxe-column type="checkbox" width="40px"></vxe-column>
 					<vxe-column title="任务" field="name">
 					<vxe-column title="任务" field="name">
 						<template #default="scope">
 						<template #default="scope">
 							{{ scope.row.name }}
 							{{ scope.row.name }}
-							<el-button
-								v-if="scope.row.back"
-								type="warning"
-								size="small"
-								@click="callback(scope.row)"
-								>撤销</el-button
-							>
+							<el-button v-if="scope.row.back" type="warning" size="small"
+								@click="callback(scope.row)">撤销</el-button>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
 					<vxe-column title="实例标题" field="vars.title">
 					<vxe-column title="实例标题" field="vars.title">
@@ -100,61 +50,37 @@
 					</vxe-column>
 					</vxe-column>
 					<vxe-column title="办理状态" field="status">
 					<vxe-column title="办理状态" field="status">
 						<template #default="scope">
 						<template #default="scope">
-							<el-tag :type="scope.row.level"
-								>{{ scope.row.status }}
+							<el-tag :type="scope.row.level">{{ scope.row.status }}
 							</el-tag>
 							</el-tag>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
-					<vxe-column
-						title="流程发起人"
-						field="vars.userName"
-					></vxe-column>
+					<vxe-column title="流程发起人" field="vars.userName"></vxe-column>
 					<vxe-column field="endTime" title="完成时间"> </vxe-column>
 					<vxe-column field="endTime" title="完成时间"> </vxe-column>
-					<vxe-column
-						title="操作"
-						width="100px"
-						fixed="right"
-						align="center"
-					>
+					<vxe-column title="操作" width="100px" fixed="right" align="center">
 						<template #default="scope">
 						<template #default="scope">
-							<el-button
-								type="primary"
-								text
-								@click="detail(scope.row)"
-								>历史</el-button
-							>
+							<el-button type="primary" text @click="detail(scope.row)">历史</el-button>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
 				</vxe-table>
 				</vxe-table>
-				<vxe-pager
-					background
-					size="small"
-					:current-page="tablePage.currentPage"
-					:page-size="tablePage.pageSize"
-					:total="tablePage.total"
-					:page-sizes="[
+				<vxe-pager background size="small" :current-page="tablePage.currentPage" :page-size="tablePage.pageSize"
+					:total="tablePage.total" :page-sizes="[
 						10,
 						10,
 						20,
 						20,
 						100,
 						100,
 						1000,
 						1000,
 						{ label: '全量数据', value: 1000000 },
 						{ label: '全量数据', value: 1000000 },
-					]"
-					:layouts="[
+					]" :layouts="[
 						'PrevPage',
 						'PrevPage',
 						'JumpNumber',
 						'JumpNumber',
 						'NextPage',
 						'NextPage',
 						'FullJump',
 						'FullJump',
 						'Sizes',
 						'Sizes',
 						'Total',
 						'Total',
-					]"
-					@page-change="currentChangeHandle"
-				>
+					]" @page-change="currentChangeHandle">
 				</vxe-pager>
 				</vxe-pager>
 			</div>
 			</div>
 		</div>
 		</div>
-		<user-select2
-			ref="userSelect2"
-			@doSubmit="selectUser">
+		<user-select2 ref="userSelect2" @doSubmit="selectUser">
 		</user-select2>
 		</user-select2>
 	</div>
 	</div>
 </template>
 </template>
@@ -186,7 +112,7 @@ export default {
 			visible: false,
 			visible: false,
 		};
 		};
 	},
 	},
-	created () {
+	created() {
 		this.refreshList()
 		this.refreshList()
 	},
 	},
 	components: {
 	components: {
@@ -244,7 +170,26 @@ export default {
 					procInsId: row.processInstanceId,
 					procInsId: row.processInstanceId,
 					procDefId: row.processDefinitionId,
 					procDefId: row.processDefinitionId,
 				})
 				})
-				.then((data) => {
+				.then(async (data) => {
+					// 如果为报销
+					if (this.isReimbursementProcess(data.procDefKey)) {
+						// 根据流程名称获取对应的报销表单地址
+						let url = this.isReimbursementUrl(row.processDefinitionName)
+						if (url) {
+							let approvalTime = await taskService.getApprovalTimeByProcInsId(row.processInstanceId)
+							if (approvalTime) {
+								// 根据发起审批的时间判断是否为新版本报销页面
+								let newStartDate = this.$dictUtils.getDictLabel("new_version_reimbursement_date", '1', '-')
+								const compareResult = this.validateXG.compareDate(approvalTime, newStartDate);
+								const newVersionFlag = compareResult == 'same' || compareResult == 'after';
+
+								if (newVersionFlag) {
+									data.formUrl = url
+								}
+							}
+						}
+					}
+
 					this.$router.push({
 					this.$router.push({
 						path: "/flowable/task/TaskFormDetail",
 						path: "/flowable/task/TaskFormDetail",
 						query: {
 						query: {
@@ -269,6 +214,65 @@ export default {
 					});
 					});
 				});
 				});
 		},
 		},
+		isReimbursementUrl(name) {
+			// 会计
+			let cw = ["会计-所长报销", "会计-所长报销-电子发票", "会计-总经办报销", "盛所会计-报销申请", "会计-报销审批", "会计-报销审批-电子发票"]
+			// 中审
+			let zs = ["中审-所长报销", "中审-所长报销-电子发票", "中审-总经办报销", "中审-报销审批", "中审-报销审批-电子发票"]
+			// 评估
+			let pg = ["评估-总经办报销", "评估-所长报销", "评估-所长报销-电子发票", "评估-报销申请", "评估-报销审批-电子发票"]
+			// 项目
+			let ccpm = ["物资-项目报销", "项目-总经办报销", "项目-报销审批", "项目-报销审批-电子发票", "盛所项目-报销申请",]
+			// 咨询
+			let zx = ["咨询-总经办报销", "咨询-所长报销", "咨询-所长报销-电子发票", "咨询-报销审批", "咨询-报销审批-电子发票"]
+			if (cw.includes(name)) {
+				return '/cw/reimbursementApproval/info/NewReimbursementForm'
+			}
+			if (zs.includes(name)) {
+				return '/zs/reimbursement/info/NewReimbursementForm'
+			}
+			if (pg.includes(name)) {
+				return '/reimbursement/info/NewReimbursementForm'
+			}
+			if (ccpm.includes(name)) {
+				return '/ccpm/reimbursement/info/NewReimbursementForm'
+			}
+			if (zx.includes(name)) {
+				return '/consultancy/reimbursement/info/NewReimbursementForm'
+			}
+			return null;
+		},
+		isReimbursementProcess(procDefKey) {
+			const reimbursementProcesses = [
+				"Process_1669271524486",
+				"Process_1669271524487",
+				"Process_1704851888818",
+				"Process_1705370333755",
+				"Process_1705389994103",
+				"Process_1705390592348",
+				"Process_1673924346231",
+				"Process_1673924346232",
+				"Process_1705391439287",
+				"Process_1705391725816",
+				"Process_1665383385070",
+				"Process_1665383385071",
+				"Process_1705454007925",
+				"Process_1705454863808",
+				"Process_1706170102059",
+				"Process_1706175399469",
+				"Process_1706176397312",
+				"Process_1706176937876",
+				"Process_1706671221048",
+				"Process_1706679472488",
+				"Process_1706680073642",
+				"Process_1706680331785",
+				"Process_1706680660857",
+				"Process_1709102298565",
+				"Process_1709104787957",
+				"Process_1711418224962",
+			];
+			return reimbursementProcesses.includes(procDefKey);
+		},
 		// 取回
 		// 取回
 		callback(row) {
 		callback(row) {
 			console.log(row);
 			console.log(row);
@@ -300,12 +304,12 @@ export default {
 				this.refreshList();
 				this.refreshList();
 			});
 			});
 		},
 		},
-		openUserDia(){
+		openUserDia() {
 			this.$refs.userSelect2.init()
 			this.$refs.userSelect2.init()
 		},
 		},
-		selectUser(user){
+		selectUser(user) {
 			console.log(user[0].name)
 			console.log(user[0].name)
-			this.searchForm.assigneeId=user[0].name
+			this.searchForm.assigneeId = user[0].name
 		}
 		}
 	},
 	},
 };
 };

+ 147 - 156
src/views/flowable/task/TodoList.vue

@@ -1,101 +1,53 @@
 <template>
 <template>
 	<div class="page" style="height: calc(100% - 80px);">
 	<div class="page" style="height: calc(100% - 80px);">
-		<el-form
-			:inline="true"
-			size="default"
-			v-if="searchVisible"
-			class="query-form m-b-10"
-			ref="searchForm"
-			:model="searchForm"
-			@keyup.enter.native="refreshList()"
-			@submit.native.prevent
-		>
+		<el-form :inline="true" size="default" v-if="searchVisible" class="query-form m-b-10" ref="searchForm"
+			:model="searchForm" @keyup.enter.native="refreshList()" @submit.native.prevent>
 			<el-form-item label="创建时间:" prop="searchDates">
 			<el-form-item label="创建时间:" prop="searchDates">
-				<el-date-picker
-					v-model="searchDates"
-					type="datetimerange"
-					value-format="YYYY-MM-DD HH:mm:ss"
-					range-separator="至"
-					start-placeholder="开始日期"
-					end-placeholder="结束日期"
-				/>
+				<el-date-picker v-model="searchDates" type="datetimerange" value-format="YYYY-MM-DD HH:mm:ss"
+					range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" />
 			</el-form-item>
 			</el-form-item>
 			<el-form-item label="实例标题" prop="title">
 			<el-form-item label="实例标题" prop="title">
-				<el-input  v-model="searchForm.title" placeholder="实例标题" clearable></el-input>
+				<el-input v-model="searchForm.title" placeholder="实例标题" clearable></el-input>
 			</el-form-item>
 			</el-form-item>
 			<el-form-item label="流程发起人" prop="assigneeId">
 			<el-form-item label="流程发起人" prop="assigneeId">
-				<el-input  v-model="searchForm.assigneeId" placeholder="请选择流程发起人">
+				<el-input v-model="searchForm.assigneeId" placeholder="请选择流程发起人">
 					<template #suffix>
 					<template #suffix>
-					<el-button style="background-color: white;color: #1b1e25;border-color: white;" type="primary" slot="append" icon="el-icon-search" @click="openUserDia">
-<!--						<UserSelect2  :modelValue="searchForm.assigneeId" :limit='1' @update:modelValue='(value, label) => {searchForm.assigneeId = value}'></UserSelect2>-->
-					</el-button>
+						<el-button style="background-color: white;color: #1b1e25;border-color: white;" type="primary"
+							slot="append" icon="el-icon-search" @click="openUserDia">
+							<!--						<UserSelect2  :modelValue="searchForm.assigneeId" :limit='1' @update:modelValue='(value, label) => {searchForm.assigneeId = value}'></UserSelect2>-->
+						</el-button>
 					</template>
 					</template>
 				</el-input>
 				</el-input>
 			</el-form-item>
 			</el-form-item>
 			<el-form-item>
 			<el-form-item>
-				<el-button type="primary" @click="refreshList()" icon="search"
-					>查询</el-button
-				>
-				<el-button
-					type="default"
-					@click="resetSearch()"
-					icon="refresh-right"
-					>重置</el-button
-				>
+				<el-button type="primary" @click="refreshList()" icon="search">查询</el-button>
+				<el-button type="default" @click="resetSearch()" icon="refresh-right">重置</el-button>
 			</el-form-item>
 			</el-form-item>
 		</el-form>
 		</el-form>
 		<div class="jp-table">
 		<div class="jp-table">
-			<vxe-toolbar
-				ref="todoToolbar"
-				:refresh="{ query: refreshList }"
-				export
-				print
-				custom
-			>
+			<vxe-toolbar ref="todoToolbar" :refresh="{ query: refreshList }" export print custom>
 				<template #buttons>
 				<template #buttons>
-					<el-button v-if="hasPermission('approval:info:edit')"  type="primary" icon="el-icon-plus" @click="approval()" :disabled="$refs.todoTable && $refs.todoTable.getCheckboxRecords().length === 0">批量审核</el-button>
+					<el-button v-if="hasPermission('approval:info:edit')" type="primary" icon="el-icon-plus"
+						@click="approval()"
+						:disabled="$refs.todoTable && $refs.todoTable.getCheckboxRecords().length === 0">批量审核</el-button>
 				</template>
 				</template>
 				<template #tools>
 				<template #tools>
-					<vxe-button
-						type="text"
-						:title="searchVisible ? '收起检索' : '展开检索'"
-						icon="vxe-icon-search"
-						class="tool-btn"
-						@click="searchVisible = !searchVisible"
-					></vxe-button>
+					<vxe-button type="text" :title="searchVisible ? '收起检索' : '展开检索'" icon="vxe-icon-search"
+						class="tool-btn" @click="searchVisible = !searchVisible"></vxe-button>
 				</template>
 				</template>
 			</vxe-toolbar>
 			</vxe-toolbar>
 			<div class="jp-table-body">
 			<div class="jp-table-body">
-				<vxe-table
-					border="inner"
-					auto-resize
-					resizable
-					height="auto"
-					:loading="loading"
-					size="small"
-					ref="todoTable"
-					show-header-overflow
-					show-overflow
-					highlight-hover-row
-					:menu-config="{}"
-					:print-config="{}"
-					:import-config="{}"
-					:export-config="{}"
-					:data="dataList"
-					:checkbox-config="{}"
-				>
+				<vxe-table border="inner" auto-resize resizable height="auto" :loading="loading" size="small"
+					ref="todoTable" show-header-overflow show-overflow highlight-hover-row :menu-config="{}"
+					:print-config="{}" :import-config="{}" :export-config="{}" :data="dataList" :checkbox-config="{}">
 					<vxe-column type="seq" width="40"></vxe-column>
 					<vxe-column type="seq" width="40"></vxe-column>
 					<vxe-column type="checkbox" width="40px"></vxe-column>
 					<vxe-column type="checkbox" width="40px"></vxe-column>
 					<vxe-column title="实例标题" field="vars.title">
 					<vxe-column title="实例标题" field="vars.title">
 						<template #default="scope">
 						<template #default="scope">
-							<el-link  type="primary" :underline="false" v-if="scope.row.belongProject === 'ccpm'"  @click="todoCcpm(scope.row)">{{scope.row.vars.title}}</el-link>
-							<el-link
-								type="primary"
-								:underline="false"
-								v-if="scope.row.status === 'todo'"
-								@click="todo(scope.row)"
-								>{{ scope.row.vars.title }}</el-link
-							>
+							<el-link type="primary" :underline="false" v-if="scope.row.belongProject === 'ccpm'"
+								@click="todoCcpm(scope.row)">{{ scope.row.vars.title }}</el-link>
+							<el-link type="primary" :underline="false" v-if="scope.row.status === 'todo'"
+								@click="todo(scope.row)">{{ scope.row.vars.title }}</el-link>
 							<span v-else>{{ scope.row.vars.title }}</span>
 							<span v-else>{{ scope.row.vars.title }}</span>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
@@ -106,85 +58,45 @@
 							<el-tag>{{ scope.row.task.name }}</el-tag>
 							<el-tag>{{ scope.row.task.name }}</el-tag>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
-					<vxe-column
-						title="流程发起人"
-						field="vars.userName"
-					></vxe-column>
+					<vxe-column title="流程发起人" field="vars.userName"></vxe-column>
 					<vxe-column field="task.createTime" title="创建时间">
 					<vxe-column field="task.createTime" title="创建时间">
 					</vxe-column>
 					</vxe-column>
-					<vxe-column
-						title="操作"
-						width="200px"
-						fixed="right"
-						align="center"
-					>
+					<vxe-column title="操作" width="200px" fixed="right" align="center">
 						<template #default="scope">
 						<template #default="scope">
 							<div v-if="scope.row.belongProject === 'ccpm'">
 							<div v-if="scope.row.belongProject === 'ccpm'">
 								<el-button type="text" size="small" @click="todoCcpm(scope.row)">项目系统审核</el-button>
 								<el-button type="text" size="small" @click="todoCcpm(scope.row)">项目系统审核</el-button>
 							</div>
 							</div>
 							<div v-else>
 							<div v-else>
-								<el-button
-									type="primary"
-									text
-									@click="todo(scope.row)"
-								>办理</el-button
-								>
+								<el-button type="primary" text @click="todo(scope.row)">办理</el-button>
 
 
-								<el-button
-									type="primary"
-									text
-									@click="trace(scope.row)"
-								>进度</el-button>
+								<el-button type="primary" text @click="trace(scope.row)">进度</el-button>
 							</div>
 							</div>
 						</template>
 						</template>
 					</vxe-column>
 					</vxe-column>
 				</vxe-table>
 				</vxe-table>
-				<vxe-pager
-					background
-					size="small"
-					:current-page="tablePage.currentPage"
-					:page-size="tablePage.pageSize"
-					:total="tablePage.total"
-					:page-sizes="[
+				<vxe-pager background size="small" :current-page="tablePage.currentPage" :page-size="tablePage.pageSize"
+					:total="tablePage.total" :page-sizes="[
 						10,
 						10,
 						20,
 						20,
 						100,
 						100,
 						1000,
 						1000,
 						{ label: '全量数据', value: 1000000 },
 						{ label: '全量数据', value: 1000000 },
-					]"
-					:layouts="[
+					]" :layouts="[
 						'PrevPage',
 						'PrevPage',
 						'JumpNumber',
 						'JumpNumber',
 						'NextPage',
 						'NextPage',
 						'FullJump',
 						'FullJump',
 						'Sizes',
 						'Sizes',
 						'Total',
 						'Total',
-					]"
-					@page-change="currentChangeHandle"
-				>
+					]" @page-change="currentChangeHandle">
 				</vxe-pager>
 				</vxe-pager>
 			</div>
 			</div>
 		</div>
 		</div>
-		<v-dialog
-			title="查看进度"
-			:close-on-click-modal="true"
-			v-model="visible"
-			width="70%"
-			height="600px"
-		>
-			<flow-chart
-				ref="preview"
-				:processInstanceId="processInstanceId"
-			></flow-chart>
+		<v-dialog title="查看进度" :close-on-click-modal="true" v-model="visible" width="70%" height="600px">
+			<flow-chart ref="preview" :processInstanceId="processInstanceId"></flow-chart>
 		</v-dialog>
 		</v-dialog>
-		<user-select
-			ref="userSelect"
-			:limit="1"
-			@doSubmit="selectUsersToTransferTask"
-		></user-select>
-		<user-select2
-			ref="userSelect2"
-			@doSubmit="selectUser">
+		<user-select ref="userSelect" :limit="1" @doSubmit="selectUsersToTransferTask"></user-select>
+		<user-select2 ref="userSelect2" @doSubmit="selectUser">
 		</user-select2>
 		</user-select2>
 		<TodoDia ref="todoDia" @refreshDataList="refreshList"></TodoDia>
 		<TodoDia ref="todoDia" @refreshDataList="refreshList"></TodoDia>
 	</div>
 	</div>
@@ -219,7 +131,7 @@ export default {
 			visible: false,
 			visible: false,
 			currentTask: null,
 			currentTask: null,
 			processInstanceId: "",
 			processInstanceId: "",
-			searchParams:{
+			searchParams: {
 				title: "",
 				title: "",
 				assigneeId: "",
 				assigneeId: "",
 				searchDates: "",
 				searchDates: "",
@@ -252,7 +164,7 @@ export default {
 				this.searchForm.endDate = "";
 				this.searchForm.endDate = "";
 			}
 			}
 		},
 		},
-		index (index) {
+		index(index) {
 			if (index === this.i) {
 			if (index === this.i) {
 				this.refreshList()
 				this.refreshList()
 			}
 			}
@@ -265,41 +177,41 @@ export default {
 			//let loginUserId = this.$store.state.user.id  // 获取当前登录用户id
 			//let loginUserId = this.$store.state.user.id  // 获取当前登录用户id
 
 
 			console.log("this.sessionStorage", sessionStorage)
 			console.log("this.sessionStorage", sessionStorage)
-			if(sessionStorage){
+			if (sessionStorage) {
 				var beginDate = sessionStorage.getItem("beginDate")
 				var beginDate = sessionStorage.getItem("beginDate")
 				var endDate = sessionStorage.getItem("endDate")
 				var endDate = sessionStorage.getItem("endDate")
 				var title = this.searchForm.title
 				var title = this.searchForm.title
 				var assigneeId = this.searchForm.assigneeId
 				var assigneeId = this.searchForm.assigneeId
-				if(beginDate){
+				if (beginDate) {
 					this.searchForm.beginDate = beginDate;
 					this.searchForm.beginDate = beginDate;
 				}
 				}
-				if(endDate){
+				if (endDate) {
 					this.searchForm.endDate = endDate;
 					this.searchForm.endDate = endDate;
 				}
 				}
-				if (beginDate && endDate){
+				if (beginDate && endDate) {
 					var searchDates = []
 					var searchDates = []
 					searchDates.push(beginDate)
 					searchDates.push(beginDate)
 					searchDates.push(endDate)
 					searchDates.push(endDate)
 					this.searchDates = searchDates
 					this.searchDates = searchDates
 				}
 				}
-				if(title){
+				if (title) {
 					this.searchForm.title = title;
 					this.searchForm.title = title;
 				}
 				}
-				if(assigneeId){
+				if (assigneeId) {
 					this.searchForm.assigneeId = assigneeId;
 					this.searchForm.assigneeId = assigneeId;
 				}
 				}
 			}
 			}
-			if(this.searchForm.beginDate){
-				sessionStorage.setItem("beginDate",this.searchForm.beginDate)
+			if (this.searchForm.beginDate) {
+				sessionStorage.setItem("beginDate", this.searchForm.beginDate)
 			}
 			}
-			if(this.searchForm.endDate){
-				sessionStorage.setItem("endDate",this.searchForm.endDate)
+			if (this.searchForm.endDate) {
+				sessionStorage.setItem("endDate", this.searchForm.endDate)
 			}
 			}
-			if(this.searchForm.title){
-				sessionStorage.setItem("title",this.searchForm.title)
+			if (this.searchForm.title) {
+				sessionStorage.setItem("title", this.searchForm.title)
 			}
 			}
-			if(this.searchForm.assigneeId){
-				sessionStorage.setItem("assigneeId",this.searchForm.assigneeId)
+			if (this.searchForm.assigneeId) {
+				sessionStorage.setItem("assigneeId", this.searchForm.assigneeId)
 			}
 			}
 
 
 			taskService
 			taskService
@@ -310,7 +222,7 @@ export default {
 					...this.searchForm,
 					...this.searchForm,
 				})
 				})
 				.then((data) => {
 				.then((data) => {
-					console.log('zzz',data.records)
+					console.log('zzz', data.records)
 					this.dataList = data.records;
 					this.dataList = data.records;
 					this.tablePage.total = data.total;
 					this.tablePage.total = data.total;
 					this.loading = false;
 					this.loading = false;
@@ -323,7 +235,7 @@ export default {
 			this.refreshList();
 			this.refreshList();
 		},
 		},
 		todo(row) {
 		todo(row) {
-			console.log('row',row)
+			console.log('row', row)
 			//页面跳转后返回当前页筛选项仍保留
 			//页面跳转后返回当前页筛选项仍保留
 			let _data = Object.assign(this.searchParams, {});//将筛选项存入到data中
 			let _data = Object.assign(this.searchParams, {});//将筛选项存入到data中
 			sessionStorage.setItem('nowPageData', JSON.stringify(_data));//存入到sessionStorage中
 			sessionStorage.setItem('nowPageData', JSON.stringify(_data));//存入到sessionStorage中
@@ -337,7 +249,27 @@ export default {
 					procDefKey: row.task.processDefKey,
 					procDefKey: row.task.processDefKey,
 					status: row.status,
 					status: row.status,
 				})
 				})
-				.then((data) => {
+				.then(async (data) => {
+					// 如果为报销
+					if (this.isReimbursementProcess(data.procDefKey)) {
+						// 根据流程名称获取对应的报销表单地址
+						let url = this.isReimbursementUrl(row.processDefinitionName)
+						if (url) {
+							let approvalTime = await taskService.getApprovalTimeByProcInsId(row.task.processInstanceId)
+							if (approvalTime) {
+								// 根据发起审批的时间判断是否为新版本报销页面
+								let newStartDate = this.$dictUtils.getDictLabel("new_version_reimbursement_date", '1', '-')
+								const compareResult = this.validateXG.compareDate(approvalTime, newStartDate);
+								const newVersionFlag = compareResult == 'same' || compareResult == 'after';
+
+								if (newVersionFlag) {
+									data.formUrl = url
+								}
+							}
+						}
+					}
+
+
 					this.$router.push({
 					this.$router.push({
 						path: "/flowable/task/TaskForm",
 						path: "/flowable/task/TaskForm",
 						query: {
 						query: {
@@ -361,6 +293,65 @@ export default {
 					});
 					});
 				});
 				});
 		},
 		},
+		isReimbursementUrl(name) {
+			// 会计
+			let cw = ["会计-所长报销", "会计-所长报销-电子发票", "会计-总经办报销", "盛所会计-报销申请", "会计-报销审批", "会计-报销审批-电子发票"]
+			// 中审
+			let zs = ["中审-所长报销", "中审-所长报销-电子发票", "中审-总经办报销", "中审-报销审批", "中审-报销审批-电子发票"]
+			// 评估
+			let pg = ["评估-总经办报销", "评估-所长报销", "评估-所长报销-电子发票", "评估-报销申请", "评估-报销审批-电子发票"]
+			// 项目
+			let ccpm = ["物资-项目报销", "项目-总经办报销", "项目-报销审批", "项目-报销审批-电子发票", "盛所项目-报销申请",]
+			// 咨询
+			let zx = ["咨询-总经办报销", "咨询-所长报销", "咨询-所长报销-电子发票", "咨询-报销审批", "咨询-报销审批-电子发票"]
+			if (cw.includes(name)) {
+				return '/cw/reimbursementApproval/info/NewReimbursementForm'
+			}
+			if (zs.includes(name)) {
+				return '/zs/reimbursement/info/NewReimbursementForm'
+			}
+			if (pg.includes(name)) {
+				return '/reimbursement/info/NewReimbursementForm'
+			}
+			if (ccpm.includes(name)) {
+				return '/ccpm/reimbursement/info/NewReimbursementForm'
+			}
+			if (zx.includes(name)) {
+				return '/consultancy/reimbursement/info/NewReimbursementForm'
+			}
+			return null;
+		},
+		isReimbursementProcess(procDefKey) {
+			const reimbursementProcesses = [
+				"Process_1669271524486",
+				"Process_1669271524487",
+				"Process_1704851888818",
+				"Process_1705370333755",
+				"Process_1705389994103",
+				"Process_1705390592348",
+				"Process_1673924346231",
+				"Process_1673924346232",
+				"Process_1705391439287",
+				"Process_1705391725816",
+				"Process_1665383385070",
+				"Process_1665383385071",
+				"Process_1705454007925",
+				"Process_1705454863808",
+				"Process_1706170102059",
+				"Process_1706175399469",
+				"Process_1706176397312",
+				"Process_1706176937876",
+				"Process_1706671221048",
+				"Process_1706679472488",
+				"Process_1706680073642",
+				"Process_1706680331785",
+				"Process_1706680660857",
+				"Process_1709102298565",
+				"Process_1709104787957",
+				"Process_1711418224962",
+			];
+			return reimbursementProcesses.includes(procDefKey);
+		},
 		trace(row) {
 		trace(row) {
 			this.processInstanceId = row.task.processInstanceId;
 			this.processInstanceId = row.task.processInstanceId;
 			this.visible = true;
 			this.visible = true;
@@ -388,22 +379,22 @@ export default {
 			});
 			});
 			sessionStorage.clear()
 			sessionStorage.clear()
 		},
 		},
-		openUserDia(){
+		openUserDia() {
 			this.$refs.userSelect2.init()
 			this.$refs.userSelect2.init()
 		},
 		},
-		selectUser(user){
+		selectUser(user) {
 			console.log(user[0].name)
 			console.log(user[0].name)
-			this.searchForm.assigneeId=user[0].name
+			this.searchForm.assigneeId = user[0].name
 		},
 		},
-		approval(){
-			let info=this.$refs.todoTable.getCheckboxRecords()
+		approval() {
+			let info = this.$refs.todoTable.getCheckboxRecords()
 			this.$refs.todoDia.init(info)
 			this.$refs.todoDia.init(info)
 		},
 		},
 		// // 审核方法
 		// // 审核方法
-		todoCcpm (row) {
-			console.log('row',row)
-			if (row.task.processDefKey === '108' || row.task.processDefKey === '109' || row.task.processDefKey === '13'|| row.task.processDefKey === '102') {
-				console.log('row',row)
+		todoCcpm(row) {
+			console.log('row', row)
+			if (row.task.processDefKey === '108' || row.task.processDefKey === '109' || row.task.processDefKey === '13' || row.task.processDefKey === '102') {
+				console.log('row', row)
 				let id = row.vars.notifyId
 				let id = row.vars.notifyId
 				let title = '报销申请审批'
 				let title = '报销申请审批'
 				this.toCenterForm(id, title, row.task.processDefKey, 'audit') // 跳转
 				this.toCenterForm(id, title, row.task.processDefKey, 'audit') // 跳转
@@ -421,7 +412,7 @@ export default {
 			}
 			}
 		},
 		},
 		// // 审核页面跳转
 		// // 审核页面跳转
-		toCenterForm (id, title, processDefKey, type) {
+		toCenterForm(id, title, processDefKey, type) {
 			this.$router.push({ // 跳转
 			this.$router.push({ // 跳转
 				path: '/generateForm/Generateform',
 				path: '/generateForm/Generateform',
 				query: {
 				query: {
@@ -434,7 +425,7 @@ export default {
 			})
 			})
 		},
 		},
 		// // 发票审核页面跳转(财务审批)
 		// // 发票审核页面跳转(财务审批)
-		toInvoiceUpdateCenterForm (id, title, processDefKey, type) {
+		toInvoiceUpdateCenterForm(id, title, processDefKey, type) {
 			this.$router.push({ // 跳转
 			this.$router.push({ // 跳转
 				path: '/generateForm/InvoiceUpdateGenerateForm',
 				path: '/generateForm/InvoiceUpdateGenerateForm',
 				query: {
 				query: {
@@ -447,7 +438,7 @@ export default {
 			})
 			})
 		},
 		},
 		// // 发票审核页面跳转
 		// // 发票审核页面跳转
-		toInvoiceCenterForm (id, title, processDefKey, type) {
+		toInvoiceCenterForm(id, title, processDefKey, type) {
 			this.$router.push({ // 跳转
 			this.$router.push({ // 跳转
 				path: '/generateForm/InvoiceGenerateForm',
 				path: '/generateForm/InvoiceGenerateForm',
 				query: {
 				query: {