| | |
| | | FILTER_MODE_OPTIONS_NUM, |
| | | FILTER_MODE_OPTIONS_BOOL |
| | | } from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions'; |
| | | // å¼å
¥å
Œ
±è¡¨åå·¥å
·æä»¶ |
| | | import { collectFormDataForHighQuery,onResetForHighSelect,onResetForHighQuery } from '@/utils/myformUtils'; |
| | | import { |
| | | BOOLEAN_OPTIONS |
| | | } from '@/utils/commonOptionConstants'; |
| | |
| | | const check = isEqual(initiateData.value, data) |
| | | return check |
| | | } |
| | | const commonGetFormData=()=>{ |
| | | const data = { |
| | | $Save_PageAddFormAttributes_Query$ |
| | | /** |
| | | * è·åè¡¨åæ°æ® - ä¼åç |
| | | */ |
| | | const commonGetFormData = () => { |
| | | const data = {}; |
| | | |
| | | // éå表åé
ç½®æ¶éæ°æ® |
| | | formItems.forEach(item => { |
| | | // æ¶éåºç¡å段 |
| | | data[item.prop] = formData.value[item.prop] || ''; |
| | | |
| | | // æ¶éè¿æ»¤æ¨¡å¼å段 |
| | | if (item.highSelectAttrs && item.highSelectAttrs.prop) { |
| | | const filterModeProp = item.highSelectAttrs.prop; |
| | | data[filterModeProp] = formData.value[filterModeProp] || ''; |
| | | } |
| | | return data; |
| | | } |
| | | }); |
| | | |
| | | return data; |
| | | } |
| | | const onClose = (done: () => void) => { |
| | | if (visible.value) { |
| | | visible.value = false |
| | | const data =commonGetFormData(); |
| | | const data =collectFormDataForHighQuery(formItems,formData); |
| | | ctx.emit('close', data) |
| | | } |
| | | } |
| | |
| | | * 确认æ¥è¯¢ |
| | | */ |
| | | const onConfirmQuery = async () => { |
| | | const data =commonGetFormData(); |
| | | const data =collectFormDataForHighQuery(formItems,formData); |
| | | ctx.emit('confirmQuery', data) |
| | | } |
| | | /** |
| | | * éç½®å
Œ
±selectæ¥è¯¢ |
| | | */ |
| | | const onResetForHighSelect = () => { |
| | | // éåææè¡¨ååæ®µ |
| | | formItems.forEach(item => { |
| | | // æ£æ¥å段æ¯å¦æé«çº§æ¥è¯¢çè¿æ»¤æ¨¡å¼é
ç½® |
| | | if (item.highSelectAttrs && item.highSelectAttrs.prop) { |
| | | const filterModeProp = item.highSelectAttrs.prop; |
| | | const options = item.highSelectAttrs.options || []; |
| | | |
| | | // 妿åå¨é项ï¼å设置为第ä¸ä¸ªé项çå¼ |
| | | if (options.length > 0) { |
| | | // å设éé¡¹æ ¼å¼ä¸º { value, label } æç±»ä¼¼ç»æ |
| | | const firstValue = options[0].value !== undefined ? options[0].value : options[0]; |
| | | formData.value[filterModeProp] = firstValue; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | /** |
| | | * éç½®æ¥è¯¢ - ä¼åç |
| | | */ |
| | | const onReset = async () => { |
| | | // 1. æ¸
空ææåºç¡å段ï¼ä¸å
å«è¿æ»¤æ¨¡å¼åæ®µï¼ |
| | | const baseFields = formItems.reduce((acc, item) => { |
| | | acc[item.prop] = ''; |
| | | return acc; |
| | | }, {}); |
| | | // 1. æ¸
空ææåºç¡å段ï¼ä¸å
å«è¿æ»¤æ¨¡å¼å段ï¼,åºç¨åºç¡å段åå§å¼ |
| | | onResetForHighQuery(formItems,formData); |
| | | |
| | | // 2. åºç¨åºç¡å段åå§å¼ |
| | | formData.value = { ...baseFields }; |
| | | // 2. 使ç¨åææ¹æ³éç½®è¿æ»¤æ¨¡å¼å段 |
| | | onResetForHighSelect(); |
| | | |
| | | // 3. 使ç¨åææ¹æ³éç½®è¿æ»¤æ¨¡å¼å段 |
| | | onResetForHighSelect(); // ä¿çåææ¹æ³è°ç¨ |
| | | |
| | | // 4. åç¶ç»ä»¶åéèªå®ä¹äºä»¶ |
| | | // 3. åç¶ç»ä»¶åéèªå®ä¹äºä»¶ |
| | | ctx.emit('restQuery'); |
| | | } |
| | | |