wangting
2025-01-14 59ff9baa407775998954f271f7ed2cde8db01a26
Source/plt-web/plt-web-ui/src/views/modelingMenu/queryTemplate/linkTypeQuery/formQueryDialog.vue
@@ -13,18 +13,18 @@
              style="width: 32%;display: inline-block;text-align: right;word-break: break-all">{{ condition.clause }}</span>
        <avue-select v-model="condition.operator" :clearable="false" :dic="condition.operatorDic" :disabled="readOnly"
                     style="width: 80px;margin: 0 5px;" type="tree"></avue-select>
        <!--<el-date-picker v-if="condition.type=='VTDate'" v-model="condition.ordinaryValue" :disabled="readOnly"
                        style="width:300px;margin-right: 5px;display: inline-block;" type="date"
        <el-date-picker v-if="condition.type=='VTDate'" v-model="condition.ordinaryValue" :disabled="readOnly"
                        style="width:36%;margin-right: 5px;display: inline-block;" type="date"
                        value-format="YYYY-MM-DD">
        </el-date-picker>
        <el-date-picker v-else-if="condition.type=='VTDateTime'" v-model="condition.ordinaryValue" :disabled="readOnly"
                        style="width:300px;margin-right: 5px;display: inline-block;"
                        style="width:36%;margin-right: 5px;display: inline-block;"
                        type="datetime">
        </el-date-picker>
        <el-time-select v-else-if="condition.type=='VTTime'" v-model="condition.ordinaryValue" :disabled="readOnly"
                        style="width:300px;margin-right: 5px;display: inline-block;" value-format="HH:mm:ss">
                        style="width:36%;margin-right: 5px;display: inline-block;" value-format="HH:mm:ss">
        </el-time-select>
        <avue-input-number v-else-if="condition.type=='VTInteger'" v-model="condition.ordinaryValue"
        <!--<avue-input-number v-else-if="condition.type=='VTInteger'" v-model="condition.ordinaryValue"
                           :disabled="readOnly"
                           precision="0"
                           style="width:300px;margin-right: 5px;display: inline-block;"></avue-input-number>
@@ -34,7 +34,7 @@
                           style="width:300px;margin-right: 5px;display: inline-block;"></avue-input-number>
        <avue-input v-else v-model="condition.ordinaryValue" :disabled="readOnly" placeholder=""
                    style="width: 300px;margin-right: 5px;"></avue-input>-->
        <avue-input v-model="condition.ordinaryValue" :disabled="readOnly" placeholder=""
        <avue-input v-else v-model="condition.ordinaryValue" :disabled="readOnly" placeholder=""
                    style="width: 36%;margin-right: 5px;"></avue-input>
        <el-button v-if="!readOnly" plain size="mini" type="primary" @click="checkTemp(index)">选择查询模板</el-button>
        <el-button v-if="!readOnly" icon="el-icon-delete" size="mini" style="padding: 7px 8px" type="danger"
@@ -49,11 +49,11 @@
                 @node-click="nodeClick"></avue-tree>
    </div>
    <div v-if="!readOnly" style="text-align: right;margin-top: 10px;">
      <el-button v-if="radioForm==1" plain size="mini" type="primary" @click="addHandler">增加逻辑</el-button>
      <el-button v-if="radioForm==1" plain size="mini" type="primary" @click="editHandler">修改条件</el-button>
      <el-button v-if="radioForm==1" plain size="mini" type="primary" @click="delHandler">删除</el-button>
      <el-button v-show="radioForm==1" plain size="mini" type="primary" @click="addHandler">增加逻辑</el-button>
      <el-button v-show="radioForm==1" plain size="mini" type="primary" @click="editHandler">修改条件</el-button>
      <el-button v-show="radioForm==1" plain size="mini" type="primary" @click="delHandler">删除</el-button>
      <el-button plain size="mini" type="primary" @click="queryHandler">查询</el-button>
      <el-button plain size="mini" type="primary" @click="">取消</el-button>
      <!--<el-button plain size="mini" type="primary" @click="">取消</el-button>-->
    </div>
    <!--修改条件-->
@@ -155,7 +155,6 @@
<script>
import basicOption from "@/util/basic-option";
import {getAllQTs} from "@/api/queryTemplate/queryDefine";
import {getCriteria} from "@/api/queryTemplate/linkTypeQuery";
import {dateFormat} from "@/util/date"
export default {
@@ -364,23 +363,30 @@
          let list = [];
          let that = this;
          let getValue = function (queryTemplate, item) {
            for (let key in queryTemplate.condition.cIMap) {
              if (queryTemplate.condition.cIMap[key].leaf) {
                item.clause += '.' + queryTemplate.condition.cIMap[key].leafInfo.clause;
                if (queryTemplate.condition.cIMap[key].leafInfo.value.queryTemplate) {
                  getValue(queryTemplate.condition.cIMap[key].leafInfo.value.queryTemplate, item)
                } else {
                  //item.ordinaryValue = queryTemplate.condition.cIMap[key].leafInfo.value.ordinaryValue;
                  item.type = queryTemplate.condition.cIMap[key].leafInfo.type;
                  if (['VTInteger', 'VTDouble', 'VTLong'].includes(item.type)) {
                    item.operatorDic = that.operatorIntDic;
                  } else if (['VTDateTime', 'VTDate', 'VTTime'].includes(item.type)) {
                    item.operatorDic = that.operatorDateDic;
            if(queryTemplate.id.indexOf('qt_')==0){
              item.clause += '.' + queryTemplate.condition.cIMap['ci1'].leafInfo.clause;
              item.ordinaryValue = queryTemplate.condition.cIMap['ci1'].leafInfo.value.ordinaryValue;
              item.type = queryTemplate.condition.cIMap['ci1'].leafInfo.type;
            }else {
              item.ordinaryValue = queryTemplate.id+';'+queryTemplate.clauseList.join(',');
              /*for (let key in queryTemplate.condition.cIMap) {
                if (queryTemplate.condition.cIMap[key].leaf) {
                  item.clause += '.' + queryTemplate.condition.cIMap[key].leafInfo.clause;
                  if (queryTemplate.condition.cIMap[key].leafInfo.value.queryTemplate) {
                    getValue(queryTemplate.condition.cIMap[key].leafInfo.value.queryTemplate, item)
                  } else {
                    item.operatorDic = that.operatorDic;
                    item.ordinaryValue = queryTemplate.condition.cIMap[key].leafInfo.value.ordinaryValue;
                    item.type = queryTemplate.condition.cIMap[key].leafInfo.type;
                  }
                }
              }
              }*/
            }
            if (['VTInteger', 'VTDouble', 'VTLong'].includes(item.type)) {
              item.operatorDic = that.operatorIntDic;
            } else if (['VTDateTime', 'VTDate', 'VTTime'].includes(item.type)) {
              item.operatorDic = that.operatorDateDic;
            } else {
              item.operatorDic = that.operatorDic;
            }
          }
          for (let key in val.cIMap) {
@@ -394,19 +400,7 @@
                operatorDic: []
              }
              if (this.queryCondition.cIMap[key].leafInfo.value.queryTemplate) {
                item.ordinaryValue = this.queryCondition.cIMap[key].leafInfo.value.queryTemplate.id+';'+this.queryCondition.cIMap[key].leafInfo.value.queryTemplate.clauseList.join(',');
                if(this.queryCondition.cIMap[key].leafInfo.value.queryTemplate.id.indexOf('qt_')==0){
                  getValue(this.queryCondition.cIMap[key].leafInfo.value.queryTemplate, item)
                }else {
                  item.type = this.queryCondition.cIMap[key].leafInfo.type;
                  if (['VTInteger', 'VTDouble', 'VTLong'].includes(item.type)) {
                    item.operatorDic = that.operatorIntDic;
                  } else if (['VTDateTime', 'VTDate', 'VTTime'].includes(item.type)) {
                    item.operatorDic = that.operatorDateDic;
                  } else {
                    item.operatorDic = that.operatorDic;
                  }
                }
              } else {
                item.ordinaryValue = this.queryCondition.cIMap[key].leafInfo.value.ordinaryValue;
                item.type = this.queryCondition.cIMap[key].leafInfo.type;
@@ -511,7 +505,9 @@
    }
  },
  created() {
    this.getTemp();
    if (!this.readOnly) {
      this.getTemp();
    }
  },
  methods: {
    // 拖拽到时
@@ -686,7 +682,8 @@
    //选择查询模板
    checkTemp(index) {
      if (index >= 0) {
        if (['VTInteger', 'VTDouble', 'VTLong', 'VTDateTime', 'VTDate', 'VTTime'].includes(this.conditionList[index].type)) {
        if (['VTDateTime', 'VTDate', 'VTTime'].includes(this.conditionList[index].type)) {
          this.$message.warning("该属性类型不能选择查询模板");
          return false;
        }
      }