Source/UBCS-WEB/src/components/advanced-query/advancedQuery.vue
@@ -82,7 +82,7 @@ :value="searchFormArrays[index].fieldValue" :text="item.showField" :display="!item.hidden" @setReferValue="setReferValue"> @setReferValue="val=>setReferValue(val,index)"> </vci-web-refer> </div> </el-col> @@ -189,11 +189,18 @@ }, // 对话框内容渲染配置 options(){ this.initData(); } }, methods: { initData(){ // 将options配置赋值到data中的option中,避免深浅拷贝的问题所以需要转json之后再赋值 const data = JSON.stringify(this.options); this.initOptions = JSON.parse(data); //console.log(this.initOptions); if(this.initOptions.length > 0){ let array = []; this.initOptions.forEach((item,index) => { if(item.fieldType==='combox') { let enumCach = JSON.parse(localStorage.getItem(item.comboxKey)); @@ -211,7 +218,7 @@ showField: item.showField || item.field, field: item.field, placeholder: item.inputTip || '', options: Object.assign(item.referConfig,{width:'100%'}), options: Object.assign(item.referConfig,{width:"80%"}), }) //console.log(item.referConfigData.options); //console.log(item); @@ -229,26 +236,29 @@ } // console.log(conditions); this.$set(item,"conditions",conditions) let add = { queryField: String(item.queryField), condition: item.fieldType==='text' ? String("_like"):String("_equal"), fieldValue: item.fieldType==='truefalse' ? Boolean(false):String(''), } this.searchFormArrays.push(add) array.push(add) }); this.searchFormArrays = array; } //console.log(this.initOptions); //console.log(this.searchFormArrays); } }, methods: { /** 为参照类型时值选择之后的处理 */ setReferValue(data){ // if(data.field) { // } console.log(data); setReferValue(data,index){ // console.log(index); if(data.field) { this.searchFormArrays[index][data.fieldValue] = data.value || ''; this.initOptions[index][data.showField] = data.text || ''; } // console.log(this.initOptions[index][data.showField]); // console.log(data); }, // 属性切换时查询条件和查询值也需要对输入框进行切换 @@ -284,22 +294,7 @@ }, // 重置当前界面的输入框 resetInput(){ const data = JSON.stringify(this.options); this.initOptions = JSON.parse(data); if(this.initOptions.length > 0){ let array = []; this.initOptions.forEach((item,index) => { let add = { queryField: String(item.queryField), condition:item.fieldType=='text' ? String("_like"):String("_equal"), fieldValue: item.fieldType=='truefalse' ? Boolean(false):String(''), } array.push(add) }); this.searchFormArrays = array; } //console.log(this.initOptions); //console.log(this.searchFormArrays); this.initData(); }, // 恢复页面 recoverPage(){ @@ -395,6 +390,5 @@ .grid-content > .el-date-editor.el-input, .el-date-editor.el-input__inner{ width: 100%; } </style> Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue
@@ -6,6 +6,7 @@ top="0" class="avue-dialog avue-dialog--top" :width="referConfig.options.width|| '80%'"> <avue-crud :option="option" :table-loading="loading" :data="data" Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -1729,9 +1729,9 @@ String field = UBCSSqlKeyword.getColumn(key, "_like"); if (referFieldMap.containsKey(field)) { //说明还是参照里面的,我们默认这种情况下都是字符串吧,因为参照的属性不一定用的平台的属性池里的,所以大部分情况下,显示的属性都是字符串吧 return referFieldMap.get(field) + SPACE + "LIKE" + SPACE + "%" + value + "%)" + SPACE; return referFieldMap.get(field) + SPACE + "LIKE" + SPACE + "'%" + value + "%'" + SPACE; } else { return (field.contains(".") ? "" : "t.") + field + SPACE + "LIKE " + "%" + getStringValueInWhere(field, value, attrVOMap) + "%)" + SPACE; return (field.contains(".") ? "" : "t.") + field + SPACE + "LIKE " + "'%" + getStringValueInWhere(field, value, attrVOMap) + "%'" + SPACE; } } else if (key.endsWith("_notequal")) { String field = UBCSSqlKeyword.getColumn(key, "_notequal"); @@ -1849,9 +1849,9 @@ }else if(key.endsWith("_equal")) { String field = UBCSSqlKeyword.getColumn(key, "_equal"); if (referFieldMap.containsKey(field)) { return referFieldMap.get(field) + SPACE + "= " + value + SPACE; return referFieldMap.get(field) + SPACE + "= '" + value + "'" + SPACE; } else { return (field.contains(".") ? "" : "t.") + field + SPACE + "= " + getStringValueInWhere(field, value, attrVOMap) + SPACE; return (field.contains(".") ? "" : "t.") + field + SPACE + "= '" + getStringValueInWhere(field, value, attrVOMap) + "'" + SPACE; } }else { if (referFieldMap.containsKey(key)) { @@ -1914,7 +1914,7 @@ } if (field.contains(".") && attrVOMap != null && attrVOMap.containsKey(field.split("\\.")[0].toLowerCase(Locale.ROOT))) { //是参照 return "'" + value + "'"; return value; } else { return value; } @@ -1938,13 +1938,13 @@ || VciFieldTypeEnum.VTInteger.equals(fieldTypeEnum)) { return value; } else { return "'" + value + "'"; return value; } } else { if ((value.startsWith("(") && value.endsWith(")")) || (value.startsWith("'") && value.endsWith("'"))) { return value; } return "'" + value + "'"; return value; } }