fix:框架搭建及功能完善。
@@ -2,13 +2,10 @@
|
|||||||
|
|
||||||
export default {
|
export default {
|
||||||
onLaunch: function () {
|
onLaunch: function () {
|
||||||
console.log('App Launch')
|
|
||||||
},
|
},
|
||||||
onShow: function () {
|
onShow: function () {
|
||||||
console.log('App Show')
|
|
||||||
},
|
},
|
||||||
onHide: function () {
|
onHide: function () {
|
||||||
console.log('App Hide')
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
37
src/api/invest/accountAnalysis.js
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 标题--投资收益
|
||||||
|
export function getIncomeInfo(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/accountAnalysis/getIncomeInfo',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 标题--基础信息
|
||||||
|
export function getBaseAccountInfo(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/accountAnalysis/getBaseAccountInfo',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 标题--负债信息
|
||||||
|
export function getDebetInfo(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/accountAnalysis/getDebetInfo',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 标题--信用卡信息
|
||||||
|
export function getCreditInfo(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/accountAnalysis/getCreditInfo',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/accountDealRecord.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询账户交易记录列表
|
||||||
|
export function listAccountDealRecord(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountDealRecord/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询账户交易记录详细
|
||||||
|
export function getAccountDealRecord(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountDealRecord/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增账户交易记录
|
||||||
|
export function addAccountDealRecord(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountDealRecord',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改账户交易记录
|
||||||
|
export function updateAccountDealRecord(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountDealRecord',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除账户交易记录
|
||||||
|
export function delAccountDealRecord(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountDealRecord/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/accounts.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询记账账户列表
|
||||||
|
export function listAccounts(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accounts/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询记账账户详细
|
||||||
|
export function getAccounts(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accounts/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增记账账户
|
||||||
|
export function addAccounts(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accounts',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改记账账户
|
||||||
|
export function updateAccounts(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accounts',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除记账账户
|
||||||
|
export function delAccounts(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accounts/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/accountsTransferRecord.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询账户转账记录列表
|
||||||
|
export function listAccountsTransferRecord(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountsTransferRecord/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询账户转账记录详细
|
||||||
|
export function getAccountsTransferRecord(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountsTransferRecord/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增账户转账记录
|
||||||
|
export function addAccountsTransferRecord(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountsTransferRecord',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改账户转账记录
|
||||||
|
export function updateAccountsTransferRecord(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountsTransferRecord',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除账户转账记录
|
||||||
|
export function delAccountsTransferRecord(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/accountsTransferRecord/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/bankcardlend.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询银行卡信息列表
|
||||||
|
export function listBankcardLend(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/bankcardlend/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询银行卡信息详细
|
||||||
|
export function getBankcardLend(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/bankcardlend/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增银行卡信息
|
||||||
|
export function addBankcardLend(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/bankcardlend',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改银行卡信息
|
||||||
|
export function updateBankcardLend(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/bankcardlend',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除银行卡信息
|
||||||
|
export function delBankcardLend(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/bankcardlend/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/creditCardBill.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询信用卡账单列表
|
||||||
|
export function listCreditCardBill(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditCardBill/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询信用卡账单详细
|
||||||
|
export function getCreditCardBill(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditCardBill/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增信用卡账单
|
||||||
|
export function addCreditCardBill(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditCardBill',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改信用卡账单
|
||||||
|
export function updateCreditCardBill(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditCardBill',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除信用卡账单
|
||||||
|
export function delCreditCardBill(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditCardBill/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
62
src/api/invest/creditQueryRecord.js
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询机构记录列表
|
||||||
|
export function listQueryInstitution(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditQueryRecord/listQueryInstitution',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询征信报告查询记录列表
|
||||||
|
export function listCreditQueryRecord(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditQueryRecord/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询征信报告查询记录详细
|
||||||
|
export function getCreditQueryRecord(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditQueryRecord/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增征信报告查询记录
|
||||||
|
export function addCreditQueryRecord(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditQueryRecord',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改征信报告查询记录
|
||||||
|
export function updateCreditQueryRecord(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditQueryRecord',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除征信报告查询记录
|
||||||
|
export function delCreditQueryRecord(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditQueryRecord/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询征信报告查询记录详细
|
||||||
|
export function getCreditRecordAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/creditQueryRecord/analysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/debitInfors.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询信贷产品管理列表
|
||||||
|
export function listDebitInfors(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/debitInfors/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询信贷产品管理详细
|
||||||
|
export function getDebitInfors(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/debitInfors/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增信贷产品管理
|
||||||
|
export function addDebitInfors(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/debitInfors',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改信贷产品管理
|
||||||
|
export function updateDebitInfors(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/debitInfors',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除信贷产品管理
|
||||||
|
export function delDebitInfors(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/debitInfors/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/futureStocks.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询期货股票基本信息列表
|
||||||
|
export function listFutureStocks(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocks/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询期货股票基本信息详细
|
||||||
|
export function getFutureStocks(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocks/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增期货股票基本信息
|
||||||
|
export function addFutureStocks(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocks',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改期货股票基本信息
|
||||||
|
export function updateFutureStocks(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocks',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除期货股票基本信息
|
||||||
|
export function delFutureStocks(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocks/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/futureStocksBill.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询期货股票账单列表
|
||||||
|
export function listFutureStocksBill(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocksBill/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询期货股票账单详细
|
||||||
|
export function getFutureStocksBill(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocksBill/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增期货股票账单
|
||||||
|
export function addFutureStocksBill(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocksBill',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改期货股票账单
|
||||||
|
export function updateFutureStocksBill(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocksBill',
|
||||||
|
method: 'put',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除期货股票账单
|
||||||
|
export function delFutureStocksBill(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/futureStocksBill/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/heartJourney.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询心路历程列表
|
||||||
|
export function listHeartJourney(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/heartJourney/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询心路历程详细
|
||||||
|
export function getHeartJourney(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/heartJourney/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增心路历程
|
||||||
|
export function addHeartJourney(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/heartJourney',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改心路历程
|
||||||
|
export function updateHeartJourney(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/heartJourney',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除心路历程
|
||||||
|
export function delHeartJourney(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/heartJourney/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/installmentDetail.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询分期历史明细列表
|
||||||
|
export function listInstallmentDetail(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentDetail/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询分期历史明细详细
|
||||||
|
export function getInstallmentDetail(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentDetail/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增分期历史明细
|
||||||
|
export function addInstallmentDetail(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentDetail',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改分期历史明细
|
||||||
|
export function updateInstallmentDetail(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentDetail',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除分期历史明细
|
||||||
|
export function delInstallmentDetail(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentDetail/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/installmentHistory.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询网贷及分期历史列表
|
||||||
|
export function listInstallmentHistory(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentHistory/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询网贷及分期历史详细
|
||||||
|
export function getInstallmentHistory(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentHistory/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增网贷及分期历史
|
||||||
|
export function addInstallmentHistory(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentHistory',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改网贷及分期历史
|
||||||
|
export function updateInstallmentHistory(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentHistory',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除网贷及分期历史
|
||||||
|
export function delInstallmentHistory(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/installmentHistory/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
44
src/api/invest/posmachine.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询pos机信息列表
|
||||||
|
export function listPosmachine(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/posmachine/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询pos机信息详细
|
||||||
|
export function getPosmachine(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/posmachine/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增pos机信息
|
||||||
|
export function addPosmachine(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/posmachine',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改pos机信息
|
||||||
|
export function updatePosmachine(data) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/posmachine',
|
||||||
|
method: 'put',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除pos机信息
|
||||||
|
export function delPosmachine(id) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/posmachine/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
73
src/api/invest/statisticAnalysis.js
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
export function getCreditAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/creditAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getFuturesStocksAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/futuresStocksAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getInstallmentHistoryAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/installmentHistoryAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getCreditRecordsAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/creditRecordAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getInstallmentSettledAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/installmentSettledAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getAccountsAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/accountsAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getPosAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/posAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getAcccountsDealAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/accountsDealAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getAcccountsOutInAnalysis(query) {
|
||||||
|
return request({
|
||||||
|
url: '/invest/analysis/accountsOutInAnalysis',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -8,7 +8,7 @@ const config = {
|
|||||||
// 应用信息
|
// 应用信息
|
||||||
appInfo: {
|
appInfo: {
|
||||||
// 应用名称
|
// 应用名称
|
||||||
name: "ruoyi-app-vue3",
|
name: "intc-invest-app",
|
||||||
// 应用版本
|
// 应用版本
|
||||||
version: "1.1.0",
|
version: "1.1.0",
|
||||||
// 应用logo
|
// 应用logo
|
||||||
|
|||||||
@@ -11,13 +11,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"pages": [
|
"pages": [
|
||||||
{
|
|
||||||
"path": "pages/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "若依移动端框架",
|
|
||||||
"navigationStyle": "custom"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"path": "pages/login",
|
"path": "pages/login",
|
||||||
"style": {
|
"style": {
|
||||||
@@ -25,15 +18,22 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "pages/work",
|
"path": "pages/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "智聪科技记账平台",
|
||||||
|
"navigationStyle": "custom"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "pages/work/index",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "工作台"
|
"navigationBarTitleText": "工作台"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "pages/template",
|
"path": "pages/statistic/index",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "模板"
|
"navigationBarTitleText": "统计分析"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -54,6 +54,41 @@
|
|||||||
"navigationBarTitleText": "浏览文本"
|
"navigationBarTitleText": "浏览文本"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
,
|
||||||
|
{
|
||||||
|
"path": "pages/work/base/pos/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "pos机管理"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,
|
||||||
|
{
|
||||||
|
"path": "pages/work/base/credit/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "信用卡管理"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,
|
||||||
|
{
|
||||||
|
"path": "pages/work/accounts/accountDealRecord/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "账户交易记录"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,
|
||||||
|
{
|
||||||
|
"path": "pages/work/accounts/accounts/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "记账账户"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,
|
||||||
|
{
|
||||||
|
"path": "pages/work/heartJourney/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "心路历程"
|
||||||
|
}
|
||||||
|
}
|
||||||
],
|
],
|
||||||
"subPackages": [
|
"subPackages": [
|
||||||
{
|
{
|
||||||
@@ -253,16 +288,16 @@
|
|||||||
"text": "首页"
|
"text": "首页"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"pagePath": "pages/work",
|
"pagePath": "pages/work/index",
|
||||||
"iconPath": "static/images/tabbar/work.png",
|
"iconPath": "static/images/tabbar/work.png",
|
||||||
"selectedIconPath": "static/images/tabbar/work_.png",
|
"selectedIconPath": "static/images/tabbar/work_.png",
|
||||||
"text": "工作台"
|
"text": "工作台"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"pagePath": "pages/template",
|
"pagePath": "pages/statistic/index",
|
||||||
"iconPath": "static/images/tabbar/work.png",
|
"iconPath": "static/images/tabbar/work.png",
|
||||||
"selectedIconPath": "static/images/tabbar/work_.png",
|
"selectedIconPath": "static/images/tabbar/work_.png",
|
||||||
"text": "模板"
|
"text": "统计分析"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"pagePath": "pages/mine",
|
"pagePath": "pages/mine",
|
||||||
|
|||||||
BIN
src/pages/assets/completionTickets.png
Normal file
|
After Width: | Height: | Size: 8.9 KiB |
BIN
src/pages/assets/completionTime.png
Normal file
|
After Width: | Height: | Size: 6.9 KiB |
BIN
src/pages/assets/four.png
Normal file
|
After Width: | Height: | Size: 4.6 KiB |
BIN
src/pages/assets/one.png
Normal file
|
After Width: | Height: | Size: 5.1 KiB |
BIN
src/pages/assets/positiveRating.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
src/pages/assets/three.png
Normal file
|
After Width: | Height: | Size: 7.0 KiB |
BIN
src/pages/assets/ticketSum.png
Normal file
|
After Width: | Height: | Size: 4.0 KiB |
BIN
src/pages/assets/two.png
Normal file
|
After Width: | Height: | Size: 6.3 KiB |
@@ -1,75 +1,698 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<image class="logo" src="@/static/logo.png"></image>
|
|
||||||
<view class="text-area">
|
<view class="text-area">
|
||||||
<text class="title">Hello RuoYi-Vue</text>
|
<text class="title"></text>
|
||||||
</view>
|
|
||||||
<view class="text-area">
|
|
||||||
<up-text type="primary" text="uview-plus"></up-text>
|
|
||||||
</view>
|
|
||||||
<view class="charts-box">
|
|
||||||
<qiun-data-charts type="column" :chartData="chartData" />
|
|
||||||
</view>
|
</view>
|
||||||
|
<div class="app-container" style="overflow: auto">
|
||||||
|
<div class="header-title" ref="searchHeightRef"> 负债信息</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">净资产</div>
|
||||||
|
<div class="num">{{ netAsset }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">总负债</div>
|
||||||
|
<div class="num">{{ totalDebt }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">储蓄卡余额</div>
|
||||||
|
<div class="num">{{ debetBalance }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">投资账户余额</div>
|
||||||
|
<div class="num">{{ investBalance }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">网贷欠款</div>
|
||||||
|
<div class="num">{{ unClearedOnlineDebt }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">信用卡已使用额度</div>
|
||||||
|
<div class="num">{{ creditBalance }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">人情欠款</div>
|
||||||
|
<div class="num">{{ peopleLendHistory }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-title" ref="searchHeightRef"> 投资收益</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">投资账户余额</div>
|
||||||
|
<div class="num">{{ investBalance }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">总收益</div>
|
||||||
|
<div class="num">{{ totalIncome }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">期货收益</div>
|
||||||
|
<div class="num">{{ futuresIncome }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">股票收益</div>
|
||||||
|
<div class="num">{{ stocksIncome }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-title" ref="searchHeightRef"> 网贷信息</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">当月应还款</div>
|
||||||
|
<div class="num">{{ dueOnlineDebt }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">当月已还款</div>
|
||||||
|
<div class="num">{{ repaidOnlineDebt }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">当月待还款</div>
|
||||||
|
<div class="num">{{ leftOnlineDebt }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">未结清网贷笔数</div>
|
||||||
|
<div class="num">{{ unclearedOnlineDebtCount }}<span>笔</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">未结清网贷本金</div>
|
||||||
|
<div class="num">{{ unClearedOnlineDebtPrinciple }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">未结清网贷利息</div>
|
||||||
|
<div class="num">{{ unClearedOnlineDebtInterest }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已结清网贷笔数</div>
|
||||||
|
<div class="num">{{ clearedOnlineDebtCount }}<span>笔</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已结清网贷本金</div>
|
||||||
|
<div class="num">{{ clearedOnlineDebtPrinciple }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已结清网贷利息</div>
|
||||||
|
<div class="num">{{ clearedOnlineDebtInterest }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="header-title" ref="searchHeightRef"> 信用卡信息</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">信用卡总数</div>
|
||||||
|
<div class="num">{{ creditCount }}<span>张</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">总额度</div>
|
||||||
|
<div class="num">{{ creditLimit }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已使用额度</div>
|
||||||
|
<div class="num">{{ creditBalance }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">可用额度</div>
|
||||||
|
<div class="num">{{ creditAvailableLimit }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">信用卡使用率</div>
|
||||||
|
<div class="num">{{ creditBillRate }}<span>%</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">当月账单</div>
|
||||||
|
<div class="num">{{ currentCreditBill }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">当月分期本息</div>
|
||||||
|
<div class="num">{{ creditInstallment }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">未结清分期笔数</div>
|
||||||
|
<div class="num">{{ unclearedCreditInstallmentCount }}<span>笔</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">未结清分期本息</div>
|
||||||
|
<div class="num">{{ unclearedCreditInstallment }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">未结清分期本金</div>
|
||||||
|
<div class="num">{{ unclearedCreditInstallmentPrinciple }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">未结清分期利息</div>
|
||||||
|
<div class="num">{{ unclearedCreditInstallmentInterest }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已结清分期笔数</div>
|
||||||
|
<div class="num">{{ clearedCreditInstallmentCount }}<span>笔</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已结清分期本息</div>
|
||||||
|
<div class="num">{{ clearedCreditInstallmentDebt }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已结清分期本金</div>
|
||||||
|
<div class="num">{{ clearedCreditInstallmentPrinciple }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">已结清分期利息</div>
|
||||||
|
<div class="num">{{ clearedCreditInstallmentInterest }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">上月账单使用率</div>
|
||||||
|
<div class="num">{{ lastMonthUsedRate }}<span>%</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">上月账单</div>
|
||||||
|
<div class="num">{{ lastMonthUsedLimit }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近6个月账单使用率</div>
|
||||||
|
<div class="num">{{ lastSixMonthUsedRate }}<span>%</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近6个月账单平均使用额度</div>
|
||||||
|
<div class="num">{{ lastSixMonthUsedLimit }}<span>元</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-title" ref="searchHeightRef"> 征信信息</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近1月硬查询次数</div>
|
||||||
|
<div class="num">{{ lastOneMonths }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近2月硬查询次数</div>
|
||||||
|
<div class="num">{{ lastTwoMonths }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近3月硬查询次数</div>
|
||||||
|
<div class="num">{{ lastThreeMonths }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近6月硬查询次数</div>
|
||||||
|
<div class="num">{{ lastSixMonths }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近1年硬查询次数</div>
|
||||||
|
<div class="num">{{ lastOneYears }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近2年硬查询次数</div>
|
||||||
|
<div class="num">{{ lastTwoYears }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">总硬查询次数</div>
|
||||||
|
<div class="num">{{ lastAllYears }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近6月个人查询次数</div>
|
||||||
|
<div class="num">{{ lastSixMonthQueryCount }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近6月贷后管理次数</div>
|
||||||
|
<div class="num">{{ lastSixMonthsAfterLoan }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">近2年贷后管理次数</div>
|
||||||
|
<div class="num">{{ lastTwoYearsAfterLoan }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">贷后管理总次数</div>
|
||||||
|
<div class="num">{{ totalAfterLoan }}<span>次</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-title" ref="searchHeightRef"> 基础信息</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">POS机总数</div>
|
||||||
|
<div class="num">{{ posCount }}<span>台</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">信用卡总数</div>
|
||||||
|
<div class="num">{{ creditCount }}<span>张</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">储蓄卡总数</div>
|
||||||
|
<div class="num">{{ debitCount }}<span>张</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/one.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">股票账户总数</div>
|
||||||
|
<div class="num">{{ stocksCount }}<span>个</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/ticketSum.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">期货账户总数</div>
|
||||||
|
<div class="num">{{ futuresCount }}<span>个</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTickets.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">人情总数</div>
|
||||||
|
<div class="num">{{ peopleLendCount }}<span>人</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="header-con" ref="searchHeightRef">
|
||||||
|
<div class="item">
|
||||||
|
<img src="./assets/completionTime.png" alt="" />
|
||||||
|
<div class="info-sum">
|
||||||
|
<div class="title">网贷总数</div>
|
||||||
|
<div class="num">{{ onlineLendCount }}<span>个</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div></div>
|
||||||
|
</div>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, onMounted } from 'vue';
|
import { ref, onMounted } from 'vue';
|
||||||
|
import { getBaseAccountInfo, getDebetInfo, getIncomeInfo, getCreditInfo } from '@/api/invest/accountAnalysis.js'
|
||||||
|
import { getCreditRecordAnalysis } from '@/api/invest/creditQueryRecord'
|
||||||
|
|
||||||
const chartData = ref({});
|
//投资收益
|
||||||
|
const futuresIncome = ref(0)
|
||||||
|
const totalIncome = ref(0)
|
||||||
|
const stocksIncome = ref(0)
|
||||||
|
const investBalance = ref(0)
|
||||||
|
|
||||||
onMounted(() => { getServerData() });
|
//基础信息
|
||||||
|
const posCount = ref(0)
|
||||||
|
const debitCount = ref(0)
|
||||||
|
const stocksCount = ref(0)
|
||||||
|
const futuresCount = ref(0)
|
||||||
|
const peopleLendCount = ref(0)
|
||||||
|
const onlineLendCount = ref(0)
|
||||||
|
const creditCount = ref(0)
|
||||||
|
|
||||||
function getServerData() {
|
//网贷信息-公共
|
||||||
// 模拟从服务器获取数据时的延时
|
const creditInstallmentHistory = ref(0)
|
||||||
setTimeout(() => {
|
const peopleLendHistory = ref(0)
|
||||||
let res = {
|
const totalDebt = ref(0)
|
||||||
categories: ['2016', '2017', '2018', '2019', '2020', '2021'],
|
const debetBalance = ref(0)
|
||||||
series: [
|
const netAsset = ref(0)
|
||||||
{
|
|
||||||
name: '目标值',
|
//网贷信息
|
||||||
data: [35, 36, 31, 33, 13, 34],
|
const unclearedOnlineDebtCount = ref(0)
|
||||||
},
|
const unClearedOnlineDebt = ref(0)
|
||||||
{
|
const unClearedOnlineDebtPrinciple = ref(0)
|
||||||
name: '完成量',
|
const unClearedOnlineDebtInterest = ref(0)
|
||||||
data: [18, 27, 21, 24, 6, 28],
|
const clearedOnlineDebtCount = ref(0)
|
||||||
},
|
const clearedOnlineDebt = ref(0)
|
||||||
],
|
const clearedOnlineDebtPrinciple = ref(0)
|
||||||
};
|
const clearedOnlineDebtInterest = ref(0)
|
||||||
chartData.value = JSON.parse(JSON.stringify(res));
|
const dueOnlineDebt = ref(0)
|
||||||
}, 500);
|
const repaidOnlineDebt = ref(0)
|
||||||
|
const leftOnlineDebt = ref(0)
|
||||||
|
|
||||||
|
//信用卡信息
|
||||||
|
|
||||||
|
const currentCreditBill = ref(0)
|
||||||
|
const creditInstallment = ref(0)
|
||||||
|
const creditLimit = ref(0)
|
||||||
|
const lastSixMonthUsedLimit = ref(0)
|
||||||
|
const lastSixMonthUsedRate = ref(0)
|
||||||
|
const lastMonthUsedLimit = ref(0)
|
||||||
|
const lastMonthUsedRate = ref(0)
|
||||||
|
const creditBalance = ref(0)
|
||||||
|
const creditAvailableLimit = ref(0)
|
||||||
|
const creditBillRate = ref(0)
|
||||||
|
const unclearedCreditInstallmentCount = ref(0)
|
||||||
|
const unclearedCreditInstallment = ref(0)
|
||||||
|
const unclearedCreditInstallmentPrinciple = ref(0)
|
||||||
|
const unclearedCreditInstallmentInterest = ref(0)
|
||||||
|
const clearedCreditInstallmentCount = ref(0)
|
||||||
|
const clearedCreditInstallmentDebt = ref(0)
|
||||||
|
const clearedCreditInstallmentPrinciple = ref(0)
|
||||||
|
const clearedCreditInstallmentInterest = ref(0)
|
||||||
|
|
||||||
|
//征信信息
|
||||||
|
const lastOneMonths = ref(0)
|
||||||
|
const lastTwoMonths = ref(0)
|
||||||
|
const lastThreeMonths = ref(0)
|
||||||
|
const lastSixMonths = ref(0)
|
||||||
|
const lastOneYears = ref(0)
|
||||||
|
const lastTwoYears = ref(0)
|
||||||
|
const lastAllYears = ref(0)
|
||||||
|
const lastSixMonthQueryCount = ref(0)
|
||||||
|
const lastSixMonthsAfterLoan = ref(0)
|
||||||
|
const lastTwoYearsAfterLoan = ref(0)
|
||||||
|
const totalAfterLoan = ref(0)
|
||||||
|
|
||||||
|
const getIncomeInfoData = () => {
|
||||||
|
getIncomeInfo().then((res) => {
|
||||||
|
totalIncome.value = res.data.totalIncome
|
||||||
|
futuresIncome.value = res.data.futuresIncome
|
||||||
|
stocksIncome.value = res.data.stocksIncome
|
||||||
|
investBalance.value = res.data.investBalance
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const getBaseAccountInfoData = () => {
|
||||||
|
getBaseAccountInfo().then((res) => {
|
||||||
|
posCount.value = res.data.posCount
|
||||||
|
creditCount.value = res.data.creditCount
|
||||||
|
debitCount.value = res.data.debitCount
|
||||||
|
stocksCount.value = res.data.stocksCount
|
||||||
|
futuresCount.value = res.data.futuresCount
|
||||||
|
peopleLendCount.value = res.data.peopleLendCount
|
||||||
|
onlineLendCount.value = res.data.onlineLendCount
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const getCreditInfoData = () => {
|
||||||
|
getCreditInfo().then((res) => {
|
||||||
|
currentCreditBill.value = res.data.currentCreditBill
|
||||||
|
creditInstallment.value = res.data.creditInstallment
|
||||||
|
creditLimit.value = res.data.creditLimit
|
||||||
|
lastSixMonthUsedLimit.value = res.data.lastSixMonthUsedLimit
|
||||||
|
lastSixMonthUsedRate.value = res.data.lastSixMonthUsedRate
|
||||||
|
lastMonthUsedLimit.value = res.data.lastMonthUsedLimit
|
||||||
|
lastMonthUsedRate.value = res.data.lastMonthUsedRate
|
||||||
|
creditBalance.value = res.data.creditBalance
|
||||||
|
creditAvailableLimit.value = res.data.creditAvailableLimit
|
||||||
|
creditBillRate.value = res.data.creditBillRate
|
||||||
|
unclearedCreditInstallmentCount.value = res.data.unclearedCreditInstallmentCount
|
||||||
|
unclearedCreditInstallment.value = res.data.unclearedCreditInstallment
|
||||||
|
unclearedCreditInstallmentPrinciple.value = res.data.unclearedCreditInstallmentPrinciple
|
||||||
|
unclearedCreditInstallmentInterest.value = res.data.unclearedCreditInstallmentInterest
|
||||||
|
clearedCreditInstallmentCount.value = res.data.clearedCreditInstallmentCount
|
||||||
|
clearedCreditInstallmentDebt.value = res.data.clearedCreditInstallmentDebt
|
||||||
|
clearedCreditInstallmentPrinciple.value = res.data.clearedCreditInstallmentPrinciple
|
||||||
|
clearedCreditInstallmentInterest.value = res.data.clearedCreditInstallmentInterest
|
||||||
|
})
|
||||||
|
}
|
||||||
|
const getDebetInfoData = () => {
|
||||||
|
getDebetInfo().then((res) => {
|
||||||
|
unClearedOnlineDebt.value = res.data.unClearedOnlineDebt
|
||||||
|
creditInstallmentHistory.value = res.data.creditInstallmentHistory
|
||||||
|
totalDebt.value = res.data.totalDebt
|
||||||
|
netAsset.value = res.data.netAsset
|
||||||
|
debetBalance.value = res.data.debetBalance
|
||||||
|
peopleLendHistory.value = res.data.peopleLendHistory
|
||||||
|
unclearedOnlineDebtCount.value = res.data.unclearedOnlineDebtCount
|
||||||
|
clearedOnlineDebtCount.value = res.data.clearedOnlineDebtCount
|
||||||
|
clearedOnlineDebt.value = res.data.clearedOnlineDebt
|
||||||
|
dueOnlineDebt.value = res.data.dueOnlineDebt
|
||||||
|
repaidOnlineDebt.value = res.data.repaidOnlineDebt
|
||||||
|
leftOnlineDebt.value = res.data.leftOnlineDebt
|
||||||
|
unClearedOnlineDebtPrinciple.value = res.data.unClearedOnlineDebtPrinciple
|
||||||
|
unClearedOnlineDebtInterest.value = res.data.unClearedOnlineDebtInterest
|
||||||
|
clearedOnlineDebtPrinciple.value = res.data.clearedOnlineDebtPrinciple
|
||||||
|
clearedOnlineDebtInterest.value = res.data.clearedOnlineDebtInterest
|
||||||
|
})
|
||||||
|
}
|
||||||
|
const getCreditRecordAnalysisData = () => {
|
||||||
|
getCreditRecordAnalysis().then((res) => {
|
||||||
|
lastOneMonths.value = res.data.lastOneMonths
|
||||||
|
lastTwoMonths.value = res.data.lastTwoMonths
|
||||||
|
lastThreeMonths.value = res.data.lastThreeMonths
|
||||||
|
lastSixMonths.value = res.data.lastSixMonths
|
||||||
|
lastOneYears.value = res.data.lastOneYears
|
||||||
|
lastTwoYears.value = res.data.lastTwoYears
|
||||||
|
lastAllYears.value = res.data.lastAllYears
|
||||||
|
lastSixMonthQueryCount.value = res.data.lastSixMonthQueryCount
|
||||||
|
lastSixMonthsAfterLoan.value = res.data.lastSixMonthsAfterLoan
|
||||||
|
lastTwoYearsAfterLoan.value = res.data.lastTwoYearsAfterLoan
|
||||||
|
totalAfterLoan.value = res.data.totalAfterLoan
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
getIncomeInfoData()
|
||||||
|
getBaseAccountInfoData()
|
||||||
|
getCreditInfoData()
|
||||||
|
getDebetInfoData()
|
||||||
|
getCreditRecordAnalysisData()
|
||||||
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style lang="scss" scoped>
|
||||||
.content {
|
.app-container {
|
||||||
display: flex;
|
.header-con {
|
||||||
flex-direction: column;
|
width: 100%;
|
||||||
align-items: center;
|
height: 100px;
|
||||||
justify-content: center;
|
background-color: #ffffff;
|
||||||
}
|
margin-bottom: 5px;
|
||||||
|
display: flex;
|
||||||
.logo {
|
justify-content: space-between;
|
||||||
height: 200rpx;
|
align-items: center;
|
||||||
width: 200rpx;
|
.item {
|
||||||
margin-top: 200rpx;
|
width: 50%;
|
||||||
margin-left: auto;
|
height: 100%;
|
||||||
margin-right: auto;
|
display: flex;
|
||||||
margin-bottom: 50rpx;
|
position: relative;
|
||||||
}
|
align-items: center;
|
||||||
|
margin: 10px 30px 10px 30px;
|
||||||
.text-area {
|
.title {
|
||||||
display: flex;
|
margin-left: 10px;
|
||||||
justify-content: center;
|
color: rgb(133, 133, 148);
|
||||||
}
|
margin-bottom: 8px;
|
||||||
|
font-size: 15px;
|
||||||
.title {
|
}
|
||||||
font-size: 36rpx;
|
.num {
|
||||||
color: #8f8f94;
|
margin-left: 10px;
|
||||||
}
|
font-weight: bold;
|
||||||
|
font-size: 18px;
|
||||||
.charts-box {
|
}
|
||||||
width: 100%;
|
}
|
||||||
height: 300px;
|
img {
|
||||||
|
height: 50px;
|
||||||
|
width: 50px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.header-title {
|
||||||
|
width: 100%;
|
||||||
|
height: 30px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<view class="logo-content align-center justify-center flex">
|
<view class="logo-content align-center justify-center flex">
|
||||||
<image style="width: 100rpx;height: 100rpx;" :src="globalConfig.appInfo.logo" mode="widthFix">
|
<image style="width: 100rpx;height: 100rpx;" :src="globalConfig.appInfo.logo" mode="widthFix">
|
||||||
</image>
|
</image>
|
||||||
<text class="title">若依移动端登录</text>
|
<text class="title">智聪科技记账平台登录</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="login-form-content">
|
<view class="login-form-content">
|
||||||
<view class="input-item flex align-center">
|
<view class="input-item flex align-center">
|
||||||
|
|||||||
137
src/pages/statistic/index.vue
Normal file
@@ -0,0 +1,137 @@
|
|||||||
|
<template>
|
||||||
|
<view class="work-container">
|
||||||
|
|
||||||
|
<!-- 宫格组件 -->
|
||||||
|
<uni-section title="账单统计分析" v-show="auth.hasPermi('invest:accountAnalysis:list')" type="line"></uni-section>
|
||||||
|
<view class="grid-body">
|
||||||
|
<uni-grid :column="4" :showBorder="false" >
|
||||||
|
<uni-grid-item v-for="(item, index) in billGridList" :key="index" v-show="auth.hasPermi(item.permission)" @click="navigateTo(item.path)">
|
||||||
|
<view class="grid-item-box">
|
||||||
|
<uni-icons :type="item.icon" size="30"></uni-icons>
|
||||||
|
<text class="text">{{ item.text }}</text>
|
||||||
|
</view>
|
||||||
|
</uni-grid-item>
|
||||||
|
</uni-grid>
|
||||||
|
</view>
|
||||||
|
<!-- 宫格组件 -->
|
||||||
|
<uni-section title="记账统计分析" v-show="auth.hasPermi('invest:accountsBalance:list')" type="line"></uni-section>
|
||||||
|
<view class="grid-body">
|
||||||
|
<uni-grid :column="4" :showBorder="false" >
|
||||||
|
<uni-grid-item v-for="(item, index) in accountGridList" :key="index" v-show="auth.hasPermi(item.permission)" @click="navigateTo(item.path)">
|
||||||
|
<view class="grid-item-box">
|
||||||
|
<uni-icons :type="item.icon" size="30"></uni-icons>
|
||||||
|
<text class="text">{{ item.text }}</text>
|
||||||
|
</view>
|
||||||
|
</uni-grid-item>
|
||||||
|
</uni-grid>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref } from "vue";
|
||||||
|
import auth from "@/plugins/auth"; // 建议使用auth进行鉴权操作
|
||||||
|
const billGridList=ref([
|
||||||
|
{ path: '/pages/page1/page1', text: '账户总览', icon: 'person-filled', permission: 'invest:accountAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '收益统计分析', icon: 'arrow-down', permission: 'invest:investAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '期货统计分析', icon: 'down', permission: 'invest:futuresAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '股票统计分析', icon: 'left', permission: 'invest:stocksAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '网贷待还统计', icon: 'cloud-upload', permission: 'invest:onlineLendAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '网贷已还统计', icon: 'download', permission: 'invest:onlineLendSettledAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '信用卡账单统计', icon: 'map', permission: 'invest:creditAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '信用卡分期待还', icon: 'map-filled', permission: 'invest:creditInstallment:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '信用卡分期已还', icon: 'map-pin-ellipse', permission: 'invest:creditInstallmentSettledAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '征信查询统计', icon: 'search', permission: 'invest:creditRecordAnalysis:list' }
|
||||||
|
])
|
||||||
|
const accountGridList=ref([
|
||||||
|
{ path: '/pages/page1/page1', text: '记账账户统计', icon: 'staff-filled' , permission: 'invest:accountsBalance:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: 'POS机刷卡统计', icon: 'shop-filled' , permission: 'invest:posAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '储蓄卡收支统计', icon: 'wallet-filled', permission: 'invest:accountDealRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '信用卡收支统计', icon: 'wallet' , permission: 'invest:accountDealRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '投资收益统计', icon: 'arrow-down', permission: 'invest:investDealAnalysis:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '账户收支统计', icon: 'person', permission: 'invest:accountDealAnalysis:list' }
|
||||||
|
])
|
||||||
|
|
||||||
|
function navigateTo(path) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: path
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
page {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
box-sizing: border-box;
|
||||||
|
background-color: #fff;
|
||||||
|
min-height: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
view {
|
||||||
|
font-size: 20px;
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* #endif */
|
||||||
|
|
||||||
|
.text {
|
||||||
|
text-align: center;
|
||||||
|
font-size: 22rpx;
|
||||||
|
margin-top: 10rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-item-box {
|
||||||
|
flex: 1;
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
display: flex;
|
||||||
|
/* #endif */
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
padding: 15px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.uni-margin-wrap {
|
||||||
|
width: 690rpx;
|
||||||
|
width: 100%;
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
.swiper {
|
||||||
|
height: 300rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.swiper-box {
|
||||||
|
height: 150px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.swiper-item {
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
display: flex;
|
||||||
|
/* #endif */
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
color: #fff;
|
||||||
|
height: 300rpx;
|
||||||
|
line-height: 300rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (min-width: 500px) {
|
||||||
|
.uni-swiper-dot-box {
|
||||||
|
width: 400px;
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
margin: 0 auto;
|
||||||
|
/* #endif */
|
||||||
|
margin-top: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -1,184 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="work-container">
|
|
||||||
<!-- 轮播图 -->
|
|
||||||
<uni-swiper-dot class="uni-swiper-dot-box" :info="data" :current="current" field="content">
|
|
||||||
<swiper class="swiper-box" :current="swiperDotIndex" @change="changeSwiper">
|
|
||||||
<swiper-item v-for="(item, index) in data" :key="index">
|
|
||||||
<view class="swiper-item" @click="clickBannerItem(item)">
|
|
||||||
<image :src="item.image" mode="aspectFill" :draggable="false" />
|
|
||||||
</view>
|
|
||||||
</swiper-item>
|
|
||||||
</swiper>
|
|
||||||
</uni-swiper-dot>
|
|
||||||
|
|
||||||
<!-- 宫格组件 -->
|
|
||||||
<uni-section title="系统管理" type="line"></uni-section>
|
|
||||||
<view class="grid-body">
|
|
||||||
<uni-grid :column="4" :showBorder="false" @change="changeGrid">
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="person-filled" size="30"></uni-icons>
|
|
||||||
<text class="text">用户管理</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="staff-filled" size="30"></uni-icons>
|
|
||||||
<text class="text">角色管理</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="color" size="30"></uni-icons>
|
|
||||||
<text class="text">菜单管理</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="settings-filled" size="30"></uni-icons>
|
|
||||||
<text class="text">部门管理</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="heart-filled" size="30"></uni-icons>
|
|
||||||
<text class="text">岗位管理</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="bars" size="30"></uni-icons>
|
|
||||||
<text class="text">字典管理</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="gear-filled" size="30"></uni-icons>
|
|
||||||
<text class="text">参数设置</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="chat-filled" size="30"></uni-icons>
|
|
||||||
<text class="text">通知公告</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
<uni-grid-item>
|
|
||||||
<view class="grid-item-box">
|
|
||||||
<uni-icons type="wallet-filled" size="30"></uni-icons>
|
|
||||||
<text class="text">日志管理</text>
|
|
||||||
</view>
|
|
||||||
</uni-grid-item>
|
|
||||||
</uni-grid>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script setup>
|
|
||||||
import { ref } from "vue";
|
|
||||||
import modal from "@/plugins/modal"
|
|
||||||
const current=ref(0);
|
|
||||||
const swiperDotIndex=ref(0);
|
|
||||||
const data=ref([{
|
|
||||||
image: '/static/images/banner/banner01.jpg'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '/static/images/banner/banner02.jpg'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '/static/images/banner/banner03.jpg'
|
|
||||||
}
|
|
||||||
]);
|
|
||||||
|
|
||||||
function clickBannerItem(item) {
|
|
||||||
console.info(item)
|
|
||||||
};
|
|
||||||
function changeSwiper(e) {
|
|
||||||
current.value = e.detail.current
|
|
||||||
}
|
|
||||||
function changeGrid(e) {
|
|
||||||
modal.showToast({
|
|
||||||
title: '模块建设中',
|
|
||||||
mask: false,
|
|
||||||
icon:'loading',
|
|
||||||
duration: 1000
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss">
|
|
||||||
/* #ifndef APP-NVUE */
|
|
||||||
page {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
box-sizing: border-box;
|
|
||||||
background-color: #fff;
|
|
||||||
min-height: 100%;
|
|
||||||
height: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
view {
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* #endif */
|
|
||||||
|
|
||||||
.text {
|
|
||||||
text-align: center;
|
|
||||||
font-size: 26rpx;
|
|
||||||
margin-top: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.grid-item-box {
|
|
||||||
flex: 1;
|
|
||||||
/* #ifndef APP-NVUE */
|
|
||||||
display: flex;
|
|
||||||
/* #endif */
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
padding: 15px 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uni-margin-wrap {
|
|
||||||
width: 690rpx;
|
|
||||||
width: 100%;
|
|
||||||
;
|
|
||||||
}
|
|
||||||
|
|
||||||
.swiper {
|
|
||||||
height: 300rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.swiper-box {
|
|
||||||
height: 150px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.swiper-item {
|
|
||||||
/* #ifndef APP-NVUE */
|
|
||||||
display: flex;
|
|
||||||
/* #endif */
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
color: #fff;
|
|
||||||
height: 300rpx;
|
|
||||||
line-height: 300rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (min-width: 500px) {
|
|
||||||
.uni-swiper-dot-box {
|
|
||||||
width: 400px;
|
|
||||||
/* #ifndef APP-NVUE */
|
|
||||||
margin: 0 auto;
|
|
||||||
/* #endif */
|
|
||||||
margin-top: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.image {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
8
src/pages/work/accounts/accountDealRecord/index.vue
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<template>
|
||||||
|
<view class="work-container">
|
||||||
|
交易记录
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
</template>
|
||||||
8
src/pages/work/accounts/accounts/index.vue
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<template>
|
||||||
|
<view class="work-container">
|
||||||
|
记账账户
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
</template>
|
||||||
208
src/pages/work/base/credit/index.vue
Normal file
@@ -0,0 +1,208 @@
|
|||||||
|
<template>
|
||||||
|
<view class="normal-login-container">
|
||||||
|
<view class="logo-content align-center justify-center flex">
|
||||||
|
<image style="width: 100rpx;height: 100rpx;" :src="globalConfig.appInfo.logo" mode="widthFix">
|
||||||
|
</image>
|
||||||
|
<text class="title">智聪科技记账平台登录</text>
|
||||||
|
</view>
|
||||||
|
<view class="login-form-content">
|
||||||
|
<view class="input-item flex align-center">
|
||||||
|
<view class="iconfont icon-user icon"></view>
|
||||||
|
<input v-model="loginForm.username" class="input" type="text" placeholder="请输入账号" maxlength="30" />
|
||||||
|
</view>
|
||||||
|
<view class="input-item flex align-center">
|
||||||
|
<view class="iconfont icon-password icon"></view>
|
||||||
|
<input v-model="loginForm.password" type="password" class="input" placeholder="请输入密码" maxlength="20" />
|
||||||
|
</view>
|
||||||
|
<view class="input-item flex align-center" style="width: 60%;margin: 0px;" v-if="captchaEnabled">
|
||||||
|
<view class="iconfont icon-code icon"></view>
|
||||||
|
<input v-model="loginForm.code" type="number" class="input" placeholder="请输入验证码" maxlength="4" />
|
||||||
|
<view class="login-code">
|
||||||
|
<image :src="codeUrl" @click="getCode" class="login-code-img"></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="action-btn">
|
||||||
|
<button @click="handleLogin" class="login-btn cu-btn block bg-blue lg round">登录</button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="xieyi text-center">
|
||||||
|
<text class="text-grey1">登录即代表同意</text>
|
||||||
|
<text @click="handleUserAgrement" class="text-blue">《用户协议》</text>
|
||||||
|
<text @click="handlePrivacy" class="text-blue">《隐私协议》</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import modal from '@/plugins/modal'
|
||||||
|
import { getCodeImg } from '@/api/login'
|
||||||
|
import { ref } from "vue";
|
||||||
|
import config from '@/config.js'
|
||||||
|
import useUserStore from '@/store/modules/user'
|
||||||
|
import { getWxCode } from '@/utils/geek';
|
||||||
|
import { wxLogin } from '@/api/oauth';
|
||||||
|
import { setToken } from '@/utils/auth';
|
||||||
|
const userStore = useUserStore()
|
||||||
|
const codeUrl = ref("");
|
||||||
|
const captchaEnabled = ref(true); // 是否开启验证码
|
||||||
|
const useWxLogin = ref(false); // 是否使用微信登录
|
||||||
|
const globalConfig = ref(config);
|
||||||
|
const loginForm = ref({
|
||||||
|
username: "admin",
|
||||||
|
password: "admin123",
|
||||||
|
code: "",
|
||||||
|
uuid: ''
|
||||||
|
});
|
||||||
|
|
||||||
|
if (useWxLogin.value) {
|
||||||
|
getWxCode().then(res => {
|
||||||
|
console.log(res);
|
||||||
|
wxLogin('miniapp',res).then(res => {
|
||||||
|
if(res.token != null){
|
||||||
|
setToken(res.token);
|
||||||
|
loginSuccess()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 获取图形验证码
|
||||||
|
function getCode() {
|
||||||
|
getCodeImg().then(res => {
|
||||||
|
captchaEnabled.value = res.captchaEnabled === undefined ? true : res.captchaEnabled
|
||||||
|
if (captchaEnabled.value) {
|
||||||
|
codeUrl.value = 'data:image/gif;base64,' + res.img
|
||||||
|
loginForm.value.uuid = res.uuid
|
||||||
|
}
|
||||||
|
})
|
||||||
|
};
|
||||||
|
|
||||||
|
async function handleLogin() {
|
||||||
|
if (loginForm.value.username === "") {
|
||||||
|
modal.msgError("请输入您的账号")
|
||||||
|
} else if (loginForm.value.password === "") {
|
||||||
|
modal.msgError("请输入您的密码")
|
||||||
|
} else if (loginForm.value.code === "" && captchaEnabled.value) {
|
||||||
|
modal.msgError("请输入验证码")
|
||||||
|
} else {
|
||||||
|
modal.loading("登录中,请耐心等待...")
|
||||||
|
pwdLogin()
|
||||||
|
}
|
||||||
|
};
|
||||||
|
// 密码登录
|
||||||
|
async function pwdLogin() {
|
||||||
|
userStore.login(loginForm.value).then(() => {
|
||||||
|
modal.closeLoading()
|
||||||
|
loginSuccess()
|
||||||
|
}).catch(() => {
|
||||||
|
if (captchaEnabled.value) {
|
||||||
|
modal.closeLoading()
|
||||||
|
getCode()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
};
|
||||||
|
|
||||||
|
function loginSuccess(result) {
|
||||||
|
// 设置用户信息
|
||||||
|
userStore.getInfo().then(res => {
|
||||||
|
uni.switchTab({
|
||||||
|
url: '/pages/index'
|
||||||
|
});
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 隐私协议
|
||||||
|
function handlePrivacy() {
|
||||||
|
let site = globalConfig.value.appInfo.agreements[0];
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/pages/common/webview/index?title=${site.title}&url=${site.url}`
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 用户协议
|
||||||
|
function handleUserAgrement() {
|
||||||
|
let site = globalConfig.value.appInfo.agreements[1]
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/pages/common/webview/index?title=${site.title}&url=${site.url}`
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
getCode();
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
page {
|
||||||
|
background-color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.normal-login-container {
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
.logo-content {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 21px;
|
||||||
|
text-align: center;
|
||||||
|
padding-top: 15%;
|
||||||
|
|
||||||
|
image {
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.login-form-content {
|
||||||
|
text-align: center;
|
||||||
|
margin: 20px auto;
|
||||||
|
margin-top: 15%;
|
||||||
|
width: 80%;
|
||||||
|
|
||||||
|
.input-item {
|
||||||
|
margin: 20px auto;
|
||||||
|
background-color: #f5f6f7;
|
||||||
|
height: 45px;
|
||||||
|
border-radius: 20px;
|
||||||
|
|
||||||
|
.icon {
|
||||||
|
font-size: 38rpx;
|
||||||
|
margin-left: 10px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 14px;
|
||||||
|
line-height: 20px;
|
||||||
|
text-align: left;
|
||||||
|
padding-left: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.login-btn {
|
||||||
|
margin-top: 40px;
|
||||||
|
height: 45px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.xieyi {
|
||||||
|
color: #333;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.login-code {
|
||||||
|
height: 38px;
|
||||||
|
float: right;
|
||||||
|
|
||||||
|
.login-code-img {
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
margin-left: 10px;
|
||||||
|
width: 200rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
237
src/pages/work/base/pos/index.vue
Normal file
@@ -0,0 +1,237 @@
|
|||||||
|
<template>
|
||||||
|
<view class="mine-container" :style="{ height: `${windowHeight}px` }">
|
||||||
|
<!--顶部个人信息栏-->
|
||||||
|
<view class="header-section">
|
||||||
|
<view class="flex padding justify-between">
|
||||||
|
<view class="flex align-center">
|
||||||
|
<view v-if="!avatar" class="cu-avatar xl round bg-white">
|
||||||
|
<view class="iconfont icon-people text-gray icon"></view>
|
||||||
|
</view>
|
||||||
|
<image v-if="avatar" @click="handleToAvatar" :src="avatar" class="cu-avatar xl round" mode="widthFix">
|
||||||
|
</image>
|
||||||
|
<view v-if="!name" @click="handleToLogin" class="login-tip">
|
||||||
|
点击登录
|
||||||
|
</view>
|
||||||
|
<view v-if="name" @click="handleToInfo" class="user-info">
|
||||||
|
<view class="u_title">
|
||||||
|
用户名:{{ name }}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view @click="handleToInfo" class="flex align-center">
|
||||||
|
<text>个人信息</text>
|
||||||
|
<view class="iconfont icon-right"></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="content-section">
|
||||||
|
<view class="mine-actions grid col-4 text-center">
|
||||||
|
<view class="action-item" @click="handleJiaoLiuQun">
|
||||||
|
<view class="iconfont icon-friendfill text-pink icon"></view>
|
||||||
|
<text class="text">交流群</text>
|
||||||
|
</view>
|
||||||
|
<view class="action-item" @click="handleBuilding">
|
||||||
|
<view class="iconfont icon-service text-blue icon"></view>
|
||||||
|
<text class="text">在线客服</text>
|
||||||
|
</view>
|
||||||
|
<view class="action-item" @click="handleBuilding">
|
||||||
|
<view class="iconfont icon-community text-mauve icon"></view>
|
||||||
|
<text class="text">反馈社区</text>
|
||||||
|
</view>
|
||||||
|
<view class="action-item" @click="handleBuilding">
|
||||||
|
<view class="iconfont icon-dianzan text-green icon"></view>
|
||||||
|
<text class="text">点赞我们</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="menu-list">
|
||||||
|
<view class="list-cell list-cell-arrow" @click="handleToEditInfo">
|
||||||
|
<view class="menu-item-box">
|
||||||
|
<view class="iconfont icon-user menu-icon"></view>
|
||||||
|
<view>编辑资料</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list-cell list-cell-arrow" @click="handleHelp">
|
||||||
|
<view class="menu-item-box">
|
||||||
|
<view class="iconfont icon-help menu-icon"></view>
|
||||||
|
<view>常见问题</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list-cell list-cell-arrow" @click="handleAbout">
|
||||||
|
<view class="menu-item-box">
|
||||||
|
<view class="iconfont icon-aixin menu-icon"></view>
|
||||||
|
<view>关于我们</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list-cell list-cell-arrow" @click="handleToSetting">
|
||||||
|
<view class="menu-item-box">
|
||||||
|
<view class="iconfont icon-setting menu-icon"></view>
|
||||||
|
<view>应用设置</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<!-- <view>
|
||||||
|
<uni-popup ref="popup" type="dialog">
|
||||||
|
<uni-popup-dialog type="info" cancelText="关闭" confirmText="退出"
|
||||||
|
title="通知" content="确定注销并退出系统吗"
|
||||||
|
@confirm="dialogConfirm"
|
||||||
|
@close="dialogClose">
|
||||||
|
</uni-popup-dialog>
|
||||||
|
</uni-popup>
|
||||||
|
</view> -->
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref } from "vue";
|
||||||
|
import config from '@/config.js'
|
||||||
|
import useUserStore from '@/store/modules/user'
|
||||||
|
const userStore = useUserStore()
|
||||||
|
const name = userStore.name;
|
||||||
|
const version = config.appInfo.version;
|
||||||
|
|
||||||
|
const avatar = ref(userStore.avatar);
|
||||||
|
const windowHeight = ref(uni.getSystemInfoSync().windowHeight - 50);
|
||||||
|
const popup = ref(null);
|
||||||
|
|
||||||
|
uni.$on('refresh', () => {
|
||||||
|
avatar.value = userStore.avatar;
|
||||||
|
})
|
||||||
|
|
||||||
|
console.log(avatar.value)
|
||||||
|
|
||||||
|
function handleToInfo() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages_mine/pages/info/index'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleToEditInfo() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages_mine/pages/info/edit'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleToSetting() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages_mine/pages/setting/index'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleToLogin() {
|
||||||
|
uni.reLaunch({
|
||||||
|
url: '/pages/login'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleToAvatar() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages_mine/pages/avatar/index'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleLogout() {
|
||||||
|
popup.value.open();
|
||||||
|
};
|
||||||
|
function dialogConfirm() {
|
||||||
|
//console.log('----------------点击确认------------')
|
||||||
|
|
||||||
|
userStore.logOut().then(() => {
|
||||||
|
uni.reLaunch({
|
||||||
|
url: '/pages/login'
|
||||||
|
});
|
||||||
|
})
|
||||||
|
};
|
||||||
|
function dialogClose() {
|
||||||
|
//console.log('点击关闭')
|
||||||
|
};
|
||||||
|
function handleHelp() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages_mine/pages/help/index'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleAbout() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages_mine/pages/about/index'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleJiaoLiuQun() {
|
||||||
|
uni.showToast({
|
||||||
|
title: 'QQ群:133713780',
|
||||||
|
mask: false,
|
||||||
|
icon: "none",
|
||||||
|
duration: 1000
|
||||||
|
});
|
||||||
|
};
|
||||||
|
function handleBuilding() {
|
||||||
|
uni.showToast({
|
||||||
|
title: '模块建设中~',
|
||||||
|
mask: false,
|
||||||
|
icon: "none",
|
||||||
|
duration: 1000
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
page {
|
||||||
|
background-color: #f5f6f7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mine-container {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
|
||||||
|
.header-section {
|
||||||
|
padding: 15px 15px 45px 15px;
|
||||||
|
background-color: #3c96f3;
|
||||||
|
color: white;
|
||||||
|
|
||||||
|
.login-tip {
|
||||||
|
font-size: 18px;
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cu-avatar {
|
||||||
|
border: 2px solid #eaeaea;
|
||||||
|
|
||||||
|
.icon {
|
||||||
|
font-size: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.user-info {
|
||||||
|
margin-left: 15px;
|
||||||
|
|
||||||
|
.u_title {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 30px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.content-section {
|
||||||
|
position: relative;
|
||||||
|
top: -50px;
|
||||||
|
|
||||||
|
.mine-actions {
|
||||||
|
margin: 15px 15px;
|
||||||
|
padding: 20px 0px;
|
||||||
|
border-radius: 8px;
|
||||||
|
background-color: white;
|
||||||
|
|
||||||
|
.action-item {
|
||||||
|
.icon {
|
||||||
|
font-size: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text {
|
||||||
|
display: block;
|
||||||
|
font-size: 13px;
|
||||||
|
margin: 8px 0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
8
src/pages/work/heartJourney/index.vue
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<template>
|
||||||
|
<view class="work-container">
|
||||||
|
心路历程
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
</template>
|
||||||
173
src/pages/work/index.vue
Normal file
@@ -0,0 +1,173 @@
|
|||||||
|
<template>
|
||||||
|
<view class="work-container">
|
||||||
|
|
||||||
|
<!-- 宫格组件 -->
|
||||||
|
<uni-section title="基础信息" v-show="auth.hasPermi('invest:bankcard:list')" type="line"></uni-section>
|
||||||
|
<view class="grid-body">
|
||||||
|
<uni-grid :column="4" :showBorder="false">
|
||||||
|
<uni-grid-item v-for="(item, index) in baseGridList" :key="index" v-show="auth.hasPermi(item.permission)" @click="navigateTo(item.path)">
|
||||||
|
<view class="grid-item-box">
|
||||||
|
<uni-icons :type="item.icon" size="30"></uni-icons>
|
||||||
|
<text class="text">{{ item.text }}</text>
|
||||||
|
</view>
|
||||||
|
</uni-grid-item>
|
||||||
|
</uni-grid>
|
||||||
|
</view>
|
||||||
|
<!-- 宫格组件 -->
|
||||||
|
<uni-section title="账单管理" v-show="auth.hasPermi('invest:creditQueryRecord:list')" type="line"></uni-section>
|
||||||
|
<view class="grid-body">
|
||||||
|
<uni-grid :column="4" :showBorder="false">
|
||||||
|
<uni-grid-item v-for="(item, index) in billGridList" :key="index" v-show="auth.hasPermi(item.permission)" @click="navigateTo(item.path)">
|
||||||
|
<view class="grid-item-box">
|
||||||
|
<uni-icons :type="item.icon" size="30"></uni-icons>
|
||||||
|
<text class="text">{{ item.text }}</text>
|
||||||
|
</view>
|
||||||
|
</uni-grid-item>
|
||||||
|
</uni-grid>
|
||||||
|
</view>
|
||||||
|
<!-- 宫格组件 -->
|
||||||
|
<uni-section title="记账管理" v-show="auth.hasPermi('invest:accounts:list')" type="line"></uni-section>
|
||||||
|
<view class="grid-body">
|
||||||
|
<uni-grid :column="4" :showBorder="false">
|
||||||
|
<uni-grid-item v-for="(item, index) in accountGridList" :key="index" v-show="auth.hasPermi(item.permission)" @click="navigateTo(item.path)">
|
||||||
|
<view class="grid-item-box">
|
||||||
|
<uni-icons :type="item.icon" size="30"></uni-icons>
|
||||||
|
<text class="text">{{ item.text }}</text>
|
||||||
|
</view>
|
||||||
|
</uni-grid-item>
|
||||||
|
</uni-grid>
|
||||||
|
</view>
|
||||||
|
<!-- 宫格组件 -->
|
||||||
|
<uni-section title="心路历程" v-show="auth.hasPermi('invest:heartJourney:list')" type="line"></uni-section>
|
||||||
|
<view class="grid-body">
|
||||||
|
<uni-grid :column="4" :showBorder="false">
|
||||||
|
<uni-grid-item v-for="(item, index) in heartJourneyGridList" :key="index" v-show="auth.hasPermi(item.permission)" @click="navigateTo(item.path)">
|
||||||
|
<view class="grid-item-box">
|
||||||
|
<uni-icons :type="item.icon" size="30"></uni-icons>
|
||||||
|
<text class="text">{{ item.text }}</text>
|
||||||
|
</view>
|
||||||
|
</uni-grid-item>
|
||||||
|
</uni-grid>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import auth from "@/plugins/auth"; // 建议使用auth进行鉴权操作
|
||||||
|
|
||||||
|
// 也可以使用下面的方式
|
||||||
|
import { ref } from "vue";
|
||||||
|
const baseGridList=ref([
|
||||||
|
{ path: '/pages/work/base/pos/index', text: 'pos机管理', icon: 'shop-filled', permission: 'invest:posmachine:list' },
|
||||||
|
{ path: '/pages/work/base/credit/index', text: '信用卡管理', icon: 'wallet', permission: 'invest:bankcard:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '储蓄卡管理', icon: 'wallet-filled', permission: 'invest:bankcard:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '借贷账户管理', icon: 'upload', permission: 'invest:bankcard:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '股票账户管理', icon: 'calendar', permission: 'invest:futureStocks:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '期货账户管理', icon: 'paperplane-filled', permission: 'invest:futureStocks:list' }
|
||||||
|
])
|
||||||
|
const billGridList=ref([
|
||||||
|
{ path: '/pages/page1/page1', text: '期货账单', icon: 'map', permission: 'invest:futureStocksBill:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '股票账单', icon: 'paperplane', permission: 'invest:futureStocksBill:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '网贷账单', icon: 'settings', permission: 'invest:installmentHistory:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '信用卡账单', icon: 'list', permission: 'invest:creditCardBill:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '信用卡分期账单', icon: 'bars', permission: 'invest:installmentHistory:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '人情账单', icon: 'staff-filled', permission: 'invest:installmentHistory:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '征信查询记录', icon: 'search', permission: 'invest:creditQueryRecord:list' }
|
||||||
|
])
|
||||||
|
const accountGridList=ref([
|
||||||
|
{ path: '/pages/work/accounts/accounts/index', text: '记账账户', icon: 'staff', permission: 'invest:accounts:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: 'POS机刷卡记账', icon: 'reload', permission: 'invest:accountsTransferRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '信用卡还款', icon: 'arrow-left', permission: 'invest:accountsTransferRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '投资账户记账', icon: 'auth-filled', permission: 'invest:accountsTransferRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '投资交易记录', icon: 'chatboxes', permission: 'invest:accountDealRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '储蓄账户记账', icon: 'tune', permission: 'invest:accountsTransferRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '借贷账户记账', icon: 'link', permission: 'invest:accountsTransferRecord:list' },
|
||||||
|
{ path: '/pages/page1/page1', text: '账户交易记录', icon: 'paperclip', permission: 'invest:accountDealRecord:list' }
|
||||||
|
])
|
||||||
|
const heartJourneyGridList=ref([
|
||||||
|
{ path: '/pages/work/heartJourney/index', text: '心路历程', icon: 'heart', permission: 'invest:heartJourney:list' }
|
||||||
|
])
|
||||||
|
function navigateTo(path) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: path
|
||||||
|
});
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
page {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
box-sizing: border-box;
|
||||||
|
background-color: #fff;
|
||||||
|
min-height: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
view {
|
||||||
|
font-size: 14px;
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* #endif */
|
||||||
|
|
||||||
|
.text {
|
||||||
|
text-align: center;
|
||||||
|
font-size: 22rpx;
|
||||||
|
margin-top: 10rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-item-box {
|
||||||
|
flex: 1;
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
display: flex;
|
||||||
|
/* #endif */
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
padding: 15px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.uni-margin-wrap {
|
||||||
|
width: 690rpx;
|
||||||
|
width: 100%;
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
.swiper {
|
||||||
|
height: 300rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.swiper-box {
|
||||||
|
height: 150px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.swiper-item {
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
display: flex;
|
||||||
|
/* #endif */
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
color: #fff;
|
||||||
|
height: 300rpx;
|
||||||
|
line-height: 300rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (min-width: 500px) {
|
||||||
|
.uni-swiper-dot-box {
|
||||||
|
width: 400px;
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
margin: 0 auto;
|
||||||
|
/* #endif */
|
||||||
|
margin-top: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -47,7 +47,7 @@ const popup = ref(null);
|
|||||||
|
|
||||||
function handleToPwd() {
|
function handleToPwd() {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: '/pages/mine/pwd/index'
|
url: '/pages_mine/pages/pwd/index'
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||