From 2de735967d33dba5da5fc87191dee543b000afaf Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期五, 18 七月 2025 20:20:18 +0800 Subject: [PATCH] 删除 --- src/views/flowable/workflow/TechnicalStatusEvaluation/TechnicalStatusEvaluationOrderChangeApprovalModal.vue | 364 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 364 insertions(+), 0 deletions(-) diff --git a/src/views/flowable/workflow/TechnicalStatusEvaluation/TechnicalStatusEvaluationOrderChangeApprovalModal.vue b/src/views/flowable/workflow/TechnicalStatusEvaluation/TechnicalStatusEvaluationOrderChangeApprovalModal.vue new file mode 100644 index 0000000..f34b70f --- /dev/null +++ b/src/views/flowable/workflow/TechnicalStatusEvaluation/TechnicalStatusEvaluationOrderChangeApprovalModal.vue @@ -0,0 +1,364 @@ +<template> + <j-modal :title="title" :width="1300" :fullscreen="fullScreen" :visible="visible" :confirmLoading="confirmLoading" + :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" @ok="handleOk" + @cancel="handleCancel" cancelText="鍏抽棴"> + <a-spin :spinning="spinning"> + <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol"> + <a-row id="outer-row" :gutter="24"> + <!--宸︿晶鍩虹淇℃伅鍒�--> + <a-col :span="!disableSubmit?8:14" class="scroll-col"> + <a-tabs> + <a-tab-pane tab="鍩虹淇℃伅"> + <a-row> + <a-col :span="12"> + <a-form-model-item label="宸ュ崟鍙�"> + <a-input v-model="model.orderId_dictText" readOnly/> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鍙樻洿鍗曞彿"> + <a-input v-model="model.changeOrderNum" readOnly/> + </a-form-model-item> + </a-col> + + </a-row> + + <a-row> + <a-col :span="12"> + <a-form-model-item label="缁熶竴缂栫爜"> + <technical-status-equipment-select v-model="model.equipmentId" + @autocompleteForm="autocompleteForm" disabled/> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鐢宠浜�"> + <a-input v-model="model.applicant_dictText" readOnly/> + </a-form-model-item> + </a-col> + </a-row> + + <a-row> + <a-col :span="12"> + <a-form-model-item label="鐢宠閮ㄩ棬"> + <a-input v-model="model.factoryOrgCode_dictText" readOnly/> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鍙樻洿鍘熷洜"> + <a-input v-model="model.applyReason_dictText" readOnly/> + </a-form-model-item> + </a-col> + </a-row> + + + <a-row> + <a-col :span="12"> + <a-form-model-item label="鍙樻洿閴村畾鏃ユ湡"> + <a-input v-model="model.deferredEvaluationDate" readOnly/> + </a-form-model-item> + </a-col> + </a-row> + + <a-row> + <a-form-model-item :labelCol="labelColLong" :wrapperCol="wrapperColLong" label="澶囨敞"> + <a-textarea v-model="model.remark" readOnly/> + </a-form-model-item> + </a-row> + </a-tab-pane> + </a-tabs> + </a-col> + + <!-- 涓棿鏄庣粏椤瑰垪--> + <a-col v-if="selectShenpiData.procInstId" :span="10" class="scroll-col"> + <a-tabs> + <a-tab-pane key='1' tab='娴佺▼鍥�'> + <img :src="imageSrc" alt="Fetched Image" style="width: 100%" v-if="imageSrc"/> + </a-tab-pane> + </a-tabs> + </a-col> + + <!--鍙充晶瀹℃壒鍒�--> + <a-col :span="!disableSubmit?6:10" class="scroll-col"> + <a-tabs v-if="displayEquipmentManagerFlag"> + <a-tab-pane tab="浣跨敤鍗曚綅瀹ょ骇棰嗗纭"> + <a-row> + <a-col :span="24"> + <a-form-model-item prop="equipmentManagerSignatureResult" label="纭绫诲瀷" :labelCol="rightColLabelCol" + :wrapperCol="rightColWrapperCol"> + <j-dict-select-tag type='radio' v-model='model.equipmentManagerSignatureResult' + dictCode='approve_reject' + :disabled="disableSubmit||(model.changeStatus&&model.changeStatus!='EQUIPMENT_MANAGER_SIGNING')"/> + </a-form-model-item> + </a-col> + <a-col :span="24"> + <a-form-model-item label="纭鎰忚" :labelCol="rightColLabelCol" :wrapperCol="rightColWrapperCol"> + <a-textarea placeholder="璇疯緭鍏ユ剰瑙�" v-model="model.equipmentManagerComment" + :disabled="disableSubmit||(model.changeStatus&&model.changeStatus!='EQUIPMENT_MANAGER_SIGNING')"/> + </a-form-model-item> + </a-col> + </a-row> + </a-tab-pane> + </a-tabs> + + <a-tabs v-if="displayDepartManagerFlag"> + <a-tab-pane tab="閮ㄩ棬棰嗗纭"> + <a-row> + <a-col :span="24"> + <a-form-model-item prop="departManagerSignatureResult" label="纭绫诲瀷" :labelCol="rightColLabelCol" + :wrapperCol="rightColWrapperCol"> + <j-dict-select-tag type='radio' v-model='model.departManagerSignatureResult' + dictCode='approve_reject' + :disabled="disableSubmit||(model.changeStatus&&model.changeStatus!='DEPART_MANAGER_SIGNING')"/> + </a-form-model-item> + </a-col> + <a-col :span="24"> + <a-form-model-item label="纭鎰忚" :labelCol="rightColLabelCol" :wrapperCol="rightColWrapperCol"> + <a-textarea placeholder="璇疯緭鍏ユ剰瑙�" v-model="model.departManagerComment" + :disabled="disableSubmit||(model.changeStatus&&model.changeStatus!='DEPART_MANAGER_SIGNING')"/> + </a-form-model-item> + </a-col> + </a-row> + </a-tab-pane> + </a-tabs> + + <a-tabs v-if="displayProductionSupportFlag"> + <a-tab-pane tab="鐢熶骇淇濋殰閮ㄩ瀵肩‘璁�"> + <a-row> + <a-col :span="24"> + <a-form-model-item prop="productionSupportSignatureResult" label="纭绫诲瀷" + :labelCol="rightColLabelCol" :wrapperCol="rightColWrapperCol"> + <j-dict-select-tag type='radio' v-model='model.productionSupportSignatureResult' + dictCode='approve_reject' + :disabled="disableSubmit||(model.changeStatus&&model.changeStatus!='PRODUCTION_SUPPORT_SIGNING')"/> + </a-form-model-item> + </a-col> + <a-col :span="24"> + <a-form-model-item label="纭鎰忚" :labelCol="rightColLabelCol" :wrapperCol="rightColWrapperCol"> + <a-textarea placeholder="璇疯緭鍏ユ剰瑙�" v-model="model.productionSupportComment" + :disabled="disableSubmit||(model.changeStatus&&model.changeStatus!='PRODUCTION_SUPPORT_SIGNING')"/> + </a-form-model-item> + </a-col> + </a-row> + </a-tab-pane> + </a-tabs> + </a-col> + </a-row> + </a-form-model> + </a-spin> + </j-modal> +</template> + +<script> + import { downFile, getAction, postAction } from '@/api/manage' + import TechnicalStatusEquipmentSelect from '../../../eam/equipment/modules/TechnicalStatusEquipmentSelect' + + export default { + name: 'TechnicalStatusEvaluationOrderChangeApprovalModal', + components: { + TechnicalStatusEquipmentSelect + }, + props: { + selectShenpiData: { + type: Object + } + }, + data() { + return { + title: '鎿嶄綔', + visible: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 8 } + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 } + }, + labelColLong: { + xs: { span: 24 }, + sm: { span: 4 } + }, + wrapperColLong: { + xs: { span: 24 }, + sm: { span: 20 } + }, + rightColLabelCol: { + xs: { span: 24 }, + sm: { span: 6 } + }, + rightColWrapperCol: { + xs: { span: 24 }, + sm: { span: 16 } + }, + confirmLoading: false, + spinning: false, + imageSrc: null, + fullScreen: true, + validatorRules: { + equipmentManagerSignatureResult: [{ required: true, message: '璇烽�夋嫨纭绫诲瀷' }], + departManagerSignatureResult: [{ required: true, message: '璇烽�夋嫨纭绫诲瀷' }], + productionSupportSignatureResult: [{ required: true, message: '璇烽�夋嫨纭绫诲瀷' }] + }, + url: { + queryById: '/eam/eamTechnicalStatusEvaluationOrderChange/queryById', + approval: '/eam/eamTechnicalStatusEvaluationOrderChange/approval', + diagramView: '/assign/flow/diagramView' + }, + disableSubmit: false, + selectedRowKeys: [] + } + }, + computed: { + displayEquipmentManagerFlag() { + return this.model.changeStatus && ['EQUIPMENT_MANAGER_SIGNING', 'DEPART_MANAGER_SIGNING', 'PRODUCTION_SUPPORT_SIGNING', 'COMPLETED'].includes(this.model.changeStatus) + }, + displayDepartManagerFlag() { + return this.model.changeStatus && ['DEPART_MANAGER_SIGNING', 'PRODUCTION_SUPPORT_SIGNING', 'COMPLETED'].includes(this.model.changeStatus) + }, + displayProductionSupportFlag() { + return this.model.changeStatus && ['PRODUCTION_SUPPORT_SIGNING', 'COMPLETED'].includes(this.model.changeStatus) + } + }, + methods: { + /** + * 涓婚〉闈㈢偣鍑绘墽琛屽鎵规椂瑙﹀彂 + * @param record 涓婚〉闈㈠垪琛ㄨ璁板綍 + */ + handleApprove(record) { + this.fullScreen = true + this.model = {} + this.getBasicInformationByApi(record) + this.getFlowChartImageByApi(record) + }, + + /** + * 涓婚〉闈㈢偣鍑昏鎯呮椂瑙﹀彂 + * @param record 涓婚〉闈㈠垪琛ㄨ璁板綍 + */ + handleDetail(record) { + this.fullScreen = false + this.model = Object.assign({}, record) + }, + + /** + * 鑾峰彇鍩虹淇℃伅 + * @param record 涓婚〉闈㈠垪琛ㄨ璁板綍 + */ + getBasicInformationByApi(record) { + this.spinning = true + const that = this + getAction(this.url.queryById, { id: record.dataId }) + .then(res => { + if (res.success) { + that.model = Object.assign({}, res.result) + that.model.dataId = record.dataId + that.model.taskId = record.id + that.model.userId = record.assignee + that.model.instanceId = record.procInstId + } + else { + that.$notification.warning({ + message: '娑堟伅', + description: res.message + }) + } + }) + }, + + /** + * 鑾峰彇娴佺▼鍥� + * @param record 涓婚〉闈㈠垪琛ㄨ璁板綍 + */ + getFlowChartImageByApi(record) { + const { processDefinitionId, processInstanceId, processDefinitionKey } = record + this.imageSrc = null + downFile(this.url.diagramView, { + processDefinitionId, + processInstanceId, + TaskDefinitionKey: processDefinitionKey + }, 'get') + .then((res => { + this.imageSrc = window.URL.createObjectURL(new Blob([res])) + })) + .catch(err => { + this.$notification.error({ + message: '娑堟伅', + description: err.message + }) + }) + }, + + async handleOk() { + const that = this + + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.$refs.form.validate(valid => { + if (valid) { + that.confirmLoading = that.spinning = true + + postAction(this.url.approval, this.model) + .then((res) => { + if (res.success) { + that.$notification.success({ + message: '娑堟伅', + description: res.message + }) + that.$emit('modalFormOk') + that.close() + } else { + that.$notification.warning({ + message: '娑堟伅', + description: res.message + }) + } + }) + .finally(() => { + that.confirmLoading = that.spinning = false + }) + } else { + return false + } + }) + }, + + autocompleteForm(selectObj) { + this.$set(this.model, 'equipmentId', selectObj.equipmentId) + this.spinning = false + }, + + handleCancel() { + this.close() + }, + + close() { + this.$emit('close') + this.visible = false + this.$refs.form.clearValidate() + } + } + } +</script> + +<style scoped lang="less"> + /deep/ .ant-spin-nested-loading { + height: 100%; + + .ant-spin-container { + height: 100%; + + .ant-form { + height: 100%; + + #outer-row { + height: 100%; + + .scroll-col { + height: 100%; + overflow: auto; + } + } + } + } + } +</style> \ No newline at end of file -- Gitblit v1.9.3