This commit is contained in:
王创世 2024-05-16 18:15:30 +08:00
parent aa2248b80e
commit 21b949a86a
10 changed files with 226 additions and 65 deletions

View File

@ -56,9 +56,9 @@
<t-button v-if="row.activity_type==1" @click="openInfo(row)">报名详情</t-button>
<t-button v-if="row.activity_type==2" theme="default" @click="openQuestionnairefind(row)">新增题目</t-button>
<t-button v-if="row.activity_type==2" theme="primary" @click="openQuestionnaireUpdate(row)">编辑题目</t-button>
<t-button v-if="row.activity_type==2" theme="success">查看调查</t-button>
<t-button v-if="row.activity_type==3" @click="openInfo(row)">捐赠详情</t-button>
<t-button v-if="row.activity_type==4" @click="openInfo(row)">付费详情</t-button>
<t-button v-if="row.activity_type==2" theme="success" @click="openQuestionnaireMode(row)">问卷统计</t-button>
<t-button v-if="row.activity_type==3" @click="openJuanMode(row)">捐赠详情</t-button>
<t-button v-if="row.activity_type==4" @click="openJuanMode(row)">付费详情</t-button>
<t-button theme="warning" @click="edit(row)">编辑</t-button>
<t-popconfirm content="确认删除吗" @confirm="del(row)">
<t-button theme="danger">删除</t-button>
@ -75,7 +75,7 @@
></t-pagination>
</div>
</div>
<t-dialog header="报名详情" :confirmBtn="null" :visible="infoMode" :onClose="onCloseMy" width="45%" top="50px">
<t-dialog header="报名详情" :confirmBtn="null" :visible="infoMode" :onClose="onCloseMy" width="55%" top="50px">
<t-table
rowKey="index"
:data="info_list"
@ -100,6 +100,67 @@
></t-pagination>
</div>
</t-dialog>
<t-dialog header="问卷统计" :confirmBtn="null" :visible="QuestionnaireMode" :onClose="onCloseMy" width="65%" top="50px">
<div style="height: 600px;overflow-y: scroll;">
<div style="font-size: 18px;font-weight: 600;color: #e60000;margin: 15px 0px">总参与人数1人</div>
<table class="layui-table" v-for="(item,index) in questionnaireDaAnList" style="margin: 10px 0px">
<thead>
<tr>
<th class="my-fw-bold my-fs-14">
<span>{{ index + 1 }}</span>
<span v-if="item.type==1">单选题</span>
<span v-if="item.type==2">多选题</span>
<span v-if="item.type==3">问答题</span>
</th>
<th class="my-fw-bold my-fs-14">{{item.title}}</th>
<th class="my-fw-bold my-fs-14" v-if="item.type!=3">票数</th>
<th class="my-fw-bold my-fs-14" v-if="item.type==3">答题数{{item.quantity}}</th>
</tr>
</thead>
<tbody>
<tr v-if="item.type!=3" v-for="(d,i) in item.option">
<td style="text-align: center">{{d.name}}</td>
<td>{{d.val}}</td>
<td>{{d.num}}</td>
</tr>
<tr v-if="item.type==3" v-for="(d,i) in item.list">
<td style="text-align: center">-</td>
<td style="text-align: center" :colspan="2">{{d.option}}</td>
</tr>
</tbody>
</table>
</div>
</t-dialog>
<t-dialog header="捐赠详情" :confirmBtn="null" :visible="JuanMode" :onClose="onCloseMy" width="65%" top="50px">
<div style="height: 600px;overflow-y: scroll;">
<table class="layui-table" style="margin: 10px 0px">
<thead>
<tr>
<th class="my-fw-bold my-fs-14">
<span>{{getType==3?'捐赠人':'付费姓名'}}</span>
</th>
<th class="my-fw-bold my-fs-14">金额</th>
<th class="my-fw-bold my-fs-14">{{getType==3?'捐赠时间':'付费时间'}}</th>
</tr>
</thead>
<tbody>
<tr v-for="(item,index) in JuanModeList" >
<td style="text-align: center">{{item.nikename}}</td>
<td style="text-align: center">{{item.money}}</td>
<td style="text-align: center">{{item.createtime}}</td>
</tr>
</tbody>
</table>
<div style="margin-top: 30px">
<t-pagination
:total="JuanTotal"
:page-size="15"
@current-change="onJuanChange"
:showPageSize="false"
></t-pagination>
</div>
</div>
</t-dialog>
<t-dialog :header="isEdit?'编辑活动':'新增活动'" :visible="addMode" :onClose="onCloseMy" @confirm="onSubmit"
width="45%" top="20px">
<t-form>
@ -339,6 +400,15 @@ export default {
questionnaire: [],//
questionnaireId:0,
questionnaireUpdateMode:false,
QuestionnaireMode:false,
QuestionnaireModeId:0,
questionnaireDaAnList:[],
JuanModeList:[],
JuanMode:false,
JuanPage:1,
JuanTotal:0,
JuanId:0,
getType:3,
}
},
beforeDestroy() {
@ -350,6 +420,57 @@ export default {
this.getList();
},
methods: {
openJuanMode(d){
this.JuanModeList=[];
this.JuanMode=true;
this.JuanTotal=0;
this.JuanPage=1;
this.JuanId=d.id;
this.getType=d.activity_type;
this.openJuanModeList();
},
openJuanModeList(){
this.$request
.post("/money_log/find", {
activity_id: this.JuanId,
page:this.JuanPage,
size:15
})
.then((res) => {
console.log(res);
if(res.code==1){
this.JuanModeList=res.data.ret;
this.JuanTotal=res.data.count;
}
})
.catch((e) => {
console.log(e);
});
},
onJuanChange(d){
this.JuanPage=d;
this.openJuanModeList();
},
openQuestionnaireMode(d){
this.QuestionnaireMode=true;
this.QuestionnaireModeId=d.id;
this.openQuestionnaireModeDo();
},
openQuestionnaireModeDo(d){
this.$request
.post("/questionnaire/questionnaireStatistics", {
activity_id: this.QuestionnaireModeId
})
.then((res) => {
console.log(res);
if(res.code==1){
this.questionnaireDaAnList=res.data;
}
})
.catch((e) => {
console.log(e);
});
},
//
delUpdateOptionTop(index,item){
console.log(item);
@ -486,18 +607,16 @@ export default {
},
onCurrentChangeInfo(d) {
this.info_pagination.page = d;
this.openInfo();
this.openInfoDo();
},
onCurrentChange(d) {
this.pagination.page = d;
this.getList();
},
openInfo(d) {
this.infoMode = true;
this.infoId = d.id;
openInfoDo(){
this.$request
.post("/application/find", {
application_id: this.infoId,
.post("/application/getList", {
activity_id: this.infoId,
page: this.info_pagination.page,
size: this.info_pagination.size
})
@ -513,6 +632,14 @@ export default {
console.log(e);
});
},
openInfo(d) {
this.info_list=[];
this.info_pagination.page=1;
this.info_pagination.total=0;
this.infoMode = true;
this.infoId = d.id;
this.openInfoDo();
},
formatResponse(res) {
console.log(res);
this.addForm.activity_image = res.data.url;
@ -651,6 +778,8 @@ export default {
this.infoMode = false;
this.questionnaireMode = false;
this.questionnaireUpdateMode=false;
this.QuestionnaireMode=false;
this.JuanMode=false;
},
}
}
@ -659,5 +788,23 @@ export default {
::-webkit-scrollbar {
display: none;
}
.layui-table-mend, .layui-table-tool, .layui-table-patch, .layui-table-click, .layui-table-hover, .layui-table-header, .table-total-wrapper, .layui-table-total td, .layui-table thead tr, .layui-table tbody tr:hover td, .layui-table.layui-table-even tr:nth-child(2n) td{background-color: #fafafa!important;}
.layui-table td, .layui-table th {
position: relative;
padding: 10px;
height: 50px;
line-height: 20px;
font-size: 14px;
border-width: 1px;
border-style: solid;
border-color: #eee;
}
.layui-table {
width: 100%;
background-color: #fff;
color: #666;
table-layout: fixed;
border-collapse: collapse;
}
</style>
<style src="@wangeditor/editor/dist/css/style.css"></style>

View File

@ -21,7 +21,7 @@
</t-card>
</t-col>
<t-col :xs="12" :xl="3">
<t-card title="销售渠道" :subtitle="currentMonth" class="dashboard-chart-card" :bordered="false">
<t-card title="观看渠道" :subtitle="currentMonth" class="dashboard-chart-card" :bordered="false">
<div
id="countContainer"
ref="countContainer"

View File

@ -4,8 +4,8 @@
<t-col :xs="12" :xl="9">
<t-card
:bordered="false"
title="出入库概览"
subtitle="()"
title="内容总概览"
subtitle="()"
:class="{ 'dashboard-overview-card': true, 'overview-panel': true }"
>
<template #actions>
@ -27,23 +27,23 @@
</t-col>
<t-col :xs="12" :xl="3">
<t-card :bordered="false" :class="{ 'dashboard-overview-card': true, 'export-panel': true }">
<template #actions>
<t-button>导出数据</t-button>
</template>
<!-- <template #actions>-->
<!-- <t-button>导出数据</t-button>-->
<!-- </template>-->
<t-row>
<t-col :xs="6" :xl="12">
<t-card :bordered="false" subtitle="本月出库总计(件" class="inner-card">
<t-card :bordered="false" subtitle="本月观看总数(人" class="inner-card">
<div class="inner-card__content">
<div class="inner-card__content-title">1726</div>
<div class="inner-card__content-footer">
自从上以来
自从上以来
<trend class="trend-tag" type="down" :is-reverse-color="false" describe="20.3%" />
</div>
</div>
</t-card>
</t-col>
<t-col :xs="6" :xl="12">
<t-card :bordered="false" subtitle="本月入库总计(件)" class="inner-card">
<t-card :bordered="false" subtitle="本周观看总计(件)" class="inner-card">
<div class="inner-card__content">
<div class="inner-card__content-title">226</div>
<div class="inner-card__content-footer">

View File

@ -1,7 +1,7 @@
<template>
<t-row :gutter="[16, 16]">
<t-col :xs="12" :xl="6">
<t-card title="销售订单排名" class="dashboard-rank-card" :bordered="false">
<t-card title="新闻观看板块排名" class="dashboard-rank-card" :bordered="false">
<template #actions>
<t-radio-group default-value="dateVal">
<t-radio-button value="dateVal">本周</t-radio-button>
@ -24,7 +24,7 @@
</t-card>
</t-col>
<t-col :xs="12" :xl="6">
<t-card title="采购订单排名" class="dashboard-rank-card" :bordered="false">
<t-card title="协会活动观看板块排名" class="dashboard-rank-card" :bordered="false">
<template #actions>
<t-radio-group default-value="dateVal">
<t-radio-button value="dateVal">本周</t-radio-button>

View File

@ -638,7 +638,7 @@ export function getPieChartDataSet({
},
series: [
{
name: '销售渠道',
name: '观看渠道',
type: 'pie',
radius: ['48%', '60%'],
avoidLabelOverlap: true,

View File

@ -44,7 +44,7 @@
<div class="check-container remember-pwd">
<t-checkbox>记住账号</t-checkbox>
<div style="color: var(--td-brand-color)">
<span @click="openUrl(0)">会员注册</span>
<!-- <span @click="openUrl(0)">会员注册</span>-->
<!-- <span style="margin-left: 20px" @click="openUrl(1)">会员登录</span>-->
</div>
</div>
@ -69,7 +69,7 @@ export default {
data() {
return {
formData: {
zhanghu: '',
zhanghu: 'admin',
password: 'qinze731344.',
},
FORM_RULES: {
@ -85,10 +85,10 @@ export default {
},
mounted() {
console.log(this.$route.query.id);
if(typeof (this.$route.query.id)!='undefined'){
this.id=this.$route.query.id;
this.getInfo();
}
// if(typeof (this.$route.query.id)!='undefined'){
// this.id=this.$route.query.id;
// this.getInfo();
// }
},
methods: {
openUrl(type){

View File

@ -40,6 +40,11 @@
</t-col>
</t-row>
</t-form>
<t-tabs v-model="tabIndex" @change="tabIndexChange">
<t-tab-panel :value="1" label="正式会员" :destroyOnHide="false"></t-tab-panel>
<t-tab-panel :value="0" label="待审核" :destroyOnHide="false"></t-tab-panel>
<t-tab-panel :value="2" label="已拒绝" :destroyOnHide="false"></t-tab-panel>
</t-tabs>
<t-table
rowKey="index"
:data="list"
@ -52,7 +57,7 @@
cellEmptyContent="-" c
>
<template #photo_image="{ row }">
<img :src="$store.state.user.apiUrl+row.photo_image" style="width: 50px;height: 50px">
<img v-if="row.photo_image" :src="$store.state.user.apiUrl+row.photo_image" style="width: 50px;height: 50px">
</template>
<template #gender="{ row }">
{{row.gender==1?"男":"女"}}
@ -92,6 +97,7 @@ export default {
return {
association:{},
list:[],
tabIndex:1,
columns:[
{ colKey: 'member_id', title: '会员ID'},
{ colKey: 'photo_image', title: '证件照'},
@ -122,6 +128,13 @@ export default {
this.getList();
},
methods: {
tabIndexChange(d){
console.log(d);
this.page=1;
this.total=0;
this.list=[];
this.getList();
},
del(row){
this.$request
.post("/member/del",{member_id:row.member_id})
@ -148,6 +161,7 @@ export default {
getList() {
this.formData.page=this.page;
this.formData.size=this.size;
this.formData.if_xianshi=this.tabIndex;
this.$request
.post("/member",this.formData)
.then( (res) => {

View File

@ -7,7 +7,7 @@
<t-image-viewer v-model="visible" :draggable="true" mode="modeless" :images="[$store.state.user.apiUrl+info.photo_image]">
<template #trigger="{ open }">
<div class="tdesign-demo-image-viewer__ui-image" @click="open">
<img alt="test" :src="$store.state.user.apiUrl+info.photo_image" class="tdesign-demo-image-viewer__ui-image--img" />
<img alt="" :src="$store.state.user.apiUrl+info.photo_image" class="tdesign-demo-image-viewer__ui-image--img" />
</div>
</template>
</t-image-viewer>
@ -39,7 +39,7 @@
<t-image-viewer v-model="visibleZm" :draggable="true" mode="modeless" :images="[$store.state.user.apiUrl+info.cardz_image]">
<template #trigger="{ open }">
<div class="tdesign-demo-image-viewer__ui-image" @click="open">
<img alt="test" :src="$store.state.user.apiUrl+info.cardz_image" class="tdesign-demo-image-viewer__ui-image--img" />
<img alt="" :src="$store.state.user.apiUrl+info.cardz_image" class="tdesign-demo-image-viewer__ui-image--img" />
</div>
</template>
</t-image-viewer>
@ -50,7 +50,7 @@
<t-image-viewer v-model="visibleFm" :draggable="true" mode="modeless" :images="[$store.state.user.apiUrl+info.cardf_image]">
<template #trigger="{ open }">
<div class="tdesign-demo-image-viewer__ui-image" @click="open">
<img alt="test" :src="$store.state.user.apiUrl+info.cardf_image" class="tdesign-demo-image-viewer__ui-image--img" />
<img alt="" :src="$store.state.user.apiUrl+info.cardf_image" class="tdesign-demo-image-viewer__ui-image--img" />
</div>
</template>
</t-image-viewer>
@ -74,7 +74,7 @@
<t-image-viewer v-model="visibleZz" :draggable="true" mode="modeless" :images="[$store.state.user.apiUrl+info.business_license_image]">
<template #trigger="{ open }">
<div class="tdesign-demo-image-viewer__ui-image" @click="open">
<img alt="test" :src="$store.state.user.apiUrl+info.business_license_image" class="tdesign-demo-image-viewer__ui-image--img" />
<img alt="" :src="$store.state.user.apiUrl+info.business_license_image" class="tdesign-demo-image-viewer__ui-image--img" />
</div>
</template>
</t-image-viewer>
@ -115,7 +115,7 @@
<t-image-viewer v-model="visiblePf" :draggable="true" mode="modeless" :images="[$store.state.user.apiUrl+info.documents_file]">
<template #trigger="{ open }">
<div class="tdesign-demo-image-viewer__ui-image" @click="open">
<img alt="test" :src="$store.state.user.apiUrl+info.documents_file" class="tdesign-demo-image-viewer__ui-image--img" />
<img alt="" :src="$store.state.user.apiUrl+info.documents_file" class="tdesign-demo-image-viewer__ui-image--img" />
</div>
</template>
</t-image-viewer>

View File

@ -51,9 +51,9 @@ if(store.state.user.association!=''){
} else {
console.log(association);
if(typeof (association)!='undefined'){
next(`/login?id=`+association.id);
next(`/login`);
}else{
next(`/login?id=1`);
next(`/login`);
}
}

View File

@ -17,14 +17,14 @@ interface TendItem {
export const PANE_LIST: Array<DashboardPanel> = [
{
title: '总收入',
number: '¥ 28,425.00',
title: '总浏览量',
number: '28,425.00',
upTrend: '20.5%',
leftType: 'echarts-line',
},
{
title: '总退款',
number: '¥ 768.00',
title: '本周浏览量',
number: '768.00',
downTrend: '20.5%',
leftType: 'echarts-bar',
},
@ -35,7 +35,7 @@ export const PANE_LIST: Array<DashboardPanel> = [
leftType: 'icon-usergroup',
},
{
title: '订单(个)',
title: '上传文章(个)',
number: 527,
downTrend: '20.5%',
leftType: 'icon-file-paste',
@ -45,78 +45,78 @@ export const PANE_LIST: Array<DashboardPanel> = [
export const SALE_TEND_LIST: Array<TendItem> = [
{
growUp: 1,
productName: '国家电网有限公司',
productName: '协会新闻',
count: 7059,
date: '2021-09-01',
date: '2024-05-12',
},
{
growUp: -1,
productName: '深圳燃气集团股份有限公司',
productName: '商学院',
count: 6437,
date: '2021-09-01',
date: '2024-05-10',
},
{
growUp: 4,
productName: '国家烟草专卖局',
productName: '协会动态',
count: 4221,
date: '2021-09-01',
date: '2024-05-03',
},
{
growUp: 3,
productName: '中国电信集团有限公司',
productName: '党群工作',
count: 3317,
date: '2021-09-01',
date: '2024-04-28',
},
{
growUp: -3,
productName: '中国移动通信集团有限公司',
productName: '通知公告',
count: 3015,
date: '2021-09-01',
date: '2024-04-23',
},
{
growUp: -3,
productName: '新余市办公用户采购项目',
productName: '联系我们',
count: 2015,
date: '2021-09-12',
date: '2024-03-12',
},
];
export const BUY_TEND_LIST: Array<TendItem> = [
{
growUp: 1,
productName: '腾讯科技(深圳)有限公司',
productName: '线下活动',
count: 3015,
date: '2021-09-01',
date: '2024-05-12',
},
{
growUp: -1,
productName: '大润发有限公司',
productName: '调查问卷',
count: 2015,
date: '2021-09-01',
date: '2024-05-10',
},
{
growUp: 6,
productName: '四川海底捞股份有限公司',
productName: '公益捐赠',
count: 1815,
date: '2021-09-11',
date: '2024-05-03',
},
{
growUp: -3,
productName: '索尼(中国)有限公司',
productName: '学习培训',
count: 1015,
date: '2021-09-21',
date: '2024-04-28',
},
{
growUp: -4,
productName: '松下电器(中国)有限公司',
productName: '协会活动',
count: 445,
date: '2021-09-19',
date: '2024-04-23',
},
{
growUp: -3,
productName: '新余市办公用户采购项目',
productName: '其它内容',
count: 2015,
date: '2021-09-12',
date: '2023-03-12',
},
];