From f26f29d84e0a68831a6af14dab3eec5500496d2e Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期三, 28 五月 2025 16:48:52 +0800 Subject: [PATCH] 初始化项目 --- pages/oa/history.vue | 140 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 140 insertions(+), 0 deletions(-) diff --git a/pages/oa/history.vue b/pages/oa/history.vue new file mode 100644 index 0000000..518438c --- /dev/null +++ b/pages/oa/history.vue @@ -0,0 +1,140 @@ +<template> + <view class="wrap"> + <scroll-view class="scroll-list" scroll-y="true" @scrolltolower="loadMore"> + <u-cell-group class="list" :border="false"> + <u-card :title="item.leaveId" :sub-title="item.leaveTime" v-for="(item, index) in list" + :key="item.leaveId" :index="item.leaveId" @click="cardClick(item.leaveId)"> + <view class="" slot="body"> + <view> + <span class="span-lable">鐢宠浜�:</span> + {{item.username}} + </view> + <view> + <span class="span-lable">鐢宠浜�:</span> + {{item.content}} + </view> + <view> + <span class="span-lable">杩涘害:</span> + <span v-if="item.state === '0'">鏈彁浜�</span> + <span v-if="item.state === '1'">瀹℃壒涓�</span> + <span v-if="item.state === '2'">宸插畬鎴�</span> + <span v-if="item.state === '9'">椹冲洖</span> + </view> + </view> + <view class="card-foot" slot="foot"> + <u-button size="medium" @click="del(item.leaveId)">鍒犻櫎</u-button> + </view> + </u-card> + </u-cell-group> + <view class="loadmore" @click="loadMore"> + <u-loadmore :status="loadStatus"></u-loadmore> + </view> + </scroll-view> + <view class="btn-plus" @click="navTo('form')"> + <u-icon name="plus-circle-fill" size="90" color="#3d87ff"></u-icon> + </view> + </view> +</template> +<script> + export default { + data() { + return { + keywords: '', + query: { + current: 1, + size: 20 + }, + list: [], + count: 0, + loadStatus: 'loadmore', + options: [{ + text: '鍒犻櫎', + style: { + background: '#dd524d' + } + }] + }; + }, + onLoad() { + this.loadList(); + }, + onShow() { + if (uni.getStorageSync('refreshList') === true) { + uni.removeStorageSync('refreshList'); + this.search(''); + } + }, + methods: { + cardClick(e) { + uni.navigateTo({ + url: '/pages/oa/form?leaveId=' + e + }) + }, + loadMore() { + this.loadStatus = "loading"; + setTimeout(() => { + this.query.current += 1; + this.loadList(); + }, 100); + }, + loadList() { + this.$u.api.pigxOA.queryBillPage(this.query).then(res => { + console.log('res:', res) + if (!res.data.records || res.data.records.length == 0) { + this.loadStatus = "nomore"; + return; + } + this.list = this.list.concat(res.data.records); + this.total = res.data.total; + this.query.current = res.data.current; + this.query.size = res.data.size; + this.loadStatus = "loadmore"; + }); + }, + del(leaveId) { + let self = this; + uni.showModal({ + title: '鎻愮ず', + content: '纭瑕佸垹闄よ鏁版嵁鍚楋紵', + showCancel: true, + success: function(res2) { + if (res2.confirm) { + self.$u.api.pigxOA.delBill({ + leaveId: leaveId + }).then(res => { + self.$u.toast('鍒犻櫎鎴愬姛'); + self.query.current = 1 + self.list = [] + self.loadList() + }); + } + } + }); + }, + search(value) { + this.list = []; + this.query.current = 1; + this.query.username = value; + this.loadList(); + } + } + }; +</script> +<style lang="scss"> + page { + background-color: #f8f8f8; + } + + .btn-plus { + position: absolute; + bottom: 50rpx; + right: 50rpx; + z-index: 1; + opacity: 0.6; + } + + .btn-plus:hover { + opacity: 1; + } + +</style> -- Gitblit v1.9.3