Commit a673af2c by zhaopanyu

zpy

parent 4f16f8d4
<template>
<div>
<el-upload
:action="uploadUrl"
:before-upload="handleBeforeUpload"
: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 :action="uploadUrl" :before-upload="handleBeforeUpload" :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>
<div class="editor" ref="editor" :style="styles"></div>
</div>
......@@ -197,76 +188,95 @@ export default {
</script>
<style>
.editor, .ql-toolbar {
.editor,
.ql-toolbar {
white-space: pre-wrap !important;
line-height: normal !important;
}
.quill-img {
display: none;
}
.ql-snow .ql-tooltip[data-mode="link"]::before {
content: "请输入链接地址:";
}
.ql-snow .ql-tooltip.ql-editing a.ql-action::after {
border-right: 0px;
content: "保存";
padding-right: 0px;
}
.ql-snow .ql-tooltip[data-mode="video"]::before {
content: "请输入视频地址:";
}
.ql-snow .ql-picker.ql-size .ql-picker-label::before,
.ql-snow .ql-picker.ql-size .ql-picker-item::before {
content: "14px";
}
.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 {
content: "10px";
}
.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 {
content: "18px";
}
.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 {
content: "32px";
}
.ql-snow .ql-picker.ql-header .ql-picker-label::before,
.ql-snow .ql-picker.ql-header .ql-picker-item::before {
content: "文本";
}
.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 {
content: "标题1";
}
.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 {
content: "标题2";
}
.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 {
content: "标题3";
}
.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 {
content: "标题4";
}
.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 {
content: "标题5";
}
.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 {
content: "标题6";
}
.ql-snow .ql-picker.ql-font .ql-picker-label::before,
.ql-snow .ql-picker.ql-font .ql-picker-item::before {
content: "标准字体";
}
.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 {
content: "衬线字体";
}
.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 {
content: "等宽字体";
......
......@@ -58,7 +58,6 @@ export default {
console.log('详情页面created,完整路由对象:', this.$route);
let { id, jh, famc, qk, jhs } = this.$route.query || {};
console.log('路由query参数:', { id, jh, famc, qk, jhs });
// 优先使用query,其次使用sessionStorage
if (!jh || jh === 'undefined' || jh === 'null') {
try {
......@@ -69,7 +68,6 @@ export default {
console.warn('读取缓存失败', e);
}
}
if (jh && jh !== 'undefined' && jh !== 'null') {
this.queryParams.id = id || '';
this.queryParams.jh = jh || '';
......@@ -84,7 +82,6 @@ export default {
} else {
console.warn('未获取到有效的参数 jh');
}
// 确保第一次进入页面时不会自动初始化组件
console.log('页面初始化完成,等待用户点击tab');
},
......
......@@ -4,7 +4,6 @@
<span class="well-label">井号:</span>
<span class="well-number">{{ jh }}</span>
</div>
<div class="chart-layout">
<div id="mainzft" class="chart" ref="chartRef"></div>
<aside v-if="legendItems && legendItems.length" class="strata-legend">
......
......@@ -17,7 +17,6 @@
v-hasPermi="['system:jsbb:export']">导出</el-button>
</el-form-item>
</el-form>
<el-table border v-loading="loading" :data="jsbbList" @selection-change="handleSelectionChange"
style="width: 100%; flex: 1;" height="100%">
<el-table-column label="井号" align="center" prop="jh" min-width="80" show-overflow-tooltip />
......@@ -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="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" 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">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
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)"
v-hasPermi="['system:jsbb:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" :page-sizes="[20, 50, 100]" />
<!-- 添加或修改地质简介地层及岩性描述数据对话框 -->
<el-dialog :title="title" :visible.sync="open" width="50%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="110px">
......@@ -131,8 +130,15 @@
</el-col>
</el-row>
</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">
<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-col :span="3" class="title-col">
......@@ -142,17 +148,17 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
......@@ -167,7 +173,7 @@
</el-col>
<el-col :span="7">
<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-col>
......@@ -181,12 +187,12 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
......@@ -201,18 +207,18 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -226,12 +232,12 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -245,27 +251,27 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<!-- <el-col :span="4">
<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-col>
<el-col :span="4">
<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-col> -->
</el-row>
......@@ -279,27 +285,27 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<!-- <el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col> -->
</el-row>
......@@ -313,7 +319,7 @@
</el-col>
<el-col :span="7">
<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-col>
......@@ -329,27 +335,27 @@
</el-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
</el-row> -->
......@@ -364,27 +370,27 @@
</el-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
</el-row> -->
......@@ -398,27 +404,27 @@
</el-col>
<el-col :span="7">
<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-col>
<!-- <el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col> -->
</el-row>
......@@ -431,20 +437,20 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
<el-button type="primary" @click="submitCalcParams">确 定</el-button>
<el-button @click="cancelCalcParams">取 消</el-button>
</div>
</el-dialog>
</div>
......@@ -476,8 +482,14 @@ export default {
title: "",
// 是否显示弹出层
open: false,
// 是否显示计算参数弹出层
calcParamsOpen: false,
// 是否为新增操作
isAdd: false,
// 当前操作的行数据
currentRow: null,
// 计算参数表单
calcParamsForm: {},
// 目的层相关
showCascader: false,
mdcOptions: [],
......@@ -644,9 +656,8 @@ export default {
ztxxzsa1: 1,
ztxxzsa2: 1.25
};
// 重置两个表单的校验状态
this.resetForm && this.resetForm("mainForm");
this.resetForm && this.resetForm("paramForm");
// 重置表单的校验状态
this.resetForm && this.resetForm("form");
this.showCascader = false;
this.cascaderValue = []; // 重置 cascaderValue
},
......@@ -689,25 +700,76 @@ export default {
this.title = "修改地质简介地层及岩性描述数据";
});
},
/** 提交按钮 */
submitForm() {
// 同时校验基本信息表单与参数表单
const validateMain = () => new Promise(resolve => {
if (this.$refs.mainForm) {
this.$refs.mainForm.validate(valid => resolve(valid));
} else {
resolve(true);
}
/** 计算参数按钮操作 */
handleCalcParams(row) {
this.currentRow = row;
const jh = row.jh || this.ids;
const sjdjsd = row.sjdjsd;
getJsbb({ jh: jh, sjdjsd: sjdjsd }).then(response => {
// 初始化计算参数表单,只包含计算参数相关的字段
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;
});
const validateParam = () => new Promise(resolve => {
if (this.$refs.paramForm) {
this.$refs.paramForm.validate(valid => resolve(valid));
} else {
resolve(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();
});
}
});
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) {
updateJsbb(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
......
......@@ -111,9 +111,9 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="12">
<el-form-item label="钻头设计型号" prop="ztsjxh">
<el-input v-model="form.ztsjxh" />
<el-input v-model="form.ztsjxh" />
</el-form-item>
</el-col>
</el-row>
......@@ -276,6 +276,17 @@
</el-form-item>
</el-collapse-item> -->
</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>
<span slot="footer" class="dialog-footer dialog-footer-strong">
<el-button @click="dialogVisible = false">取 消</el-button>
......@@ -284,7 +295,7 @@
</div>
</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="basic-info">
......@@ -398,6 +409,22 @@
</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>
<span slot="footer" class="dialog-footer">
<el-button @click="detailVisible = false">关闭</el-button>
......@@ -651,7 +678,14 @@ export default {
],
// 表格高度,保证超出后出现滚动条
tableHeight: 400,
cjData:[]
cjData: [],
// 图片上传相关
imageUploadUrl: process.env.VUE_APP_BASE_API + "/common/upload",
imageUploadHeaders: {
Authorization: "Bearer " + getToken()
},
imageFileList: [], // 详情弹窗的图片列表(只读)
formImageFileList: [] // 新增/编辑弹窗的图片列表
}
},
async mounted() {
......@@ -737,8 +771,11 @@ export default {
tzdm01: '', tzdm02: '', tzdm03: '', tzdm04: '', tzdm05: '', tzdm06: '',
tzxl01: '', tzxl02: '', tzxl03: '', tzxl04: '', tzxl05: '', tzxl06: '',
slt01: '', slt02: '', slt03: '', slt04: '', slt05: '', slt06: '',
t01: '', t02: '', t03: '', t04: '', t05: '', t06: ''
t01: '', t02: '', t03: '', t04: '', t05: '', t06: '',
fileList: []
};
// 清空图片列表
this.formImageFileList = [];
},
onReset() {
this.queryParams = {
......@@ -777,8 +814,29 @@ export default {
]);
// 查找每个参数
this.detailParams = this.getDetailFeatureList();
// 初始化图片列表
this.initImageFileList();
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) {
const item = options.find(opt => opt.id === id);
return {
......@@ -849,6 +907,8 @@ export default {
getZtxxJcxx(id).then(response => {
this.form = response.data;
console.log(this.form, 'this.form');
// 初始化图片列表
this.initFormImageFileList();
this.openDialog();
this.title = "修改钻头基础信息";
});
......@@ -915,7 +975,16 @@ export default {
// 打印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 saveData = { ...this.form };
......@@ -954,6 +1023,8 @@ export default {
if (this.$refs.formRef) {
this.$refs.formRef.resetFields();
}
// 清空图片列表
this.formImageFileList = [];
},
handleGblkChange(value) {
if (value === '双圆弧') {
......@@ -1053,13 +1124,126 @@ export default {
}
});
},
/** 查询厂家信息列表 */
/** 查询厂家信息列表 */
getCjList() {
this.loading = true;
selctListZtxxCj({}).then(response => {
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>
......@@ -1439,4 +1623,94 @@ export default {
::v-deep .el-form-item {
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>
\ No newline at end of file
......@@ -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="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" 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">
<el-button size="mini" type="text" icon="el-icon-edit"
@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"
@click="handleDelete(scope.row)">删除</el-button>
</template>
......@@ -105,8 +107,15 @@
</el-col>
</el-row>
</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">
<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-col :span="3" class="title-col">
......@@ -116,17 +125,17 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -139,7 +148,7 @@
</el-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -152,12 +161,12 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -170,17 +179,17 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -194,17 +203,17 @@
</el-col>
<!-- <el-col :span="7">
<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-col> -->
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -220,27 +229,27 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<!-- <el-col :span="4">
<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-col>
<el-col :span="4">
<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-col> -->
</el-row>
......@@ -254,27 +263,27 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
<!-- <el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col> -->
</el-row>
......@@ -288,7 +297,7 @@
</el-col>
<el-col :span="7">
<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-col>
......@@ -305,27 +314,27 @@
</el-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
</el-row> -->
......@@ -340,27 +349,27 @@
</el-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
</el-row> -->
......@@ -374,27 +383,27 @@
</el-col>
<el-col :span="7">
<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-col>
<!-- <el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col>
<el-col :span="4">
<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-col> -->
</el-row>
......@@ -407,12 +416,12 @@
</el-col>
<el-col :span="7">
<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-col>
<el-col :span="7">
<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-col>
</el-row>
......@@ -421,8 +430,8 @@
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
<el-button type="primary" @click="submitCalcParams">确 定</el-button>
<el-button @click="cancelCalcParams">取 消</el-button>
</div>
</el-dialog>
</div>
......@@ -451,6 +460,12 @@ export default {
jsbbList: [],
title: "",
open: false,
// 是否显示计算参数弹出层
calcParamsOpen: false,
// 当前操作的行数据
currentRow: null,
// 计算参数表单
calcParamsForm: {},
isAdd: false,
showCascader: false,
mdcOptions: [],
......@@ -619,9 +634,8 @@ export default {
ztxxzsa1: 1,
ztxxzsa2: 1.25
};
// 重置两块表单的校验状态
// 重置表单的校验状态
this.resetForm && this.resetForm("mainForm");
this.resetForm && this.resetForm("paramForm");
this.showCascader = false;
this.cascaderValue = [];
},
......@@ -660,24 +674,75 @@ export default {
this.title = "修改地层数据";
});
},
submitForm() {
const validateMain = () => new Promise(resolve => {
if (this.$refs.mainForm) {
this.$refs.mainForm.validate(valid => resolve(valid));
} else {
resolve(true);
}
/** 计算参数按钮操作 */
handleCalcParams(row) {
this.currentRow = row;
const id = row.id || this.ids;
getSjJsbb(id).then(response => {
// 初始化计算参数表单,只包含计算参数相关的字段
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;
});
const validateParam = () => new Promise(resolve => {
if (this.$refs.paramForm) {
this.$refs.paramForm.validate(valid => resolve(valid));
} else {
resolve(true);
},
/** 提交计算参数 */
submitCalcParams() {
this.$refs.calcParamsForm.validate(valid => {
if (valid) {
// 合并计算参数到完整表单数据
const updateData = {
...this.calcParamsForm
};
updateSjJsbb(updateData).then(() => {
this.$modal.msgSuccess("计算参数保存成功");
this.calcParamsOpen = false;
this.getList();
});
}
});
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) {
updateSjJsbb(this.form).then(() => {
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