From 459ab82cf2c823026af6e7aa2ebaf58337400d12 Mon Sep 17 00:00:00 2001 From: tianyongbao Date: Fri, 14 Nov 2025 02:13:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=B7=A5=E4=BD=9C=E5=8F=B0=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=EF=BC=8C=E6=95=B4=E4=BD=93ui=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages.json | 31 +- src/pages/calendar/index.vue | 129 +++-- src/pages/login.vue | 263 +++++++--- src/pages/mine.vue | 135 ++--- src/pages/register.vue | 239 ++++++++- .../accounts/accountDealRecord/addEdit.vue | 51 +- .../accounts/accountDealRecord/details.vue | 244 +++++++-- .../work/accounts/accountDealRecord/list.vue | 419 +++++++++++----- .../work/accounts/accounts/commonList.vue | 218 +++++---- src/pages/work/accounts/accounts/details.vue | 288 +++++++++-- src/pages/work/accounts/accounts/list.vue | 382 +++++++++------ .../accounts/creditTransferRecord/addEdit.vue | 77 ++- .../accounts/creditTransferRecord/details.vue | 186 +++++-- .../accounts/creditTransferRecord/list.vue | 292 ++++++----- .../accounts/debitTransferRecord/addEdit.vue | 65 ++- .../accounts/debitTransferRecord/details.vue | 183 +++++-- .../accounts/debitTransferRecord/list.vue | 326 ++++++++----- .../accounts/investAccountDeal/addEdit.vue | 14 +- .../accounts/investAccountDeal/details.vue | 163 +++++-- .../work/accounts/investAccountDeal/list.vue | 314 +++++++----- .../accounts/investTransferRecord/addEdit.vue | 14 +- .../accounts/investTransferRecord/details.vue | 150 ++++-- .../accounts/investTransferRecord/list.vue | 301 +++++++----- .../accounts/lendTransferRecord/addEdit.vue | 96 ++-- .../accounts/lendTransferRecord/details.vue | 176 +++++-- .../work/accounts/lendTransferRecord/list.vue | 320 +++++++----- .../accounts/posTransferRecord/addEdit.vue | 63 ++- .../accounts/posTransferRecord/details.vue | 208 ++++++-- .../work/accounts/posTransferRecord/list.vue | 357 +++++++++----- src/pages/work/accounts/posadvice/list.vue | 351 +++++++------ .../work/bill/creditCardBill/addEdit.vue | 14 +- .../work/bill/creditCardBill/details.vue | 266 +++++----- src/pages/work/bill/creditCardBill/list.vue | 461 +++++++++++++----- .../bill/creditInstallmentHistory/addEdit.vue | 24 +- .../bill/creditInstallmentHistory/details.vue | 369 ++++++++------ .../detailsAddEdit.vue | 16 +- .../bill/creditInstallmentHistory/list.vue | 430 ++++++++++------ .../work/bill/creditQueryRecord/addEdit.vue | 16 +- .../work/bill/creditQueryRecord/analysis.vue | 158 ++++-- .../work/bill/creditQueryRecord/details.vue | 135 +++-- .../work/bill/creditQueryRecord/list.vue | 292 ++++++----- src/pages/work/bill/futuresBill/addEdit.vue | 66 +-- src/pages/work/bill/futuresBill/details.vue | 260 +++++----- src/pages/work/bill/futuresBill/list.vue | 353 ++++++++------ .../work/bill/onlineLendHistory/addEdit.vue | 19 +- .../work/bill/onlineLendHistory/details.vue | 361 ++++++++------ .../bill/onlineLendHistory/detailsAddEdit.vue | 14 +- .../work/bill/onlineLendHistory/list.vue | 444 +++++++++++------ .../work/bill/peopleLendHistory/addEdit.vue | 81 +-- .../work/bill/peopleLendHistory/list.vue | 328 ++++++++----- src/pages/work/bill/stocksBill/addEdit.vue | 66 +-- src/pages/work/bill/stocksBill/details.vue | 260 +++++----- src/pages/work/bill/stocksBill/list.vue | 353 ++++++++------ .../product/productPriceRecord/addEdit.vue | 86 +++- .../work/product/productPriceRecord/list.vue | 336 ++++++++----- src/pages_mine/pages/about/index.vue | 247 ++++++++-- src/pages_mine/pages/avatar/index.vue | 147 +++++- src/pages_mine/pages/help/index.vue | 178 +++++-- src/pages_mine/pages/info/edit.vue | 68 ++- src/pages_mine/pages/info/index.vue | 114 ++++- src/pages_mine/pages/pwd/index.vue | 154 +++++- src/pages_mine/pages/setting/index.vue | 128 +++-- 62 files changed, 8331 insertions(+), 3968 deletions(-) diff --git a/src/pages.json b/src/pages.json index 4b4145d..b254760 100644 --- a/src/pages.json +++ b/src/pages.json @@ -14,19 +14,22 @@ { "path": "pages/login", "style": { - "navigationBarTitleText": "" + "navigationBarTitleText": "", + "disableScroll": true } }, { "path": "pages/register", "style": { - "navigationBarTitleText": "平台用户注册" + "navigationBarTitleText": "平台用户注册", + "disableScroll": true } }, { "path": "pages/calendar/index", "style": { - "navigationBarTitleText": "" + "navigationBarTitleText": "", + "disableScroll": true } }, { @@ -58,7 +61,8 @@ { "path": "pages/mine", "style": { - "navigationBarTitleText": "" + "navigationBarTitleText": "", + "disableScroll": true } }, { @@ -278,7 +282,8 @@ { "path": "pages/work/accounts/debitTransferRecord/details", "style": { - "navigationBarTitleText": "储蓄账户转账详情" + "navigationBarTitleText": "储蓄账户转账详情", + "disableScroll": true } } , @@ -299,7 +304,8 @@ { "path": "pages/work/accounts/lendTransferRecord/details", "style": { - "navigationBarTitleText": "借贷账户记账详情" + "navigationBarTitleText": "借贷账户记账详情", + "disableScroll": true } } , @@ -326,7 +332,8 @@ { "path": "pages/work/accounts/accounts/details", "style": { - "navigationBarTitleText": "记账账户详情" + "navigationBarTitleText": "记账账户详情", + "disableScroll": true } } , @@ -743,13 +750,15 @@ { "path": "help/index", "style": { - "navigationBarTitleText": "常见问题" + "navigationBarTitleText": "常见问题", + "disableScroll": true } }, { "path": "about/index", "style": { - "navigationBarTitleText": "关于我们" + "navigationBarTitleText": "关于我们", + "disableScroll": true } } ] @@ -892,8 +901,8 @@ } ], "tabBar": { - "color": "#000000", - "selectedColor": "#000000", + "color": "#909399", + "selectedColor": "#667eea", "borderStyle": "white", "backgroundColor": "#ffffff", "list": [ diff --git a/src/pages/calendar/index.vue b/src/pages/calendar/index.vue index a27409c..5a2cfbb 100644 --- a/src/pages/calendar/index.vue +++ b/src/pages/calendar/index.vue @@ -19,6 +19,7 @@ +
@@ -26,26 +27,25 @@ - 当日事项 + {{ currentDateTitle }} - - + + {{ item.title }} - {{ item.start }} - + 暂无事项 - +
@@ -68,6 +68,7 @@ export default { const { proxy } = getCurrentInstance() const state = reactive({ calendarTitle: new Date().getFullYear() + '年' + Number(new Date().getMonth() + 1) + '月', // 日历头部显示文字 + currentDateTitle: '', // 当前选中日期标题 dialogVisiable: false, loading: false, type: '1', @@ -84,6 +85,8 @@ export default { onMounted(() => { initCalendar() getCalendarList() + // 初始化当前日期标题 + updateCurrentDateTitle(dayjs().format('YYYY-MM-DD')) }) const initCalendar = () => { state.Tcalendar = new Calendar(state.fullcalendar, { @@ -142,6 +145,8 @@ export default { state.currentInfoList.push(item); } }); + // 更新日期标题 + updateCurrentDateTitle(date); }, select: function (info) { // 视图选择日期触发 @@ -214,21 +219,50 @@ export default { }) } - // 更新为当月1号的事项 + // 更新当前日期标题 + const updateCurrentDateTitle = (dateStr) => { + const date = dayjs(dateStr) + const today = dayjs() + + if (date.format('YYYY-MM-DD') === today.format('YYYY-MM-DD')) { + state.currentDateTitle = '今日事项 (' + date.format('MM月DD日') + ')' + } else { + state.currentDateTitle = date.format('YYYY年MM月DD日') + ' 事项' + } + } + + // 更新为合适的日期事项:当月显示今天,其他月份显示1号 const updateFirstDayEvents = () => { // 获取当前视图的年月 const currentStart = state.Tcalendar.view.currentStart - const year = currentStart.getFullYear() - const month = String(currentStart.getMonth() + 1).padStart(2, '0') - const firstDay = `${year}-${month}-01` + const viewYear = currentStart.getFullYear() + const viewMonth = currentStart.getMonth() + 1 - // 筛选1号的事项 + // 获取今天的年月 + const today = new Date() + const todayYear = today.getFullYear() + const todayMonth = today.getMonth() + 1 + + let targetDate + + // 如果是当前月份,显示今天的数据;否则显示1号的数据 + if (viewYear === todayYear && viewMonth === todayMonth) { + targetDate = dayjs().format('YYYY-MM-DD') + } else { + const month = String(viewMonth).padStart(2, '0') + targetDate = `${viewYear}-${month}-01` + } + + // 筛选目标日期的事项 state.currentInfoList = [] state.infoList.forEach(item => { - if(firstDay === item.start){ + if(targetDate === item.start){ state.currentInfoList.push(item) } }) + + // 更新日期标题 + updateCurrentDateTitle(targetDate) } const enterDetails = (info) => { @@ -314,13 +348,15 @@ const handleClick = (info) => { } // 拖拽触发 const handleSelectDate = (info) => { - const selectDate= info.startStr - state.currentInfoList=[] - state.infoList.forEach(item => { - if(selectDate==item.start){ - state.currentInfoList.push(item) - } - }) + const selectDate = info.startStr + state.currentInfoList = [] + state.infoList.forEach(item => { + if(selectDate == item.start){ + state.currentInfoList.push(item) + } + }) + // 更新日期标题 + updateCurrentDateTitle(selectDate) } return { @@ -334,20 +370,31 @@ const handleSelectDate = (info) => { getCalendarList, getEventColor, getEventIcon, - updateFirstDayEvents + updateFirstDayEvents, + updateCurrentDateTitle } } } diff --git a/src/pages/mine.vue b/src/pages/mine.vue index 740cc90..d885c30 100644 --- a/src/pages/mine.vue +++ b/src/pages/mine.vue @@ -1,15 +1,15 @@ diff --git a/src/pages/work/accounts/investTransferRecord/details.vue b/src/pages/work/accounts/investTransferRecord/details.vue index 68ff305..fe2c435 100644 --- a/src/pages/work/accounts/investTransferRecord/details.vue +++ b/src/pages/work/accounts/investTransferRecord/details.vue @@ -2,20 +2,42 @@ + + + + + + + + 转入账户 + {{ detailInfo.inAccountName }} + + + 交易类型 + {{ detailInfo.dealType }} + + + 转账金额 + {{ detailInfo.amount }}元 + + + + - - - - - - - - - + + + 转账信息 + + + + + @@ -57,40 +79,88 @@ onLoad((option) => { \ No newline at end of file +} + +.section { + margin: 24rpx; + background-color: #fff; + border-radius: 16rpx; + overflow: hidden; + box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); + + .section-title { + display: flex; + align-items: center; + gap: 12rpx; + padding: 24rpx; + font-size: 32rpx; + font-weight: 600; + color: #2c3e50; + border-bottom: 1rpx solid #f5f7fa; + } +} + \ No newline at end of file diff --git a/src/pages/work/accounts/investTransferRecord/list.vue b/src/pages/work/accounts/investTransferRecord/list.vue index 768c3b4..b76a244 100644 --- a/src/pages/work/accounts/investTransferRecord/list.vue +++ b/src/pages/work/accounts/investTransferRecord/list.vue @@ -5,8 +5,10 @@ - + + + 新增 + @@ -14,8 +16,9 @@ - + @@ -54,8 +57,10 @@ - - + + - - - + + + + + + + + + + {{ item.createTime }} + {{ dictStr(item.dealType, dealTypeList) }} + {{ item.amount }}元 + - - 转出账户: - {{ item.outAccountName }} - - - 转入账户: - {{ item.inAccountName }} - - - 转账时间: - {{ item.createTime }} - - - 转账金额: - {{ item.amount }} - - - 交易类型: - {{ dictStr(item.dealType, dealTypeList) }} - - - - - 修改 - 复制 - 删除 + + + + + 修改 + + + + 复制 + + + + 删除 + @@ -310,11 +312,38 @@ function dictStr(val, arr) { justify-content: space-between; align-items: center; position: relative; + z-index: 100; .search-input { - background: #F5F5F5; + background: #f5f7fa; color: #333333; - margin-right: 36rpx; + flex: 1; + margin-right: 16rpx; + border-radius: 24rpx; + border: 1rpx solid #e8edf3; + } + + .add-btn { + display: flex; + align-items: center; + gap: 6rpx; + padding: 12rpx 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border-radius: 24rpx; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + transition: all 0.3s ease; + flex-shrink: 0; + + &:active { + transform: scale(0.95); + box-shadow: 0 2rpx 8rpx rgba(102, 126, 234, 0.3); + } + + text { + color: #ffffff; + font-size: 28rpx; + font-weight: 600; + } } .filter-panel { @@ -325,14 +354,15 @@ function dictStr(val, arr) { background-color: rgba(0, 0, 0, 0.5); .filter-panel-content { - background-color: #ffff; + background-color: #ffffff; padding: 0 30rpx 30rpx; + border-radius: 16rpx 16rpx 0 0; .filter-title { - color: #000000; - font-size: 30rpx; - font-weight: 500; - padding: 30rpx 0; + color: #2c3e50; + font-size: 32rpx; + font-weight: 600; + padding: 32rpx 0 24rpx; } .state-list { @@ -353,114 +383,145 @@ function dictStr(val, arr) { } .active { - background-color: rgba(222, 241, 255, 1); - border: 1rpx solid rgba(22, 119, 255, 1); + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border: 2rpx solid transparent; + color: #ffffff; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + font-weight: 600; } } } .btn-box { display: flex; + gap: 16rpx; padding: 24rpx 30rpx; background-color: #fff; - box-shadow: 0rpx -10rpx 20rpx #EEEEEE; + box-shadow: 0rpx -4rpx 16rpx rgba(0, 0, 0, 0.08); } } } .list-item { margin: 0 24rpx 24rpx; - padding: 32rpx; background-color: #fff; + border-radius: 16rpx; + overflow: hidden; + box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); .item-header { display: flex; - justify-content: space-between; - align-items: center; - padding-bottom: 16rpx; + flex-direction: column; + gap: 16rpx; + padding: 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); - .status { - .status-item { - width: 120rpx; - height: 44rpx; - text-align: center; - line-height: 44rpx; - border-radius: 4rpx; - font-size: 24rpx; - } - - .status1 { - background: #F0F0F0; - color: #8C8C8C; - } - - .status2 { - background: rgba(38, 129, 255, 0.2); - color: #2681FF; - } - - .status3 { - background: #F7F7F7; - color: #2681FF; - } - - .status4 { - background: rgba(255, 85, 51, 0.2); - color: #FF5533; - } - - .status5 { - background: #F7F7F7; - color: rgba(0, 0, 0, 0.85); - } - - .status7 { - background: rgba(255, 129, 51, 0.2); - color: #FF8133; - } - - .status8 { - background: rgba(65, 217, 165, 0.2); - color: #41D9A5; - } - } - } - - .item-row { - padding: 16rpx 0; - - .row-label { - color: rgba(0, 0, 0, 0.55); + .header-row { + display: flex; + align-items: center; + gap: 12rpx; } - .row-value { - color: rgba(0, 0, 0, 0.85) + .card-icon { + width: 44rpx; + height: 44rpx; + border-radius: 50%; + background: rgba(255, 255, 255, 0.25); + display: flex; + align-items: center; + justify-content: center; + flex-shrink: 0; + } + + .account-name { + font-size: 26rpx; + font-weight: 500; + color: #ffffff; + line-height: 1.3; + flex: 1; + min-width: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + + .info-row { + display: flex; + justify-content: space-between; + align-items: center; + gap: 12rpx; + padding-top: 12rpx; + border-top: 1rpx solid rgba(255, 255, 255, 0.2); + } + + .time-text { + font-size: 28rpx; + color: rgba(255, 255, 255, 0.9); + font-weight: 500; + line-height: 1.3; + flex-shrink: 0; + } + + .type-text { + font-size: 26rpx; + font-weight: 600; + color: #ffffff; + line-height: 1.3; + flex: 1; + min-width: 0; + text-align: center; + } + + .amount-value { + font-size: 36rpx; + font-weight: 700; + color: #52c41a; + line-height: 1.2; + flex-shrink: 0; } } .operate { display: flex; - justify-content: flex-end; + gap: 12rpx; + padding: 24rpx; + background: #fff; - .btn { - width: 146rpx; - height: 56rpx; - line-height: 56rpx; - border-radius: 8rpx; - margin-left: 5rpx; - text-align: center; + .btn-edit, + .btn-copy, + .btn-delete { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 6rpx; + height: 64rpx; + border-radius: 12rpx; + font-size: 26rpx; + font-weight: 500; + transition: all 0.3s ease; + + &:active { + transform: scale(0.95); + } } - .circulation { - background: rgba(0, 0, 0, 0.04); - margin-right: 24rpx; - color: rgba(0, 0, 0, 0.85); + .btn-edit { + background: rgba(102, 126, 234, 0.1); + color: #667eea; + border: 1rpx solid rgba(102, 126, 234, 0.3); } - .filling { - background: #2681FF; - border-radius: 8rpx; - color: #FFFFFF; + .btn-copy { + background: rgba(82, 196, 26, 0.1); + color: #52c41a; + border: 1rpx solid rgba(82, 196, 26, 0.3); + } + + .btn-delete { + background: rgba(245, 87, 108, 0.1); + color: #f5576c; + border: 1rpx solid rgba(245, 87, 108, 0.3); } } } diff --git a/src/pages/work/accounts/lendTransferRecord/addEdit.vue b/src/pages/work/accounts/lendTransferRecord/addEdit.vue index 3fb389e..5a8a527 100644 --- a/src/pages/work/accounts/lendTransferRecord/addEdit.vue +++ b/src/pages/work/accounts/lendTransferRecord/addEdit.vue @@ -1,13 +1,14 @@ diff --git a/src/pages/work/bill/creditCardBill/details.vue b/src/pages/work/bill/creditCardBill/details.vue index 8b9e3e0..68fe471 100644 --- a/src/pages/work/bill/creditCardBill/details.vue +++ b/src/pages/work/bill/creditCardBill/details.vue @@ -1,12 +1,22 @@ diff --git a/src/pages/work/bill/creditInstallmentHistory/details.vue b/src/pages/work/bill/creditInstallmentHistory/details.vue index fd164c1..1292011 100644 --- a/src/pages/work/bill/creditInstallmentHistory/details.vue +++ b/src/pages/work/bill/creditInstallmentHistory/details.vue @@ -1,48 +1,73 @@ diff --git a/src/pages/work/bill/onlineLendHistory/details.vue b/src/pages/work/bill/onlineLendHistory/details.vue index 9c3bc13..92f1e89 100644 --- a/src/pages/work/bill/onlineLendHistory/details.vue +++ b/src/pages/work/bill/onlineLendHistory/details.vue @@ -1,53 +1,73 @@ diff --git a/src/pages/work/bill/onlineLendHistory/list.vue b/src/pages/work/bill/onlineLendHistory/list.vue index c2d11fd..a612132 100644 --- a/src/pages/work/bill/onlineLendHistory/list.vue +++ b/src/pages/work/bill/onlineLendHistory/list.vue @@ -5,10 +5,13 @@ - - + + + 新增 + + @@ -19,8 +22,10 @@ - - + + @@ -28,67 +33,92 @@ - - - + + + + + + + {{ item.bankNameCode }} + + + {{ item.installmentDate }} + {{ dictStr(item.state, settleStateList) }} + {{ item.installmentAmount }}元 + - - - 结清状态: - {{ dictStr(item.state, settleStateList) }} + + + + 借款期数 + {{ item.period }}期 + + + 已还期数 + {{ item.repaidPeriod }}期 + + + 余额 + {{ item.balance }}元 + - - 借款日期: - {{ item.installmentDate }} + + + + + 年化利率 + {{ item.interestRate || '-' }} + + + 计算利率 + {{ item.calculateInterestRate || '-' }} + + + + + 剩余本金 + {{ item.outstandingPrincipal || '0' }}元 + + + 剩余利息 + {{ item.outstandingInterest || '0' }}元 + + + + + 到期日期 + {{ item.dueDate || '-' }} + + + 收款账户 + {{ item.receivingAccountName || '-' }} + + + + + 贷款天数 + {{ item.loanDays || '-' }} + + + 最近还款日 + {{ formatRepaymentDate(item.repaymentDate) || '-' }} + + - - 收款账户: - {{ item.receivingAccountNameCode }} - - - 已还期数: - {{ item.repaidPeriod }} - - - 总利息: - {{ item.totalInterest }} - - - 年化利率: - {{ item.interestRate }} - - - 计算利率: - {{ item.calculateInterestRate }} - - - 余额: - {{ item.balance }} - - - 剩余本金: - {{ item.outstandingPrincipal }} - - - 剩余利息: - {{ item.outstandingInterest }} - - - 到期日期: - {{ item.dueDate }} - - - 最近还款日: - {{ parseTime(item.repaymentDate, '{y}-{m}-{d}') }} - - - 还款明细 - 修改 - 删除 + + + + + 还款明细 + + + + 修改 + + + + 删除 + @@ -113,6 +143,7 @@ import { } from '@/api/invest/installmentHistory' import { getDicts } from '@/api/system/dict/data.js' import { listBankcardLend } from '@/api/invest/bankcardlend' +import dayjs from 'dayjs' import {onLoad,onShow} from "@dcloudio/uni-app"; // 计算属性与监听属性是在vue中而非uniap中 需要注意!!! import {reactive ,toRefs,ref,computed }from "vue"; @@ -279,6 +310,11 @@ function selectStatus(item) { } }); } + + function formatRepaymentDate(timestamp) { + if (!timestamp) return '-' + return dayjs(timestamp).format('YYYY-MM-DD') + } @@ -299,12 +335,38 @@ function selectStatus(item) { justify-content: space-between; align-items: center; position: relative; - margin-bottom: 24rpx; + z-index: 100; .search-input { - background: #F5F5F5; + background: #f5f7fa; color: #333333; - margin-right: 36rpx; + flex: 1; + margin-right: 16rpx; + border-radius: 24rpx; + border: 1rpx solid #e8edf3; + } + + .add-btn { + display: flex; + align-items: center; + gap: 6rpx; + padding: 12rpx 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border-radius: 24rpx; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + transition: all 0.3s ease; + flex-shrink: 0; + + &:active { + transform: scale(0.95); + box-shadow: 0 2rpx 8rpx rgba(102, 126, 234, 0.3); + } + + text { + color: #ffffff; + font-size: 28rpx; + font-weight: 600; + } } .filter-panel { @@ -315,14 +377,15 @@ function selectStatus(item) { background-color: rgba(0, 0, 0, 0.5); .filter-panel-content { - background-color: #ffff; + background-color: #ffffff; padding: 0 30rpx 30rpx; + border-radius: 16rpx 16rpx 0 0; .filter-title { - color: #000000; - font-size: 30rpx; - font-weight: 500; - padding: 30rpx 0; + color: #2c3e50; + font-size: 32rpx; + font-weight: 600; + padding: 32rpx 0 24rpx; } .state-list { @@ -343,114 +406,221 @@ function selectStatus(item) { } .active { - background-color: rgba(222, 241, 255, 1); - border: 1rpx solid rgba(22, 119, 255, 1); + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border: 2rpx solid transparent; + color: #ffffff; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + font-weight: 600; } } } .btn-box { display: flex; + gap: 16rpx; padding: 24rpx 30rpx; background-color: #fff; - box-shadow: 0rpx -10rpx 20rpx #EEEEEE; + box-shadow: 0rpx -4rpx 16rpx rgba(0, 0, 0, 0.08); } } } .list-item { margin: 0 24rpx 24rpx; - padding: 32rpx; background-color: #fff; + border-radius: 16rpx; + overflow: hidden; + box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); .item-header { display: flex; - justify-content: space-between; - align-items: center; - padding-bottom: 16rpx; + flex-direction: column; + gap: 16rpx; + padding: 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); - .status { - .status-item { - width: 120rpx; - height: 44rpx; - text-align: center; - line-height: 44rpx; - border-radius: 4rpx; - font-size: 24rpx; - } + .header-row { + display: flex; + align-items: center; + gap: 12rpx; + } - .status1 { - background: #F0F0F0; - color: #8C8C8C; - } + .card-icon { + width: 44rpx; + height: 44rpx; + border-radius: 50%; + background: rgba(255, 255, 255, 0.25); + display: flex; + align-items: center; + justify-content: center; + flex-shrink: 0; + } - .status2 { - background: rgba(38, 129, 255, 0.2); - color: #2681FF; - } + .card-name { + font-size: 26rpx; + font-weight: 500; + color: #ffffff; + line-height: 1.3; + flex: 1; + min-width: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } - .status3 { - background: #F7F7F7; - color: #2681FF; - } + .info-row { + display: flex; + justify-content: space-between; + align-items: center; + gap: 12rpx; + padding-top: 12rpx; + border-top: 1rpx solid rgba(255, 255, 255, 0.2); + } - .status4 { - background: rgba(255, 85, 51, 0.2); - color: #FF5533; - } + .time-text { + font-size: 28rpx; + color: rgba(255, 255, 255, 0.9); + font-weight: 500; + line-height: 1.3; + flex-shrink: 0; + } - .status5 { - background: #F7F7F7; - color: rgba(0, 0, 0, 0.85); - } + .type-text { + font-size: 26rpx; + font-weight: 600; + color: #ffffff; + line-height: 1.3; + flex: 1; + min-width: 0; + text-align: center; + } - .status7 { - background: rgba(255, 129, 51, 0.2); - color: #FF8133; - } + .amount-value { + font-size: 36rpx; + font-weight: 700; + color: #52c41a; + line-height: 1.2; + flex-shrink: 0; + } + } - .status8 { - background: rgba(65, 217, 165, 0.2); - color: #41D9A5; + .card-body { + padding: 24rpx; + background: #fff; + display: flex; + gap: 16rpx; + } + + .info-item { + flex: 1; + display: flex; + flex-direction: column; + gap: 6rpx; + min-width: 0; + + .info-label { + font-size: 22rpx; + color: #999; + font-weight: 400; + } + + .info-value { + font-size: 26rpx; + color: #333; + font-weight: 500; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + + &.highlight { + color: #52c41a; + font-weight: 600; } } } - .item-row { - padding: 16rpx 0; + .detail-body { + padding: 20rpx 24rpx; + background: #f5f7fa; + display: flex; + flex-direction: column; + gap: 16rpx; + border-top: 1rpx solid #e8edf3; + } - .row-label { - color: rgba(0, 0, 0, 0.55); + .detail-row { + display: flex; + gap: 24rpx; + } + + .detail-item { + flex: 1; + display: flex; + flex-direction: column; + gap: 6rpx; + min-width: 0; + + &.full-width { + flex: 2; } - .row-value { - color: rgba(0, 0, 0, 0.85) + .detail-label { + font-size: 22rpx; + color: #999; + font-weight: 400; + } + + .detail-value { + font-size: 24rpx; + color: #333; + font-weight: 500; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } } .operate { display: flex; - justify-content: flex-end; + gap: 12rpx; + padding: 24rpx; + background: #fff; - .btn { - width: 146rpx; - height: 56rpx; - line-height: 56rpx; - border-radius: 8rpx; - margin-left: 5rpx; - text-align: center; + .btn-detail, + .btn-edit, + .btn-delete { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 6rpx; + height: 64rpx; + border-radius: 12rpx; + font-size: 26rpx; + font-weight: 500; + transition: all 0.3s ease; + + &:active { + transform: scale(0.95); + } } - .circulation { - background: rgba(0, 0, 0, 0.04); - margin-right: 24rpx; - color: rgba(0, 0, 0, 0.85); + .btn-detail { + background: rgba(102, 126, 234, 0.1); + color: #667eea; + border: 1rpx solid rgba(102, 126, 234, 0.3); } - .filling { - background: #2681FF; - border-radius: 8rpx; - color: #FFFFFF; + .btn-edit { + background: rgba(102, 126, 234, 0.1); + color: #667eea; + border: 1rpx solid rgba(102, 126, 234, 0.3); + } + + .btn-delete { + background: rgba(245, 87, 108, 0.1); + color: #f5576c; + border: 1rpx solid rgba(245, 87, 108, 0.3); } } } diff --git a/src/pages/work/bill/peopleLendHistory/addEdit.vue b/src/pages/work/bill/peopleLendHistory/addEdit.vue index ea9b468..0a34e13 100644 --- a/src/pages/work/bill/peopleLendHistory/addEdit.vue +++ b/src/pages/work/bill/peopleLendHistory/addEdit.vue @@ -1,13 +1,14 @@ @@ -246,27 +270,24 @@ onLoad((option) => { \ No newline at end of file diff --git a/src/pages/work/bill/peopleLendHistory/list.vue b/src/pages/work/bill/peopleLendHistory/list.vue index a71fd98..7cf196c 100644 --- a/src/pages/work/bill/peopleLendHistory/list.vue +++ b/src/pages/work/bill/peopleLendHistory/list.vue @@ -5,10 +5,13 @@ - - + + + + 新增 + @@ -19,8 +22,10 @@ - - + + @@ -28,34 +33,47 @@ - - - + + + + + + + {{ item.installmentDate }} + + 借{{ item.bankNameCode }} + {{ item.installmentAmount }} - - - 结清状态: - {{ dictStr(item.state, settleStateList) }} + + + + + 结清状态 + {{ dictStr(item.state, settleStateList) }} + + + 借款时长 + {{ item.loanDays }}天 + + + + + + 还款日期 + {{ item.closeDate }} + + - - 借款时长: - {{ item.loanDays }} - - - 还款日期: - {{ item.closeDate }} - - - 备注: - {{ item.remark }} - - - 修改 - 删除 + + + + + 修改 + + + + 删除 + @@ -65,8 +83,19 @@ - + @@ -266,11 +295,38 @@ function selectStatus(item) { align-items: center; position: relative; margin-bottom: 24rpx; + z-index: 100; .search-input { - background: #F5F5F5; + background: #f5f7fa; color: #333333; - margin-right: 36rpx; + flex: 1; + margin-right: 16rpx; + border-radius: 24rpx; + border: 1rpx solid #e8edf3; + } + + .add-btn { + display: flex; + align-items: center; + gap: 6rpx; + padding: 12rpx 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border-radius: 24rpx; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + transition: all 0.3s ease; + flex-shrink: 0; + + &:active { + transform: scale(0.95); + box-shadow: 0 2rpx 8rpx rgba(102, 126, 234, 0.3); + } + + text { + color: #ffffff; + font-size: 28rpx; + font-weight: 600; + } } .filter-panel { @@ -279,16 +335,18 @@ function selectStatus(item) { left: 0; top: 96rpx; background-color: rgba(0, 0, 0, 0.5); + z-index: 999; .filter-panel-content { - background-color: #ffff; + background-color: #ffffff; padding: 0 30rpx 30rpx; + border-radius: 16rpx 16rpx 0 0; .filter-title { - color: #000000; - font-size: 30rpx; - font-weight: 500; - padding: 30rpx 0; + color: #2c3e50; + font-size: 32rpx; + font-weight: 600; + padding: 32rpx 0 24rpx; } .state-list { @@ -309,114 +367,166 @@ function selectStatus(item) { } .active { - background-color: rgba(222, 241, 255, 1); - border: 1rpx solid rgba(22, 119, 255, 1); + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border: 2rpx solid transparent; + color: #ffffff; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + font-weight: 600; } } } .btn-box { display: flex; + gap: 16rpx; padding: 24rpx 30rpx; background-color: #fff; - box-shadow: 0rpx -10rpx 20rpx #EEEEEE; + box-shadow: 0rpx -4rpx 16rpx rgba(0, 0, 0, 0.08); } } } .list-item { margin: 0 24rpx 24rpx; - padding: 32rpx; background-color: #fff; + border-radius: 16rpx; + overflow: hidden; + box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); .item-header { display: flex; justify-content: space-between; align-items: center; - padding-bottom: 16rpx; + padding: 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + min-height: 80rpx; + + .card-name-section { + display: flex; + align-items: center; + gap: 16rpx; + flex-shrink: 0; + } - .status { - .status-item { - width: 120rpx; - height: 44rpx; - text-align: center; - line-height: 44rpx; - border-radius: 4rpx; - font-size: 24rpx; - } + .card-icon { + width: 48rpx; + height: 48rpx; + border-radius: 50%; + background: rgba(255, 255, 255, 0.25); + display: flex; + align-items: center; + justify-content: center; + flex-shrink: 0; + } + + .card-date { + font-size: 28rpx; + color: rgba(255, 255, 255, 0.95); + white-space: nowrap; + flex-shrink: 0; + font-weight: 600; + line-height: 1; + } - .status1 { - background: #F0F0F0; - color: #8C8C8C; - } + .card-name { + font-size: 28rpx; + font-weight: 600; + color: #ffffff; + white-space: nowrap; + flex-shrink: 0; + flex: 1; + text-align: center; + line-height: 1; + } - .status2 { - background: rgba(38, 129, 255, 0.2); - color: #2681FF; - } - - .status3 { - background: #F7F7F7; - color: #2681FF; - } - - .status4 { - background: rgba(255, 85, 51, 0.2); - color: #FF5533; - } - - .status5 { - background: #F7F7F7; - color: rgba(0, 0, 0, 0.85); - } - - .status7 { - background: rgba(255, 129, 51, 0.2); - color: #FF8133; - } - - .status8 { - background: rgba(65, 217, 165, 0.2); - color: #41D9A5; + .card-amount { + font-size: 22rpx; + color: rgba(255, 255, 255, 0.9); + font-weight: 500; + white-space: nowrap; + flex-shrink: 0; + line-height: 1; + + .amount-value { + font-size: 32rpx; + font-weight: 700; + color: #ffffff; + margin-right: 4rpx; } } } - .item-row { - padding: 16rpx 0; + .card-body { + padding: 24rpx; + background: #fff; + } - .row-label { - color: rgba(0, 0, 0, 0.55); + .info-row { + display: flex; + gap: 24rpx; + margin-bottom: 20rpx; + + &:last-child { + margin-bottom: 0; } - .row-value { - color: rgba(0, 0, 0, 0.85) + .info-item { + flex: 1; + display: flex; + flex-direction: column; + gap: 8rpx; + min-width: 0; + + .info-label { + font-size: 24rpx; + color: #999; + } + + .info-value { + font-size: 26rpx; + color: #333; + font-weight: 500; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } } } .operate { display: flex; - justify-content: flex-end; + gap: 16rpx; + padding: 0 24rpx 24rpx; + background: #fff; - .btn { - width: 146rpx; - height: 56rpx; - line-height: 56rpx; - border-radius: 8rpx; - margin-left: 5rpx; - text-align: center; + .btn-edit, + .btn-delete { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 8rpx; + height: 64rpx; + border-radius: 12rpx; + font-size: 26rpx; + font-weight: 500; + transition: all 0.3s ease; + + &:active { + transform: scale(0.95); + } } - .circulation { - background: rgba(0, 0, 0, 0.04); - margin-right: 24rpx; - color: rgba(0, 0, 0, 0.85); + .btn-edit { + background: rgba(102, 126, 234, 0.1); + color: #667eea; + border: 1rpx solid rgba(102, 126, 234, 0.3); } - .filling { - background: #2681FF; - border-radius: 8rpx; - color: #FFFFFF; + .btn-delete { + background: rgba(245, 87, 108, 0.1); + color: #f5576c; + border: 1rpx solid rgba(245, 87, 108, 0.3); } } } diff --git a/src/pages/work/bill/stocksBill/addEdit.vue b/src/pages/work/bill/stocksBill/addEdit.vue index c2dc6f5..6d1fba9 100644 --- a/src/pages/work/bill/stocksBill/addEdit.vue +++ b/src/pages/work/bill/stocksBill/addEdit.vue @@ -1,13 +1,14 @@ @@ -180,27 +193,24 @@ onLoad((option) => { \ No newline at end of file diff --git a/src/pages/work/bill/stocksBill/details.vue b/src/pages/work/bill/stocksBill/details.vue index 9b62f86..905120a 100644 --- a/src/pages/work/bill/stocksBill/details.vue +++ b/src/pages/work/bill/stocksBill/details.vue @@ -5,8 +5,9 @@ - + @@ -18,8 +19,10 @@ - - + + - + + + + + {{ item.createTime }} + + {{ dictStr(item.dealType, dealTypeList) }} + {{ item.amount }} - - - 交易时间: - {{ item.createTime }} - - - 交易金额: - {{ item.amount }} - - - 当前余额: - {{ item.currentBalance }} - - - 收益类型: - {{ dictStr(item.dealType, dealTypeList) }} - - - - 备注: - {{ item.remark }} + + + + + 账户名称 + {{ item.accountName }} + + + 当前余额 + {{ item.currentBalance }}元 + + @@ -248,11 +242,15 @@ function dictStr(val, arr) { align-items: center; position: relative; margin-bottom: 24rpx; + z-index: 100; .search-input { - background: #F5F5F5; + background: #f5f7fa; color: #333333; - margin-right: 36rpx; + flex: 1; + margin-right: 16rpx; + border-radius: 24rpx; + border: 1rpx solid #e8edf3; } .filter-panel { @@ -261,16 +259,18 @@ function dictStr(val, arr) { left: 0; top: 96rpx; background-color: rgba(0, 0, 0, 0.5); + z-index: 999; .filter-panel-content { - background-color: #ffff; + background-color: #ffffff; padding: 0 30rpx 30rpx; + border-radius: 16rpx 16rpx 0 0; .filter-title { - color: #000000; - font-size: 30rpx; - font-weight: 500; - padding: 30rpx 0; + color: #2c3e50; + font-size: 32rpx; + font-weight: 600; + padding: 32rpx 0 24rpx; } .state-list { @@ -291,114 +291,136 @@ function dictStr(val, arr) { } .active { - background-color: rgba(222, 241, 255, 1); - border: 1rpx solid rgba(22, 119, 255, 1); + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border: 2rpx solid transparent; + color: #ffffff; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + font-weight: 600; } } } .btn-box { display: flex; + gap: 16rpx; padding: 24rpx 30rpx; background-color: #fff; - box-shadow: 0rpx -10rpx 20rpx #EEEEEE; + box-shadow: 0rpx -4rpx 16rpx rgba(0, 0, 0, 0.08); } } } .list-item { margin: 0 24rpx 24rpx; - padding: 32rpx; background-color: #fff; + border-radius: 16rpx; + overflow: hidden; + box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); .item-header { display: flex; justify-content: space-between; align-items: center; - padding-bottom: 16rpx; - - .status { - .status-item { - width: 120rpx; - height: 44rpx; - text-align: center; - line-height: 44rpx; - border-radius: 4rpx; - font-size: 24rpx; - } - - .status1 { - background: #F0F0F0; - color: #8C8C8C; - } - - .status2 { - background: rgba(38, 129, 255, 0.2); - color: #2681FF; - } - - .status3 { - background: #F7F7F7; - color: #2681FF; - } - - .status4 { - background: rgba(255, 85, 51, 0.2); - color: #FF5533; - } - - .status5 { - background: #F7F7F7; - color: rgba(0, 0, 0, 0.85); - } - - .status7 { - background: rgba(255, 129, 51, 0.2); - color: #FF8133; - } - - .status8 { - background: rgba(65, 217, 165, 0.2); - color: #41D9A5; - } - } - } - - .item-row { - padding: 16rpx 0; - - .row-label { - color: rgba(0, 0, 0, 0.55); + padding: 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + min-height: 80rpx; + + .card-name-section { + display: flex; + align-items: center; + gap: 16rpx; + flex-shrink: 0; } - .row-value { - color: rgba(0, 0, 0, 0.85) + .card-icon { + width: 48rpx; + height: 48rpx; + border-radius: 50%; + background: rgba(255, 255, 255, 0.25); + display: flex; + align-items: center; + justify-content: center; + flex-shrink: 0; + } + + .card-date { + font-size: 28rpx; + color: rgba(255, 255, 255, 0.95); + white-space: nowrap; + flex-shrink: 0; + font-weight: 600; + line-height: 1; } - } - .operate { - display: flex; - justify-content: flex-end; - - .btn { - width: 146rpx; - height: 56rpx; - line-height: 56rpx; - border-radius: 8rpx; - margin-left: 5rpx; + .card-name { + font-size: 28rpx; + font-weight: 600; + color: #ffffff; + white-space: nowrap; + flex-shrink: 0; + flex: 1; text-align: center; + line-height: 1; } - .circulation { - background: rgba(0, 0, 0, 0.04); - margin-right: 24rpx; - color: rgba(0, 0, 0, 0.85); + .card-amount { + font-size: 22rpx; + color: rgba(255, 255, 255, 0.9); + font-weight: 500; + white-space: nowrap; + flex-shrink: 0; + line-height: 1; + + .amount-value { + font-size: 32rpx; + font-weight: 700; + color: #ffffff; + margin-right: 4rpx; + } + + &.profit { + .amount-value { + color: #52c41a; + } + } + + &.loss { + .amount-value { + color: #f5576c; + } + } } + } - .filling { - background: #2681FF; - border-radius: 8rpx; - color: #FFFFFF; + .card-body { + padding: 24rpx; + background: #fff; + } + + .info-row { + display: flex; + gap: 24rpx; + + .info-item { + flex: 1; + display: flex; + flex-direction: column; + gap: 8rpx; + min-width: 0; + + .info-label { + font-size: 24rpx; + color: #999; + } + + .info-value { + font-size: 26rpx; + color: #333; + font-weight: 500; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } } } } diff --git a/src/pages/work/bill/stocksBill/list.vue b/src/pages/work/bill/stocksBill/list.vue index 48690a4..c4f2a14 100644 --- a/src/pages/work/bill/stocksBill/list.vue +++ b/src/pages/work/bill/stocksBill/list.vue @@ -5,33 +5,45 @@ - + + + 新增 + - - - + + + + + + + {{ item.name }} + ({{ item.billDatePeriod }}) + + + {{ item.futureStocksNameCode }} + + {{ item.billAmount >= 0 ? '盈利' : '亏损' }} + + {{ item.billAmount }} + - - - 账单周期: - {{ item.billDatePeriod }} - - - 股票收益: - {{ item.billAmount }} - - - 账单明细 - 修改 - 删除 + + + + + 账单明细 + + + + 修改 + + + + 删除 + @@ -41,8 +53,19 @@ - + @@ -232,157 +255,191 @@ function selectStatus(item) { align-items: center; position: relative; margin-bottom: 24rpx; + z-index: 100; .search-input { - background: #F5F5F5; + background: #f5f7fa; color: #333333; - margin-right: 36rpx; + flex: 1; + margin-right: 16rpx; + border-radius: 24rpx; + border: 1rpx solid #e8edf3; } - - .filter-panel { - width: 100%; - position: absolute; - left: 0; - top: 96rpx; - background-color: rgba(0, 0, 0, 0.5); - - .filter-panel-content { - background-color: #ffff; - padding: 0 30rpx 30rpx; - - .filter-title { - color: #000000; - font-size: 30rpx; - font-weight: 500; - padding: 30rpx 0; - } - - .state-list { - display: flex; - flex-wrap: wrap; - justify-content: flex-start; - - .state-item { - width: 210rpx; - height: 72rpx; - border: 1rpx solid rgba(0, 0, 0, 0.25); - border-radius: 72rpx; - text-align: center; - line-height: 72rpx; - margin: 0 20rpx 20rpx 0; - font-size: 28rpx; - color: #000000; - } - - .active { - background-color: rgba(222, 241, 255, 1); - border: 1rpx solid rgba(22, 119, 255, 1); - } - } + + .add-btn { + display: flex; + align-items: center; + gap: 6rpx; + padding: 12rpx 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border-radius: 24rpx; + box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.3); + transition: all 0.3s ease; + flex-shrink: 0; + + &:active { + transform: scale(0.95); + box-shadow: 0 2rpx 8rpx rgba(102, 126, 234, 0.3); } - - .btn-box { - display: flex; - padding: 24rpx 30rpx; - background-color: #fff; - box-shadow: 0rpx -10rpx 20rpx #EEEEEE; + + text { + color: #ffffff; + font-size: 28rpx; + font-weight: 600; } } } .list-item { margin: 0 24rpx 24rpx; - padding: 32rpx; background-color: #fff; + border-radius: 16rpx; + overflow: hidden; + box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); .item-header { display: flex; - justify-content: space-between; - align-items: center; - padding-bottom: 16rpx; - - .status { - .status-item { - width: 120rpx; - height: 44rpx; - text-align: center; - line-height: 44rpx; - border-radius: 4rpx; - font-size: 24rpx; - } - - .status1 { - background: #F0F0F0; - color: #8C8C8C; - } - - .status2 { - background: rgba(38, 129, 255, 0.2); - color: #2681FF; - } - - .status3 { - background: #F7F7F7; - color: #2681FF; - } - - .status4 { - background: rgba(255, 85, 51, 0.2); - color: #FF5533; - } - - .status5 { - background: #F7F7F7; - color: rgba(0, 0, 0, 0.85); - } - - .status7 { - background: rgba(255, 129, 51, 0.2); - color: #FF8133; - } - - .status8 { - background: rgba(65, 217, 165, 0.2); - color: #41D9A5; - } - } - } - - .item-row { - padding: 16rpx 0; - - .row-label { - color: rgba(0, 0, 0, 0.55); + flex-direction: column; + gap: 20rpx; + padding: 24rpx; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + + .date-row { + display: flex; + align-items: center; + gap: 12rpx; + flex-wrap: wrap; } - .row-value { - color: rgba(0, 0, 0, 0.85) + .card-icon { + width: 44rpx; + height: 44rpx; + border-radius: 50%; + background: rgba(255, 255, 255, 0.25); + display: flex; + align-items: center; + justify-content: center; + flex-shrink: 0; + } + + .card-date { + font-size: 28rpx; + color: rgba(255, 255, 255, 0.85); + font-weight: 400; + line-height: 1.3; + } + + .bill-name { + font-size: 30rpx; + color: rgba(255, 255, 255, 0.95); + font-weight: 600; + line-height: 1.3; + } + + .info-row { + display: flex; + justify-content: space-between; + align-items: center; + gap: 16rpx; + padding-top: 12rpx; + border-top: 1rpx solid rgba(255, 255, 255, 0.2); + } + + .card-name { + font-size: 28rpx; + font-weight: 600; + color: #ffffff; + line-height: 1.3; + flex: 1; + min-width: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + + .profit-tag { + padding: 6rpx 16rpx; + border-radius: 12rpx; + font-size: 24rpx; + font-weight: 500; + line-height: 1; + flex-shrink: 0; + + &.profit { + background: rgba(82, 196, 26, 0.25); + color: #52c41a; + } + + &.loss { + background: rgba(245, 87, 108, 0.25); + color: #f5576c; + } + } + + .card-amount { + font-size: 24rpx; + font-weight: 500; + line-height: 1.3; + white-space: nowrap; + flex-shrink: 0; + + &.profit { + color: #52c41a; + } + + &.loss { + color: #f5576c; + } + + .amount-value { + font-size: 40rpx; + font-weight: 700; + margin-right: 4rpx; + } } } .operate { display: flex; - justify-content: flex-end; + gap: 12rpx; + padding: 24rpx; + background: #fff; - .btn { - width: 146rpx; - height: 56rpx; - line-height: 56rpx; - border-radius: 8rpx; - margin-left: 5rpx; - text-align: center; + .btn-detail, + .btn-edit, + .btn-delete { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 6rpx; + height: 64rpx; + border-radius: 12rpx; + font-size: 26rpx; + font-weight: 500; + transition: all 0.3s ease; + + &:active { + transform: scale(0.95); + } } - .circulation { - background: rgba(0, 0, 0, 0.04); - margin-right: 24rpx; - color: rgba(0, 0, 0, 0.85); + .btn-detail { + background: rgba(82, 196, 26, 0.1); + color: #52c41a; + border: 1rpx solid rgba(82, 196, 26, 0.3); } - .filling { - background: #2681FF; - border-radius: 8rpx; - color: #FFFFFF; + .btn-edit { + background: rgba(102, 126, 234, 0.1); + color: #667eea; + border: 1rpx solid rgba(102, 126, 234, 0.3); + } + + .btn-delete { + background: rgba(245, 87, 108, 0.1); + color: #f5576c; + border: 1rpx solid rgba(245, 87, 108, 0.3); } } } diff --git a/src/pages/work/product/productPriceRecord/addEdit.vue b/src/pages/work/product/productPriceRecord/addEdit.vue index c27560e..0c23c73 100644 --- a/src/pages/work/product/productPriceRecord/addEdit.vue +++ b/src/pages/work/product/productPriceRecord/addEdit.vue @@ -1,13 +1,14 @@