src/views/model/pre/item/MmPredictItemForm.vue
@@ -299,18 +299,16 @@
        </el-table-column>
        <el-table-column label="数据点" align="center">
          <template #default="scope">
            <el-select
            <el-select-v2
              v-model="scope.row.pointid"
              filterable
              :options="pointList || []"
              placeholder="请选择"
              :props="{value:'id',label:'pointName'}"
              clearable
              filterable
              @change="(value) => changeOutputPoint(value,scope.row)"
              placeholder="请选择">
              <el-option
                v-for="item in pointList"
                :key="item.id"
                :label="item.pointName"
                :value="item.id"/>
            </el-select>
              :fit-input-width="false"
            />
          </template>
        </el-table-column>
        <el-table-column label="是否累计" align="center" width="150px">
@@ -334,18 +332,16 @@
        </el-table-column>
        <el-table-column label="累计数据点" align="center">
          <template #default="scope">
            <el-select
            <el-select-v2
              v-model="scope.row.cumulpoint"
              :disabled="scope.row.iscumulant !== 1"
              filterable
              :options="pointList.filter(e => e.pointType === 'CUMULATE') || []"
              placeholder="请选择"
              :props="{value:'id',label:'pointName'}"
              clearable
              placeholder="请选择">
              <el-option
                v-for="item in pointList.filter(e => e.pointType === 'CUMULATE')"
                :key="item.id"
                :label="item.pointName"
                :value="item.id"/>
            </el-select>
              filterable
              :fit-input-width="false"
              :disabled="scope.row.iscumulant !== 1"
            />
          </template>
        </el-table-column>
        <el-table-column prop="" label="操作" width="80" align="center">
@@ -402,36 +398,24 @@
        </el-table-column>
        <el-table-column prop="" label="参数名称" align="center">
          <template #default="scope">
            <el-select v-if="scope.row.modelparamtype === 'NormalItem'"
            <el-select-v2 v-if="scope.row.modelparamtype === 'NormalItem'"
              v-model="scope.row.modelparamid"
              :options="modelparamListMap['NormalItem'] || []"
              placeholder="请选择"
              :props="{value:'value',label:'label',options:'children'}"
              clearable
              filterable
              @change="changeModelparam(scope.row)"
              style="width: 100%">
              <el-option-group
                v-for="group in modelparamListMap['NormalItem']"
                :key="group.value"
                :label="group.label"
              >
                <el-option
                  v-for="item in group.children"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                />
              </el-option-group>
            </el-select>
            <el-select v-else
              :fit-input-width="false"
            />
            <el-select-v2 v-else
              v-model="scope.row.modelparamid"
              :options="modelparamListMap[scope.row.modelparamtype] || []"
              placeholder="请选择"
              :props="{value:'id',label:'name'}"
              clearable
              filterable
              @change="changeModelparam(scope.row)"
              placeholder="请选择">
              <el-option
                v-for="(item, index) in modelparamListMap[scope.row.modelparamtype]"
                :key="index"
                :label="item.name"
                :value="item.id"/>
            </el-select>
              :fit-input-width="false"
            />
          </template>
        </el-table-column>
        <el-table-column prop="" label="参数长度" width="120" align="center">
@@ -565,7 +549,6 @@
const pointList = ref([])
const pointMap = ref({})
const modelparamListMap = ref({})
const modelparamMap = ref({})
const expressionList = ref([])
const fileList = ref([])
const operatorList = ['+', '-']
@@ -732,18 +715,30 @@
      return
    }
    let flag = false
    dataForm.value.mmItemOutputList.forEach(e => {
      if (e.resultstr == undefined || e.resultstr === '' || e.resultType == undefined || e.resultType === ''
        || (e.resultType === 2 && (e.resultIndex == undefined || e.resultIndex === ''))
        || (e.iscumulant === 1 && e.cumuldivisor == undefined)
      ) {
        message.error("模型输出数据异常")
        flag = true
        return
        message.error("输出数据异常")
        throw new Error('输出数据异常');
      }
    })
    if (flag) return
    //校验模型输入
    dataForm.value.mmModelParamList.forEach(e => {
      if (e.modelparamid == undefined || e.modelparamid == '') {
        message.error("输入数据异常")
        throw new Error('输入数据异常');
      }
      // ind_ascii类型输出的序号必须是1,且所在端口序号最大为1(一个ind_ascii类型输入独占一个端口)
      if (e.modelparamtype === 'IND_ASCII') {
        if (e.modelparamorder != 1 || dataForm.value.mmModelParamList.filter(p => p.modelparamportorder === e.modelparamportorder).length != 1) {
          message.error("输入数据异常:IND_ASCII类型输入独占一个端口")
          throw new Error('输入数据异常:IND_ASCII类型输入独占一个端口');
        }
      }
    })
  }
  if (dataForm.value.itemtypename === 'MergeItem') {
    if (expressionList.value == undefined || expressionList.value.length <= 1) {
@@ -761,7 +756,6 @@
    })
    if (flag) return
  }
  // 提交请求
  formLoading.value = true
@@ -910,10 +904,6 @@
}
function uploadModelError(file, err, fileList) {
}
function changeModelparam(row) {
  row.modelparamname = modelparamMap[row.modelparamid]
}
function changeItemtype(value) {