Browse Source

Merge branch 'refs/heads/milestone-20250913-现金管理' into lihui/feature-20250915101448-现金管理

zhangyong/milestone-20250913-现金管理
lihui 2 months ago
parent
commit
45a5548888
  1. 40
      src/views/audit/bean/beanAudit.vue
  2. 3
      src/views/audit/gold/rechargeAudit.vue
  3. 35
      src/views/audit/gold/refundAudit.vue
  4. 60
      src/views/consume/bean/articleVideo.vue
  5. 21
      src/views/consume/bean/dieHardFan.vue
  6. 26
      src/views/consume/bean/liveStream.vue
  7. 30
      src/views/consume/gold/coinConsumeDetail.vue
  8. 47
      src/views/history/newHistory.vue
  9. 47
      src/views/history/oldHistory.vue
  10. 1
      src/views/home.vue
  11. 10
      src/views/permissions/rolePermission.vue
  12. 28
      src/views/permissions/userPermission.vue
  13. 22
      src/views/recharge/bean/beanOnlineRecharge.vue
  14. 4
      src/views/recharge/bean/beanRecharge.vue
  15. 11
      src/views/recharge/bean/beanSystemRecharge.vue
  16. 19
      src/views/recharge/gold/coinRechargeDetail.vue
  17. 95
      src/views/refund/gold/coinRefundDetail.vue
  18. 13
      src/views/usergold/bean/userbean.vue
  19. 3
      src/views/usergold/gold/clientCountBalance.vue
  20. 127
      src/views/usergold/gold/clientCountDetail.vue

40
src/views/audit/bean/beanAudit.vue

@ -21,15 +21,15 @@
<el-text class="text" size="large" v-show="checkTab === 'reject' || checkTab === 'pass'">审核时间</el-text>
<el-date-picker v-model="dateRange" type="datetimerange" range-separator="" start-placeholder="开始时间"
end-placeholder="结束时间" class="selectContent" style="width: 25vw;margin-right:1vw"
@change="handleDatePickerChange"
:default-time="defaultTime"/>
@change="handleDatePickerChange" :default-time="defaultTime" />
<!-- <el-button @click="getToday()" :type="activeTimeRange === 'today' ? 'primary' : ''"></el-button>-->
<!-- <el-button @click="getYesterday()" :type="activeTimeRange === 'yesterday' ? 'primary' : ''"></el-button>-->
<!-- <el-button @click="get7Days()" :type="activeTimeRange === '7days' ? 'primary' : ''">近7天</el-button>-->
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="success" @click="resetSearch">重置</el-button>
<el-button type="primary" @click="handleSearch">查询</el-button>
<el-button type="success" @click="resetSearch">重置</el-button>
</div>
</div>
</el-col>
@ -38,28 +38,16 @@
<el-card class="card2">
<!-- 将el-tabs替换为按钮组 -->
<div class="custom-button-group">
<el-button
v-if="hasbeanWait && hasbeanWaitShow"
:type="checkTab === 'pending' ? 'primary' : 'default'"
class="custom-tab-button"
@click="adminWait"
>
<el-button v-if="hasbeanWait && hasbeanWaitShow" :type="checkTab === 'pending' ? 'primary' : 'default'"
class="custom-tab-button" @click="adminWait">
待审核
</el-button>
<el-button
v-if="hasbeanThrough"
:type="checkTab === 'pass' ? 'primary' : 'default'"
class="custom-tab-button"
@click="adminPass"
>
<el-button v-if="hasbeanThrough" :type="checkTab === 'pass' ? 'primary' : 'default'" class="custom-tab-button"
@click="adminPass">
已通过
</el-button>
<el-button
v-if="hasbeanReject"
:type="checkTab === 'reject' ? 'primary' : 'default'"
class="custom-tab-button"
@click="adminReject"
>
<el-button v-if="hasbeanReject" :type="checkTab === 'reject' ? 'primary' : 'default'" class="custom-tab-button"
@click="adminReject">
已驳回
</el-button>
</div>
@ -115,8 +103,7 @@
</template>
</el-popconfirm>
<el-link :underline="false" class="reject-btn" v-if="hasbeanWaitReject" :disabled="clicked || cancelClicked"
type="primary"
@click="showRejectDialog(scope.row)">
type="primary" @click="showRejectDialog(scope.row)">
驳回
</el-link>
</div>
@ -124,16 +111,14 @@
</el-table-column>
</el-table>
<el-pagination style="margin-top:20px" v-model:current-page="pagination.pageNum"
v-model:page-size="pagination.pageSize" layout="total, sizes, prev, pager, next, jumper"
:total="stats.num"
v-model:page-size="pagination.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="stats.num"
@size-change="handlePageSizeChange" @current-change="handleCurrentChange"></el-pagination>
</el-card>
<el-dialog v-model="rejectVisible" title="驳回理由" width="500px">
<el-form>
<el-form-item label="驳回理由" required>
<el-input v-model="reason" type="textarea" :rows="4" placeholder="请输入驳回理由" maxlength="200"
show-word-limit/>
<el-input v-model="reason" type="textarea" :rows="4" placeholder="请输入驳回理由" maxlength="200" show-word-limit />
</el-form-item>
</el-form>
<template #footer>
@ -645,5 +630,4 @@ onMounted(async () => {
}
}
}
</style>

3
src/views/audit/gold/rechargeAudit.vue

@ -41,8 +41,9 @@
</div>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button @click="resetSearch" type="success">重置</el-button>
<el-button @click="handleSearch" type="primary">查询</el-button>
<el-button @click="resetSearch" type="success">重置</el-button>
</div>
</div>
</el-col>

35
src/views/audit/gold/refundAudit.vue

@ -42,8 +42,8 @@
</div>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button @click="resetSearch" type="success">重置</el-button>
<el-button @click="handleSearch" type="primary">查询</el-button>
<el-button @click="resetSearch" type="success">重置</el-button>
</div>
</div>
</el-col>
@ -51,28 +51,16 @@
<el-card class="card2">
<div class="custom-button-group">
<el-button
v-if="hasrefundWait&&hasrefundWaitShow"
:type="activeName === 'wait' ? 'primary' : 'default'"
@click="handleButtonClick('wait')"
class="custom-tab-button"
>
<el-button v-if="hasrefundWait && hasrefundWaitShow" :type="activeName === 'wait' ? 'primary' : 'default'"
@click="handleButtonClick('wait')" class="custom-tab-button">
待审核
</el-button>
<el-button
v-if="hasrefundThrough"
:type="activeName === 'pass' ? 'primary' : 'default'"
@click="handleButtonClick('pass')"
class="custom-tab-button"
>
<el-button v-if="hasrefundThrough" :type="activeName === 'pass' ? 'primary' : 'default'"
@click="handleButtonClick('pass')" class="custom-tab-button">
已通过
</el-button>
<el-button
v-if="hasrefundReject"
:type="activeName === 'reject' ? 'primary' : 'default'"
@click="handleButtonClick('reject')"
class="custom-tab-button"
>
<el-button v-if="hasrefundReject" :type="activeName === 'reject' ? 'primary' : 'default'"
@click="handleButtonClick('reject')" class="custom-tab-button">
已驳回
</el-button>
</div>
@ -141,8 +129,7 @@
</template>
</el-table-column>
<el-table-column v-if="checkTab === 'pending' && (hasrefundWaitThough || hasrefundWaitReject) && hasrefundWaitShow"
fixed="right"
prop="operation" label="操作" width="150px">
fixed="right" prop="operation" label="操作" width="150px">
<template #default="scope">
<div class="operation">
<el-popconfirm title="确定要通过此条记录吗?" @confirm="handleApprove(scope.row)">
@ -160,8 +147,7 @@
</template>
</el-popconfirm>
<el-link :underline="false" class="reject-btn" v-if="hasrefundWaitReject"
:disabled="clicked || cancelClicked" type="primary"
@click="showRejectDialog(scope.row)">
:disabled="clicked || cancelClicked" type="primary" @click="showRejectDialog(scope.row)">
驳回
</el-link>
</div>
@ -169,8 +155,7 @@
</el-table-column>
</el-table>
<el-pagination class="pagination" v-model:current-page="pagination.pageNum" v-model:page-size="pagination.pageSize"
layout="total, sizes, prev, pager, next, jumper" :total="pagination.total"
@size-change="handlePageSizeChange"
layout="total, sizes, prev, pager, next, jumper" :total="pagination.total" @size-change="handlePageSizeChange"
@current-change="handleCurrentChange"></el-pagination>
</el-card>

60
src/views/consume/bean/articleVideo.vue

@ -465,52 +465,37 @@ const getTagText = (state) => {
<div class="select">
<div class="selectRow">
<el-text class="text" size="large">精网号</el-text>
<el-input class="selectContent" v-model="beanConsumeArticle.jwcode" placeholder="请输入精网号"
clearable/>
<el-input class="selectContent" v-model="beanConsumeArticle.jwcode" placeholder="请输入精网号" clearable />
</div>
<div class="selectRow">
<el-text class="text" size="large">地区</el-text>
<el-select class="selectContent" v-model="beanConsumeArticle.dept"
placeholder="请选择地区"
clearable>
<el-select class="selectContent" v-model="beanConsumeArticle.dept" placeholder="请选择地区" clearable>
<el-option v-for="(item, index) in dept" :key="index" :label="item" :value="item" />
</el-select>
</div>
<div class="selectRow">
<el-text class="text" size="large">类型</el-text>
<el-select class="selectContent"
style="width: 20px"
v-model="beanConsumeArticle.payMode"
placeholder="请选择类型" clearable
@change="handlePayModeChange"
>
<el-select class="selectContent" style="width: 20px" v-model="beanConsumeArticle.payMode" placeholder="请选择类型"
clearable @change="handlePayModeChange">
<el-option label="打赏" value="0" />
<el-option label="付费购买" value="1" />
<el-option label="其他" value="2" />
</el-select>
</div>
<div class="selectRow">
<el-text class="text" size="large">文章/视频ID:</el-text>
<el-input class="selectContent" v-model="beanConsumeArticle.articleId"
placeholder="请输入文章/视频ID" clearable/>
</div>
<div class="selectRow">
<el-text class="text" size="large">文章/视频标题</el-text>
<el-input class="selectContent" v-model="beanConsumeArticle.articleName"
placeholder="请输入文章/视频标题" clearable/>
<el-text class="textB" size="large">文章/视频ID:</el-text>
<el-input class="selectContent" v-model="beanConsumeArticle.articleId" placeholder="请输入文章/视频ID" clearable />
</div>
</div>
</el-col>
<el-col>
<div class="select">
<div class="selectRow" style="width: 30.5vw;">
<div class="selectRow" style="width: 33vw;">
<el-text class="text" size="large">付费时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间"
end-placeholder="结束时间" style="width:25vw"
@change="handleDatePickerChange"
start-placeholder="起始时间" end-placeholder="结束时间" style="width:25vw" @change="handleDatePickerChange"
value-format="YYYY-MM-DD HH:mm:ss" :default-time="defaultTime" />
<div v-if="false">
<el-button @click="getToday()" :type="activeTimeRange === 'today' ? 'primary' : ''"></el-button>
@ -520,14 +505,21 @@ const getTagText = (state) => {
</div>
<div class="selectRow">
<el-text class="text" size="large">作者</el-text>
<el-input class="selectContent" v-model="beanConsumeArticle.author" placeholder="请输入作者"
clearable/>
<el-input class="selectContent" v-model="beanConsumeArticle.author" placeholder="请输入作者" clearable />
</div>
<div class="selectRow">
<el-text class="textB" size="large">文章/视频标题</el-text>
<el-input class="selectContent" v-model="beanConsumeArticle.articleName" placeholder="请输入文章/视频标题" clearable />
</div>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</el-col>
<el-col>
<div class="selectButton">
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" @click="exportExcel()">导出Excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</el-col>
</el-card>
@ -616,8 +608,6 @@ const getTagText = (state) => {
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;
@ -665,18 +655,26 @@ const getTagText = (state) => {
}
/** 搜索的样式 */
.selectButton {
margin-left: 1vw;
margin-top: 1vh;
}
.select {
display: flex;
.selectRow {
width: 17vw;
width: 16vw;
display: flex;
align-items: center;
justify-content: center;
padding: 0 0.5vw;
.text {
width: 5vw;
width: 4vw;
font-size: 15px;
}
.textB {
width: 6vw;
font-size: 15px;
}

21
src/views/consume/bean/dieHardFan.vue

@ -471,20 +471,17 @@ const getTagText = (state) => {
<div class="select">
<div class="selectRow">
<el-text class="text">精网号</el-text>
<el-input class="selectContent" v-model="beanConsumeFan.jwcode" placeholder="请输入精网号"
clearable/>
<el-input class="selectContent" v-model="beanConsumeFan.jwcode" placeholder="请输入精网号" clearable />
</div>
<div class="selectRow">
<el-text class="text">地区</el-text>
<el-select class="selectContent" v-model="beanConsumeFan.dept" placeholder="请选择地区"
clearable>
<el-select class="selectContent" v-model="beanConsumeFan.dept" placeholder="请选择地区" clearable>
<el-option v-for="(item, index) in dept" :key="index" :label="item" :value="item" />
</el-select>
</div>
<div class="selectRow">
<el-text class="text">频道</el-text>
<el-select class="selectContent" v-model="beanConsumeFan.channel" placeholder="请选择频道"
clearable filterable>
<el-select class="selectContent" v-model="beanConsumeFan.channel" placeholder="请选择频道" clearable filterable>
<el-option v-for="(item, index) in channels" :key="index" :label="item" :value="item" />
</el-select>
</div>
@ -495,10 +492,8 @@ const getTagText = (state) => {
<div class="selectRow" style="width: 36vw;">
<el-text class="text" size="large">消费时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间"
end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange"
value-format="YYYY-MM-DD HH:mm:ss" :default-time="defaultTime"/>
start-placeholder="起始时间" end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange" value-format="YYYY-MM-DD HH:mm:ss" :default-time="defaultTime" />
<div v-if="false">
<el-button @click="getToday()" :type="activeTimeRange === 'today' ? 'primary' : ''"></el-button>
<el-button @click="getYesterday()" :type="activeTimeRange === 'yesterday' ? 'primary' : ''"></el-button>
@ -506,10 +501,10 @@ const getTagText = (state) => {
</div>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" @click="exportExcel()">导出Excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
</el-col>
@ -589,8 +584,6 @@ const getTagText = (state) => {
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;
@ -650,7 +643,7 @@ const getTagText = (state) => {
padding: 0 0.5vw;
.text {
width: 5vw;
width: 4vw;
font-size: 15px;
}

26
src/views/consume/bean/liveStream.vue

@ -514,34 +514,31 @@ const getTagText = (state) => {
</div>
<div class="selectRow">
<el-text class="text">礼物名称</el-text>
<el-select class="selectContent" v-model="beanConsumeLive.gift" placeholder="请选择礼物名称"
clearable filterable allow-create default-first-option>
<el-select class="selectContent" v-model="beanConsumeLive.gift" placeholder="请选择礼物名称" clearable filterable
allow-create default-first-option>
<el-option v-for="(item, index) in gifts" :key="index" :label="item" :value="item" />
</el-select>
</div>
<div class="selectRow">
<el-text class="text">频道</el-text>
<el-select class="selectContent" v-model="beanConsumeLive.liveChannel" placeholder="请选择频道"
clearable filterable allow-create default-first-option>
<el-select class="selectContent" v-model="beanConsumeLive.liveChannel" placeholder="请选择频道" clearable
filterable allow-create default-first-option>
<el-option v-for="(item, index) in channels" :key="index" :label="item" :value="item" />
</el-select>
</div>
<div class="selectRow">
<el-text class="text">直播间</el-text>
<el-input class="selectContent" v-model="beanConsumeLive.liveName" placeholder="请输入直播间"
clearable/>
<el-input class="selectContent" v-model="beanConsumeLive.liveName" placeholder="请输入直播间" clearable />
</div>
</div>
</el-col>
<el-col>
<div class="select">
<div class="selectRow" style="width: 31.5vw;">
<div class="selectRow" style="width: 31.4vw;">
<el-text class="text">消费时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间"
end-placeholder="结束时间" style="margin-right:1vw;width:480px"
@change="handleDatePickerChange"
:default-time="defaultTime"/>
start-placeholder="起始时间" end-placeholder="结束时间" style="margin-right:1vw;width:480px"
@change="handleDatePickerChange" :default-time="defaultTime" />
<div v-if="false">
<el-button @click="getToday()" :type="activeTimeRange === 'today' ? 'primary' : ''"> </el-button>
<el-button @click="getYesterday()" :type="activeTimeRange === 'yesterday' ? 'primary' : ''"> </el-button>
@ -549,11 +546,10 @@ const getTagText = (state) => {
</div>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" @click="exportExcel()">导出excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
</el-col>
@ -632,8 +628,6 @@ const getTagText = (state) => {
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;
@ -692,7 +686,7 @@ const getTagText = (state) => {
padding: 0 0.5vw;
.text {
width: 5vw;
width: 4vw;
font-size: 15px;
}

30
src/views/consume/gold/coinConsumeDetail.vue

@ -566,15 +566,12 @@ const getMarket = async function () {
<el-col style="margin-bottom: 1vh">
<div class="select">
<div class="selectRow">
<el-text class="text">精网号</el-text>
<el-input class="selectContent" v-model="consumeUser.jwcode" placeholder="请输入精网号"
clearable/>
<el-text class="text" size="large">精网号</el-text>
<el-input class="selectContent" v-model="consumeUser.jwcode" placeholder="请输入精网号" clearable />
</div>
<div class="selectRow">
<el-text class="text" size="large">商品名称</el-text>
<el-select class="selectContent" v-model="consumeUser.goodsName" placeholder="请选择商品名称"
clearable
filterable>
<el-select class="selectContent" v-model="consumeUser.goodsName" placeholder="请选择商品名称" clearable filterable>
<el-option v-for="(item, index) in goods" :key="index" :label="item.label" :value="item" />
</el-select>
</div>
@ -582,18 +579,14 @@ const getMarket = async function () {
<div class="selectRow">
<el-text class="text" size="large">所属地区</el-text>
<el-cascader class="selectContent" v-model="selectedMarketPath" :options="market" placeholder="请选择所属地区"
clearable
@change="handleMarketChange"/>
clearable @change="handleMarketChange" />
</div>
<div class="selectRow">
<el-text size="large">消耗平台</el-text>
<el-select class="selectContent" v-model="consumeUser.payPlatform" placeholder="请选择消耗平台"
clearable>
<el-select class="selectContent" v-model="consumeUser.payPlatform" placeholder="请选择消耗平台" clearable>
<el-option v-for="item in consumePlatform" :key="item.id" :label="item.label" :value="item.value" />
</el-select>
</div>
<el-checkbox v-model="showEmployeeData" @change="search()">员工数据</el-checkbox>
</div>
@ -604,12 +597,8 @@ const getMarket = async function () {
<div class="selectRow" style="width: 36vw;">
<el-text class="text" size="large">消耗时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间"
end-placeholder="结束时间"
style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange"
:default-time="defaultTime"
:disabled-date="disabledDate"/>
start-placeholder="起始时间" end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange" :default-time="defaultTime" :disabled-date="disabledDate" />
<div v-if="false">
<el-button @click="getToday()" style="margin-left: 1vw"
@ -626,11 +615,10 @@ const getMarket = async function () {
</div>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" @click="exportExcel()">导出excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
</el-col>
@ -819,7 +807,7 @@ const getMarket = async function () {
padding: 0 0.5vw;
.text {
width: 5vw;
width: 4vw;
font-size: 15px;
}

47
src/views/history/newHistory.vue

@ -1,5 +1,5 @@
<template>
<el-card>
<el-card class="card1">
<el-text size="large">姓名</el-text>
<el-input v-model="searchObj.name" placeholder="请输入姓名" style="width: 12vw;margin-right:1vw"
clearable></el-input>
@ -12,11 +12,11 @@
<el-date-picker v-model="dateRange" type="datetimerange" :default-time="defaultTime" range-separator=""
start-placeholder="开始时间" end-placeholder="结束时间" style="width: 25vw;margin-right:1vw" />
<el-button type="success" @click="resetSearch">重置</el-button>
<el-button type="primary" @click="get">查询</el-button>
<el-button type="success" @click="resetSearch">重置</el-button>
</el-card>
<el-card style="margin-top:10px" v-show="tableData.length > 0">
<el-card class="card2" style="margin-top:10px" v-show="tableData.length > 0">
<el-table :data="tableData" style="width: 82vw;height:60vh">
<el-table-column type="index" label="序号" width="100" header-align="center" align="center">
<template #default="scope">
@ -116,4 +116,43 @@ const handleCurrentChange = function (val) {
}
</script>
<style scoped></style>
<style scoped lang="scss">
.pagination {
display: flex;
margin-top: 1vh;
}
//
.card1 {
background: #F3FAFE;
}
//
.card2 {
background: #E7F4FD;
}
//
:deep(.el-table__header-wrapper),
:deep(.el-table__body-wrapper),
:deep(.el-table__cell),
/* 表格 */
:deep(.el-table__body td) {
background-color: #F3FAFE !important;
}
/* 表头 */
:deep(.el-table__header th) {
background-color: #F3FAFE !important;
}
/* 鼠标悬停 */
:deep(.el-table__row:hover > .el-table__cell) {
background-color: #E5EBFE !important;
}
</style>

47
src/views/history/oldHistory.vue

@ -1,5 +1,5 @@
<template>
<el-card>
<el-card class="card1">
<el-text size="large">姓名</el-text>
<el-input v-model="searchObj.name" placeholder="请输入姓名" style="width: 12vw;margin-right:1vw"
clearable></el-input>
@ -12,11 +12,11 @@
<el-date-picker v-model="dateRange" type="datetimerange" :default-time="defaultTime" range-separator=""
start-placeholder="开始时间" end-placeholder="结束时间" style="width: 25vw;margin-right:1vw" />
<el-button type="success" @click="resetSearch">重置</el-button>
<el-button type="primary" @click="getOld">查询</el-button>
<el-button type="success" @click="resetSearch">重置</el-button>
</el-card>
<el-card style="margin-top:10px" v-show="tableData.length > 0">
<el-card class="card2" style="margin-top:10px" v-show="tableData.length > 0">
<el-table :data="tableData" style="width: 82vw;height:60vh">
<el-table-column type="index" label="序号" width="100" header-align="center" align="center">
<template #default="scope">
@ -114,4 +114,43 @@ const handleCurrentChange = function (val) {
}
</script>
<style scoped></style>
<style scoped lang="scss">
.pagination {
display: flex;
margin-top: 1vh;
}
//
.card1 {
background: #F3FAFE;
}
//
.card2 {
background: #E7F4FD;
}
//
:deep(.el-table__header-wrapper),
:deep(.el-table__body-wrapper),
:deep(.el-table__cell),
/* 表格 */
:deep(.el-table__body td) {
background-color: #F3FAFE !important;
}
/* 表头 */
:deep(.el-table__header th) {
background-color: #F3FAFE !important;
}
/* 鼠标悬停 */
:deep(.el-table__row:hover > .el-table__cell) {
background-color: #E5EBFE !important;
}
</style>

1
src/views/home.vue

@ -180,6 +180,7 @@ function logout() {
</span>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item @click="refreshData()">数据刷新</el-dropdown-item>
<el-dropdown-item @click="message()">查看个人信息</el-dropdown-item>
<el-dropdown-item @click="openChangePassword">修改密码</el-dropdown-item>
<el-dropdown-item @click="logout">退出登录</el-dropdown-item>

10
src/views/permissions/rolePermission.vue

@ -591,15 +591,16 @@ onMounted(async function () {
<el-text size="large">角色名称</el-text>
<el-input v-model="role.name" style="width: 240px" placeholder="请输入角色名称" clearable />
<div style="margin-left: auto;">
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="searchRole()" :disabled="!canLook" v-if="canLook">查询</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
</el-card>
<el-card class="card2">
<div class="add-item">
<el-button style="color: #048efb; border: 1px solid #048efb" @click="permissionAddInit()" :disabled="!canAdd" v-if="canAdd">新增角色</el-button>
<el-button style="color: #048efb; border: 1px solid #048efb" @click="permissionAddInit()" :disabled="!canAdd"
v-if="canAdd">新增角色</el-button>
</div>
<div>
<el-table :data="roleData" style="width: 100%" show-overflow-tooltip>
@ -626,7 +627,8 @@ onMounted(async function () {
</el-table-column>
<el-table-column prop="operation" label="操作" width="200px">
<template #default="scope">
<el-button type="warning" text @click="permissionEditRoleInit(scope.row)" :disabled="(scope.row.id === 2)|| (scope.row.id === 1) || !canEdit" v-if="canEdit">
<el-button type="warning" text @click="permissionEditRoleInit(scope.row)"
:disabled="(scope.row.id === 2) || (scope.row.id === 1) || !canEdit" v-if="canEdit">
编辑
</el-button>
</template>
@ -740,8 +742,6 @@ onMounted(async function () {
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;

28
src/views/permissions/userPermission.vue

@ -919,8 +919,7 @@ onMounted(async function () {
</div>
<div class="head-card-element" style="margin-left: 50px">
<el-text class="mx-1" size="large">所属地区</el-text>
<el-cascader v-model="admin.market" :options="marketsTree" placeholder="请选择所属地区" clearable
style="width:180px"
<el-cascader v-model="admin.market" :options="marketsTree" placeholder="请选择所属地区" clearable style="width:180px"
@change="handleMarketChange" />
</div>
@ -932,8 +931,8 @@ onMounted(async function () {
</div>
<div class="head-card-btn">
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()" v-if="canLook">查询</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
</el-card>
@ -1001,8 +1000,7 @@ onMounted(async function () {
</el-table>
<div class="pagination" style="margin-top: 1vh;">
<el-pagination background :page-size="getObj.pageSize" :page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper" :total="total"
@size-change="handlePageSizeChange"
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handlePageSizeChange"
@current-change="handleCurrentChange"></el-pagination>
</div>
</div>
@ -1024,10 +1022,8 @@ onMounted(async function () {
</el-form-item>
<el-form-item prop="market" label="所属地区:" required clearable>
<el-cascader v-model="addAdmin.market" :options="marketsTree" placeholder="请选择所属地区" clearable
collapse-tags
collapse-tags-tooltip style="width:220px" @change="handleMarketChangeAddUser"
:max-collapse-tags="2"
<el-cascader v-model="addAdmin.market" :options="marketsTree" placeholder="请选择所属地区" clearable collapse-tags
collapse-tags-tooltip style="width:220px" @change="handleMarketChangeAddUser" :max-collapse-tags="2"
:props="addUserProps" />
</el-form-item>
<el-form-item prop="permission" label="角色名称:" required>
@ -1083,8 +1079,7 @@ onMounted(async function () {
<el-input v-model="permissionEditObj.postiton" placeholder="请输入职位" style="width: 220px" clearable />
</el-form-item>
<el-form-item prop="roleName" label="角色名称:">
<el-select v-model="permissionEditObj.roleId" placeholder="请选择角色" style="width: 220px"
@change="getUserLists">
<el-select v-model="permissionEditObj.roleId" placeholder="请选择角色" style="width: 220px" @change="getUserLists">
<el-option v-for="item in permissionList" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
@ -1099,8 +1094,7 @@ onMounted(async function () {
</el-form-item>
<el-form-item prop="permissionSelect" label="权限列表:">
<el-tree v-if="data.length > 0" :data="data" :disabled="true" show-checkbox node-key="id"
:props="{ label: 'menuName', children: 'children' }"
:default-checked-keys="permissionEditObj.checkedKeys">
:props="{ label: 'menuName', children: 'children' }" :default-checked-keys="permissionEditObj.checkedKeys">
</el-tree>
<div v-else style="display: flex; align-items: center; gap: 8px;">
<span style="color: #999;">暂无数据</span>
@ -1152,17 +1146,14 @@ onMounted(async function () {
</template>
</el-dialog>
<el-dialog v-model="ackVisible" width="700px"
:close-on-click-modal="false"
:style="{
<el-dialog v-model="ackVisible" width="700px" :close-on-click-modal="false" :style="{
backgroundImage: 'url(/src/assets/SvgIcons/背景.svg',
backgroundSize: 'cover',
backgroundPosition: 'center',
height: '400px'
}"
@close="() => { if (currentStatusRow) currentStatusRow.adminStatus = currentStatusRow.adminStatus === 1 ? 0 : 1 }">
<div class="status-confirm-content"
>
<div class="status-confirm-content">
将要{{ currentStatusRow?.adminStatus === 1 ? '禁用' : '启用' }}该用户
<br>
</div>
@ -1186,7 +1177,6 @@ onMounted(async function () {
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;

22
src/views/recharge/bean/beanOnlineRecharge.vue

@ -354,25 +354,21 @@ onMounted(async function () {
<div class="select">
<div class="selectRow">
<el-text class="text" size="large">精网号</el-text>
<el-input class="selectContent" v-model="selectData.jwcode" placeholder="请输入精网号"
clearable/>
<el-input class="selectContent" v-model="selectData.jwcode" placeholder="请输入精网号" clearable />
</div>
<div class="selectRow">
<el-text class="text" size="large">所属地区</el-text>
<el-select class="selectContent" v-model="selectData.market" placeholder="请选择所属地区" clearable
>
<el-select class="selectContent" v-model="selectData.market" placeholder="请选择所属地区" clearable>
<el-option v-for="item in market" :key="item" :label="item" :value="item" />
</el-select>
</div>
<div class="selectRow">
<el-text class="text" size="large">订单号</el-text>
<el-input class="selectContent" v-model="selectData.orderNo" placeholder="请输入订单"
clearable/>
<el-input class="selectContent" v-model="selectData.orderNo" placeholder="请输入订单" clearable />
</div>
<div class="selectRow">
<el-text class="text" size="large">充值平台</el-text>
<el-select class="selectContent" v-model="selectData.platform" placeholder="请选择充值平台" clearable
>
<el-select class="selectContent" v-model="selectData.platform" placeholder="请选择充值平台" clearable>
<el-option v-for="item in platform" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
@ -383,10 +379,8 @@ onMounted(async function () {
<div class="selectRow" style="width: 36vw;">
<el-text class="text" size="large">充值时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间"
end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange"
:default-time="defaultTime"/>
start-placeholder="起始时间" end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange" :default-time="defaultTime" />
<div v-if="false">
<el-button @click="getToday()" style="margin-left: 10px"
:type="activeTimeRange === 'today' ? 'primary' : ''">
@ -401,10 +395,10 @@ onMounted(async function () {
</div>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" @click="exportExcel()">导出Excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
</el-col>
@ -484,8 +478,6 @@ onMounted(async function () {
</el-dialog>
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;

4
src/views/recharge/bean/beanRecharge.vue

@ -1,5 +1,5 @@
<template>
<div class="father">
<div style="height: 4vh;">
<el-button-group>
<el-button
class="no-active-btn"
@ -101,6 +101,8 @@ onMounted(() => {
<style scoped lang="scss">
/* 自定义按钮组布局 */
.custom-button-group {
display: flex;
margin-bottom: 16px;

11
src/views/recharge/bean/beanSystemRecharge.vue

@ -341,8 +341,7 @@ onMounted(async function () {
<div class="select">
<div class="selectRow">
<el-text class="text" size="large">精网号</el-text>
<el-input class="selectContent" v-model="selectData.jwcode" placeholder="请输入精网号"
clearable/>
<el-input class="selectContent" v-model="selectData.jwcode" placeholder="请输入精网号" clearable />
</div>
<div class="selectRow">
<el-text class="text" size="large">所属地区</el-text>
@ -357,9 +356,8 @@ onMounted(async function () {
<div class="selectRow" style="width: 36vw;">
<el-text class="text" size="large">充值时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间"
end-placeholder="结束时间" style="margin-right:1vw;width:25vw" @change="handleDatePickerChange"
:default-time="defaultTime"/>
start-placeholder="起始时间" end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange" :default-time="defaultTime" />
<div v-if="false">
<el-button @click="getToday()" style="margin-left: 10px"
:type="activeTimeRange === 'today' ? 'primary' : ''">
@ -373,10 +371,10 @@ onMounted(async function () {
</el-button>
</div>
</div>
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" style="width: 80px;" @click="exportExcel()">导出Excel</el-button>
<el-button type="primary" style="width: 95px;" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</el-col>
</el-card>
@ -520,5 +518,4 @@ onMounted(async function () {
}
}
}
</style>

19
src/views/recharge/gold/coinRechargeDetail.vue

@ -589,21 +589,18 @@ const getTagText = (state) => {
<div class="select">
<div class="selectRow">
<el-text class="text" size="large">精网号</el-text>
<el-input class="selectContent" v-model="rechargeUser.jwcode" placeholder="请输入精网号"
clearable/>
<el-input class="selectContent" v-model="rechargeUser.jwcode" placeholder="请输入精网号" clearable />
</div>
<div class="selectRow">
<el-text class="text" size="large">活动名称</el-text>
<el-select class="selectContent" v-model="rechargeUser.activity" placeholder="请选择活动名称"
clearable>
<el-select class="selectContent" v-model="rechargeUser.activity" placeholder="请选择活动名称" clearable>
<el-option v-for="item in activity" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
<div class="selectRow">
<el-text class="text" size="large">所属地区</el-text>
<el-cascader class="selectContent" v-model="selectedMarketPath" :options="market" placeholder="请选择所属地区"
clearable
@change="handleMarketChange"/>
clearable @change="handleMarketChange" />
</div>
<div class="selectRow">
<el-text class="text" size="large">充值平台</el-text>
@ -619,11 +616,8 @@ const getTagText = (state) => {
<div class="selectRow" style="width: 36vw;">
<el-text class="text" size="large">充值时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间"
end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange"
:default-time="defaultTime"
:disabled-date="disabledDate"/>
start-placeholder="起始时间" end-placeholder="结束时间" style="margin-right:1vw;width:25vw"
@change="handleDatePickerChange" :default-time="defaultTime" :disabled-date="disabledDate" />
<div v-if="false">
<el-button @click="getToday()" style="margin-left: 1vw"
:type="activeTimeRange === 'today' ? 'primary' : ''">
@ -639,10 +633,10 @@ const getTagText = (state) => {
</div>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="success" @click="reset()">重置</el-button>
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" @click="exportExcel()">导出Excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
@ -734,7 +728,6 @@ const getTagText = (state) => {
</el-dialog>
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;

95
src/views/refund/gold/coinRefundDetail.vue

@ -499,57 +499,63 @@ const getMarket = async function () {
</script>
<template>
<el-card class="card1" style="margin-bottom: 1vh;">
<div class="condition">
<div style="display: flex;align-items: center;width:18vw">
<el-text>精网号</el-text>
<el-input v-model="refundUser.jwcode" placeholder="请输入精网号" style="width: 10vw;" clearable />
<el-card class="card1" style="margin-bottom: 0.5vh;">
<el-col style="margin-bottom: 1vh;">
<div class="select">
<div class="selectRow">
<el-text class="text" size="large">精网号</el-text>
<el-input class="selectContent" v-model="refundUser.jwcode" placeholder="请输入精网号" style="width: 10vw;"
clearable />
</div>
<div style="display: flex;align-items: center;width:18vw">
<el-text>商品名称</el-text>
<el-select v-model="refundUser.goodsName" placeholder="请选择商品名称" style="width: 10vw;" clearable filterable>
<div class="selectRow">
<el-text class="text" size="large">商品名称</el-text>
<el-select class="selectContent" v-model="refundUser.goodsName" placeholder="请选择商品名称" style="width: 10vw;"
clearable filterable>
<el-option v-for="item in goods" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
<div style="display: flex;align-items: center;width:18vw">
<el-text size="large">所属地区</el-text>
<el-cascader v-model="selectedMarketPath" :options="market" placeholder="请选择所属地区" clearable style="width:10vw"
@change="handleMarketChange" />
<div class="selectRow">
<el-text class="text" size="large">所属地区</el-text>
<el-cascader class="selectContent" v-model="selectedMarketPath" :options="market" placeholder="请选择所属地区"
clearable style="width:10vw" @change="handleMarketChange" />
</div>
<div style="display: flex;align-items: center;width:18vw">
<el-text>退款类型</el-text>
<el-select v-model="refundUser.refundType" placeholder="请选择退款类型" style="width: 10vw" clearable>
<div class="selectRow">
<el-text size="large">退款类型</el-text>
<el-select class="selectContent" v-model="refundUser.refundType" placeholder="请选择退款类型" style="width: 10vw"
clearable>
<el-option v-for="item in refundType" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
<div>
<el-checkbox v-model="showEmployeeData" @change="search()">员工数据</el-checkbox>
</div>
</div>
<div>
<el-col :span="24">
<div>
<el-text>退款时间</el-text>
<el-date-picker v-model="getTime" type="datetimerange" range-separator="" start-placeholder="起始时间"
end-placeholder="结束时间" style="width: 20vw;" @change="handleDatePickerChange" :default-time="defaultTime"
:disabled-date="disabledDate" />
<el-button @click="getToday()" style="margin-left: 10px" :type="activeTimeRange === 'today' ? 'primary' : ''">
</el-col>
<el-col>
<div class="select">
<div class="selectRow" style="width: 35vw">
<el-text class="text" size="large">退款时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间" end-placeholder="结束时间" style="width: 20vw;" @change="handleDatePickerChange"
:default-time="defaultTime" :disabled-date="disabledDate" />
<el-button @click="getToday()" style="margin-left: 0.3vw"
:type="activeTimeRange === 'today' ? 'primary' : ''">
</el-button>
<el-button @click="getYesterday()" style="margin-left: 10px"
<el-button @click="getYesterday()" style="margin-left: 0.3vw"
:type="activeTimeRange === 'yesterday' ? 'primary' : ''">
</el-button>
<el-button @click="get7Days()" style="margin-left: 10px" :type="activeTimeRange === '7days' ? 'primary' : ''">
<el-button @click="get7Days()" style="margin-left: 0.3vw"
:type="activeTimeRange === '7days' ? 'primary' : ''">
近7天
</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="primary" @click="search()" v-if="canLook">查询</el-button>
<el-button type="primary" @click="exportExcel">导出Excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</el-col>
</div>
</el-col>
</el-card>
<el-card class="card2">
@ -560,8 +566,8 @@ const getMarket = async function () {
任务金币{{ format3(Math.abs(taskGolds).toFixed(2)) }}
</div>
<!-- 设置表格容器的高度和滚动样式 -->
<div style="height: 58vh; overflow-y: auto;">
<el-table :data="tableData" style="width: 82vw;" @sort-change="handleSortChange">
<div style="height: 58vh; ">
<el-table :data="tableData" style="height: 57vh" @sort-change="handleSortChange">
<el-table-column type="index" label="序号" width="80px" fixed="left">
<template #default="scope">
<span>{{
@ -574,7 +580,6 @@ const getMarket = async function () {
<el-table-column prop="jwcode" label="精网号" fixed="left" width="110px" />
<el-table-column prop="market" label="所属地区" width="110px" />
<el-table-column prop="orderCode" label="订单号" width="260px" show-overflow-tooltip />
<el-table-column prop="goodsName" label="商品名称" width="110px" show-overflow-tooltip />
<el-table-column prop="refundType" label="退款类型" width="100px" />
<el-table-column prop="refundModel" label="退款方式" width="110px">
@ -638,8 +643,6 @@ const getMarket = async function () {
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;
@ -681,9 +684,25 @@ const getMarket = async function () {
background-color: #E5EBFE !important;
}
.condition{
/** 搜索的样式 */
.select {
display: flex;
width:82vw;
margin-bottom: 0.5vh;
.selectRow {
width: 17vw;
display: flex;
align-items: center;
justify-content: center;
padding: 0 0.5vw;
.text {
width: 4vw;
font-size: 15px;
}
.selectContent {
flex: 1;
}
}
}
</style>

13
src/views/usergold/bean/userbean.vue

@ -8,8 +8,8 @@
</el-select>
<div style="float: right;">
<el-button type="success" @click="reset">重置</el-button>
<el-button type="primary" @click="search">查询</el-button>
<el-button type="success" @click="reset">重置</el-button>
</div>
</el-card>
@ -21,7 +21,7 @@
消费金豆总数{{ format3(stats.consumeSum) }}金豆&nbsp;&nbsp;&nbsp;&nbsp;
</div>
<el-table :data="tableData" height="65vh" @sort-change="handleSortChange" :row-style="{ height: '60px' }">
<el-table-column type="index" label="序号" width="100px" fixed="left">
<el-table-column type="index" label="序号" width="80px" fixed="left">
<template #default="scope">
<span>{{
scope.$index + 1 + (pagination.pageNum - 1) * pagination.pageSize
@ -29,7 +29,7 @@
</template>
</el-table-column>
<el-table-column label="姓名" style="width: 120px;" prop="name" show-overflow-tooltip />
<el-table-column label="精网号" style="width: 120px;" prop="jwcode" />
<el-table-column label="精网号" style="width: 110px;" prop="jwcode" />
<el-table-column label="所属地区" style="width: 120px;" prop="dept" />
<el-table-column label="现有金豆" style="width: 120px;" prop="beanNum" sortable="custom" />
<el-table-column label="免费金豆" style="width: 120px;" prop="freeBean" sortable="custom" />
@ -37,10 +37,13 @@
<el-table-column label="历史消费" style="width: 120px;" prop="totalCostBean" sortable="custom" />
</el-table>
<el-pagination class="pagination" v-model:current-page="pagination.pageNum"
<div class="pagination">
<el-pagination background v-model:current-page="pagination.pageNum"
v-model:page-size="pagination.pageSize" layout="total, sizes, prev, pager, next, jumper"
:total="pagination.total" @size-change="handlePageSizeChange"
@current-change="handleCurrentChange"></el-pagination>
</div>
</el-card>
</template>
@ -189,7 +192,6 @@ onMounted(() => {
</script>
<style scoped lang="scss">
.pagination {
display: flex;
margin-top: 1vh;
@ -235,5 +237,4 @@ onMounted(() => {
:deep(.el-table__row:hover > .el-table__cell) {
background-color: #E5EBFE !important;
}
</style>

3
src/views/usergold/gold/clientCountBalance.vue

@ -397,9 +397,9 @@ const format3 = (num) => {
<el-checkbox v-model="showEmployeeData" @change="search()">员工数据</el-checkbox>
</div>
<el-button type="primary" @click="search()">查询</el-button>
<el-button @click="reset" type="success">重置</el-button>
<el-button type="primary" @click="exportExcel()">导出Excel</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button @click="reset" type="success">重置</el-button>
</div>
<!-- </div> -->
</el-card>
@ -544,7 +544,6 @@ const format3 = (num) => {
</template>
<style scoped lang="scss">
//
.card1 {
background: #F3FAFE;

127
src/views/usergold/gold/clientCountDetail.vue

@ -460,71 +460,64 @@ const format3 = (num) => {
</script>
<template>
<div>
<el-card class="card1" style="margin-bottom: 1vh;">
<el-row style="margin-bottom: 10px">
<el-col :span="5">
<div class="head-card-element">
<el-text class="mx-1" size="large">精网号</el-text>
<el-input v-model="goldDetail.jwcode" style="width: 150px" placeholder="请输入精网号" clearable/>
<el-card class="card1" style="margin-bottom: 0.5vh;">
<el-col style="margin-bottom: 1vh">
<div class="select">
<div class="selectRow">
<el-text class="text" size="large">精网号</el-text>
<el-input class="selectContent" v-model="goldDetail.jwcode" placeholder="请输入精网号" clearable />
</div>
</el-col>
<el-col :span="5">
<div class="head-card-element">
<el-text class="mx-1" size="large">平台信息</el-text>
<el-select v-model="goldDetail.payPlatform" placeholder="请选择平台信息" style="width: 160px" clearable
:loading="isLoadingPlatform">
<div class="selectRow">
<el-text class="text" size="large">平台信息</el-text>
<el-select class="selectContent" v-model="goldDetail.payPlatform" placeholder="请选择平台信息" style="width: 10vw;"
clearable :loading="isLoadingPlatform">
<el-option v-for="item in platform" :key="item.id" :label="item.label" :value="item.value" />
</el-select>
</div>
</el-col>
<el-col :span="5">
<div class="head-card-element">
<el-text class="mx-1" size="large">数量更新类型</el-text>
<el-select v-model="goldDetail.type" placeholder="请选择更新类型" style="width: 160px" clearable>
<div class="selectRow">
<el-text class="textB" size="large">数量更新类型</el-text>
<el-select v-model="goldDetail.type" placeholder="请选择更新类型" clearable>
<el-option v-for="item in type" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
</el-col>
<el-col :span="5">
<div class="head-card-element">
<el-text class="mx-1" size="large">所属地区</el-text>
<el-cascader
v-model="selectedMarketPath"
:options="markets"
placeholder="请选择所属地区"
clearable
style="width:180px"
@change="handleMarketChange"
/>
<div class="selectRow">
<el-text class="text" size="large">所属地区</el-text>
<el-cascader class="selectContent" v-model="selectedMarketPath" :options="markets" placeholder="请选择所属地区"
style="width:10vw" clearable @change="handleMarketChange" />
</div>
</el-col>
<el-col :span="3">
<div class="head-card-element">
<div>
<el-checkbox v-model="showEmployeeData" @change="search()">员工数据</el-checkbox>
</div>
</div>
</el-col>
</el-row>
<div class="head-card-element">
<el-text class="mx-1" size="large">更新时间</el-text>
<el-date-picker v-model="getTime" type="datetimerange" range-separator="" start-placeholder="起始时间"
end-placeholder="结束时间" style="width: 400px" @change="handleDatePickerChange"
:default-time="defaultTime"/>
<el-button @click="getToday()" style="margin-left: 10px"
:type="activeTimeRange === 'today' ? 'primary' : ''">
<el-col>
<div class="select">
<div class="selectRow" style="width: 35vw">
<el-text class="text" size="large">更新时间</el-text>
<el-date-picker class="selectContent" v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间" end-placeholder="结束时间" style="width: 20vw" @change="handleDatePickerChange"
:default-time="defaultTime" :disabled-date="disabledDate" />
<el-button @click="getToday()" style="margin-left: 0.3vw"
:type="activeTimeRange === 'today' ? 'primary' : ''">
</el-button>
<el-button @click="getYesterday()" style="margin-left: 10px"
<el-button @click="getYesterday()" style="margin-left: 0.3vw"
:type="activeTimeRange === 'yesterday' ? 'primary' : ''">
</el-button>
<el-button @click="get7Days()" style="margin-left: 10px"
:type="activeTimeRange === '7days' ? 'primary' : ''"> 近7天
<el-button @click="get7Days()" style="margin-left: 0.3vw"
:type="activeTimeRange === '7days' ? 'primary' : ''">
近7天
</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
<div class="selectRow" style="justify-content: flex-start;">
<el-button type="primary" @click="search()">查询</el-button>
<el-button type="primary" @click="exportExcel">导出Excel表格</el-button>
<el-button type="primary" @click="openExportList">查看导出列表</el-button>
<el-button type="success" @click="reset()">重置</el-button>
</div>
</div>
</el-col>
</el-card>
<el-card class="card2">
<div class="goldStatistics">
@ -534,9 +527,9 @@ const format3 = (num) => {
任务金币{{ format3(totalTaskGold || 0) }}&nbsp;&nbsp;
<a style="color:#b1b1b1; font-size: small;">当前合计仅显示筛选范围内的金币净变化充值总额 - 消费总额 + 退款总额)</a>
</div>
<div style="height: 55vh; overflow-y: auto">
<el-table :data="tableData" style="width: 82vw" @sort-change="handleSortChange" height="55vh">
<el-table-column type="index" label="序号" width="100px" fixed="left">
<div style="height: 58vh; ">
<el-table :data="tableData" style="height: 57vh" @sort-change="handleSortChange" >
<el-table-column type="index" label="序号" width="80px" fixed="left">
<template #default="scope">
<span>{{
scope.$index + 1 + (getObj.pageNum - 1) * getObj.pageSize
@ -589,10 +582,9 @@ const format3 = (num) => {
</div>
<!-- 此处分页 -->
<div class="pagination" style="margin-top: 20px;display: flex;">
<div class="pagination" >
<el-pagination background :page-size="getObj.pageSize" :page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper" :total="total"
@size-change="handlePageSizeChange"
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handlePageSizeChange"
@current-change="handleCurrentChange"></el-pagination>
</div>
</el-card>
@ -633,6 +625,10 @@ const format3 = (num) => {
<style scoped lang="scss">
.pagination {
display: flex;
margin-top: 1vh;
}
//
.card1 {
@ -679,4 +675,31 @@ const format3 = (num) => {
display: flex;
justify-content: flex-end;
}
/** 搜索的样式 */
.select {
display: flex;
.selectRow {
width: 17vw;
display: flex;
align-items: center;
justify-content: center;
padding: 0 0.5vw;
.text {
width: 4vw;
font-size: 15px;
}
.textB {
width: 9vw;
font-size: 15px;
}
.selectContent {
flex: 1;
}
}
}
</style>
Loading…
Cancel
Save