schangxiang@126.com
2025-05-20 55f646920b4e394f4aa18cb98f2260c82d0ecff9
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Templete/Web/Views/Pages/EntityNameClass/EntityNameClassÄ£°å.txt
@@ -10,6 +10,7 @@
import { columns } from './Config'
import TdButton from '@/components/TdButton/TdButton'
import { vPermission } from '@/libs/Permission/Permission'
import dayjs from 'dayjs'
import {
  getWmsEnumData
} from '@/widgets/$EntityName$/Models/Service/$EntityName$Drawer'
@@ -22,6 +23,10 @@
  ElFormItem,
} from 'element-plus'
import { injectModel } from '@/libs/Provider/Provider'
// å¼•入公共选项配置
import {
  FILTER_MODE_OPTIONS_STRING
} from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions';
interface RenderTableType {
  url?: string
@@ -64,11 +69,7 @@
    //定义高级查询引用
   const $PageMenuInstanceName$QueryDrawerRef=ref(null);
    // æ–°å¢žçš„æŸ¥è¯¢æ¡ä»¶
    const queryForm = ref({
      searchVal: '',
      str_searchFormInputAttrs:[]
    })
    //定义整体模糊查询的列数组(注意:必须大小写跟后端的实体类属性名一致,否则会导致匹配不对的问题)
    const _searchFormInputAttrs = ref([
     $LikeQueryAttrs$
@@ -90,17 +91,24 @@
      }
    }
    // ç»„件挂载时获取枚举数据
    onMounted(() => {
      fetchEnumData()
    // ç»„件挂载时获取枚举数据
    onMounted(() => {
      fetchEnumData()
      resetQuery();
    })
    /*******************************************************[高级查询]开始********************************************************************************* */
    // æ–°å¢žçš„æŸ¥è¯¢æ¡ä»¶
    const queryForm = ref({
      searchVal: '',
      str_searchFormInputAttrs:[],
      searchVal_FilterMode:''
    })
    // å®šä¹‰å“åº”式查询数据
    const _curHighQueryData = ref({ searchVal: '',str_searchFormInputAttrs:[] });
    // å®šä¹‰å“åº”式查询数据
    const _curHighQueryData = ref({ searchVal: '',str_searchFormInputAttrs:[],searchVal_FilterMode:'' });
    // æ–°ç‰ˆçš„æŸ¥è¯¢æ–¹æ³•(主页面中的按钮【查询】)
    const handleQueryForMain = async () => {
      _curHighQueryData.value.searchVal = queryForm.value.searchVal;
      _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
      setValueForCurHighQueryData();
      tableRef.value.getList(_curHighQueryData.value)
    }
    // æ–°ç‰ˆçš„æŸ¥è¯¢æ–¹æ³•(高级查询中的按钮【查询】)
@@ -112,7 +120,15 @@
    // æ–°ç‰ˆçš„æŸ¥è¯¢é‡ç½®
    const resetQuery = () => {
      queryForm.value.searchVal = ''
      queryForm.value.searchVal_FilterMode = FILTER_MODE_OPTIONS_STRING[0]?.value || '';
      queryForm.value.str_searchFormInputAttrs=_searchFormInputAttrs.value;
      setValueForCurHighQueryData();
    }
    //给响应式查询数据赋值
    const setValueForCurHighQueryData=()=>{
      _curHighQueryData.value.searchVal = queryForm.value.searchVal;
      _curHighQueryData.value.searchVal_FilterMode = queryForm.value.searchVal_FilterMode;
      _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
    }
     //新版的导出方法
     const handleExport=()=>{
@@ -121,15 +137,12 @@
    // æ–°ç‰ˆçš„æŸ¥è¯¢å¼¹å‡ºæ¡†å…³é—­æ–¹æ³•
    const closeQuery = (extraParams={}) => {
      let filteredData = commonGetHighQueryForm(extraParams);
      console.log("closeQuery方法");
      console.log(filteredData);
      commonSaveCurHighQueryData(filteredData);
    }
    //保存查询值
    const commonSaveCurHighQueryData=(filteredData={})=>{
      _curHighQueryData.value = { ..._curHighQueryData.value, ...filteredData };
      _curHighQueryData.value.searchVal = queryForm.value.searchVal
      _curHighQueryData.value.str_searchFormInputAttrs =_searchFormInputAttrs.value;
      setValueForCurHighQueryData();
    }
     //获取高级查询弹出框的查询值
     const commonGetHighQueryForm=(extraParams={})=>{
@@ -142,10 +155,11 @@
      )
      //组合模糊查询
      filteredData.searchVal = queryForm.value.searchVal
      filteredData.searchVal_FilterMode = queryForm.value.searchVal_FilterMode
      filteredData.str_searchFormInputAttrs =_searchFormInputAttrs.value;
      return filteredData;
    }
    /*******************************************************[高级查询]结束********************************************************************************* */
    /**
     * @returns è¡¨æ ¼
@@ -183,6 +197,7 @@
            isHidePagination={isHidePagination}
            pageSize={20}
            v-slots={{
              $QueryTableListForBool$
              name: ({ row }: any) => {
                return row?.name ? (
                  <TdButton
@@ -239,7 +254,6 @@
              </IconButton>
              <el-divider direction="vertical" />
              <el-divider direction="vertical" />
              <el-upload
                v-permission="$PageMenuInstanceName$-import"
                name="file"
@@ -264,13 +278,35 @@
            </div>
            <ElFormItem style={{ marginTop: '15px' }}>
              <ElFormItem label="关键字">
                 <el-tooltip
                  class="box-item"
                  effect="dark"
                  content={searchFormInputAttrs_Placeholder.value}
                  placement="top-start"
                >
                <ElInput
                  v-model={queryForm.value.searchVal}
                  placeholder={searchFormInputAttrs_Placeholder.value}
                  clearable
                  class={styles.formItem}
                />
                </el-tooltip>
              </ElFormItem>
              <ElFormItem label="" style="width:100px;">
                   <ElSelect
                                v-model={queryForm.value.searchVal_FilterMode}
                                placeholder="请选择"
                                class={styles.formItem}
                              >
                                {FILTER_MODE_OPTIONS_STRING.map((option) => (
                                  <ElOption
                                    key={option.value}
                                    label={option.label}
                                    value={option.value}
                                  />
                                ))}
                              </ElSelect>
              </ElFormItem>
              <IconButton type="primary" icon="search" onClick={handleQueryForMain}>
                æŸ¥è¯¢
              </IconButton>