修改任务确认流程
This commit is contained in:
@@ -17,46 +17,8 @@
|
||||
<span slot="approvalResult" slot-scope="text,result">
|
||||
{{approvalResult[text]}}
|
||||
</span>
|
||||
<span slot="approvalFile" slot-scope="text,result">
|
||||
<a v-if="text" @click="clickButtonToUpload(text)">
|
||||
{{$t('viewFile')}}
|
||||
</a>
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
<a-modal
|
||||
:title="$t('deliverableTemplate')"
|
||||
:width="600"
|
||||
:visible="visibleFile"
|
||||
:maskClosable="false"
|
||||
@cancel="visibleFile = false"
|
||||
>
|
||||
<template slot="footer">
|
||||
<a-button key="back" @click="visibleFile = false">
|
||||
{{$t('cancel')}}
|
||||
</a-button>
|
||||
</template>
|
||||
<a-table
|
||||
class="table"
|
||||
:columns="columnsFile"
|
||||
:pagination="false"
|
||||
:scroll="{x:500,y: 400}"
|
||||
:data-source="dataSourceFile"
|
||||
:loading="loading"
|
||||
>
|
||||
<span slot="fileOperation" slot-scope="record">
|
||||
<a class="text" @click="pdfPreview(record)"
|
||||
:disabled="record.fileSuffix == '.pdf' || record.fileSuffix == '.docx'
|
||||
|| record.fileSuffix == '.xlsx' || record.fileSuffix == '.xls' ? false : true">
|
||||
{{$t('See')}}
|
||||
</a>
|
||||
<a class="text" @click="download(record)">
|
||||
{{ $t('download') }}
|
||||
</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</a-modal>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -78,60 +40,41 @@
|
||||
3: this.$t('issue')
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('operationNode'),
|
||||
dataIndex: 'name',
|
||||
align: 'center',
|
||||
width:'20%',
|
||||
},
|
||||
{
|
||||
title: this.$t('Operator'),
|
||||
dataIndex: 'assignee',
|
||||
align: 'center',
|
||||
width:'20%',
|
||||
},
|
||||
{
|
||||
title: this.$t('result'),
|
||||
dataIndex: 'approvalResult',
|
||||
align: 'center',
|
||||
width:'20%',
|
||||
scopedSlots: { customRender: 'approvalResult' }
|
||||
},
|
||||
{
|
||||
title: this.$t('opinion'),
|
||||
dataIndex: 'approvalOpinion',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('enclosure'),
|
||||
dataIndex: 'approvalFile',
|
||||
align: 'center',
|
||||
scopedSlots: { customRender: 'approvalFile' }
|
||||
},
|
||||
{
|
||||
title: this.$t('operationNode'),
|
||||
dataIndex: 'name',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('Operator'),
|
||||
dataIndex: 'assignee',
|
||||
align: 'center'
|
||||
width:'20%',
|
||||
},
|
||||
{
|
||||
title: this.$t('operationTime'),
|
||||
dataIndex: 'createTime',
|
||||
align: 'center',
|
||||
width:'20%',
|
||||
customRender: function(t, r, index) {
|
||||
return moment(t).format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
}
|
||||
],
|
||||
visibleFile: false,
|
||||
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||
dataSourceFile: [],
|
||||
columnsFile: [
|
||||
{
|
||||
title: this.$t('enclosure'),
|
||||
dataIndex: 'fileName',
|
||||
align: 'center',
|
||||
width: 260,
|
||||
ellipsis: true
|
||||
},
|
||||
{
|
||||
title: this.$t('operation'),
|
||||
align: 'center',
|
||||
width: 130,
|
||||
scopedSlots: { customRender: 'fileOperation' }
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -147,46 +90,6 @@
|
||||
this.dataSource = res
|
||||
})
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
this.loading = true
|
||||
this.visibleFile = true
|
||||
getAction('sys/common/getFileInfos', { id: item }).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSourceFile = res.result
|
||||
this.dataSourceFile.forEach((val) => {
|
||||
let fileName = val.fileName
|
||||
let index1 = fileName.lastIndexOf('.')
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
val.fileSuffix = fileSuffix
|
||||
})
|
||||
this.loading = false
|
||||
} else {
|
||||
this.dataSourceFile = []
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
pdfPreview(fileQuery) {
|
||||
let fileName = fileQuery.fileName
|
||||
let index1 = fileName.lastIndexOf('.')
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
if (fileSuffix == '.pdf') {
|
||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id))
|
||||
} else if (fileSuffix == '.docx') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else if (fileSuffix == '.xlsx' || fileSuffix == '.xls') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else {
|
||||
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
|
||||
}
|
||||
},
|
||||
download(item) {
|
||||
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id })
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -2,18 +2,18 @@
|
||||
<div class="box">
|
||||
<div class="box-text">
|
||||
<div class="header-text">
|
||||
{{$t('circulationInformation')}}
|
||||
{{title}}
|
||||
</div>
|
||||
</div>
|
||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
||||
<a-row :gutter="24" v-if="isFlag">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('reviewResults')">{{$t('reviewResults')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="flag">
|
||||
<!-- <div class="title-text">-->
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<!-- <span class="title-text-text" :title="$t('reviewResults')">{{$t('reviewResults')}}</span>-->
|
||||
<!-- </div>-->
|
||||
<a-form-model-item style="margin-left: 36px" class="itemModel" prop="flag">
|
||||
<a-radio-group style="margin-top: 2px" @change="flagChange" class="box-input" v-model="formInline.flag">
|
||||
<a-radio value="0">
|
||||
{{$t('agree')}}
|
||||
@@ -22,7 +22,7 @@
|
||||
{{$t('disagree')}}
|
||||
</a-radio>
|
||||
<a-radio value="3" v-if="issue">
|
||||
{{$t('issue')}}
|
||||
{{$t('inquiry')}}
|
||||
</a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-model-item>
|
||||
@@ -34,12 +34,12 @@
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('selectIssuer')">{{$t('selectIssuer')}}</span>
|
||||
<span class="title-text-text" :title="$t('selectInquiry')">{{$t('selectInquiry')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="dreUserIdName">
|
||||
<PersonnelSelection class="box-input"
|
||||
:personneQuery="formInline"
|
||||
:query="{db_field_name:'dreUserId',db_field_txt:$t('selectIssuer')}"
|
||||
:query="{db_field_name:'dreUserId',db_field_txt:$t('selectInquiry')}"
|
||||
:isInput="true"
|
||||
@change="PersonnelSelectionChange"
|
||||
v-model="formInline.dreUserIdName"/>
|
||||
@@ -101,7 +101,11 @@
|
||||
isApprovalOpinion: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
title:{
|
||||
type: String,
|
||||
default: ''
|
||||
},
|
||||
},
|
||||
components: {
|
||||
uploadFile,
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
<a-button class="header-btn prese" v-if="isPreservation" @click="preservation">{{$t('preservation')}}</a-button>
|
||||
<!-- 下发-->
|
||||
<a-button class="header-btn issue" v-if="isIssue" @click="issue" type="primary" ghost>{{$t('issue')}}</a-button>
|
||||
<!-- 提交-->
|
||||
<a-button class="header-btn submit" v-if="isSubmit" @click="submit" type="primary">{{$t('submit')}}</a-button>
|
||||
<a-button class="header-btn termin" v-if="isSendBack" @click="sendBackCkick" type="danger" ghost>
|
||||
{{$t('sendBack')}}
|
||||
</a-button>
|
||||
<!-- 提交-->
|
||||
<a-button class="header-btn submit" v-if="isSubmit" @click="submit" type="primary">{{$t('submit')}}</a-button>
|
||||
<a-button class="header-btn submit" v-if="isResubmit" @click="Resubmit" type="primary">{{$t('Resubmit')}}</a-button>
|
||||
<a-button class="header-btn submit" v-if="isAdopt" @click="adopt" type="primary">{{$t('submit')}}</a-button>
|
||||
</div>
|
||||
|
||||
@@ -2,7 +2,10 @@
|
||||
<div class="box">
|
||||
<div class="box-text">
|
||||
<div class="header-text">
|
||||
{{$t('standardContent')}}
|
||||
{{title}}
|
||||
</div>
|
||||
<div v-if="isConfirmationDeadline" class="header-text" style="margin-right: 20px">
|
||||
{{this.$t('ConfirmationDeadline')}} : {{this.queryForm.taskAffirmDueDate}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="content-text">
|
||||
@@ -54,7 +57,15 @@
|
||||
standardContentQuery: {
|
||||
type: Object,
|
||||
default: {}
|
||||
}
|
||||
},
|
||||
title:{
|
||||
type:String,
|
||||
default:'',
|
||||
},
|
||||
isConfirmationDeadline:{
|
||||
type:Boolean,
|
||||
default:false,
|
||||
},
|
||||
},
|
||||
components: {
|
||||
viewFileModel
|
||||
|
||||
@@ -9,33 +9,12 @@
|
||||
:columns="columns"
|
||||
>
|
||||
<span slot="designDeliverableTemplateName" slot-scope="text,record">
|
||||
<span>{{ record.designDeliverableType_dictText }}</span><br v-if="record.designDeliverableType_dictText">
|
||||
<a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"
|
||||
@click="pdfPreviewClick(record.designDeliverableTemplateName,record.designDeliverableTemplate)">
|
||||
{{ record.designDeliverableTemplateName }}
|
||||
<a v-if="record.DeliverableTemplate && record.DeliverableTemplate.split(',').length == 1"
|
||||
@click="pdfPreviewClick(record.DeliverableTemplateName,record.DeliverableTemplate)">
|
||||
{{ record.DeliverableTemplateName }}
|
||||
</a>
|
||||
<a v-else-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length > 1"
|
||||
@click="clickButtonToUpload(record.designDeliverableTemplate)">{{ $t('viewFile') }}</a>
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
<span slot="prehomoDeliverableTemplateName" slot-scope="text,record">
|
||||
<span>{{ record.prehomoDeliverableType_dictText }}</span><br v-if="record.prehomoDeliverableType_dictText">
|
||||
<a v-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length == 1"
|
||||
@click="pdfPreviewClick(record.prehomoDeliverableTemplateName,record.prehomoDeliverableTemplate)">
|
||||
{{ record.prehomoDeliverableTemplateName }}
|
||||
</a>
|
||||
<a v-else-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length > 1"
|
||||
@click="clickButtonToUpload(record.prehomoDeliverableTemplate)">{{ $t('viewFile') }}</a>
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
<span slot="verifyDeliverableTemplateName" slot-scope="text,record">
|
||||
<span>{{ record.verifyDeliverableType_dictText }}</span><br v-if="record.verifyDeliverableType_dictText">
|
||||
<a v-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length == 1"
|
||||
@click="pdfPreviewClick(record.verifyDeliverableTemplateName,record.verifyDeliverableTemplate)">
|
||||
{{ record.verifyDeliverableTemplateName }}
|
||||
</a>
|
||||
<a v-else-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length > 1"
|
||||
@click="clickButtonToUpload(record.verifyDeliverableTemplate)">{{ $t('viewFile') }}</a>
|
||||
<a v-else-if="record.DeliverableTemplate && record.DeliverableTemplate.split(',').length > 1"
|
||||
@click="clickButtonToUpload(record.DeliverableTemplate)">{{ $t('viewFile') }}</a>
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
</a-table>
|
||||
@@ -55,7 +34,7 @@
|
||||
class="table"
|
||||
:columns="columnsFile"
|
||||
:pagination="false"
|
||||
:scroll="{x:500,y: 400}"
|
||||
:scroll="{x:true,y: 400}"
|
||||
:data-source="dataSourceFile"
|
||||
:loading="loading"
|
||||
>
|
||||
@@ -92,82 +71,47 @@
|
||||
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('confirmationOfDesignConformity'),
|
||||
children: [
|
||||
{
|
||||
title: this.$t('Deliverables'),
|
||||
dataIndex: 'designDeliverableTemplateName',
|
||||
align: 'center',
|
||||
scopedSlots: { customRender: 'designDeliverableTemplateName' }
|
||||
},
|
||||
{
|
||||
title: this.$t('Sponsor'),
|
||||
dataIndex: 'designInitiatorName',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('personLiable'),
|
||||
dataIndex: 'designDutyName',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('TaskCutOffTime'),
|
||||
dataIndex: 'designDueDate',
|
||||
align: 'center'
|
||||
}
|
||||
]
|
||||
title: this.$t('ProcessType'),
|
||||
dataIndex: 'ProcessType',
|
||||
align: 'center',
|
||||
width:200,
|
||||
},
|
||||
{
|
||||
title: this.$t('PrehomoConfirmation'),
|
||||
children: [
|
||||
{
|
||||
title: this.$t('Deliverables'),
|
||||
dataIndex: 'prehomoDeliverableTemplateName',
|
||||
align: 'center',
|
||||
scopedSlots: { customRender: 'prehomoDeliverableTemplateName' }
|
||||
},
|
||||
{
|
||||
title: this.$t('Sponsor'),
|
||||
dataIndex: 'prehomoInitiatorName',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('personLiable'),
|
||||
dataIndex: 'prehomoDutyName',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('TaskCutOffTime'),
|
||||
dataIndex: 'prehomoDueDate',
|
||||
align: 'center'
|
||||
}
|
||||
]
|
||||
title: this.$t('Sponsor'),
|
||||
dataIndex: 'InitiatorName',
|
||||
align: 'center',
|
||||
width:160,
|
||||
},
|
||||
{
|
||||
title: this.$t('verificationAndConformityconfirmation'),
|
||||
children: [
|
||||
{
|
||||
title: this.$t('Deliverables'),
|
||||
dataIndex: 'verifyDeliverableTemplateName',
|
||||
align: 'center',
|
||||
scopedSlots: { customRender: 'verifyDeliverableTemplateName' }
|
||||
},
|
||||
{
|
||||
title: this.$t('Sponsor'),
|
||||
dataIndex: 'verifyInitiatorName',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('personLiable'),
|
||||
dataIndex: 'verifyDutyName',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: this.$t('TaskCutOffTime'),
|
||||
dataIndex: 'verifyDueDate',
|
||||
align: 'center'
|
||||
}
|
||||
]
|
||||
title: this.$t('personLiable'),
|
||||
dataIndex: 'DutyName',
|
||||
align: 'center',
|
||||
width:160,
|
||||
},
|
||||
{
|
||||
title: this.$t('TaskCutOffTime'),
|
||||
dataIndex: 'DueDate',
|
||||
align: 'center',
|
||||
width:160,
|
||||
},
|
||||
{
|
||||
title: this.$t('typeOfDeliverables'),
|
||||
dataIndex: 'DeliverableType',
|
||||
align: 'center',
|
||||
width:160,
|
||||
},
|
||||
{
|
||||
title: this.$t('deliverableTemplate'),
|
||||
dataIndex: 'DeliverableTemplateName',
|
||||
align: 'center',
|
||||
width:260,
|
||||
scopedSlots: { customRender: 'designDeliverableTemplateName' }
|
||||
},
|
||||
{
|
||||
title: this.$t('descriptionDeliverables'),
|
||||
dataIndex: 'remark',
|
||||
align: 'center',
|
||||
width:300,
|
||||
}
|
||||
],
|
||||
loading: false,
|
||||
@@ -192,7 +136,36 @@
|
||||
},
|
||||
mounted() {
|
||||
this.dataSource = []
|
||||
this.dataSource.push(this.standardContentListQuery)
|
||||
this.dataSource.push({
|
||||
ProcessType: this.$t('designComplianceReview'),
|
||||
InitiatorName: this.standardContentListQuery.designInitiatorName,
|
||||
DutyName: this.standardContentListQuery.designDutyName,
|
||||
DueDate: this.standardContentListQuery.designDueDate,
|
||||
DeliverableType: this.standardContentListQuery.designDeliverableType_dictText,
|
||||
DeliverableTemplate: this.standardContentListQuery.designDeliverableTemplate,
|
||||
DeliverableTemplateName: this.standardContentListQuery.designDeliverableTemplateName,
|
||||
remark: this.standardContentListQuery.designRemark
|
||||
})
|
||||
this.dataSource.push({
|
||||
ProcessType: this.$t('preHomeConfirmation'),
|
||||
InitiatorName: this.standardContentListQuery.prehomoInitiatorName,
|
||||
DutyName: this.standardContentListQuery.prehomoDutyName,
|
||||
DueDate: this.standardContentListQuery.prehomoDueDate,
|
||||
DeliverableType: this.standardContentListQuery.prehomoDeliverableType_dictText,
|
||||
DeliverableTemplate: this.standardContentListQuery.prehomoDeliverableTemplate,
|
||||
DeliverableTemplateName: this.standardContentListQuery.prehomoDeliverableTemplateName,
|
||||
remark: this.standardContentListQuery.prehomoRemark
|
||||
})
|
||||
this.dataSource.push({
|
||||
ProcessType: this.$t('verificationComplianceReview'),
|
||||
InitiatorName: this.standardContentListQuery.verifyInitiatorName,
|
||||
DutyName: this.standardContentListQuery.verifyDutyName,
|
||||
DueDate: this.standardContentListQuery.verifyDueDate,
|
||||
DeliverableType: this.standardContentListQuery.verifyDeliverableType_dictText,
|
||||
DeliverableTemplate: this.standardContentListQuery.verifyDeliverableTemplate,
|
||||
DeliverableTemplateName: this.standardContentListQuery.verifyDeliverableTemplateName,
|
||||
remark: this.standardContentListQuery.verifyRemark
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
pdfPreview(fileQuery) {
|
||||
|
||||
Reference in New Issue
Block a user