@@ -17,8 +17,10 @@ function moveFile() { | |||||
function openSSH() { | function openSSH() { | ||||
echo "请输入服务器(121.199.28.40)密码: " | echo "请输入服务器(121.199.28.40)密码: " | ||||
read password # -s 参数使得输入内容不回显 | |||||
sshpass -p "$password" ssh root@121.199.28.40 'cd ..; cd /server/testweb; git pull' | |||||
# read password # -s 参数使得输入内容不回显 | |||||
# sshpass -p "$password" ssh root@121.199.28.40 'cd ..; cd /server/testweb; git pull' | |||||
sshpass -p Ndkj@2024 ssh root@121.199.28.40 'cd ..; cd /server/testweb; git pull' | |||||
} | } | ||||
function gitCommint() { | function gitCommint() { | ||||
@@ -0,0 +1,43 @@ | |||||
/** | |||||
* 项目阶段:未立项 | |||||
*/ | |||||
NOT_APPROVED(10000, "未立项",null), | |||||
UNDER_INTERNAL_AUDIT(10001, "单位内部审核中",null), | |||||
UNDER_INTERNAL_AUDIT_NOT_PASS(10002, "单位内部审核不通过",null), | |||||
PENDING_PREQUALIFICATION(10003, "待预审",null), | |||||
JOINT_REVIEW_BY_PROVINCIAL_DEPARTMENTS(10004, "省级部门联审中",null), | |||||
JOINT_REVIEW_BY_PROVINCIAL_DEPARTMENTS_SUCCESS(10018, "省级部门联审通过",null), | |||||
THE_JOINT_REVIEW_OF_PROVINCIAL_DEPARTMENTS_FAILED(10005, "省级部门联审不通过",null), | |||||
PRE_APPLYING(10006, "预审中",null), | |||||
PREQUALIFICATION_FAILED(10007, "预审不通过",null), | |||||
DEPARTMENT_JOINT_REVIEW(10008, "部门联审中",null), | |||||
DEPARTMENT_JOINT_REVIEW_FAILED(10009, "部门联审不通过",null), | |||||
IN_THE_ANNUAL_PLAN(10010, "年度计划中",null), | |||||
BE_SUSPENDED(10011, "被暂缓",null), | |||||
SCHEME_UNDER_REVIEW(10012, "方案评审中",GovProjectStatusEnum.APPROVAL), | |||||
SCHEME_REVIEW_FAILED(10013, "方案评审不通过",null), | |||||
TO_BE_APPROVED(10014, "待立项批复",GovProjectStatusEnum.PENDING), | |||||
TO_BE_DECLARED(10015, "待申报",null), | |||||
PLAN_TO_BE_DECLARED(10016, "方案待申报",null), | |||||
PENDING_PREQUALIFICATION_CHOICE(10017, "待预审选择态",null), | |||||
PREQUALIFICATION_WITHDRAW_CHOICE(10019, "预审中撤回选择态",null), | |||||
APPROVED_AFTER_CHOICE(10020, "立项批复后选择态",null), | |||||
TO_BE_APP_REGISTER(10021, "待应用注册",null), | |||||
SCHEME_AFTER_CHOICE(10022, "方案评审后选择态",null), | |||||
IMPORTANT_PROJECT_CONFIRM(10023, "联审意见确认中",null), | |||||
/** | |||||
* 项目阶段:已立项 | |||||
*/ | |||||
PROJECT_APPROVED(20000, "已立项",null), | |||||
TO_BE_PURCHASED(20001, "待采购",GovProjectStatusEnum.APPROVED), | |||||
UNDER_CONSTRUCTION(20002, "建设中",null), | |||||
TO_BE_FINALLY_INSPECTED(20003, "待终验",GovProjectStatusEnum.HAS_PRE_INS), | |||||
FINAL_ACCEPTANCE_IS_UNDER_REVIEW(20004, "终验审核中",null), | |||||
FINAL_ACCEPTANCE_REVIEW_FAILED(20005, "终验审核不通过",null), | |||||
OPERATION(20006, "待开工",GovProjectStatusEnum.PURCHASED), | |||||
/** | |||||
* 项目阶段:已归档 | |||||
*/ | |||||
ARCHIVED(30000, "已归档",null), | |||||
ACCEPTED(30001, "已验收",GovProjectStatusEnum.HAS_FINAL_INS); |
@@ -0,0 +1,5 @@ | |||||
/pages/toDoCenter/handleDuringExamine/index.vue 270行 | |||||
/pages/toDoCenter/components/auditDialog.vue 234行 | |||||
@@ -252,52 +252,6 @@ onMounted(() => { | |||||
</el-form-item> | </el-form-item> | ||||
</el-col> | </el-col> | ||||
<el-col :span="12"> | <el-col :span="12"> | ||||
<el-form-item label="供应商收款开户行" prop="supplierBank"> | |||||
<el-input | |||||
v-model="formData.supplierBank" | |||||
maxlength="50" | |||||
placeholder="请输入" | |||||
:disabled="!!$route.query.isReplenishment" | |||||
/> | |||||
</el-form-item> | |||||
</el-col> | |||||
<el-col :span="12"> | |||||
<el-form-item label="供应商收款账号" prop="supplierAccount"> | |||||
<el-input | |||||
v-model="formData.supplierAccount" | |||||
maxlength="50" | |||||
placeholder="请输入" | |||||
:disabled="!!$route.query.isReplenishment" | |||||
/> | |||||
</el-form-item> | |||||
</el-col> | |||||
<el-col :span="12"> | |||||
<el-form-item label="质保期" prop="warrantyPeriod"> | |||||
<el-input | |||||
v-model="formData.warrantyPeriod" | |||||
maxlength="50" | |||||
placeholder="请输入" | |||||
:disabled="!!$route.query.isReplenishment" | |||||
@input="formData.warrantyPeriod=formData.warrantyPeriod?.replace(/[^\d]/g,'')" | |||||
> | |||||
<template #suffix> | |||||
年 | |||||
</template> | |||||
</el-input> | |||||
</el-form-item> | |||||
</el-col> | |||||
<el-col :span="12"> | |||||
<el-form-item label="质保金" prop="retentionMoney"> | |||||
<el-input | |||||
v-model.number="formData.retentionMoney" | |||||
placeholder="请填写" | |||||
:disabled="!!$route.query.isReplenishment" | |||||
> | |||||
<template #suffix>万元</template> | |||||
</el-input> | |||||
</el-form-item> | |||||
</el-col> | |||||
<el-col :span="12"> | |||||
<el-form-item | <el-form-item | ||||
label="合同签订完成时间" | label="合同签订完成时间" | ||||
prop="contractTime" | prop="contractTime" | ||||
@@ -142,6 +142,7 @@ watch( | |||||
<template #symbol="{scope}"> | <template #symbol="{scope}"> | ||||
<el-form-item | <el-form-item | ||||
v-if="scope.$index>=0" | v-if="scope.$index>=0" | ||||
:rules="[{required:true,message:' '}]" | |||||
:prop="`perIndicator[${scope.$index}].symbol`" | :prop="`perIndicator[${scope.$index}].symbol`" | ||||
label-width="0" | label-width="0" | ||||
style="margin-bottom: 0" | style="margin-bottom: 0" | ||||
@@ -158,6 +159,7 @@ watch( | |||||
<template #nums="{scope}"> | <template #nums="{scope}"> | ||||
<el-form-item | <el-form-item | ||||
v-if="scope.$index>=0" | v-if="scope.$index>=0" | ||||
:rules="[{required:true,message:' '}]" | |||||
:prop="`perIndicator[${scope.$index}].nums`" | :prop="`perIndicator[${scope.$index}].nums`" | ||||
label-width="0" | label-width="0" | ||||
style="margin-bottom: 0" | style="margin-bottom: 0" | ||||
@@ -174,6 +176,7 @@ watch( | |||||
<template #unit="{scope}"> | <template #unit="{scope}"> | ||||
<el-form-item | <el-form-item | ||||
v-if="scope.$index>=0" | v-if="scope.$index>=0" | ||||
:rules="[{required:true,message:' '}]" | |||||
:prop="`perIndicator[${scope.$index}].unit`" | :prop="`perIndicator[${scope.$index}].unit`" | ||||
label-width="0" | label-width="0" | ||||
style="margin-bottom: 0" | style="margin-bottom: 0" | ||||
@@ -246,7 +246,15 @@ watch(() => props.detailData, val => { | |||||
<el-descriptions-item label="立项依据说明" span="2"> | <el-descriptions-item label="立项依据说明" span="2"> | ||||
<span style="word-break:break-all">{{ detailData.baseBasisEstablish || '-' }}</span> | <span style="word-break:break-all">{{ detailData.baseBasisEstablish || '-' }}</span> | ||||
</el-descriptions-item> | </el-descriptions-item> | ||||
<el-descriptions-item label="历年项目名称" :span="2"> | |||||
<table-list | |||||
:column="column1" | |||||
:data="detailData?.baseHistorProjs|| []" | |||||
:pagination="false" | |||||
:empty-temp="false" | |||||
style="width: 98%;" | |||||
/> | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="发改编码"> | <el-descriptions-item label="发改编码"> | ||||
{{ detailData.developCode || '-' }} | {{ detailData.developCode || '-' }} | ||||
</el-descriptions-item> | </el-descriptions-item> | ||||
@@ -261,25 +269,55 @@ watch(() => props.detailData, val => { | |||||
:span="2" | :span="2" | ||||
>{{ detailData.isTemporaryAugment ? '是' : '否' }} | >{{ detailData.isTemporaryAugment ? '是' : '否' }} | ||||
</el-descriptions-item> | </el-descriptions-item> | ||||
<el-descriptions-item label="历年项目名称" :span="2"> | |||||
<table-list | |||||
:column="column1" | |||||
:data="detailData?.baseHistorProjs|| []" | |||||
:pagination="false" | |||||
:empty-temp="false" | |||||
style="width: 98%;" | |||||
/> | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="项目内容与预期成效" :span="2"> | |||||
<table-list | |||||
ref="tableList2" | |||||
:pagination="false" | |||||
style="width: 100%" | |||||
:column="column2" | |||||
:data="detailData?.beseExpectedResults&&JSON.parse(detailData?.beseExpectedResults)" | |||||
:empty-temp="false" | |||||
/> | |||||
</el-descriptions-item> | |||||
<template v-if="detailData.status>10011"> | |||||
<el-descriptions-item label="项目内容与预期成效" :span="2"> | |||||
<table-list | |||||
ref="tableList2" | |||||
:pagination="false" | |||||
style="width: 100%" | |||||
:column="column2" | |||||
:data="detailData?.beseExpectedResults&&JSON.parse(detailData?.beseExpectedResults)" | |||||
:empty-temp="false" | |||||
/> | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="移动端入口" :span="2"> | |||||
{{ getMobileText(detailData.mobileTerminalEntry) }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="是否使用云资源" :span="2"> | |||||
{{ detailData.isCloudResource===1?'是':'否' }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item v-if="detailData.isCloudResource===1" label="云资源" :span="2"> | |||||
<el-table :data="detailData.cloudResource" style="width: 100%"> | |||||
<el-table-column prop="cloudResourceType" label="云资源类型" /> | |||||
<el-table-column prop="baseSpecification" label="基础规格" /> | |||||
<el-table-column prop="serversCount" label="台数" /> | |||||
<el-table-column prop="description" label="描述" /> | |||||
</el-table> | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="是否产生数据" :span="2"> | |||||
{{ detailData.isProduceData===1?'是':'否' }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item v-if="detailData.isProduceData===1" label="数据列表" :span="2"> | |||||
<el-table :data="detailData.produceData" style="width: 100%"> | |||||
<el-table-column prop="dataDirectoryName" label="数据目录名称" /> | |||||
<el-table-column prop="dataItem" label="数据项" /> | |||||
</el-table> | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="是否使用公共组件" :span="2"> | |||||
{{ detailData.isCommonComponent===1?'是':'否' }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item v-if="detailData.isCommonComponent===1" label="公共组件列表" :span="2"> | |||||
<el-table :data="detailData.commonComponent" style="width: 100%"> | |||||
<el-table-column prop="componentName" label="公共组件名称" /> | |||||
<el-table-column prop="componentType" label="公共组件类型" /> | |||||
</el-table> | |||||
</el-descriptions-item> | |||||
</template> | |||||
<el-descriptions-item | <el-descriptions-item | ||||
v-if="detailData?.projectApplicationForm&&JSON.parse(detailData.projectApplicationForm)?.length" | v-if="detailData?.projectApplicationForm&&JSON.parse(detailData.projectApplicationForm)?.length" | ||||
@@ -329,40 +367,6 @@ watch(() => props.detailData, val => { | |||||
/> | /> | ||||
</el-descriptions-item> | </el-descriptions-item> | ||||
<el-descriptions-item label="移动端入口" :span="2"> | |||||
{{ getMobileText(detailData.mobileTerminalEntry) }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="是否使用云资源" :span="2"> | |||||
{{ detailData.isCloudResource===1?'是':'否' }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item v-if="detailData.isCloudResource===1" label="云资源" :span="2"> | |||||
<el-table :data="detailData.cloudResource" style="width: 100%"> | |||||
<el-table-column prop="cloudResourceType" label="云资源类型" /> | |||||
<el-table-column prop="baseSpecification" label="基础规格" /> | |||||
<el-table-column prop="serversCount" label="台数" /> | |||||
<el-table-column prop="description" label="描述" /> | |||||
</el-table> | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="是否产生数据" :span="2"> | |||||
{{ detailData.isProduceData===1?'是':'否' }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item v-if="detailData.isProduceData===1" label="数据列表" :span="2"> | |||||
<el-table :data="detailData.produceData" style="width: 100%"> | |||||
<el-table-column prop="dataDirectoryName" label="数据目录名称" /> | |||||
<el-table-column prop="dataItem" label="数据项" /> | |||||
</el-table> | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="是否使用公共组件" :span="2"> | |||||
{{ detailData.isCommonComponent===1?'是':'否' }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item v-if="detailData.isCommonComponent===1" label="公共组件列表" :span="2"> | |||||
<el-table :data="detailData.commonComponent" style="width: 100%"> | |||||
<el-table-column prop="componentName" label="公共组件名称" /> | |||||
<el-table-column prop="componentType" label="公共组件类型" /> | |||||
</el-table> | |||||
</el-descriptions-item> | |||||
</template> | </template> | ||||
</el-descriptions> | </el-descriptions> | ||||
</template> | </template> |
@@ -53,18 +53,6 @@ onMounted(() => { | |||||
<el-descriptions-item label="合同总金额"> | <el-descriptions-item label="合同总金额"> | ||||
{{ data.totalAmount||'-' }}万元 | {{ data.totalAmount||'-' }}万元 | ||||
</el-descriptions-item> | </el-descriptions-item> | ||||
<el-descriptions-item label="供应商收款开户行"> | |||||
{{ data.supplierBank||'-' }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="采购方式"> | |||||
{{ data.supplierAccount }} | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="质保期"> | |||||
{{ data.warrantyPeriod||'-' }}年 | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="质保金"> | |||||
{{ data.retentionMoney||'-' }}万元 | |||||
</el-descriptions-item> | |||||
<el-descriptions-item label="合同签订完成时间"> | <el-descriptions-item label="合同签订完成时间"> | ||||
{{ data.contractTime||'-' }} | {{ data.contractTime||'-' }} | ||||
</el-descriptions-item> | </el-descriptions-item> | ||||
@@ -38,6 +38,9 @@ const route = useRoute(), | |||||
type: Boolean, | type: Boolean, | ||||
default: false | default: false | ||||
}, | }, | ||||
projectDetail: { | |||||
type: Object | |||||
}, | |||||
projectCode: { | projectCode: { | ||||
type: String, | type: String, | ||||
default: '' | default: '' | ||||
@@ -50,13 +53,15 @@ const route = useRoute(), | |||||
emits = defineEmits(['close', 'reload']), | emits = defineEmits(['close', 'reload']), | ||||
formRef = ref(), | formRef = ref(), | ||||
form = ref({ | form = ref({ | ||||
attachments: [] | |||||
attachments: [], | |||||
opinions: [] | |||||
}), | }), | ||||
rules = { | rules = { | ||||
comment: [{ required: true, message: '请输入意见', trigger: 'blur' }], | comment: [{ required: true, message: '请输入意见', trigger: 'blur' }], | ||||
proposeTotalInvest: [{ required: true, message: '请输入建议总投资' }], | proposeTotalInvest: [{ required: true, message: '请输入建议总投资' }], | ||||
proposeAnnualBudget: [{ required: true, message: '请输入建议年度预算' }], | proposeAnnualBudget: [{ required: true, message: '请输入建议年度预算' }], | ||||
proposeAttachFiles: [{ required: true, message: '请上传' }] | |||||
proposeAttachFiles: [{ required: true, message: '请上传' }], | |||||
opinions: [{ required: true, message: '请上传' }] | |||||
}, | }, | ||||
submit = async formEl => { | submit = async formEl => { | ||||
if (!formEl) { | if (!formEl) { | ||||
@@ -75,6 +80,10 @@ const route = useRoute(), | |||||
attachments: form.value.attachments.map((i) => ({ | attachments: form.value.attachments.map((i) => ({ | ||||
fileId: i.response.data.id, | fileId: i.response.data.id, | ||||
fileName: i.response.data.originalFileName | fileName: i.response.data.originalFileName | ||||
})), | |||||
opinions: form.value.opinions.map((i) => ({ | |||||
fileId: i.response.data.id, | |||||
fileName: i.response.data.originalFileName | |||||
})) | })) | ||||
} | } | ||||
} | } | ||||
@@ -221,6 +230,32 @@ watch( | |||||
</el-form-item> | </el-form-item> | ||||
</el-col> | </el-col> | ||||
</template> | </template> | ||||
<el-col v-if="projectDetail&&projectDetail.status===20004" :span="24"> | |||||
<el-form-item | |||||
:label="`终验意见`" | |||||
prop="opinions" | |||||
> | |||||
<el-upload | |||||
v-model:file-list="form.opinions" | |||||
class="w-full" | |||||
:action="uploadUrl" | |||||
:on-success="res => handleFileSuccess(res, form.opinions)" | |||||
:on-error="handleFileError" | |||||
:before-upload="file=>fileFormatVerification(file, {types: fileTypes})" | |||||
:accept="fileTypes.map(i=>`.${i}`).join(',')" | |||||
multiple | |||||
:limit="10" | |||||
:on-preview="handleFilePreview" | |||||
> | |||||
<el-button type="primary" class="mr-4">上传附件</el-button> | |||||
<template #tip> | |||||
<div class="el-upload__tip">支持{{ fileDesc }}文件</div> | |||||
</template> | |||||
</el-upload> | |||||
</el-form-item> | |||||
</el-col> | |||||
<el-col :span="24"> | <el-col :span="24"> | ||||
<el-form-item | <el-form-item | ||||
:label="`${constructionSuggestions&&action==='PASS'?'其他附件':'附件'}`" | :label="`${constructionSuggestions&&action==='PASS'?'其他附件':'附件'}`" | ||||
@@ -13,6 +13,7 @@ import WantReadInfo from '@/pages/projectStoreManage/projectStore/projectDetail/ | |||||
import SjFlowRecord from '@/pages/projectStoreManage/projectStore/projectDetail/components/sjFlowRecord.vue' | import SjFlowRecord from '@/pages/projectStoreManage/projectStore/projectDetail/components/sjFlowRecord.vue' | ||||
import ChangeInfoDialog from '@/pages/toDoCenter/handleDuringExamine/components/changeInfoDialog.vue' | import ChangeInfoDialog from '@/pages/toDoCenter/handleDuringExamine/components/changeInfoDialog.vue' | ||||
import { dictionary } from '@/http/apis/projectCollection/projectCollectionEnter' | import { dictionary } from '@/http/apis/projectCollection/projectCollectionEnter' | ||||
import { ElMessageBox } from 'element-plus' | |||||
const | const | ||||
userInfo = storeToRefs(store.userStore).userInfo || {}, | userInfo = storeToRefs(store.userStore).userInfo || {}, | ||||
{ proxy } = getCurrentInstance(), | { proxy } = getCurrentInstance(), | ||||
@@ -152,7 +153,8 @@ const | |||||
visible: false, | visible: false, | ||||
title: undefined, | title: undefined, | ||||
taskId: undefined, | taskId: undefined, | ||||
action: undefined | |||||
action: undefined, | |||||
projectDetail: undefined | |||||
}), | }), | ||||
showDialog = async (title, action) => { | showDialog = async (title, action) => { | ||||
dialogData.visible = true | dialogData.visible = true | ||||
@@ -162,6 +164,7 @@ const | |||||
dialogData.action = action | dialogData.action = action | ||||
dialogData.constructionSuggestions = flowData.value.constructionSuggestions | dialogData.constructionSuggestions = flowData.value.constructionSuggestions | ||||
dialogData.projectCode = detailData.value.projectCode | dialogData.projectCode = detailData.value.projectCode | ||||
dialogData.projectDetail = detailData.value | |||||
}, | }, | ||||
close = () => { | close = () => { | ||||
dialogData.visible = false | dialogData.visible = false | ||||
@@ -257,6 +260,21 @@ onMounted(async () => { | |||||
dictionaryList.value = (await dictionary()).data | dictionaryList.value = (await dictionary()).data | ||||
await store.countStore.setCountStore() | await store.countStore.setCountStore() | ||||
}) | }) | ||||
function rejectYear () { | |||||
// ElMessageBox.confirm('确认驳回至年度计划吗?') | |||||
// .then(() => { | |||||
// }) | |||||
// .catch(() => { | |||||
// }) | |||||
ElMessageBox.confirm('正在开发中......') | |||||
.then(() => { | |||||
}) | |||||
.catch(() => { | |||||
}) | |||||
} | |||||
</script> | </script> | ||||
<template> | <template> | ||||
<div v-loading="loading" class="footerPage"> | <div v-loading="loading" class="footerPage"> | ||||
@@ -372,6 +390,11 @@ onMounted(async () => { | |||||
>驳回 | >驳回 | ||||
</el-button> | </el-button> | ||||
<el-button @click="router.go(-1)">返回</el-button> | <el-button @click="router.go(-1)">返回</el-button> | ||||
<el-button | |||||
plain | |||||
type="danger" | |||||
@click="rejectYear" | |||||
>驳回至年度计划</el-button> | |||||
<!-- <el-dropdown--> | <!-- <el-dropdown--> | ||||
<!-- v-if="((flowData.canPass||flowData.canReject||flowData.canSeal)&&(flowData.processProgressVo.processDefName!=='申请延期审批流程')&&flowData.processProgressVo.processDefName!=='申请借阅审批流程')||isWithDraw()"--> | <!-- v-if="((flowData.canPass||flowData.canReject||flowData.canSeal)&&(flowData.processProgressVo.processDefName!=='申请延期审批流程')&&flowData.processProgressVo.processDefName!=='申请借阅审批流程')||isWithDraw()"--> | ||||
<!-- size="small"--> | <!-- size="small"--> | ||||
@@ -404,6 +427,7 @@ onMounted(async () => { | |||||
<!-- </template>--> | <!-- </template>--> | ||||
<!-- </el-dropdown>--> | <!-- </el-dropdown>--> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<div | <div | ||||
@@ -418,6 +442,7 @@ onMounted(async () => { | |||||
@click="withdraw" | @click="withdraw" | ||||
>撤回</el-button> | >撤回</el-button> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<audit-dialog | <audit-dialog | ||||
@@ -426,6 +451,7 @@ onMounted(async () => { | |||||
:action="dialogData.action" | :action="dialogData.action" | ||||
:task-id="dialogData.taskId" | :task-id="dialogData.taskId" | ||||
:construction-suggestions="dialogData.constructionSuggestions" | :construction-suggestions="dialogData.constructionSuggestions" | ||||
:project-detail="dialogData.projectDetail" | |||||
:project-code="dialogData.projectCode" | :project-code="dialogData.projectCode" | ||||
@close="close" | @close="close" | ||||
@reload="reload" | @reload="reload" | ||||