1.活动列表增加小程序链接,点击可复制
This commit is contained in:
		
							parent
							
								
									8c0c4516a8
								
							
						
					
					
						commit
						4e6662d69b
					
				| @ -2,24 +2,14 @@ | ||||
|   <t-card title="活动列表" :bordered="false"> | ||||
|     <div class="form-step-container"> | ||||
|       <!--      <t-button @click="add">新增</t-button>--> | ||||
| <!--      <t-tabs v-model="tabIndex" @change="tabIndexChange">--> | ||||
| <!--        <t-tab-panel value="1" label="协会活动" :destroyOnHide="false"></t-tab-panel>--> | ||||
| <!--        <t-tab-panel value="2" label="调查问卷" :destroyOnHide="false"></t-tab-panel>--> | ||||
| <!--        <t-tab-panel value="3" label="公益捐赠" :destroyOnHide="false"></t-tab-panel>--> | ||||
| <!--        <t-tab-panel value="4" label="学习培训" :destroyOnHide="false"></t-tab-panel>--> | ||||
| <!--      </t-tabs>--> | ||||
|       <t-table | ||||
|         rowKey="index" | ||||
|         :data="list" | ||||
|         :columns="columns" | ||||
|         :stripe="false" | ||||
|         :bordered="false" | ||||
|         :hover="true" | ||||
|         size="large" | ||||
|         table-layout="auto" | ||||
|         cellEmptyContent="-" | ||||
|         :pagination="pagination" | ||||
|       > | ||||
|       <!--      <t-tabs v-model="tabIndex" @change="tabIndexChange">--> | ||||
|       <!--        <t-tab-panel value="1" label="协会活动" :destroyOnHide="false"></t-tab-panel>--> | ||||
|       <!--        <t-tab-panel value="2" label="调查问卷" :destroyOnHide="false"></t-tab-panel>--> | ||||
|       <!--        <t-tab-panel value="3" label="公益捐赠" :destroyOnHide="false"></t-tab-panel>--> | ||||
|       <!--        <t-tab-panel value="4" label="学习培训" :destroyOnHide="false"></t-tab-panel>--> | ||||
|       <!--      </t-tabs>--> | ||||
|       <t-table rowKey="index" :data="list" :columns="columns" :stripe="false" :bordered="false" :hover="true" | ||||
|         size="large" table-layout="auto" cellEmptyContent="-" :pagination="pagination"> | ||||
|         <!--        <template #activity_image="{ row }">--> | ||||
|         <!--          <div style="text-align: center;">--> | ||||
|         <!--            <t-image--> | ||||
| @ -29,71 +19,71 @@ | ||||
|         <!--            />--> | ||||
|         <!--          </div>--> | ||||
|         <!--        </template>--> | ||||
|         <template #wechatUrl="{ row }"> | ||||
|           <div style="cursor: pointer;color: blue;" @click="copyUrl(row)">pages/packageB/event/event_info?id={{ row.id }}</div> | ||||
|         </template> | ||||
|         <template #start="{ row }"> | ||||
|           <div>{{ row.activity_start_time }}</div> | ||||
|           <div>-</div> | ||||
|           <div>{{ row.activity_end_time }}</div> | ||||
|         </template> | ||||
|         <template #sign="{ row }"> | ||||
|           <div v-if="row.activity_type==1||row.activity_type==4"> | ||||
|           <div v-if="row.activity_type == 1 || row.activity_type == 4"> | ||||
|             <div>{{ row.signup_start_time }}</div> | ||||
|             <div>-</div> | ||||
|             <div>{{ row.signup_end_time }}</div> | ||||
|           </div> | ||||
|           <div v-if="row.activity_type!=1&&row.activity_type!=4"> | ||||
|           <div v-if="row.activity_type != 1 && row.activity_type != 4"> | ||||
|             - | ||||
|           </div> | ||||
|         </template> | ||||
|         <template #top="{ row }"> | ||||
|           <t-button theme="success" size="small" v-if="row.weigh==0" @click="topNews(row)">点击置顶</t-button> | ||||
|           <t-button theme="warning" size="small" v-if="row.weigh>0" @click="topNewsDel(row)">取消置顶</t-button> | ||||
|           <t-button theme="success" size="small" v-if="row.weigh == 0" @click="topNews(row)">点击置顶</t-button> | ||||
|           <t-button theme="warning" size="small" v-if="row.weigh > 0" @click="topNewsDel(row)">取消置顶</t-button> | ||||
|         </template> | ||||
|         <template #money="{ row }"> | ||||
|           <div v-if="row.activity_type==4"> | ||||
|             <div v-if="row.money>0"> | ||||
|           <div v-if="row.activity_type == 4"> | ||||
|             <div v-if="row.money > 0"> | ||||
|               <span>¥</span> | ||||
|               <span>{{ row.money }}</span> | ||||
|             </div> | ||||
|             <div v-if="row.money==0"> | ||||
|             <div v-if="row.money == 0"> | ||||
| 
 | ||||
|               <span>免费</span> | ||||
|             </div> | ||||
|           </div> | ||||
|           <div v-if="row.activity_type!=4"> | ||||
|           <div v-if="row.activity_type != 4"> | ||||
|             - | ||||
|           </div> | ||||
|         </template> | ||||
|         <template #qr_code="{ row }"> | ||||
|           <div style="text-align: center;"> | ||||
|             <vue-qr v-if="row.if_sign==2" | ||||
|                     :text="$store.state.user.apiUrl+'?type=1&id='+row.id+'&association_id=1'" | ||||
|                     width="100" | ||||
|                     height="100" | ||||
|             ></vue-qr> | ||||
|             <vue-qr v-if="row.if_sign == 2" :text="$store.state.user.apiUrl + '?type=1&id=' + row.id + '&association_id=1'" | ||||
|               width="100" height="100"></vue-qr> | ||||
|           </div> | ||||
|           <div v-if="row.activity_type!=4 && row.activity_type!=1 && row.if_sign==1"> | ||||
|           <div v-if="row.activity_type != 4 && row.activity_type != 1 && row.if_sign == 1"> | ||||
|             - | ||||
|           </div> | ||||
|         </template> | ||||
|         <template #activity_type="{ row }"> | ||||
|           <div style="text-align: center;"> | ||||
|             <span v-if="row.activity_type==1">协会活动</span> | ||||
|             <span v-if="row.activity_type==2">调查问卷</span> | ||||
|             <span v-if="row.activity_type==3">公益捐赠</span> | ||||
|             <span v-if="row.activity_type==4">学习培训</span> | ||||
|             <span v-if="row.activity_type == 1">协会活动</span> | ||||
|             <span v-if="row.activity_type == 2">调查问卷</span> | ||||
|             <span v-if="row.activity_type == 3">公益捐赠</span> | ||||
|             <span v-if="row.activity_type == 4">学习培训</span> | ||||
|           </div> | ||||
|         </template> | ||||
|         <template #select="{ row }"> | ||||
|           <t-space size="24px"> | ||||
|             <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 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 v-if="row.activity_type == 2" theme="primary" @click="openQuestionnaireUpdate(row)">编辑题目 | ||||
|             </t-button> | ||||
|             <t-button v-if="row.activity_type==2" theme="success" @click="openQuestionnaireMode(row)">问卷统计 | ||||
|             <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 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> | ||||
| @ -102,19 +92,15 @@ | ||||
|         </template> | ||||
|       </t-table> | ||||
|       <div style="margin-top: 30px"> | ||||
|         <t-pagination | ||||
|           :total="pagination.total" | ||||
|           :page-size="pagination.size" | ||||
|           @current-change="onCurrentChange" | ||||
|           :showPageSize="false" | ||||
|         ></t-pagination> | ||||
|         <t-pagination :total="pagination.total" :page-size="pagination.size" @current-change="onCurrentChange" | ||||
|           :showPageSize="false"></t-pagination> | ||||
|       </div> | ||||
|     </div> | ||||
|     <t-dialog header="报名详情" :confirmBtn="null" :visible="infoMode" :onClose="onCloseMy" width="65%" top="50px"> | ||||
|       <div style="height: 650px;overflow-y: scroll;"> | ||||
|         <div style="text-align: right"> | ||||
|           <t-button @click="exportList(0)"> | ||||
|             <CloudDownloadIcon slot="icon"/> | ||||
|             <CloudDownloadIcon slot="icon" /> | ||||
|             导出 | ||||
|           </t-button> | ||||
|           <!-- <t-dropdown :options="options"> | ||||
| @ -124,91 +110,77 @@ | ||||
|           </t-button> | ||||
|         </t-dropdown> --> | ||||
|         </div> | ||||
|         <div v-if="infoIfAuditing==2"> | ||||
|         <div v-if="infoIfAuditing == 2"> | ||||
|           <t-tabs v-model="InfotabIndex" @change="InfotabIndexChange"> | ||||
|             <t-tab-panel value="2" label="已通过" :destroyOnHide="false"></t-tab-panel> | ||||
|             <t-tab-panel value="1" label="待审核" :destroyOnHide="false"></t-tab-panel> | ||||
|             <t-tab-panel value="3" label="已拒绝" :destroyOnHide="false"></t-tab-panel> | ||||
|           </t-tabs> | ||||
|         </div> | ||||
|         <t-table | ||||
|           rowKey="index" | ||||
|           :data="info_list" | ||||
|           :columns="info_columns" | ||||
|           :stripe="false" | ||||
|           :bordered="false" | ||||
|           :hover="true" | ||||
|           size="large" | ||||
|           table-layout="auto" | ||||
|           cellEmptyContent="-" | ||||
|         > | ||||
|         <t-table rowKey="index" :data="info_list" :columns="info_columns" :stripe="false" :bordered="false" | ||||
|           :hover="true" size="large" table-layout="auto" cellEmptyContent="-"> | ||||
|           <template #nikename="{ row }"> | ||||
|             <a :href="$store.state.user.apiUrl+'/dist/#/user/user_info?id='+row.member_id" | ||||
|                target="_blank">{{ row.nikename }}</a> | ||||
|             <a :href="$store.state.user.apiUrl + '/dist/#/user/user_info?id=' + row.member_id" target="_blank">{{ | ||||
|               row.nikename }}</a> | ||||
|           </template> | ||||
|           <template #sign="{ row }"> | ||||
|             <t-tag v-if="row.sign==1" theme="success">已签到</t-tag> | ||||
|             <t-tag v-if="row.sign==2" theme="warning">未签到</t-tag> | ||||
|             <t-tag v-if="row.sign == 1" theme="success">已签到</t-tag> | ||||
|             <t-tag v-if="row.sign == 2" theme="warning">未签到</t-tag> | ||||
|           </template> | ||||
|           <template #photo_image="{ row }"> | ||||
|             <img v-if="row.photo_image!=''&&row.photo_image!=null" :src="$store.state.user.apiUrl+row.photo_image" | ||||
|             <img v-if="row.photo_image != '' && row.photo_image != null" :src="$store.state.user.apiUrl + row.photo_image" | ||||
|               style="width: 50px;height: 50px"> | ||||
|             <div v-if="row.photo_image==''||row.photo_image==null">无</div> | ||||
|             <div v-if="row.photo_image == '' || row.photo_image == null">无</div> | ||||
|           </template> | ||||
|           <template #select="{ row }"> | ||||
|             <div v-if="infoIfAuditing==2&&InfotabIndex==1"> | ||||
|               <t-popconfirm content="确认要拒绝吗?" @confirm="updateType(row,3)"> | ||||
|             <div v-if="infoIfAuditing == 2 && InfotabIndex == 1"> | ||||
|               <t-popconfirm content="确认要拒绝吗?" @confirm="updateType(row, 3)"> | ||||
|                 <t-button theme="danger" variant="base">拒绝</t-button> | ||||
|               </t-popconfirm> | ||||
|               <t-popconfirm content="确认要通过吗?" @confirm="updateType(row,2)"> | ||||
|               <t-popconfirm content="确认要通过吗?" @confirm="updateType(row, 2)"> | ||||
|                 <t-button theme="success" style="margin-left: 15px">通过</t-button> | ||||
|               </t-popconfirm> | ||||
|             </div> | ||||
|           </template> | ||||
|         </t-table> | ||||
|         <div style="margin-top: 30px"> | ||||
|           <t-pagination | ||||
|             :total="info_pagination.total" | ||||
|             :page-size="info_pagination.size" | ||||
|             @current-change="onCurrentChangeInfo" | ||||
|             :showPageSize="false" | ||||
|           ></t-pagination> | ||||
|           <t-pagination :total="info_pagination.total" :page-size="info_pagination.size" | ||||
|             @current-change="onCurrentChangeInfo" :showPageSize="false"></t-pagination> | ||||
|         </div> | ||||
|       </div> | ||||
|     </t-dialog> | ||||
|     <t-dialog header="问卷统计" :confirmBtn="null" :visible="QuestionnaireMode" :onClose="onCloseMy" width="65%" | ||||
|               top="50px"> | ||||
|     <t-dialog header="问卷统计" :confirmBtn="null" :visible="QuestionnaireMode" :onClose="onCloseMy" width="65%" top="50px"> | ||||
|       <div style="height: 600px;overflow-y: scroll;"> | ||||
|         <div style="display: flex; justify-content: space-between;"> | ||||
|           <div style="font-size: 18px;font-weight: 600;color: #e60000;margin: 15px 0px"></div> | ||||
|           <div> | ||||
|             <t-button @click="exportList(1)"> | ||||
|               <CloudDownloadIcon slot="icon"/> | ||||
|               <CloudDownloadIcon slot="icon" /> | ||||
|               导出 | ||||
|             </t-button> | ||||
|           </div> | ||||
|         </div> | ||||
|         <table class="layui-table" v-for="(item,index) in questionnaireDaAnList" style="margin: 10px 0px"> | ||||
|         <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> | ||||
|                 <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> | ||||
|               <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"> | ||||
|             <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"> | ||||
|             <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> | ||||
| @ -216,8 +188,8 @@ | ||||
|         </table> | ||||
|       </div> | ||||
|     </t-dialog> | ||||
|     <t-dialog :header="getType==3?'捐赠详情':'付费详情'" :confirmBtn="null" :visible="JuanMode" :onClose="onCloseMy" | ||||
|               width="65%" top="50px"> | ||||
|     <t-dialog :header="getType == 3 ? '捐赠详情' : '付费详情'" :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> | ||||
| @ -230,7 +202,7 @@ | ||||
|             </tr> | ||||
|           </thead> | ||||
|           <tbody> | ||||
|           <tr v-for="(item,index) in JuanModeList"> | ||||
|             <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> | ||||
| @ -238,12 +210,8 @@ | ||||
|           </tbody> | ||||
|         </table> | ||||
|         <div style="margin-top: 30px"> | ||||
|           <t-pagination | ||||
|             :total="JuanTotal" | ||||
|             :page-size="15" | ||||
|             @current-change="onJuanChange" | ||||
|             :showPageSize="false" | ||||
|           ></t-pagination> | ||||
|           <t-pagination :total="JuanTotal" :page-size="15" @current-change="onJuanChange" | ||||
|             :showPageSize="false"></t-pagination> | ||||
|         </div> | ||||
|       </div> | ||||
|     </t-dialog> | ||||
| @ -253,7 +221,7 @@ | ||||
|       width="45%" top="20px"> | ||||
|       <div style="height: 600px;overflow-y: scroll;"> | ||||
|         <t-form> | ||||
|           <t-card v-for="(item,index) in questionnaireData" style="margin-bottom: 10px"> | ||||
|           <t-card v-for="(item, index) in questionnaireData" style="margin-bottom: 10px"> | ||||
|             <template> | ||||
|               <t-form-item label="类型"> | ||||
|                 <t-radio-group v-model="item.type"> | ||||
| @ -268,13 +236,13 @@ | ||||
|               <t-form-item label="题目"> | ||||
|                 <t-input v-model="item.title" placeholder="请输入题目"></t-input> | ||||
|               </t-form-item> | ||||
|               <t-form-item :label="op.name" v-for="(op,opi) in item.option" v-if="item.type!=3"> | ||||
|               <t-form-item :label="op.name" v-for="(op, opi) in item.option" v-if="item.type != 3"> | ||||
|                 <t-input v-model="op.val" placeholder="请输入选项答案"></t-input> | ||||
|                 <t-button @click="delOptionItem(index,opi)" theme="danger" size="small" variant="base" | ||||
|                 <t-button @click="delOptionItem(index, opi)" theme="danger" size="small" variant="base" | ||||
|                   style="margin-left: 20px">X | ||||
|                 </t-button> | ||||
|               </t-form-item> | ||||
|               <div style="text-align: center" v-if="item.type!=3"> | ||||
|               <div style="text-align: center" v-if="item.type != 3"> | ||||
|                 <t-button @click="addOption(index)" theme="primary" variant="base">添加一个选项</t-button> | ||||
|               </div> | ||||
|               <div style="position:absolute;right: 20px;top: 20px"> | ||||
| @ -292,11 +260,10 @@ | ||||
|       </div> | ||||
|     </t-dialog> | ||||
|     <t-dialog header="编辑题目" :visible="questionnaireUpdateMode" :confirmBtn="null" :onClose="onCloseMy" | ||||
|               @confirm="onCloseMy" | ||||
|               width="45%" top="20px"> | ||||
|       @confirm="onCloseMy" width="45%" top="20px"> | ||||
|       <div style="height: 600px;overflow-y: scroll;"> | ||||
|         <t-form> | ||||
|           <t-card v-for="(item,index) in questionnaire" style="margin-bottom: 10px"> | ||||
|           <t-card v-for="(item, index) in questionnaire" style="margin-bottom: 10px"> | ||||
|             <template> | ||||
|               <t-form-item label="类型"> | ||||
|                 <t-radio-group v-model="item.type"> | ||||
| @ -311,17 +278,17 @@ | ||||
|               <t-form-item label="题目"> | ||||
|                 <t-input v-model="item.title" placeholder="请输入题目"></t-input> | ||||
|               </t-form-item> | ||||
|               <t-form-item v-for="(op,opi) in item.option" :label="op.name" v-if="item.type!=3"> | ||||
|               <t-form-item v-for="(op, opi) in item.option" :label="op.name" v-if="item.type != 3"> | ||||
|                 <t-input v-model="op.val" placeholder="请输入选项答案"></t-input> | ||||
|                 <t-button @click="delUpdateOptionItem(index,opi)" theme="danger" size="small" variant="base" | ||||
|                 <t-button @click="delUpdateOptionItem(index, opi)" theme="danger" size="small" variant="base" | ||||
|                   style="margin-left: 20px">X | ||||
|                 </t-button> | ||||
|               </t-form-item> | ||||
|               <div style="text-align: center" v-if="item.type!=3"> | ||||
|               <div style="text-align: center" v-if="item.type != 3"> | ||||
|                 <t-button @click="addOption(index)" theme="primary" variant="base">添加一个选项</t-button> | ||||
|               </div> | ||||
|               <div style="position:absolute;right: 20px;top: 20px"> | ||||
|                 <t-popconfirm content="确认删除吗" @confirm="delUpdateOptionTop(index,item)"> | ||||
|                 <t-popconfirm content="确认删除吗" @confirm="delUpdateOptionTop(index, item)"> | ||||
|                   <t-button theme="danger" size="small" variant="base" style="margin-left: 20px">删除题目</t-button> | ||||
|                 </t-popconfirm> | ||||
|               </div> | ||||
| @ -340,18 +307,18 @@ | ||||
| <script lang="ts"> | ||||
| 
 | ||||
| import store from "@/store"; | ||||
| import {Editor, Toolbar} from '@wangeditor/editor-for-vue'; | ||||
| import {CloudDownloadIcon} from "tdesign-icons-vue"; | ||||
| import { Editor, Toolbar } from '@wangeditor/editor-for-vue'; | ||||
| import { CloudDownloadIcon } from "tdesign-icons-vue"; | ||||
| import VueQr from 'vue-qr' | ||||
| import axios from "axios"; | ||||
| import {toInteger} from "lodash"; | ||||
| import { toInteger } from "lodash"; | ||||
| 
 | ||||
| export default { | ||||
|   components: {Editor, Toolbar, CloudDownloadIcon, VueQr}, | ||||
|   components: { Editor, Toolbar, CloudDownloadIcon, VueQr }, | ||||
|   data() { | ||||
|     return { | ||||
|       questionnaireData: [{ | ||||
|         type: 1, title: '', wight: 0, option: [{name: 'A', val: ""}, {name: 'B', val: ""}] | ||||
|         type: 1, title: '', wight: 0, option: [{ name: 'A', val: "" }, { name: 'B', val: "" }] | ||||
|       }], | ||||
|       InfotabIndex: '1', | ||||
|       tabIndex: '1', | ||||
| @ -386,13 +353,13 @@ export default { | ||||
|       infoId: 0, | ||||
|       info_list: [], | ||||
|       info_columns: [ | ||||
|         {colKey: 'photo_image', title: '形象照', align: 'center'}, | ||||
|         {colKey: 'nikename', title: '姓名', align: 'center'}, | ||||
|         {colKey: 'phone', title: '手机号', align: 'center'}, | ||||
|         {colKey: 'position_name', title: '职位', align: 'center'}, | ||||
|         {colKey: 'application_time', title: '报名时间', align: 'center'}, | ||||
|         {colKey: 'sign', title: '是否签到', align: 'center'}, | ||||
|         {colKey: 'select', title: '操作', width: 200, align: 'center'}, | ||||
|         { colKey: 'photo_image', title: '形象照', align: 'center' }, | ||||
|         { colKey: 'nikename', title: '姓名', align: 'center' }, | ||||
|         { colKey: 'phone', title: '手机号', align: 'center' }, | ||||
|         { colKey: 'position_name', title: '职位', align: 'center' }, | ||||
|         { colKey: 'application_time', title: '报名时间', align: 'center' }, | ||||
|         { colKey: 'sign', title: '是否签到', align: 'center' }, | ||||
|         { colKey: 'select', title: '操作', width: 200, align: 'center' }, | ||||
|       ], | ||||
|       info_pagination: { | ||||
|         page: 1, | ||||
| @ -469,7 +436,7 @@ export default { | ||||
|           value: 1, | ||||
|           onClick: () => { | ||||
|             const token = store.state.user.token; | ||||
|             window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token+"&type=4"); | ||||
|             window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token + "&type=4"); | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
| @ -477,7 +444,7 @@ export default { | ||||
|           value: 2, | ||||
|           onClick: () => { | ||||
|             const token = store.state.user.token; | ||||
|             window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token+"&type=2"); | ||||
|             window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token + "&type=2"); | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
| @ -485,7 +452,7 @@ export default { | ||||
|           value: 3, | ||||
|           onClick: () => { | ||||
|             const token = store.state.user.token; | ||||
|             window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token+"&type=3"); | ||||
|             window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token + "&type=3"); | ||||
|           }, | ||||
|         }, | ||||
|       ], | ||||
| @ -503,56 +470,56 @@ export default { | ||||
|       this.association = JSON.parse(store.state.user.association); | ||||
|     } | ||||
|     this.editorConfig.MENU_CONF.uploadImage.meta.association_id = this.association.association_id; | ||||
|     var tab=this.$route.name.slice(-1); | ||||
|     var tab = this.$route.name.slice(-1); | ||||
|     this.tabIndex = toInteger(tab); | ||||
|     if(tab==1){ | ||||
|       this.columns=[ | ||||
|         {colKey: 'id', title: '活动ID', align: 'center', width: 150,}, | ||||
|         {colKey: 'activity_name', title: '活动标题', align: 'center', width: 150,}, | ||||
|         {colKey: 'activity_type', title: '活动类别', width: 140, align: 'center'}, | ||||
|         {colKey: 'qr_code', title: '签到二维码', width: 150, align: 'center'}, | ||||
|         {colKey: 'start', title: '活动时间', align: 'center'}, | ||||
|         {colKey: 'sign', title: '报名时间', align: 'center'}, | ||||
|     if (tab == 1) { | ||||
|       this.columns = [ | ||||
|         { colKey: 'wechatUrl', title: '小程序链接', align: 'center', width: 150 }, | ||||
|         { colKey: 'activity_name', title: '活动标题', align: 'center', width: 150, }, | ||||
|         { colKey: 'activity_type', title: '活动类别', width: 140, align: 'center' }, | ||||
|         { colKey: 'qr_code', title: '签到二维码', width: 150, align: 'center' }, | ||||
|         { colKey: 'start', title: '活动时间', align: 'center' }, | ||||
|         { colKey: 'sign', title: '报名时间', align: 'center' }, | ||||
|         // {colKey: 'money', title: '付费金额', align: 'center'}, | ||||
|         {colKey: 'activity_location', title: '活动地点', align: 'center'}, | ||||
|         {colKey: 'application_count_type', title: '待审核', align: 'center'}, | ||||
|         {colKey: 'top', title: '置顶', align: 'center'}, | ||||
|         {colKey: 'select', title: '操作', width: 200, align: 'center'}, | ||||
|         { colKey: 'activity_location', title: '活动地点', align: 'center' }, | ||||
|         { colKey: 'application_count_type', title: '待审核', align: 'center' }, | ||||
|         { colKey: 'top', title: '置顶', align: 'center' }, | ||||
|         { colKey: 'select', title: '操作', width: 200, align: 'center' }, | ||||
|       ]; | ||||
|     }else if(tab==2){ | ||||
|       this.columns=[ | ||||
|         {colKey: 'id', title: '活动ID', align: 'center', width: 150,}, | ||||
|         {colKey: 'activity_name', title: '活动标题', align: 'center', width: 150,}, | ||||
|         {colKey: 'activity_type', title: '活动类别', width: 200, align: 'center'}, | ||||
|         {colKey: 'qr_code', title: '签到二维码', width: 200, align: 'center'}, | ||||
|         {colKey: 'start', title: '活动时间', align: 'center'}, | ||||
|         {colKey: 'activity_location', title: '活动地点', align: 'center'}, | ||||
|         {colKey: 'top', title: '置顶', align: 'center'}, | ||||
|         {colKey: 'select', title: '操作', width: 200, align: 'center'}, | ||||
|     } else if (tab == 2) { | ||||
|       this.columns = [ | ||||
|       { colKey: 'wechatUrl', title: '小程序链接', align: 'center', width: 150 }, | ||||
|         { colKey: 'activity_name', title: '活动标题', align: 'center', width: 150, }, | ||||
|         { colKey: 'activity_type', title: '活动类别', width: 200, align: 'center' }, | ||||
|         { colKey: 'qr_code', title: '签到二维码', width: 200, align: 'center' }, | ||||
|         { colKey: 'start', title: '活动时间', align: 'center' }, | ||||
|         { colKey: 'activity_location', title: '活动地点', align: 'center' }, | ||||
|         { colKey: 'top', title: '置顶', align: 'center' }, | ||||
|         { colKey: 'select', title: '操作', width: 200, align: 'center' }, | ||||
|       ]; | ||||
|     }else if(tab==3){ | ||||
|       this.columns=[ | ||||
|         {colKey: 'id', title: '活动ID', align: 'center', width: 150,}, | ||||
|         {colKey: 'activity_name', title: '活动标题', align: 'center', width: 250,}, | ||||
|         {colKey: 'activity_type', title: '活动类别', width: 200, align: 'center'}, | ||||
|     } else if (tab == 3) { | ||||
|       this.columns = [ | ||||
|       { colKey: 'wechatUrl', title: '小程序链接', align: 'center', width: 150 }, | ||||
|         { colKey: 'activity_name', title: '活动标题', align: 'center', width: 250, }, | ||||
|         { colKey: 'activity_type', title: '活动类别', width: 200, align: 'center' }, | ||||
|         // {colKey: 'qr_code', title: '签到二维码', width: 200, align: 'center'}, | ||||
|         {colKey: 'start', title: '活动时间', align: 'center'}, | ||||
|         {colKey: 'activity_location', title: '活动地点', align: 'center'}, | ||||
|         {colKey: 'top', title: '置顶', align: 'center'}, | ||||
|         {colKey: 'select', title: '操作', width: 200, align: 'center'}, | ||||
|         { colKey: 'start', title: '活动时间', align: 'center' }, | ||||
|         { colKey: 'activity_location', title: '活动地点', align: 'center' }, | ||||
|         { colKey: 'top', title: '置顶', align: 'center' }, | ||||
|         { colKey: 'select', title: '操作', width: 200, align: 'center' }, | ||||
|       ]; | ||||
|     }else{ | ||||
|       this.columns=[ | ||||
|         {colKey: 'id', title: '活动ID', align: 'center', width: 150,}, | ||||
|         {colKey: 'activity_name', title: '活动标题', align: 'center', width: 150,}, | ||||
|         {colKey: 'activity_type', title: '活动类别', width: 200, align: 'center'}, | ||||
|         {colKey: 'qr_code', title: '签到二维码', width: 200, align: 'center'}, | ||||
|         {colKey: 'start', title: '活动时间', align: 'center'}, | ||||
|         {colKey: 'sign', title: '报名时间', align: 'center'}, | ||||
|         {colKey: 'money', title: '付费金额', align: 'center'}, | ||||
|         {colKey: 'activity_location', title: '活动地点', align: 'center'}, | ||||
|         {colKey: 'top', title: '置顶', align: 'center'}, | ||||
|         {colKey: 'select', title: '操作', width: 200, align: 'center'}, | ||||
|     } else { | ||||
|       this.columns = [ | ||||
|       { colKey: 'wechatUrl', title: '小程序链接', align: 'center', width: 150 }, | ||||
|         { colKey: 'activity_name', title: '活动标题', align: 'center', width: 150, }, | ||||
|         { colKey: 'activity_type', title: '活动类别', width: 200, align: 'center' }, | ||||
|         { colKey: 'qr_code', title: '签到二维码', width: 200, align: 'center' }, | ||||
|         { colKey: 'start', title: '活动时间', align: 'center' }, | ||||
|         { colKey: 'sign', title: '报名时间', align: 'center' }, | ||||
|         { colKey: 'money', title: '付费金额', align: 'center' }, | ||||
|         { colKey: 'activity_location', title: '活动地点', align: 'center' }, | ||||
|         { colKey: 'top', title: '置顶', align: 'center' }, | ||||
|         { colKey: 'select', title: '操作', width: 200, align: 'center' }, | ||||
|       ]; | ||||
|     } | ||||
|     this.getList(); | ||||
| @ -560,7 +527,7 @@ export default { | ||||
|   methods: { | ||||
|     updateType(d, type) { | ||||
|       this.$request | ||||
|         .post('/application/updateType', {id: d.id, type: type,activity_id: this.infoId,member_id:d.member_id}) | ||||
|         .post('/application/updateType', { id: d.id, type: type, activity_id: this.infoId, member_id: d.member_id }) | ||||
|         .then((res) => { | ||||
|           if (res.code == 1) { | ||||
|             this.$message.success('审核成功'); | ||||
| @ -587,7 +554,7 @@ export default { | ||||
|     topNewsDel(row) { | ||||
|       console.log(row); | ||||
|       this.$request | ||||
|         .post('/common/listcancel', {id: row.id, type: 'activity'}) | ||||
|         .post('/common/listcancel', { id: row.id, type: 'activity' }) | ||||
|         .then((res) => { | ||||
|           if (res.code == 1) { | ||||
|             this.$message.success('取消置顶成功'); | ||||
| @ -604,7 +571,7 @@ export default { | ||||
|     topNews(row) { | ||||
|       console.log(row); | ||||
|       this.$request | ||||
|         .post('/common/listtopping', {id: row.id, type: 'activity'}) | ||||
|         .post('/common/listtopping', { id: row.id, type: 'activity' }) | ||||
|         .then((res) => { | ||||
|           if (res.code == 1) { | ||||
|             this.$message.success('置顶成功'); | ||||
| @ -680,7 +647,7 @@ export default { | ||||
|           } else { | ||||
|             this.$message.error(res.msg); | ||||
|           } | ||||
|           this.openQuestionnaireUpdate({id: item.activity_id}); | ||||
|           this.openQuestionnaireUpdate({ id: item.activity_id }); | ||||
|         }) | ||||
|         .catch((e) => { | ||||
|           console.log(e); | ||||
| @ -736,7 +703,7 @@ export default { | ||||
|           } else { | ||||
|             this.$message.error(res.msg); | ||||
|           } | ||||
|           this.openQuestionnaireUpdate({id: d.activity_id}); | ||||
|           this.openQuestionnaireUpdate({ id: d.activity_id }); | ||||
|         }) | ||||
|         .catch((e) => { | ||||
|           console.log(e); | ||||
| @ -744,7 +711,7 @@ export default { | ||||
|     }, | ||||
|     addQuestionnaire() { | ||||
|       var newItem = { | ||||
|         type: 1, title: '', wight: 0, option: [{name: 'A', val: ""}, {name: 'B', val: ""}] | ||||
|         type: 1, title: '', wight: 0, option: [{ name: 'A', val: "" }, { name: 'B', val: "" }] | ||||
|       }; | ||||
|       this.questionnaireData.push(newItem); | ||||
|     }, | ||||
| @ -813,7 +780,7 @@ export default { | ||||
|         .then((res) => { | ||||
|           console.log(res); | ||||
|           if (res.code == 1) { | ||||
|             this.info_list = res.data.ret==null?[]:res.data.ret; | ||||
|             this.info_list = res.data.ret == null ? [] : res.data.ret; | ||||
|             this.info_pagination.total = res.data.count; | ||||
|           } | ||||
| 
 | ||||
| @ -831,22 +798,22 @@ export default { | ||||
|       this.infoId = d.id; | ||||
|       this.infoIfAuditing = d.if_auditing; | ||||
|       //this.InfotabIndex='2'; | ||||
|       if(d.if_auditing==1){ | ||||
|         this.InfotabIndex='2'; | ||||
|       }else{ | ||||
|         this.InfotabIndex='1'; | ||||
|       if (d.if_auditing == 1) { | ||||
|         this.InfotabIndex = '2'; | ||||
|       } else { | ||||
|         this.InfotabIndex = '1'; | ||||
|       } | ||||
|       if (d.if_auditing != 2) { | ||||
|         this.info_columns = this.info_columns.filter(column => column.colKey !== 'sign'); | ||||
|       } else { | ||||
|         this.info_columns = [ | ||||
|           {colKey: 'photo_image', title: '形象照', align: 'center'}, | ||||
|           {colKey: 'nikename', title: '姓名', align: 'center'}, | ||||
|           {colKey: 'phone', title: '手机号', align: 'center'}, | ||||
|           {colKey: 'position_name', title: '职位', align: 'center'}, | ||||
|           {colKey: 'application_time', title: '报名时间', align: 'center'}, | ||||
|           {colKey: 'sign', title: '是否签到', align: 'center'}, | ||||
|           {colKey: 'select', title: '操作', width: 200, align: 'center'}, | ||||
|           { colKey: 'photo_image', title: '形象照', align: 'center' }, | ||||
|           { colKey: 'nikename', title: '姓名', align: 'center' }, | ||||
|           { colKey: 'phone', title: '手机号', align: 'center' }, | ||||
|           { colKey: 'position_name', title: '职位', align: 'center' }, | ||||
|           { colKey: 'application_time', title: '报名时间', align: 'center' }, | ||||
|           { colKey: 'sign', title: '是否签到', align: 'center' }, | ||||
|           { colKey: 'select', title: '操作', width: 200, align: 'center' }, | ||||
|         ]; | ||||
|       } | ||||
|       this.openInfoDo(); | ||||
| @ -854,12 +821,12 @@ export default { | ||||
|     formatResponseVideo(res) { | ||||
|       console.log(res); | ||||
|       this.activity_video = res.data.url; | ||||
|       return {url: res.data.fullurl}; | ||||
|       return { url: res.data.fullurl }; | ||||
|     }, | ||||
|     formatResponse(res) { | ||||
|       console.log(res); | ||||
|       this.addForm.activity_image = res.data.url; | ||||
|       return {url: res.data.fullurl}; | ||||
|       return { url: res.data.fullurl }; | ||||
|     }, | ||||
|     onCreated(editor) { | ||||
|       this.editor = Object.seal(editor); | ||||
| @ -867,7 +834,7 @@ export default { | ||||
|     del(d) { | ||||
|       console.log(d); | ||||
|       this.$request | ||||
|         .post('/activity/del', {id: d.id}) | ||||
|         .post('/activity/del', { id: d.id }) | ||||
|         .then((res) => { | ||||
|           if (res.code == 1) { | ||||
|             this.$message.success(res.msg); | ||||
| @ -924,7 +891,7 @@ export default { | ||||
|     }, | ||||
|     getList() { | ||||
|       this.$request | ||||
|         .post("/activity", {page: this.pagination.page, size: this.pagination.size, activity_type: this.tabIndex}) | ||||
|         .post("/activity", { page: this.pagination.page, size: this.pagination.size, activity_type: this.tabIndex }) | ||||
|         .then((res) => { | ||||
|           console.log(res); | ||||
|           if (res.code == 1) { | ||||
| @ -1029,6 +996,22 @@ export default { | ||||
|       } | ||||
| 
 | ||||
|     }, | ||||
|     copyUrl(row){ | ||||
|       //复制 | ||||
|       const text = `pages/packageB/event/event_info?id=${row.id}`; | ||||
|       // 创建临时textarea元素 | ||||
|       const textarea = document.createElement('textarea'); | ||||
|       textarea.value = text; | ||||
|       textarea.style.position = 'fixed'; | ||||
|       textarea.style.opacity = '0'; | ||||
|       document.body.appendChild(textarea); | ||||
|       // 选择文本并复制 | ||||
|       textarea.select(); | ||||
|       document.execCommand('copy'); | ||||
|       // 移除临时元素 | ||||
|       document.body.removeChild(textarea); | ||||
|       this.$message.success('复制成功'); | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| @ -1037,11 +1020,22 @@ export default { | ||||
|   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 { | ||||
| .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 { | ||||
| .layui-table td, | ||||
| .layui-table th { | ||||
|   position: relative; | ||||
|   padding: 10px; | ||||
|   height: 50px; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user