jhprjv2/ruoyi-ui/src/views/project/checkDetection/index.vue

808 lines
30 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="项目名称" prop="projectId">
<el-select v-model="queryParams.projectId" filterable placeholder="请选择项目" clearable @change="doQuerySub">
<el-option v-for="(item, index) in projectOptions" :key="index" :label="item.projectName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="单位名称" prop="deptId">
<el-select v-model="queryParams.deptId" filterable placeholder="请输入单位名称" clearable>
<el-option v-for="(item, index) in depts" :key="index" :label="item.deptName" :value="item.deptId">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="送检类型" prop="checkType">
<el-select v-model="queryParams.checkType" placeholder="请选择送检类型" clearable>
<el-option v-for="dict in dict.type.check_detection_check_type" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
<!-- <el-form-item label="检测结果" prop="detectionResult">
<el-select
v-model="queryParams.detectionResult"
placeholder="请选择检测结果"
clearable
>
<el-option
v-for="dict in dict.type.project_checking_result"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item> -->
<el-form-item label="材料名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入材料名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="送检时间">
<el-date-picker v-model="daterangeCheckTime" style="width: 240px" value-format="yyyy-MM-dd" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</el-form-item>
<el-form-item label="审批状态" prop="approveStatus" v-if="false">
<el-select v-model="queryParams.approveStatus" placeholder="请选择审批状态" clearable>
<el-option v-for="dict in dict.type.project_check_status" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="使用部位" prop="usePosition">
<el-input v-model="queryParams.usePosition" placeholder="请输入使用部位" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="监理专员" prop="witnessUserName">
<el-input v-model="queryParams.witnessUserName" placeholder="请输入监理专员名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="实验室" prop="laboratoryName">
<el-input v-model="queryParams.laboratoryName" placeholder="请输入实验室名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- <el-row :gutter="10" class="mb8"> -->
<!-- <el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['project:checkDetection:add']"
>新增</el-button
>
</el-col> -->
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['project:checkDetection:edit']"
>修改</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['project:checkDetection:remove']"
>删除</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['project:checkDetection:export']"
>导出</el-button
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> -->
<el-tabs type="card" v-model="queryParams.activeName" @tab-click="getList">
<el-tab-pane :label="tabs.all" name="all"></el-tab-pane>
<el-tab-pane :label="tabs.jxz" name="jxz"></el-tab-pane>
<el-tab-pane :label="tabs.ywc" name="ywc"></el-tab-pane></el-tabs>
<el-table v-loading="loading" :data="checkDetectionList" @selection-change="handleSelectionChange" stripe>
<el-table-column label="项目名称" align="center" prop="projectName" width="200">
<template slot-scope="scope">
<div>{{ scope.row.projectName }}</div>
</template>
</el-table-column>
<el-table-column label="单位名称" align="center" prop="deptName" width="180" show-overflow-tooltip />
<el-table-column label="送检类型" align="center" prop="checkType">
<template slot-scope="scope">
<dict-tag :options="dict.type.check_detection_check_type" :value="scope.row.checkType" />
</template>
</el-table-column>
<el-table-column label="材料名称" align="center" prop="materialName" width="100" show-overflow-tooltip />
<el-table-column label="使用部位" align="center" prop="usePosition" width="120" show-overflow-tooltip />
<el-table-column label="取样数量" align="center" prop="sampleNum" width="80" show-overflow-tooltip />
<el-table-column label="合格证" align="center" prop="qualifiedFlag">
<template slot-scope="scope">
<el-tag v-if="scope.row.qualifiedFlag == 'Y'" type="success">已提供</el-tag>
<el-tag v-if="scope.row.qualifiedFlag == 'N'" type="danger">未提供</el-tag>
</template>
</el-table-column>
<el-table-column label="监理专员" align="left" prop="witnessUser" width="140" show-overflow-tooltip>
<template slot-scope="scope">
<div>{{ scope.row.witnessUserName }}</div>
<div>{{ scope.row.witnessUser }}</div>
</template>
</el-table-column>
<el-table-column label="实验室名称" align="center" prop="laboratoryName" width="150" show-overflow-tooltip />
<el-table-column label="送检时间" align="center" prop="checkTime" width="100">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.checkTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="检测结果" align="center" prop="detectionResult">
<template slot-scope="scope">
<dict-tag
:options="dict.type.project_checking_result"
:value="scope.row.detectionResult"
/>
</template>
</el-table-column> -->
<el-table-column label="审批状态" align="center" prop="approveStatus" width="120">
<template slot-scope="scope">
<dict-tag v-if="scope.row.approveStatus" :options="dict.type.project_check_status"
:value="scope.row.approveStatus" />
<el-tag v-if="!scope.row.approveStatus" key="待登记检测结果" type="info" effect="dark">
待登记检测结果
</el-tag>
</template>
</el-table-column>
<el-table-column label="提交时间" align="center" prop="createTime" width="100">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column label="提交用户" align="center" prop="createBy" width="110" />
<el-table-column label="登记结果用户" align="center" prop="updateBy" width="110" />
<el-table-column label="登记结果时间" align="center" prop="updateTime" width="110">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.updateTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column label="检测报告" align="center" prop="updateTime" width="80">
<template slot-scope="scope">
<el-button v-if="scope.row.checkState == '2'" size="mini" type="text" icon="el-icon-paperclip"
@click="doDown(scope.row)" v-hasPermi="['project:surProjectSpecial:list']">下载检测报告</el-button>
</template>
</el-table-column>
<el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width" width="200">
<template slot-scope="scope">
<el-button v-if="scope.row.checkState == '1'" size="mini" type="text" icon="el-icon-edit-outline"
@click="handleUpdateResult(scope.row)" style="margin-left: 8px"
v-hasPermi="['project:checkDetection:editResult']">登记检测结果</el-button>
<el-button v-if="scope.row.approveStatus != null" size="mini" type="text" icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)">审批日志</el-button>
<el-button v-if="scope.row.approveStatus == '1'" size="mini" type="text" icon="el-icon-finished"
v-hasPermi="['project:checkDetection:approve']" @click="handleAudit(scope.row)">处理审批</el-button>
<el-button v-if="scope.row.checkState == '1'" size="mini" type="text" icon="el-icon-edit"
@click="handleUpdate(scope.row)" v-hasPermi="['project:checkDetection:edit']">修改</el-button>
<el-button v-if="scope.row.approveStatus != '4' || isAdmin" size="mini" type="text" icon="el-icon-delete"
@click="handleDelete(scope.row)" v-hasPermi="['project:checkDetection:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
<!-- 添加或修改材料取样复试对话框 -->
<el-dialog :title="title" :visible.sync="open" width="900px" append-to-body :close-on-click-modal="false"
custom-class="prj-checking-detection-dlg" :close-on-press-escape="false">
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="项目名称" prop="projectName" class="mg-b-8">
<el-input v-model="form.projectName" placeholder="请输入项目名称" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="单位名称" prop="deptName" class="mg-b-8">
<el-input v-model="form.deptName" placeholder="请输入单位名称" :disabled="true" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="送检类型" prop="checkType">
<el-select v-model="form.checkType" placeholder="请选择送检类型" style="width: 100%">
<el-option v-for="dict in dict.type.check_detection_check_type" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="材料名称" prop="materialName">
<el-input v-model="form.materialName" placeholder="请输入材料名称" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="使用部位" prop="usePosition">
<el-input v-model="form.usePosition" placeholder="请输入使用部位" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="取样数量" prop="sampleNum">
<el-input v-model="form.sampleNum" placeholder="请输入取样数量" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="提供合格证" prop="qualifiedFlag">
<el-select v-model="form.qualifiedFlag" placeholder="请选择提供合格证" style="width: 100%">
<el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="监理专员" prop="witnessUser">
<el-select v-model="form.witnessUser" placeholder="请选择监理专员" filterable style="width: 100%"
@change="selectWitnessUser">
<el-option-group v-for="group in deptUserData" :key="group.unitId + ''"
:label="group.unitName + ' [' + group.unitTypeName + '] '">
<el-option v-for="item in group.userinfoList" :key="item.phonenumber"
:label="item.nickName + ' [' + item.jobTypeName + '] '" :value="item.phonenumber">
</el-option>
</el-option-group>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="实验室名称" prop="laboratoryName">
<el-input v-model="form.laboratoryName" placeholder="请输入实验室名称" /> </el-form-item></el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="委托单" prop="trustDeed" :class="form.trustDeed ? 'img-1' : ''">
<image-upload v-model="form.trustDeed" :limit="1" />
</el-form-item>
</el-col>
<el-col :span="12" v-if="false">
<el-form-item label="样品照片" prop="specimenPhoto" :class="form.specimenPhoto ? 'img-1' : ''">
<image-upload v-model="form.specimenPhoto" :limit="1" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="送检时间" prop="checkTime">
<el-date-picker clearable v-model="form.checkTime" type="date" value-format="yyyy-MM-dd"
placeholder="请选择送检时间">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="附件" prop="attachmentFiles" class="mg-b-8">
<FileUpload :limit="10" v-model="form.attachmentFiles" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer" style="text-align: center">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
<!-- 材料取样复试等级结果 -->
<el-dialog :title="title" v-if="resultopen" :visible.sync="resultopen" width="680px" append-to-body
:close-on-click-modal="false" :close-on-press-escape="false">
<el-form ref="resultform" :model="resultform" :rules="resultrules" label-width="100px">
<el-form-item label="项目名称">
<el-input v-model="resultform.projectName" placeholder="请输入项目名称" :disabled="true" />
</el-form-item>
<el-form-item label="单位名称">
<el-input v-model="resultform.deptName" placeholder="请输入单位名称" :disabled="true" />
</el-form-item>
<el-form-item label="送检类型">
<el-select v-model="resultform.checkType" placeholder="请选择送检类型" style="width: 100%" :disabled="true">
<el-option v-for="dict in dict.type.check_detection_check_type" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="材料名称">
<el-input v-model="resultform.materialName" placeholder="请输入材料名称" :disabled="true" />
</el-form-item>
<el-form-item label="实验室名称">
<el-input v-model="resultform.laboratoryName" placeholder="请输入实验室名称" :disabled="true" />
</el-form-item>
<el-form-item label="送检时间">
<el-input v-model="resultform.checkTime" placeholder="请输入实送检时间" :disabled="true" />
</el-form-item>
<el-form-item label="检测结果" prop="detectionResult" v-if="false">
<el-radio v-model="resultform.detectionResult" v-for="dict in dict.type.project_checking_result"
:label="dict.value" :key="dict.value" border size="small">{{ dict.label }}</el-radio>
</el-form-item>
<el-form-item label="检测报告" prop="detectionFile">
<FileUpload v-model="resultform.detectionFile" :limit="2" @input="fileInput"
:fileType="['pdf', 'png', 'jpg', 'jpeg']" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitResultForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
<indexDrawer ref="indexDrawer" />
<approveCheckDetectionDrawer ref="approveCheckDetectionDrawer" :closeCallBack="getList" />
</div>
</template>
<script>
import {
listCheckDetection,
getCheckDetection,
delCheckDetection,
addCheckDetection,
updateCheckDetection,
findGroupCountByApprove,
updateCheckDetectionResult,
} from "@/api/project/checkDetection";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
import approveCheckDetectionDrawer from "../projectAuditinfo/approveCheckDetectionDrawer.vue";
export default {
name: "CheckDetection",
components: {
indexDrawer,
approveCheckDetectionDrawer,
},
dicts: [
"sys_yes_no",
"project_check_status",
"project_checking_result",
"check_detection_check_type",
],
data() {
return {
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 材料取样复试表格数据
checkDetectionList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
resultopen: false,
// 备注时间范围
daterangeCheckTime: [],
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
projectId: null,
projectName: null,
deptId: null,
deptName: null,
checkType: null,
materialName: null,
usePosition: null,
sampleNum: null,
sampleUserName: null,
witnessUserName: null,
laboratoryName: null,
checkTime: null,
checkState: null,
detectionResult: null,
activeName: "jxz",
approveStatus: null,
},
// 表单参数
form: {},
// 结果表单参数
resultform: {},
// 表单校验
rules: {
checkType: [{ required: true, message: "请选择送检类型", trigger: "blur" }],
materialName: [
{ required: true, message: "请输入送检材料名称", trigger: "blur" },
{ max: 100, message: "送检材料名称最多100字符", trigger: "blur" },
],
usePosition: [
{ required: true, message: "请输入使用部位", trigger: "blur" },
{ max: 100, message: "使用部位最多100字符", trigger: "blur" },
],
usePosition: [
{ required: true, message: "请输入使用部位", trigger: "blur" },
{ max: 100, message: "使用部位最多100字符", trigger: "blur" },
],
sampleNum: [
{ required: true, message: "请输入取样数量", trigger: "blur" },
{ max: 100, message: "取样数量最多100字符", trigger: "blur" },
],
qualifiedFlag: [
{ required: true, message: "请选择是否提供合格证", trigger: "blur" },
],
trustDeed: [{ required: true, message: "请上传委托单", trigger: "blur" }],
specimenPhoto: [{ required: true, message: "请上传样品照片", trigger: "blur" }],
witnessUser: [
{ required: true, message: "请选择监理单位监理专员", trigger: "blur" },
],
laboratoryName: [
{ required: true, message: "请输入实验室名称", trigger: "blur" },
{ max: 100, message: "实验室名称最多100字符", trigger: "blur" },
],
checkTime: [{ required: true, message: "请选择送检时间", trigger: "blur" }],
},
resultrules: {
detectionResult: [
{ required: false, message: "请选择检测结果", trigger: "blur" },
],
detectionFile: [{ required: true, message: "请上传检测报告", trigger: "blur" }],
},
deptUserData: [],
tabs: {
all: "全部数据0",
jxz: "进行中0",
ywc: "已完成0",
},
projectOptions:[],
depts:[],
isAdmin: false,
};
},
created() {
let myMinRoles = this.$store.getters.roles;
if (myMinRoles.includes("admin") || myMinRoles.includes("super")) {
this.isAdmin = true;
}
this.getList();
this.$api.publics.getMyProjectList({}).then((response) => {
this.projectOptions = response.rows;
});
},
methods: {
doQuerySub() {
let prjId=this.queryParams.projectId;
let tmps = this.prjDept2 && this.prjDept2[prjId] ? this.prjDept2[prjId] || [] : [];
if (tmps.length > 0 || !prjId) {
this.depts = tmps;
if (tmps.length == 1) {
this.queryParams.deptId = tmps[0].deptId;
} else {
this.queryParams.deptId = '';
}
return;
}
this.$api.publics.queryUnitList({
projectId: prjId,
unitTypes: "2".split(","),
}).then((d) => {
let objs = d.rows || [];
if (!this.prjDept2) {
this.prjDept2 = {};
}
this.prjDept2[prjId] = objs;
this.depts = objs;
if (objs.length == 1) {
this.queryParams.deptId = objs[0].deptId;
} else {
this.queryParams.deptId = '';
}
});
},
doDown(row) {
this.files = row.detectionFile.split(",");
this.files.forEach((item) => {
this.$download.resource(item);
});
},
fileInput(files) {
let fileUrls = "";
if (files.length > 0) {
fileUrls = "";
files.forEach((item) => {
fileUrls += "," + item.url;
});
fileUrls = fileUrls.substring(1);
}
this.resultform.detectionFile = fileUrls;
},
/** 查询材料取样复试列表 */
getList() {
this.loading = true;
this.queryParams.params = {};
if (null != this.daterangeCheckTime && "" != this.daterangeCheckTime) {
this.queryParams.params["beginCheckTime"] = this.daterangeCheckTime[0];
this.queryParams.params["endCheckTime"] = this.daterangeCheckTime[1];
}
this.queryCount(this.queryParams);
listCheckDetection(this.queryParams).then((response) => {
this.checkDetectionList = (response.rows || []).map((d) => {
d.attachmentFiles = this.$tryToJson(d.attachment, []);
return d;
});
this.total = response.total;
this.loading = false;
});
},
queryCount() {
findGroupCountByApprove(this.queryParams).then((response) => {
if (response && response.data) {
this.tabs.jxz = "进行中(" + response.data.jxz + "";
this.tabs.ywc = "已完成(" + response.data.ywc + "";
this.tabs.all = "全部数据(" + (response.data.jxz + response.data.ywc) + "";
}
});
},
// 取消按钮
cancel() {
this.open = false;
this.resultopen = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
projectId: null,
deptId: null,
checkType: null,
materialName: null,
usePosition: null,
sampleNum: null,
qualifiedFlag: null,
represenNum: null,
sampleUser: null,
sampleUserName: null,
witnessUser: null,
witnessUserName: null,
laboratoryName: null,
checkTime: null,
checkState: null,
detectionResult: null,
detectionFile: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
remark: null,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.daterangeCheckTime = [];
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加材料取样复试";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getCheckDetection(id).then((response) => {
let obj = response.data;
obj.attachmentFiles = this.$tryToJson(obj.attachment || "[]", []).map((d) => {
return {
name: d,
url: d,
};
});
this.form = obj;
this.open = true;
this.title = "修改材料取样复试";
});
//查询单位人员
this.$api.publics
.selectProjectUnitUser({
unitType: "4",
projectId: row.projectId,
})
.then((d) => {
this.deptUserData = d.data;
});
},
/** 登记结果按钮操作 */
handleUpdateResult(row) {
this.reset();
getCheckDetection(row.id).then((response) => {
this.resultform = response.data;
this.resultopen = true;
this.title = "取样复试登记检测结果";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.attachment = this.form.attachmentFiles
? JSON.stringify(this.form.attachmentFiles.map((d) => d.url))
: "[]";
if (this.form.id != null) {
updateCheckDetection(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addCheckDetection(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 登记取样复试结果 */
submitResultForm() {
this.$refs["resultform"].validate((valid) => {
if (valid) {
// 修改取样复试检测结果
this.resultform.checkState = "2";
this.resultform.approveStatus = "1";
updateCheckDetectionResult(this.resultform).then((response) => {
this.$modal.msgSuccess("登记结果成功");
this.resultopen = false;
this.getList();
});
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal
.confirm('是否确认删除材料取样复试编号为"' + ids + '"的数据项?')
.then(function () {
return delCheckDetection(ids);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => { });
},
/** 导出按钮操作 */
handleExport() {
this.download(
"project/checkDetection/export",
{
...this.queryParams,
},
`checkDetection_${new Date().getTime()}.xlsx`
);
},
/** 选择见证人*/
selectWitnessUser(val) {
this.deptUserData.forEach((item) => {
item.userinfoList.forEach((u) => {
if (u.phonenumber == val) {
this.form.witnessUserName = u.nickName + " [" + u.jobTypeName + "] ";
}
});
});
},
/** 审批日志 */
handleAuditinfo(row) {
row.title = "材料取样复试";
row.logType = "1";
this.$refs.indexDrawer.show(row);
},
/** 处理审批 */
handleAudit(row) {
row.typeName = "材料封样";
this.$refs.approveCheckDetectionDrawer.show(row);
},
},
};
</script>
<style lang="scss">
.prj-checking-detection-dlg {
.el-dialog__body {
padding: 0px 10px;
.el-form-item {
margin-bottom: 16px;
&.mg-b-8 {
margin-bottom: 8px;
}
&.img-1 {
.el-upload--picture-card {
display: none;
}
.el-upload__tip {
display: none;
}
}
.upload-file {
.upload-file-uploader {
display: flex;
align-items: center;
margin-bottom: 0px;
line-height: 30px;
.el-upload__tip {
margin-left: 8px;
}
}
}
.el-form-item__error {
z-index: 9;
margin-top: -4px;
}
.upload-file-list {
max-height: 120px;
overflow-y: auto;
padding-right: 30px;
.el-upload-list__item {
margin-bottom: 0px !important;
}
}
}
}
}
</style>