4 Commits

  1. 2
      .env.development
  2. 34
      src/views/audit/rechargeAudit.vue
  3. 14
      src/views/audit/refundAudit.vue
  4. 264
      src/views/consume/addCoinConsume.vue
  5. 32
      src/views/consume/beanConsume.vue
  6. 284
      src/views/consume/coinConsumeDetail.vue
  7. 2
      src/views/home.vue
  8. 2
      src/views/index.vue
  9. 315
      src/views/managerecharge/rate.vue
  10. 1299
      src/views/recharge/addCoinRecharge.vue
  11. 38
      src/views/recharge/beanRecharge.vue
  12. 490
      src/views/recharge/coinRechargeDetail.vue
  13. 38
      src/views/refund/addCoinRefund.vue
  14. 32
      src/views/refund/beanRefund.vue
  15. 66
      src/views/refund/coinRefundDetail.vue
  16. 6
      src/views/usergold/clientCountBalance.vue
  17. 6
      src/views/usergold/clientCountDetail.vue
  18. 2
      src/views/workspace/index.vue

2
.env.development

@ -4,5 +4,5 @@
# VITE_API_BASE='http://54.251.137.151:10704/'
# 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:10704/'

34
src/views/audit/rechargeAudit.vue

@ -116,13 +116,13 @@ const get = async function (val) {
}
//
if (getTime.value != null) {
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
rechargeVo.value.startDate = getTime.value[0]
rechargeVo.value.endDate = getTime.value[1]
if (getTime.value.startTime != '' && getTime.value.endTime != '') {
rechargeVo.value.startTime = getTime.value[0]
rechargeVo.value.endTime = getTime.value[1]
}
} else {
rechargeVo.value.startDate = ''
rechargeVo.value.endDate = ''
rechargeVo.value.startTime = ''
rechargeVo.value.endTime = ''
}
rechargeVo.value.sortField = sortField.value
rechargeVo.value.sortOrder = sortOrder.value
@ -201,24 +201,24 @@ const reset = function () {
delete rechargeVo.value.jwcode
delete rechargeVo.value.payWay
delete rechargeVo.value.area
delete rechargeVo.value.startDate
delete rechargeVo.value.endDate
delete rechargeVo.value.startTime
delete rechargeVo.value.endTime
getTime.value = {}
}
//
const getToday = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate()
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
@ -226,34 +226,34 @@ const getToday = function () {
const getYesterday = function () {
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const startDate = new Date(
const startTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate()
)
const endDate = new Date(
const endTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
// 7
const get7Days = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() - 6
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
@ -317,7 +317,7 @@ const getActivity = async function () {
const getArea = async function () {
try {
const result = await request({
url: '/recharge/user/search',
url: 'http://18.143.76.3:10704/general/market',
data: {}
})
area.value = result.data

14
src/views/audit/refundAudit.vue

@ -136,8 +136,8 @@ const searchForm = ref({
refundType: '',
refundGoods: '',
area: '',
startDate: '',
endDate: ''
startTime: '',
endTime: ''
})
const checkTab = ref(1) // STATUS123statusInteger
@ -190,7 +190,7 @@ const fetchProducts = async () => {
//
const fetchAreas = async () => {
try {
const result = await request({ url: 'http://192.168.8.247:8081/general/market' })
const result = await request({ url: 'http://18.143.76.3:10704/general/market' })
areaOptions.value = result.data || []
} catch (error) {
console.error('获取地区列表失败', error)
@ -210,8 +210,8 @@ const get = async () => {
}
//
if (dateRange.value?.length === 2) {
params.detail.startDate = moment(dateRange.value[0]).format('YYYY-MM-DD HH:mm:ss')
params.detail.endDate = moment(dateRange.value[1]).format('YYYY-MM-DD HH:mm:ss')
params.detail.startTime = moment(dateRange.value[0]).format('YYYY-MM-DD HH:mm:ss')
params.detail.endTime = moment(dateRange.value[1]).format('YYYY-MM-DD HH:mm:ss')
}
const res = await request({
@ -262,8 +262,8 @@ const resetSearch = () => {
refundType: '',
refundGoods: '',
area: adminInfo.value.area === '总部' ? '' : adminInfo.value.area,
startDate: '',
endDate: ''
startTime: '',
endTime: ''
}
dateRange.value = []
handleSearch()

264
src/views/consume/addCoinConsume.vue

@ -1,9 +1,13 @@
<script setup>
import {onMounted, reactive, ref, watch} from "vue";
import {ElMessage, ElMessageBox} from "element-plus";
import moment from "moment";
import request from "@/util/http";
/*
====================工具方法==============================
*/
//
const trimJwCode = () => {
if (addConsume.value.jwcode) {
@ -20,25 +24,11 @@ const trimJwCode = () => {
}
}
//
/*
====================数据=================================
*/
//
const adminData = ref({});
const getAdminData = async function () {
try {//await
const result = await request({
url: "/admin/userinfo",
data: {},
});
adminData.value = result;
addConsume.value.adminId = adminData.value.adminId;
addConsume.value.name = adminData.value.name;
console.log("请求成功", result);
console.log("用户信息", adminData.value);
} catch (error) {
console.log("请求失败", error);
}
};
//
const user = ref({
jwcode: null,
@ -58,12 +48,11 @@ const user = ref({
nowFreeGold: null,
nowSumGold: null
})
//
const addConsume = ref({
// jwcode
jwcode: null, //
goodsName: "",// // todo 3
goodsName: "",//
sumGold: null, //
freeGold: null, //
permanentGold: null, //
@ -72,6 +61,40 @@ const addConsume = ref({
adminId: null,// id
});
//
const Ref = ref(null);
//
const rules = reactive({
jwcode: [{required: true, message: "请输入精网号", trigger: "blur"}],
goodsName: [{required: true, message: "请选择消费商品", trigger: "change"}], // change
sumGold: [
{required: true, message: "消费金币总数不能为空", trigger: "blur"},
],
});
//
const goods = ref([]);
/*
====================方法=================================
*/
const getAdminData = async function () {
try {//await
const result = await request({
url: "/admin/userinfo",
data: {},
});
adminData.value = result;
addConsume.value.adminId = adminData.value.adminId;
addConsume.value.name = adminData.value.name;
console.log("请求成功", result);
console.log("用户信息", adminData.value);
} catch (error) {
console.log("请求失败", error);
}
};
//
function calculateCoins(sumGold) {
@ -106,55 +129,11 @@ function calculateCoins(sumGold) {
return {free: 0, permanent: 0, task: 0};
}
//
watch(
() => addConsume.value.sumGold,
(newValue) => {
if (newValue > 0) {
const {free, permanent, task} = calculateCoins(newValue);
addConsume.value.freeGold = free;
addConsume.value.permanentGold = permanent;
addConsume.value.taskGold = task;
} else {
addConsume.value.freeGold = null;
addConsume.value.permanentGold = null;
addConsume.value.taskGold = null;
}
}
);
//
const add = async function () {
try {
//
if (!validateInput()) {
return;
}
//
formatConsumeData();
// POST
const result = await request({
// url: "/consume/add",
url: "http://192.168.8.247:8081/consume/add",
data: addConsume.value,
});
//
handleResponse(result);
//
resetForm();
} catch (error) {
console.error("请求失败", error);
ElMessage.error("添加失败,请检查网络连接或联系管理员");
}
};
//
function validateInput() {
const sumGold = addConsume.value.sumGold;
trimJwCode();
trimJwCode();
if (user.value.jwcode == null) {
ElMessage.error("请先查询用户信息");
addConsume.value.sumGold = null;
@ -183,43 +162,48 @@ function validateInput() {
return true;
}
//
const add = async function () {
try {
//
if (!validateInput()) {
return;
}
// 使
calculateCoins(addConsume.value.sumGold);
console.log("addConsume.value", addConsume.value)
// POST
const result = await request({
// url: "/consume/add",
url: "http://18.143.76.3:10704/consume/add",
data: addConsume.value,
//
function formatConsumeData() {
//
addConsume.value.sumGold = Number(addConsume.value.sumGold);
addConsume.value.freeGold = Number(addConsume.value.freeGold);
addConsume.value.permanentGold = Number(addConsume.value.permanentGold);
addConsume.value.taskGold = Number(addConsume.value.taskGold);
});
// 使
const {usedFreeGold, usedPermanentGold, usedTaskGold} =
calculateCoins(
addConsume.value.sumGold,
addConsume.value.freeGold,
addConsume.value.permanentGold,
addConsume.value.taskGold
);
console.log("add请求", result);
//
handleResponse(result);
//
resetForm();
// 使
addConsume.value.usedFreeGold = usedFreeGold;
addConsume.value.usedPermanentGold = usedPermanentGold;
addConsume.value.usedTaskGold = usedTaskGold;
} catch (error) {
console.error("请求失败", error);
ElMessage.error("添加失败,请检查网络连接或联系管理员");
}
};
//
function handleResponse(result) {
if (result.code !== 0) {
console.log("响应结果", result)
if (result.code === 200) {
ElMessage.success("添加成功");
console.log("请求成功", result);
} else {
ElMessage.error(result.msg || "添加失败,未知错误");
}
}
//
function resetForm() {
//
addConsume.value = {
jwcode: null,
goodsName: "",
@ -231,7 +215,9 @@ function resetForm() {
adminId: adminData.value.adminId,
adminName: adminData.value.adminName,
};
console.log("重置表单")
user.value = {
jwcode: null,
name: "",
@ -253,20 +239,15 @@ function resetForm() {
// user.value.jwcode = null;
// user.value = null;
}
//
const addBefore = () => {
Ref.value.validate(async (valid) => {
if (valid) {
ElMessageBox.confirm("确认添加?")
.then(() => {
addConsume.value.freeGold = Number(addConsume.value.freeGold);
addConsume.value.permanentGold = Number(addConsume.value.permanentGold);
addConsume.value.taskGold = Number(-addConsume.value.taskGold);
// trimJwCode();
console.log("这里是jwcode", addConsume.value.jwcode)
add();
console.log("添加成功");
imageUrl.value = "";
console.log("添加成功",);
addConsume.value = {};
})
.catch(() => {
@ -281,39 +262,6 @@ const addBefore = () => {
}
});
};
//
//
const Ref = ref(null);
const rules = reactive({
jwcode: [{required: true, message: "请输入精网号", trigger: "blur"}],
goodsName: [{required: true, message: "请选择消费商品", trigger: "change"}], // change
// taskCoin: [{required: true, message: "", trigger: "blur"}],
// freeCoin: [{required: true, message: "", trigger: "blur"}],
// rechargeCoin: [
// {required: true, message: "", trigger: "blur"},
// ],
sumGold: [
{required: true, message: "消费金币总数不能为空", trigger: "blur"},
],
/* indexName: [
{
required: true,
validator: (rule, value, callback) => {
if (isHC.value === 1 && !value) {
callback(new Error("请选择指标"));
} else {
callback();
}
},
trigger: ["change", "blur"],
},
]*/
});
//
const getUser = async function (jwcode) {
trimJwCode();
@ -321,7 +269,7 @@ const getUser = async function (jwcode) {
// POST
const result = await request({
// url: "user/selectUser",
url: "http://192.168.8.247:8081/user/selectUser", // todo ip
url: "http://18.143.76.3:10704/user/selectUser", // todo ip
data: {
//
jwcode: addConsume.value.jwcode,
@ -344,10 +292,7 @@ const getUser = async function (jwcode) {
//
}
};
//
const goods = ref([]);
// ()
const getGoods = async function () {
try {
// POST
@ -372,15 +317,30 @@ const getGoods = async function () {
}
};
// const getGoodsList = async () => {
// const result = await request({ url: '/goods/list' });
// goodsList.value = result.map(item => ({
// label: item.name,
// value: item.name
// }));
// };
/*
====================监听=================================
*/
//
watch(
() => addConsume.value.sumGold,
(newValue) => {
if (newValue > 0) {
const {free, permanent, task} = calculateCoins(newValue);
addConsume.value.freeGold = free;
addConsume.value.permanentGold = permanent;
addConsume.value.taskGold = task;
} else {
addConsume.value.freeGold = null;
addConsume.value.permanentGold = null;
addConsume.value.taskGold = null;
}
}
);
/*
====================挂载=================================
*/
//
onMounted(async function () {
await getAdminData();
@ -388,7 +348,6 @@ onMounted(async function () {
});
</script>
<template>
@ -429,22 +388,6 @@ onMounted(async function () {
<div style="display: flex; align-items: center; gap: 20px;">
<el-form-item prop="productName" label="商品名称" style="flex: 1; margin-right: 0px">
<!-- <el-autocomplete
v-model="addConsume.goodsName"
:fetch-suggestions="queryProductSearch"
placeholder="请选择商品"
style="width: 300px"
@select="handleProductSelect"
value-key="name"
clearable
:trigger-on-focus="true"
>
<template #default="{ item }">
<div>{{ item.name }}</div>
</template>
</el-autocomplete>-->
<el-select
v-model="addConsume.goodsName"
placeholder="请选择商品"
@ -530,10 +473,9 @@ onMounted(async function () {
<el-button type="primary" @click="addBefore"> 提交</el-button>
</el-form>
<!-- todo 这里少客户信息栏的卸载 -->
<!-- 客户信息栏 -->
<el-card style="width: 850px; float: right" class="customer-info">
<el-card v-if="user.jwcode" style="width: 850px; float: right" class="customer-info">
<el-form
:model="user"
label-width="auto"

32
src/views/consume/beanConsume.vue

@ -91,13 +91,13 @@ const get = async function (val) {
}
//
if (getTime.value != null) {
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
detailVo.value.startDate = getTime.value[0]
detailVo.value.endDate = getTime.value[1]
if (getTime.value.startTime != '' && getTime.value.endTime != '') {
detailVo.value.startTime = getTime.value[0]
detailVo.value.endTime = getTime.value[1]
}
} else {
detailVo.value.startDate = ''
detailVo.value.endDate = ''
detailVo.value.startTime = ''
detailVo.value.endTime = ''
}
detailVo.value.sortField = sortField.value
detailVo.value.sortOrder = sortOrder.value
@ -172,8 +172,8 @@ const reset = function () {
detailVo.value.productName = ''
detailVo.value.consumePlatform = ''
detailVo.value.consumeType = ''
detailVo.value.startDate = ''
detailVo.value.endDate = ''
detailVo.value.startTime = ''
detailVo.value.endTime = ''
sortField.value = ''
sortOrder.value = ''
getTime.value = {}
@ -181,17 +181,17 @@ const reset = function () {
//
const getToday = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate()
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
@ -199,34 +199,34 @@ const getToday = function () {
const getYesterday = function () {
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const startDate = new Date(
const startTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate()
)
const endDate = new Date(
const endTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
// 7
const get7Days = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() - 6
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}

284
src/views/consume/coinConsumeDetail.vue

@ -1,14 +1,18 @@
<script setup>
import {onMounted, ref, watch} from 'vue'
import {computed, onMounted, ref} from 'vue'
import {dayjs, ElMessage} from 'element-plus'
import request from '@/util/http'
//
//
const formatTime = (val) => val ? dayjs(val).format('YYYY-MM-DD HH:mm:ss') : ''
//
//
const adminData = ref({})
const getAdminData = async function () {
try {
const result = await request({
@ -22,10 +26,12 @@ const getAdminData = async function () {
console.log('请求失败', error)
}
}
//
const tableData = ref([])
// ======================================
// detailVo
// consumeUser
const consumeUser = ref({
jwcode: null,
payPlatform: "",
@ -41,8 +47,10 @@ const getObj = ref({
pageNum: 1,
pageSize: 50
})
//
const total = ref(100)
//
const getTime = ref({
startTime: '',
@ -50,17 +58,15 @@ const getTime = ref({
})
//
const activity = ref([])
//
const allData = ref([])
//
const area = ref([])
//
const market = ref([])
//
const activeName = ref('all')
//
const sortField = ref('')
const sortOrder = ref('')
//
// todo
const consumePlatform = [
{
value: '金币系统',
@ -81,11 +87,6 @@ const consumePlatform = [
}
]
// //
// const tableHeight = computed(function () {
// return (getObj.value.pageSize + 1) * 41 + "px";
// });
//
//
const tableDataTotal = ref({})
@ -93,23 +94,26 @@ const permanentGold = ref(0)
const freeGold = ref(0)
const taskGold = ref(0)
const totalGold = ref(0)
//
const permanentGolds = ref(0)
const freeGolds = ref(0)
const taskGolds = ref(0)
//
const sumGold = computed(() => permanentGolds.value + freeGolds.value + taskGolds.value)
//
// =========================================================================================================================================================
//
const ConsumeSelectBy = async function (val) {
try {
/* // 地区赋值
if (adminData.value.area != '总部') {
consumeUser.value.area = adminData.value.area
}*/
//
if (typeof val === 'number') {
getObj.value.pageNum = val
}
//
console.log('时间时间111', getTime.value[0])
console.log('时间时间22', formatTime(getTime.value[0]))
if (getTime.value != null) {
if (getTime.value.startTime != '' && getTime.value.endTime != '') {
@ -128,14 +132,19 @@ const ConsumeSelectBy = async function (val) {
console.log('搜索参数1', getObj.value)
console.log('搜索参数2', consumeUser.value)
// POST
const result = await request({
// url: 'consumeUser/selectBy',
url: 'http://192.168.8.247:8081/consume/selectBy',
url: 'http://18.143.76.3:10704/consume/selectBy',
data: {
pageNum: getObj.value.pageNum,
pageSize: getObj.value.pageSize,
consumeUser: consumeUser.value
consumeUser: {
...consumeUser.value,
sortField: sortField.value,
sortOrder: sortOrder.value
}
}
})
@ -144,48 +153,61 @@ const ConsumeSelectBy = async function (val) {
const detailWithoutSort = {...consumeUser.value}
delete detailWithoutSort.sortField
delete detailWithoutSort.sortOrder
//
const resultTotalGold = await request({
// url: 'http://18.143.76.3:10704/consume/statsGold',
url: 'http://18.143.76.3:10704/consume/statsGold',
// data: {
// pageNum: getObj.value.pageNum,
// pageSize: getObj.value.pageSize,
// consumeUser: consumeUser.value
// }
const result2 = await request({
// url: 'http://192.168.8.247:8081/consume/statsGold',
url: 'http://192.168.8.247:8081/consume/statsGold',
data: {
...detailWithoutSort
}
})
//
console.log('请求成功', result)
console.log('请求成功2', result2)
console.log("总计",resultTotalGold)
if (resultTotalGold.code === 200 && resultTotalGold.data) {
const data = resultTotalGold.data
console.log('获取到的金币数据:', data)
permanentGolds.value = Number(data.permanentGolds) || 0
freeGolds.value = Number(data.freeGolds) || 0
taskGolds.value = Number(data.taskGolds) || 0
}
//
tableData.value = result.data.list
tableDataTotal.value = result2.data
if (result2.data == null) {
console.log('请求成功2', result2)
tableDataTotal.value = resultTotalGold.data
if (resultTotalGold.data == null) {
console.log('请求成功2', resultTotalGold)
// 西
tableDataTotal.value = {
sumRcion: 0,
sumFcion: 0,
sumTcion: 0,
sumcion: 0
}
tableDataTotal.value = resultTotalGold.data
}
console.log('tableDataT', tableDataTotal)
const sumGoldList = tableData.value.map(item => item.sumGold);
console.log("sumGold",sumGoldList); // sumGold
//
permanentGold.value = parseFloat(
(tableDataTotal.value.sumRcion / 100).toFixed(2)
)
freeGold.value = parseFloat(
(tableDataTotal.value.sumFcion / 100).toFixed(2)
)
taskGold.value = parseFloat(
(tableDataTotal.value.sumTcion / 100).toFixed(2)
)
totalGold.value = parseFloat(
(tableDataTotal.value.sumcion / 100).toFixed(2)
)
console.log('@@@@@@@@@@tableDataT', tableDataTotal.value.list)
// totalGold.value = tableData.value.sum
// //
// permanentGold.value = parseFloat(
// (tableDataTotal.value.list.sumGold / 100).toFixed(2)
// )
// freeGold.value = parseFloat(
// (tableDataTotal.value.sumFcion / 100).toFixed(2)
// )
// taskGold.value = parseFloat(
// (tableDataTotal.value.sumTcion / 100).toFixed(2)
// )
// totalGold.value = parseFloat(
// (tableDataTotal.value.sumcion / 100).toFixed(2)
// )
console.log('tableData', tableData.value)
//
total.value = result.data.total
console.log('total', total.value)
@ -274,60 +296,14 @@ const get7Days = function () {
console.log('getTime', getTime.value)
ConsumeSelectBy()
}
//
const handleClick = function (tab, event) {
if (tab.props.name === 'all') {
adminAll()
} else if (tab.props.name === 'wait') {
adminWait()
} else if (tab.props.name === 'pass') {
adminPass()
} else if (tab.props.name === 'reject') {
adminReject()
}
}
//
onMounted(async function () {
await getAdminData()
await ConsumeSelectBy()
// getActivity();
await getArea();
})
//
const checkNumber = function () {
if (typeof parseInt(getObj.value.pageNum) === 'number') {
console.log('总共有多少页' + Math.ceil(total.value / getObj.value.pageSize))
if (
getObj.value.pageNum > 0 &&
getObj.value.pageNum <= Math.ceil(total.value / getObj.value.pageSize)
) {
getObj.value.pageNum = parseInt(getObj.value.pageNum)
console.log('输入的数字合法')
ConsumeSelectBy()
} else {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
})
}
} else {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
})
}
}
//
const goods = ref([])
const getGoods = async function () {
try {
// POST
const result = await request({
url: 'http://192.168.8.247:8081/general/goods',
url: 'http://18.143.76.3:10704/general/goods',
data: {}
})
//
@ -340,22 +316,20 @@ const getGoods = async function () {
//
}
}
getGoods()
//
const getArea = async function () {
//
const getMarket = async function () {
try {
//
const result = await request({
// todo
// url: '/general/market',
url: 'http://192.168.8.247:8081/general/market', // todo
url: 'http://18.143.76.3:10704/general/market', // todo
data: {}
})
console.log('请求地区列表成功', result)
//
area.value = result.data
console.log('地区数据', area.value)
market.value = result.data
console.log('地区数据', market.value)
} catch (error) {
console.log('请求地区列表失败', error)
ElMessage({
@ -366,33 +340,65 @@ const getArea = async function () {
}
//
const sortField = ref('')
const sortOrder = ref('')
//
const handleSortChange = (column) => {
console.log('排序字段:', column.prop)
console.log('排序方式:', column.order)
if (column.prop === 'permanentGold') {
sortField.value = 'recharge_coin'
sortField.value = 'permanentGold'
} else if (column.prop === 'taskGold') {
sortField.value = 'task_coin'
sortField.value = 'taskGold' //
} else if (column.prop === 'freeGold') {
sortField.value = 'free_coin'
sortField.value = 'freeGold'
} else if (column.prop === 'createTime') {
sortField.value = 'create_time'
}
sortOrder.value = column.order === 'ascending' ? 'DESC' : 'ASC'
//
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
ConsumeSelectBy()
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
ConsumeSelectBy()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
ConsumeSelectBy()
}
//
const checkNumber = function () {
if (typeof parseInt(getObj.value.pageNum) === 'number') {
console.log('总共有多少页' + Math.ceil(total.value / getObj.value.pageSize))
if (
getObj.value.pageNum > 0 &&
getObj.value.pageNum <= Math.ceil(total.value / getObj.value.pageSize)
) {
getObj.value.pageNum = parseInt(getObj.value.pageNum)
console.log('输入的数字合法')
ConsumeSelectBy()
} else {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
})
}
} else {
console.log('输入的数字不合法')
}
}
//
onMounted(async function () {
await getAdminData()
await ConsumeSelectBy()
// getActivity();
await getMarket()
await getGoods()
})
</script>
<template>
@ -431,7 +437,7 @@ const handleCurrentChange = function (val) {
clearable
>
<el-option
v-for="(item, index) in area"
v-for="(item, index) in market"
:key="index"
:label="item"
:value="item"
@ -458,25 +464,7 @@ const handleCurrentChange = function (val) {
</el-select>
</div>
</el-col>
<!-- <el-col :span="8">
<div class="head-card-element">
<el-text class="mx-1" size="large">消费类型</el-text>
<el-select
v-model="consumeUser.consumeType"
placeholder="请选择消费类型"
size="large"
style="width: 240px"
clearable
>
<el-option
v-for="item in consumeType"
:key="item"
:label="item.label"
:value="item.value"
/>
</el-select>
</div>
</el-col> -->
</el-row>
<el-row>
<el-col :span="21">
@ -495,10 +483,7 @@ const handleCurrentChange = function (val) {
>
<el-button @click="getYesterday()"></el-button>
<el-button @click="get7Days()">近7天</el-button>
<!-- </div>
</el-col>
<el-col :span="3">
<div class="head-card-btn"> -->
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()">查询</el-button>
@ -513,9 +498,9 @@ const handleCurrentChange = function (val) {
<el-col>
<el-card>
<div>
消耗金额{{ Math.abs(totalGold) }}新币永久金币{{ Math.abs(permanentGold) }}免费金币{{
Math.abs(freeGold)
}}任务金币{{ Math.abs(taskGold) }}
消耗金额{{ Math.abs(sumGold) }}新币永久金币{{ Math.abs(permanentGolds) }}免费金币{{
Math.abs(freeGolds)
}}任务金币{{ Math.abs(taskGolds) }}
</div>
<!-- 设置表格容器的高度和滚动样式 -->
<div style="height: 576px; overflow-y: auto">
@ -561,15 +546,10 @@ const handleCurrentChange = function (val) {
<template #default="scope">
<!-- 使用非严格相等比较 -->
{{ scope.row.payPlatform }}
<!-- <span scope.row.consumePlatform == 1">Homily Chart</span>-->
</template>
</el-table-column>
<!-- <el-table-column
prop="consumeType"
label="消费类型"
width="120px"
/> -->
<el-table-column
prop="sumGold"
label="消费金币总数"
@ -587,7 +567,7 @@ const handleCurrentChange = function (val) {
<el-table-column
prop="permanentGold"
label="永久金币"
sortable="custom"
sortable="custom"
width="110px"
>
<template #default="scope">
@ -605,9 +585,9 @@ const handleCurrentChange = function (val) {
</template>
</el-table-column>
<el-table-column
prop="taskCold"
prop="taskGold"
label="任务金币"
sortable="custom"
sortable="custom"
width="110px"
>
<template #default="scope">
@ -625,7 +605,7 @@ const handleCurrentChange = function (val) {
<el-table-column
prop="createTime"
label="消费时间"
sortable="custom"
sortable="custom"
width="180px"
/>
</el-table>

2
src/views/home.vue

@ -36,7 +36,7 @@ const currentArea = ref('全部')
const getAreas = async function () {
try {
const result = await API({ url: 'http://192.168.8.247:8081/general/market', data: {} })
const result = await API({ url: 'http://18.143.76.3:10704/general/market', data: {} })
areas.value = result.data
console.log('请求成功', result)
} catch (error) {

2
src/views/index.vue

@ -36,7 +36,7 @@ const currentArea = ref('全部')
const getAreas = async function () {
try {
const result = await API({ url: '/recharge/user/search', data: {} })
const result = await API({ url: 'http://18.143.76.3:10704/general/market', data: {} })
areas.value = result.data
console.log('请求成功', result)
} catch (error) {

315
src/views/managerecharge/rate.vue

@ -1,15 +1,14 @@
<script setup>
import {onMounted, reactive, ref} from 'vue'
import {ElMessage, ElMessageBox} from 'element-plus'
import moment from 'moment'
import _ from 'lodash'
import request from '@/util/http'
//
//
const adminData = ref({
adminId: '',
name: ''
})
const getAdminData = async function () {
try {
const result = await request({
@ -17,21 +16,22 @@ const getAdminData = async function () {
data: {}
})
adminData.value = result
rateAdd.value.adminId = adminData.value.adminId
rateEdit.value.adminId = adminData.value.adminId
console.log('请求成功', result)
} catch (error) {
console.log('请求失败', error)
}
}
getAdminData()
const regeAdd = ref(false)
//
const regeEdit = ref(false)
//
// (id )
const editFormRef = ref(null)
//
const tableData = ref([])
//
const getObj = ref({
pageNum: 1,
@ -39,196 +39,95 @@ const getObj = ref({
})
const total = ref(0)
//
// time
const timeRange = ref([])
// YYYY-MM-DD HH:mm:ss
const formatDateTime = (date) => {
return moment(date).format('YYYY-MM-DD HH:mm:ss')
}
// const startTime = ref('2023-01-01 00:00:00')
// const endTime = ref('2025-12-31 23:59:59')
const get = async function (val) {
const getAllRate = async function (val) {
try {
//
if (typeof val === 'number') {
getObj.value.pageNum = val;
}
//
const time = {}
if (timeRange.value.length === 2) {
time.startTime = moment(timeRange.value[0]).format('YYYY-MM-DD HH:mm:ss')
time.endTime = moment(timeRange.value[1]).format('YYYY-MM-DD HH:mm:ss')
} else { //
time.startTime = '2023-01-01 00:00:00'
time.endTime = '2025-12-31 23:59:59'
}
console.log('搜索参数', {
...getObj.value,
rate: {...time}
});
// POST
const result = await request({
url: '/rates/search',
url: 'http://18.143.76.3:10704/rate/selectAll',
method: 'POST',
data: {
...getObj.value,
rate: {...time}
pageNum: getObj.value.pageNum,
pageSize: getObj.value.pageSize,
}
});
//
console.log('请求成功', result);
console.log('这是汇率列表 请求成功', result);
//
tableData.value = result.data.list;
//
total.value = result.data.total;
} catch (error) {
console.log('请求失败', error);
ElMessage.error('请求失败');
}
}
//
const search = function () {
getObj.value.pageNum = 1
get()
}
//
const rateAdd = ref({})
const addRate = async function () {
rateAdd.value.adminId = adminData.value.adminId
if (rateAdd.value.startTime) {
const date = new Date(rateAdd.value.startTime)
date.setHours(0, 0, 0, 0)
rateAdd.value.startTime = `${date.getFullYear()}-${String(
date.getMonth() + 1
).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')} 00:00:00`
}
if (rateAdd.value.endTime) {
const date = new Date(rateAdd.value.endTime)
date.setHours(23, 59, 59, 999)
rateAdd.value.endTime = `${date.getFullYear()}-${String(
date.getMonth() + 1
).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')} 23:59:59`
}
try {
console.log('搜索参数', getObj.value)
// POST
const result = await request({
url: '/rates/add',
data: rateAdd.value
})
if (result.code == 0) {
ElMessage.error(result.msg)
} else {
ElMessage({
type: 'success',
message: '新增汇率成功'
})
}
//
console.log('请求成功', result)
get()
} catch (error) {
console.log('请求失败', error)
}
}
const add = () => {
Ref.value.validate(async (valid) => {
if (valid) {
ElMessageBox.confirm('确认添加?')
.then(() => {
addRate()
rateAdd.value = {}
timeRange.value = {
startTime: '',
endTime: ''
}
regeAdd.value = false
})
.catch(() => {
regeAdd.value = false
})
} else {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
})
}
})
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
getAllRate()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
getAllRate()
}
// 使 _.throttle trailing false
const throttledAdd = _.throttle(add, 5000, {trailing: false})
//
const rateEdit = ref({})
//
const rateEdit = ref({
id: null,
rateName: '',
num: null,
adminId: null,
updateTime: Date.now(),
})
//
const getEditData = async function (row) {
//
if (editFormRef.value) {
editFormRef.value.resetFields()
}
try {
console.log('搜索参数', getObj.value)
// POST
const result = await request({
url: '/rates/searchById?rateId=' + row.rateId,
data: {}
url: 'http://18.143.76.3:10704/rate/selectById',
data: {id: row.id}
})
//
console.log('请求成功', result)
console.log('根据id查 请求成功', result)
//
rateEdit.value = result.data
// 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 () {
if (rateEdit.value.startTime) {
const date = new Date(rateEdit.value.startTime)
date.setHours(0, 0, 0, 0)
rateEdit.value.startTime = `${date.getFullYear()}-${String(
date.getMonth() + 1
).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')} 00:00:00`
}
if (rateEdit.value.endTime) {
const date = new Date(rateEdit.value.endTime)
date.setHours(23, 59, 59, 999)
rateEdit.value.endTime = `${date.getFullYear()}-${String(
date.getMonth() + 1
).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')} 23:59:59`
}
try {
console.log('搜索参数', rateEdit.value)
// POST
const result = await request({
url: '/rates/update',
url: 'http://18.143.76.3:10704/rate/update',
data: rateEdit.value
})
//
console.log('请求成功', result)
get()
await getAllRate()
} catch (error) {
console.log('请求失败', error)
}
@ -247,29 +146,26 @@ const edit = () => {
//
const cancelEdit = () => {
regeEdit.value = false
if (editFormRef.value) {
editFormRef.value.resetFields()
}
}
const handleEditDialogClose = () => {
if (editFormRef.value) {
editFormRef.value.resetFields()
getAllRate()
}
}
//
onMounted(async function () {
get()
await getAllRate()
await getAdminData()
})
//
function handlePageChange(currentPage, pageSize) {
get()
}
//
const options = [
const rateName = [
{
value: 'USD',
label: 'USD'
@ -320,37 +216,7 @@ function formatDate(value) {
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`
}
function formatDateTwe(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')
return `${year}-${month}-${day}`
}
//
// ref
const Ref = ref(null)
const handleStartTimeChange = () => {
Ref.value.validateField('endTime')
}
const checkStartTime = function (rule, value, callback) {
if (value <= new Date()) {
callback(new Error('开始时间不能小于当前时间'))
} else {
callback()
}
}
const checkEndTime = function (rule, value, callback) {
if (value <= new Date()) {
callback(new Error('结束时间不能小于当前时间'))
} else if (value <= rateAdd.value.startTime) {
callback(new Error('结束时间不能小于开始时间'))
} else {
callback()
}
}
const checkFreeGoldRadio = function (rule, value, callback) {
if (value == '0' || value == null || value == '') {
callback(new Error('请输入汇率比'))
@ -361,57 +227,37 @@ const checkFreeGoldRadio = function (rule, value, callback) {
}
}
const rules = reactive({
currency: [{required: true, message: '请选择货币名称', trigger: 'blur'}],
exchangeRate: [{validator: checkFreeGoldRadio, trigger: 'blur'}],
// startTime: [
// {required: true, message: '', trigger: 'blur'},
// {validator: checkStartTime, trigger: 'blur'}
// ],
// endTime: [
// {required: true, message: '', trigger: 'blur'},
// {validator: checkEndTime, trigger: 'blur'}
// ]
rateName: [{required: true, message: '请选择货币名称', trigger: 'blur'}],
num: [{validator: checkFreeGoldRadio, trigger: 'blur'}],
})
//
function handleInput(value) {
//
const invalidChars = /[^0-9.]/.test(value);
if (invalidChars) {
ElMessage.warning('只能输入数字和小数点');
}
//
//
let validValue = value.replace(/[^\d.]/g, '');
//
validValue = validValue.replace(/\.{2,}/g, '.');
//
if (validValue.split('.').length > 2) {
validValue = validValue.replace(/\.$/, '');
ElMessage.warning('注意!只能使用一个小数点');
//
const parts = validValue.split('.');
if (parts.length > 2) {
validValue = parts[0] + '.' + parts.slice(1).join('');
ElMessage.warning('请输入正确格式');
}
// 7
const originalDecimalPart = validValue.split('.')[1] || '';
validValue = validValue.replace(/(\.\d{7})\d+/, '$1');
//
const newDecimalPart = validValue.split('.')[1] || '';
if (originalDecimalPart.length > 7 && originalDecimalPart !== newDecimalPart) {
// 7
const [integerPart, decimalPart = ''] = validValue.split('.');
if (decimalPart.length > 7) {
validValue = `${integerPart}.${decimalPart.slice(0, 7)}`;
ElMessage.warning('最多只能输入7位小数');
}
//
//
// rateAdd.value.exchangeRate = validValue;
// rateEdit.value.exchangeRate = validValue;
//
if (validValue && !/^\d+(\.\d{0,7})?$/.test(validValue)) {
//
const isValidFormat = /^\d+(\.\d{0,7})?$/.test(validValue);
if (value && !isValidFormat) {
ElMessage.warning('请输入正确的数字格式');
}
//
rateEdit.value.num = validValue;
return validValue;
}
//
@ -424,10 +270,8 @@ const formSize = ref('default')
<el-row>
<el-col>
<el-card class="box-card" style="max-width: 100%">
<!-- 添加 -->
<!-- 表格 -->
<div>
<!-- 这里有个小bug应该是>0-->
<el-table
:data="tableData"
v-if="(tableData.flag = 1)"
@ -444,18 +288,18 @@ const formSize = ref('default')
}}</span>
</template>
</el-table-column>
<el-table-column prop="currency" label="货币名称" :span="2"/>
<el-table-column prop="exchangeRate" label="汇率" :span="2">
<el-table-column prop="rateName" label="货币名称" :span="2"/>
<el-table-column prop="num" label="汇率" :span="2">
<template #default="scope">
<p>
{{ scope.row.exchangeRate }} 1
{{ scope.row.num }} 1
</p>
</template>
</el-table-column>
<el-table-column prop="createTime" label="添加时间" :span="3">
<el-table-column prop="updateTime" label="添加时间" :span="3">
<template #default="scope">
<span>{{ formatDate(scope.row.createTime) }}</span>
<span>{{ formatDate(scope.row.updateTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" :span="3">
@ -475,6 +319,7 @@ const formSize = ref('default')
</el-table-column>
</el-table>
</div>
<!-- 分页 -->
<div class="pagination">
<el-pagination
@ -510,31 +355,31 @@ const formSize = ref('default')
:size="formSize"
status-icon
>
<el-form-item prop="currency" label="货币名称:">
<el-form-item prop="rateName" label="货币名称:">
<el-select
v-model="rateEdit.currency"
v-model="rateEdit.rateName"
placeholder="请选择"
style="width: 240px"
>
<el-option
v-for="item in options"
v-for="item in rateName"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item prop="exchangeRate" label="汇率:">
<el-form-item prop="num" label="汇率:">
<el-input
v-model="rateEdit.exchangeRate"
v-model="rateEdit.num"
@update:modelValue="handleInput"
style="width: 120px"
/>
<p class="unit">:1</p>
<p class="rate-tip">
(提示当前规则每
<span>{{ rateEdit.exchangeRate }}</span>
<span>{{ rateEdit.currency }}</span>
<span>{{ rateEdit.num }}</span>
<span>{{ rateEdit.rateName }}</span>
可兑换 1 新币)
</p>
</el-form-item>

1299
src/views/recharge/addCoinRecharge.vue
File diff suppressed because it is too large
View File

38
src/views/recharge/beanRecharge.vue

@ -118,13 +118,13 @@ const get = async function (val) {
}
//
if (getTime.value != null) {
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
rechargeVo.value.startDate = getTime.value[0]
rechargeVo.value.endDate = getTime.value[1]
if (getTime.value.startTime != '' && getTime.value.endTime != '') {
rechargeVo.value.startTime = getTime.value[0]
rechargeVo.value.endTime = getTime.value[1]
}
} else {
rechargeVo.value.startDate = ''
rechargeVo.value.endDate = ''
rechargeVo.value.startTime = ''
rechargeVo.value.endTime = ''
}
//
rechargeVo.value.sortField = sortField.value
@ -139,8 +139,8 @@ const get = async function (val) {
const detailWithoutSort = ref({
area: rechargeVo.value.area,
adminId: rechargeVo.value.adminId,
startDate: rechargeVo.value.startDate,
endDate: rechargeVo.value.endDate
startTime: rechargeVo.value.startTime,
endTime: rechargeVo.value.endTime
})
const result2 = await API({
url: '/recharge/recharge/RechargeA',
@ -206,8 +206,8 @@ const reset = function () {
delete rechargeVo.value.activityId
delete rechargeVo.value.payWay
delete rechargeVo.value.area
delete rechargeVo.value.startDate
delete rechargeVo.value.endDate
delete rechargeVo.value.startTime
delete rechargeVo.value.endTime
delete sortField.value
delete sortOrder.value
getTime.value = {}
@ -215,17 +215,17 @@ const reset = function () {
//
const getToday = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate()
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
@ -241,34 +241,34 @@ const handleCurrentChange = function (val) {
const getYesterday = function () {
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const startDate = new Date(
const startTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate()
)
const endDate = new Date(
const endTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
// 7
const get7Days = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() - 6
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
@ -343,7 +343,7 @@ const getActivity = async function () {
const getArea = async function () {
try {
// POST
const result = await API({ url: 'recharge/user/search', data: {} })
const result = await API({ url: 'http://18.143.76.3:10704/general/market', data: {} })
//
console.log('请求成功', result)
//

490
src/views/recharge/coinRechargeDetail.vue

@ -12,7 +12,7 @@ const getAdminData = async function () {
try {
const result = await API({ url: '/admin/userinfo', data: {} })
adminData.value = result
rechargeVo.value.adminId = adminData.value.adminId
rechargeUser.value.adminId = adminData.value.adminId
console.log('请求成功', result)
console.log('用户信息', adminData.value)
} catch (error) {
@ -24,7 +24,7 @@ const getAdminData = async function () {
const tableData = ref([])
// ===========================================
// recharge
const rechargeVo = ref({
const rechargeUser = ref({
adminId: adminData.value.adminId
})
//
@ -41,11 +41,24 @@ const activity = ref([])
//
const allData = ref([])
//
const area = ref([])
//
const activeName = ref('all')
const market = ref([])
//
const formatTime = (val) => val ? moment(val).format('YYYY-MM-DD HH:mm:ss') : ''
// money permanentGold freeGold
const money = ref(0)
const permanentGold = ref(0)
const freeGold = ref(0)
//
const permanentGolds = ref(0)
const freeGolds = ref(0)
//
const payWay = [
const payModel = [
{
value: '微信',
label: '微信'
@ -75,113 +88,122 @@ const payWay = [
//
const delObj = ref({})
// //
// const tableHeight = computed(function () {
// return (getObj.value.pageSize + 2) * 60 + "px";
// });
//
//
const trueGold = ref(0)
const trueRGold = ref(0)
const trueFGold = ref(0)
//
const totalmoney = ref(0)
const totalRcoin = ref(0)
const totalFcoin = ref(0)
//
const pendingGold = ref(0)
const pendingRGold = ref(0)
const pendingFGold = ref(0)
//
const approvedGold = ref(0)
const approvedRGold = ref(0)
const approvedFGold = ref(0)
//
const rejectedGold = ref(0)
const rejectedRGold = ref(0)
const rejectedFGold = ref(0)
//
const getActivity = async function () {
try {
// POST
const result = await API({ url: '/recharge/activity/select', data: {} })
//
console.log('请求成功', result)
//
activity.value = result.data
console.log('activity', activity.value)
} catch (error) {
console.log('请求失败', error)
//
}
}
//
//
const getArea = async function () {
try {
// POST
const result = await API({ url: 'http://18.143.76.3:10704/general/market', data: {} })
//
console.log('请求成功', result)
//
market.value = result.data
console.log('地区', market.value)
} catch (error) {
console.log('请求失败', error)
//
}
}
//
const isLoadingPlatform = ref(false)
//
const platform = ref([])
//
const getPlatform = async () => {
isLoadingPlatform.value = true;
try {
const result = await API({
url: 'http://18.143.76.3:10704/general/platform',
method: 'post',
data: {}//
})
// { value, label }
if(Array.isArray(result.data)) {
platform.value = result.data.map(item => ({ value: item, label: item }));
} else {
console.error('充值类型格式错误',result)
ElMessage.error('充值类型格式错误,请联系管理员')
}
} catch (error) {
console.error('获取充值类型失败:', error);
ElMessage.error('获取充值类型失败,请稍后重试');
} finally {
isLoadingPlatform.value = false
}
}
// ===========================================================================
//
const get = async function (val) {
try {
//
if (adminData.value.area === '泰国') {
rechargeVo.value.areas = ['泰国', '越南']
} else if (adminData.value.area !== '总部') {
rechargeVo.value.area = adminData.value.area
}
//
if (typeof val === 'number') {
getObj.value.pageNum = val
}
//
if (getTime.value != null) {
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
rechargeVo.value.startDate = getTime.value[0]
rechargeVo.value.endDate = getTime.value[1]
if (getTime.value.startTime != '' && getTime.value.endTime != '') {
rechargeUser.value.startTime = formatTime(getTime.value[0])
rechargeUser.value.endTime = formatTime(getTime.value[1])
}
} else {
rechargeVo.value.startDate = ''
rechargeVo.value.endDate = ''
rechargeUser.value.startTime = ''
rechargeUser.value.endTime = ''
}
//
rechargeVo.value.sortField = sortField.value
rechargeVo.value.sortOrder = sortOrder.value
rechargeUser.value.sortField = sortField.value
rechargeUser.value.sortOrder = sortOrder.value
console.log('搜索参数', getObj.value)
// POST
const result = await API({
url: '/recharge/recharge',
data: { ...getObj.value, rechargeVo: { ...rechargeVo.value } }
url: 'http://18.143.76.3:10704/recharge/selectBy',
data: {
...getObj.value,
rechargeUser: { ...rechargeUser.value }
}
})
// rechargeVo.value
// rechargeUser.value
const detailWithoutSort = ref({
area: rechargeVo.value.area,
adminId: rechargeVo.value.adminId,
startDate: rechargeVo.value.startDate,
endDate: rechargeVo.value.endDate
market: rechargeUser.value.market,
adminId: rechargeUser.value.adminId,
startTime: rechargeUser.value.startTime,
endTime: rechargeUser.value.endTime,
jwcode: rechargeUser.value.jwcode,
goodsName: rechargeUser.value.goodsName,
payPlatform: rechargeUser.value.payPlatform
})
const result2 = await API({
url: '/recharge/recharge/RechargeA',
const resultTotalGold = await API({
url: 'http://18.143.76.3:10704/recharge/statsGold',
data: {
...detailWithoutSort.value
}
})
// result2
if (!result2 || !result2.data || result2.data.length === 0) {
totalmoney.value = 0
totalRcoin.value = 0
totalFcoin.value = 0
}
if (result2.data) {
result2.data.forEach((item) => {
switch (item.auditStatus) {
case '待审核':
// item.raudit 0
// item.sumRaudit 0
pendingGold.value = item.sumRaudit || 0
pendingRGold.value = item.sumRaudit1 || 0
pendingFGold.value = item.sumRaudit2 || 0
break
case '已通过':
approvedGold.value = item.sumRaudit || 0
approvedRGold.value = item.sumRaudit1 || 0
approvedFGold.value = item.sumRaudit2 || 0
break
case '已驳回':
rejectedGold.value = item.sumRaudit || 0
rejectedRGold.value = item.sumRaudit1 || 0
rejectedFGold.value = item.sumRaudit2 || 0
break
}
})
if (resultTotalGold.code === 200 && resultTotalGold.data) {
const data = resultTotalGold.data
console.log('获取到的金币数据:', data)
permanentGolds.value = Number(data.permanentGolds) || 0
freeGolds.value = Number(data.freeGolds) || 0
}
trueGold.value = pendingGold.value + approvedGold.value + rejectedGold.value
trueRGold.value =
pendingRGold.value + approvedRGold.value + rejectedRGold.value
trueFGold.value =
pendingFGold.value + approvedFGold.value + rejectedFGold.value
//
console.log('请求成功', result)
@ -203,29 +225,31 @@ const search = function () {
}
//
const reset = function () {
delete rechargeVo.value.activityId
delete rechargeVo.value.payWay
delete rechargeVo.value.area
delete rechargeVo.value.startDate
delete rechargeVo.value.endDate
delete rechargeUser.value.jwcode
delete rechargeUser.value.activity
delete rechargeUser.value.payPlatform
delete rechargeUser.value.market
delete rechargeUser.value.startTime
delete rechargeUser.value.endTime
delete sortField.value
delete sortOrder.value
getTime.value = {}
get()
}
//
const getToday = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate()
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
@ -241,119 +265,38 @@ const handleCurrentChange = function (val) {
const getYesterday = function () {
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const startDate = new Date(
const startTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate()
)
const endDate = new Date(
const endTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
// 7
const get7Days = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() - 6
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
//
const adminAll = function () {
console.log('adminAll')
rechargeVo.value.status = ''
getObj.value.pageNum = 1
get()
}
//
const adminWait = async function () {
rechargeVo.value.status = 0
getObj.value.pageNum = 1
await get()
console.log('adminWait')
trueGold.value = pendingGold.value
trueRGold.value = pendingRGold.value
trueFGold.value = pendingFGold.value
}
//
const adminPass = async function () {
rechargeVo.value.status = 1
getObj.value.pageNum = 1
await get()
trueGold.value = approvedGold.value
trueRGold.value = approvedRGold.value
trueFGold.value = approvedFGold.value
console.log('adminPass')
}
//
const adminReject = async function () {
rechargeVo.value.status = 2
getObj.value.pageNum = 1
await get()
console.log('adminReject')
trueGold.value = rejectedGold.value
trueRGold.value = rejectedRGold.value
trueFGold.value = rejectedFGold.value
}
//
const handleClick = function (tab, event) {
if (tab.props.name === 'all') {
adminAll()
} else if (tab.props.name === 'wait') {
adminWait()
} else if (tab.props.name === 'pass') {
adminPass()
} else if (tab.props.name === 'reject') {
adminReject()
}
}
//
const getActivity = async function () {
try {
// POST
const result = await API({ url: '/recharge/activity/select', data: {} })
//
console.log('请求成功', result)
//
activity.value = result.data
console.log('activity', activity.value)
} catch (error) {
console.log('请求失败', error)
//
}
}
//
//
const getArea = async function () {
try {
// POST
const result = await API({ url: 'http://192.168.8.247:8081/general/market', data: {} })
//
console.log('请求成功', result)
//
area.value = result.data
console.log('地区', area.value)
} catch (error) {
console.log('请求失败', error)
//
}
}
// =================================
//
const del = function (row) {
@ -399,7 +342,7 @@ const checkNumber = function () {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
message: '数字输入有误'
})
}
}
@ -410,6 +353,7 @@ onMounted(async function () {
await get()
await getActivity()
await getArea()
await getPlatform()
})
//
const sortField = ref('')
@ -419,7 +363,7 @@ const handleSortChange = (column) => {
console.log('排序字段:', column.prop)
console.log('排序方式:', column.order)
if (column.prop === 'paidGold') {
if (column.prop === 'money') {
sortField.value = 'paid_gold'
} else if (column.prop === 'freeGold') {
sortField.value = 'free_gold'
@ -432,6 +376,7 @@ const handleSortChange = (column) => {
}
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
console.log('传递给后端的排序字段:', sortField.value)
console.log('传递给后端的排序方式:', sortOrder.value)
get()
}
@ -445,25 +390,25 @@ const handleSortChange = (column) => {
<el-col :span="5">
<div class="head-card-element">
<el-text class="mx-1" size="large">精网号</el-text>
<el-input v-model="rechargeVo.jwcode" placeholder="请输入精网号" style="width: 150px" clearable />
<el-input v-model="rechargeUser.jwcode" placeholder="请输入精网号" style="width: 150px" clearable />
</div>
</el-col>
<el-col :span="6">
<div class="head-card-element">
<el-text class="mx-1" size="large">活动名称</el-text>
<el-select v-model="rechargeVo.activityId" placeholder="请选择活动名称" style="width: 180px"
<el-select v-model="rechargeUser.activity" placeholder="请选择活动名称" style="width: 180px"
clearable>
<el-option v-for="item in activity" :key="item.activityId" :label="item.activityName"
:value="item.activityId" />
<el-option v-for="item in activity" :key="item.activity" :label="item.activity"
:value="item.activity" />
</el-select>
</div>
</el-col>
<el-col :span="6">
<div class="head-card-element" v-if="adminData.area == '总部'">
<div class="head-card-element" >
<el-text class="mx-1" size="large">所属地区</el-text>
<el-select v-model="rechargeVo.area" placeholder="请选择所属地区" style="width: 180px" clearable>
<el-option v-for="item in area" :key="item" :label="item" :value="item" />
<el-select v-model="rechargeUser.market" placeholder="请选择所属地区" style="width: 180px" clearable>
<el-option v-for="item in market" :key="item" :label="item" :value="item" />
</el-select>
</div>
</el-col>
@ -471,8 +416,8 @@ const handleSortChange = (column) => {
<el-col :span="6">
<div class="head-card-element">
<el-text class="mx-1" size="large">充值类型</el-text>
<el-select v-model="rechargeVo.rechargeWay" placeholder="请选择支付方式" style="width: 180px" clearable>
<el-option v-for="item in rechargeWay" :key="item.value" :label="item.label" :value="item.value" />
<el-select v-model="rechargeUser.payPlatform" placeholder="请选择充值方式" style="width: 180px" clearable>
<el-option v-for="item in platform" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
</el-col>
@ -511,9 +456,9 @@ const handleSortChange = (column) => {
<el-col>
<el-card>
<div>
充值金额{{ trueRGold.toFixed(2) }}新币永久金币{{
trueRGold.toFixed(2)
}}金币免费金币{{ trueFGold }}金币
充值金额{{ permanentGolds.toFixed(2) }}新币永久金币{{
permanentGolds.toFixed(2)
}}金币免费金币{{ freeGolds }}金币
</div>
<!-- 设置表格容器的高度和滚动样式 -->
<div style="height: 520px; overflow-y: auto;margin-top: 10px;">
@ -537,7 +482,7 @@ const handleSortChange = (column) => {
</el-table-column>
<el-table-column
fixed="left"
prop="username"
prop="name"
label="姓名"
width="80px"
/>
@ -547,21 +492,21 @@ const handleSortChange = (column) => {
label="精网号"
width="80px"
/>
<el-table-column prop="area" label="所属地区" width="100px" />
<el-table-column prop="market" label="所属地区" width="100px" />
<el-table-column
prop="activityName"
prop="activity"
label="活动名称"
width="100px"
/>
<el-table-column prop="" label="货币名称" width="110px" />
<el-table-column prop="rateName" label="货币名称" width="110px" />
<el-table-column
prop="paidGold"
prop="money"
sortable="custom"
label="充值金额"
width="110px"
/>
<el-table-column
prop="paidGold"
prop="permanentGold"
label="永久金币"
sortable="custom"
width="110px"
@ -573,11 +518,11 @@ const handleSortChange = (column) => {
width="110px"
/>
<el-table-column
prop="rechargeWay"
prop="payPlatform"
label="充值方式"
width="100px"
/>
<el-table-column prop="payWay" label="支付方式" width="100px" />
<el-table-column prop="payModel" label="支付方式" width="100px" />
<el-table-column
prop="remark"
label="备注"
@ -585,50 +530,9 @@ const handleSortChange = (column) => {
show-overflow-tooltip
/>
<!-- <el-table-column
prop="rechargeVoucher"
label="支付凭证"
width="150px"
>
<template #default="scope">
<el-image
:preview-src-list="[scope.row.rechargeVoucher]"
preview-teleported="true"
:src="scope.row.rechargeVoucher"
alt="凭证"
style="width: 50px; height: 50px"
/>
</template>
</el-table-column> -->
<el-table-column prop="name" label="提交人" width="100px" />
<!-- <el-table-column prop="status" label="状态" width="100px">
<template #default="scope">
<span v-if="scope.row.status === 1">
<div class="status">
<span class="green-dot"></span>
<span>已通过</span>
</div>
</span>
<span v-if="scope.row.status === 0">
<div class="status">
<span class="grey-dot"></span>
<span>待审核</span>
</div>
</span>
<span v-if="scope.row.status === 2">
<div class="status">
<span class="red-dot"></span>
<span>已驳回</span>
</div>
</span>
</template>
</el-table-column>
<el-table-column
prop="reson"
label="驳回理由"
width="200px"
show-overflow-tooltip
/> -->
<el-table-column prop="adminName" label="提交人" width="100px" />
<el-table-column
prop="rechargeTime"
sortable
@ -641,37 +545,7 @@ const handleSortChange = (column) => {
}}
</template>
</el-table-column>
<!-- <el-table-column
prop="createTime"
sortable="custom"
label="提交时间"
width="200px"
/>
<el-table-column
fixed="right"
prop="operation"
label="操作"
width="150px"
>
<template #default="scope">
<el-popconfirm
title="确定将此条活动删除吗?"
@confirm="delConfirm"
>
<template #reference>
<el-button type="primary" text @click="del(scope.row)">
删除
</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>
@ -691,60 +565,8 @@ const handleSortChange = (column) => {
</el-col>
</el-row>
<!-- 编辑弹窗 -->
<el-dialog
v-model="editRechargeVisible"
title="新增活动"
width="500"
:before-close="closeEditRechargeVisible"
>
<template #footer>
<el-form :model="editObj" label-width="auto" style="max-width: 600px">
<el-form-item label="活动名称:">
<el-input
v-model="addObj.activityName"
placeholder="请输入活动名称"
style="width: 220px"
/>
</el-form-item>
<el-form-item label="免费金币:">
<el-radio-group v-model="addObj.freeGold">
<el-radio value="0">无赠送</el-radio>
<el-radio value="1">有赠送</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="免费金币兑换比:">
<el-input
v-model="addObj.rechargeRatio"
placeholder="请输入"
style="width: 80px"
/>1
<div style="color: grey">(提示当前规则每10新币可兑换1免费金币)</div>
</el-form-item>
<el-form-item label="开始时间:">
<el-time-picker v-model="addObj.startTime" />
</el-form-item>
<el-form-item label="结束时间:">
<el-time-picker v-model="addObj.endTime" />
</el-form-item>
<el-form-item label="添加人:">
<el-input v-model="addObj.adminName" disabled style="width: 220px" />
</el-form-item>
</el-form>
<div class="dialog-footer">
<el-button @click="closeAddActivityVisible">取消</el-button>
<el-button type="primary" @click="closeAddActivityVisible">
提交
</el-button>
</div>
</template>
</el-dialog>
</template>
<style scoped>

38
src/views/refund/addCoinRefund.vue

@ -143,7 +143,7 @@ const getUser = async function (jwcode) {
try {
// POST
const result = await API({
url: 'http://192.168.8.247:8081/user/selectUser',
url: 'http://18.143.76.3:10704/user/selectUser',
data: {
jwcode: addRefund.value.jwcode
}
@ -166,23 +166,23 @@ const getUser = async function (jwcode) {
//
}
}
const calculatedAllGold = computed(() => {
const sum =
Number(addRefund.value.freeCoin) +
Number(addRefund.value.rechargeCoin) +
Number(addRefund.value.taskCoin)
return !isNaN(sum) ? sum : 0
})
// const calculatedAllGold = computed(() => {
// const sum =
// Number(addRefund.value.freeCoin) +
// Number(addRefund.value.rechargeCoin) +
// Number(addRefund.value.taskCoin)
// return !isNaN(sum) ? sum : 0
// })
watch(calculatedAllGold, (newVal) => {
addRefund.value.allCoin = newVal
})
// watch(calculatedAllGold, (newVal) => {
// addRefund.value.allCoin = newVal
// })
const AAA = computed(() => {
return addRefund.value.jwcode
})
// const AAA = computed(() => {
// return addRefund.value.jwcode
// })
watch(AAA, (newVal) => {})
// watch(AAA, (newVal) => {})
// 退
// const refundType = [
@ -200,7 +200,7 @@ const getRefundTypes = async function () {
try {
// 退
const result = await API({
// url: 'http://192.168.8.247:8081/', //退
// url: 'http://18.143.76.3:10704/', //退
data: {} })
console.log('退款类型请求成功', result)
// refundType
@ -221,7 +221,7 @@ const getGoods = async function (jwcode) {
try {
// POST
const result = await API({
url: 'http://39.101.133.168:8828/live_mall/api/product/all',
// url: 'http://39.101.133.168:8828/live_mall/api/product/all', //
data: {
jwcode: addRefund.value.jwcode,
market: adminData.value.market
@ -239,7 +239,7 @@ const getGoods = async function (jwcode) {
}
} catch (error) {
console.log('请求失败', error)
ElMessage.error('查询失败,请检查精网号是否正确')
ElMessage.error('查询商品失败,请检查精网号是否正确')
//
}
}
@ -287,7 +287,7 @@ const getProductByOrderCode = async function (item) {
}
} catch (error) {
console.log('请求失败', error)
ElMessage.error('查询失败,请检查精网号是否正确')
ElMessage.error('查询订单失败,请检查精网号是否正确')
//
}
}

32
src/views/refund/beanRefund.vue

@ -96,13 +96,13 @@ const get = async function (val) {
}
//
if (getTime.value != null) {
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
detail.value.startDate = getTime.value[0]
detail.value.endDate = getTime.value[1]
if (getTime.value.startTime != '' && getTime.value.endTime != '') {
detail.value.startTime = getTime.value[0]
detail.value.endTime = getTime.value[1]
}
} else {
detail.value.startDate = ''
detail.value.endDate = ''
detail.value.startTime = ''
detail.value.endTime = ''
}
//
detail.value.sortField = sortField.value
@ -187,8 +187,8 @@ const reset = function () {
detail.value.refundGoods = ''
detail.value.refundType = ''
detail.value.area = ''
detail.value.startDate = ''
detail.value.endDate = ''
detail.value.startTime = ''
detail.value.endTime = ''
sortField.value = ''
sortOrder.value = ''
getTime.value = {}
@ -196,17 +196,17 @@ const reset = function () {
//
const getToday = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate()
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
@ -214,34 +214,34 @@ const getToday = function () {
const getYesterday = function () {
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const startDate = new Date(
const startTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate()
)
const endDate = new Date(
const endTime = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}
// 7
const get7Days = function () {
const today = new Date()
const startDate = new Date(
const startTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() - 6
)
const endDate = new Date(
const endTime = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
)
getTime.value = [startDate, endDate]
getTime.value = [startTime, endTime]
console.log('getTime', getTime.value)
get()
}

66
src/views/refund/coinRefundDetail.vue

@ -7,6 +7,24 @@ import { ElMessage, ElMessageBox } from 'element-plus'
import axios from 'axios'
import moment from 'moment'
import API from '@/util/http'
import request from '@/util/http'
//
const trimJwCode = () => {
if (refundUser.value.jwcode) {
//
const trimmed = refundUser.value.jwcode.toString().replace(/\s/g, '');
const numeric = Number(trimmed);
//
if (!isNaN(numeric)) {
refundUser.value.jwcode = numeric;
} else {
ElMessage.error("精网号格式不正确,请输入数字");
}
}
}
//
//
const adminData = ref({})
@ -58,7 +76,7 @@ const getRefundTypes = async function () {
try {
// 退
const result = await API({
// url: 'http://192.168.8.247:8081/', //退
// url: 'http://18.143.76.3:10704/', //退
data: {} })
console.log('退款类型请求成功', result)
// refundType
@ -80,6 +98,8 @@ const getSelectBy = async function (val) {
if (typeof val === 'number') {
getObj.value.pageNum = val
}
// todo
//
if (getTime.value != null) {
if (getTime.value.startTime != '' && getTime.value.endTime != '') {
@ -90,13 +110,15 @@ const getSelectBy = async function (val) {
refundUser.value.startTime = ''
refundUser.value.endTime = ''
}
// todo
//
refundUser.value.sortField = sortField.value
refundUser.value.sortOrder = sortOrder.value
console.log('搜索参数', getObj.value)
// POST
const result = await API({
url: 'http://192.168.8.247:8081/refund/selectBy',
url: 'http://18.143.76.3:10704/refund/selectBy',
data: {
...getObj.value,
refundUser: { ...refundUser.value }
@ -108,7 +130,7 @@ const getSelectBy = async function (val) {
delete detailWithoutSort.sortOrder
const resultTotalGold = await API({
url: 'http://192.168.8.247:8081/refund/statsGold',
url: 'http://18.143.76.3:10704/refund/statsGold',
data: {
...detailWithoutSort
}
@ -145,12 +167,7 @@ const search = function () {
}
//
const reset = function () {
refundUser.value.jwcode= ''
refundUser.value.goodsName = ''
refundUser.value.refundType = ''
refundUser.value.market = ''
refundUser.value.startTime = ''
refundUser.value.endTime = ''
refundUser.value = {}
sortField.value = ''
sortOrder.value = ''
getTime.value = {}
@ -223,11 +240,11 @@ const handleClick = function (tab, event) {
}
}
//
const getArea = async function () {
//
const getMarket = async function () {
try {
// POST
const result = await API({ url: 'http://192.168.8.247:8081/general/market', data: {} })
const result = await API({ url: 'http://18.143.76.3:10704/general/market', data: {} })
//
console.log('请求成功', result)
//
@ -268,9 +285,12 @@ const goods = ref([])
const getGoods = async function () {
try {
// POST
const result = await API({ url: '/product', data: {} })
const result = await request({
url: 'http://18.143.76.3:10704/general/goods',
data: {}
})
//
console.log('请求成功', result)
console.log('请求成功product', result)
//
goods.value = result.data
@ -280,7 +300,7 @@ const getGoods = async function () {
//
}
}
getGoods()
//
const checkNumber = function () {
@ -312,7 +332,7 @@ const checkNumber = function () {
onMounted(async function () {
await getAdminData()
await getSelectBy()
await getArea()
await getMarket()
await getRefundTypes()
})
//
@ -374,6 +394,7 @@ const handleCurrentChange = function (val) {
style="width: 180px"
clearable
>
<!-- todo 这需要改-->
<el-option
v-for="item in refundType"
:key="item.value"
@ -435,7 +456,8 @@ const handleCurrentChange = function (val) {
end-placeholder="结束时间"
/>
<el-button style="margin-left: 10px" @click="getToday()"
></el-button
>
</el-button
>
<el-button @click="getYesterday()"></el-button>
<el-button @click="get7Days()">近7天</el-button>
@ -477,6 +499,7 @@ const handleCurrentChange = function (val) {
<span>{{
scope.$index + 1 + (getObj.pageNum - 1) * getObj.pageSize
}}</span>
</template>
</el-table-column>
<el-table-column
@ -511,17 +534,17 @@ const handleCurrentChange = function (val) {
prop="permanentGold"
label="永久金币"
width="110px"
sortable="custom"
sortable="custom"
/>
<el-table-column
prop="freeGold"
sortable="custom"
sortable="custom"
label="免费金币"
width="110px"
/>
<el-table-column
prop="taskGold"
sortable="custom"
sortable="custom"
label="任务金币"
width="110px"
/>
@ -536,7 +559,7 @@ const handleCurrentChange = function (val) {
<el-table-column
prop="createTime"
sortable="custom"
sortable="custom"
label="提交时间"
width="180px"
>
@ -581,6 +604,7 @@ const handleCurrentChange = function (val) {
.head-card-btn {
margin-left: auto;
}
.pagination {
display: flex;
margin-top: 20px;

6
src/views/usergold/clientCountBalance.vue

@ -30,7 +30,7 @@ const getmarket = async () => {
isLoadingmarket.value = true;
try {
const result = await API({
url: 'http://192.168.8.220:8081/general/market'
url: 'http://18.143.76.3:10704/general/market'
});
console.log('获取地区数据成功',result)
// { value, label }
@ -118,7 +118,7 @@ const get = async function (val) {
//console.log('', requestData);
const result = await API({
url: 'http://192.168.8.220:8081/goldDetail/getGold',
url: 'http://18.143.76.3:10704/goldDetail/getGold',
method: 'post',
data: { ...getObj.value, user: { ...user.value } }
})
@ -129,7 +129,7 @@ const get = async function (val) {
//
const resultGoldTotal = await API({
url: 'http://192.168.8.220:8081/goldDetail/goldTotal',
url: 'http://18.143.76.3:10704/goldDetail/goldTotal',
data: {
...getAllObj.value,
user: { ...user.value }

6
src/views/usergold/clientCountDetail.vue

@ -42,7 +42,7 @@ const getPlatform = async () => {
isLoadingPlatform.value = true;
try {
const result = await API({
url: 'http://192.168.8.220:8081/general/platform',
url: 'http://18.143.76.3:10704/general/platform',
method: 'post',
data: {}//
})
@ -85,7 +85,7 @@ const getArea = async () => {
isLoadingArea.value = true;
try {
const result = await API({
url: 'http://192.168.8.220:8081/general/market'
url: 'http://18.143.76.3:10704/general/market'
});
// { value, label }
if (Array.isArray(result.data) && typeof result.data[0] === 'string') {
@ -168,7 +168,7 @@ const get = async function (val) {
//console.log('', requestData);
const result = await API({
url: 'http://192.168.8.220:8081/goldDetail/getGoldDetail',
url: 'http://18.143.76.3:10704/goldDetail/getGoldDetail',
method: 'post',
data: { ...getObj.value, goldDetail: { ...goldDetail.value } }
})

2
src/views/workspace/index.vue

@ -223,7 +223,7 @@ const handleDateRangeChange = () => {
const getAreas = async () => {
try {
const result = await API({
url: 'http://192.168.8.247:8081/general/market',
url: 'http://18.143.76.3:10704/general/market',
data: {}
})
middleCategory.value = result.data.map(item => item.name)

Loading…
Cancel
Save