This commit is contained in:
大黑 2025-12-24 11:25:06 +08:00
parent bc33619a91
commit 0d2457af5b
11 changed files with 2851 additions and 527 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -48,6 +48,10 @@ export default {
url: '/custom/template/export',
method: 'get'
},
DOWNLODE_ALL_MODEL: {
url: '/custom/template/exportMultiple',
method: 'get'
},
//获取部门
GET_DEPARTMENT: {
url: '/custom/template/getDept',

View File

@ -276,17 +276,7 @@
</div>
<!-- 流程主题 -->
<div class="approval-process-title">
<div class="description-label">
流程主题 <span class="required-mark">*</span>
</div>
<el-input
v-model="approvalFormData.processTitle"
maxlength="100"
show-word-limit
placeholder="请输入流程主题"
/>
</div>
<!-- 说明 -->
<div class="approval-description">
@ -306,6 +296,17 @@
<div class="workflow-title">
审批环节
</div>
<div class="approval-process-title">
<div class="description-label">
流程主题 <span class="required-mark">*</span>
</div>
<el-input
v-model="approvalFormData.processTitle"
maxlength="100"
show-word-limit
placeholder="请输入流程主题"
/>
</div>
<div class="workflow-table">
<table class="workflow-table-content">
<thead>
@ -603,7 +604,7 @@ export default {
// }
// initialize version data for v2/v3 as example variations
//
this.loadUserSelfRole()
// this.loadUserSelfRole()
//
this.loadResponsiblePersons()
this.loadFillerPersons()

View File

@ -544,7 +544,7 @@ export default {
},
handleDownloadImportTemplate() {
const request = {
...api.DOWNLODE_MODEL,
...api.DOWNLODE_ALL_MODEL,
disableSuccessMsg: true
}
this.$request(request)

View File

@ -198,15 +198,7 @@
:rows="2"
placeholder="请输入"
/>
<div class="description-label">
流程主题 <span class="required-mark">*</span>
</div>
<el-input
v-model="approvalFormData.processTitle"
maxlength="100"
show-word-limit
placeholder="请输入流程主题"
/>
</div>
<!-- 审批环节 -->
@ -214,6 +206,19 @@
<div class="workflow-title">
审批环节
</div>
<div>
<div class="approval-process-title">
<div class="description-label">
流程主题 <span class="required-mark">*</span>
</div>
<el-input
v-model="approvalFormData.processTitle"
maxlength="100"
show-word-limit
placeholder="请输入流程主题"
/>
</div>
</div>
<div class="workflow-table">
<table class="workflow-table-content">
<thead>
@ -612,7 +617,7 @@ export default {
// GET_MODEL_DETAIL status
// DRAFT COMPLETE
const status = this.currentStatus || ''
return (status === 'DRAFT' || status === 'COMPLETE') && this.isLatestVersion
return (status === 'DRAFT' || status === 'COMPLETE')
},
// DRAFT COMPLETE
shouldShowMaintainButton() {
@ -974,7 +979,7 @@ export default {
}
},
created() {
this.loadUserSelfRole()
// this.loadUserSelfRole()
// 使 props使
if (this.templateId) {
this.internalTemplateId = this.templateId
@ -2919,7 +2924,7 @@ export default {
}
}
}
.required-mark{color:#f56c6c;margin-left:4px}
//
.approval-content {
display: flex;

View File

@ -34,6 +34,12 @@
align="center"
min-width="150"
/>
<el-table-column
prop="roleCode"
label="角色代码"
align="center"
min-width="150"
/>
<el-table-column
prop="roleDescription"
label="角色描述"
@ -312,8 +318,7 @@
ref="addRoleForm"
:model="addRoleFormData"
:rules="addRoleFormRules"
label-width="100px"
>
label-width="100px">
<el-form-item label="角色名称" prop="roleName">
<el-input
v-model="addRoleFormData.roleName"
@ -322,6 +327,14 @@
show-word-limit
/>
</el-form-item>
<el-form-item label="角色代码" prop="roleCode">
<el-input
v-model="addRoleFormData.roleCode"
placeholder="请输入角色代码"
maxlength="50"
show-word-limit
/>
</el-form-item>
<el-form-item label="角色描述" prop="roleDescription">
<el-input
v-model="addRoleFormData.roleDescription"
@ -332,7 +345,7 @@
show-word-limit
/>
</el-form-item>
</el-form>
</el-form-item>
<div slot="footer" class="dialog-footer">
<el-button @click="handleAddRoleDialogClose">
取消
@ -864,10 +877,12 @@ export default {
? {
id: this.addRoleFormData.roleId,
roleName: this.addRoleFormData.roleName,
roleCode: this.addRoleFormData.roleCode,
roleDescription: this.addRoleFormData.roleDescription
}
: {
roleName: this.addRoleFormData.roleName,
roleCode: this.addRoleFormData.roleCode,
roleDescription: this.addRoleFormData.roleDescription
},
disableSuccessMsg: true
@ -1105,7 +1120,7 @@ export default {
//
loadDepartmentList() {
const request = {
...api.GET_SUB_DEPT,
...api.QUERY_ORG_TREE,
disableSuccessMsg: true
}
this.$request(request)

View File

@ -84,7 +84,9 @@
</div>
<div class="toolbar">
<el-button type="primary" @click="handleCreate">新增</el-button>
<el-button type="primary" @click="handleCreate">
新增
</el-button>
<!-- <el-button @click="handleDownloadTemplate">下载模板</el-button> -->
</div>
<div class="page-data-list">
@ -111,7 +113,9 @@
v-for="(colConfig, index) in tableConfig.colConfigs"
v-slot:[colConfig.customHeadSlot]="{ column }"
>
<div v-if="colConfig.customHeadSlot" :key="index"> {{ column }} {{ colConfig }} </div>
<div v-if="colConfig.customHeadSlot" :key="index">
{{ column }} {{ colConfig }}
</div>
</template>
<template
@ -122,52 +126,60 @@
<span
v-if="row[colConfig.prop] === 'APPROVING'"
style="background: #E6A23C; padding: 4px 8px; color: white; border-radius: 20px;"
>审核中</span
>
审核中
</span>
<span
v-else-if="row[colConfig.prop] === 'COMPLETE'"
style="background: #67C23A; padding: 4px 8px; color: white; border-radius: 20px;"
>已完成</span
>
已完成
</span>
<span
v-else-if="row[colConfig.prop] === 'DRAFT'"
style="background: #909399; padding: 4px 8px; color: white; border-radius: 20px;"
>草稿</span
>
草稿
</span>
<span
v-else-if="row[colConfig.prop] === 'REJECTED'"
style="background: #F56C6C; padding: 4px 8px; color: white; border-radius: 20px;"
>已拒绝</span
>
已拒绝
</span>
<span
v-else
style="background: #909399; padding: 4px 8px; color: white; border-radius: 20px;"
>-</span
>
-
</span>
</div>
<div v-if="colConfig.customSlot === 'options'" :key="'op' + index + '' + rowIndex">
<a
href="javascript:void(0)"
class="el-link el-link--primary"
@click.stop="handleRowView(row)"
>查看</a
>
查看
</a>
<span style="width: 6px; display: inline-block"></span>
<a
v-if="row.status !== 'APPROVING' && row.status !== 'COMPLETE'"
v-if="false"
href="javascript:void(0)"
class="el-link el-link--primary"
@click.stop="handleEdit(row)"
>修改</a
>
修改
</a>
<span style="width: 6px; display: inline-block"></span>
<a
v-if="row.status === 'APPROVING'"
href="javascript:void(0)"
class="el-link el-link--primary"
@click.stop="handleApprove(row)"
>审批</a
>
审批
</a>
<span
v-if="row.status === 'APPROVING'"
style="width: 6px; display: inline-block"
@ -177,8 +189,9 @@
href="javascript:void(0)"
class="el-link el-link--primary"
@click.stop="handleLaunch(row)"
>发起</a
>
发起
</a>
<span
v-if="!row.status || row.status === '' || row.status === 'DRAFT'"
style="width: 6px; display: inline-block"
@ -188,8 +201,9 @@
href="javascript:void(0)"
class="el-link el-link--primary"
@click.stop="handleRestart(row)"
>重新发起</a
>
重新发起
</a>
<span
v-if="row.status === 'REJECTED'"
style="width: 6px; display: inline-block"
@ -199,8 +213,9 @@
href="javascript:void(0)"
class="el-link el-link--primary"
@click.stop="handleDownload(row)"
>下载</a
>
下载
</a>
</div>
</template>
@ -344,8 +359,12 @@
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="handleDialogClose">取消</el-button>
<el-button type="primary" @click="handleSubmit">确定</el-button>
<el-button @click="handleDialogClose">
取消
</el-button>
<el-button type="primary" @click="handleSubmit">
确定
</el-button>
</div>
</el-dialog>
@ -359,6 +378,18 @@
@close="handleLaunchDialogClose"
>
<div class="dialog-body-wrapper">
<div class="approval-process-title">
<div class="description-label">
流程主题 <span class="required-mark">*</span>
</div>
<el-input
v-model="launchProcessTitle"
maxlength="100"
show-word-limit
placeholder="请输入流程主题"
/>
</div>
<div class="approval-workflow">
<div class="workflow-title">
审批环节
@ -414,8 +445,12 @@
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="handleLaunchDialogClose">取消</el-button>
<el-button type="primary" :loading="launching" @click="handleLaunchSubmit">确定</el-button>
<el-button @click="handleLaunchDialogClose">
取消
</el-button>
<el-button type="primary" :loading="launching" @click="handleLaunchSubmit">
确定
</el-button>
</div>
</el-dialog>
@ -503,6 +538,7 @@ export default {
currentEditRow: null, //
launchDialogVisible: false, //
currentLaunchRow: null, //
launchProcessTitle: '',
launchWorkflowSteps: [
{
name: '校对',
@ -717,6 +753,7 @@ export default {
},
handleLaunch(row) {
this.currentLaunchRow = row
this.launchProcessTitle = row.title || ''
//
this.launchWorkflowSteps = [
{
@ -746,6 +783,7 @@ export default {
handleLaunchDialogClose() {
this.launchDialogVisible = false
this.currentLaunchRow = null
this.launchProcessTitle = ''
//
this.launchWorkflowSteps = [
{
@ -787,6 +825,13 @@ export default {
return
}
//
const processTitle = (this.launchProcessTitle || '').trim()
if (!processTitle) {
this.$message.warning('请填写流程主题')
return
}
const reportId = this.currentLaunchRow.reportId || this.currentLaunchRow.id
if (!reportId) {
this.$message.error('缺少报告ID')
@ -797,6 +842,7 @@ export default {
const submitData = {
reportId: reportId,
userId: getUserId(),
processTitle: processTitle,
proofreadUsers: this.launchWorkflowSteps[0].handlers,
reviewUsers: this.launchWorkflowSteps[1].handlers,
countersignUsers: [],

File diff suppressed because it is too large Load Diff