|
@@ -1,40 +1,64 @@
|
|
<template>
|
|
<template>
|
|
- <a-card :bordered="false" v-show="visible" class="card" :title="modalTitle">
|
|
|
|
- <a-row :gutter="48" slot="extra">
|
|
|
|
- <a-col :md="48" :sm="48">
|
|
|
|
- <a-space class="table-page-search-submitButtons">
|
|
|
|
- <a-button type="default" @click="handleCancel()">返回</a-button>
|
|
|
|
- </a-space>
|
|
|
|
- </a-col>
|
|
|
|
- </a-row>
|
|
|
|
|
|
+ <div v-show="visible">
|
|
<!-- <div class="btn">
|
|
<!-- <div class="btn">
|
|
<a-space class="table-page-search-submitButtons">
|
|
<a-space class="table-page-search-submitButtons">
|
|
<a-button :loading="confirmLoading" type="primary" @click="save()">提交</a-button>
|
|
<a-button :loading="confirmLoading" type="primary" @click="save()">提交</a-button>
|
|
<a-button type="default" @click="handleCancel()">返回</a-button>
|
|
<a-button type="default" @click="handleCancel()">返回</a-button>
|
|
</a-space>
|
|
</a-space>
|
|
</div> -->
|
|
</div> -->
|
|
- <title-divider title="业务信息" width="140px"></title-divider>
|
|
|
|
- <a-descriptions :column="2" bordered>
|
|
|
|
- <template v-for="item in descriptions">
|
|
|
|
- <a-descriptions-item v-if="item.type==='dataSelect'" :key="item.value" :label="item.label">
|
|
|
|
- {{ detail[item.attrs.connect[1].bind] }}
|
|
|
|
- </a-descriptions-item>
|
|
|
|
- <a-descriptions-item v-else :key="item.value" :label="item.label">
|
|
|
|
- {{ detail[item.value] }}
|
|
|
|
- </a-descriptions-item>
|
|
|
|
- </template>
|
|
|
|
|
|
|
|
- </a-descriptions>
|
|
|
|
- <title-divider title="审批处理" width="140px"></title-divider>
|
|
|
|
- <a-row type="flex" justify="space-between">
|
|
|
|
- <a-col :span="10">
|
|
|
|
- <a-form :form="form" :labelCol="BaseTool.Constant.labelCol" :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
|
|
|
+ <a-row :gutter="20">
|
|
|
|
+ <a-col :span="18">
|
|
|
|
+ <div class="detail card">
|
|
|
|
+ <title-divider title="业务信息" width="140px"></title-divider>
|
|
|
|
+ <a-descriptions :column="2" bordered>
|
|
|
|
+ <template v-for="item in descriptions">
|
|
|
|
+ <a-descriptions-item v-if="item.type==='dataSelect'" :key="item.value" :label="item.label">
|
|
|
|
+ {{ detail[item.attrs.connect[1].bind] }}
|
|
|
|
+ </a-descriptions-item>
|
|
|
|
+ <a-descriptions-item v-else :key="item.value" :label="item.label">
|
|
|
|
+ {{ detail[item.value] }}
|
|
|
|
+ </a-descriptions-item>
|
|
|
|
+ </template>
|
|
|
|
+ </a-descriptions>
|
|
|
|
+ <title-divider title="审核进度" width="140px"></title-divider>
|
|
|
|
+ <a-list item-layout="vertical" :data-source="model.recordList">
|
|
|
|
+ <a-list-item slot="renderItem" key="item.title" slot-scope="item">
|
|
|
|
+ <a-list-item-meta>
|
|
|
|
+ <template #title>
|
|
|
|
+ <div style="width:100%;height:35px;display:flex;justify-content: space-between;align-items: center;font-size: 14px;">
|
|
|
|
+ <span>{{ item.createdUserName }} - {{ statusMap[item.handleStatus] }}</span> <span>{{ item.createdTime }}</span>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+
|
|
|
|
+ <a-avatar :style="{ backgroundColor: colors[item.handleStatus%4], verticalAlign: 'middle' }" slot="avatar">
|
|
|
|
+ <my-icon v-if="icons[item.handleStatus].includes('icon-')" :type="icons[item.handleStatus]"></my-icon>
|
|
|
|
+ <a-icon v-else :type="icons[item.handleStatus]"></a-icon>
|
|
|
|
+ </a-avatar>
|
|
|
|
+ </a-list-item-meta>
|
|
|
|
+ <div>
|
|
|
|
+ <div style="font-size: 12px">{{ item.handleRemark }}</div>
|
|
|
|
+ <a-space>
|
|
|
|
+ <img v-for="file in item.imageList" :key="file.id" :src="file.url" :alt="file.name" width="80px" @click="$refs.imgView.base(file.url)" />
|
|
|
|
+ </a-space>
|
|
|
|
+ <br>
|
|
|
|
+ <a-space direction="vertical">
|
|
|
|
+ <a style="font-size: 12px" v-for="file in item.fileList" :key="file.id" target="_blank" :href="file.url"><a-icon type="file" />{{ file.name }}</a>
|
|
|
|
+ </a-space>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
|
|
+ </a-list-item>
|
|
|
|
+ </a-list>
|
|
|
|
+ </div>
|
|
|
|
+ </a-col>
|
|
|
|
+ <a-col :span="6">
|
|
|
|
+ <a-form class="card" :form="form" :labelCol="BaseTool.Constant.labelCol2" :wrapperCol="BaseTool.Constant.wrapperCol2">
|
|
<a-form-item v-show="false">
|
|
<a-form-item v-show="false">
|
|
<a-input v-decorator="['taskBomId']" type="hidden" />
|
|
<a-input v-decorator="['taskBomId']" type="hidden" />
|
|
<a-input v-decorator="['taskId']" type="hidden" />
|
|
<a-input v-decorator="['taskId']" type="hidden" />
|
|
</a-form-item>
|
|
</a-form-item>
|
|
<a-form-item label="审批">
|
|
<a-form-item label="审批">
|
|
- <a-radio-group v-decorator="['handleStatus', {initialValue:3, rules: [{required: true, message: '审批不能为空'}]}]" @change="handleSelect">
|
|
|
|
|
|
+ <a-radio-group v-decorator="['handleStatus', {initialValue:3}]" @change="handleSelect">
|
|
<template v-for="(label,value) in statusMap">
|
|
<template v-for="(label,value) in statusMap">
|
|
<a-radio v-if="value>2&&value<6" :key="value" :value="parseInt(value)">{{label}}</a-radio>
|
|
<a-radio v-if="value>2&&value<6" :key="value" :value="parseInt(value)">{{label}}</a-radio>
|
|
</template>
|
|
</template>
|
|
@@ -46,30 +70,50 @@
|
|
<a-form-item label="附件">
|
|
<a-form-item label="附件">
|
|
<UploadFile v-decorator="['fileList']" />
|
|
<UploadFile v-decorator="['fileList']" />
|
|
</a-form-item>
|
|
</a-form-item>
|
|
- <a-form-item label="审批备注">
|
|
|
|
- <a-textarea v-decorator="['handleRemark', {initialValue:'同意',rules: [{required: true, message: '审批备注不能为空'}]}]" />
|
|
|
|
|
|
+ <a-form-item label="备注">
|
|
|
|
+ <a-textarea v-decorator="['handleRemark', {initialValue:'同意'}]" />
|
|
</a-form-item>
|
|
</a-form-item>
|
|
- <a-form-item label=" ">
|
|
|
|
- <a-button :loading="confirmLoading" type="primary" @click="save()">提交</a-button>
|
|
|
|
|
|
+ <a-form-item>
|
|
|
|
+ <div class="btn">
|
|
|
|
+ <a-space>
|
|
|
|
+ <a-button :loading="confirmLoading" type="primary" @click="save()">提交</a-button>
|
|
|
|
+ <a-button type="default" @click="handleCancel()">返回</a-button>
|
|
|
|
+ </a-space>
|
|
|
|
+ </div>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
</a-form>
|
|
</a-form>
|
|
</a-col>
|
|
</a-col>
|
|
- <a-col :span="10">
|
|
|
|
-
|
|
|
|
- </a-col>
|
|
|
|
</a-row>
|
|
</a-row>
|
|
- </a-card>
|
|
|
|
|
|
+ <ImgView ref="imgView" />
|
|
|
|
+ </div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import { verifyWorkflow } from '@/api/workflow/publish'
|
|
import { verifyWorkflow } from '@/api/workflow/publish'
|
|
import UploadFile from '@/components/Upload/CUploadFile.vue'
|
|
import UploadFile from '@/components/Upload/CUploadFile.vue'
|
|
import UploadImg from '@/components/Upload/CUploadImg.vue'
|
|
import UploadImg from '@/components/Upload/CUploadImg.vue'
|
|
|
|
+import ImgView from '@/components/viewImg/index.vue'
|
|
export default {
|
|
export default {
|
|
name: 'WorkflowTaskBomFieldDetail',
|
|
name: 'WorkflowTaskBomFieldDetail',
|
|
- components: { UploadFile, UploadImg },
|
|
|
|
|
|
+ components: { UploadFile, UploadImg, ImgView },
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
|
|
+ colors: {
|
|
|
|
+ 1: '#666',
|
|
|
|
+ 2: '#1890ff',
|
|
|
|
+ 3: '#52c41a',
|
|
|
|
+ 4: '#f5222d',
|
|
|
|
+ 5: '#faad14',
|
|
|
|
+ 6: '#faad14',
|
|
|
|
+ },
|
|
|
|
+ icons: {
|
|
|
|
+ 1: 'highlight',
|
|
|
|
+ 2: 'icon-huojian',
|
|
|
|
+ 3: 'check',
|
|
|
|
+ 4: 'close',
|
|
|
|
+ 5: 'exclamation',
|
|
|
|
+ 6: 'exclamation',
|
|
|
|
+ },
|
|
confirmLoading: false,
|
|
confirmLoading: false,
|
|
modalTitle: null,
|
|
modalTitle: null,
|
|
visible: false,
|
|
visible: false,
|
|
@@ -141,12 +185,34 @@ export default {
|
|
<style lang="less" scoped>
|
|
<style lang="less" scoped>
|
|
.card {
|
|
.card {
|
|
min-height: calc(100vh - 150px);
|
|
min-height: calc(100vh - 150px);
|
|
|
|
+ max-height: calc(100vh - 150px);
|
|
|
|
+ background: #fff;
|
|
|
|
+ padding: 20px;
|
|
|
|
+ border-radius: 4px;
|
|
|
|
+ overflow-y: auto;
|
|
|
|
+ //隐藏滚动条
|
|
|
|
+ // &::-webkit-scrollbar {
|
|
|
|
+ // display: none;
|
|
|
|
+ // }
|
|
|
|
+ //滚动条整体部分
|
|
|
|
+ &::-webkit-scrollbar {
|
|
|
|
+ width: 6px;
|
|
|
|
+ height: 6px;
|
|
|
|
+ }
|
|
|
|
+ //滚动条的轨道(里面装有Thumb)
|
|
|
|
+ &::-webkit-scrollbar-track {
|
|
|
|
+ background-color: #f1f1f1;
|
|
|
|
+ }
|
|
|
|
+ //滚动条里面的小方块,能向上向下移动(或往左往右移动,取决于是垂直滚动条还是水平滚动条)
|
|
|
|
+ &::-webkit-scrollbar-thumb {
|
|
|
|
+ background-color: #c1c1c1;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
.btn {
|
|
.btn {
|
|
text-align: center;
|
|
text-align: center;
|
|
- position: absolute;
|
|
|
|
- bottom: 20px;
|
|
|
|
- left: 50%;
|
|
|
|
- transform: translateX(-50%);
|
|
|
|
|
|
+ width: 100%;
|
|
|
|
+}
|
|
|
|
+/deep/ .ant-radio-wrapper {
|
|
|
|
+ margin-right: 4px;
|
|
}
|
|
}
|
|
</style>
|
|
</style>
|