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 @@
-
+
@@ -250,26 +284,23 @@ function handleCreditCard() {
\ 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/investAccountDeal/list.vue b/src/pages/work/accounts/investAccountDeal/list.vue
index d86d7b2..46b0b36 100644
--- a/src/pages/work/accounts/investAccountDeal/list.vue
+++ b/src/pages/work/accounts/investAccountDeal/list.vue
@@ -5,8 +5,10 @@
-
+
+
+ 新增
+
@@ -14,8 +16,9 @@
-
+
@@ -54,8 +57,10 @@
-
-
+
+
-
-
@@ -334,11 +336,38 @@ function selectAccountType(item) {
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 {
@@ -349,14 +378,15 @@ function selectAccountType(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 {
@@ -377,114 +407,162 @@ function selectAccountType(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;
+ }
+
+ .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;
+ line-height: 1.2;
+ flex-shrink: 0;
+
+ &.profit {
+ color: #52c41a;
}
-
- .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;
+
+ &.loss {
+ color: #f5576c;
}
}
}
- .item-row {
- padding: 16rpx 0;
-
- .row-label {
- color: rgba(0, 0, 0, 0.55);
- }
-
- .row-value {
- color: rgba(0, 0, 0, 0.85)
+ .card-body {
+ padding: 20rpx 24rpx;
+ background: #fff;
+ border-top: 1rpx solid #f5f7fa;
+
+ .remark-section {
+ display: flex;
+ gap: 8rpx;
+
+ .remark-label {
+ font-size: 24rpx;
+ color: #999;
+ font-weight: 500;
+ flex-shrink: 0;
+ }
+
+ .remark-text {
+ font-size: 24rpx;
+ color: #666;
+ line-height: 1.5;
+ flex: 1;
+ word-break: break-all;
+ }
}
}
.operate {
display: flex;
+ gap: 12rpx;
+ padding: 24rpx;
+ background: #fff;
justify-content: flex-end;
- .btn {
- width: 146rpx;
- height: 56rpx;
- line-height: 56rpx;
- border-radius: 8rpx;
- margin-left: 5rpx;
- text-align: center;
- }
-
- .circulation {
- background: rgba(0, 0, 0, 0.04);
- margin-right: 24rpx;
- color: rgba(0, 0, 0, 0.85);
- }
-
- .filling {
- background: #2681FF;
- border-radius: 8rpx;
- color: #FFFFFF;
+ .btn-delete {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ gap: 6rpx;
+ padding: 0 32rpx;
+ height: 64rpx;
+ border-radius: 12rpx;
+ font-size: 26rpx;
+ font-weight: 500;
+ transition: all 0.3s ease;
+ background: rgba(245, 87, 108, 0.1);
+ color: #f5576c;
+ border: 1rpx solid rgba(245, 87, 108, 0.3);
+
+ &:active {
+ transform: scale(0.95);
+ }
}
}
}
diff --git a/src/pages/work/accounts/investTransferRecord/addEdit.vue b/src/pages/work/accounts/investTransferRecord/addEdit.vue
index a5171e9..7fea616 100644
--- a/src/pages/work/accounts/investTransferRecord/addEdit.vue
+++ b/src/pages/work/accounts/investTransferRecord/addEdit.vue
@@ -2,8 +2,10 @@
@@ -36,15 +38,16 @@
-
+
+ @confirm="handleFutruesStocksConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择投资账户">
+ @confirm="handleDealTypeConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择交易类型">
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 @@
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+ 转账信息
+
+
+
+
+
@@ -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 @@
-
-
+
+
-
-
@@ -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 @@
-
+
- {{ title}}
@@ -44,17 +45,51 @@
-
+
-
-
-
+
+
+
\ No newline at end of file
diff --git a/src/pages/work/accounts/lendTransferRecord/details.vue b/src/pages/work/accounts/lendTransferRecord/details.vue
index 56e78fd..229085d 100644
--- a/src/pages/work/accounts/lendTransferRecord/details.vue
+++ b/src/pages/work/accounts/lendTransferRecord/details.vue
@@ -1,24 +1,51 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
-
+
+
+
+
+ 借贷信息
+
+
+
+ 转出账户
+ {{ detailInfo.outAccountName }}
+
+
+
+ 转入账户
+ {{ detailInfo.inAccountName }}
+
+
+
+ 借贷时间
+ {{ detailInfo.createTime }}
+
+
+
+ 还款利息
+ {{ detailInfo.commission }}元
+
+
+
@@ -58,39 +85,102 @@ onLoad((option) => {
\ No newline at end of file
diff --git a/src/pages/work/bill/creditCardBill/addEdit.vue b/src/pages/work/bill/creditCardBill/addEdit.vue
index fcbbf99..65d15d5 100644
--- a/src/pages/work/bill/creditCardBill/addEdit.vue
+++ b/src/pages/work/bill/creditCardBill/addEdit.vue
@@ -2,8 +2,10 @@
@@ -35,13 +37,14 @@
-
+
+ @confirm="handleConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择账单状态">
+ @confirm="handleCreditCardConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择信用卡">
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 @@
+
+
+
-
+
@@ -18,8 +28,10 @@
-
-
+
+
-
@@ -268,12 +268,15 @@ function dictStr(val, arr) {
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;
}
.filter-panel {
@@ -284,14 +287,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 {
@@ -312,114 +316,134 @@ 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;
}
- }
- .operate {
- display: flex;
- justify-content: flex-end;
+ .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;
+ }
- .btn {
- width: 146rpx;
- height: 56rpx;
- line-height: 56rpx;
- border-radius: 8rpx;
- margin-left: 5rpx;
+ .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;
}
- .circulation {
- background: rgba(0, 0, 0, 0.04);
- margin-right: 24rpx;
- color: rgba(0, 0, 0, 0.85);
+ .amount-value {
+ font-size: 36rpx;
+ font-weight: 700;
+ line-height: 1.2;
+ flex-shrink: 0;
+
+ &.income {
+ color: #52c41a;
+ }
+
+ &.expense {
+ color: #f5576c;
+ }
}
+ }
- .filling {
- background: #2681FF;
- border-radius: 8rpx;
- color: #FFFFFF;
+ .card-body {
+ padding: 20rpx 24rpx;
+ background: #fff;
+ border-top: 1rpx solid #f5f7fa;
+
+ .remark-section {
+ display: flex;
+ gap: 8rpx;
+
+ .remark-label {
+ font-size: 24rpx;
+ color: #999;
+ font-weight: 500;
+ flex-shrink: 0;
+ }
+
+ .remark-text {
+ font-size: 24rpx;
+ color: #666;
+ line-height: 1.5;
+ flex: 1;
+ word-break: break-all;
+ }
}
}
}
diff --git a/src/pages/work/bill/creditCardBill/list.vue b/src/pages/work/bill/creditCardBill/list.vue
index cf0a6e7..6cdf908 100644
--- a/src/pages/work/bill/creditCardBill/list.vue
+++ b/src/pages/work/bill/creditCardBill/list.vue
@@ -5,10 +5,18 @@
-
-
+
+
+ 新增
+
+
+
+
+
+
+
@@ -19,8 +27,10 @@
-
-
+
+
@@ -28,59 +38,70 @@
-
-
@@ -288,12 +309,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 {
@@ -304,14 +351,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 {
@@ -332,114 +380,269 @@ 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;
- }
+ .available-amount {
+ display: flex;
+ align-items: baseline;
+ gap: 6rpx;
+ flex-shrink: 0;
+ }
- .status4 {
- background: rgba(255, 85, 51, 0.2);
- color: #FF5533;
- }
+ .amount-label {
+ font-size: 22rpx;
+ color: rgba(255, 255, 255, 0.75);
+ font-weight: 400;
+ }
- .status5 {
- background: #F7F7F7;
- color: rgba(0, 0, 0, 0.85);
- }
+ .amount-value {
+ font-size: 32rpx;
+ font-weight: 700;
+ color: #52c41a;
+ line-height: 1.2;
+ }
- .status7 {
- background: rgba(255, 129, 51, 0.2);
- color: #FF8133;
- }
+ .bill-amount {
+ font-size: 28rpx;
+ font-weight: 600;
+ color: #ffffff;
+ line-height: 1.2;
+ flex-shrink: 0;
+ }
- .status8 {
- background: rgba(65, 217, 165, 0.2);
- color: #41D9A5;
+ .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;
+ }
+
+ }
+
+ .stats-body {
+ padding: 20rpx 24rpx;
+ background: #f5f7fa;
+ display: flex;
+ flex-direction: column;
+ gap: 16rpx;
+ border-top: 1rpx solid #e8edf3;
+ }
+
+ .stats-row {
+ display: flex;
+ gap: 24rpx;
+ align-items: flex-start;
+ }
+
+ .stats-item {
+ flex: 1;
+ display: flex;
+ flex-direction: column;
+ gap: 6rpx;
+ min-width: 0;
+ align-items: flex-start;
+
+ .stats-label {
+ font-size: 22rpx;
+ color: #999;
+ font-weight: 400;
+ white-space: nowrap;
+ }
+
+ .stats-value {
+ font-size: 26rpx;
+ color: #333;
+ font-weight: 600;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ width: 100%;
+
+ &.percent {
+ color: #667eea;
}
}
}
- .item-row {
- padding: 16rpx 0;
+ .last-trans-row {
+ display: flex;
+ align-items: center;
+ gap: 8rpx;
+ padding-top: 12rpx;
+ border-top: 1rpx solid #e8edf3;
- .row-label {
- color: rgba(0, 0, 0, 0.55);
+ .last-trans-label {
+ font-size: 22rpx;
+ color: #999;
+ font-weight: 400;
+ min-width: 120rpx;
}
- .row-value {
- color: rgba(0, 0, 0, 0.85)
+ .last-trans-value {
+ font-size: 24rpx;
+ color: #666;
+ font-weight: 500;
+ flex: 1;
+ text-align: left;
+ }
+ }
+
+ .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;
+ }
}
}
.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/creditInstallmentHistory/addEdit.vue b/src/pages/work/bill/creditInstallmentHistory/addEdit.vue
index 2a98911..9632459 100644
--- a/src/pages/work/bill/creditInstallmentHistory/addEdit.vue
+++ b/src/pages/work/bill/creditInstallmentHistory/addEdit.vue
@@ -2,8 +2,11 @@
@@ -59,13 +62,17 @@
-
+
+ @confirm="handleConfirm"
+ title="选择结清状态"
+ :confirmColor="'#667eea'"
+ :cancelColor="'#666666'">
+ @confirm="handleOnlineLendConfirm"
+ title="选择信用卡"
+ :confirmColor="'#667eea'"
+ :cancelColor="'#666666'">
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 @@
+
+
+
-
+
-
-
+
+
+ 总利息汇总
+
-
- 还款日期:
- {{ item.repaymentDate }}
+
-
- 入账状态:
- {{ dictStr(item.postingState, postingStateList) }}
+
+
+
+ 应还本金
+ {{ item.principal }}元
+
+
+ 利息
+ {{ item.interest }}元
+
+
+ 还款状态
+ {{ dictStr(item.postingState, postingStateList) }}
+
-
- 还款期数:
- {{ item.periods }}
+
+
+
+
+ 修改
+
+
+
+ 删除
+
-
- 还款金额:
- {{ item.currentAmount }}
-
-
- 应还本金:
- {{ item.principal }}
-
-
- 利息:
- {{ item.interest }}
-
-
- 修改
- 删除
+
+
+
+ 查看
+
-
@@ -170,6 +195,10 @@ function handleUpdateInterest() {
uni.navigateTo({ url: `/pages/work/bill/creditInstallmentHistory/detailsAddEdit?id=${item.id}&installmentHistoryId=${queryParams.value.installmentHistoryId}&name=${queryParams.value.name}` })
isShow.value = true
}
+ function handleView(item) {
+ uni.navigateTo({ url: `/pages/work/bill/creditInstallmentHistory/detailsAddEdit?id=${item.id}&installmentHistoryId=${queryParams.value.installmentHistoryId}&name=${queryParams.value.name}&viewOnly=1` })
+ isShow.value = true
+ }
// function handleAdd() {
// uni.navigateTo({ url: `/pages/work/bill/creditInstallmentHistory/addEdit` })
// isShow.value = true
@@ -192,15 +221,6 @@ function handleUpdateInterest() {
\ No newline at end of file
diff --git a/src/pages/work/bill/futuresBill/details.vue b/src/pages/work/bill/futuresBill/details.vue
index f1c333e..11a8784 100644
--- a/src/pages/work/bill/futuresBill/details.vue
+++ b/src/pages/work/bill/futuresBill/details.vue
@@ -5,8 +5,9 @@
-
+
@@ -18,8 +19,10 @@
-
-
+
+
-
-
- 交易时间:
- {{ 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/futuresBill/list.vue b/src/pages/work/bill/futuresBill/list.vue
index ca3c683..adb1ebd 100644
--- a/src/pages/work/bill/futuresBill/list.vue
+++ b/src/pages/work/bill/futuresBill/list.vue
@@ -5,33 +5,45 @@
-
+
+
+ 新增
+
-
-
@@ -41,8 +53,19 @@
-
+
@@ -239,157 +262,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/bill/onlineLendHistory/addEdit.vue b/src/pages/work/bill/onlineLendHistory/addEdit.vue
index fb87edd..8b60170 100644
--- a/src/pages/work/bill/onlineLendHistory/addEdit.vue
+++ b/src/pages/work/bill/onlineLendHistory/addEdit.vue
@@ -2,8 +2,10 @@
@@ -64,13 +66,14 @@
-
+
+ @confirm="handleConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择结清状态">
+ @confirm="handleOnlineLendConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择贷款机构">
+ @confirm="handleDebitCardConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择收款账户">
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 @@
+
+
+
-
+
-
-
+
+
+ 总利息汇总
+
-
- 还款账户:
- {{ item.repaymentAccountName }}
+
-
- 还款日期:
- {{ item.repaymentDate }}
+
+
+
+ 应还本金
+ {{ item.principal }}元
+
+
+ 利息
+ {{ item.interest }}元
+
+
+ 还款状态
+ {{ dictStr(item.postingState, postingStateList) }}
+
-
- 还款状态:
- {{ dictStr(item.postingState, postingStateList) }}
+
+
+
+
+ 修改
+
+
+
+ 删除
+
-
- 还款期数:
- {{ item.periods }}
-
-
- 还款金额:
- {{ item.currentAmount }}
-
-
- 应还本金:
- {{ item.principal }}
-
-
- 利息:
- {{ item.interest }}
-
-
- 修改
- 查看
- 删除
+
+
+
+ 查看
+
-
@@ -217,158 +237,201 @@ function handleUpdateInterest() {
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;
}
-
- .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);
- }
- }
+
+ .summary-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;
+ 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;
- }
+ .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;
+ }
- .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;
- }
-
- .status8 {
- background: rgba(65, 217, 165, 0.2);
- color: #41D9A5;
- }
+ .amount-value {
+ font-size: 36rpx;
+ font-weight: 700;
+ color: #52c41a;
+ line-height: 1.2;
+ flex-shrink: 0;
}
}
- .item-row {
- padding: 16rpx 0;
+ .card-body {
+ padding: 24rpx;
+ background: #fff;
+ display: flex;
+ gap: 16rpx;
+ }
- .row-label {
- color: rgba(0, 0, 0, 0.55);
+ .info-item {
+ flex: 1;
+ display: flex;
+ flex-direction: column;
+ gap: 6rpx;
+ min-width: 0;
+
+ .info-label {
+ font-size: 22rpx;
+ color: #999;
+ font-weight: 400;
}
- .row-value {
- color: rgba(0, 0, 0, 0.85)
+ .info-value {
+ font-size: 26rpx;
+ color: #333;
+ font-weight: 500;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+
+ &.paid {
+ color: #52c41a;
+ font-weight: 600;
+ }
+
+ &.unpaid {
+ color: #ff8c00;
+ font-weight: 600;
+ }
}
}
.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-delete,
+ .btn-view {
+ 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-delete {
+ background: rgba(245, 87, 108, 0.1);
+ color: #f5576c;
+ border: 1rpx solid rgba(245, 87, 108, 0.3);
+ }
+
+ .btn-view {
+ background: rgba(82, 196, 26, 0.1);
+ color: #52c41a;
+ border: 1rpx solid rgba(82, 196, 26, 0.3);
}
}
}
diff --git a/src/pages/work/bill/onlineLendHistory/detailsAddEdit.vue b/src/pages/work/bill/onlineLendHistory/detailsAddEdit.vue
index 1dbe27e..70920d8 100644
--- a/src/pages/work/bill/onlineLendHistory/detailsAddEdit.vue
+++ b/src/pages/work/bill/onlineLendHistory/detailsAddEdit.vue
@@ -2,8 +2,10 @@
@@ -48,13 +50,14 @@
-
+
+ @confirm="handleConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择还款状态">
+ @confirm="handleDebitCardConfirm" :closeOnClickOverlay="true" cancelColor="#666666" confirmColor="#667eea" title="选择还款账户">
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 @@
-
-
@@ -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 @@
-
+
- {{ title}}
@@ -39,13 +40,25 @@
-
+
-
+
-
+
@@ -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 @@
-
-
@@ -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 @@
-
+
- {{ title}}
@@ -30,7 +31,8 @@
-
+
@@ -46,8 +48,19 @@
@confirm="datePickConfirm"
itemHeight="88"
>
-
+
@@ -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 }}
-
-
- 交易金额:
- {{ 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 @@
-
+
+
+ 新增
+
-
-
@@ -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 @@
-
+
-
+ leftIconSize="40rpx"
+ leftIconColor="#ffffff"
+ :title="title"
+ :bgColor="'linear-gradient(135deg, #667eea 0%, #764ba2 100%)'"
+ titleStyle="color: #ffffff; font-weight: 600;"
+ >
+
- {{ title}}
@@ -52,17 +53,51 @@
-
+
-
-
-
+
+
+
diff --git a/src/pages_mine/pages/avatar/index.vue b/src/pages_mine/pages/avatar/index.vue
index 2b97713..b4a7f3a 100644
--- a/src/pages_mine/pages/avatar/index.vue
+++ b/src/pages_mine/pages/avatar/index.vue
@@ -2,6 +2,10 @@
+
+
+ 拖动裁剪框选择头像区域
+
+
+
+ 请选择头像
+
-
-
+
+
@@ -348,16 +362,124 @@ export default {
}
-
diff --git a/src/pages_mine/pages/info/edit.vue b/src/pages_mine/pages/info/edit.vue
index 5ec9b7b..2af6c14 100644
--- a/src/pages_mine/pages/info/edit.vue
+++ b/src/pages_mine/pages/info/edit.vue
@@ -1,6 +1,6 @@
-
-
+
+
@@ -15,7 +15,12 @@
-
+
+
+
+
@@ -96,37 +101,52 @@ export default {
}
-
diff --git a/src/pages_mine/pages/info/index.vue b/src/pages_mine/pages/info/index.vue
index 9e473c8..8fcbcba 100644
--- a/src/pages_mine/pages/info/index.vue
+++ b/src/pages_mine/pages/info/index.vue
@@ -1,28 +1,55 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+ {{ item.label }}
+
+ {{ item.value }}
+
+
-
diff --git a/src/pages_mine/pages/pwd/index.vue b/src/pages_mine/pages/pwd/index.vue
index d0a10c5..72df1a3 100644
--- a/src/pages_mine/pages/pwd/index.vue
+++ b/src/pages_mine/pages/pwd/index.vue
@@ -1,17 +1,45 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ •
+ 密码长度为 6-20 个字符
+
+
+ •
+ 建议使用字母、数字和符号组合
+
+
+ •
+ 不要使用容易被猜到的密码
+
+
+
+
+
+
+
@@ -79,13 +107,99 @@
}
-
diff --git a/src/pages_mine/pages/setting/index.vue b/src/pages_mine/pages/setting/index.vue
index 1020a99..65465e1 100644
--- a/src/pages_mine/pages/setting/index.vue
+++ b/src/pages_mine/pages/setting/index.vue
@@ -1,33 +1,25 @@
-
-