From 7eebd7981c1f5d2c569556d1e87f7818cef18cce Mon Sep 17 00:00:00 2001 From: gaoluyang <2820782392@qq.com> Date: 星期四, 21 八月 2025 13:15:15 +0800 Subject: [PATCH] 1.样式修改 --- src/pages/sales/salesAccount/index.vue | 166 +++++++++++++++++++++---------------------------------- 1 files changed, 63 insertions(+), 103 deletions(-) diff --git a/src/pages/sales/salesAccount/index.vue b/src/pages/sales/salesAccount/index.vue index e2e0b65..92f3557 100644 --- a/src/pages/sales/salesAccount/index.vue +++ b/src/pages/sales/salesAccount/index.vue @@ -1,14 +1,7 @@ <template> <view class="sales-account"> - <!-- 椤甸潰澶撮儴 --> - <view class="page-header"> - <view class="header-left"> - <up-icon name="arrow-left" size="20" color="#333" @click="goBack"></up-icon> - </view> - <view class="header-center"> - <text class="page-title">閿�鍞彴璐�</text> - </view> - </view> + <!-- 浣跨敤閫氱敤椤甸潰澶撮儴缁勪欢 --> + <PageHeader title="閿�鍞彴璐�" @back="goBack" /> <!-- 鎼滅储鍜岀瓫閫夊尯鍩� --> <view class="search-filter-section"> @@ -29,7 +22,7 @@ <!-- 閿�鍞彴璐︾�戝竷娴� --> <view class="ledger-list" v-if="total > 0"> <view v-for="(item, index) in ledgerList" :key="index"> - <view class="ledger-item" @click="handleItemClick(item)"> + <view class="ledger-item" @click="handleInfo('edit', item)"> <view class="item-header"> <view class="item-left"> <view class="document-icon"> @@ -50,7 +43,7 @@ </view> <view class="detail-row"> <text class="detail-label">瀹㈡埛鍚堝悓鍙�</text> - <text class="detail-value highlight">{{ item.customerContractNo }}</text> + <text class="detail-value">{{ item.customerContractNo }}</text> </view> <view class="detail-row"> <text class="detail-label">涓氬姟鍛�</text> @@ -92,15 +85,19 @@ </view> <!-- 娴姩鎿嶄綔鎸夐挳 --> - <view class="fab-button" @click="handleAdd"> + <view class="fab-button" @click="handleInfo('add')"> <up-icon name="plus" size="24" color="#ffffff"></up-icon> </view> </view> </template> <script setup> -import { ref, reactive, onMounted } from 'vue'; +import { ref } from 'vue'; +import { onShow } from '@dcloudio/uni-app'; import {ledgerListPage} from "@/api/salesManagement/salesLedger"; +import useUserStore from "@/store/modules/user"; +import PageHeader from "@/components/PageHeader.vue"; +const userStore = useUserStore() // 鎼滅储鍏抽敭璇� const searchKeyword = ref(''); @@ -126,34 +123,59 @@ // tableLoading.value = false; }); }; -// 鏄剧ず绛涢�夐�夐」 -const showFilterOptions = () => { - uni.showActionSheet({ - itemList: ['鎸夋棩鏈熺瓫閫�', '鎸夌姸鎬佺瓫閫�', '鎸夐噾棰濈瓫閫�'], - success: (res) => { - console.log('閫夋嫨浜嗙瓫閫夐�夐」:', res.tapIndex); - } - }); + +// 澶勭悊鍙拌处淇℃伅鎿嶄綔锛堟煡鐪�/缂栬緫/鏂板锛� +const handleInfo = (type, row) => { + try { + // 璁剧疆鎿嶄綔绫诲瀷 + uni.setStorageSync('operationType', type); + + // 濡傛灉鏄煡鐪嬫垨缂栬緫鎿嶄綔 + if (type !== 'add') { + // 楠岃瘉琛屾暟鎹槸鍚﹀瓨鍦� + if (!row) { + uni.showToast({ + title: '鏁版嵁涓嶅瓨鍦�', + icon: 'error' + }); + return; + } + + // 妫�鏌ユ潈闄愶細鍙湁褰曞叆浜烘墠鑳界紪杈� + if (row.entryPerson != userStore.id) { + // 闈炲綍鍏ヤ汉璺宠浆鍒板彧璇昏鎯呴〉闈� + uni.setStorageSync('editData', JSON.stringify(row)); + uni.navigateTo({ + url: '/pages/sales/salesAccount/view' + }); + return; + } + + // 褰曞叆浜虹紪杈戯細瀛樺偍鏁版嵁骞惰烦杞埌缂栬緫椤甸潰 + uni.setStorageSync('editData', JSON.stringify(row)); + uni.navigateTo({ + url: '/pages/sales/salesAccount/detail' + }); + return; + } + + // 鏂板鎿嶄綔锛氱洿鎺ヨ烦杞埌缂栬緫椤甸潰 + uni.navigateTo({ + url: '/pages/sales/salesAccount/detail' + }); + + } catch (error) { + console.error('澶勭悊鍙拌处淇℃伅鎿嶄綔澶辫触:', error); + uni.showToast({ + title: '鎿嶄綔澶辫触锛岃閲嶈瘯', + icon: 'error' + }); + } }; -// 鐐瑰嚮鍒楄〃椤� -const handleItemClick = (item) => { - uni.showToast({ - title: `鏌ョ湅鍚堝悓: ${item.contractId}`, - icon: 'none' - }); -}; - -// 娣诲姞鏂拌褰� -const handleAdd = () => { - uni.navigateTo({ - url: '/pages/sales/salesAccount/detail' - }); -}; - -onMounted(() => { - // 椤甸潰鍔犺浇瀹屾垚鍚庣殑鍒濆鍖栭�昏緫 - getList() +onShow(() => { + // 椤甸潰鏄剧ず鏃跺埛鏂板垪琛� + getList(); }); </script> @@ -167,70 +189,7 @@ position: relative; } -.page-header { - background: #ffffff; - padding: 16px 20px; - display: flex; - align-items: center; - justify-content: space-between; - border-bottom: 1px solid #f0f0f0; - position: sticky; - /* 鍏煎 iOS 鍒樻捣/鐏靛姩宀涘畨鍏ㄥ尯 */ - padding-top: env(safe-area-inset-top); - top: 0; - z-index: 100; -} -.header-left { - display: flex; - align-items: center; - gap: 8px; -} - -.nav-icon { - width: 24px; - height: 24px; - background: #2979ff; - border-radius: 4px; - display: flex; - align-items: center; - justify-content: center; -} - -.nav-text { - font-size: 14px; - color: #2979ff; - font-weight: 500; -} - -.header-center { - flex: 1; - text-align: center; -} - -.page-title { - font-size: 18px; - font-weight: 600; - color: #333; -} - -.header-right { - display: flex; - align-items: center; -} - -.status-bar { - display: flex; - align-items: center; - gap: 4px; -} - -.signal, .wifi, .battery { - width: 16px; - height: 8px; - background: #333; - border-radius: 2px; -} .search-filter-section { padding: 10px 20px; @@ -377,7 +336,7 @@ .fab-button { position: fixed; - bottom: 30px; + bottom: calc(30px + env(safe-area-inset-bottom)); right: 30px; width: 56px; height: 56px; @@ -388,5 +347,6 @@ justify-content: center; box-shadow: 0 4px 16px rgba(41, 121, 255, 0.3); z-index: 1000; + /* 纭繚娴姩鎸夐挳涓嶈搴曢儴瀹夊叏鍖哄煙閬尅 */ } </style> -- Gitblit v1.9.3