Browse Source

??

lihuilin/feature-20250623164044-金币前端
lihuilin 3 days ago
parent
commit
4c3c8cd5e0
  1. 6
      .env.development
  2. 416
      src/views/managerecharge/rate.vue
  3. 9
      src/views/permissions/index.vue

6
.env.development

@ -1,11 +1,7 @@
# VITE_API_BASE='http://54.251.137.151:10704/'
# VITE_API_BASE='https://hwjb.homilychart.com/gold_htms_dev'
# VITE_API_BASE='http://54.251.137.151:10704/'
<<<<<<< HEAD
VITE_API_BASE='http://192.168.8.94:8080/'
=======
# VITE_API_BASE='http://192.168.8.225:8080/'
# VITE_API_BASE='http://192.168.8.94:8080/'
VITE_API_BASE='http://192.168.8.247:8081/'
VITE_API_BASE='http://18.143.76.3/'
>>>>>>> milestone-20250623-金币前端

416
src/views/managerecharge/rate.vue

@ -1,423 +1,8 @@
<script setup>
<<<<<<< HEAD
import { ref, onMounted, computed, reactive } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
import axios from 'axios'
import { createApp } from 'vue'
import moment from 'moment'
import request from '@/util/http'
const timeRange = ref([])
=======
import {onMounted, reactive, ref} from 'vue'
import {ElMessage, ElMessageBox} from 'element-plus'
import request from '@/util/http'
//
const adminData = ref({
adminId: '',
name: ''
})
const getAdminData = async function () {
try {
const result = await request({
url: '/admin/userinfo',
data: {}
})
adminData.value = result
rateEdit.value.adminId = adminData.value.adminId
console.log('请求成功', result)
} catch (error) {
console.log('请求失败', error)
}
}
//
const regeEdit = ref(false)
// (id )
const editFormRef = ref(null)
//
const tableData = ref([])
//
>>>>>>> milestone-20250623-金币前端
const getObj = ref({
pageNum: 1,
pageSize: 10
})
const tableData = ref([])
<<<<<<< HEAD
const reset = function () {
getObj.value.pageNum = 1
getObj.value.pageSize = 10
timeRange = ref([])
=======
const total = ref(0)
const getAllRate = async function (val) {
try {
//
if (typeof val === 'number') {
getObj.value.pageNum = val;
}
// POST
const result = await request({
url: 'http://192.168.9.21:8081/rate/selectAll',
method: 'POST',
data: {
pageNum: getObj.value.pageNum,
pageSize: getObj.value.pageSize,
}
});
//
console.log('这是汇率列表 请求成功', result);
//
tableData.value = result.data.list;
//
total.value = result.data.total;
} catch (error) {
console.log('请求失败', error);
ElMessage.error('请求失败');
}
>>>>>>> milestone-20250623-金币前端
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
getAllRate()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
getAllRate()
}
<<<<<<< HEAD
//
const getToday = () => {
const today = new Date()
const start = moment(new Date(today.getFullYear(), today.getMonth(), today.getDate(), 0, 0, 0)).format('YYYY-MM-DD HH:mm:ss')
const end = moment(new Date(today.getFullYear(), today.getMonth(), today.getDate() + 1, 0, 0, 0)).format('YYYY-MM-DD HH:mm:ss')
timeRange.value = [start, end]
get()
}
//
const getYesterday = () => {
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const start = new Date(yesterday.getFullYear(), yesterday.getMonth(), yesterday.getDate(), 0, 0, 0)
const end = new Date(yesterday.getFullYear(), yesterday.getMonth(), yesterday.getDate() + 1, 0, 0, 0)
timeRange.value = [moment(start).format('YYYY-MM-DD HH:mm:ss'), moment(end).format('YYYY-MM-DD HH:mm:ss')]
get()
}
// 7
const get7Days = () => {
const today = new Date()
const start = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 6, 0, 0, 0)
const end = new Date(today.getFullYear(), today.getMonth(), today.getDate() + 1, 0, 0, 0)
timeRange.value = [moment(start).format('YYYY-MM-DD HH:mm:ss'), moment(end).format('YYYY-MM-DD HH:mm:ss')]
get()
}
const get = async () => {
try {
const params = {
pageNum: getObj.value.pageNum,
pageSize: getObj.value.pageSize,
rateDetail: {
timeRange: [
moment(timeRange.value[0]).format('YYYY-MM-DD HH:mm:ss'),
moment(timeRange.value[1]).format('YYYY-MM-DD HH:mm:ss')
]
}
}
const res = await request({
url: '/rate/selectAll',
data: params
})
tableData.value = res.data?.list || []
pagination.value.total = res.data?.total || 0
} catch (error) {
console.error('获取数据失败', error)
}
}
onMounted(() => {
get()
})
</script>
<template>
<!-- 搜索表单 -->
<el-card>
<div>
<el-row>
<el-col :span="9">
<el-form-item>
<el-text size="large">时间范围</el-text>
<el-date-picker v-model="timeRange" type="datetimerange" range-separator="" start-placeholder="开始日期"
end-placeholder="结束日期" style="width: 300px" format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss" />
</el-form-item>
</el-col>
<el-col :span="4">
<el-button @click="getToday" style="margin-left: 5px;"></el-button>
<el-button @click="getYesterday"></el-button>
<el-button @click="get7Days">近7天</el-button>
</el-col>
<el-col :span="4">
<el-button class="button-item" type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search">查询</el-button>
</el-col>
</el-row>
</div>
</el-card>
<!-- 数据展示表单 -->
<el-card class="box-card">
<div class="add-item">
<el-button style="color: #048efb; border: 1px solid #048efb">新增汇率</el-button>
</div>
<div>
<el-table style="width: 100%">
<el-table-column type="index" label="序号" width="100px" fixed="left">
<template #default="scope">
<span>{{
scope.$index + 1 + (getObj.pageNum - 1) * getObj.pageSize
}}</span>
</template>
</el-table-column>
<el-table-column prop="currency" label="货币名称" :span="2" />
<el-table-column prop="exchangeRate" label="汇率" :span="2">
<template #default="scope">
<p>
{{ scope.row.exchangeRate }}{{ scope.row.currency }} 1新币
</p>
</template>
</el-table-column>
<el-table-column prop="createTime" label="添加时间" :span="3">
<template #default="scope">
<span>{{ formatDate(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" :span="3">
<template #default="scope">
<el-button type="text" @click="
() => {
regeEdit = true
getEditData(scope.row)
}">编辑</el-button>
<el-popconfirm title="确定将此条活动删除吗?">
<template #reference>
<el-button type="primary" text>删除</el-button>
</template>
<template #actions="{ confirm, cancel }"> <!-- -->
<el-button size="small" @click="cancel">取消</el-button>
<el-button type="primary" size="small" @click="confirm">确定</el-button>
</template>
</el-popconfirm>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination">
<el-pagination background :page-size="getObj.pageSize" :page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handlePageSizeChange"
@current-change="handleCurrentChange"></el-pagination>
</div>
</el-card>
=======
//
const rateEdit = ref({
id: null,
rateName: '',
num: null,
adminId: null,
updateTime: Date.now(),
})
//
const getEditData = async function (row) {
try {
console.log('搜索参数', getObj.value)
// POST
const result = await request({
url: 'http://192.168.9.21:8081/rate/selectById',
data: {id: row.id}
})
//
console.log('根据id查 请求成功', result)
//
// rateEdit.value = result.data
//
rateEdit.value.id = row.id
rateEdit.value.rateName = row.rateName
rateEdit.value.num = row.num
console.log('根据id获取的数据', rateEdit.value)
rateEdit.value.adminId = adminData.value.adminId
} catch (error) {
console.log('请求失败', error)
}
}
const editRate = async function () {
try {
console.log('搜索参数', rateEdit.value)
// POST
const result = await request({
url: 'http://192.168.9.21:8081/rate/update',
data: rateEdit.value
})
//
console.log('请求成功', result)
await getAllRate()
} catch (error) {
console.log('请求失败', error)
}
}
const edit = () => {
ElMessageBox.confirm('确认修改?')
.then(() => {
editRate()
regeEdit.value = false
})
.catch(() => {
regeEdit.value = false
})
}
//
const cancelEdit = () => {
regeEdit.value = false
}
const handleEditDialogClose = () => {
if (editFormRef.value) {
getAllRate()
}
}
//
onMounted(async function () {
await getAllRate()
await getAdminData()
})
//
const options = [
{
value: 'USD',
label: 'USD'
},
{
value: 'HKD',
label: 'HKD'
},
{
value: 'THB',
label: 'THB'
},
{
value: 'VND',
label: 'VND'
},
{
value: 'CAD',
label: 'CAD'
},
{
value: 'MYR',
label: 'MYR'
},
{
value: 'KRW',
label: 'KRW'
},
{
value: 'JPY',
label: 'JPY'
},
{
value: 'CNY',
label: 'CNY'
}
]
function formatDate(value) {
if (!value) return ''
const date = new Date(value)
const year = date.getFullYear()
const month = (date.getMonth() + 1).toString().padStart(2, '0')
const day = date.getDate().toString().padStart(2, '0')
const hours = date.getHours().toString().padStart(2, '0')
const minutes = date.getMinutes().toString().padStart(2, '0')
const seconds = date.getSeconds().toString().padStart(2, '0')
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`
}
const checkFreeGoldRadio = function (rule, value, callback) {
if (value == '0' || value == null || value == '') {
callback(new Error('请输入汇率比'))
} else if (value < 0 || isNaN(value)) {
callback(new Error('请输入正确的格式'))
} else {
callback()
}
}
const rules = reactive({
rateName: [{required: true, message: '请选择货币名称', trigger: 'blur'}],
num: [{validator: checkFreeGoldRadio, trigger: 'blur'}],
})
function handleInput(value) {
//
let validValue = value.replace(/[^\d.]/g, '');
//
const parts = validValue.split('.');
if (parts.length > 2) {
validValue = parts[0] + '.' + parts.slice(1).join('');
ElMessage.warning('请输入正确格式');
}
// 7
const [integerPart, decimalPart = ''] = validValue.split('.');
if (decimalPart.length > 7) {
validValue = `${integerPart}.${decimalPart.slice(0, 7)}`;
ElMessage.warning('最多只能输入7位小数');
}
//
const isValidFormat = /^\d+(\.\d{0,7})?$/.test(validValue);
if (value && !isValidFormat) {
ElMessage.warning('请输入正确的数字格式');
}
//
rateEdit.value.num = validValue;
return validValue;
}
//
const formSize = ref('default')
</script>
<template>
<!-- 这是主页面 -->
<el-row>
@ -488,7 +73,6 @@ const formSize = ref('default')
</el-card>
</el-col>
</el-row>
>>>>>>> milestone-20250623-金币前端
<!-- 这是编辑弹窗 -->
<el-dialog

9
src/views/permissions/index.vue

@ -9,17 +9,11 @@ import { UserFilled } from '@element-plus/icons-vue'
import _ from 'lodash'
import request from '@/util/http'
<<<<<<< HEAD
=======
//
>>>>>>> milestone-20250623-金币前端
const tableData = ref([])
//
const total = ref(100)
<<<<<<< HEAD
=======
// admin
>>>>>>> milestone-20250623-金币前端
const admin = ref({})
//
const getObj = ref({
@ -41,10 +35,7 @@ const editObj = ref({})
//
const delObj = ref({})
<<<<<<< HEAD
=======
// search
>>>>>>> milestone-20250623-金币前端
const get = async function (val) {
try {
if (admin.value.jwcode) {

Loading…
Cancel
Save