对接任务确认流程

This commit is contained in:
qq787203167
2022-05-19 17:59:37 +08:00
parent 9abae897d2
commit 96ccd0ffda
6 changed files with 132 additions and 30 deletions
+1
View File
@@ -856,4 +856,5 @@ module.exports = {
confirmOperation:'Confirm Operation', confirmOperation:'Confirm Operation',
sponsorReview:'Sponsor review', sponsorReview:'Sponsor review',
fillInProjectDelivery:'Fill in project delivery', fillInProjectDelivery:'Fill in project delivery',
Resubmit:'Resubmit',
} }
+1
View File
@@ -861,4 +861,5 @@ module.exports = {
confirmOperation:'确认操作', confirmOperation:'确认操作',
sponsorReview:'发起人审查', sponsorReview:'发起人审查',
fillInProjectDelivery:'填写工程交付', fillInProjectDelivery:'填写工程交付',
Resubmit:'重新提交',
} }
@@ -6,9 +6,9 @@
</div> </div>
</div> </div>
<div class="header-content"> <div class="header-content">
<!-- v-if="$route.query.TaskKey == 'zrrclrw'"-->
<div class="operator-text" <div class="operator-text"
@click="distributionEngineerClick($t('distributionEngineer'))"> v-if="$route.query.TaskKey == 'zrrclrw'"
@click="distributionEngineerClick($t('distributionEngineer'),1)">
<a-icon type="audit"/> <a-icon type="audit"/>
{{ $t('distributionEngineer') }} {{ $t('distributionEngineer') }}
</div> </div>
@@ -19,8 +19,8 @@
{{ $t('reminderHandling') }} {{ $t('reminderHandling') }}
</div> </div>
<div class="operator-text" <div class="operator-text"
v-if="$route.query.TaskKey == 'zrrclrw' || $route.query.TaskKey == 'dreDispose'" v-if="$route.query.TaskKey == 'zrrclrw'"
@click="distributionEngineerClick($t('addFeedback'))"> @click="distributionEngineerClick($t('addFeedback'),2)">
<a-icon type="plus-circle"/> <a-icon type="plus-circle"/>
{{ $t('addFeedback') }} {{ $t('addFeedback') }}
</div> </div>
@@ -384,7 +384,7 @@
] ]
}, },
visibleDetails: false, visibleDetails: false,
columns: [ columnsAll: [
{ {
title: this.$t('serialNumber'), title: this.$t('serialNumber'),
dataIndex: 'index', dataIndex: 'index',
@@ -450,6 +450,20 @@
mounted() { mounted() {
this.getList() this.getList()
}, },
computed: {
columns() {
let columnResult = JSON.parse(JSON.stringify(this.columnsAll))
if (this.$route.query.TaskKey != 'zrrclrw') {
for (var i = 0; i < columnResult.length; i++) {
if (columnResult[i].title === this.$t('operation')) {
columnResult.splice(i, 1)
i--
}
}
}
return columnResult
}
},
methods: { methods: {
pageOnChange(page, pageSize) { pageOnChange(page, pageSize) {
this.pageNo = page this.pageNo = page
@@ -525,10 +539,13 @@
handleCancel() { handleCancel() {
this.visible = false this.visible = false
}, },
distributionEngineerClick(title) { distributionEngineerClick(title, num) {
this.title = title this.title = title
this.visible = true this.visible = true
this.formInline = {} this.formInline = {}
if (num == 1) {
this.getReminderHandlingList(1)
}
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.ruleForm.validateField() this.$refs.ruleForm.validateField()
}) })
@@ -563,9 +580,9 @@
}, },
reminderHandling() { reminderHandling() {
this.visibleTable = true this.visibleTable = true
this.getReminderHandlingList() this.getReminderHandlingList(2)
}, },
getReminderHandlingList() { getReminderHandlingList(num) {
this.loadingTable = true this.loadingTable = true
let query = { let query = {
taskDefinitionKey: 'dreDispose', taskDefinitionKey: 'dreDispose',
@@ -574,6 +591,24 @@
getAction(this.url.queryByActiProcInstId, query).then((res) => { getAction(this.url.queryByActiProcInstId, query).then((res) => {
if (res.success) { if (res.success) {
this.dataSourceTable = res.result || [] this.dataSourceTable = res.result || []
if (num == 1) {
this.distributionEngineerList = []
let userName = []
let userId = []
if (this.dataSourceTable && this.dataSourceTable.length > 0) {
this.dataSourceTable.forEach(val => {
this.distributionEngineerList.push({
name: val.userName,
userId: val.userId,
deliveryInstructions: val.deliveryInstructions
})
userName.push(val.userName)
userId.push(val.userId)
})
}
this.formInline.userId = userId.join(',')
this.formInline.userName = userName.join(',')
}
this.loadingTable = false this.loadingTable = false
} else { } else {
this.dataSourceTable = [] this.dataSourceTable = []
@@ -15,7 +15,8 @@
<a-button class="header-btn termin" v-if="isSendBack" @click="sendBackCkick" type="danger" ghost> <a-button class="header-btn termin" v-if="isSendBack" @click="sendBackCkick" type="danger" ghost>
{{$t('sendBack')}} {{$t('sendBack')}}
</a-button> </a-button>
<a-button class="header-btn submit" v-if="isAdopt" @click="adopt" type="primary">{{$t('adopt')}}</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> </div>
</div> </div>
</div> </div>
@@ -59,7 +60,11 @@
isAdopt: { isAdopt: {
type: Boolean, type: Boolean,
default: false default: false
} },
isResubmit:{
type: Boolean,
default: false
},
}, },
methods: { methods: {
terminationProcess() { terminationProcess() {
@@ -82,6 +87,10 @@
}, },
backTo() { backTo() {
},
Resubmit(){
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
this.$emit('Resubmit', handlingTime)
}, },
adopt() { adopt() {
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss') let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
@@ -108,7 +117,8 @@
.header-btn { .header-btn {
margin-right: 10px; margin-right: 10px;
} }
.header-btn:last-child{
.header-btn:last-child {
margin-right: 0; margin-right: 0;
} }
} }
@@ -56,7 +56,7 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<span class="text-header"> <span class="text-header">
爱上克里夫就的撒开了房间圣诞快乐房价士大夫打扫房间圣诞快乐房价是罚款乱收费考虑是否就但是考虑 {{formInline.deliveryRequirements}}
</span> </span>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -117,7 +117,7 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<span class="text-header"> <span class="text-header">
爱上克里夫就的撒开了房间圣诞快乐房价士大夫打扫房间圣诞快乐房价是罚款乱收费考虑是否就但是考虑 {{formInline.approvalOpinion}}
</span> </span>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -155,7 +155,7 @@
components: { components: {
uploadFile uploadFile
}, },
props: ['queryBy'], props: ['queryBy','queryPersonInCharge'],
data() { data() {
return { return {
formInline: {}, formInline: {},
@@ -191,6 +191,11 @@
this.formInline.approvalOpinion = '' this.formInline.approvalOpinion = ''
this.formInline = { ...this.formInline } this.formInline = { ...this.formInline }
} }
if (this.queryPersonInCharge){
this.formInline.deliveryRequirements = this.queryPersonInCharge.deliveryRequirements
this.formInline.engineerFeedbackContent = this.queryPersonInCharge.engineerFeedbackContent
this.formInline.fileId = this.queryPersonInCharge.fileId
}
}, },
methods: { methods: {
submit(callBack) { submit(callBack) {
@@ -24,18 +24,19 @@
<reviewedByThePersonInCharge <reviewedByThePersonInCharge
ref="reviewedByThePersonInChargeRef" ref="reviewedByThePersonInChargeRef"
:queryBy="queryBy" :queryBy="queryBy"
v-if="(isDisplay && $route.query.TaskKey == 'zrrclrw') || :queryPersonInCharge="queryPersonInCharge"
(isDisplay && $route.query.TaskKey == 'fqrsh')"
/> />
<footerProcess <footerProcess
:is-termination-process="isTerminationProcess" :is-termination-process="isTerminationProcess"
:is-adopt="isAdopt" :is-adopt="isAdopt"
:isSendBack="isSendBack" :isSendBack="isSendBack"
:isSubmit="isSubmit" :isSubmit="isSubmit"
:is-resubmit="isResubmit"
@terminationProcess="terminationProcess" @terminationProcess="terminationProcess"
@adopt="adopt" @adopt="adopt"
@sendBack="sendBack" @sendBack="sendBack"
@submit="submit" @submit="submit"
@Resubmit="Resubmit"
/> />
<circulationHistory v-if="isDisplay"/> <circulationHistory v-if="isDisplay"/>
@@ -75,7 +76,9 @@
urlFrom: 'project/projectLibraryBase/queryById', urlFrom: 'project/projectLibraryBase/queryById',
queryProjectLawsInventoryInfoById: 'project/projectLawsInventoryEO/queryProjectLawsInventoryInfoById', queryProjectLawsInventoryInfoById: 'project/projectLawsInventoryEO/queryProjectLawsInventoryInfoById',
queryTaskDetailByTaskIds: '/task/queryTaskDetailByTaskIds', queryTaskDetailByTaskIds: '/task/queryTaskDetailByTaskIds',
edit: '/project/projectTaskInventoryDetailEO/edit' edit: '/project/projectTaskInventoryDetailEO/edit',
dreSubmit: '/project/projectTaskInventoryFeedbackEO/dreSubmit',
list: '/project/projectTaskInventoryFeedbackEO/list'
}, },
queryBy: {}, queryBy: {},
queryProject: {}, queryProject: {},
@@ -136,7 +139,8 @@
title: this.$t('descriptionDeliverables'), title: this.$t('descriptionDeliverables'),
value: this.$route.query.remarks value: this.$route.query.remarks
} }
] ],
queryPersonInCharge: {}
} }
}, },
computed: { computed: {
@@ -163,25 +167,43 @@
isSubmit() { isSubmit() {
if (this.$route.query.TaskKey == 'zrrclrw') { if (this.$route.query.TaskKey == 'zrrclrw') {
return true return true
} else if (this.$route.query.TaskKey == 'dreDispose') {
return true
} }
return false return false
},
isResubmit() {
return false
} }
}, },
mounted() { mounted() {
let _this = this let _this = this
if (this.$route.query.taskIds) { let query = {
this.isDisplay = false actiProcInstId: this.$route.query.actiProcInstId,
this.queryTaskDetailByTask(function() { createBy: this.userInfo().username
_this.queryProjectLawsInventoryInfo()
})
} else {
this.loading = true
this.isDisplay = false
this.queryBy.projectLibraryId = this.$route.query.projectLibraryId
this.queryBy.id = this.$route.query.projectTaskInventoryId
this.queryProjectLawsInventoryInfo()
} }
this.loading = true
getAction(this.url.list, query).then((res) => {
if (res.success) {
this.queryPersonInCharge = res.result[0] || {}
if (this.$route.query.taskIds) {
this.isDisplay = false
this.queryTaskDetailByTask(function() {
_this.queryProjectLawsInventoryInfo()
})
} else {
this.loading = true
this.isDisplay = false
this.queryBy.projectLibraryId = this.$route.query.projectLibraryId
this.queryBy.id = this.$route.query.projectTaskInventoryId
this.queryProjectLawsInventoryInfo()
}
} else {
this.dataSource = []
}
})
}, },
methods: { methods: {
...mapGetters(['userInfo']), ...mapGetters(['userInfo']),
terminationProcess(operatorTime) { terminationProcess(operatorTime) {
@@ -209,12 +231,40 @@
} }
this.completeTask({ flag: 1, operatorTime: operatorTime }) this.completeTask({ flag: 1, operatorTime: operatorTime })
}, },
Resubmit(operatorTime) {
this.$refs.reviewedByThePersonInChargeRef.submit((res) => {
this.textLoading = this.$t('Submitting')
this.loading = true
res.operatorTime = operatorTime
if (this.$route.query.TaskKey == 'dreDispose') {
this.dreSubmit(res)
}
})
},
submit(operatorTime) { submit(operatorTime) {
this.$refs.reviewedByThePersonInChargeRef.submit((res) => { this.$refs.reviewedByThePersonInChargeRef.submit((res) => {
this.textLoading = this.$t('Submitting') this.textLoading = this.$t('Submitting')
this.loading = true this.loading = true
res.operatorTime = operatorTime res.operatorTime = operatorTime
this.completeTask(res) if (this.$route.query.TaskKey == 'dreDispose') {
this.dreSubmit(res)
} else {
this.completeTask(res)
}
})
},
dreSubmit(val) {
let query = {
id: this.queryPersonInCharge.id,
engineerFeedbackContent: val.engineerFeedbackContent,
fileId: val.fileId,
flowType: this.$route.query.flowType,
actiProcInstId: this.$route.query.actiProcInstId,
projectTaskInventoryId: this.$route.query.projectTaskInventoryId,
deliveryRequirements: val.deliveryRequirements
}
postAction(this.url.dreSubmit, query).then((res) => {
}) })
}, },
completeTask(value) { completeTask(value) {