feat: 更新日期选择器和时间筛选逻辑,优化用户体验
This commit is contained in:
parent
4e0bbbf3e3
commit
33a32e1134
@ -9,12 +9,12 @@
|
|||||||
</view>
|
</view>
|
||||||
</picker>
|
</picker>
|
||||||
|
|
||||||
<picker mode="selector" :range="timeRangeOptions" range-key="label" @change="pickTimeRange">
|
<uni-datetime-picker type="daterange" :value="dateRange" @change="pickTimeRange">
|
||||||
<view class="filter-pill">
|
<view class="filter-pill">
|
||||||
<view class="pill-text">{{ currentTimeRange.label }}</view>
|
<view class="pill-text">{{ dateRangeLabel }}</view>
|
||||||
<uni-icons type="arrowdown" size="12" color="#666" />
|
<uni-icons type="arrowdown" size="12" color="#666" />
|
||||||
</view>
|
</view>
|
||||||
</picker>
|
</uni-datetime-picker>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view v-if="showShareTip" class="share-tip">
|
<view v-if="showShareTip" class="share-tip">
|
||||||
@ -75,13 +75,13 @@ const currentType = ref({ name: '全部', value: 'ALL' });
|
|||||||
|
|
||||||
const records = ref([]);
|
const records = ref([]);
|
||||||
|
|
||||||
const timeRangeOptions = [
|
const dateRange = ref([]);
|
||||||
{ label: '全部时间', value: 'ALL' },
|
const dateRangeLabel = computed(() => {
|
||||||
{ label: '今天', value: 'today' },
|
if (Array.isArray(dateRange.value) && dateRange.value.length === 2 && dateRange.value[0] && dateRange.value[1]) {
|
||||||
{ label: '近7天', value: '7d' },
|
return `${dateRange.value[0]} 至 ${dateRange.value[1]}`;
|
||||||
{ label: '近30天', value: '30d' },
|
}
|
||||||
];
|
return '全部时间';
|
||||||
const currentTimeRange = ref(timeRangeOptions[0]);
|
});
|
||||||
|
|
||||||
function getCurrentTeamId() {
|
function getCurrentTeamId() {
|
||||||
const team = uni.getStorageSync('ykt_case_current_team') || {};
|
const team = uni.getStorageSync('ykt_case_current_team') || {};
|
||||||
@ -204,19 +204,9 @@ async function refreshList() {
|
|||||||
currentType.value.value === 'ALL' ? templates.value.map((i) => i.templateType) : currentType.value.value;
|
currentType.value.value === 'ALL' ? templates.value.map((i) => i.templateType) : currentType.value.value;
|
||||||
|
|
||||||
// 添加时间筛选
|
// 添加时间筛选
|
||||||
if (currentTimeRange.value.value !== 'ALL') {
|
if (Array.isArray(dateRange.value) && dateRange.value.length === 2 && dateRange.value[0] && dateRange.value[1]) {
|
||||||
const now = Date.now();
|
params.startTime = dayjs(dateRange.value[0]).startOf('day').valueOf();
|
||||||
if (currentTimeRange.value.value === 'today') {
|
params.endTime = dayjs(dateRange.value[1]).endOf('day').valueOf();
|
||||||
const todayStart = new Date(new Date().setHours(0, 0, 0, 0)).getTime();
|
|
||||||
params.startTime = todayStart;
|
|
||||||
params.endTime = now;
|
|
||||||
} else if (currentTimeRange.value.value === '7d') {
|
|
||||||
params.startTime = now - 7 * 24 * 60 * 60 * 1000;
|
|
||||||
params.endTime = now;
|
|
||||||
} else if (currentTimeRange.value.value === '30d') {
|
|
||||||
params.startTime = now - 30 * 24 * 60 * 60 * 1000;
|
|
||||||
params.endTime = now;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const res = await api('getCustomerMedicalRecord', params);
|
const res = await api('getCustomerMedicalRecord', params);
|
||||||
@ -323,8 +313,8 @@ function pickType(e) {
|
|||||||
currentType.value = typeRange.value[e.detail.value] || { name: '全部', value: 'ALL' };
|
currentType.value = typeRange.value[e.detail.value] || { name: '全部', value: 'ALL' };
|
||||||
refreshList();
|
refreshList();
|
||||||
}
|
}
|
||||||
function pickTimeRange(e) {
|
function pickTimeRange(val) {
|
||||||
currentTimeRange.value = timeRangeOptions[e.detail.value] || timeRangeOptions[0];
|
dateRange.value = val;
|
||||||
refreshList();
|
refreshList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -717,11 +717,11 @@ const openVerifyEntry = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const openAddCustomerServiceEntry = () => {
|
const openAddCustomerServiceEntry = () => {
|
||||||
uni.showToast({ title: '添加客服功能待接入', icon: 'none' });
|
uni.navigateTo({ url: '/pages/work/service/contact-service' });
|
||||||
};
|
};
|
||||||
|
|
||||||
const openInvitePatientEntry = () => {
|
const openInvitePatientEntry = () => {
|
||||||
uni.navigateTo({ url: '/pages/case/patient-invite' });
|
uni.navigateTo({ url: '/pages/work/team/invite/invite-patient' });
|
||||||
};
|
};
|
||||||
|
|
||||||
const openCreatePatientEntry = () => {
|
const openCreatePatientEntry = () => {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user