对接任务确认流程

This commit is contained in:
qq787203167
2022-05-19 11:25:24 +08:00
parent 695b4ba318
commit d74e0aca62
5 changed files with 115 additions and 79 deletions
+1
View File
@@ -841,4 +841,5 @@ module.exports = {
startMonth:'Start Month',
endMonth:'End Month',
Importing:'Importing...',
projectDeliveryDescription:'Project delivery description',
}
+1
View File
@@ -846,4 +846,5 @@ module.exports = {
startMonth:'开始日期',
endMonth:'结束日期',
Importing:'导入中...',
projectDeliveryDescription:'工程交付说明',
}
@@ -36,6 +36,7 @@
:scroll="{x: 1600}"
:data-source="dataSource"
:columns="columns"
:width="500"
>
<span slot="Deliverables" slot-scope="text,result">
<a @click="viewFileClick(result.fileId)" v-if="result.fileId">
@@ -75,31 +76,48 @@
@ok="handleOk"
@cancel="handleCancel"
>
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="24" v-if="title == $t('distributionEngineer')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('engineer')">{{$t('engineer')}}</span>
</div>
<a-form-model-item class="itemModel" prop="userName">
<PersonnelSelection
:query="{db_field_name:'userId',db_field_txt:$t('engineer')}"
:personneQuery="formInline"
@change="PersonnelSelectionChange"
v-model="formInline.userName"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="24" v-if="title == $t('distributionEngineer')">
<div v-if="formInline.userName">
<div class="box-title-text" v-for="item in formInline.userName.split(',')">
<div style="max-height: 420px;overflow-y:auto;width: 100%">
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="24" v-if="title == $t('distributionEngineer')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="item">{{item}}</span>
:title="$t('engineer')">{{$t('engineer')}}</span>
</div>
<a-form-model-item class="itemModel" prop="userName">
<PersonnelSelection
:query="{db_field_name:'userId',db_field_txt:$t('engineer')}"
:personneQuery="formInline"
@change="PersonnelSelectionChange"
v-model="formInline.userName"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="24" v-if="title == $t('distributionEngineer')">
<div>
<div class="box-title-text" v-for="(item,index) in distributionEngineerList">
<div class="title-text">
<span class="title-text-text"
:title="item.name">{{item.name}}</span>
</div>
<a-form-model-item class="itemModel" style="width: calc(100% - 190px)">
<a-textarea
:placeholder="$t('PleaseEnter')+$t('projectDeliveryDescription')"
:disabled="false"
v-model="item.deliveryInstructions" :rows="4"/>
</a-form-model-item>
<span class="text-del" @click="deleteText(index)">{{$t('delete')}}</span>
</div>
</div>
</a-col>
<a-col :span="24" v-if="title == $t('addFeedback') || title == $t('edit')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('feedbackFromTheEngineer')">{{$t('feedbackFromTheEngineer')}}</span>
</div>
<a-form-model-item class="itemModel" prop="engineerFeedbackContent">
<a-textarea
@@ -108,57 +126,43 @@
v-model="formInline.engineerFeedbackContent" :rows="4"/>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="24" v-if="title == $t('addFeedback') || title == $t('edit')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('feedbackFromTheEngineer')">{{$t('feedbackFromTheEngineer')}}</span>
</a-col>
<a-col :span="24" v-if="title == $t('addFeedback') || title == $t('edit')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('Deliverables')">{{$t('Deliverables')}}</span>
</div>
<a-form-model-item class="itemModel" prop="fileId">
<a-button type="primary" class="button-text"
@click="clickButtonToUpload('fileId')">
{{ (formInline.fileId === 'null' || formInline.fileId === '' ||
formInline.fileId == null) ? $t('clickUpload') : $t('viewUploadedFiles')
}}
</a-button>
</a-form-model-item>
</div>
<a-form-model-item class="itemModel" prop="engineerFeedbackContent">
<a-textarea
:placeholder="$t('PleaseEnter')+$t('feedbackFromTheEngineer')"
:disabled="false"
v-model="formInline.engineerFeedbackContent" :rows="4"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="24" v-if="title == $t('addFeedback') || title == $t('edit')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('Deliverables')">{{$t('Deliverables')}}</span>
</a-col>
<a-col :span="24" v-if="title == $t('replyFromProjectContactPerson')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('replyFromProjectContactPerson')">{{$t('replyFromProjectContactPerson')}}</span>
</div>
<a-form-model-item class="itemModel" prop="engineeringInterfacePersonReply">
<a-textarea
:placeholder="$t('replyFromProjectContactPerson')"
:disabled="false"
v-model="formInline.engineeringInterfacePersonReply" :rows="4"/>
</a-form-model-item>
</div>
<a-form-model-item class="itemModel" prop="fileId">
<a-button type="primary" class="button-text"
@click="clickButtonToUpload('fileId')">
{{ (formInline.fileId === 'null' || formInline.fileId === '' ||
formInline.fileId == null) ? $t('clickUpload') : $t('viewUploadedFiles')
}}
</a-button>
</a-form-model-item>
</div>
</a-col>
<a-col :span="24" v-if="title == $t('replyFromProjectContactPerson')">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('replyFromProjectContactPerson')">{{$t('replyFromProjectContactPerson')}}</span>
</div>
<a-form-model-item class="itemModel" prop="engineeringInterfacePersonReply">
<a-textarea
:placeholder="$t('replyFromProjectContactPerson')"
:disabled="false"
v-model="formInline.engineeringInterfacePersonReply" :rows="4"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
</a-form-model>
</a-col>
</a-row>
</a-form-model>
</div>
</a-modal>
<a-modal
:title="$t('engineeringConfirmationDetails')"
@@ -274,6 +278,7 @@
visibleFile: false,
dataSource: [],
dataSourceTable: [],
distributionEngineerList: [],
columnsTable: [
{
title: this.$t('engineer'),
@@ -429,7 +434,8 @@
flowType: this.$route.query.flowType,
userIds: this.formInline.userId,
taskDefinitionKey: 'dreDispose',
msgType: msgType
msgType: msgType,
formData: JSON.stringify(this.distributionEngineerList)
}
postAction(this.url.DetailEOAdd, query).then((res) => {
if (res.success) {
@@ -525,6 +531,25 @@
},
PersonnelSelectionChange(value, id) {
this.formInline[value] = id
if (id) {
this.formInline.userName.split(',').forEach(res => {
this.distributionEngineerList.push({
deliveryInstructions: '',
name: res
})
})
}
this.formInline = { ...this.formInline }
},
deleteText(num) {
this.distributionEngineerList.splice(num, 1)
this.distributionEngineerList = [...this.distributionEngineerList]
this.formInline.userName = this.formInline.userName.split(',')
this.formInline.userName.splice(num, 1)
this.formInline.userName = this.formInline.userName.join(',')
this.formInline.userId = this.formInline.userId.split(',')
this.formInline.userId.splice(num, 1)
this.formInline.userId = this.formInline.userId.join(',')
this.formInline = { ...this.formInline }
},
edit(val, title) {
@@ -692,6 +717,7 @@
.formAdd {
margin-bottom: 40px;
width: calc(100% - 12px);
}
.button-text {
@@ -719,4 +745,12 @@
color: #00B3BE !important;
cursor: pointer;
}
.text-del {
display: inline-block;
text-align: right;
width: 50px;
color: #00B3BE;
cursor: pointer;
}
</style>
@@ -36,7 +36,7 @@
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('feedbackMessage')">{{$t('feedbackMessage')}}</span>
@@ -145,7 +145,7 @@
}
.itemModel {
width: calc(100% - 130px);
width: 100%;
display: inline-block;
margin-top: 2px;
margin-bottom: 12px;
@@ -99,10 +99,10 @@
title: this.$t('applicableSupplement'),
value: 'applicableSupplement'
},
{
title: this.$t('remarks'),
value: 'remark'
}
// {
// title: this.$t('remarks'),
// value: 'remark'
// }
],
standardContentList: [
{
@@ -128,7 +128,7 @@
},
{},
{
title: this.$t('taskDescription'),
title: this.$t('descriptionDeliverables'),
value: this.$route.query.remarks
}
]