Commit a673af2c by zhaopanyu

zpy

parent 4f16f8d4
<template> <template>
<div> <div>
<el-upload <el-upload :action="uploadUrl" :before-upload="handleBeforeUpload" :on-success="handleUploadSuccess"
:action="uploadUrl" :on-error="handleUploadError" name="file" :show-file-list="false" :headers="headers" style="display: none"
:before-upload="handleBeforeUpload" ref="upload" v-if="this.type == 'url'">
:on-success="handleUploadSuccess"
:on-error="handleUploadError"
name="file"
:show-file-list="false"
:headers="headers"
style="display: none"
ref="upload"
v-if="this.type == 'url'"
>
</el-upload> </el-upload>
<div class="editor" ref="editor" :style="styles"></div> <div class="editor" ref="editor" :style="styles"></div>
</div> </div>
...@@ -197,76 +188,95 @@ export default { ...@@ -197,76 +188,95 @@ export default {
</script> </script>
<style> <style>
.editor, .ql-toolbar { .editor,
.ql-toolbar {
white-space: pre-wrap !important; white-space: pre-wrap !important;
line-height: normal !important; line-height: normal !important;
} }
.quill-img { .quill-img {
display: none; display: none;
} }
.ql-snow .ql-tooltip[data-mode="link"]::before { .ql-snow .ql-tooltip[data-mode="link"]::before {
content: "请输入链接地址:"; content: "请输入链接地址:";
} }
.ql-snow .ql-tooltip.ql-editing a.ql-action::after { .ql-snow .ql-tooltip.ql-editing a.ql-action::after {
border-right: 0px; border-right: 0px;
content: "保存"; content: "保存";
padding-right: 0px; padding-right: 0px;
} }
.ql-snow .ql-tooltip[data-mode="video"]::before { .ql-snow .ql-tooltip[data-mode="video"]::before {
content: "请输入视频地址:"; content: "请输入视频地址:";
} }
.ql-snow .ql-picker.ql-size .ql-picker-label::before, .ql-snow .ql-picker.ql-size .ql-picker-label::before,
.ql-snow .ql-picker.ql-size .ql-picker-item::before { .ql-snow .ql-picker.ql-size .ql-picker-item::before {
content: "14px"; content: "14px";
} }
.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="small"]::before, .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="small"]::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="small"]::before { .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="small"]::before {
content: "10px"; content: "10px";
} }
.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="large"]::before, .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="large"]::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="large"]::before { .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="large"]::before {
content: "18px"; content: "18px";
} }
.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="huge"]::before, .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="huge"]::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="huge"]::before { .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="huge"]::before {
content: "32px"; content: "32px";
} }
.ql-snow .ql-picker.ql-header .ql-picker-label::before, .ql-snow .ql-picker.ql-header .ql-picker-label::before,
.ql-snow .ql-picker.ql-header .ql-picker-item::before { .ql-snow .ql-picker.ql-header .ql-picker-item::before {
content: "文本"; content: "文本";
} }
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before, .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before { .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before {
content: "标题1"; content: "标题1";
} }
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before, .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before {
content: "标题2"; content: "标题2";
} }
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before, .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before { .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before {
content: "标题3"; content: "标题3";
} }
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before, .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before { .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before {
content: "标题4"; content: "标题4";
} }
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before, .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before { .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before {
content: "标题5"; content: "标题5";
} }
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before, .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before { .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before {
content: "标题6"; content: "标题6";
} }
.ql-snow .ql-picker.ql-font .ql-picker-label::before, .ql-snow .ql-picker.ql-font .ql-picker-label::before,
.ql-snow .ql-picker.ql-font .ql-picker-item::before { .ql-snow .ql-picker.ql-font .ql-picker-item::before {
content: "标准字体"; content: "标准字体";
} }
.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="serif"]::before, .ql-snow .ql-picker.ql-font .ql-picker-label[data-value="serif"]::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="serif"]::before { .ql-snow .ql-picker.ql-font .ql-picker-item[data-value="serif"]::before {
content: "衬线字体"; content: "衬线字体";
} }
.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="monospace"]::before, .ql-snow .ql-picker.ql-font .ql-picker-label[data-value="monospace"]::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="monospace"]::before { .ql-snow .ql-picker.ql-font .ql-picker-item[data-value="monospace"]::before {
content: "等宽字体"; content: "等宽字体";
......
...@@ -58,7 +58,6 @@ export default { ...@@ -58,7 +58,6 @@ export default {
console.log('详情页面created,完整路由对象:', this.$route); console.log('详情页面created,完整路由对象:', this.$route);
let { id, jh, famc, qk, jhs } = this.$route.query || {}; let { id, jh, famc, qk, jhs } = this.$route.query || {};
console.log('路由query参数:', { id, jh, famc, qk, jhs }); console.log('路由query参数:', { id, jh, famc, qk, jhs });
// 优先使用query,其次使用sessionStorage // 优先使用query,其次使用sessionStorage
if (!jh || jh === 'undefined' || jh === 'null') { if (!jh || jh === 'undefined' || jh === 'null') {
try { try {
...@@ -69,7 +68,6 @@ export default { ...@@ -69,7 +68,6 @@ export default {
console.warn('读取缓存失败', e); console.warn('读取缓存失败', e);
} }
} }
if (jh && jh !== 'undefined' && jh !== 'null') { if (jh && jh !== 'undefined' && jh !== 'null') {
this.queryParams.id = id || ''; this.queryParams.id = id || '';
this.queryParams.jh = jh || ''; this.queryParams.jh = jh || '';
...@@ -84,7 +82,6 @@ export default { ...@@ -84,7 +82,6 @@ export default {
} else { } else {
console.warn('未获取到有效的参数 jh'); console.warn('未获取到有效的参数 jh');
} }
// 确保第一次进入页面时不会自动初始化组件 // 确保第一次进入页面时不会自动初始化组件
console.log('页面初始化完成,等待用户点击tab'); console.log('页面初始化完成,等待用户点击tab');
}, },
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
<span class="well-label">井号:</span> <span class="well-label">井号:</span>
<span class="well-number">{{ jh }}</span> <span class="well-number">{{ jh }}</span>
</div> </div>
<div class="chart-layout"> <div class="chart-layout">
<div id="mainzft" class="chart" ref="chartRef"></div> <div id="mainzft" class="chart" ref="chartRef"></div>
<aside v-if="legendItems && legendItems.length" class="strata-legend"> <aside v-if="legendItems && legendItems.length" class="strata-legend">
......
...@@ -17,7 +17,6 @@ ...@@ -17,7 +17,6 @@
v-hasPermi="['system:jsbb:export']">导出</el-button> v-hasPermi="['system:jsbb:export']">导出</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table border v-loading="loading" :data="jsbbList" @selection-change="handleSelectionChange" <el-table border v-loading="loading" :data="jsbbList" @selection-change="handleSelectionChange"
style="width: 100%; flex: 1;" height="100%"> style="width: 100%; flex: 1;" height="100%">
<el-table-column label="井号" align="center" prop="jh" min-width="80" show-overflow-tooltip /> <el-table-column label="井号" align="center" prop="jh" min-width="80" show-overflow-tooltip />
...@@ -31,19 +30,19 @@ ...@@ -31,19 +30,19 @@
<el-table-column label="地层走向" align="center" prop="dczx" min-width="90" show-overflow-tooltip /> <el-table-column label="地层走向" align="center" prop="dczx" min-width="90" show-overflow-tooltip />
<el-table-column label="地层倾角" align="center" prop="dcqj" min-width="90" show-overflow-tooltip /> <el-table-column label="地层倾角" align="center" prop="dcqj" min-width="90" show-overflow-tooltip />
<el-table-column label="备注" align="center" prop="bz" min-width="150" show-overflow-tooltip /> <el-table-column label="备注" align="center" prop="bz" min-width="150" show-overflow-tooltip />
<el-table-column label="操作" align="center" width="130" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['system:jsbb:edit']">修改</el-button> v-hasPermi="['system:jsbb:edit']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-setting" @click="handleCalcParams(scope.row)"
v-hasPermi="['system:jsbb:edit']">计算参数</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['system:jsbb:remove']">删除</el-button> v-hasPermi="['system:jsbb:remove']">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" :page-sizes="[20, 50, 100]" /> @pagination="getList" :page-sizes="[20, 50, 100]" />
<!-- 添加或修改地质简介地层及岩性描述数据对话框 --> <!-- 添加或修改地质简介地层及岩性描述数据对话框 -->
<el-dialog :title="title" :visible.sync="open" width="50%" append-to-body> <el-dialog :title="title" :visible.sync="open" width="50%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="110px"> <el-form ref="form" :model="form" :rules="rules" label-width="110px">
...@@ -131,8 +130,15 @@ ...@@ -131,8 +130,15 @@
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
<!-- 计算参数弹窗 -->
<el-dialog title="计算参数" :visible.sync="calcParamsOpen" width="60%" append-to-body>
<div class="param-box"> <div class="param-box">
<el-form ref="form" :model="form" :rules="rules" label-width="60px"> <el-form ref="calcParamsForm" :model="calcParamsForm" :rules="rules" label-width="60px">
<!-- 横波时差 --> <!-- 横波时差 -->
<el-row :gutter="10"> <el-row :gutter="10">
<el-col :span="3" class="title-col"> <el-col :span="3" class="title-col">
...@@ -142,17 +148,17 @@ ...@@ -142,17 +148,17 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="hbsca1"> <el-form-item label="A1" prop="hbsca1">
<el-input v-model="form.hbsca1" placeholder="A1" /> <el-input v-model="calcParamsForm.hbsca1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="hbsca2"> <el-form-item label="A2" prop="hbsca2">
<el-input v-model="form.hbsca2" placeholder="A2" /> <el-input v-model="calcParamsForm.hbsca2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A3" prop="hbsca3"> <el-form-item label="A3" prop="hbsca3">
<el-input v-model="form.hbsca3" placeholder="A3" /> <el-input v-model="calcParamsForm.hbsca3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -167,7 +173,7 @@ ...@@ -167,7 +173,7 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="nzhla1"> <el-form-item label="A1" prop="nzhla1">
<el-input v-model="form.nzhla1" placeholder="A1" /> <el-input v-model="calcParamsForm.nzhla1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -181,12 +187,12 @@ ...@@ -181,12 +187,12 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="dcmda1"> <el-form-item label="A1" prop="dcmda1">
<el-input v-model="form.dcmda1" placeholder="A1" /> <el-input v-model="calcParamsForm.dcmda1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="dcmda2"> <el-form-item label="A2" prop="dcmda2">
<el-input v-model="form.dcmda2" placeholder="A2" /> <el-input v-model="calcParamsForm.dcmda2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -201,18 +207,18 @@ ...@@ -201,18 +207,18 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="bsba1"> <el-form-item label="A1" prop="bsba1">
<el-input v-model="form.bsba1" placeholder="A1" /> <el-input v-model="calcParamsForm.bsba1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B1" prop="bsbb1"> <el-form-item label="B1" prop="bsbb1">
<el-input v-model="form.bsbb1" placeholder="B1" /> <el-input v-model="calcParamsForm.bsbb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B2" prop="bsbb2"> <el-form-item label="B2" prop="bsbb2">
<el-input v-model="form.bsbb2" placeholder="B2" /> <el-input v-model="calcParamsForm.bsbb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -226,12 +232,12 @@ ...@@ -226,12 +232,12 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B1" prop="txmlb1"> <el-form-item label="B1" prop="txmlb1">
<el-input v-model="form.txmlb1" placeholder="B1" /> <el-input v-model="calcParamsForm.txmlb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B2" prop="txmlb2"> <el-form-item label="B2" prop="txmlb2">
<el-input v-model="form.txmlb2" placeholder="B2" /> <el-input v-model="calcParamsForm.txmlb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -245,27 +251,27 @@ ...@@ -245,27 +251,27 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="kzxjza1"> <el-form-item label="A1" prop="kzxjza1">
<el-input v-model="form.kzxjza1" placeholder="A1" /> <el-input v-model="calcParamsForm.kzxjza1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="kzxjza2"> <el-form-item label="A2" prop="kzxjza2">
<el-input v-model="form.kzxjza2" placeholder="A2" /> <el-input v-model="calcParamsForm.kzxjza2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A3" prop="kzxjza3"> <el-form-item label="A3" prop="kzxjza3">
<el-input v-model="form.kzxjza3" placeholder="A3" /> <el-input v-model="calcParamsForm.kzxjza3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="4"> <!-- <el-col :span="4">
<el-form-item label="B1" prop="kzxjzb1"> <el-form-item label="B1" prop="kzxjzb1">
<el-input v-model="form.kzxjzb1" placeholder="B1" /> <el-input v-model="calcParamsForm.kzxjzb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="kzxjzb2"> <el-form-item label="B2" prop="kzxjzb2">
<el-input v-model="form.kzxjzb2" placeholder="B2" /> <el-input v-model="calcParamsForm.kzxjzb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row> </el-row>
...@@ -279,27 +285,27 @@ ...@@ -279,27 +285,27 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="ymxsa1"> <el-form-item label="A1" prop="ymxsa1">
<el-input v-model="form.ymxsa1" placeholder="A1" /> <el-input v-model="calcParamsForm.ymxsa1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="ymxsa2"> <el-form-item label="A2" prop="ymxsa2">
<el-input v-model="form.ymxsa2" placeholder="A2" /> <el-input v-model="calcParamsForm.ymxsa2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="4"> <!-- <el-col :span="4">
<el-form-item label="A3" prop="ymxsa3"> <el-form-item label="A3" prop="ymxsa3">
<el-input v-model="form.ymxsa3" placeholder="A3" /> <el-input v-model="calcParamsForm.ymxsa3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="ymxsb1"> <el-form-item label="B1" prop="ymxsb1">
<el-input v-model="form.ymxsb1" placeholder="B1" /> <el-input v-model="calcParamsForm.ymxsb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="ymxsb2"> <el-form-item label="B2" prop="ymxsb2">
<el-input v-model="form.ymxsb2" placeholder="B2" /> <el-input v-model="calcParamsForm.ymxsb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row> </el-row>
...@@ -313,7 +319,7 @@ ...@@ -313,7 +319,7 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="njla1"> <el-form-item label="A1" prop="njla1">
<el-input v-model="form.njla1" placeholder="A1" /> <el-input v-model="calcParamsForm.njla1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -329,27 +335,27 @@ ...@@ -329,27 +335,27 @@
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A1" prop="ysklqda1"> <el-form-item label="A1" prop="ysklqda1">
<el-input v-model="form.ysklqda1" placeholder="A1" /> <el-input v-model="calcParamsForm.ysklqda1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A2" prop="ysklqda2"> <el-form-item label="A2" prop="ysklqda2">
<el-input v-model="form.ysklqda2" placeholder="A2" /> <el-input v-model="calcParamsForm.ysklqda2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A3" prop="ysklqda3"> <el-form-item label="A3" prop="ysklqda3">
<el-input v-model="form.ysklqda3" placeholder="A3" /> <el-input v-model="calcParamsForm.ysklqda3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="ysklqdb1"> <el-form-item label="B1" prop="ysklqdb1">
<el-input v-model="form.ysklqdb1" placeholder="B1" /> <el-input v-model="calcParamsForm.ysklqdb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="ysklqdb2"> <el-form-item label="B2" prop="ysklqdb2">
<el-input v-model="form.ysklqdb2" placeholder="B2" /> <el-input v-model="calcParamsForm.ysklqdb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> --> </el-row> -->
...@@ -364,27 +370,27 @@ ...@@ -364,27 +370,27 @@
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A1" prop="nmcja1"> <el-form-item label="A1" prop="nmcja1">
<el-input v-model="form.nmcja1" placeholder="A1" /> <el-input v-model="calcParamsForm.nmcja1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A2" prop="nmcja2"> <el-form-item label="A2" prop="nmcja2">
<el-input v-model="form.nmcja2" placeholder="A2" /> <el-input v-model="calcParamsForm.nmcja2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A3" prop="nmcja3"> <el-form-item label="A3" prop="nmcja3">
<el-input v-model="form.nmcja3" placeholder="A3" /> <el-input v-model="calcParamsForm.nmcja3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="nmcjb1"> <el-form-item label="B1" prop="nmcjb1">
<el-input v-model="form.nmcjb1" placeholder="B1" /> <el-input v-model="calcParamsForm.nmcjb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="nmcjb2"> <el-form-item label="B2" prop="nmcjb2">
<el-input v-model="form.nmcjb2" placeholder="B2" /> <el-input v-model="calcParamsForm.nmcjb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> --> </el-row> -->
...@@ -398,27 +404,27 @@ ...@@ -398,27 +404,27 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="cjzsa1"> <el-form-item label="A1" prop="cjzsa1">
<el-input v-model="form.cjzsa1" placeholder="A1" /> <el-input v-model="calcParamsForm.cjzsa1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="4"> <!-- <el-col :span="4">
<el-form-item label="A2" prop="cjzsa2"> <el-form-item label="A2" prop="cjzsa2">
<el-input v-model="form.cjzsa2" placeholder="A2" /> <el-input v-model="calcParamsForm.cjzsa2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A3" prop="cjzsa3"> <el-form-item label="A3" prop="cjzsa3">
<el-input v-model="form.cjzsa3" placeholder="A3" /> <el-input v-model="calcParamsForm.cjzsa3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="cjzsb1"> <el-form-item label="B1" prop="cjzsb1">
<el-input v-model="form.cjzsb1" placeholder="B1" /> <el-input v-model="calcParamsForm.cjzsb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="cjzsb2"> <el-form-item label="B2" prop="cjzsb2">
<el-input v-model="form.cjzsb2" placeholder="B2" /> <el-input v-model="calcParamsForm.cjzsb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row> </el-row>
...@@ -431,20 +437,20 @@ ...@@ -431,20 +437,20 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="ztxxzsa1"> <el-form-item label="A1" prop="ztxxzsa1">
<el-input v-model="form.ztxxzsa1" placeholder="A1" /> <el-input v-model="calcParamsForm.ztxxzsa1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="ztxxzsa2"> <el-form-item label="A2" prop="ztxxzsa2">
<el-input v-model="form.ztxxzsa2" placeholder="A2" /> <el-input v-model="calcParamsForm.ztxxzsa2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
</div> </div>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button> <el-button type="primary" @click="submitCalcParams">确 定</el-button>
<el-button @click="cancel">取 消</el-button> <el-button @click="cancelCalcParams">取 消</el-button>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
...@@ -476,8 +482,14 @@ export default { ...@@ -476,8 +482,14 @@ export default {
title: "", title: "",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
// 是否显示计算参数弹出层
calcParamsOpen: false,
// 是否为新增操作 // 是否为新增操作
isAdd: false, isAdd: false,
// 当前操作的行数据
currentRow: null,
// 计算参数表单
calcParamsForm: {},
// 目的层相关 // 目的层相关
showCascader: false, showCascader: false,
mdcOptions: [], mdcOptions: [],
...@@ -644,9 +656,8 @@ export default { ...@@ -644,9 +656,8 @@ export default {
ztxxzsa1: 1, ztxxzsa1: 1,
ztxxzsa2: 1.25 ztxxzsa2: 1.25
}; };
// 重置两个表单的校验状态 // 重置表单的校验状态
this.resetForm && this.resetForm("mainForm"); this.resetForm && this.resetForm("form");
this.resetForm && this.resetForm("paramForm");
this.showCascader = false; this.showCascader = false;
this.cascaderValue = []; // 重置 cascaderValue this.cascaderValue = []; // 重置 cascaderValue
}, },
...@@ -689,25 +700,76 @@ export default { ...@@ -689,25 +700,76 @@ export default {
this.title = "修改地质简介地层及岩性描述数据"; this.title = "修改地质简介地层及岩性描述数据";
}); });
}, },
/** 提交按钮 */ /** 计算参数按钮操作 */
submitForm() { handleCalcParams(row) {
// 同时校验基本信息表单与参数表单 this.currentRow = row;
const validateMain = () => new Promise(resolve => { const jh = row.jh || this.ids;
if (this.$refs.mainForm) { const sjdjsd = row.sjdjsd;
this.$refs.mainForm.validate(valid => resolve(valid)); getJsbb({ jh: jh, sjdjsd: sjdjsd }).then(response => {
} else { // 初始化计算参数表单,只包含计算参数相关的字段
resolve(true); this.calcParamsForm = {
} jh: response.data.jh,
sjdjsd: response.data.sjdjsd,
// 横波时差
hbsca1: response.data.hbsca1 || 0.6,
hbsca2: response.data.hbsca2 || -0.0014,
hbsca3: response.data.hbsca3 || 0.25,
// 泥质含量
nzhla1: response.data.nzhla1 || 2,
// 地层密度
dcmda1: response.data.dcmda1 || 0.32,
dcmda2: response.data.dcmda2 || 0.25,
// 泊松比
bsba1: response.data.bsba1 || 2,
bsbb1: response.data.bsbb1 || 0.9,
bsbb2: response.data.bsbb2 || 0.035,
// 弹性模量
txmlb1: response.data.txmlb1 || 0.9,
txmlb2: response.data.txmlb2 || 0.035,
// 可钻性极值
kzxjza1: response.data.kzxjza1 || 1.1908,
kzxjza2: response.data.kzxjza2 || 0.0003,
kzxjza3: response.data.kzxjza3 || -0.1427,
// 研磨系数
ymxsa1: response.data.ymxsa1 || 0.75,
ymxsa2: response.data.ymxsa2 || 1.15,
// 粘聚力
njla1: response.data.njla1 || 0.000003326,
// 均质性系数
cjzsa1: response.data.cjzsa1 || 0.75,
// 钻头选型指数
ztxxzsa1: response.data.ztxxzsa1 || 1,
ztxxzsa2: response.data.ztxxzsa2 || 1.25
};
this.calcParamsOpen = true;
});
},
/** 提交计算参数 */
submitCalcParams() {
this.$refs.calcParamsForm.validate(valid => {
if (valid) {
// 合并计算参数到完整表单数据
const updateData = {
...this.calcParamsForm
};
updateJsbb(updateData).then(response => {
this.$modal.msgSuccess("计算参数保存成功");
this.calcParamsOpen = false;
this.getList();
}); });
const validateParam = () => new Promise(resolve => {
if (this.$refs.paramForm) {
this.$refs.paramForm.validate(valid => resolve(valid));
} else {
resolve(true);
} }
}); });
Promise.all([validateMain(), validateParam()]).then(([mainOk, paramOk]) => { },
if (mainOk && paramOk) { /** 取消计算参数弹窗 */
cancelCalcParams() {
this.calcParamsOpen = false;
this.calcParamsForm = {};
this.currentRow = null;
},
/** 提交按钮 */
submitForm() {
this.$refs.form.validate(valid => {
if (valid) {
if (!this.isAdd) { if (!this.isAdd) {
updateJsbb(this.form).then(response => { updateJsbb(this.form).then(response => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
......
...@@ -276,6 +276,17 @@ ...@@ -276,6 +276,17 @@
</el-form-item> </el-form-item>
</el-collapse-item> --> </el-collapse-item> -->
</el-collapse> </el-collapse>
<!-- 图片上传区域 -->
<div class="image-upload-section">
<el-divider class="divider-strong">图片上传</el-divider>
<el-upload ref="formImageUpload" :action="imageUploadUrl" :headers="imageUploadHeaders"
:on-success="handleFormImageUploadSuccess" :on-error="handleImageUploadError"
:before-upload="handleBeforeImageUpload" :file-list="formImageFileList" :on-remove="handleFormImageRemove"
list-type="picture-card" :limit="10" :multiple="true" accept="image/*">
<i class="el-icon-plus"></i>
</el-upload>
<div class="upload-tip">支持上传多张图片文件,最多10张,单个文件不超过5MB</div>
</div>
</el-form> </el-form>
<span slot="footer" class="dialog-footer dialog-footer-strong"> <span slot="footer" class="dialog-footer dialog-footer-strong">
<el-button @click="dialogVisible = false">取 消</el-button> <el-button @click="dialogVisible = false">取 消</el-button>
...@@ -284,7 +295,7 @@ ...@@ -284,7 +295,7 @@
</div> </div>
</el-dialog> </el-dialog>
<!-- 详情弹窗 --> <!-- 详情弹窗 -->
<el-dialog title="查看" :visible.sync="detailVisible" width="95%" @close="detailVisible = false"> <el-dialog title="查看" :visible.sync="detailVisible" width="95%" @close="handleDetailDialogClose">
<div class="detail-container"> <div class="detail-container">
<!-- 基本信息 --> <!-- 基本信息 -->
<div class="basic-info"> <div class="basic-info">
...@@ -398,6 +409,22 @@ ...@@ -398,6 +409,22 @@
</div> </div>
</div> </div>
</div> </div>
<!-- 图片展示区域(只读) -->
<div class="image-display-section" v-if="imageFileList && imageFileList.length > 0">
<el-divider class="divider-strong">图片</el-divider>
<div class="image-list">
<div class="image-item" v-for="(item, index) in imageFileList" :key="index">
<el-image :src="item.url" :preview-src-list="imageFileList.map(img => img.url)" fit="cover"
class="display-image">
<div slot="error" class="image-slot">
<i class="el-icon-picture-outline"></i>
</div>
</el-image>
<div class="image-name">{{ item.fileName || item.name }}</div>
</div>
</div>
</div>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="detailVisible = false">关闭</el-button> <el-button @click="detailVisible = false">关闭</el-button>
...@@ -651,7 +678,14 @@ export default { ...@@ -651,7 +678,14 @@ export default {
], ],
// 表格高度,保证超出后出现滚动条 // 表格高度,保证超出后出现滚动条
tableHeight: 400, tableHeight: 400,
cjData:[] cjData: [],
// 图片上传相关
imageUploadUrl: process.env.VUE_APP_BASE_API + "/common/upload",
imageUploadHeaders: {
Authorization: "Bearer " + getToken()
},
imageFileList: [], // 详情弹窗的图片列表(只读)
formImageFileList: [] // 新增/编辑弹窗的图片列表
} }
}, },
async mounted() { async mounted() {
...@@ -737,8 +771,11 @@ export default { ...@@ -737,8 +771,11 @@ export default {
tzdm01: '', tzdm02: '', tzdm03: '', tzdm04: '', tzdm05: '', tzdm06: '', tzdm01: '', tzdm02: '', tzdm03: '', tzdm04: '', tzdm05: '', tzdm06: '',
tzxl01: '', tzxl02: '', tzxl03: '', tzxl04: '', tzxl05: '', tzxl06: '', tzxl01: '', tzxl02: '', tzxl03: '', tzxl04: '', tzxl05: '', tzxl06: '',
slt01: '', slt02: '', slt03: '', slt04: '', slt05: '', slt06: '', slt01: '', slt02: '', slt03: '', slt04: '', slt05: '', slt06: '',
t01: '', t02: '', t03: '', t04: '', t05: '', t06: '' t01: '', t02: '', t03: '', t04: '', t05: '', t06: '',
fileList: []
}; };
// 清空图片列表
this.formImageFileList = [];
}, },
onReset() { onReset() {
this.queryParams = { this.queryParams = {
...@@ -777,8 +814,29 @@ export default { ...@@ -777,8 +814,29 @@ export default {
]); ]);
// 查找每个参数 // 查找每个参数
this.detailParams = this.getDetailFeatureList(); this.detailParams = this.getDetailFeatureList();
// 初始化图片列表
this.initImageFileList();
this.detailVisible = true; this.detailVisible = true;
}, },
/** 初始化图片文件列表 */
initImageFileList() {
if (this.detailData.fileList && Array.isArray(this.detailData.fileList) && this.detailData.fileList.length > 0) {
this.imageFileList = this.detailData.fileList.map((item, index) => {
// 处理filePath,确保以/开头
const filePath = item.filePath || '';
const url = filePath.startsWith('http') ? filePath : (process.env.VUE_APP_BASE_API + (filePath.startsWith('/') ? filePath : '/' + filePath));
return {
fileName: item.fileName || '',
filePath: item.filePath || '',
url: url,
uid: Date.now() + index,
name: item.fileName || ''
};
});
} else {
this.imageFileList = [];
}
},
findOptionById(id, options, label) { findOptionById(id, options, label) {
const item = options.find(opt => opt.id === id); const item = options.find(opt => opt.id === id);
return { return {
...@@ -849,6 +907,8 @@ export default { ...@@ -849,6 +907,8 @@ export default {
getZtxxJcxx(id).then(response => { getZtxxJcxx(id).then(response => {
this.form = response.data; this.form = response.data;
console.log(this.form, 'this.form'); console.log(this.form, 'this.form');
// 初始化图片列表
this.initFormImageFileList();
this.openDialog(); this.openDialog();
this.title = "修改钻头基础信息"; this.title = "修改钻头基础信息";
}); });
...@@ -915,7 +975,16 @@ export default { ...@@ -915,7 +975,16 @@ export default {
// 打印form // 打印form
//console\.log('保存的表单数据:', this.form); //console\.log('保存的表单数据:', this.form);
// 2. 保存 - 确保编辑模式下传递ID // 2. 处理图片列表,转换为fileList格式
const fileListData = this.formImageFileList
.filter(item => item.fileName && item.filePath)
.map(item => ({
fileName: item.fileName,
filePath: item.filePath
}));
this.form.fileList = fileListData;
// 3. 保存 - 确保编辑模式下传递ID
const saveApi = this.editType === 'edit' ? updateZtxxJcxx : addZtxxJcxx; const saveApi = this.editType === 'edit' ? updateZtxxJcxx : addZtxxJcxx;
const saveData = { ...this.form }; const saveData = { ...this.form };
...@@ -954,6 +1023,8 @@ export default { ...@@ -954,6 +1023,8 @@ export default {
if (this.$refs.formRef) { if (this.$refs.formRef) {
this.$refs.formRef.resetFields(); this.$refs.formRef.resetFields();
} }
// 清空图片列表
this.formImageFileList = [];
}, },
handleGblkChange(value) { handleGblkChange(value) {
if (value === '双圆弧') { if (value === '双圆弧') {
...@@ -1060,6 +1131,119 @@ export default { ...@@ -1060,6 +1131,119 @@ export default {
this.cjData = response.rows; this.cjData = response.rows;
}); });
}, },
/** 图片上传前校验 */
handleBeforeImageUpload(file) {
const isImage = file.type.indexOf('image/') === 0;
const isLt5M = file.size / 1024 / 1024 < 5;
if (!isImage) {
this.$message.error('只能上传图片文件!');
return false;
}
if (!isLt5M) {
this.$message.error('上传图片大小不能超过 5MB!');
return false;
}
return true;
},
/** 新增/编辑弹窗图片上传成功 */
handleFormImageUploadSuccess(response, file, fileList) {
if (response.code === 200) {
// 处理filePath,确保格式正确
const filePath = response.fileName || '';
const url = response.url || (filePath.startsWith('http') ? filePath : (process.env.VUE_APP_BASE_API + (filePath.startsWith('/') ? filePath : '/' + filePath)));
// 格式化上传成功的数据
const fileItem = {
fileName: response.originalFilename, // fileName使用originalFilename
filePath: response.fileName, // filePath使用fileName
url: url,
uid: file.uid,
name: response.originalFilename,
status: 'success'
};
// 更新formImageFileList,将新上传的文件信息合并进去
// fileList 已经包含了所有文件(包括刚上传的),我们需要更新对应的项
this.formImageFileList = fileList.map(item => {
// 如果是刚上传的文件,使用格式化后的数据
if (item.uid === file.uid) {
return fileItem;
}
// 如果是已存在的文件,检查是否已经有完整数据,如果没有则保持原有结构
if (item.fileName && item.filePath) {
// 已有完整数据,直接返回
return item;
}
// 需要从现有数据中恢复
return {
fileName: item.fileName || item.name || '',
filePath: item.filePath || (item.url ? item.url.replace(process.env.VUE_APP_BASE_API, '') : ''),
url: item.url || '',
uid: item.uid,
name: item.name || '',
status: item.status || 'success'
};
});
this.$message.success(`图片"${response.originalFilename}"上传成功`);
} else {
this.$message.error(response.msg || '图片上传失败');
// 上传失败时,从fileList中移除该文件
this.$nextTick(() => {
this.formImageFileList = fileList.filter(item => item.uid !== file.uid);
});
}
},
/** 图片上传失败 */
handleImageUploadError(err, file, fileList) {
this.$message.error('图片上传失败,请重试');
},
/** 新增/编辑弹窗删除图片 */
handleFormImageRemove(file, fileList) {
// 更新图片列表
this.formImageFileList = fileList.map(item => {
// 保持完整的数据结构
if (item.fileName && item.filePath) {
return item;
}
return {
fileName: item.fileName || item.name || '',
filePath: item.filePath || (item.url ? item.url.replace(process.env.VUE_APP_BASE_API, '') : ''),
url: item.url || '',
uid: item.uid,
name: item.name || '',
status: item.status || 'success'
};
});
this.$message.success('图片已删除');
},
/** 初始化新增/编辑弹窗图片列表 */
initFormImageFileList() {
if (this.form.fileList && Array.isArray(this.form.fileList) && this.form.fileList.length > 0) {
this.formImageFileList = this.form.fileList.map((item, index) => {
// 处理filePath,确保以/开头
const filePath = item.filePath || '';
const url = filePath.startsWith('http') ? filePath : (process.env.VUE_APP_BASE_API + (filePath.startsWith('/') ? filePath : '/' + filePath));
return {
fileName: item.fileName || '',
filePath: item.filePath || '',
url: url,
uid: Date.now() + index,
name: item.fileName || ''
};
});
} else {
this.formImageFileList = [];
}
},
/** 详情弹窗关闭处理 */
handleDetailDialogClose() {
this.detailVisible = false;
// 重置图片列表
this.imageFileList = [];
this.detailData = {};
},
} }
} }
</script> </script>
...@@ -1439,4 +1623,94 @@ export default { ...@@ -1439,4 +1623,94 @@ export default {
::v-deep .el-form-item { ::v-deep .el-form-item {
margin-bottom: 10px !important; margin-bottom: 10px !important;
} }
.image-upload-section {
background: #f8faff;
border-radius: 12px;
padding: 24px 18px;
box-shadow: 0 2px 8px rgba(64, 158, 255, 0.06);
margin-top: 20px;
}
.upload-tip {
margin-top: 12px;
font-size: 12px;
color: #909399;
text-align: center;
}
::v-deep .image-upload-section .el-upload--picture-card {
width: 100px;
height: 100px;
line-height: 100px;
border: 1px dashed #d9d9d9;
border-radius: 8px;
background-color: #fafafa;
transition: all 0.3s;
}
::v-deep .image-upload-section .el-upload--picture-card:hover {
border-color: #409eff;
}
::v-deep .image-upload-section .el-upload-list--picture-card .el-upload-list__item {
width: 100px;
height: 100px;
border-radius: 8px;
}
.image-display-section {
background: #f8faff;
border-radius: 12px;
padding: 24px 18px;
box-shadow: 0 2px 8px rgba(64, 158, 255, 0.06);
margin-top: 20px;
}
.image-list {
display: flex;
flex-wrap: wrap;
gap: 16px;
}
.image-item {
display: flex;
flex-direction: column;
align-items: center;
width: 150px;
}
.display-image {
width: 150px;
height: 150px;
border-radius: 8px;
border: 1px solid #e3eafc;
cursor: pointer;
transition: all 0.3s;
}
.display-image:hover {
border-color: #409eff;
box-shadow: 0 4px 12px rgba(64, 158, 255, 0.15);
}
.image-name {
margin-top: 8px;
font-size: 12px;
color: #606266;
text-align: center;
word-break: break-all;
max-width: 150px;
}
.image-slot {
display: flex;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
background: #f5f7fa;
color: #909399;
font-size: 30px;
}
</style> </style>
\ No newline at end of file
...@@ -25,10 +25,12 @@ ...@@ -25,10 +25,12 @@
<el-table-column label="地层走向" align="center" prop="dczx" min-width="90" show-overflow-tooltip /> <el-table-column label="地层走向" align="center" prop="dczx" min-width="90" show-overflow-tooltip />
<el-table-column label="地层倾角" align="center" prop="dcqj" min-width="90" show-overflow-tooltip /> <el-table-column label="地层倾角" align="center" prop="dcqj" min-width="90" show-overflow-tooltip />
<el-table-column label="备注" align="center" prop="bz" min-width="150" show-overflow-tooltip /> <el-table-column label="备注" align="center" prop="bz" min-width="150" show-overflow-tooltip />
<el-table-column label="操作" align="center" width="120" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" <el-button size="mini" type="text" icon="el-icon-edit"
@click="handleUpdate(scope.row)">修改</el-button> @click="handleUpdate(scope.row)">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-setting"
@click="handleCalcParams(scope.row)">计算参数</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" <el-button size="mini" type="text" icon="el-icon-delete"
@click="handleDelete(scope.row)">删除</el-button> @click="handleDelete(scope.row)">删除</el-button>
</template> </template>
...@@ -105,8 +107,15 @@ ...@@ -105,8 +107,15 @@
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
<!-- 计算参数弹窗 -->
<el-dialog title="计算参数" :visible.sync="calcParamsOpen" width="60%" append-to-body>
<div class="param-box"> <div class="param-box">
<el-form ref="paramForm" :model="form" :rules="rules" label-width="60px"> <el-form ref="calcParamsForm" :model="calcParamsForm" :rules="rules" label-width="60px">
<!-- 横波时差 --> <!-- 横波时差 -->
<el-row :gutter="10"> <el-row :gutter="10">
<el-col :span="3" class="title-col"> <el-col :span="3" class="title-col">
...@@ -116,17 +125,17 @@ ...@@ -116,17 +125,17 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="hbsca1"> <el-form-item label="A1" prop="hbsca1">
<el-input v-model="form.hbsca1" placeholder="A1" /> <el-input v-model="calcParamsForm.hbsca1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="hbsca2"> <el-form-item label="A2" prop="hbsca2">
<el-input v-model="form.hbsca2" placeholder="A2" /> <el-input v-model="calcParamsForm.hbsca2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A3" prop="hbsca3"> <el-form-item label="A3" prop="hbsca3">
<el-input v-model="form.hbsca3" placeholder="A3" /> <el-input v-model="calcParamsForm.hbsca3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -139,7 +148,7 @@ ...@@ -139,7 +148,7 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="nzhla1"> <el-form-item label="A1" prop="nzhla1">
<el-input v-model="form.nzhla1" placeholder="A1" /> <el-input v-model="calcParamsForm.nzhla1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -152,12 +161,12 @@ ...@@ -152,12 +161,12 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="dcmda1"> <el-form-item label="A1" prop="dcmda1">
<el-input v-model="form.dcmda1" placeholder="A1" /> <el-input v-model="calcParamsForm.dcmda1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="dcmda2"> <el-form-item label="A2" prop="dcmda2">
<el-input v-model="form.dcmda2" placeholder="A2" /> <el-input v-model="calcParamsForm.dcmda2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -170,17 +179,17 @@ ...@@ -170,17 +179,17 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="bsba1"> <el-form-item label="A1" prop="bsba1">
<el-input v-model="form.bsba1" placeholder="A1" /> <el-input v-model="calcParamsForm.bsba1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B1" prop="bsbb1"> <el-form-item label="B1" prop="bsbb1">
<el-input v-model="form.bsbb1" placeholder="B1" /> <el-input v-model="calcParamsForm.bsbb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B2" prop="bsbb2"> <el-form-item label="B2" prop="bsbb2">
<el-input v-model="form.bsbb2" placeholder="B2" /> <el-input v-model="calcParamsForm.bsbb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -194,17 +203,17 @@ ...@@ -194,17 +203,17 @@
</el-col> </el-col>
<!-- <el-col :span="7"> <!-- <el-col :span="7">
<el-form-item label="A1" prop="txmla1"> <el-form-item label="A1" prop="txmla1">
<el-input v-model="form.txmla1" placeholder="A1" /> <el-input v-model="calcParamsForm.txmla1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B1" prop="txmlb1"> <el-form-item label="B1" prop="txmlb1">
<el-input v-model="form.txmlb1" placeholder="B1" /> <el-input v-model="calcParamsForm.txmlb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="B2" prop="txmlb2"> <el-form-item label="B2" prop="txmlb2">
<el-input v-model="form.txmlb2" placeholder="B2" /> <el-input v-model="calcParamsForm.txmlb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -220,27 +229,27 @@ ...@@ -220,27 +229,27 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="kzxjza1"> <el-form-item label="A1" prop="kzxjza1">
<el-input v-model="form.kzxjza1" placeholder="A1" /> <el-input v-model="calcParamsForm.kzxjza1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="kzxjza2"> <el-form-item label="A2" prop="kzxjza2">
<el-input v-model="form.kzxjza2" placeholder="A2" /> <el-input v-model="calcParamsForm.kzxjza2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A3" prop="kzxjza3"> <el-form-item label="A3" prop="kzxjza3">
<el-input v-model="form.kzxjza3" placeholder="A3" /> <el-input v-model="calcParamsForm.kzxjza3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="4"> <!-- <el-col :span="4">
<el-form-item label="B1" prop="kzxjzb1"> <el-form-item label="B1" prop="kzxjzb1">
<el-input v-model="form.kzxjzb1" placeholder="B1" /> <el-input v-model="calcParamsForm.kzxjzb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="kzxjzb2"> <el-form-item label="B2" prop="kzxjzb2">
<el-input v-model="form.kzxjzb2" placeholder="B2" /> <el-input v-model="calcParamsForm.kzxjzb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row> </el-row>
...@@ -254,27 +263,27 @@ ...@@ -254,27 +263,27 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="ymxsa1"> <el-form-item label="A1" prop="ymxsa1">
<el-input v-model="form.ymxsa1" placeholder="A1" /> <el-input v-model="calcParamsForm.ymxsa1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="ymxsa2"> <el-form-item label="A2" prop="ymxsa2">
<el-input v-model="form.ymxsa2" placeholder="A2" /> <el-input v-model="calcParamsForm.ymxsa2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="4"> <!-- <el-col :span="4">
<el-form-item label="A3" prop="ymxsa3"> <el-form-item label="A3" prop="ymxsa3">
<el-input v-model="form.ymxsa3" placeholder="A3" /> <el-input v-model="calcParamsForm.ymxsa3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="ymxsb1"> <el-form-item label="B1" prop="ymxsb1">
<el-input v-model="form.ymxsb1" placeholder="B1" /> <el-input v-model="calcParamsForm.ymxsb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="ymxsb2"> <el-form-item label="B2" prop="ymxsb2">
<el-input v-model="form.ymxsb2" placeholder="B2" /> <el-input v-model="calcParamsForm.ymxsb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row> </el-row>
...@@ -288,7 +297,7 @@ ...@@ -288,7 +297,7 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="njla1"> <el-form-item label="A1" prop="njla1">
<el-input v-model="form.njla1" placeholder="A1" /> <el-input v-model="calcParamsForm.njla1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -305,27 +314,27 @@ ...@@ -305,27 +314,27 @@
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A1" prop="ysklqda1"> <el-form-item label="A1" prop="ysklqda1">
<el-input v-model="form.ysklqda1" placeholder="A1" /> <el-input v-model="calcParamsForm.ysklqda1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A2" prop="ysklqda2"> <el-form-item label="A2" prop="ysklqda2">
<el-input v-model="form.ysklqda2" placeholder="A2" /> <el-input v-model="calcParamsForm.ysklqda2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A3" prop="ysklqda3"> <el-form-item label="A3" prop="ysklqda3">
<el-input v-model="form.ysklqda3" placeholder="A3" /> <el-input v-model="calcParamsForm.ysklqda3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="ysklqdb1"> <el-form-item label="B1" prop="ysklqdb1">
<el-input v-model="form.ysklqdb1" placeholder="B1" /> <el-input v-model="calcParamsForm.ysklqdb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="ysklqdb2"> <el-form-item label="B2" prop="ysklqdb2">
<el-input v-model="form.ysklqdb2" placeholder="B2" /> <el-input v-model="calcParamsForm.ysklqdb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> --> </el-row> -->
...@@ -340,27 +349,27 @@ ...@@ -340,27 +349,27 @@
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A1" prop="nmcja1"> <el-form-item label="A1" prop="nmcja1">
<el-input v-model="form.nmcja1" placeholder="A1" /> <el-input v-model="calcParamsForm.nmcja1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A2" prop="nmcja2"> <el-form-item label="A2" prop="nmcja2">
<el-input v-model="form.nmcja2" placeholder="A2" /> <el-input v-model="calcParamsForm.nmcja2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A3" prop="nmcja3"> <el-form-item label="A3" prop="nmcja3">
<el-input v-model="form.nmcja3" placeholder="A3" /> <el-input v-model="calcParamsForm.nmcja3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="nmcjb1"> <el-form-item label="B1" prop="nmcjb1">
<el-input v-model="form.nmcjb1" placeholder="B1" /> <el-input v-model="calcParamsForm.nmcjb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="nmcjb2"> <el-form-item label="B2" prop="nmcjb2">
<el-input v-model="form.nmcjb2" placeholder="B2" /> <el-input v-model="calcParamsForm.nmcjb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> --> </el-row> -->
...@@ -374,27 +383,27 @@ ...@@ -374,27 +383,27 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="cjzsa1"> <el-form-item label="A1" prop="cjzsa1">
<el-input v-model="form.cjzsa1" placeholder="A1" /> <el-input v-model="calcParamsForm.cjzsa1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="4"> <!-- <el-col :span="4">
<el-form-item label="A2" prop="cjzsa2"> <el-form-item label="A2" prop="cjzsa2">
<el-input v-model="form.cjzsa2" placeholder="A2" /> <el-input v-model="calcParamsForm.cjzsa2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="A3" prop="cjzsa3"> <el-form-item label="A3" prop="cjzsa3">
<el-input v-model="form.cjzsa3" placeholder="A3" /> <el-input v-model="calcParamsForm.cjzsa3" placeholder="A3" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B1" prop="cjzsb1"> <el-form-item label="B1" prop="cjzsb1">
<el-input v-model="form.cjzsb1" placeholder="B1" /> <el-input v-model="calcParamsForm.cjzsb1" placeholder="B1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="B2" prop="cjzsb2"> <el-form-item label="B2" prop="cjzsb2">
<el-input v-model="form.cjzsb2" placeholder="B2" /> <el-input v-model="calcParamsForm.cjzsb2" placeholder="B2" />
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row> </el-row>
...@@ -407,12 +416,12 @@ ...@@ -407,12 +416,12 @@
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A1" prop="ztxxzsa1"> <el-form-item label="A1" prop="ztxxzsa1">
<el-input v-model="form.ztxxzsa1" placeholder="A1" /> <el-input v-model="calcParamsForm.ztxxzsa1" placeholder="A1" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="A2" prop="ztxxzsa2"> <el-form-item label="A2" prop="ztxxzsa2">
<el-input v-model="form.ztxxzsa2" placeholder="A2" /> <el-input v-model="calcParamsForm.ztxxzsa2" placeholder="A2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -421,8 +430,8 @@ ...@@ -421,8 +430,8 @@
</el-form> </el-form>
</div> </div>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button> <el-button type="primary" @click="submitCalcParams">确 定</el-button>
<el-button @click="cancel">取 消</el-button> <el-button @click="cancelCalcParams">取 消</el-button>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
...@@ -451,6 +460,12 @@ export default { ...@@ -451,6 +460,12 @@ export default {
jsbbList: [], jsbbList: [],
title: "", title: "",
open: false, open: false,
// 是否显示计算参数弹出层
calcParamsOpen: false,
// 当前操作的行数据
currentRow: null,
// 计算参数表单
calcParamsForm: {},
isAdd: false, isAdd: false,
showCascader: false, showCascader: false,
mdcOptions: [], mdcOptions: [],
...@@ -619,9 +634,8 @@ export default { ...@@ -619,9 +634,8 @@ export default {
ztxxzsa1: 1, ztxxzsa1: 1,
ztxxzsa2: 1.25 ztxxzsa2: 1.25
}; };
// 重置两块表单的校验状态 // 重置表单的校验状态
this.resetForm && this.resetForm("mainForm"); this.resetForm && this.resetForm("mainForm");
this.resetForm && this.resetForm("paramForm");
this.showCascader = false; this.showCascader = false;
this.cascaderValue = []; this.cascaderValue = [];
}, },
...@@ -660,24 +674,75 @@ export default { ...@@ -660,24 +674,75 @@ export default {
this.title = "修改地层数据"; this.title = "修改地层数据";
}); });
}, },
/** 计算参数按钮操作 */
submitForm() { handleCalcParams(row) {
const validateMain = () => new Promise(resolve => { this.currentRow = row;
if (this.$refs.mainForm) { const id = row.id || this.ids;
this.$refs.mainForm.validate(valid => resolve(valid)); getSjJsbb(id).then(response => {
} else { // 初始化计算参数表单,只包含计算参数相关的字段
resolve(true); this.calcParamsForm = {
} id: response.data.id,
jh: response.data.jh,
// 横波时差
hbsca1: response.data.hbsca1 || 0.6,
hbsca2: response.data.hbsca2 || -0.0014,
hbsca3: response.data.hbsca3 || 0.25,
// 泥质含量
nzhla1: response.data.nzhla1 || 2,
// 地层密度
dcmda1: response.data.dcmda1 || 0.32,
dcmda2: response.data.dcmda2 || 0.25,
// 泊松比
bsba1: response.data.bsba1 || 2,
bsbb1: response.data.bsbb1 || 0.9,
bsbb2: response.data.bsbb2 || 0.035,
// 弹性模量
txmlb1: response.data.txmlb1 || 0.9,
txmlb2: response.data.txmlb2 || 0.035,
// 可钻性极值
kzxjza1: response.data.kzxjza1 || 1.1908,
kzxjza2: response.data.kzxjza2 || 0.0003,
kzxjza3: response.data.kzxjza3 || -0.1427,
// 研磨系数
ymxsa1: response.data.ymxsa1 || 0.75,
ymxsa2: response.data.ymxsa2 || 1.15,
// 粘聚力
njla1: response.data.njla1 || 0.000003326,
// 均质性系数
cjzsa1: response.data.cjzsa1 || 0.75,
// 钻头选型指数
ztxxzsa1: response.data.ztxxzsa1 || 1,
ztxxzsa2: response.data.ztxxzsa2 || 1.25
};
this.calcParamsOpen = true;
});
},
/** 提交计算参数 */
submitCalcParams() {
this.$refs.calcParamsForm.validate(valid => {
if (valid) {
// 合并计算参数到完整表单数据
const updateData = {
...this.calcParamsForm
};
updateSjJsbb(updateData).then(() => {
this.$modal.msgSuccess("计算参数保存成功");
this.calcParamsOpen = false;
this.getList();
}); });
const validateParam = () => new Promise(resolve => {
if (this.$refs.paramForm) {
this.$refs.paramForm.validate(valid => resolve(valid));
} else {
resolve(true);
} }
}); });
Promise.all([validateMain(), validateParam()]).then(([mainOk, paramOk]) => { },
if (mainOk && paramOk) { /** 取消计算参数弹窗 */
cancelCalcParams() {
this.calcParamsOpen = false;
this.calcParamsForm = {};
this.currentRow = null;
},
submitForm() {
this.$refs.mainForm.validate(valid => {
if (valid) {
if (!this.isAdd) { if (!this.isAdd) {
updateSjJsbb(this.form).then(() => { updateSjJsbb(this.form).then(() => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment