提交代码
parent
0afd1137bb
commit
74b3ae5d72
|
@ -163,6 +163,7 @@ export default {
|
||||||
//label样式
|
//label样式
|
||||||
labelStyle: { width: "180px" },
|
labelStyle: { width: "180px" },
|
||||||
initData: {},
|
initData: {},
|
||||||
|
fileTypes:['pdf','png','jpg','jpeg'],
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
<el-form-item label="审批内容" prop="files">
|
<el-form-item label="审批内容" prop="files">
|
||||||
<FileUpload
|
<FileUpload
|
||||||
@input="fileInput"
|
@input="fileInput"
|
||||||
:limit="9"
|
:limit="18"
|
||||||
v-model="form.files"
|
v-model="form.files"
|
||||||
:fileType="['pdf', 'png', 'jpg', 'jpeg']"
|
:fileType="['pdf', 'png', 'jpg', 'jpeg']"
|
||||||
/>
|
/>
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
<el-form-item label="审批内容" prop="files">
|
<el-form-item label="审批内容" prop="files">
|
||||||
<FileUpload
|
<FileUpload
|
||||||
@input="fileInput"
|
@input="fileInput"
|
||||||
:limit="9"
|
:limit="18"
|
||||||
:fileType="['pdf', 'png', 'jpg', 'jpeg']"
|
:fileType="['pdf', 'png', 'jpg', 'jpeg']"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
|
@ -1,227 +1,231 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="projectect-attendance-drawer">
|
<div class="projectect-attendance-drawer">
|
||||||
<el-drawer
|
<el-drawer
|
||||||
v-if="isOpen"
|
v-if="isOpen"
|
||||||
:visible.sync="isOpen"
|
:visible.sync="isOpen"
|
||||||
ref="drawer"
|
ref="drawer"
|
||||||
direction="rtl"
|
direction="rtl"
|
||||||
@close="closeCallBack"
|
@close="closeCallBack"
|
||||||
size="50%"
|
size="50%"
|
||||||
|
>
|
||||||
|
<template slot="title">
|
||||||
|
<div>{{ title + " 【处理审批】" }}</div>
|
||||||
|
</template>
|
||||||
|
<el-form
|
||||||
|
ref="form"
|
||||||
|
v-loading="loading"
|
||||||
|
:model="form"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="80px"
|
||||||
|
style="padding-right: 20px; padding-left: 20px"
|
||||||
>
|
>
|
||||||
<template slot="title">
|
<el-form-item label="项目名称">
|
||||||
<div>{{ title + " 【处理审批】" }}</div>
|
{{ dataInfo.projectName }}
|
||||||
</template>
|
</el-form-item>
|
||||||
<el-form ref="form" v-loading="loading" :model="form" :rules="rules" label-width="80px" style="padding-right: 20px;padding-left: 20px;">
|
<el-row>
|
||||||
<el-form-item label="项目名称">
|
<el-col :span="12">
|
||||||
{{dataInfo.projectName}}
|
<el-form-item label="送检类型">
|
||||||
|
<dict-tag
|
||||||
|
:options="dict.type.check_detection_check_type"
|
||||||
|
:value="dataInfo.checkType"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="送检类型">
|
<el-form-item label="合格证">
|
||||||
<dict-tag
|
<el-tag v-if="dataInfo.qualifiedFlag == 'Y'" type="success">已提供</el-tag>
|
||||||
:options="dict.type.check_detection_check_type"
|
<el-tag v-if="dataInfo.qualifiedFlag == 'N'" type="danger">未提供</el-tag>
|
||||||
:value="dataInfo.checkType"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="合格证">
|
|
||||||
<el-tag v-if="dataInfo.qualifiedFlag == 'Y'" type="success">已提供</el-tag>
|
|
||||||
<el-tag v-if="dataInfo.qualifiedFlag == 'N'" type="danger">未提供</el-tag>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="材料名称">
|
|
||||||
{{ dataInfo.materialName }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="取样数量">
|
|
||||||
{{ dataInfo.sampleNum }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="使用部位">
|
|
||||||
{{ dataInfo.usePosition }}
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="监理专员">
|
|
||||||
{{ dataInfo.witnessUserName }}
|
|
||||||
<el-tag type="info" size="mini">{{ dataInfo.witnessUser }}</el-tag>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="提交用户">
|
|
||||||
{{ dataInfo.createBy }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="提交单位">
|
|
||||||
{{ dataInfo.deptName }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-form-item label="实验室名">
|
|
||||||
<span>{{ dataInfo.laboratoryName }}</span>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="送检时间">
|
</el-col>
|
||||||
<span>{{ parseTime(dataInfo.checkTime, "{y}-{m}-{d} {h}:{i}") }}</span>
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="材料名称">
|
||||||
|
{{ dataInfo.materialName }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="检测报告" v-if="dataInfo.checkState == '2'">
|
</el-col>
|
||||||
<el-button
|
<el-col :span="12">
|
||||||
size="mini"
|
<el-form-item label="取样数量">
|
||||||
type="text"
|
{{ dataInfo.sampleNum }}
|
||||||
icon="el-icon-paperclip"
|
|
||||||
@click="handleDownload()"
|
|
||||||
>下载检测报告</el-button
|
|
||||||
>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="送检结果" prop="detectionResult">
|
</el-col>
|
||||||
<el-radio
|
</el-row>
|
||||||
v-model="form.detectionResult"
|
<el-row>
|
||||||
v-for="dict in dict.type.project_checking_result"
|
<el-col :span="12">
|
||||||
:label="dict.value"
|
<el-form-item label="使用部位">
|
||||||
:key="dict.value"
|
{{ dataInfo.usePosition }}
|
||||||
border
|
|
||||||
size="small"
|
|
||||||
>{{ dict.label }}</el-radio
|
|
||||||
>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="审批意见" prop="comment">
|
<el-form-item label="监理专员">
|
||||||
<el-input
|
{{ dataInfo.witnessUserName }}
|
||||||
type="textarea"
|
<el-tag type="info" size="mini">{{ dataInfo.witnessUser }}</el-tag>
|
||||||
:rows="3"
|
|
||||||
placeholder="请输入审批意见(200字内)"
|
|
||||||
v-model="form.comment"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<div style="text-align: center">
|
</el-col>
|
||||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
</el-row>
|
||||||
<el-button @click="cancel">取 消</el-button>
|
<el-row>
|
||||||
</div>
|
<el-col :span="12">
|
||||||
</el-form>
|
<el-form-item label="提交用户">
|
||||||
</el-drawer>
|
{{ dataInfo.createBy }}
|
||||||
<el-image-viewer
|
</el-form-item>
|
||||||
v-if="showViewer"
|
</el-col>
|
||||||
:on-close="closeViewer"
|
<el-col :span="12">
|
||||||
:url-list="previewList"
|
<el-form-item label="提交单位">
|
||||||
style="z-index: 2050"
|
{{ dataInfo.deptName }}
|
||||||
/>
|
</el-form-item>
|
||||||
</div>
|
</el-col>
|
||||||
</template>
|
</el-row>
|
||||||
|
<el-form-item label="实验室名">
|
||||||
<script>
|
<span>{{ dataInfo.laboratoryName }}</span>
|
||||||
import {
|
</el-form-item>
|
||||||
getCheckDetection,
|
<el-form-item label="送检时间">
|
||||||
updateCheckDetection,
|
<span>{{ parseTime(dataInfo.checkTime, "{y}-{m}-{d} {h}:{i}") }}</span>
|
||||||
} from "@/api/project/checkDetection";
|
</el-form-item>
|
||||||
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
<el-form-item label="检测报告" v-if="dataInfo.checkState == '2'">
|
||||||
|
<el-button
|
||||||
export default {
|
size="mini"
|
||||||
name: "approveCheckDetectionDrawer",
|
type="text"
|
||||||
components: {
|
icon="el-icon-paperclip"
|
||||||
ElImageViewer,
|
@click="handleDownload()"
|
||||||
|
>下载检测报告</el-button
|
||||||
|
>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="送检结果" prop="detectionResult">
|
||||||
|
<el-radio
|
||||||
|
v-model="form.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="comment">
|
||||||
|
<el-input
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
placeholder="请输入审批意见(200字内)"
|
||||||
|
v-model="form.comment"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<div style="text-align: center;margin-bottom:20px;">
|
||||||
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||||
|
<el-button @click="cancel">取 消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
</el-drawer>
|
||||||
|
<el-image-viewer
|
||||||
|
v-if="showViewer"
|
||||||
|
:on-close="closeViewer"
|
||||||
|
:url-list="previewList"
|
||||||
|
style="z-index: 2050"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getCheckDetection, updateCheckDetection } from "@/api/project/checkDetection";
|
||||||
|
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "approveCheckDetectionDrawer",
|
||||||
|
components: {
|
||||||
|
ElImageViewer,
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
closeCallBack: {
|
||||||
|
type: Function,
|
||||||
},
|
},
|
||||||
props: {
|
},
|
||||||
closeCallBack: {
|
dicts: ["project_checking_result", "check_detection_check_type"],
|
||||||
type: Function,
|
data() {
|
||||||
},
|
return {
|
||||||
|
showViewer: false,
|
||||||
|
open: false,
|
||||||
|
isOpen: false,
|
||||||
|
dataInfo: {},
|
||||||
|
title: "",
|
||||||
|
form: {},
|
||||||
|
rules: {
|
||||||
|
detectionResult: [{ required: true, message: "请选择送检结果", trigger: "blur" }],
|
||||||
|
comment: [
|
||||||
|
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
||||||
|
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
// 遮罩层
|
||||||
|
loading: true,
|
||||||
|
previewList: [],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {},
|
||||||
|
mounted() {},
|
||||||
|
methods: {
|
||||||
|
getImageUrl(url) {
|
||||||
|
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||||
},
|
},
|
||||||
dicts: ["project_checking_result", "check_detection_check_type"],
|
onPreview(urls) {
|
||||||
data() {
|
this.previewList = [];
|
||||||
return {
|
urls.split(",").forEach((item) => {
|
||||||
showViewer: false,
|
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
||||||
open: false,
|
});
|
||||||
isOpen: false,
|
this.showViewer = true;
|
||||||
dataInfo: {},
|
|
||||||
title: "",
|
|
||||||
form: {},
|
|
||||||
rules: {
|
|
||||||
detectionResult: [{ required: true, message: "请选择送检结果", trigger: "blur" }],
|
|
||||||
comment: [
|
|
||||||
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
|
||||||
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
previewList: [],
|
|
||||||
};
|
|
||||||
},
|
},
|
||||||
computed: {},
|
closeViewer() {
|
||||||
mounted() {},
|
this.showViewer = false;
|
||||||
methods: {
|
},
|
||||||
getImageUrl(url) {
|
show(options) {
|
||||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
this.title = options.typeName;
|
||||||
},
|
this.isOpen = true;
|
||||||
onPreview(urls) {
|
this.form = {};
|
||||||
this.previewList = [];
|
this.form.id = options.id;
|
||||||
urls.split(",").forEach((item) => {
|
getCheckDetection(options.id).then((res) => {
|
||||||
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
this.dataInfo = res.data;
|
||||||
});
|
this.loading = false;
|
||||||
this.showViewer = true;
|
});
|
||||||
},
|
},
|
||||||
closeViewer() {
|
// 取消按钮
|
||||||
this.showViewer = false;
|
cancel() {
|
||||||
},
|
this.isOpen = false;
|
||||||
show(options) {
|
},
|
||||||
this.title = options.typeName;
|
/** 提交按钮 */
|
||||||
this.isOpen = true;
|
submitForm() {
|
||||||
this.form={};
|
this.$refs["form"].validate((valid) => {
|
||||||
this.form.id=options.id;
|
if (valid) {
|
||||||
getCheckDetection(options.id)
|
// 结果状态同步到审批状态
|
||||||
.then((res) => {
|
let msg = "合格";
|
||||||
this.dataInfo = res.data;
|
if (this.form.detectionResult == "1") {
|
||||||
this.loading = false;
|
this.form.approveStatus = "4";
|
||||||
});
|
} else {
|
||||||
},
|
msg = "不合格";
|
||||||
// 取消按钮
|
this.form.approveStatus = "3";
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate((valid) => {
|
|
||||||
if (valid) {
|
|
||||||
// 结果状态同步到审批状态
|
|
||||||
let msg = "合格";
|
|
||||||
if(this.form.detectionResult=="1"){
|
|
||||||
this.form.approveStatus="4";
|
|
||||||
}else{
|
|
||||||
msg = "不合格";
|
|
||||||
this.form.approveStatus="3";
|
|
||||||
}
|
|
||||||
this.$confirm('是否确认审批'+msg+'?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.loading=true;
|
|
||||||
updateCheckDetection(this.form).then(res => {
|
|
||||||
this.$modal.msgSuccess("审批成功");
|
|
||||||
this.loading = false;
|
|
||||||
//关闭并刷新列表
|
|
||||||
this.$refs.drawer.closeDrawer();
|
|
||||||
});
|
|
||||||
}).catch(() => {
|
|
||||||
console.log("取消操作");
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
this.$confirm("是否确认审批" + msg + "?", "提示", {
|
||||||
},
|
confirmButtonText: "确定",
|
||||||
/** 下载附件 */
|
cancelButtonText: "取消",
|
||||||
handleDownload() {
|
type: "warning",
|
||||||
let files = this.dataInfo.measureFiles.split(",");
|
})
|
||||||
files.forEach((item) => {
|
.then(() => {
|
||||||
this.$download.resource(item);
|
this.loading = true;
|
||||||
});
|
updateCheckDetection(this.form).then((res) => {
|
||||||
},
|
this.$modal.msgSuccess("审批成功");
|
||||||
|
this.loading = false;
|
||||||
|
//关闭并刷新列表
|
||||||
|
this.$refs.drawer.closeDrawer();
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
console.log("取消操作");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
},
|
},
|
||||||
};
|
/** 下载附件 */
|
||||||
</script>
|
handleDownload() {
|
||||||
|
let files = this.dataInfo.measureFiles.split(",");
|
||||||
|
files.forEach((item) => {
|
||||||
|
this.$download.resource(item);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
|
@ -1,218 +1,227 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="projectect-attendance-drawer">
|
<div class="projectect-attendance-drawer">
|
||||||
<el-drawer
|
<el-drawer
|
||||||
v-if="isOpen"
|
v-if="isOpen"
|
||||||
:visible.sync="isOpen"
|
:visible.sync="isOpen"
|
||||||
ref="drawer"
|
ref="drawer"
|
||||||
direction="rtl"
|
direction="rtl"
|
||||||
@close="closeCallBack"
|
@close="closeCallBack"
|
||||||
size="50%"
|
size="50%"
|
||||||
|
>
|
||||||
|
<template slot="title">
|
||||||
|
<div>{{ title + " 【处理审批】" }}</div>
|
||||||
|
</template>
|
||||||
|
<el-form
|
||||||
|
ref="form"
|
||||||
|
v-loading="loading"
|
||||||
|
:model="form"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="80px"
|
||||||
|
style="padding-right: 20px; padding-left: 20px"
|
||||||
>
|
>
|
||||||
<template slot="title">
|
<el-form-item label="项目名称">
|
||||||
<div>{{ title + " 【处理审批】" }}</div>
|
{{ dataInfo.projectName }}
|
||||||
</template>
|
</el-form-item>
|
||||||
<el-form ref="form" v-loading="loading" :model="form" :rules="rules" label-width="80px" style="padding-right: 20px;padding-left: 20px;">
|
<el-form-item label="验收图片">
|
||||||
<el-form-item label="项目名称">
|
<el-image
|
||||||
{{dataInfo.projectName}}
|
ref="preview"
|
||||||
|
v-for="(img, idx) in dataInfo.imageUrls.split(',')"
|
||||||
|
:key="idx"
|
||||||
|
:src="getImageUrl(img)"
|
||||||
|
style="width: 120px; height: 120px; margin-right: 15px"
|
||||||
|
@click="onPreview(img)"
|
||||||
|
></el-image>
|
||||||
|
</el-form-item>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="验收类型">
|
||||||
|
<dict-tag
|
||||||
|
:options="dict.type.project_checking_data_type_lvl1"
|
||||||
|
:value="dataInfo.dataTypeLvl1"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="验收图片">
|
</el-col>
|
||||||
<el-image
|
<el-col :span="12">
|
||||||
ref="preview"
|
<el-form-item label="类型分类">
|
||||||
v-for="(img,idx) in dataInfo.imageUrls.split(',')" :key="idx"
|
<dict-tag
|
||||||
:src="getImageUrl(img)"
|
:options="dict.type.project_checking_data_type_lvl2"
|
||||||
style="width: 120px; height: 120px; margin-right: 15px"
|
:value="dataInfo.dataTypeLvl2"
|
||||||
@click="onPreview(img)"
|
/>
|
||||||
></el-image>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row>
|
</el-col>
|
||||||
<el-col :span="12">
|
</el-row>
|
||||||
<el-form-item label="验收类型">
|
<el-row>
|
||||||
<dict-tag
|
<el-col :span="12">
|
||||||
:options="dict.type.project_checking_data_type_lvl1"
|
<el-form-item label="质量专员">
|
||||||
:value="dataInfo.dataTypeLvl1"
|
{{ dataInfo.qualityUserName }}
|
||||||
/>
|
<el-tag type="info" size="mini">{{ dataInfo.qualityUser }}</el-tag>
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="类型分类">
|
|
||||||
<dict-tag
|
|
||||||
:options="dict.type.project_checking_data_type_lvl2"
|
|
||||||
:value="dataInfo.dataTypeLvl2"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="质量专员">
|
|
||||||
{{ dataInfo.qualityUserName }}
|
|
||||||
<el-tag type="info" size="mini">{{ dataInfo.qualityUser }}</el-tag>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="监理专员">
|
|
||||||
{{ dataInfo.superviseUserName }}
|
|
||||||
<el-tag type="info" size="mini">{{ dataInfo.superviseUser }}</el-tag>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-form-item label="工序部位">
|
|
||||||
<span>{{ dataInfo.checkWorkingPosition }}</span>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="验收描述">
|
</el-col>
|
||||||
<span>{{ dataInfo.intro }}</span>
|
<el-col :span="12">
|
||||||
|
<el-form-item label="监理专员">
|
||||||
|
{{ dataInfo.superviseUserName }}
|
||||||
|
<el-tag type="info" size="mini">{{ dataInfo.superviseUser }}</el-tag>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row>
|
</el-col>
|
||||||
<el-col :span="12">
|
</el-row>
|
||||||
<el-form-item label="提交用户">
|
<el-form-item label="工序部位">
|
||||||
{{ dataInfo.createBy }}
|
<span>{{ dataInfo.checkWorkingPosition }}</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
<el-form-item label="验收描述">
|
||||||
<el-col :span="12">
|
<span>{{ dataInfo.intro }}</span>
|
||||||
<el-form-item label="提交单位">
|
</el-form-item>
|
||||||
{{ dataInfo.deptName }}
|
<el-row>
|
||||||
</el-form-item>
|
<el-col :span="12">
|
||||||
</el-col>
|
<el-form-item label="提交用户">
|
||||||
</el-row>
|
{{ dataInfo.createBy }}
|
||||||
<el-form-item label="验收时间">
|
|
||||||
<span>{{ parseTime(dataInfo.checkingDate, "{y}-{m}-{d} {h}:{i}") }}</span>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="验收结果" prop="checkResult">
|
</el-col>
|
||||||
<el-radio
|
<el-col :span="12">
|
||||||
v-model="form.checkResult"
|
<el-form-item label="提交单位">
|
||||||
v-for="dict in dict.type.project_checking_result"
|
{{ dataInfo.deptName }}
|
||||||
:label="dict.value"
|
|
||||||
:key="dict.value"
|
|
||||||
border
|
|
||||||
size="small"
|
|
||||||
>{{ dict.label }}</el-radio
|
|
||||||
>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="审批意见" prop="comment">
|
</el-col>
|
||||||
<el-input
|
</el-row>
|
||||||
type="textarea"
|
<el-form-item label="验收时间">
|
||||||
:rows="3"
|
<span>{{ parseTime(dataInfo.checkingDate, "{y}-{m}-{d} {h}:{i}") }}</span>
|
||||||
placeholder="请输入审批意见(200字内)"
|
</el-form-item>
|
||||||
v-model="form.comment"
|
<el-form-item label="验收结果" prop="checkResult">
|
||||||
/>
|
<el-radio
|
||||||
</el-form-item>
|
v-model="form.checkResult"
|
||||||
<div style="text-align: center">
|
v-for="dict in dict.type.project_checking_result"
|
||||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
:label="dict.value"
|
||||||
<el-button @click="cancel">取 消</el-button>
|
:key="dict.value"
|
||||||
</div>
|
border
|
||||||
</el-form>
|
size="small"
|
||||||
</el-drawer>
|
>{{ dict.label }}</el-radio
|
||||||
<el-image-viewer
|
>
|
||||||
v-if="showViewer"
|
</el-form-item>
|
||||||
:on-close="closeViewer"
|
<el-form-item label="审批意见" prop="comment">
|
||||||
:url-list="previewList"
|
<el-input
|
||||||
style="z-index: 2050"
|
type="textarea"
|
||||||
/>
|
:rows="3"
|
||||||
</div>
|
placeholder="请输入审批意见(200字内)"
|
||||||
</template>
|
v-model="form.comment"
|
||||||
|
/>
|
||||||
<script>
|
</el-form-item>
|
||||||
import {
|
<div style="text-align: center;margin-bottom:20px;">
|
||||||
getProjectChecking,
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||||
updateProjectChecking,
|
<el-button @click="cancel">取 消</el-button>
|
||||||
} from "@/api/project/projectChecking";
|
</div>
|
||||||
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
</el-form>
|
||||||
|
</el-drawer>
|
||||||
export default {
|
<el-image-viewer
|
||||||
name: "approveCheckingDrawer",
|
v-if="showViewer"
|
||||||
components: {
|
:on-close="closeViewer"
|
||||||
ElImageViewer,
|
:url-list="previewList"
|
||||||
|
style="z-index: 2050"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getProjectChecking, updateProjectChecking } from "@/api/project/projectChecking";
|
||||||
|
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "approveCheckingDrawer",
|
||||||
|
components: {
|
||||||
|
ElImageViewer,
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
closeCallBack: {
|
||||||
|
type: Function,
|
||||||
},
|
},
|
||||||
props: {
|
},
|
||||||
closeCallBack: {
|
dicts: [
|
||||||
type: Function,
|
"project_checking_result",
|
||||||
},
|
"project_checking_data_type_lvl1",
|
||||||
|
"project_checking_data_type_lvl2",
|
||||||
|
],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
showViewer: false,
|
||||||
|
open: false,
|
||||||
|
isOpen: false,
|
||||||
|
dataInfo: {
|
||||||
|
imageUrls: "",
|
||||||
|
},
|
||||||
|
title: "",
|
||||||
|
form: {},
|
||||||
|
rules: {
|
||||||
|
checkResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
|
||||||
|
comment: [
|
||||||
|
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
||||||
|
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
// 遮罩层
|
||||||
|
loading: true,
|
||||||
|
previewList: [],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {},
|
||||||
|
mounted() {},
|
||||||
|
methods: {
|
||||||
|
getImageUrl(url) {
|
||||||
|
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||||
},
|
},
|
||||||
dicts: ["project_checking_result","project_checking_data_type_lvl1","project_checking_data_type_lvl2"],
|
onPreview(urls) {
|
||||||
data() {
|
this.previewList = [];
|
||||||
return {
|
urls.split(",").forEach((item) => {
|
||||||
showViewer: false,
|
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
||||||
open: false,
|
});
|
||||||
isOpen: false,
|
this.showViewer = true;
|
||||||
dataInfo: {
|
|
||||||
imageUrls:""
|
|
||||||
},
|
|
||||||
title: "",
|
|
||||||
form: {},
|
|
||||||
rules: {
|
|
||||||
checkResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
|
|
||||||
comment: [
|
|
||||||
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
|
||||||
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
previewList: [],
|
|
||||||
};
|
|
||||||
},
|
},
|
||||||
computed: {},
|
closeViewer() {
|
||||||
mounted() {},
|
this.showViewer = false;
|
||||||
methods: {
|
},
|
||||||
getImageUrl(url) {
|
show(options) {
|
||||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
this.title = options.typeName;
|
||||||
},
|
this.isOpen = true;
|
||||||
onPreview(urls) {
|
this.form = {};
|
||||||
this.previewList = [];
|
this.form.id = options.id;
|
||||||
urls.split(",").forEach((item) => {
|
getProjectChecking(options.id).then((res) => {
|
||||||
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
this.dataInfo = res.data;
|
||||||
});
|
this.loading = false;
|
||||||
this.showViewer = true;
|
});
|
||||||
},
|
},
|
||||||
closeViewer() {
|
// 取消按钮
|
||||||
this.showViewer = false;
|
cancel() {
|
||||||
},
|
this.isOpen = false;
|
||||||
show(options) {
|
},
|
||||||
this.title = options.typeName;
|
/** 提交按钮 */
|
||||||
this.isOpen = true;
|
submitForm() {
|
||||||
this.form={};
|
this.$refs["form"].validate((valid) => {
|
||||||
this.form.id=options.id;
|
if (valid) {
|
||||||
getProjectChecking(options.id)
|
// 结果状态同步到审批状态
|
||||||
.then((res) => {
|
let msg = "合格";
|
||||||
this.dataInfo = res.data;
|
if (this.form.checkResult == "1") {
|
||||||
this.loading = false;
|
this.form.approveStatus = "4";
|
||||||
});
|
} else {
|
||||||
},
|
msg = "不合格";
|
||||||
// 取消按钮
|
this.form.approveStatus = "3";
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate((valid) => {
|
|
||||||
if (valid) {
|
|
||||||
// 结果状态同步到审批状态
|
|
||||||
let msg = "合格";
|
|
||||||
if(this.form.checkResult=="1"){
|
|
||||||
this.form.approveStatus="4";
|
|
||||||
}else{
|
|
||||||
msg = "不合格";
|
|
||||||
this.form.approveStatus="3";
|
|
||||||
}
|
|
||||||
this.$confirm('是否确认审批'+msg+'?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.loading=true;
|
|
||||||
updateProjectChecking(this.form).then(res => {
|
|
||||||
this.$modal.msgSuccess("审批成功");
|
|
||||||
this.loading = false;
|
|
||||||
//关闭并刷新列表
|
|
||||||
this.$refs.drawer.closeDrawer();
|
|
||||||
});
|
|
||||||
}).catch(() => {
|
|
||||||
console.log("取消操作");
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
this.$confirm("是否确认审批" + msg + "?", "提示", {
|
||||||
},
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.loading = true;
|
||||||
|
updateProjectChecking(this.form).then((res) => {
|
||||||
|
this.$modal.msgSuccess("审批成功");
|
||||||
|
this.loading = false;
|
||||||
|
//关闭并刷新列表
|
||||||
|
this.$refs.drawer.closeDrawer();
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
console.log("取消操作");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
},
|
},
|
||||||
};
|
},
|
||||||
</script>
|
};
|
||||||
|
</script>
|
||||||
|
|
|
@ -1,223 +1,228 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="projectect-attendance-drawer">
|
<div class="projectect-attendance-drawer">
|
||||||
<el-drawer
|
<el-drawer
|
||||||
v-if="isOpen"
|
v-if="isOpen"
|
||||||
:visible.sync="isOpen"
|
:visible.sync="isOpen"
|
||||||
ref="drawer"
|
ref="drawer"
|
||||||
direction="rtl"
|
direction="rtl"
|
||||||
@close="closeCallBack"
|
@close="closeCallBack"
|
||||||
size="50%"
|
size="50%"
|
||||||
|
>
|
||||||
|
<template slot="title">
|
||||||
|
<div>{{ title + " 【处理审批】" }}</div>
|
||||||
|
</template>
|
||||||
|
<el-form
|
||||||
|
ref="form"
|
||||||
|
v-loading="loading"
|
||||||
|
:model="form"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="80px"
|
||||||
|
style="padding-right: 20px; padding-left: 20px"
|
||||||
>
|
>
|
||||||
<template slot="title">
|
<el-form-item label="项目名称">
|
||||||
<div>{{ title + " 【处理审批】" }}</div>
|
{{ dataInfo.projectName }}
|
||||||
</template>
|
</el-form-item>
|
||||||
<el-form ref="form" v-loading="loading" :model="form" :rules="rules" label-width="80px" style="padding-right: 20px;padding-left: 20px;">
|
<el-form-item label="封样图片">
|
||||||
<el-form-item label="项目名称">
|
<el-image
|
||||||
{{dataInfo.projectName}}
|
ref="preview"
|
||||||
|
v-for="(img, idx) in dataInfo.imageUrls.split(',')"
|
||||||
|
:key="idx"
|
||||||
|
:src="getImageUrl(img)"
|
||||||
|
style="width: 120px; height: 120px; margin-right: 15px"
|
||||||
|
@click="onPreview(img)"
|
||||||
|
></el-image>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="封样名称">
|
||||||
|
{{ dataInfo.materialName }}
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="使用部位">
|
||||||
|
{{ dataInfo.usePosition }}
|
||||||
|
</el-form-item>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="指定品牌">
|
||||||
|
{{ dataInfo.contractBrand }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="封样图片">
|
</el-col>
|
||||||
<el-image
|
<el-col :span="12">
|
||||||
ref="preview"
|
<el-form-item label="拟用品牌">
|
||||||
v-for="(img,idx) in dataInfo.imageUrls.split(',')" :key="idx"
|
{{ dataInfo.useBrand }}
|
||||||
:src="getImageUrl(img)"
|
|
||||||
style="width: 120px; height: 120px; margin-right: 15px"
|
|
||||||
@click="onPreview(img)"
|
|
||||||
></el-image>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="封样名称">
|
</el-col>
|
||||||
{{ dataInfo.materialName }}
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="提交用户">
|
||||||
|
{{ dataInfo.createBy }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="使用部位">
|
</el-col>
|
||||||
{{ dataInfo.usePosition }}
|
<el-col :span="12">
|
||||||
|
<el-form-item label="提交单位">
|
||||||
|
{{ dataInfo.deptName }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row>
|
</el-col>
|
||||||
<el-col :span="12">
|
</el-row>
|
||||||
<el-form-item label="指定品牌">
|
<el-form-item label="封样时间">
|
||||||
{{ dataInfo.contractBrand }}
|
<span>{{ parseTime(dataInfo.sealDate, "{y}-{m}-{d} {h}:{i}") }}</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
<el-form-item label="会签单" v-if="dataInfo.signFiles != null">
|
||||||
<el-col :span="12">
|
<el-button
|
||||||
<el-form-item label="拟用品牌">
|
size="mini"
|
||||||
{{ dataInfo.useBrand }}
|
type="text"
|
||||||
</el-form-item>
|
icon="el-icon-paperclip"
|
||||||
</el-col>
|
@click="handleDownload(dataInfo.signFiles)"
|
||||||
</el-row>
|
>下载会签单</el-button
|
||||||
<el-row>
|
>
|
||||||
<el-col :span="12">
|
</el-form-item>
|
||||||
<el-form-item label="提交用户">
|
<el-form-item label="变更单" v-if="dataInfo.alterationFiles != null">
|
||||||
{{ dataInfo.createBy }}
|
<el-button
|
||||||
</el-form-item>
|
size="mini"
|
||||||
</el-col>
|
type="text"
|
||||||
<el-col :span="12">
|
icon="el-icon-paperclip"
|
||||||
<el-form-item label="提交单位">
|
@click="handleDownload(dataInfo.alterationFiles)"
|
||||||
{{ dataInfo.deptName }}
|
>下载变更单</el-button
|
||||||
</el-form-item>
|
>
|
||||||
</el-col>
|
</el-form-item>
|
||||||
</el-row>
|
<el-form-item label="封样结果" prop="materialResult">
|
||||||
<el-form-item label="封样时间">
|
<el-radio
|
||||||
<span>{{ parseTime(dataInfo.sealDate, "{y}-{m}-{d} {h}:{i}") }}</span>
|
v-model="form.materialResult"
|
||||||
</el-form-item>
|
v-for="dict in dict.type.project_checking_result"
|
||||||
<el-form-item label="会签单" v-if="dataInfo.signFiles != null">
|
:label="dict.value"
|
||||||
<el-button
|
:key="dict.value"
|
||||||
size="mini"
|
border
|
||||||
type="text"
|
size="small"
|
||||||
icon="el-icon-paperclip"
|
>{{ dict.label }}</el-radio
|
||||||
@click="handleDownload(dataInfo.signFiles)"
|
>
|
||||||
>下载会签单</el-button
|
</el-form-item>
|
||||||
>
|
<el-form-item label="审批意见" prop="comment">
|
||||||
</el-form-item>
|
<el-input
|
||||||
<el-form-item label="变更单" v-if="dataInfo.alterationFiles != null">
|
type="textarea"
|
||||||
<el-button
|
:rows="3"
|
||||||
size="mini"
|
placeholder="请输入审批意见(200字内)"
|
||||||
type="text"
|
v-model="form.comment"
|
||||||
icon="el-icon-paperclip"
|
/>
|
||||||
@click="handleDownload(dataInfo.alterationFiles)"
|
</el-form-item>
|
||||||
>下载变更单</el-button
|
<div style="text-align: center;margin-bottom:20px;">
|
||||||
>
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||||
</el-form-item>
|
<el-button @click="cancel">取 消</el-button>
|
||||||
<el-form-item label="封样结果" prop="materialResult">
|
</div>
|
||||||
<el-radio
|
</el-form>
|
||||||
v-model="form.materialResult"
|
</el-drawer>
|
||||||
v-for="dict in dict.type.project_checking_result"
|
<el-image-viewer
|
||||||
:label="dict.value"
|
v-if="showViewer"
|
||||||
:key="dict.value"
|
:on-close="closeViewer"
|
||||||
border
|
:url-list="previewList"
|
||||||
size="small"
|
style="z-index: 2050"
|
||||||
>{{ dict.label }}</el-radio
|
/>
|
||||||
>
|
</div>
|
||||||
</el-form-item>
|
</template>
|
||||||
<el-form-item label="审批意见" prop="comment">
|
|
||||||
<el-input
|
<script>
|
||||||
type="textarea"
|
import { getMaterialSeal, updateMaterialSeal } from "@/api/project/materialSeal";
|
||||||
:rows="3"
|
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
||||||
placeholder="请输入审批意见(200字内)"
|
|
||||||
v-model="form.comment"
|
export default {
|
||||||
/>
|
name: "approveMeasureDrawer",
|
||||||
</el-form-item>
|
components: {
|
||||||
<div style="text-align: center">
|
ElImageViewer,
|
||||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
},
|
||||||
<el-button @click="cancel">取 消</el-button>
|
props: {
|
||||||
</div>
|
closeCallBack: {
|
||||||
</el-form>
|
type: Function,
|
||||||
</el-drawer>
|
|
||||||
<el-image-viewer
|
|
||||||
v-if="showViewer"
|
|
||||||
:on-close="closeViewer"
|
|
||||||
:url-list="previewList"
|
|
||||||
style="z-index: 2050"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import {
|
|
||||||
getMaterialSeal,
|
|
||||||
updateMaterialSeal,
|
|
||||||
} from "@/api/project/materialSeal";
|
|
||||||
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "approveMeasureDrawer",
|
|
||||||
components: {
|
|
||||||
ElImageViewer,
|
|
||||||
},
|
},
|
||||||
props: {
|
},
|
||||||
closeCallBack: {
|
dicts: ["project_checking_result"],
|
||||||
type: Function,
|
data() {
|
||||||
},
|
return {
|
||||||
|
showViewer: false,
|
||||||
|
open: false,
|
||||||
|
isOpen: false,
|
||||||
|
dataInfo: {
|
||||||
|
imageUrls: "",
|
||||||
|
},
|
||||||
|
title: "",
|
||||||
|
form: {},
|
||||||
|
rules: {
|
||||||
|
materialResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
|
||||||
|
comment: [
|
||||||
|
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
||||||
|
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
// 遮罩层
|
||||||
|
loading: true,
|
||||||
|
previewList: [],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {},
|
||||||
|
mounted() {},
|
||||||
|
methods: {
|
||||||
|
getImageUrl(url) {
|
||||||
|
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||||
},
|
},
|
||||||
dicts: ["project_checking_result"],
|
onPreview(urls) {
|
||||||
data() {
|
this.previewList = [];
|
||||||
return {
|
urls.split(",").forEach((item) => {
|
||||||
showViewer: false,
|
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
||||||
open: false,
|
});
|
||||||
isOpen: false,
|
this.showViewer = true;
|
||||||
dataInfo: {
|
|
||||||
imageUrls:""
|
|
||||||
},
|
|
||||||
title: "",
|
|
||||||
form: {},
|
|
||||||
rules: {
|
|
||||||
materialResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
|
|
||||||
comment: [
|
|
||||||
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
|
||||||
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
previewList: [],
|
|
||||||
};
|
|
||||||
},
|
},
|
||||||
computed: {},
|
closeViewer() {
|
||||||
mounted() {},
|
this.showViewer = false;
|
||||||
methods: {
|
},
|
||||||
getImageUrl(url) {
|
show(options) {
|
||||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
this.title = options.typeName;
|
||||||
},
|
this.isOpen = true;
|
||||||
onPreview(urls) {
|
this.form = {};
|
||||||
this.previewList = [];
|
this.form.id = options.id;
|
||||||
urls.split(",").forEach((item) => {
|
getMaterialSeal(options.id).then((res) => {
|
||||||
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
this.dataInfo = res.data;
|
||||||
});
|
this.loading = false;
|
||||||
this.showViewer = true;
|
});
|
||||||
},
|
},
|
||||||
closeViewer() {
|
// 取消按钮
|
||||||
this.showViewer = false;
|
cancel() {
|
||||||
},
|
this.isOpen = false;
|
||||||
show(options) {
|
},
|
||||||
this.title = options.typeName;
|
/** 下载附件 */
|
||||||
this.isOpen = true;
|
handleDownload(val) {
|
||||||
this.form={};
|
let files = val.split(",");
|
||||||
this.form.id=options.id;
|
files.forEach((item) => {
|
||||||
getMaterialSeal(options.id)
|
this.$download.resource(item);
|
||||||
.then((res) => {
|
});
|
||||||
this.dataInfo = res.data;
|
},
|
||||||
this.loading = false;
|
/** 提交按钮 */
|
||||||
});
|
submitForm() {
|
||||||
},
|
this.$refs["form"].validate((valid) => {
|
||||||
// 取消按钮
|
if (valid) {
|
||||||
cancel() {
|
// 结果状态同步到审批状态
|
||||||
this.open = false;
|
let msg = "合格";
|
||||||
},
|
if (this.form.materialResult == "1") {
|
||||||
/** 下载附件 */
|
this.form.approveStatus = "4";
|
||||||
handleDownload(val) {
|
} else {
|
||||||
let files = val.split(",");
|
msg = "不合格";
|
||||||
files.forEach((item) => {
|
this.form.approveStatus = "3";
|
||||||
this.$download.resource(item);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate((valid) => {
|
|
||||||
if (valid) {
|
|
||||||
// 结果状态同步到审批状态
|
|
||||||
let msg = "合格";
|
|
||||||
if(this.form.materialResult=="1"){
|
|
||||||
this.form.approveStatus="4";
|
|
||||||
}else{
|
|
||||||
msg = "不合格";
|
|
||||||
this.form.approveStatus="3";
|
|
||||||
}
|
|
||||||
this.$confirm('是否确认审批'+msg+'?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.loading=true;
|
|
||||||
updateMaterialSeal(this.form).then(res => {
|
|
||||||
this.$modal.msgSuccess("审批成功");
|
|
||||||
this.loading = false;
|
|
||||||
//关闭并刷新列表
|
|
||||||
this.$refs.drawer.closeDrawer();
|
|
||||||
});
|
|
||||||
}).catch(() => {
|
|
||||||
console.log("取消操作");
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
this.$confirm("是否确认审批" + msg + "?", "提示", {
|
||||||
},
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.loading = true;
|
||||||
|
updateMaterialSeal(this.form).then((res) => {
|
||||||
|
this.$modal.msgSuccess("审批成功");
|
||||||
|
this.loading = false;
|
||||||
|
//关闭并刷新列表
|
||||||
|
this.$refs.drawer.closeDrawer();
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
console.log("取消操作");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
},
|
},
|
||||||
};
|
},
|
||||||
</script>
|
};
|
||||||
|
</script>
|
||||||
|
|
|
@ -1,224 +1,251 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="projectect-attendance-drawer">
|
<div class="projectect-attendance-drawer">
|
||||||
<el-drawer
|
<el-drawer
|
||||||
v-if="isOpen"
|
v-if="isOpen"
|
||||||
:visible.sync="isOpen"
|
:visible.sync="isOpen"
|
||||||
ref="drawer"
|
ref="drawer"
|
||||||
direction="rtl"
|
direction="rtl"
|
||||||
@close="closeCallBack"
|
@close="closeCallBack"
|
||||||
size="50%"
|
size="50%"
|
||||||
|
>
|
||||||
|
<template slot="title">
|
||||||
|
<div>{{ title + " 【处理审批】" }}</div>
|
||||||
|
</template>
|
||||||
|
<el-form
|
||||||
|
ref="form"
|
||||||
|
v-loading="loading"
|
||||||
|
:model="form"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="80px"
|
||||||
|
style="padding-right: 20px; padding-left: 20px"
|
||||||
>
|
>
|
||||||
<template slot="title">
|
<el-form-item label="项目名称">
|
||||||
<div>{{ title + " 【处理审批】" }}</div>
|
{{ dataInfo.projectName }}
|
||||||
</template>
|
</el-form-item>
|
||||||
<el-form ref="form" v-loading="loading" :model="form" :rules="rules" label-width="80px" style="padding-right: 20px;padding-left: 20px;">
|
<el-form-item label="测量图片">
|
||||||
<el-form-item label="项目名称">
|
<el-image
|
||||||
{{dataInfo.projectName}}
|
ref="preview"
|
||||||
|
v-for="(img, idx) in dataInfo.imageUrls.split(',')"
|
||||||
|
:key="idx"
|
||||||
|
:src="getImageUrl(img)"
|
||||||
|
style="width: 120px; height: 120px; margin-right: 15px"
|
||||||
|
@click="onPreview(img)"
|
||||||
|
></el-image>
|
||||||
|
</el-form-item>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="测量类型">
|
||||||
|
<dict-tag
|
||||||
|
:options="dict.type.project_measure_type"
|
||||||
|
:value="dataInfo.measureType"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="测量图片">
|
</el-col>
|
||||||
<el-image
|
<el-col :span="12">
|
||||||
ref="preview"
|
<el-form-item label="测量内容">
|
||||||
v-for="(img,idx) in dataInfo.imageUrls.split(',')" :key="idx"
|
<dict-tag
|
||||||
:src="getImageUrl(img)"
|
:options="dict.type.project_measure_info_type"
|
||||||
style="width: 120px; height: 120px; margin-right: 15px"
|
:value="dataInfo.measureInfo"
|
||||||
@click="onPreview(img)"
|
/>
|
||||||
></el-image>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row>
|
</el-col>
|
||||||
<el-col :span="12">
|
</el-row>
|
||||||
<el-form-item label="测量类型">
|
<el-row>
|
||||||
<dict-tag
|
<el-col :span="12">
|
||||||
:options="dict.type.project_measure_type"
|
<el-form-item label="测量部位">
|
||||||
:value="dataInfo.measureType"
|
{{ dataInfo.measurePosition }}
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="测量内容">
|
|
||||||
<dict-tag
|
|
||||||
:options="dict.type.project_measure_info_type"
|
|
||||||
:value="dataInfo.measureInfo"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="测量部位">
|
|
||||||
{{ dataInfo.measurePosition }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="测量点位">
|
|
||||||
{{ dataInfo.measurePointPosition }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="质量专员">
|
|
||||||
{{ dataInfo.qualityUserName }}
|
|
||||||
<el-tag type="info" size="mini">{{ dataInfo.qualityUser }}</el-tag>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="监理专员">
|
|
||||||
{{ dataInfo.superviseUserName }}
|
|
||||||
<el-tag type="info" size="mini">{{ dataInfo.superviseUser }}</el-tag>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="提交用户">
|
|
||||||
{{ dataInfo.createBy }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="提交单位">
|
|
||||||
{{ dataInfo.deptName }}
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-form-item label="测量时间">
|
|
||||||
<span>{{ parseTime(dataInfo.measureTime, "{y}-{m}-{d} {h}:{i}") }}</span>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="测量结果" prop="measureResult">
|
</el-col>
|
||||||
<el-radio
|
<el-col :span="12">
|
||||||
v-model="form.measureResult"
|
<el-form-item label="测量点位">
|
||||||
v-for="dict in dict.type.project_checking_result"
|
{{ dataInfo.measurePointPosition }}
|
||||||
:label="dict.value"
|
|
||||||
:key="dict.value"
|
|
||||||
border
|
|
||||||
size="small"
|
|
||||||
>{{ dict.label }}</el-radio
|
|
||||||
>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="审批意见" prop="comment">
|
</el-col>
|
||||||
<el-input
|
</el-row>
|
||||||
type="textarea"
|
<el-row>
|
||||||
:rows="3"
|
<el-col :span="12">
|
||||||
placeholder="请输入审批意见(200字内)"
|
<el-form-item label="质量专员">
|
||||||
v-model="form.comment"
|
{{ dataInfo.qualityUserName }}
|
||||||
/>
|
<el-tag type="info" size="mini">{{ dataInfo.qualityUser }}</el-tag>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<div style="text-align: center">
|
</el-col>
|
||||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
<el-col :span="12">
|
||||||
<el-button @click="cancel">取 消</el-button>
|
<el-form-item label="监理专员">
|
||||||
</div>
|
{{ dataInfo.superviseUserName }}
|
||||||
</el-form>
|
<el-tag type="info" size="mini">{{ dataInfo.superviseUser }}</el-tag>
|
||||||
</el-drawer>
|
</el-form-item>
|
||||||
<el-image-viewer
|
</el-col>
|
||||||
v-if="showViewer"
|
</el-row>
|
||||||
:on-close="closeViewer"
|
<el-row>
|
||||||
:url-list="previewList"
|
<el-col :span="12">
|
||||||
style="z-index: 2050"
|
<el-form-item label="提交用户">
|
||||||
/>
|
{{ dataInfo.createBy }}
|
||||||
</div>
|
</el-form-item>
|
||||||
</template>
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
<script>
|
<el-form-item label="提交单位">
|
||||||
import {
|
{{ dataInfo.deptName }}
|
||||||
getProjectMeasure,
|
</el-form-item>
|
||||||
updateProjectMeasure,
|
</el-col>
|
||||||
} from "@/api/project/projectMeasure";
|
</el-row>
|
||||||
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
<el-form-item label="测量时间">
|
||||||
|
<span>{{ parseTime(dataInfo.measureTime, "{y}-{m}-{d}") }}</span>
|
||||||
export default {
|
</el-form-item>
|
||||||
name: "approveMeasureDrawer",
|
<el-form-item label="测量附件">
|
||||||
components: {
|
<div v-for="(file, index) in dataInfo.measureFiles.split(',')" :key="index">
|
||||||
ElImageViewer,
|
<el-button
|
||||||
|
size="mini"
|
||||||
|
type="text"
|
||||||
|
icon="el-icon-paperclip"
|
||||||
|
@click="handledownload(file)"
|
||||||
|
>{{ file.substring(file.lastIndexOf("/") + 1) }}</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="测量结果" prop="measureResult">
|
||||||
|
<el-radio
|
||||||
|
v-model="form.measureResult"
|
||||||
|
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="comment">
|
||||||
|
<el-input
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
placeholder="请输入审批意见(200字内)"
|
||||||
|
v-model="form.comment"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<div style="text-align: center;margin-bottom:20px;">
|
||||||
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||||
|
<el-button @click="cancel">取 消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
</el-drawer>
|
||||||
|
<el-image-viewer
|
||||||
|
v-if="showViewer"
|
||||||
|
:on-close="closeViewer"
|
||||||
|
:url-list="previewList"
|
||||||
|
style="z-index: 2050"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getProjectMeasure, updateProjectMeasure } from "@/api/project/projectMeasure";
|
||||||
|
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "approveMeasureDrawer",
|
||||||
|
components: {
|
||||||
|
ElImageViewer,
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
closeCallBack: {
|
||||||
|
type: Function,
|
||||||
},
|
},
|
||||||
props: {
|
},
|
||||||
closeCallBack: {
|
dicts: ["project_measure_type", "project_checking_result", "project_measure_info_type"],
|
||||||
type: Function,
|
data() {
|
||||||
},
|
return {
|
||||||
|
showViewer: false,
|
||||||
|
open: false,
|
||||||
|
isOpen: false,
|
||||||
|
dataInfo: {
|
||||||
|
imageUrls: "",
|
||||||
|
},
|
||||||
|
title: "",
|
||||||
|
form: {},
|
||||||
|
rules: {
|
||||||
|
measureResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
|
||||||
|
comment: [
|
||||||
|
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
||||||
|
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
// 遮罩层
|
||||||
|
loading: true,
|
||||||
|
previewList: [],
|
||||||
|
fileTypes: ["pdf", "png", "jpg", "jpeg"],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {},
|
||||||
|
mounted() {},
|
||||||
|
methods: {
|
||||||
|
getImageUrl(url) {
|
||||||
|
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||||
},
|
},
|
||||||
dicts: ["project_measure_type", "project_checking_result", "project_measure_info_type"],
|
onPreview(urls) {
|
||||||
data() {
|
this.previewList = [];
|
||||||
return {
|
urls.split(",").forEach((item) => {
|
||||||
showViewer: false,
|
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
||||||
open: false,
|
});
|
||||||
isOpen: false,
|
this.showViewer = true;
|
||||||
dataInfo: {
|
|
||||||
imageUrls:""
|
|
||||||
},
|
|
||||||
title: "",
|
|
||||||
form: {},
|
|
||||||
rules: {
|
|
||||||
measureResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
|
|
||||||
comment: [
|
|
||||||
{ required: true, message: "请输入审批意见", trigger: "blur" },
|
|
||||||
{ max: 200, message: "审批意见最多200字符", trigger: "blur" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
previewList: [],
|
|
||||||
};
|
|
||||||
},
|
},
|
||||||
computed: {},
|
closeViewer() {
|
||||||
mounted() {},
|
this.showViewer = false;
|
||||||
methods: {
|
},
|
||||||
getImageUrl(url) {
|
show(options) {
|
||||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
this.title = options.typeName;
|
||||||
},
|
this.isOpen = true;
|
||||||
onPreview(urls) {
|
this.form = {};
|
||||||
this.previewList = [];
|
this.form.id = options.id;
|
||||||
urls.split(",").forEach((item) => {
|
getProjectMeasure(options.id).then((res) => {
|
||||||
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
this.dataInfo = res.data;
|
||||||
});
|
this.loading = false;
|
||||||
this.showViewer = true;
|
});
|
||||||
},
|
},
|
||||||
closeViewer() {
|
// 取消按钮
|
||||||
this.showViewer = false;
|
cancel() {
|
||||||
},
|
this.isOpen = false;
|
||||||
show(options) {
|
},
|
||||||
this.title = options.typeName;
|
/** 提交按钮 */
|
||||||
this.isOpen = true;
|
submitForm() {
|
||||||
this.form={};
|
this.$refs["form"].validate((valid) => {
|
||||||
this.form.id=options.id;
|
if (valid) {
|
||||||
getProjectMeasure(options.id)
|
// 结果状态同步到审批状态
|
||||||
.then((res) => {
|
let msg = "合格";
|
||||||
this.dataInfo = res.data;
|
if (this.form.measureResult == "1") {
|
||||||
this.loading = false;
|
this.form.approveStatus = "4";
|
||||||
});
|
} else {
|
||||||
},
|
msg = "不合格";
|
||||||
// 取消按钮
|
this.form.approveStatus = "3";
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate((valid) => {
|
|
||||||
if (valid) {
|
|
||||||
// 结果状态同步到审批状态
|
|
||||||
let msg = "合格";
|
|
||||||
if(this.form.measureResult=="1"){
|
|
||||||
this.form.approveStatus="4";
|
|
||||||
}else{
|
|
||||||
msg = "不合格";
|
|
||||||
this.form.approveStatus="3";
|
|
||||||
}
|
|
||||||
this.$confirm('是否确认审批'+msg+'?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.loading=true;
|
|
||||||
updateProjectMeasure(this.form).then(res => {
|
|
||||||
this.$modal.msgSuccess("审批成功");
|
|
||||||
this.loading = false;
|
|
||||||
//关闭并刷新列表
|
|
||||||
this.$refs.drawer.closeDrawer();
|
|
||||||
});
|
|
||||||
}).catch(() => {
|
|
||||||
console.log("取消操作");
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
this.$confirm("是否确认审批" + msg + "?", "提示", {
|
||||||
},
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.loading = true;
|
||||||
|
updateProjectMeasure(this.form).then((res) => {
|
||||||
|
this.$modal.msgSuccess("审批成功");
|
||||||
|
this.loading = false;
|
||||||
|
//关闭并刷新列表
|
||||||
|
this.$refs.drawer.closeDrawer();
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
console.log("取消操作");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
},
|
},
|
||||||
};
|
handledownload(url) {
|
||||||
</script>
|
let fileType = url.split(".");
|
||||||
|
if (
|
||||||
|
this.fileTypes.indexOf(fileType[fileType.length - 1].toLocaleLowerCase()) > -1
|
||||||
|
) {
|
||||||
|
window.open(process.env.VUE_APP_BASE_API + url);
|
||||||
|
} else {
|
||||||
|
this.$download.resource(url);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
|
@ -233,7 +233,7 @@
|
||||||
/>
|
/>
|
||||||
<el-table-column label="测量时间" align="center" prop="measureTime" width="160">
|
<el-table-column label="测量时间" align="center" prop="measureTime" width="160">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ parseTime(scope.row.measureTime, "{y}-{m}-{d} {h}:{i}") }}</span>
|
<span>{{ parseTime(scope.row.measureTime, "{y}-{m}-{d}") }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="审批状态" align="center" prop="approveStatus" width="120">
|
<el-table-column label="审批状态" align="center" prop="approveStatus" width="120">
|
||||||
|
@ -285,7 +285,6 @@
|
||||||
<dict-tag :options="dict.type.sys_common_isdel" :value="scope.row.isDel" />
|
<dict-tag :options="dict.type.sys_common_isdel" :value="scope.row.isDel" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" align="center" prop="remark" />
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="操作"
|
label="操作"
|
||||||
align="center"
|
align="center"
|
||||||
|
@ -375,6 +374,7 @@
|
||||||
v-model="form.measureType"
|
v-model="form.measureType"
|
||||||
placeholder="请选择测量类型"
|
placeholder="请选择测量类型"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
|
@change="selectMeasureType"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="dict in dict.type.project_measure_type"
|
v-for="dict in dict.type.project_measure_type"
|
||||||
|
@ -392,6 +392,7 @@
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="dict in dict.type.project_measure_info_type"
|
v-for="dict in dict.type.project_measure_info_type"
|
||||||
|
v-show="showInfoType(dict)"
|
||||||
:key="dict.value"
|
:key="dict.value"
|
||||||
:label="dict.label"
|
:label="dict.label"
|
||||||
:value="dict.value"
|
:value="dict.value"
|
||||||
|
@ -454,27 +455,15 @@
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
clearable
|
clearable
|
||||||
v-model="form.measureTime"
|
v-model="form.measureTime"
|
||||||
type="datetime"
|
type="date"
|
||||||
default-time="10:00:00"
|
value-format="yyyy-MM-dd"
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
placeholder="请选择测量时间"
|
placeholder="请选择测量时间"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
>
|
>
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="测量结果" prop="measureResult" v-if="false">
|
<el-form-item label="测量附件" prop="measureFiles">
|
||||||
<el-radio
|
<file-upload v-model="form.measureFiles" :limit="9" @input="fileInput"/>
|
||||||
v-model="form.measureResult"
|
|
||||||
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="measureFiles" v-if="false">
|
|
||||||
<file-upload v-model="form.measureFiles" :limit="1" @input="fileInput" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
|
@ -604,6 +593,20 @@ export default {
|
||||||
}
|
}
|
||||||
this.form.measureFiles = fileUrls;
|
this.form.measureFiles = fileUrls;
|
||||||
},
|
},
|
||||||
|
selectMeasureType(val){
|
||||||
|
this.form.measureInfo=null;
|
||||||
|
},
|
||||||
|
showInfoType(dict){
|
||||||
|
if(this.form.measureType){
|
||||||
|
if(this.form.measureType=='6'){
|
||||||
|
return dict.raw.remark == 'gjgc';
|
||||||
|
}else{
|
||||||
|
return !dict.raw.remark;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
},
|
||||||
getImageUrl(url) {
|
getImageUrl(url) {
|
||||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||||
},
|
},
|
||||||
|
|
|
@ -118,7 +118,7 @@
|
||||||
/>
|
/>
|
||||||
<el-table-column label="测量时间" align="center" prop="measureTime" width="160">
|
<el-table-column label="测量时间" align="center" prop="measureTime" width="160">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ parseTime(scope.row.measureTime, "{y}-{m}-{d} {h}:{i}") }}</span>
|
<span>{{ parseTime(scope.row.measureTime, "{y}-{m}-{d}") }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
@ -244,6 +244,7 @@
|
||||||
v-model="form.measureType"
|
v-model="form.measureType"
|
||||||
placeholder="请选择测量类型"
|
placeholder="请选择测量类型"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
|
@change="selectMeasureType"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="dict in dict.type.project_measure_type"
|
v-for="dict in dict.type.project_measure_type"
|
||||||
|
@ -261,6 +262,7 @@
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="dict in dict.type.project_measure_info_type"
|
v-for="dict in dict.type.project_measure_info_type"
|
||||||
|
v-show="showInfoType(dict)"
|
||||||
:key="dict.value"
|
:key="dict.value"
|
||||||
:label="dict.label"
|
:label="dict.label"
|
||||||
:value="dict.value"
|
:value="dict.value"
|
||||||
|
@ -323,27 +325,15 @@
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
clearable
|
clearable
|
||||||
v-model="form.measureTime"
|
v-model="form.measureTime"
|
||||||
type="datetime"
|
type="date"
|
||||||
default-time="10:00:00"
|
value-format="yyyy-MM-dd"
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
placeholder="请选择测量时间"
|
placeholder="请选择测量时间"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
>
|
>
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="测量结果" prop="measureResult" v-if="false">
|
<el-form-item label="测量附件" prop="measureFiles">
|
||||||
<el-radio
|
<file-upload v-model="form.measureFiles" :limit="9" @input="fileInput"/>
|
||||||
v-model="form.measureResult"
|
|
||||||
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="measureFiles" v-if="false">
|
|
||||||
<file-upload v-model="form.measureFiles" :limit="1" @input="fileInput" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
|
@ -390,7 +380,7 @@ export default {
|
||||||
title: "",
|
title: "",
|
||||||
isUnit: true,
|
isUnit: true,
|
||||||
nodes: [],
|
nodes: [],
|
||||||
form: {},
|
form: {measureType:"",measureInfo:""},
|
||||||
rules: {
|
rules: {
|
||||||
imageUrls: [{ required: true, message: "请上传测量图片", trigger: "blur" }],
|
imageUrls: [{ required: true, message: "请上传测量图片", trigger: "blur" }],
|
||||||
measureType: [{ required: true, message: "请选择测量类型", trigger: "blur" }],
|
measureType: [{ required: true, message: "请选择测量类型", trigger: "blur" }],
|
||||||
|
@ -443,7 +433,6 @@ export default {
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
mounted() {},
|
mounted() {},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
fileInput(files) {
|
fileInput(files) {
|
||||||
let fileUrls = null;
|
let fileUrls = null;
|
||||||
|
@ -456,6 +445,20 @@ export default {
|
||||||
}
|
}
|
||||||
this.form.measureFiles = fileUrls;
|
this.form.measureFiles = fileUrls;
|
||||||
},
|
},
|
||||||
|
selectMeasureType(val){
|
||||||
|
this.form.measureInfo="";
|
||||||
|
},
|
||||||
|
showInfoType(dict){
|
||||||
|
if(this.form.measureType){
|
||||||
|
if(this.form.measureType=='6'){
|
||||||
|
return dict.raw.remark == 'gjgc';
|
||||||
|
}else{
|
||||||
|
return dict.raw.remark == null;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
},
|
||||||
getImageUrl(url) {
|
getImageUrl(url) {
|
||||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||||
},
|
},
|
||||||
|
@ -542,7 +545,8 @@ export default {
|
||||||
id: null,
|
id: null,
|
||||||
projectId: null,
|
projectId: null,
|
||||||
deptId: null,
|
deptId: null,
|
||||||
insuranceType: null,
|
insuranceType: "",
|
||||||
|
measureInfo: "",
|
||||||
insuranceNumber: null,
|
insuranceNumber: null,
|
||||||
insuranceFile: null,
|
insuranceFile: null,
|
||||||
insuranceState: null,
|
insuranceState: null,
|
||||||
|
|
|
@ -187,7 +187,7 @@
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="上传文件" prop="fileData">
|
<el-form-item label="上传文件" prop="fileData">
|
||||||
<FileUpload @input="fileInput" :fileSize="200"/>
|
<FileUpload @input="fileInput" :fileSize="200" :fileType="['pdf', 'doc', 'docx', 'xls', 'xlsx']"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="备注" prop="remark">
|
<el-form-item label="备注" prop="remark">
|
||||||
<el-input v-model="form.remark" placeholder="请输入备注" type="textarea"/>
|
<el-input v-model="form.remark" placeholder="请输入备注" type="textarea"/>
|
||||||
|
|
|
@ -8,6 +8,7 @@ import com.yanzhu.jh.work.service.IWorkFileService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
@ -32,9 +33,11 @@ public class ProjectFilesController extends BaseController {
|
||||||
* workFile
|
* workFile
|
||||||
*/
|
*/
|
||||||
@GetMapping("/list")
|
@GetMapping("/list")
|
||||||
public AjaxResult list(WorkFile workFile)
|
public TableDataInfo list(WorkFile workFile)
|
||||||
{
|
{
|
||||||
return success(workFileService.selectWorkFileList(workFile));
|
startPage();
|
||||||
|
List<WorkFile> list = workFileService.selectWorkFileList(workFile);
|
||||||
|
return getDataTable(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -44,7 +47,17 @@ public class ProjectFilesController extends BaseController {
|
||||||
*/
|
*/
|
||||||
@GetMapping("/findCountByType")
|
@GetMapping("/findCountByType")
|
||||||
public AjaxResult findCountByType(WorkFile workFile){
|
public AjaxResult findCountByType(WorkFile workFile){
|
||||||
|
clearPage();
|
||||||
return success(workFileService.findCountByType(workFile));
|
return success(workFileService.findCountByType(workFile));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打开文件
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/readFile/{id}")
|
||||||
|
public AjaxResult workFileRead(@PathVariable("id") Long id){
|
||||||
|
return success(workFileService.openWorkFile(id));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue