This commit is contained in:
@fawn-nine
2023-03-09 17:14:30 +08:00
parent b001a5ca6d
commit d3581b3792
9 changed files with 1321 additions and 487 deletions

View File

@@ -48,7 +48,7 @@
</el-form-item>
<el-form-item label="花生币" prop="peanutCoin">
<!-- <el-input v-model="dataForm.peanutCoin" placeholder="花生币"></el-input> -->
<el-input-number v-model="dataForm.peanutCoin" label="花生币"></el-input-number>
<el-input-number disabled v-model="dataForm.peanutCoin" label="花生币"></el-input-number>
</el-form-item>
<!-- <el-form-item label="阅读时间" prop="readTime">
<el-input v-model="dataForm.readTime" placeholder="阅读时间"></el-input>
@@ -79,8 +79,8 @@ export default {
data() {
return {
baseUrl:global.baseUrl,
visible: false,
dialogVisible: false,
visible: false,
dialogVisible: false,
fileList: [],
dataForm: {
id: 0,
@@ -104,9 +104,9 @@ export default {
// name: [
// { required: true, message: '姓名不能为空', trigger: 'blur' }
// ],
age: [
{ required: true, message: '年龄不能为空', trigger: 'blur' }
],
// age: [
// { required: true, message: '年龄不能为空', trigger: 'blur' }
// ],
// sex: [
// { required: true, message: '性别不能为空', trigger: 'blur' }
// ],
@@ -182,8 +182,7 @@ export default {
var attr = []
attr.push(img)
this.fileList = attr
}
}
}
})
}
@@ -220,7 +219,7 @@ export default {
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {
onClose: () => {
this.visible = false
this.$emit('refreshDataList')
}
@@ -247,7 +246,7 @@ export default {
handleRemove(file) {
this.dataForm.avatar = '';
},
handlereset(){
handlereset(){
this.fileList = [],
this.visible = false
},

View File

@@ -0,0 +1,236 @@
<template>
<div class="mod-config">
<!-- <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item >
<el-input v-model="dataForm.key" placeholder="参数名" clearable>
</el-input>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">查询</el-button>
</el-form-item>
</el-form> -->
<el-table
:data="dataList"
border
v-loading="dataListLoading"
style="width: 100%;">
<el-table-column
type="selection"
header-align="center"
align="center"
width="50">
</el-table-column>
<el-table-column
prop="createTime"
header-align="center"
align="center"
label="操作时间">
</el-table-column>
<el-table-column
prop="userName"
header-align="center"
align="center"
label="用户">
</el-table-column>
<el-table-column
prop="orderType"
header-align="center"
align="center"
label="充值 支付 赠送优惠券.....">
</el-table-column>
<el-table-column
prop="changeAmount"
header-align="center"
align="center"
label="变动金额">
<template slot-scope="scope">
<span v-if="scope.row.changeAmount > 0" style="color: red;">{{scope.row.changeAmount}}</span>
<span v-if="scope.row.changeAmount < 0" style="color: #54a966;">{{scope.row.changeAmount}}</span>
</template>
</el-table-column>
<!-- <el-table-column
prop="relationId"
header-align="center"
align="center"
label="关联id">
</el-table-column> -->
<el-table-column
prop="remark"
header-align="center"
align="center"
label="备注">
</el-table-column>
<el-table-column
prop="userBalance"
header-align="center"
align="center"
label="余额">
</el-table-column>
<el-table-column
fixed="right"
header-align="center"
align="center"
width="150"
label="操作">
<template slot-scope="scope">
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row)">明细</el-button>
<!-- <el-button type="text" size="small" @click="deleteHandle(scope.row.transactionId)">删除</el-button> -->
</template>
</el-table-column>
</el-table>
<el-pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" :current-page="pageIndex"
:page-sizes="[10, 20, 50, 100]" :page-size="pageSize" :total="totalPage"
layout="total, sizes, prev, pager, next, jumper">
</el-pagination>
<el-dialog title="充/扣疯币明细" :close-on-click-modal="false" :visible.sync="memoryDetail" append-to-body width="30%">
<el-form :model="mdetail" label-width="100px" ref="pointForm">
<el-form-item label="充/扣主题:">
<!-- <el-input v-model="pointForm.remark"></el-input> -->
<span>{{mdetail.remark}}</span>
</el-form-item>
<el-form-item label="操作时间:">
<!-- <el-input v-model="pointForm.remark"></el-input> -->
<span>{{mdetail.createTime}}</span>
</el-form-item>
<el-form-item label="充值类型:">
<el-tag type="danger" v-if="mdetail.changeAmount > 0">充值疯币</el-tag>
<el-tag type="success" v-else>扣除疯币</el-tag>
</el-form-item>
<el-form-item label="金额:" >
<!-- <el-input-number v-model="mdetail.pointAmount" :placeholder="mdetail.peanutCoin+'可用'">
</el-input-number> -->
<span>{{mdetail.changeAmount}}</span>
</el-form-item>
<el-form-item label="充扣明细:">
<span>{{mdetail.note}}</span>
<!-- <el-input type="textarea" rows="5" v-model="mdetail.note" placeholder="操作说明">
</el-input> -->
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="closeDia"> </el-button>
<!-- <el-button type="primary" @click="huaSheng"> </el-button> -->
</span>
</el-dialog>
</div>
</template>
<script>
import { memoryUsage } from 'process';
export default {
data() {
return {
dataForm: {
key: ''
},
memoryDetail:false,
headers: [
{
prop: 'remark',
label: '充/扣主题',
},
{
prop: 'createTime',
label: '操作时间',
},
{
prop: 'changeAmount',
label: '充值类型',
},
{
prop: 'changeAmount',
label: '充值类型',
},
],
query: {
id: 0,
tel:''
},
mdetail:{}, //
dataListLoading: false,
dataList: [],
pageIndex: 1,
pageSize: 10,
totalPage: 0,
}
},
created(){
// this.getDataList()
},
activated() {
this.query.id = this.$route.query.id;
this.query.tel = this.$route.query.tel;
// console.log(this.$route.query.orderId)
this.getDataList()
},
methods: {
closeDia(){
this.memoryDetail = false
this.mdetail = {}
},
huaSheng(){
this.$http({
url: this.$http.adornUrl(`/book/user/pointChange?&note=${this.mdetail.note}&id=${this.mdetail.id}`),
method: 'get',
params: this.$http.adornParams()
}).then(({
data
}) => {
if (data && data.code === 0) {
this.$message.success('操作成功')
this.getDataList()
this.closeDia()
}
})
},
// 获取数据列表
getDataList() {
this.dataListLoading = true
this.$http({
url: this.$http.adornUrl('/book/transactiondetails/list?'),
method: 'get',
params: this.$http.adornParams({
'page': 1,
'limit': 200,
'key': this.query.tel
})
}).then(({
data
}) => {
if (data && data.code === 0) {
this.dataList = data.page.list
this.totalPage = data.page.totalCount
this.dataListLoading = false
}
})
},
// 新增 / 修改
addOrUpdateHandle (row) {
this.memoryDetail = true
this.mdetail = row
},
// 每页数
sizeChangeHandle(val) {
this.pageSize = val
this.pageIndex = 1
this.getDataList()
},
// 当前页
currentChangeHandle(val) {
this.pageIndex = val
this.getDataList()
},
}
}
</script>
<style lang="less" scoped>
/deep/ .el-form-item{margin-bottom: 1px solid #eee; margin-bottom: 10px;}
</style>

View File

@@ -1,7 +1,7 @@
<template>
<div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-form-item >
<el-input v-model="dataForm.key" placeholder="参数名" clearable>
</el-input>
</el-form-item>
@@ -12,7 +12,7 @@
:disabled="dataListSelections.length <= 0">批量删除</el-button>
</el-form-item>
</el-form>
<el-table :data="dataList" border v-loading="dataListLoading" @selection- change="selectionChangeHandle"
<el-table :data="dataList" border v-loading="dataListLoading" @selection-change="selectionChangeHandle"
style="width: 100%;">
<el-table-column type="selection" header-align="center" align="center" width="50">
</el-table-column>
@@ -52,6 +52,10 @@
label="密码">
</el-table-column> -->
<el-table-column prop="vip" header-align="center" align="center" label="会员类型">
<template slot-scope="scope">
<span v-if="scope.row.vip == '1'">VIP</span>
<span v-if="scope.row.vip == '0'">普通会员</span>
</template>
</el-table-column>
<!-- <el-table-column
prop="vipValidtime"
@@ -82,6 +86,9 @@
<el-table-column fixed="right" header-align="center" align="center" width="150" label="操作">
<template slot-scope="scope">
<el-button type="text" size="small" @click="ck(scope.row)">/扣疯币</el-button>
<router-link :to="{ path: 'user-point-memery', query: {'tel':scope.row.tel, 'id':scope.row.id} }">
<el-button type="text" size="small">/扣疯币记录</el-button>
</router-link>
<el-button type="text" size="small" @click="youhui(scope.row)">优惠券列表</el-button>
<br>
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">修改</el-button>
@@ -89,19 +96,23 @@
</template>
</el-table-column>
</el-table>
<el-pagination @size-change="sizeChangeHandle" @current- change="currentChangeHandle" :current-page="pageIndex"
<el-pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" :current-page="pageIndex"
:page-sizes="[10, 20, 50, 100]" :page-size="pageSize" :total="totalPage"
layout="total, sizes, prev, pager, next, jumper">
</el-pagination>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
<el-dialog title="充/扣疯币" :close-on-click-modal="false" :visible.sync="adc" append-to-body width="30%" :before-close="closeDia">
<el-form :model="pointForm" label-width="100px" :rules="pointFormRules" ref="pointForm">
<el-dialog title="充/扣疯币" :close-on-click-modal="false" :visible.sync="adc" append-to-body width="30%">
<el-form :model="pointForm" label-width="100px">
<el-form-item label="用户">
{{pointForm.tel}} <span v-if="pointForm.name!=''">({{pointForm.name}})</span>
{{pointForm.tel}} <span v-if="pointForm.name!=''">({{pointForm.name}})</span>
<span>账户余额<em style="font-style: normal; font-size: 16px; color: #17B3A3;">{{pointForm.peanutCoin}}</em></span>
</el-form-item>
<el-form-item label="充值类型">
<!-- <el-form-item label="充/扣主题">
<el-input v-model="pointForm.title"></el-input>
</el-form-item> -->
<el-form-item label="充值类型" prop="pointType">
<!-- <el-input v-model="pointForm.pointType" placeholder="0-普通 1-vip"></el-input>
-->
<el-select v-model="pointForm.pointType" placeholder="请选择">
@@ -109,14 +120,19 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="金额">
<el-input-number v-model="pointForm.pointAmount" placeholder="">
</el-input-number>
<el-form-item label="金额" prop="pointAmount">
<el-input-number v-model="pointForm.pointAmount" :placeholder="pointForm.peanutCoin+'可用'">
</el-input-number>
</el-form-item>
<el-form-item label="充扣明细">
<el-input type="textarea" rows="5" v-model="pointForm.remark" placeholder="操作说明">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="adc=false">取消</el-button>
<el-button type="primary" @click="huaSheng">确定</el-button>
<el-button @click="closeDia">取消</el-button>
<el-button type="primary" @click="huaSheng(pointForm.peanutCoin)">确定</el-button>
</span>
</el-dialog>
@@ -159,6 +175,12 @@
dataForm: {
key: ''
},
pointFormRules:{
pointAmount:[
{ required: true, message: '请输入金额', trigger: 'blur' },
],
pointType:{ required: true, message: '请选择操作类型', trigger: 'blur' }
},
options: [{
value: 0,
label: '充疯币'
@@ -169,6 +191,9 @@
adc: false,
pointForm: {
pointType: 0,
remark:'',
// title:'',
pointAmount:0
},
dataList: [],
pageIndex: 1,
@@ -200,7 +225,7 @@
params: this.$http.adornParams({
'page': 1,
'limit': 200,
'key': ''
'key': this.dataForm.key
})
}).then(({
data
@@ -254,6 +279,11 @@
this.$refs.addOrUpdate.init(id)
})
},
closeDia(){
this.adc = false
this.$refs.pointForm.resetFields();
// this.pointForm.pointType == 0
},
// 删除
deleteHandle(id) {
var ids = id ? [id] : this.dataListSelections.map(item => {
@@ -291,20 +321,26 @@
this.pointForm=e
this.adc = true
},
huaSheng(){
console.log(this.pointForm)
huaSheng(point){
// console.log(this.pointForm.pointAmount, point)
if(this.pointForm.pointAmount > point && this.pointForm.pointType == 1){
return this.$message.error('扣除金额不能大于总金额')
}
this.$refs['pointForm'].validate((valid) => {
this.$http({
url: this.$http.adornUrl(`/book/user/pointChange?pointType=${this.pointForm.pointType}&pointAmount=${this.pointForm.pointAmount}&id=${this.pointForm.id}`),
url: this.$http.adornUrl(`/book/user/pointChange?pointType=${this.pointForm.pointType}&note=${this.pointForm.remark}&pointAmount=${this.pointForm.pointAmount}&id=${this.pointForm.id}`),
method: 'get',
params: this.$http.adornParams()
}).then(({
data
}) => {
if (data && data.code === 0) {
this.$message.success('操作成功')
this.getDataList()
this.adc = false
}
})
})
},
// 个人优惠券