Compare commits

...

5 Commits
dev ... zry

  1. 6
      gold-system/.env.development
  2. 4
      gold-system/.env.production
  3. 6
      gold-system/.env.test
  4. 28
      gold-system/src/views/audit/rechargeAudit.vue
  5. 8
      gold-system/src/views/audit/refundAudit.vue
  6. 13
      gold-system/src/views/consume/addConsume.vue
  7. 16
      gold-system/src/views/consume/allConsume.vue
  8. 13
      gold-system/src/views/goldBeen/addGoldenBeen.vue
  9. 12
      gold-system/src/views/goldBeen/goldenBeenBalance.vue
  10. 16
      gold-system/src/views/goldBeen/goldenBeenConsum.vue
  11. 16
      gold-system/src/views/goldBeen/goldenBeenDetail.vue
  12. 12
      gold-system/src/views/goldBeen/onLineDetail.vue
  13. 8
      gold-system/src/views/login.vue
  14. 301
      gold-system/src/views/managerecharge/activity.vue
  15. 12
      gold-system/src/views/recharge/addRecharge.vue
  16. 14
      gold-system/src/views/refund/addRefund.vue
  17. 40
      gold-system/src/views/usergold/index.vue
  18. 9
      gold-system/src/views/usergoldInfo/index.vue
  19. 2
      gold-system/stats.html

6
gold-system/.env.development

@ -1 +1,5 @@
VITE_API_BASE='http://54.251.137.151:10704/'
# VITE_API_BASE='http://54.251.137.151:10704/'
# VITE_API_BASE='http://192.168.8.94:8080/'
VITE_API_BASE='https://hwjb.homilychart.com/gold_htms_dev'
# VITE_API_BASE='http://54.251.137.151:10704/'
# VITE_API_BASE='http://192.168.8.220:8080/'

4
gold-system/.env.production

@ -1 +1,3 @@
VITE_API_BASE='http://54.251.137.151:10702/'
# VITE_API_BASE='http://54.251.137.151:10702/'
VITE_API_BASE='https://hwjb.homilychart.com/gold_htms_prod'
# VITE_API_BASE='http://192.168.8.220:8080/'

6
gold-system/.env.test

@ -1 +1,5 @@
VITE_API_BASE='http://54.251.137.151:10704/'
# VITE_API_BASE='http://54.251.137.151:10704/'
# VITE_API_BASE='http://192.168.8.94:8080/'
VITE_API_BASE='https://hwjb.homilychart.com/gold_htms_prod'
# VITE_API_BASE='http://54.251.137.151:10704/'
# VITE_API_BASE='http://192.168.8.220:8080/'

28
gold-system/src/views/audit/rechargeAudit.vue

@ -98,6 +98,10 @@ const trueGold = ref(0)
const trueCount = ref(0)
const trueRGold = ref(0)
const trueFGold = ref(0)
//
const formattedTrueGold = computed(() => trueGold.value.toFixed(2))
const formattedTrueRGold = computed(() => trueRGold.value.toFixed(2))
const formattedTrueFGold = computed(() => trueFGold.value.toFixed(2))
//
const pendingCount = ref(0)
//
@ -215,6 +219,7 @@ const get = async function (val) {
}
//
const search = function () {
trimJwCode();
getObj.value.pageNum = 1
get()
}
@ -410,7 +415,7 @@ const pass = function (row) {
passObj.value = row
passObj.value.adminId = adminData.value.adminId
passObj.value.auditId = row.auditId
passObj.value.status = 1
// passObj.value.status = 1
passObj.value.rechargeId = row.rechargeId
passObj.value.detailId = row.detailId
passObj.value.jwcode = row.jwcode
@ -424,6 +429,8 @@ const pass = function (row) {
//
const passConfirm = async function () {
try {
//
passObj.value.status = 1
console.log('通过对象', passObj.value)
// POST
// passObj.value.flag = 0;
@ -442,8 +449,12 @@ const passConfirm = async function () {
message: '通过成功!'
})
} catch (error) {
console.log('请求失败', error)
//
console.error('请求失败', error);
//
ElMessage({
type: 'error',
message: '网络请求出错,请检查网络连接!'
});
}
}
@ -538,6 +549,13 @@ const handleSortChange = (column) => {
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
get()
}
//
const trimJwCode = () => {
if (rechargeVo.value.jwcode) {
rechargeVo.value.jwcode = rechargeVo.value.jwcode.replace(/\s/g, '');
}
}
</script>
<template>
@ -659,8 +677,8 @@ const handleSortChange = (column) => {
<div>
总条数{{ trueCount }}总金币数{{
trueGold
}}金币永久金币{{ trueRGold }}金币免费金币{{ trueFGold }}金币
formattedTrueGold
}}金币永久金币{{ formattedTrueRGold }}金币免费金币{{ formattedTrueFGold }}金币
</div>
</el-tabs>
<div style="height: 540px; overflow-y: auto">

8
gold-system/src/views/audit/refundAudit.vue

@ -181,6 +181,7 @@ const get = async function (val) {
}
//
const search = function () {
trimJwCode();
getObj.value.pageNum = 1
get()
}
@ -494,6 +495,13 @@ const handleSortChange = (column) => {
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
get()
}
//
const trimJwCode = () => {
if (detail.value.jwcode) {
// 使
detail.value.jwcode = detail.value.jwcode.replace(/\s/g, '');
}
}
</script>
<template>

13
gold-system/src/views/consume/addConsume.vue

@ -9,7 +9,12 @@ import API from "../../api/index.js";
import moment from "moment";
import _ from "lodash";
import request from "@/util/http";
//
const trimJwCode = () => {
if (addConsume.value.jwcode) {
addConsume.value.jwcode = addConsume.value.jwcode.replace(/\s/g, '');
}
}
//
const adminData = ref({});
const getAdminData = async function () {
@ -143,12 +148,13 @@ const user = ref({
firstRechargeTime: "",
});
const getUser = async function (jwcode) {
trimJwCode();
try {
// POST
const result = await request({
url: "/recharge/user",
data: {
jwcode: jwcode,
jwcode: addConsume.value.jwcode,
area: adminData.value.area,
},
});
@ -174,12 +180,13 @@ const getUser = async function (jwcode) {
//
const userGold = ref({});
const getUserGold = async function (jwcode) {
trimJwCode();
try {
// POST
const result = await request({
url: "/recharge/user",
data: {
jwcode: jwcode,
jwcode: addConsume.value.jwcode,
area: adminData.value.area,
},
});

16
gold-system/src/views/consume/allConsume.vue

@ -284,15 +284,14 @@ const getGoods = async function () {
try {
// POST
const result = await request({
url: '/product',
url: '/product/findProductName',
data: {}
})
//
console.log('请求成功', result)
console.log('请求成功product', result)
//
goods.value = result.data
console.log('allData', allData.value)
console.log('地区', area.value)
console.log('goods 数据', goods.value) //
} catch (error) {
console.log('请求失败', error)
//
@ -344,11 +343,12 @@ const handleCurrentChange = function (val) {
style="width: 240px"
clearable
>
<!-- 修改 v-for 绑定逻辑 -->
<el-option
v-for="item in goods"
:key="item.activityId"
:label="item.name"
:value="item.name"
v-for="(item, index) in goods"
:key="index"
:label="item"
:value="item"
/>
</el-select>
</div>

13
gold-system/src/views/goldBeen/addGoldenBeen.vue

@ -14,7 +14,7 @@
<el-input v-model="beenObj.jwcode" style="width: 220px" />
<el-button
type="primary"
@click="getUser(beenObj.jwcode)"
@click="getUser()"
style="margin-left: 20px"
>查询</el-button
>
@ -150,13 +150,20 @@ const resetData = (formEl) => {
if (!formEl) return
formEl.resetFields()
}
const getUser = async function (jwcode) {
//
const trimJwCode = () => {
if (beenObj.value.jwcode) {
beenObj.value.jwcode = beenObj.value.jwcode.replace(/\s/g, '');
}
}
const getUser = async function () {
trimJwCode();
try {
// POST
const result = await API({
url: '/dou/search',
data: {
jwcode: jwcode
jwcode: beenObj.value.jwcode
}
})
if (result.code === 0) {

12
gold-system/src/views/goldBeen/goldenBeenBalance.vue

@ -1,4 +1,5 @@
<template>
<!-- 这是客户金豆余额页面 -->
<div class="filter-box">
<el-form :model="detailY" ref="ruleFormRef">
<el-form-item prop="jwcode" label="精网号">
@ -35,9 +36,9 @@
</div>
<div class="table-box">
<p>
现有金豆:&nbsp;&nbsp;付费金豆:{{ getObj.jinbiBuy }}&nbsp;&nbsp;免费金豆:{{
现有金豆&nbsp;&nbsp;付费金豆{{ getObj.jinbiBuy }}&nbsp;&nbsp;免费金豆{{
getObj.jinbiFree
}}&nbsp;&nbsp;历史消费:{{ getObj.jinbiCostTotal }}
}}&nbsp;&nbsp;历史消费{{ getObj.jinbiCostTotal }}
</p>
<el-table
:data="tableData"
@ -118,7 +119,14 @@ let getObj = ref({
jinbiCostTotal: 0,
jinbiFree: 0
})
//
const trimJwCode = () => {
if (detailY.jwcode) {
detailY.jwcode = detailY.jwcode.replace(/\s/g, '');
}
}
const search = function () {
trimJwCode();
getInit({})
getCount()
}

16
gold-system/src/views/goldBeen/goldenBeenConsum.vue

@ -1,4 +1,5 @@
<template>
<!-- 这是金豆消费明细页面 -->
<div class="filter-box">
<el-form :model="detailY" ref="ruleFormRef">
<el-form-item prop="jwcode" label="精网号">
@ -79,7 +80,7 @@
</el-form>
</div>
<div class="table-box">
<p>合计数:实际用户金豆数:{{ beenCount }}</p>
<div>合计数实际用户金豆数{{ beenCount }}</div>
<el-table :data="tableData" style="width: 100%" height="584px">
<el-table-column type="index" label="序号" width="100px" fixed="left">
<template #default="scope">
@ -149,7 +150,7 @@
<script setup lang="ts">
import { ref } from 'vue'
import type { FormInstance } from 'element-plus'
import { ElMessage } from 'element-plus'
// import { ElMessage } from 'element-plus'
import moment from 'moment'
import API from '@/util/http'
@ -172,8 +173,8 @@ const consumList = ref<any>([
{ value: 10, text: '打赏视频' },
{ value: 11, text: '付费购买' }
])
const channelList = ref<string[]>([])
const liveroomList = ref<string[]>([])
// const channelList = ref<string[]>([])
// const liveroomList = ref<string[]>([])
const ruleFormRef = ref<FormInstance>()
//
const detailY = ref({
@ -218,8 +219,15 @@ const getInit = async function () {
//
}
}
//
const trimJwCode = () => {
if (detailY.value.jwcode) {
detailY.value.jwcode = detailY.value.jwcode.replace(/\s/g, '');
}
}
//
const search = function () {
trimJwCode();
getObj.value.pageNum = 1
getInit()
getCount()

16
gold-system/src/views/goldBeen/goldenBeenDetail.vue

@ -1,4 +1,5 @@
<template>
<!-- 这是金豆充值明细页面 -->
<div class="filter-box">
<el-form :model="detailY" ref="ruleFormRef">
<el-form-item prop="jwcode" label="精网号">
@ -72,10 +73,10 @@
</el-form>
</div>
<div class="table-box">
<el-card
>金豆总数充值金豆总数{{ countValue }}合计金额数:{{
<div
>金豆总数充值金豆总数{{ countValue }}合计金额数{{
priceValue
}}</el-card
}}</div
>
<el-table :data="tableData" style="width: 100%" height="584px">
<el-table-column type="index" label="序号" width="100px" fixed="left">
@ -386,8 +387,15 @@ const getInit = async function (
// getInit({ sortField: prop, sortOrder: 'DESC' })
// }
// }
//
const trimJwCode = () => {
if (detailY.value.jwcode) {
detailY.value.jwcode = detailY.value.jwcode.replace(/\s/g, '');
}
}
//
const search = function () {
trimJwCode();
getObj.value.pageNum = 1
getInit({})
getCount()
@ -426,7 +434,7 @@ const getCount = async () => {
url: '/dou/getTotal',
data: {
jwcode: detailY.value.jwcode,
//deptName: detailY.value.deptName,
deptName: detailY.value.deptName,
startTime: detailY.value.createTime[0],
endTime: detailY.value.createTime[1],
orderNo: detailY.value.orderNo,

12
gold-system/src/views/goldBeen/onLineDetail.vue

@ -1,4 +1,5 @@
<template>
<!-- 这是线上充值明细页面 -->
<div class="filter-box">
<el-form :model="detailY" ref="ruleFormRef">
<el-form-item prop="jwcode" label="精网号">
@ -72,7 +73,7 @@
</el-form>
</div>
<div class="table-box">
<p>金豆总数充值金豆总数{{ countValue }}合计金额数:{{ priceValue }}</p>
<div>金豆总数充值金豆总数{{ countValue }}合计金额数{{ priceValue }}</div>
<el-table :data="tableData" style="width: 100%" height="584px">
<el-table-column type="index" label="序号" width="100px" fixed="left">
<template #default="scope">
@ -242,6 +243,8 @@ const typeList = ref<string[]>([
'购买金豆',
'客服操作'
])
//
const detailY = ref({
jwcode: '',
@ -382,8 +385,15 @@ const getInit = async function (
// getInit({ sortField: prop, sortOrder: 'DESC' })
// }
// }
//
const trimJwCode = () => {
if (detailY.value.jwcode) {
detailY.value.jwcode = detailY.value.jwcode.replace(/\s/g, '');
}
}
//
const search = function () {
trimJwCode();
getObj.value.pageNum = 1
getInit({})
getCount()

8
gold-system/src/views/login.vue

@ -49,7 +49,7 @@ const login = async function () {
result.data.permission == '2' ||
result.data.permission == '3'
) {
router.push('/usergold')
router.push('/workspace')
} else if (result.data.permission == '4') {
router.push('/noPermission')
}
@ -66,6 +66,8 @@ const login = async function () {
//
}
}
</script>
<template>
<el-row class="login-page">
@ -84,9 +86,9 @@ const login = async function () {
<h1 style="color: #409eff">金币系统登录</h1>
</el-form-item>
<el-form-item prop="jwcode">
<el-input v-model="form.jwcode" placeholder="请输入精网号"></el-input>
<el-input v-model="form.jwcode" placeholder="请输入精网号" @keyup.enter="login"></el-input>
</el-form-item>
<el-form-item prop="password">
<el-form-item prop="password" @keyup.enter="login">
<el-input
v-model="form.password"
type="password"

301
gold-system/src/views/managerecharge/activity.vue

@ -25,7 +25,6 @@ const getAdminData = async function () {
}
}
//
//
const tableData = ref([])
//
@ -43,18 +42,9 @@ const getObj = ref({
const addObj = ref({
add: ''
})
//
//
const delObj = ref({})
// //
// const tableHeight = computed(function () {
// return (getObj.value.pageSize + 1) * 50 + "px";
// });
// ref
const Ref = ref(null)
//
//
const get = async function (val) {
try {
@ -63,26 +53,34 @@ const get = async function (val) {
getObj.value.pageNum = val
}
//
if (getTime.value != null) {
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
if (getTime.value.length === 2) {
activity.value.startDate = getTime.value[0]
activity.value.endDate = getTime.value[1]
}
} else {
activity.value.startDate = ''
activity.value.endDate = ''
activity.value.startDate = null
activity.value.endDate = null
}
console.log('搜索参数', getObj.value)
const requestData = {
pageNum: getObj.value.pageNum,
pageSize: getObj.value.pageSize,
activity: {
...activity.value,
activityName: activity.value.activityName,
status: activity.value.status
}
};
console.log('搜索参数', requestData)
// POST
const result = await request({
url: '/recharge/activity/select',
data: {
...getObj.value,
activity: { ...activity.value }
}
method: 'post',
data: requestData
})
//
console.log('响应数据', result);
//
console.log('请求成功', result)
//
@ -93,7 +91,7 @@ const get = async function (val) {
console.log('total', total.value)
} catch (error) {
console.log('请求失败', error)
//
ElMessage.error('请求失败')
}
}
//
@ -103,217 +101,94 @@ const search = function () {
}
//
const reset = function () {
getObj.value = {}
getObj.value.pageNum = 1
getObj.value.pageSize = 10
getTime.value = {}
getObj.value = {
pageNum: 1,
pageSize: 10
}
getTime.value = []
activity.value = {}
}
//
//
onMounted(async function () {
await getAdminData()
get()
})
// false
const addActivityVisible = ref(false)
//
const openAddActivityVisible = function () {
addActivityVisible.value = true
}
//
const closeAddActivityVisible = function (done) {
addActivityVisible.value = false
// addActivity
const addActivity = () => {
console.log('点击了新增活动按钮');
// addActivityVisible true
addActivityVisible.value = true;
};
//
const closeAddActivityVisible = () => {
addActivityVisible.value = false;
};
//
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
//
const addActicity = function () {
console.log('Date', new Date())
//
addObj.value = {}
addObj.value.adminId = adminData.value.adminId
addObj.value.adminName = adminData.value.name
addObj.value.freeGold = '0'
addObj.value.rechargeRatio = 0
addObj.value.startTime = null
addObj.value.endTime = null
openAddActivityVisible()
//
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
//
const add = async function () {
Ref.value.validate(async (valid) => {
console.log('valid', valid)
if (valid) {
//
const throttledAdd = async () => {
try {
console.log('添加对象', addObj.value)
// POST
// 'add'
const { add, ...validData } = addObj.value;
// POST
const result = await request({
url: '/recharge/activity/add',
data: addObj.value
url: '/recharge/activity/add', //
method: 'post',
data: validData
})
//
console.log('请求成功', result)
//
get()
//
console.log('新增活动成功', result)
ElMessage.success('新增活动成功')
//
closeAddActivityVisible()
//
ElMessage({
type: 'success',
message: '活动添加成功!'
})
//
get()
} catch (error) {
console.log('请求失败', error)
//
}
} else {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
})
console.log('新增活动失败', error)
ElMessage.error('新增活动失败')
}
})
}
// 使 _.throttle trailing false
const throttledAdd = _.throttle(add, 5000, { trailing: false })
//
// let onceFunction = true;
//
// const throttledAdd = (...args) => {
// if (onceFunction) {
// add.apply(null, args);
// onceFunction = false; // false
// timer = setTimeout(() => {
// onceFunction = true; //
// timer = null;
// }, 1000); // 10001
// }
// };
// =========================================================
//
const del = function (row) {
delObj.value.activityId = row.activityId
console.log('delObj', delObj.value)
}
//
const delConfirm = async function () {
//
const delConfirm = async (row) => {
try {
console.log('delObj', delObj.value)
// POST
delObj.value = row
//
const result = await request({
url: '/recharge/activity/edit',
url: '/recharge/activity/delete', //
method: 'post',
data: delObj.value
})
if (result.code == 200) {
ElMessage({
type: 'success',
message: '删除成功'
})
//
console.log('请求成功', result)
//
console.log('删除活动成功', result)
ElMessage.success('删除活动成功')
//
get()
} else {
ElMessage({
type: 'error',
message: '删除失败'
})
}
} catch (error) {
console.log('请求失败', error)
//
}
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
//
//
const handleStartTimeChange = () => {
Ref.value.validateField('endTime')
}
const checkFreeGoldRadio = function (rule, value, callback) {
if (addObj.value.freeGold == 1) {
if (value == '0' || value == null || value == '') {
callback(new Error('请输入免费金币兑换比'))
} else if (value < 0 || isNaN(value)) {
callback(new Error('请输入正确的格式'))
} else {
callback()
}
} else {
callback()
}
}
const checkStartTime = function (rule, value, callback) {
if (value < new Date()) {
callback(new Error('开始时间不能小于当前时间'))
} else {
callback()
console.log('删除活动失败', error)
ElMessage.error('删除活动失败')
}
}
const checkEndTime = function (rule, value, callback) {
if (value < new Date()) {
callback(new Error('结束时间不能小于当前时间'))
} else if (value <= addObj.value.startTime) {
callback(new Error('结束时间不能小于开始时间'))
} else {
callback()
}
}
const rules = reactive({
activityName: [
{ required: true, message: '请输入活动名称', trigger: 'blur' }
],
freeGold: [
{ required: true, message: '请选择是否赠送免费金币', trigger: 'blur' }
],
rechargeRatio: [{ validator: checkFreeGoldRadio, trigger: 'blur' }],
startTime: [
{ required: true, message: '请选择开始时间', trigger: 'blur' },
{ validator: checkStartTime, trigger: 'blur' }
],
endTime: [
{ required: true, message: '请选择结束时间', trigger: 'blur' },
{ validator: checkEndTime, trigger: 'blur' }
]
})
//
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('输入的数字合法')
get()
} else {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
})
//
const del = (row) => {
delObj.value = row
}
} else {
//
ElMessage({
type: 'error',
message: '请检查输入内容'
})
}
}
//
onMounted(async function () {
await getAdminData()
get()
})
</script>
<template>
@ -354,13 +229,13 @@ onMounted(async function () {
<div>
<el-button
plain
@click="addActicity()"
@click="addActivity()"
style="color: #048efb; border: 1px solid #048efb"
>新增活动</el-button
>
</div>
<div>
<el-table :data="tableData" :height="tableHeight" style="width: 100%">
<el-table :data="tableData" style="width: 100%">
<el-table-column
type="index"
label="序号"
@ -421,7 +296,7 @@ onMounted(async function () {
<template #default="scope">
<el-popconfirm
title="确定将此条活动删除吗?"
@confirm="delConfirm"
@confirm="delConfirm(delObj.value)"
>
<template #reference>
<el-button type="primary" text @click="del(scope.row)">
@ -445,7 +320,7 @@ onMounted(async function () {
<el-pagination
background
:page-size="getObj.pageSize"
:page-sizes="[5, 10, 20, 50, 100]"
:page-sizes="[5, 10, 20, 50]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
@size-change="handlePageSizeChange"

12
gold-system/src/views/recharge/addRecharge.vue

@ -9,7 +9,12 @@ import moment from 'moment'
import { range, re } from 'mathjs'
import { utils, read } from 'xlsx'
import throttle from 'lodash/throttle'
//
const trimJwCode = () => {
if (addRecharge.value.jwcode) {
addRecharge.value.jwcode = addRecharge.value.jwcode.replace(/\s/g, '');
}
}
//
const beforeAvatarUpload = (file) => {
const isJPG = file.type === 'image/jpeg'
@ -154,12 +159,14 @@ const rules = reactive({
//
const user = ref({})
const getUser = async function (jwcode) {
trimJwCode();
try {
// POST
const result = await API({
url: '/recharge/user',
data: {
jwcode: jwcode,
jwcode: addRecharge.value.jwcode,
area: adminData.value.area
}
})
@ -924,6 +931,7 @@ onMounted(async function () {
type="primary"
@click="getUser(addRecharge.jwcode)"
style="margin-left: 20px"
>查询</el-button
>
</el-form-item>

14
gold-system/src/views/refund/addRefund.vue

@ -25,7 +25,12 @@ const getAdminData = async function () {
console.log('请求失败', error)
}
}
//
const trimJwCode = () => {
if (addRefund.value.jwcode) {
addRefund.value.jwcode = addRefund.value.jwcode.replace(/\s/g, '');
}
}
// 退
const addRefund = ref({
updateType: '3',
@ -134,12 +139,13 @@ const user = ref({
firstRechargeTime: ''
})
const getUser = async function (jwcode) {
trimJwCode();
try {
// POST
const result = await API({
url: '/recharge/user',
data: {
jwcode: jwcode,
jwcode: addRefund.value.jwcode,
area: adminData.value.area
}
})
@ -188,14 +194,16 @@ const refundType = [
]
//
//
const goods = ref([])
const getGoods = async function (jwcode) {
trimJwCode();
try {
// POST
const result = await API({
url: '/consume/getDeatil',
data: {
jwcode: jwcode,
jwcode: addRefund.value.jwcode,
area: adminData.value.area
}
})

40
gold-system/src/views/usergold/index.vue

@ -1,4 +1,5 @@
<script setup>
//
import { ref, onMounted, reactive, computed } from 'vue'
import ElementPlus from 'element-plus'
import { ElMessage, ElMessageBox } from 'element-plus'
@ -137,8 +138,18 @@ const get = async function (val) {
//
}
}
// detailY putExcel jwcode
const trimJwCode = () => {
if (detailY.value.jwcode) {
detailY.value.jwcode = detailY.value.jwcode.replace(/\s/g, '');
}
if (putExcel.value.jwcode) {
putExcel.value.jwcode = putExcel.value.jwcode.replace(/\s/g, '');
}
}
//
const search = function () {
trimJwCode();
getObj.value.pageNum = 1
get()
}
@ -316,7 +327,36 @@ const putExcel = ref({
})
const excelInfo = ref({})
const loading = ref(false)
//
const checkJwCode = async (jwcode) => {
try {
const result = await API({
url: '/recharge/user',
method: 'post',
data: {
jwcode,
area: adminData.value.area
}
})
// code
return result.code !== 0
} catch (error) {
console.log('校验精网号失败', error)
return false
}
}
const areyour = async function () {
trimJwCode();
//
if (putExcel.value.jwcode) {
const isJwCodeValid = await checkJwCode(putExcel.value.jwcode)
if (!isJwCodeValid) {
ElMessage.error('该精网号不存在/无记录')
return
}
}
try {
loading.value = true
const result = await API({

9
gold-system/src/views/usergoldInfo/index.vue

@ -1,4 +1,5 @@
<script setup>
//
import { ref, onMounted, reactive, computed } from 'vue'
import ElementPlus from 'element-plus'
import { ElMessage, ElMessageBox } from 'element-plus'
@ -136,8 +137,16 @@ const get = async function (val) {
//
}
}
// detailY putExcel jwcode
const trimJwCode = () => {
if (detailY.value.jwcode) {
detailY.value.jwcode = detailY.value.jwcode.replace(/\s/g, '');
}
}
//
const search = function () {
trimJwCode();
getObj.value.pageNum = 1
get()
}

2
gold-system/stats.html
File diff suppressed because it is too large
View File

Loading…
Cancel
Save