|
@@ -225,6 +225,7 @@
|
|
|
:placeholder="$t('CustomAnalysisPage.select_date_numerical')"
|
|
|
style="width: 180px"
|
|
|
@focus="handleChooseInput(item.tag+'_valueSerial')"
|
|
|
+ @change="handleValInputChange"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item :label="$t('Table.edb_name')">
|
|
@@ -369,7 +370,7 @@
|
|
|
<!-- 添加指标按钮 -->
|
|
|
<div
|
|
|
class="add-edb-btn"
|
|
|
- style="color: #0052d9; cursor: pointer"
|
|
|
+ style="color: #0052d9; cursor: pointer;display:inline-block"
|
|
|
@click="handleAddEdb"
|
|
|
v-if="formData.chartType !== 2"
|
|
|
>
|
|
@@ -537,8 +538,55 @@ export default {
|
|
|
this.updateLimit()
|
|
|
},
|
|
|
|
|
|
+ // 手动输入数值序列改变
|
|
|
+ handleValInputChange(str){
|
|
|
+ console.log('数值序列改变',str);
|
|
|
+ // 正则表达式模式,确保格式正确且感叹号后面有两个$,冒号前后各两个$
|
|
|
+ const formatPattern = /^.*!\$[A-Z0-9]+\$[A-Z0-9]+:\$[A-Z0-9]+\$[A-Z0-9]/;
|
|
|
+ // 检查字符串是否符合格式要求
|
|
|
+ if (formatPattern.test(str)) {
|
|
|
+ // 正则表达式模式,用于提取美元符号后的值
|
|
|
+ let extractPattern = /\$([A-Z0-9]+)/g;
|
|
|
+
|
|
|
+ // 存储匹配结果的数组
|
|
|
+ let matches = [];
|
|
|
+ let match;
|
|
|
+
|
|
|
+ // 使用正则表达式的exec方法来找到所有匹配
|
|
|
+ while ((match = extractPattern.exec(str)) !== null) {
|
|
|
+ // 将匹配的字符数字转换为数字类型并存储
|
|
|
+ let value = match[1];
|
|
|
+ if (!isNaN(value)) {
|
|
|
+ matches.push(Number(value));
|
|
|
+ } else {
|
|
|
+ matches.push(value); // 保留非数字值(如字母)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 获取出开始和结束单元格序号
|
|
|
+ let start={
|
|
|
+ col:0,
|
|
|
+ row:0
|
|
|
+ },
|
|
|
+ end={
|
|
|
+ col:0,
|
|
|
+ row:0
|
|
|
+ };
|
|
|
+ start.col=this.$parent.columnHeader.findIndex(_e=>_e===matches[0])
|
|
|
+ start.row=matches[1]-1
|
|
|
+ end.col=this.$parent.columnHeader.findIndex(_e=>_e===matches[2])
|
|
|
+ end.row=matches[3]-1
|
|
|
+ this.tableSelect(start,end,str)
|
|
|
+
|
|
|
+ } else {
|
|
|
+ console.log("字符串格式不符合要求");
|
|
|
+ this.$message.warning('格式不合法')
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
// 选中的序列
|
|
|
tableSelect(start,end,str){
|
|
|
+ console.log(start,end,str);
|
|
|
if(this.selectInput){
|
|
|
// 如果选择的不是同行或者同列
|
|
|
if(!(start.col==end.col||start.row==end.row)){
|
|
@@ -594,7 +642,7 @@ export default {
|
|
|
let numArr=[]
|
|
|
// 判断是选择的同行还是同列
|
|
|
if(start.col===end.col&&start.row!=end.row){//同列
|
|
|
- for (let index = start.row; index < data.length; index++) {
|
|
|
+ for (let index = start.row; index < end.row; index++) {
|
|
|
numArr.push(data[index][start.col].ShowValue)
|
|
|
}
|
|
|
}
|