bug修复

This commit is contained in:
jjLv 2024-09-30 12:25:57 +08:00
parent f09329592c
commit 1b30c098b9
5 changed files with 547 additions and 56 deletions

View File

@ -18,13 +18,27 @@
filterable filterable
placeholder="请选择" placeholder="请选择"
@change="departChange" @change="departChange"
:popper-append-to-body="false"
> >
<el-option <el-option
v-for="item in departRange" v-for="item in departRange"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
/> >
<template
v-if="item.label.length > maxlength">
<el-tooltip
class="item-tooltip"
effect="dark"
:content="item.label"
placement="top"
>
<span class="ellipsis">{{ item.label }}</span>
</el-tooltip>
</template>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -212,6 +226,7 @@ export default {
}, },
], ],
}, },
maxlength:20,
// //
departRange: [], departRange: [],
projRange: [], projRange: [],
@ -270,21 +285,27 @@ export default {
value: item.id, value: item.id,
}; };
}); });
//
let projRes = await queryProjApi({
isAll: 0,
});
this.projRange = projRes.data.map((item) => {
return {
label: item.proName,
value: item.id,
};
});
}, },
departChange(e) { departChange(e) {
this.departRange.forEach((item) => { this.departRange.forEach((item) => {
if (e === item.value) { if (e === item.value) {
this.projectParams.departName = item.label; this.projectParams.departName = item.label;
console.log(1111)
//
let projRes = queryProjApi({
isAll: 0,
departId: e,
}).then(projRes =>{
console.log(projRes)
this.projRange = projRes.data.map((item) => {
return {
label: item.proName,
value: item.id,
};
});
console.log(22222)
})
} }
}); });
}, },
@ -332,6 +353,15 @@ export default {
</script> </script>
<style scoped> <style scoped>
.ellipsis {
display: block; /* 确保是块级元素 */
white-space: nowrap; /* 防止换行 */
overflow: hidden; /* 隐藏超出的部分 */
text-overflow: ellipsis; /* 显示省略号 */
max-width: 400px; /* 设置最大宽度,调整为你需要的值 */
}
::v-deep .el-select { ::v-deep .el-select {
width: 100%; width: 100%;
} }

View File

@ -35,13 +35,29 @@
filterable filterable
placeholder="请选择" placeholder="请选择"
@change="departChange" @change="departChange"
class="custom-select"
:popper-append-to-body="false"
> >
<el-option <el-option
v-for="item in deptRange" v-for="item in deptRange"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
/> >
<template
v-if="item.label.length > maxlength">
<el-tooltip
class="item-tooltip"
effect="dark"
:content="item.label"
placement="top"
>
<span class="ellipsis">{{ item.label }}</span>
</el-tooltip>
</template>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -181,6 +197,7 @@ export default {
}, },
data() { data() {
return { return {
maxlength: 20,
subSort: '', // 1 / 2 subSort: '', // 1 / 2
projectParams: { projectParams: {
proName: undefined, // proName: undefined, //
@ -446,6 +463,22 @@ export default {
::v-deep .el-select { ::v-deep .el-select {
width: 100%; width: 100%;
} }
/* .custom-select .el-select-dropdown__item{
max-width: 400px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} */
.ellipsis {
display: block; /* 确保是块级元素 */
white-space: nowrap; /* 防止换行 */
overflow: hidden; /* 隐藏超出的部分 */
text-overflow: ellipsis; /* 显示省略号 */
max-width: 400px; /* 设置最大宽度,调整为你需要的值 */
}
::v-deep .el-form-item__label{ ::v-deep .el-form-item__label{
font-weight: normal; font-weight: normal;
} }

View File

@ -41,12 +41,16 @@
> >
</template> </template>
<template slot="powerTotal" slot-scope="{ data }"> <template slot="powerTotal" slot-scope="{ data }">
<span
<span v-if="data.proTypeName==='线路工程'"
style="color: #0060EE; font-weight: bold; cursor: pointer" style="color: #0060EE; font-weight: bold; cursor: pointer"
@click="handleTower(data)" @click="handleTower(data)"
> >
{{ data.powerTotal }} {{ data.powerTotal }}
</span> </span>
<span v-else>
-
</span>
</template> </template>
</TableModel> </TableModel>

View File

@ -325,90 +325,303 @@ export default {
{ {
required: true, required: true,
message: '请输入温度阈值', message: '请输入温度阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入温度阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入温度阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
configVal1Max: [ configVal1Max: [
{ {
required: true, required: true,
message: '请输入温度阈值', message: '请输入温度阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入温度阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入温度阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
configVal2Min: [ configVal2Min: [
{ {
required: true, required: true,
message: '请输入湿度阈值', message: '请输入湿度阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
// '0000' '000.000000'
if (value !== valueTemp.toString() || valueTemp.toString() === "0") {
return callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
}
if(valueTemp.toString().includes('.')==true){
if (valueTemp < 0 || valueTemp > 100 ||valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}else{
if (valueTemp < 0 || valueTemp > 100) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}
trigger: 'blur'
}
}
], ],
configVal2Max: [ configVal2Max: [
{ {
required: true, required: true,
message: '请输入湿度阈值', message: '请输入湿度阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp < 0 || valueTemp > 100 ||valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}else{
if (valueTemp < 0 || valueTemp > 100) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}
trigger: 'blur'
}
}
], ],
configVal3Min: [ configVal3Min: [
{ {
required: true, required: true,
message: '请输入噪声阈值', message: '请输入噪声阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入噪声阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入噪声阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
configVal3Max: [ configVal3Max: [
{ {
required: true, required: true,
message: '请输入噪声阈值', message: '请输入噪声阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入噪声阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入噪声阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
configVal4Min: [ configVal4Min: [
{ {
required: true, required: true,
message: '请输入PM2.5阈值', message: '请输入PM2.5阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入PM2.5阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入PM2.5阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
configVal4Max: [ configVal4Max: [
{ {
required: true, required: true,
message: '请输入PM2.5阈值', message: '请输入PM2.5阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入PM2.5阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入PM2.5阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
configVal5Min: [ configVal5Min: [
{ {
required: true, required: true,
message: '请输入PM10阈值', message: '请输入PM10阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入PM10阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入PM10阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
configVal5Max: [ configVal5Max: [
{ {
required: true, required: true,
message: '请输入PM10阈值', message: '请输入PM10阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请正确输入PM10阈值(小数点后最多保留六位)'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请正确输入PM10阈值(小数点后最多保留六位)'));
} else {
callback();
}
}else{
callback();
}
},
trigger: 'blur'
}
], ],
}, },
projectParams2Rules: { projectParams2Rules: {
@ -423,19 +636,47 @@ export default {
{ {
required: true, required: true,
message: '请输入倾角阈值', message: '请输入倾角阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入0~90的数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value) && value <= 90) {
callback(new Error('请必须输入0~90的数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
configVal1Max: [ configVal1Max: [
{ {
required: true, required: true,
message: '请输入倾角阈值', message: '请输入倾角阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入0~90的数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value) && value <= 90) {
callback(new Error('请必须输入0~90的数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
}, },
projectParams3Rules: { projectParams3Rules: {
@ -450,19 +691,47 @@ export default {
{ {
required: true, required: true,
message: '请输入拉力阈值', message: '请输入拉力阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入非负数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value)) {
callback(new Error('请必须输入非负数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
configVal1Max: [ configVal1Max: [
{ {
required: true, required: true,
message: '请输入拉力阈值', message: '请输入拉力阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入非负数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value)) {
callback(new Error('请必须输入非负数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
}, },
projectParams4Rules: { projectParams4Rules: {
@ -477,73 +746,225 @@ export default {
{ {
required: true, required: true,
message: '请输入含氧量阈值', message: '请输入含氧量阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp < 0 || valueTemp > 100 ||valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}else{
if (valueTemp < 0 || valueTemp > 100) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}
trigger: 'blur'
}
}
], ],
configVal1Max: [ configVal1Max: [
{ {
required: true, required: true,
message: '请输入含氧量阈值', message: '请输入含氧量阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp < 0 || valueTemp > 100 ||valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}else{
if (valueTemp < 0 || valueTemp > 100) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}
trigger: 'blur'
}
}
], ],
configVal2Min: [ configVal2Min: [
{ {
required: true, required: true,
message: '请输入一氧化碳阈值', message: '请输入一氧化碳阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入非负数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value)) {
callback(new Error('请必须输入非负数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
configVal2Max: [ configVal2Max: [
{ {
required: true, required: true,
message: '请输入一氧化碳阈值', message: '请输入一氧化碳阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入非负数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value)) {
callback(new Error('请必须输入非负数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
configVal3Min: [ configVal3Min: [
{ {
required: true, required: true,
message: '请输入可燃气体阈值', message: '请输入可燃气体阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp < 0 || valueTemp > 100 ||valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}else{
if (valueTemp < 0 || valueTemp > 100) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}
},
trigger: 'blur'
}
], ],
configVal3Max: [ configVal3Max: [
{ {
required: true, required: true,
message: '请输入可燃气体阈值', message: '请输入可燃气体阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
}
const regexTwo = /^[+-]?(\d+(\.\d*)?|\.\d*[1-9]\d*)$/;
if(!regexTwo.test(value)){
return callback(new Error('请勿输入非数字'));
}
const valueTemp = parseFloat(value);
if(valueTemp.toString().includes('.')==true){
if (valueTemp < 0 || valueTemp > 100 ||valueTemp.toString().split(".")[1].length>6) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}else{
if (valueTemp < 0 || valueTemp > 100) {
callback(new Error('请输入0~100内的数据且小数点后最多保留六位'));
} else {
callback();
}
}
},
trigger: 'blur'
}
], ],
configVal4Min: [ configVal4Min: [
{ {
required: true, required: true,
message: '请输入硫化氢阈值', message: '请输入硫化氢阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入非负数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value)) {
callback(new Error('请必须输入非负数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
configVal4Max: [ configVal4Max: [
{ {
required: true, required: true,
message: '请输入硫化氢阈值', message: '请输入硫化氢阈值',
validator: this.validateNum,
trigger: 'blur', trigger: 'blur',
}, },
{
validator: (rule, value, callback) => {
if (value === '' || value === null) {
return callback(new Error('请必须输入非负数'));
}
// const numValue = value.trim();
//
const integerPattern = /^(0|[1-9]\d*(\.\d+)?|0\.\d+)$/;
if (!integerPattern.test(value)) {
callback(new Error('请必须输入非负数'));
} else {
callback();
}
},
trigger: 'blur'
}
], ],
}, },
// //

View File

@ -169,6 +169,9 @@
<div class="bottom-info"> <div class="bottom-info">
版权所有权归国网电力工程技术研究院有限公司 版权所有权归国网电力工程技术研究院有限公司
<div>
版本v1.0
</div>
</div> </div>
</div> </div>
</template> </template>