70 lines
1.7 KiB
Vue
70 lines
1.7 KiB
Vue
|
|
<template>
|
|||
|
|
<view>
|
|||
|
|
<MBLoading v-if="loading" />
|
|||
|
|
<uni-card
|
|||
|
|
v-for="item in sortedData"
|
|||
|
|
:key="item.goodsname"
|
|||
|
|
:title="item.goodsname"
|
|||
|
|
>
|
|||
|
|
<view class="context">
|
|||
|
|
<view class="label">
|
|||
|
|
<text>操作人员:</text>
|
|||
|
|
<text>{{ item.userName }}</text>
|
|||
|
|
</view>
|
|||
|
|
<view class="label">
|
|||
|
|
<text>操作日期:</text>
|
|||
|
|
<text>{{ item.editdate.substring(0, 16) }}</text>
|
|||
|
|
</view>
|
|||
|
|
<view class="label">
|
|||
|
|
<text>操作内容:</text>
|
|||
|
|
<text>{{item.memo }}</text>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</uni-card>
|
|||
|
|
<view v-if="!sortedData || sortedData.length === 0" class="empty-data">
|
|||
|
|
<text>暂无操作日志</text>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script setup>
|
|||
|
|
import { defineProps } from 'vue'
|
|||
|
|
import { computed } from "vue";
|
|||
|
|
import MBLoading from "@/components/MB/MBLoading.vue";
|
|||
|
|
|
|||
|
|
const props = defineProps({
|
|||
|
|
logList: {
|
|||
|
|
type: Array,
|
|||
|
|
default: () => []
|
|||
|
|
},
|
|||
|
|
loading: {
|
|||
|
|
type: Boolean,
|
|||
|
|
default: false
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
const sortedData = computed(() => {
|
|||
|
|
// 创建原数组的副本,然后排序
|
|||
|
|
const data = [...props.logList];
|
|||
|
|
// 按editdate降序排序(最新的在前)
|
|||
|
|
return data.sort((a, b) => new Date(b.editdate) - new Date(a.editdate));
|
|||
|
|
})
|
|||
|
|
console.log(props.logList)
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<style scoped>
|
|||
|
|
.context {
|
|||
|
|
font-size: 14px;
|
|||
|
|
}
|
|||
|
|
.context .label {
|
|||
|
|
font-size: 14px;
|
|||
|
|
}
|
|||
|
|
.empty-data {
|
|||
|
|
text-align: center;
|
|||
|
|
padding: 30px;
|
|||
|
|
color: #999;
|
|||
|
|
font-size: 14px;
|
|||
|
|
}
|
|||
|
|
.context{
|
|||
|
|
grid-template-columns:repeat(1, minmax(0, 1fr))
|
|||
|
|
}
|
|||
|
|
</style>
|