wupengfei
6 天以前 0f8d8c435f53cd2e7d4243608745f0e6cb152289
apps/cMiniApp/src/pages/home/HomeQueryMenuView.vue
@@ -1,14 +1,22 @@
<template>
  <QueryMenuView @close="emit('close')">
  <QueryMenuView @close="handleReset" @confirm="emit('close')" cancelText="重置">
    <div class="home-query-menu-view">
      <QueryMenuItem title="结算方式">
        <ProRadio v-model="gender" :value-enum="GenderText" show-all-btn></ProRadio>
        <ProRadio
          v-model="query.settlementCycle"
          :value-enum="EnumSettlementCycleText"
          show-all-btn
        ></ProRadio>
      </QueryMenuItem>
      <QueryMenuItem title="员工福利">
        <ProRadio v-model="gender" :value-enum="GenderText" show-all-btn></ProRadio>
        <ProRadio v-model="query.benefitCodes" :value-enum="welfareList" show-all-btn></ProRadio>
      </QueryMenuItem>
      <QueryMenuItem title="性别要求">
        <ProRadio v-model="gender" :value-enum="GenderText" show-all-btn></ProRadio>
        <ProRadio
          v-model="query.genderLimit"
          :value-enum="EnumUserGenderText"
          show-all-btn
        ></ProRadio>
      </QueryMenuItem>
    </div>
  </QueryMenuView>
@@ -16,7 +24,13 @@
<script setup lang="ts">
import { QueryMenuView, QueryMenuItem, ProRadio } from '@12333/components';
import { GenderText } from '@12333/constants';
import {
  EnumUserGenderText,
  EnumSettlementCycle,
  CategoryCode,
  EnumSettlementCycleText,
} from '@12333/constants';
import { useDictionaryDataSelect } from '@12333/hooks';
defineOptions({
  name: 'HomeQueryMenuView',
@@ -26,11 +40,30 @@
// const props = withDefaults(defineProps<Props>(), {});
const { dictionaryDataList: welfareList } = useDictionaryDataSelect({
  categoryCode: CategoryCode.Welfare,
});
const emit = defineEmits<{
  (e: 'reset'): void;
  (e: 'close'): void;
}>();
const gender = defineModel<number | string>('gender');
const query = defineModel<{
  genderLimit: number | string;
  settlementCycle: EnumSettlementCycle;
  benefitCodes: string;
}>('query');
const DefaultQuery = {
  ...query.value,
};
function handleReset() {
  for (const key in DefaultQuery) {
    query.value[key] = DefaultQuery[key];
  }
}
</script>
<style lang="scss">