|
@@ -12,7 +12,7 @@
|
|
</div>
|
|
</div>
|
|
<div class="hc-tree-box">
|
|
<div class="hc-tree-box">
|
|
<el-scrollbar>
|
|
<el-scrollbar>
|
|
- <WbsTree :autoExpandKeys="treeAutoExpandKeys" :menus="ElTreeMenu" :projectId="projectId" :contractId="contractId" isColor @nodeTap="wbsElTreeClick" @menuTap="ElTreeMenuClick"/>
|
|
|
|
|
|
+ <HcTreeData :autoExpandKeys="thirdTreeKeys" :projectId="projectId" :contractId="contractId" type="rightTree" @nodeTap="wbsElTreeClick"/>
|
|
</el-scrollbar>
|
|
</el-scrollbar>
|
|
</div>
|
|
</div>
|
|
<!--左右拖动-->
|
|
<!--左右拖动-->
|
|
@@ -21,26 +21,26 @@
|
|
<div class="hc-page-content-box">
|
|
<div class="hc-page-content-box">
|
|
<HcCard :scrollbar="false" actionSize="lg">
|
|
<HcCard :scrollbar="false" actionSize="lg">
|
|
<template #header>
|
|
<template #header>
|
|
- <HcTooltip keys="tentative_detect_outside_add">
|
|
|
|
- <el-button type="primary" hc-btn @click="addFormModalClick">
|
|
|
|
|
|
+ <HcTooltip keys="tentative_detect_third_add">
|
|
|
|
+ <el-button type="primary" hc-btn :disabled="!thirdTreeKeys" @click="addFormModalClick">
|
|
<HcIcon name="add-circle"/>
|
|
<HcIcon name="add-circle"/>
|
|
<span>新增</span>
|
|
<span>新增</span>
|
|
</el-button>
|
|
</el-button>
|
|
</HcTooltip>
|
|
</HcTooltip>
|
|
- <HcTooltip keys="tentative_detect_outside_edit">
|
|
|
|
- <el-button hc-btn @click="editFormModalClick">
|
|
|
|
|
|
+ <HcTooltip keys="tentative_detect_third_edit">
|
|
|
|
+ <el-button hc-btn :disabled="tableCheckedKeys.length <= 0" @click="editFormModalClick">
|
|
<HcIcon name="edit"/>
|
|
<HcIcon name="edit"/>
|
|
<span>编辑</span>
|
|
<span>编辑</span>
|
|
</el-button>
|
|
</el-button>
|
|
</HcTooltip>
|
|
</HcTooltip>
|
|
- <HcTooltip keys="tentative_detect_outside_copy">
|
|
|
|
- <el-button hc-btn @click="copyTableModalClick">
|
|
|
|
|
|
+ <HcTooltip keys="tentative_detect_third_copy">
|
|
|
|
+ <el-button hc-btn :disabled="tableCheckedKeys.length <= 0" :loading="copyLoading" @click="copyTableModalClick">
|
|
<HcIcon name="file-copy-2"/>
|
|
<HcIcon name="file-copy-2"/>
|
|
<span>复制</span>
|
|
<span>复制</span>
|
|
</el-button>
|
|
</el-button>
|
|
</HcTooltip>
|
|
</HcTooltip>
|
|
- <HcTooltip keys="tentative_detect_outside_del">
|
|
|
|
- <el-button hc-btn @click="delModalClick">
|
|
|
|
|
|
+ <HcTooltip keys="tentative_detect_third_del">
|
|
|
|
+ <el-button hc-btn :disabled="tableCheckedKeys.length <= 0" @click="delModalClick">
|
|
<HcIcon name="delete-bin-2"/>
|
|
<HcIcon name="delete-bin-2"/>
|
|
<span>删除</span>
|
|
<span>删除</span>
|
|
</el-button>
|
|
</el-button>
|
|
@@ -48,12 +48,10 @@
|
|
</template>
|
|
</template>
|
|
<template #search>
|
|
<template #search>
|
|
<div class="w-40">
|
|
<div class="w-40">
|
|
- <el-select v-model="searchForm.user" placeholder="请选择送样人员" clearable>
|
|
|
|
- <el-option v-for="item in userData" :key="item.value" :label="item['label']" :value="item['value']"/>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+ <el-input v-model="searchForm.queryName" placeholder="送样人员" clearable/>
|
|
</div>
|
|
</div>
|
|
<div class="w-40 ml-2">
|
|
<div class="w-40 ml-2">
|
|
- <el-select v-model="searchForm.qualified" placeholder="请选择是否合格" clearable>
|
|
|
|
|
|
+ <el-select v-model="searchForm.queryStatus" placeholder="请选择是否合格" clearable>
|
|
<el-option v-for="item in qualifiedData" :key="item.value" :label="item['label']" :value="item['value']"/>
|
|
<el-option v-for="item in qualifiedData" :key="item.value" :label="item['label']" :value="item['value']"/>
|
|
</el-select>
|
|
</el-select>
|
|
</div>
|
|
</div>
|
|
@@ -77,128 +75,135 @@
|
|
</HcCard>
|
|
</HcCard>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
- <!--新增/编辑 节点-->
|
|
|
|
- <HcDialog :show="addEditNodeFormModal" title="新增/编辑 节点" widths="30rem" :loading="addEditNodeFormLoading" @save="addEditNodeFormModalSave" @close="addEditNodeFormModalClose">
|
|
|
|
- <el-form :model="addEditNodeFormModel" label-width="auto" label-position="top" size="large">
|
|
|
|
- <el-form-item class="mb-0" label="节点名称">
|
|
|
|
- <el-input v-model="addEditNodeFormModel.key1" placeholder="请输入节点名称"/>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
- </HcDialog>
|
|
|
|
-
|
|
|
|
<!--新增/编辑-->
|
|
<!--新增/编辑-->
|
|
- <HcDialog :show="addEditFormModal" title="新增/编辑 第三方检测信息" widths="70rem" :isClose="false" isRowFooter @close="addEditFormModalClose">
|
|
|
|
|
|
+ <HcDialog :show="addEditFormModal" :title="formModalTitle + ' 第三方试验信息'" widths="70rem" isRowFooter :isClose="false" @close="addEditFormModalClose">
|
|
<template #extra>
|
|
<template #extra>
|
|
<HcNewSwitch :datas="tabTypeTab" :keys="tabTypeKey" @change="tabTypeChange"/>
|
|
<HcNewSwitch :datas="tabTypeTab" :keys="tabTypeKey" @change="tabTypeChange"/>
|
|
</template>
|
|
</template>
|
|
<el-form ref="addEditFormRef" :model="addEditFormModel" :rules="addEditFormRules" label-width="auto" size="large" v-if="tabTypeKey === 'tab1'">
|
|
<el-form ref="addEditFormRef" :model="addEditFormModel" :rules="addEditFormRules" label-width="auto" size="large" v-if="tabTypeKey === 'tab1'">
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="合同段">
|
|
<el-form-item label="合同段">
|
|
- <el-select v-model="addEditFormModel.key1" block placeholder="请选择合同段">
|
|
|
|
|
|
+ <el-select v-model="addEditFormModel.contractId" block placeholder="请选择合同段">
|
|
<el-option v-for="item in projectInfo?.contractInfoList" :key="item.id" :label="item['name']" :value="item['id']"/>
|
|
<el-option v-for="item in projectInfo?.contractInfoList" :key="item.id" :label="item['name']" :value="item['id']"/>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="合格状态">
|
|
<el-form-item label="合格状态">
|
|
- <el-radio-group v-model="addEditFormModel.key2" size="large">
|
|
|
|
- <el-radio :label="1">不合格</el-radio>
|
|
|
|
- <el-radio :label="2">合格</el-radio>
|
|
|
|
|
|
+ <el-radio-group v-model="addEditFormModel.status" size="large">
|
|
|
|
+ <el-radio :label="0">不合格</el-radio>
|
|
|
|
+ <el-radio :label="1">合格</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="委托编号">
|
|
<el-form-item label="委托编号">
|
|
- <el-input v-model="addEditFormModel.key3"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.entrustNo"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="样品名称">
|
|
<el-form-item label="样品名称">
|
|
- <el-input v-model="addEditFormModel.key4"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.materialName"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
- <el-form-item label="委托单位" prop="key5">
|
|
|
|
- <el-input v-model="addEditFormModel.key5"/>
|
|
|
|
|
|
+ <el-form-item label="委托单位" prop="entrustCompany">
|
|
|
|
+ <el-input v-model="addEditFormModel.entrustCompany"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="样品编号">
|
|
<el-form-item label="样品编号">
|
|
- <el-input v-model="addEditFormModel.key6"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.specificationNumber"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="证书编号">
|
|
<el-form-item label="证书编号">
|
|
- <el-input v-model="addEditFormModel.key7" placeholder="检测机构资质证书编号"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.testingAgencyCertificateNo" placeholder="检测机构资质证书编号"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="样品数量">
|
|
<el-form-item label="样品数量">
|
|
- <el-input v-model="addEditFormModel.key8"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.materialCount"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="取样人">
|
|
<el-form-item label="取样人">
|
|
- <el-input v-model="addEditFormModel.key9"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.userName"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="代表数量">
|
|
<el-form-item label="代表数量">
|
|
- <el-input v-model="addEditFormModel.key10"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.representativeCount"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="见证人">
|
|
<el-form-item label="见证人">
|
|
- <el-input v-model="addEditFormModel.key11"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.witness"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="检测机构">
|
|
<el-form-item label="检测机构">
|
|
- <el-input v-model="addEditFormModel.key12"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.inspectionOrganization"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="送样日期">
|
|
<el-form-item label="送样日期">
|
|
- <el-date-picker type="date" v-model="addEditFormModel.key13" class="block" value-format="YYYY-MM-DD" :clearable="false"/>
|
|
|
|
|
|
+ <el-date-picker type="date" v-model="addEditFormModel.sampleDeliveryDate" class="block" value-format="YYYY-MM-DD" :clearable="false"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="产地">
|
|
<el-form-item label="产地">
|
|
- <el-input v-model="addEditFormModel.key14"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.placeOfOrigin"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="取样日期">
|
|
<el-form-item label="取样日期">
|
|
- <el-date-picker type="date" v-model="addEditFormModel.key13" class="block" value-format="YYYY-MM-DD" :clearable="false"/>
|
|
|
|
|
|
+ <el-date-picker type="date" v-model="addEditFormModel.samplingDate" class="block" value-format="YYYY-MM-DD" :clearable="false"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="取样地点">
|
|
<el-form-item label="取样地点">
|
|
- <el-input v-model="addEditFormModel.key14"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.samplingLocation"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="hc-form-item">
|
|
|
|
+ <el-form-item label="检测日期">
|
|
|
|
+ <el-date-picker type="date" v-model="addEditFormModel.testDate" class="block" value-format="YYYY-MM-DD" :clearable="false"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="生产厂家">
|
|
|
|
+ <el-input v-model="addEditFormModel.manufacturer"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="报告日期">
|
|
<el-form-item label="报告日期">
|
|
- <el-date-picker type="date" v-model="addEditFormModel.key15" class="block" value-format="YYYY-MM-DD" :clearable="false"/>
|
|
|
|
|
|
+ <el-date-picker type="date" v-model="addEditFormModel.reportDate" class="block" value-format="YYYY-MM-DD" :clearable="false"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="生产批号">
|
|
<el-form-item label="生产批号">
|
|
- <el-input v-model="addEditFormModel.key16"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.batchNumber"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
<div class="hc-form-item">
|
|
<div class="hc-form-item">
|
|
<el-form-item label="报告编号">
|
|
<el-form-item label="报告编号">
|
|
- <el-input v-model="addEditFormModel.key17"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.reportNo"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="工程部位">
|
|
<el-form-item label="工程部位">
|
|
- <el-input v-model="addEditFormModel.key18"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.projectPosition"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</div>
|
|
</div>
|
|
- <el-form-item label="委托单附件" prop="key13">
|
|
|
|
- <div class="form-item-dashed hover">上传文件(待定,看后端接口后,再定)</div>
|
|
|
|
|
|
+ <div class="hc-form-item">
|
|
|
|
+ <el-form-item label="试验类型">
|
|
|
|
+ <el-input v-model="addEditFormModel.trialType"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="规格型号">
|
|
|
|
+ <el-input v-model="addEditFormModel.specificationModel"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <el-form-item label="委托单附件">
|
|
|
|
+ <FormItemUpload v-model="addEditFormModel.delegationOrderUrl"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="记录表附件" prop="key13">
|
|
|
|
- <div class="form-item-dashed hover">上传文件(待定,看后端接口后,再定)</div>
|
|
|
|
|
|
+ <el-form-item label="记录表附件">
|
|
|
|
+ <FormItemUpload v-model="addEditFormModel.recordTableUrl"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="报告单附件" prop="key13">
|
|
|
|
- <div class="form-item-dashed hover">上传文件(待定,看后端接口后,再定)</div>
|
|
|
|
|
|
+ <el-form-item label="报告单附件">
|
|
|
|
+ <FormItemUpload v-model="addEditFormModel.reportAttachmentUrl"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-form>
|
|
</el-form>
|
|
<el-form ref="addEditFormRef" :model="addEditFormModel" label-position="top" label-width="auto" size="large" v-if="tabTypeKey === 'tab2'">
|
|
<el-form ref="addEditFormRef" :model="addEditFormModel" label-position="top" label-width="auto" size="large" v-if="tabTypeKey === 'tab2'">
|
|
<el-form-item label="检测依据">
|
|
<el-form-item label="检测依据">
|
|
- <el-input v-model="addEditFormModel.desc1" type="textarea" placeholder="请输入检测依据" :autosize="{ minRows: 3}"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.testBasisText" type="textarea" placeholder="请输入检测依据" :autosize="{ minRows: 3}"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="评定标准">
|
|
<el-form-item label="评定标准">
|
|
- <el-input v-model="addEditFormModel.desc2" type="textarea" placeholder="请输入评定标准" :autosize="{ minRows: 3}"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.evaluationCriteriaText" type="textarea" placeholder="请输入评定标准" :autosize="{ minRows: 3}"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="检测结论">
|
|
<el-form-item label="检测结论">
|
|
- <el-input v-model="addEditFormModel.desc3" type="textarea" placeholder="请输入检测结论" :autosize="{ minRows: 3}"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.testConclusionText" type="textarea" placeholder="请输入检测结论" :autosize="{ minRows: 3}"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="备注">
|
|
<el-form-item label="备注">
|
|
- <el-input v-model="addEditFormModel.desc4" type="textarea" placeholder="请输入备注" :autosize="{ minRows: 3}"/>
|
|
|
|
|
|
+ <el-input v-model="addEditFormModel.remarks" type="textarea" placeholder="请输入备注" :autosize="{ minRows: 3}"/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-form>
|
|
</el-form>
|
|
<template #leftRowFooter>
|
|
<template #leftRowFooter>
|
|
@@ -220,17 +225,35 @@
|
|
</HcDialog>
|
|
</HcDialog>
|
|
|
|
|
|
<!--选择样品信息-->
|
|
<!--选择样品信息-->
|
|
- <HcDialog :show="linksSampleModal" title="选择样品信息" widths="70%" isTable saveText="确认" @close="linksSampleModalClose" @save="linksSampleModalSave">
|
|
|
|
|
|
+ <HcDialog :show="linksSampleModal" title="选择样品信息" widths="70%" isTable isRowFooter @close="linksSampleModalClose">
|
|
<div class="hc-links-sample-modal-box">
|
|
<div class="hc-links-sample-modal-box">
|
|
<div class="hc-links-sample-tree-box">
|
|
<div class="hc-links-sample-tree-box">
|
|
<el-scrollbar>
|
|
<el-scrollbar>
|
|
- <WbsTree :autoExpandKeys="treeAutoExpandKeys" :projectId="projectId" :contractId="contractId"/>
|
|
|
|
|
|
+ <TestTree :projectId="projectId"
|
|
|
|
+ :wbsTempId="projectInfo?.referenceWbsTemplateIdTrial"
|
|
|
|
+ :wbsType="2"
|
|
|
|
+ :tenantId="userInfo?.tenant_id"
|
|
|
|
+ @nodeTap="sampleTreeClick"/>
|
|
</el-scrollbar>
|
|
</el-scrollbar>
|
|
</div>
|
|
</div>
|
|
<div class="hc-links-sample-table-box">
|
|
<div class="hc-links-sample-table-box">
|
|
- <HcTable ref="tableSampleRef" :column="linksSampleTableColumn" :datas="linksSampleTableData" :loading="linksSampleTableLoading" :isIndex="false" isCheck @selection-change="linksSampleTableSelection"/>
|
|
|
|
|
|
+ <HcTable :column="linksSampleTableColumn" :datas="linksSampleTableData" :loading="linksSampleTableLoading" :isIndex="false">
|
|
|
|
+ <template #action="{row}">
|
|
|
|
+ <el-button type="primary" size="small" plain v-if="addEditFormModel.sampleId === row.id">已选择</el-button>
|
|
|
|
+ <el-button type="primary" size="small" plain @click="linksSampleRow(row)" v-else>选择</el-button>
|
|
|
|
+ </template>
|
|
|
|
+ </HcTable>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
+ <template #leftRowFooter>
|
|
|
|
+ <el-button size="large" @click="linksSampleModalClose">
|
|
|
|
+ <HcIcon name="close"/>
|
|
|
|
+ <span>取消</span>
|
|
|
|
+ </el-button>
|
|
|
|
+ </template>
|
|
|
|
+ <template #rightRowFooter>
|
|
|
|
+ <HcPages :pages="searchSampleForm" @change="pageSampleChange"/>
|
|
|
|
+ </template>
|
|
</HcDialog>
|
|
</HcDialog>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
@@ -239,15 +262,21 @@
|
|
<script setup>
|
|
<script setup>
|
|
import {ref, watch, onMounted} from "vue";
|
|
import {ref, watch, onMounted} from "vue";
|
|
import {useAppStore} from "~src/store";
|
|
import {useAppStore} from "~src/store";
|
|
-import WbsTree from "../../data-fill/components/WbsTree.vue"
|
|
|
|
|
|
+import HcTreeData from "./components/HcTreeData.vue"
|
|
|
|
+import FormItemUpload from "./components/FormItemUpload.vue"
|
|
|
|
+import TestTree from "../material/components/TestTree.vue"
|
|
import {getStoreData, setStoreData} from '~src/utils/storage'
|
|
import {getStoreData, setStoreData} from '~src/utils/storage'
|
|
-import {HcIsButton} from "~src/plugins/IsButtons";
|
|
|
|
|
|
+import dataApi from "~api/tentative/detect/third";
|
|
|
|
+import samplingApi from "~api/tentative/material/sampling"
|
|
|
|
+import {formValidate, getArrValue} from "vue-utils-plus";
|
|
|
|
+import {delMessage, rowsToId} from "~uti/tools";
|
|
|
|
|
|
//变量
|
|
//变量
|
|
const useAppState = useAppStore()
|
|
const useAppState = useAppStore()
|
|
const projectId = ref(useAppState.getProjectId);
|
|
const projectId = ref(useAppState.getProjectId);
|
|
const contractId = ref(useAppState.getContractId);
|
|
const contractId = ref(useAppState.getContractId);
|
|
const projectInfo = ref(useAppState.getProjectInfo);
|
|
const projectInfo = ref(useAppState.getProjectInfo);
|
|
|
|
+const userInfo = ref(useAppState.getUserInfo);
|
|
const isCollapse = ref(useAppState.getCollapse)
|
|
const isCollapse = ref(useAppState.getCollapse)
|
|
|
|
|
|
//监听
|
|
//监听
|
|
@@ -258,106 +287,50 @@ watch(() => [
|
|
})
|
|
})
|
|
|
|
|
|
//自动展开缓存
|
|
//自动展开缓存
|
|
-const treeAutoExpandKeys = ref(getStoreData('wbsTreeExpandKeys') || [])
|
|
|
|
|
|
+const thirdTreeKeys = ref(getStoreData('outsideTreeKeys'))
|
|
|
|
|
|
//渲染完成
|
|
//渲染完成
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
- setElTreeMenu()
|
|
|
|
|
|
+ const keys = thirdTreeKeys.value
|
|
|
|
+ if (keys) {
|
|
|
|
+ searchForm.value.nodeId = keys
|
|
|
|
+ getTableData()
|
|
|
|
+ }
|
|
})
|
|
})
|
|
|
|
|
|
-const userData = ref([
|
|
|
|
- {label: 'xxx', value: '1'}
|
|
|
|
-])
|
|
|
|
-
|
|
|
|
|
|
+//是否合格
|
|
const qualifiedData = ref([
|
|
const qualifiedData = ref([
|
|
- {label: '是', value: '1'}
|
|
|
|
|
|
+ {label: '不合格', value: 0},
|
|
|
|
+ {label: '合格', value: 1}
|
|
])
|
|
])
|
|
|
|
|
|
//搜索表单
|
|
//搜索表单
|
|
-const searchForm = ref({user: null, qualified: null, betweenTime: null, queryValue: null, current: 1, size: 20, total: 0})
|
|
|
|
-
|
|
|
|
-//树菜单配置
|
|
|
|
-const ElTreeMenu = ref([])
|
|
|
|
-const setElTreeMenu = () => {
|
|
|
|
- let newArr = [];
|
|
|
|
- if (HcIsButton('tentative_detect_outside_tree_add')) {
|
|
|
|
- newArr.push({icon: 'add-circle', label: '新增节点', key: "add"})
|
|
|
|
- }
|
|
|
|
- if (HcIsButton('tentative_detect_outside_tree_edit')) {
|
|
|
|
- newArr.push({icon: 'draft', label: '修改节点', key: "edit"})
|
|
|
|
- }
|
|
|
|
- if (HcIsButton('tentative_detect_outside_tree_del')) {
|
|
|
|
- newArr.push({icon: 'delete-bin', label: '删除节点', key: "del"})
|
|
|
|
- }
|
|
|
|
- ElTreeMenu.value = newArr
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-//树相关的变量
|
|
|
|
-const primaryKeyId = ref('')
|
|
|
|
-const nodeItemInfo = ref({})
|
|
|
|
-const nodeDataInfo = ref({})
|
|
|
|
|
|
+const searchForm = ref({
|
|
|
|
+ queryName: null, queryStatus: null, queryValue: null, startTime: null, endTime: null,
|
|
|
|
+ current: 1, size: 20, total: 0
|
|
|
|
+})
|
|
|
|
|
|
//树被点击
|
|
//树被点击
|
|
-const wbsElTreeClick = ({node, data, keys}) => {
|
|
|
|
|
|
+const nodeItemInfo = ref({})
|
|
|
|
+const wbsElTreeClick = ({node, keys}) => {
|
|
nodeItemInfo.value = node
|
|
nodeItemInfo.value = node
|
|
- nodeDataInfo.value = data
|
|
|
|
- primaryKeyId.value = data['primaryKeyId'] || ''
|
|
|
|
//缓存自动展开
|
|
//缓存自动展开
|
|
- treeAutoExpandKeys.value = keys
|
|
|
|
- setStoreData('wbsTreeExpandKeys',keys)
|
|
|
|
|
|
+ thirdTreeKeys.value = keys
|
|
|
|
+ setStoreData('outsideTreeKeys',keys)
|
|
//改变搜索表单数据
|
|
//改变搜索表单数据
|
|
- //searchForm.value.wbsId = data['contractIdRelation'] ? data['id'] : data['primaryKeyId']
|
|
|
|
- //searchForm.value.contractIdRelation = data['contractIdRelation']
|
|
|
|
|
|
+ searchForm.value.nodeId = keys
|
|
searchForm.value.current = 1;
|
|
searchForm.value.current = 1;
|
|
getTableData()
|
|
getTableData()
|
|
}
|
|
}
|
|
|
|
|
|
-//树菜单被点击
|
|
|
|
-const ElTreeMenuClick = async ({key,node,data}) => {
|
|
|
|
- nodeItemInfo.value = node
|
|
|
|
- nodeDataInfo.value = data
|
|
|
|
- if (key === 'add') {
|
|
|
|
- addEditNodeFormModal.value = true
|
|
|
|
- } else if (key === 'edit') {
|
|
|
|
- addEditNodeFormModal.value = true
|
|
|
|
- } else if (key === 'del') {
|
|
|
|
- delNodeModalClick()
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-//新增/编辑 节点
|
|
|
|
-const addEditNodeFormModal = ref(false)
|
|
|
|
-const addEditNodeFormModel = ref({key1: ''})
|
|
|
|
-//保存节点信息
|
|
|
|
-const addEditNodeFormLoading = ref(false)
|
|
|
|
-const addEditNodeFormModalSave = () => {
|
|
|
|
- addEditNodeFormModal.value = false
|
|
|
|
-}
|
|
|
|
-//关闭节点编辑弹窗
|
|
|
|
-const addEditNodeFormModalClose = () => {
|
|
|
|
- addEditNodeFormModal.value = false
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-//删除节点
|
|
|
|
-const delNodeModalClick = () => {
|
|
|
|
- window?.$messageBox?.alert('请谨慎考虑后,确认是否需要删除?', '删除提醒', {
|
|
|
|
- showCancelButton: true,
|
|
|
|
- confirmButtonText: '确认删除',
|
|
|
|
- cancelButtonText: '取消',
|
|
|
|
- type: 'warning',
|
|
|
|
- callback: (action) => {
|
|
|
|
- if (action === 'confirm') {
|
|
|
|
- //removeContractTreeNode()
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
//日期时间被选择
|
|
//日期时间被选择
|
|
const betweenTime = ref(null)
|
|
const betweenTime = ref(null)
|
|
-const betweenTimeUpdate = ({arr,query}) => {
|
|
|
|
|
|
+const betweenTimeUpdate = ({arr}) => {
|
|
betweenTime.value = arr
|
|
betweenTime.value = arr
|
|
- searchForm.value.betweenTime = query
|
|
|
|
|
|
+ if (arr.length > 0) {
|
|
|
|
+ searchForm.value.startTime = arr[0]
|
|
|
|
+ searchForm.value.endTime = arr[1]
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
//回车搜索
|
|
//回车搜索
|
|
@@ -384,49 +357,81 @@ const pageChange = ({current, size}) => {
|
|
//表格数据
|
|
//表格数据
|
|
const tableRef = ref(null)
|
|
const tableRef = ref(null)
|
|
const tableColumn = ref([
|
|
const tableColumn = ref([
|
|
- {key:'key1', name: '委托编号'},
|
|
|
|
- {key:'key2', name: '报告编号'},
|
|
|
|
- {key:'key3', name: '样品编号'},
|
|
|
|
- {key:'key4', name: '试验类型'},
|
|
|
|
- {key:'key5', name: '样品名称'},
|
|
|
|
- {key:'key6', name: '规格型号'},
|
|
|
|
- {key:'key7', name: '委托单位'},
|
|
|
|
- {key:'key8', name: '检测机构'},
|
|
|
|
- {key:'key9', name: '工程部位'},
|
|
|
|
- {key:'key10', name: '送样人'},
|
|
|
|
- {key:'key11', name: '送样日期'},
|
|
|
|
- {key:'key12', name: '报告日期'},
|
|
|
|
- {key:'key13', name: '检测结果'},
|
|
|
|
- {key:'key14', name: '备注'},
|
|
|
|
|
|
+ {key:'entrustNo', name: '委托编号', width: 150},
|
|
|
|
+ {key:'reportNo', name: '报告编号', width: 150},
|
|
|
|
+ {key:'specificationNumber', name: '样品编号', width: 150},
|
|
|
|
+ {key:'trialType', name: '试验类型', width: 150},
|
|
|
|
+ {key:'materialName', name: '样品名称', width: 150},
|
|
|
|
+ {key:'specificationModel', name: '规格型号', width: 150},
|
|
|
|
+ {key:'entrustCompany', name: '委托单位', width: 150},
|
|
|
|
+ {key:'inspectionOrganization', name: '检测机构', width: 150},
|
|
|
|
+ {key:'projectPosition', name: '工程部位', width: 150},
|
|
|
|
+ {key:'userName', name: '送样人', width: 100},
|
|
|
|
+ {key:'sampleDeliveryDate', name: '送样日期', width: 150},
|
|
|
|
+ {key:'reportDate', name: '报告日期', width: 150},
|
|
|
|
+ {key:'testConclusionText', name: '检测结果', width: 150},
|
|
|
|
+ {key:'remarks', name: '备注', width: 180},
|
|
])
|
|
])
|
|
|
|
+const tableData = ref([])
|
|
|
|
|
|
//获取数据
|
|
//获取数据
|
|
const tableLoading = ref(false)
|
|
const tableLoading = ref(false)
|
|
-const tableData = ref([
|
|
|
|
- {}
|
|
|
|
-])
|
|
|
|
const getTableData = async () => {
|
|
const getTableData = async () => {
|
|
-
|
|
|
|
|
|
+ tableLoading.value = true
|
|
|
|
+ const { error, code, data } = await dataApi.queryPage({
|
|
|
|
+ ...searchForm.value,
|
|
|
|
+ projectId: projectId.value,
|
|
|
|
+ contractId: contractId.value
|
|
|
|
+ })
|
|
|
|
+ //处理数据
|
|
|
|
+ tableLoading.value = false
|
|
|
|
+ if (!error && code === 200) {
|
|
|
|
+ tableData.value = getArrValue(data['records'])
|
|
|
|
+ searchForm.value.total = data.total || 0
|
|
|
|
+ } else {
|
|
|
|
+ tableData.value = []
|
|
|
|
+ searchForm.value.total = 0
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
//多选
|
|
//多选
|
|
const tableCheckedKeys = ref([]);
|
|
const tableCheckedKeys = ref([]);
|
|
const tableSelection = (rows) => {
|
|
const tableSelection = (rows) => {
|
|
- tableCheckedKeys.value = rows.filter((item) => {
|
|
|
|
- return (item??'') !== '';
|
|
|
|
- })
|
|
|
|
|
|
+ tableCheckedKeys.value = rows
|
|
}
|
|
}
|
|
|
|
|
|
//新增/编辑
|
|
//新增/编辑
|
|
const addEditFormModal = ref(false)
|
|
const addEditFormModal = ref(false)
|
|
|
|
+const formModalTitle = ref('新增')
|
|
const addFormModalClick = () => {
|
|
const addFormModalClick = () => {
|
|
- addEditFormModal.value = true
|
|
|
|
|
|
+ const { data } = nodeItemInfo.value
|
|
|
|
+ if (data?.id) {
|
|
|
|
+ addEditFormModel.value = {
|
|
|
|
+ nodeId: data.id, trialType: data.nodeName, status: 1
|
|
|
|
+ }
|
|
|
|
+ formModalTitle.value = '新增'
|
|
|
|
+ addEditFormModal.value = true
|
|
|
|
+ } else {
|
|
|
|
+ window.$message.warning('请先选择一个树节点')
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+//编辑
|
|
const editFormModalClick = () => {
|
|
const editFormModalClick = () => {
|
|
- addEditFormModal.value = true
|
|
|
|
|
|
+ const keys = tableCheckedKeys.value
|
|
|
|
+ if (keys.length === 1) {
|
|
|
|
+ addEditFormModel.value = keys[0]
|
|
|
|
+ formModalTitle.value = '编辑'
|
|
|
|
+ addEditFormModal.value = true
|
|
|
|
+ } else if (keys.length > 1) {
|
|
|
|
+ window?.$message?.warning('只能选择一条数据编辑')
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+//关闭
|
|
const addEditFormModalClose = () => {
|
|
const addEditFormModalClose = () => {
|
|
addEditFormModal.value = false
|
|
addEditFormModal.value = false
|
|
|
|
+ addEditFormModel.value = {}
|
|
}
|
|
}
|
|
|
|
|
|
//类型tab数据和相关处理
|
|
//类型tab数据和相关处理
|
|
@@ -443,93 +448,213 @@ const tabTypeChange = (item) => {
|
|
const addEditFormRef = ref(null)
|
|
const addEditFormRef = ref(null)
|
|
const addEditFormModel = ref({})
|
|
const addEditFormModel = ref({})
|
|
const addEditFormRules = {
|
|
const addEditFormRules = {
|
|
- key5: {
|
|
|
|
|
|
+ entrustCompany: {
|
|
required: true,
|
|
required: true,
|
|
trigger: 'blur',
|
|
trigger: 'blur',
|
|
- message: "请输入"
|
|
|
|
|
|
+ message: "请输入委托单位"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-//新增/编辑 保存
|
|
|
|
|
|
+//新增/编辑/复制弹窗 保存
|
|
const addEditFormLoading = ref(false)
|
|
const addEditFormLoading = ref(false)
|
|
-const addEditFormClick = () => {
|
|
|
|
|
|
+const addEditFormClick = async () => {
|
|
|
|
+ const validate = await formValidate(addEditFormRef.value)
|
|
|
|
+ if (validate) {
|
|
|
|
+ if (formModalTitle.value === '复制') {
|
|
|
|
+ await copyFormApi()
|
|
|
|
+ } else {
|
|
|
|
+ await submitFormApi()
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
|
|
|
|
+//新增、编辑 提交保存
|
|
|
|
+const submitFormApi = async () => {
|
|
|
|
+ addEditFormLoading.value = true
|
|
|
|
+ const { error, code } = await dataApi.submitForm({
|
|
|
|
+ ...addEditFormModel.value,
|
|
|
|
+ projectId: projectId.value,
|
|
|
|
+ contractId: contractId.value
|
|
|
|
+ })
|
|
|
|
+ //处理数据
|
|
|
|
+ addEditFormLoading.value = false
|
|
|
|
+ if (!error && code === 200) {
|
|
|
|
+ window?.$message?.success('操作成功')
|
|
|
|
+ addEditFormModal.value = false
|
|
|
|
+ await getTableData()
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
//复制
|
|
//复制
|
|
const copyTableModalClick = () => {
|
|
const copyTableModalClick = () => {
|
|
- addEditFormModal.value = true
|
|
|
|
|
|
+ const rows = tableCheckedKeys.value
|
|
|
|
+ if (rows.length === 1) {
|
|
|
|
+ addEditFormModel.value = rows[0]
|
|
|
|
+ formModalTitle.value = '复制'
|
|
|
|
+ addEditFormModal.value = true
|
|
|
|
+ } else if (rows.length > 1) {
|
|
|
|
+ const ids = rowsToId(rows)
|
|
|
|
+ batchCopyFormApi(ids)
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+//复制提交保存
|
|
|
|
+const copyFormApi = async () => {
|
|
|
|
+ addEditFormLoading.value = true
|
|
|
|
+ const { error, code } = await dataApi.copyData({
|
|
|
|
+ ...addEditFormModel.value,
|
|
|
|
+ projectId: projectId.value,
|
|
|
|
+ contractId: contractId.value
|
|
|
|
+ })
|
|
|
|
+ //处理数据
|
|
|
|
+ addEditFormLoading.value = false
|
|
|
|
+ if (!error && code === 200) {
|
|
|
|
+ window?.$message?.success('操作成功')
|
|
|
|
+ addEditFormModal.value = false
|
|
|
|
+ await getTableData()
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+//批量复制 提交保存
|
|
|
|
+const copyLoading = ref(false)
|
|
|
|
+const batchCopyFormApi = async (ids) => {
|
|
|
|
+ copyLoading.value = true
|
|
|
|
+ const { error, code } = await dataApi.copyData({
|
|
|
|
+ projectId: projectId.value,
|
|
|
|
+ contractId: contractId.value,
|
|
|
|
+ ids: ids,
|
|
|
|
+ })
|
|
|
|
+ //处理数据
|
|
|
|
+ copyLoading.value = false
|
|
|
|
+ if (!error && code === 200) {
|
|
|
|
+ window?.$message?.success('操作成功')
|
|
|
|
+ await getTableData()
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
//删除
|
|
//删除
|
|
const delModalClick = () => {
|
|
const delModalClick = () => {
|
|
- window?.$messageBox?.alert('请谨慎考虑后,确认是否需要删除?', '删除提醒', {
|
|
|
|
- showCancelButton: true,
|
|
|
|
- confirmButtonText: '确认删除',
|
|
|
|
- cancelButtonText: '取消',
|
|
|
|
- type: 'warning',
|
|
|
|
- callback: (action) => {
|
|
|
|
- if (action === 'confirm') {
|
|
|
|
- //removeContractTreeNode()
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ delMessage(() => {
|
|
|
|
+ tableRemoveData()
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+//批量删除
|
|
|
|
+const tableRemoveData = async () => {
|
|
|
|
+ const rows = tableCheckedKeys.value
|
|
|
|
+ if (rows.length > 0 ) {
|
|
|
|
+ const ids = rowsToId(rows)
|
|
|
|
+ //删除请求
|
|
|
|
+ const { error, code } = await dataApi.removeData({
|
|
|
|
+ projectId: projectId.value,
|
|
|
|
+ contractId: contractId.value,
|
|
|
|
+ ids: ids,
|
|
|
|
+ })
|
|
|
|
+ //处理数据
|
|
|
|
+ if (!error && code === 200) {
|
|
|
|
+ window?.$message?.success('操作成功')
|
|
|
|
+ searchClick()
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+//关联数据搜索
|
|
|
|
+const searchSampleForm = ref({
|
|
|
|
+ current: 1, size: 20, total: 0
|
|
|
|
+})
|
|
|
|
+
|
|
//关联进场材料
|
|
//关联进场材料
|
|
const linksSampleModal = ref(false)
|
|
const linksSampleModal = ref(false)
|
|
-const linksSampleModalClick = (row) => {
|
|
|
|
|
|
+const linksSampleModalClick = () => {
|
|
|
|
+ searchSampleForm.value.current = 1;
|
|
|
|
+ linksSampleTableData.value = []
|
|
linksSampleModal.value = true
|
|
linksSampleModal.value = true
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+//树被点击
|
|
|
|
+const sampleTreeClick = ({data}) => {
|
|
|
|
+ searchSampleForm.value.nodeId = data['primaryKeyId'] || ''
|
|
|
|
+ searchSampleForm.value.current = 1;
|
|
|
|
+ getLinksSampleTable()
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+//分页被点击
|
|
|
|
+const pageSampleChange = ({current, size}) => {
|
|
|
|
+ searchSampleForm.value.current = current
|
|
|
|
+ searchSampleForm.value.size = size
|
|
|
|
+ getLinksSampleTable()
|
|
|
|
+}
|
|
|
|
+
|
|
//关联进场材料数据
|
|
//关联进场材料数据
|
|
-const tableSampleRef = ref(null)
|
|
|
|
const linksSampleTableColumn = ref([
|
|
const linksSampleTableColumn = ref([
|
|
- {key:'key1', name: '样品名称'},
|
|
|
|
- {key:'key2', name: '取样日期'},
|
|
|
|
- {key:'key3', name: '样品编号'},
|
|
|
|
- {key:'key4', name: '规格型号'},
|
|
|
|
- {key:'key5', name: '试样数量'},
|
|
|
|
- {key:'key6', name: '计算单位'},
|
|
|
|
- {key:'key7', name: '拟用部位'},
|
|
|
|
- {key:'key8', name: '代表数量'},
|
|
|
|
- {key:'key9', name: '取样人'},
|
|
|
|
|
|
+ {key:'materialName', name: '取样名称'},
|
|
|
|
+ {key:'samplingDate', name: '取样日期'},
|
|
|
|
+ {key:'specificationNumber', name: '样品编号'},
|
|
|
|
+ {key:'specificationModel', name: '规格型号'},
|
|
|
|
+ {key:'materialCount', name: '试样数量'},
|
|
|
|
+ {key:'calculationUnit', name: '计算单位'},
|
|
|
|
+ {key:'proposedPosition', name: '拟用部位'},
|
|
|
|
+ {key:'representativeCount', name: '代表数量'},
|
|
|
|
+ {key:'userName', name: '取样人'}
|
|
])
|
|
])
|
|
const linksSampleTableData = ref([])
|
|
const linksSampleTableData = ref([])
|
|
-const linksSampleTableLoading = ref(false)
|
|
|
|
|
|
|
|
-//多选
|
|
|
|
-const tableSampleCheckedKeys = ref([]);
|
|
|
|
-const linksSampleTableSelection = (rows) => {
|
|
|
|
- tableSampleCheckedKeys.value = rows.filter((item) => {
|
|
|
|
- return (item??'') !== '';
|
|
|
|
- })
|
|
|
|
|
|
+//获取关联数据
|
|
|
|
+const linksSampleTableLoading = ref(false)
|
|
|
|
+const getLinksSampleTable = async () => {
|
|
|
|
+ const { nodeId } = searchSampleForm.value
|
|
|
|
+ if (nodeId) {
|
|
|
|
+ linksSampleTableLoading.value = true
|
|
|
|
+ const { error, code, data } = await samplingApi.queryPage({
|
|
|
|
+ ...searchSampleForm.value,
|
|
|
|
+ projectId: projectId.value,
|
|
|
|
+ contractId: contractId.value
|
|
|
|
+ })
|
|
|
|
+ //处理数据
|
|
|
|
+ linksSampleTableLoading.value = false
|
|
|
|
+ if (!error && code === 200) {
|
|
|
|
+ linksSampleTableData.value = getArrValue(data['records'])
|
|
|
|
+ searchSampleForm.value.total = data.total || 0
|
|
|
|
+ } else {
|
|
|
|
+ linksSampleTableData.value = []
|
|
|
|
+ searchSampleForm.value.total = 0
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ window?.$message?.warning('请先选择一个树节点')
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
-const linksSampleModalSave = () => {
|
|
|
|
-
|
|
|
|
|
|
+//确认关联
|
|
|
|
+const linksSampleRow = (row) => {
|
|
|
|
+ const form = addEditFormModel.value;
|
|
|
|
+ form.materialName = row.materialName ?? '' //样品名称
|
|
|
|
+ form.specificationNumber = row.specificationNumber ?? '' //样品编号
|
|
|
|
+ form.materialCount = row.materialCount ?? '' //试样数量
|
|
|
|
+ form.userName = row.userName ?? '' //取样人
|
|
|
|
+ form.representativeCount = row.representativeCount ?? '' //代表数量
|
|
|
|
+ form.samplingDate = row.samplingDate ?? '' //取样日期
|
|
|
|
+ form.samplingLocation = row.samplingLocation ?? '' //取样地点
|
|
|
|
+ form.batchNumber = row.batchNumber ?? '' //生产批号
|
|
|
|
+ form.specificationModel = row.specificationModel ?? '' //规格型号
|
|
|
|
+ form.sampleId = row.id //关联ID
|
|
|
|
+ //更新数据
|
|
|
|
+ addEditFormModel.value = form
|
|
}
|
|
}
|
|
|
|
|
|
//关闭关联进场材料
|
|
//关闭关联进场材料
|
|
const linksSampleModalClose = () => {
|
|
const linksSampleModalClose = () => {
|
|
linksSampleModal.value = false
|
|
linksSampleModal.value = false
|
|
-}
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-//拼接ID
|
|
|
|
-const rowsToId = (rows) => {
|
|
|
|
- return rows.map((obj) => {
|
|
|
|
- return obj.id;
|
|
|
|
- }).join(",")
|
|
|
|
|
|
+ linksSampleTableData.value = []
|
|
|
|
+ searchSampleForm.value.current = 1;
|
|
}
|
|
}
|
|
|
|
|
|
//左右拖动,改变树形结构宽度
|
|
//左右拖动,改变树形结构宽度
|
|
-const leftWidth = ref(382);
|
|
|
|
|
|
+const leftWidth = ref(300);
|
|
const onmousedown = () => {
|
|
const onmousedown = () => {
|
|
const leftNum = isCollapse.value ? 142 : 272
|
|
const leftNum = isCollapse.value ? 142 : 272
|
|
document.onmousemove = (ve) => {
|
|
document.onmousemove = (ve) => {
|
|
let diffVal = ve.clientX - leftNum;
|
|
let diffVal = ve.clientX - leftNum;
|
|
- if(diffVal >= 310 && diffVal <= 900) {
|
|
|
|
|
|
+ if(diffVal >= 260 && diffVal <= 700) {
|
|
leftWidth.value = diffVal;
|
|
leftWidth.value = diffVal;
|
|
}
|
|
}
|
|
}
|
|
}
|