123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230 |
- <!-- 家庭病床css文件位置位于/component/common/jtbc.css -->
- <div id="app" class="jtbc">
- <div class="copd-filter-group ui-col-1 bgc-fff" style="min-width: 900px">
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">
- <el-radio v-model="yearType" label="1">按活动年度:</el-radio>
- <el-select v-model="chooseYear" class="formWidth wd160">
- <el-option v-for="(item , index) in years" :key="index" :label="item" :value="item"></el-option>
- </el-select>
- </label>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14" style="display: flex; align-items: center">
- <el-radio v-model="yearType" label="2">活动时间:</el-radio>
- <el-date-picker
- v-model="chooseTime"
- type="daterange"
- range-separator="至"
- start-placeholder="开始日期"
- end-placeholder="结束日期"
- value-format="yyyy-MM-dd"></el-date-picker>
- </label>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">活动名称:</label>
- <el-input v-model="form.title" placeholder="请输入活动名称进行搜索"></el-input>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">活动一级类别:</label>
- <el-select v-model="form.firstClassify" placeholder="请输入活动名称进行搜索" @change="form.secondClassify = ''">
- <el-option label="全部" value=""></el-option>
- <el-option label="健康运动类" value="健康运动类"></el-option>
- <el-option label="健康教育类" value="健康教育类"></el-option>
- <el-option label="促进业务类" value="促进业务类"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">活动二级类别:</label>
- <el-select v-model="form.secondClassify" placeholder="请输入活动名称进行搜索">
- <el-option v-for="item in getSecondClassifyList(form.firstClassify)" :label="item.label" :key="item.value" :value="item.value"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">活动状态:</label>
- <el-select v-model="form.activityStatus" placeholder="请输入活动名称进行搜索">
- <el-option label="全部" value=""></el-option>
- <el-option label="报名中" value="1"></el-option>
- <el-option label="进行中" value="2"></el-option>
- <el-option label="兑奖中" value="3"></el-option>
- <el-option label="未开始" value="4"></el-option>
- <el-option label="已开始" value="5"></el-option>
- <el-option label="已结束" value="6"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">举办形式:</label>
- <el-select v-model="form.eventForm" placeholder="请输入活动名称进行搜索">
- <el-option label="全部" value=""></el-option>
- <el-option label="线上" value="线上"></el-option>
- <el-option label="线下" value="线下"></el-option>
- <el-option label="综合" value="综合"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">举办目的:</label>
- <el-select v-model="form.eventAim" placeholder="请输入活动名称进行搜索">
- <el-option label="全部" value=""></el-option>
- <el-option label="促进健康" value="促进健康"></el-option>
- <el-option label="业务宣传" value="业务宣传"></el-option>
- <el-option label="服务提升" value="服务提升"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">数据范围:</label>
- <el-select class="formWidth" v-model="form.range" placeholder="请选择" @change="resetArea">
- <el-option v-for="(option, index) in rangeOptions" :label="option.label" :value="option.value" :key="option.value"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20 pr20">
- <label class="c-333 c-f14">地区:</label>
- <el-select class="formWidth" v-model="form.area" placeholder="请选择" @change="getHospital">
- <el-option v-for="(option, index) in areaOptions" :label="option.label" :value="option.value" :key="option.value"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20 pr20" v-if="form.range == 'hospital'||form.range == 'team'">
- <label class="c-333 c-f14">社区:</label>
- <el-select class="formWidth" v-model="form.hospital" placeholder="请选择">
- <el-option v-for="(option, index) in hospitalOptions" :label="option.name" :value="option.code" :key="option.code"></el-option>
- </el-select>
- </div>
- <div class="searchDiv pb20">
- <el-button type="primary" size="mini" @click="searchFn">查询</el-button>
- <el-button type="ff9526" size="mini" @click="exportTable" :disabled="exportLoading">导出</el-button>
- <span class="eliminate" @click="eliminateClick">清除筛选条件</span>
- </div>
- </div>
- <el-table :data="tableData" style="width: 100%" v-loading="loading">
- <el-table-column type="index" label="序号" width="80"></el-table-column>
- <el-table-column v-for="item in tableHeader" :key="item.prop" :label="item.label" :min-width="item.width || 100">
- <template slot-scope="scope">
- <span :class="`${item.prop=='title'?'pointer c-409eff':''}`" @click="openDialog(scope.row,item.prop)">{{scope.row[item.prop]}}</span>
- </template>
- </el-table-column>
- <el-table-column label="数据查看">
- <template slot-scope="scope">
- <el-button type="text" @click="previewDetailData(scope.row)">查看</el-button>
- </template>
- </el-table-column>
- </el-table>
- <el-pagination
- @current-change="handleCurrentChange($event, 1)"
- @size-change="handleSizeChange($event, 1)"
- :current-page.sync="page1"
- :page-size="size1"
- :page-sizes="[10, 20, 50]"
- layout="total, sizes, prev, pager, next, jumper"
- class="pagination"
- :total="total1"></el-pagination>
- <el-dialog :visible.sync="dialogShow" @close="closeDialog" width="1200px" title="活动数据明细">
- <el-form inline size="mini">
- <el-form-item label="居民姓名:">
- <el-input v-model="query.name" placeholder="请输入居民姓名进行搜索"></el-input>
- </el-form-item>
- <el-form-item label="手机号码:">
- <el-input v-model="query.mobile" placeholder="请输入手机号码进行搜索"></el-input>
- </el-form-item>
- <el-form-item label="签约机构:">
- <el-input v-model="query.hospitalName" placeholder="请输入签约机构进行搜索"></el-input>
- </el-form-item>
- <el-form-item label="签约医生:">
- <el-input v-model="query.doctorName" placeholder="请输入签约医生进行搜索"></el-input>
- </el-form-item>
- <el-form-item label="性别:">
- <el-select v-model="query.sex">
- <el-option label="全部" value=""></el-option>
- <el-option label="男" value="1"></el-option>
- <el-option label="女" value="2"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="dialogSearch">查询</el-button>
- <el-button type="ff9526" @click="dialogExport" :disabled="exportLoading">导出</el-button>
- </el-form-item>
- </el-form>
- <el-table :data="dialogTableData" border v-loading="dialogLoading">
- <el-table-column type="index" label="序号" width="80"></el-table-column>
- <el-table-column v-for="item in dialogHeader" :label="item.label" :key="item.prop" :width="item.width || 120">
- <template slot-scope="scope">
- <span>{{scope.row[item.prop]}}</span>
- </template>
- </el-table-column>
- </el-table>
- <div style="display: flex; justify-content: flex-end; margin-top: 10px">
- <el-pagination
- @current-change="handleCurrentChange($event, 2)"
- @size-change="handleSizeChange($event, 2)"
- :current-page.sync="page2"
- :page-size="size2"
- :page-sizes="[10, 20, 50]"
- layout="total, sizes, prev, pager, next, jumper"
- :total="total2"></el-pagination>
- </div>
- </el-dialog>
- <el-dialog :visible.sync="dialogShow1" @close="closeDialog1" width="1200px" title="活动报名明细">
- <el-form inline size="mini">
- <el-form-item label="按活动年度:" v-if="yearType == 1">
- <el-select v-model="chooseYear" disabled>
- <el-option v-for="(item , index) in years" :key="index" :label="item" :value="item"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="创建时间:" v-if="yearType == 2">
- <el-date-picker
- v-model="chooseTime"
- type="daterange"
- range-separator="至"
- start-placeholder="开始日期"
- end-placeholder="结束日期"
- value-format="yyyy-MM-dd"
- disabled></el-date-picker>
- </el-form-item>
- <el-form-item label="活动名称:">
- <el-input v-model="query1.title" placeholder="请输入活动名称进行搜索"></el-input>
- </el-form-item>
- <el-form-item label="签约机构:">
- <el-input v-model="query1.hospitalName" placeholder="请输入签约机构名称进行搜索"></el-input>
- </el-form-item>
- <el-form-item label="签约医生:">
- <el-input v-model="query1.doctorName" placeholder="请输入签约医生名称进行搜索"></el-input>
- </el-form-item>
- <el-form-item label="活动一级类别">
- <el-select v-model="query1.firstClassify" @change="query1.secondClassify = ''">
- <el-option label="全部" value=""></el-option>
- <el-option label="健康运动类" value="健康运动类"></el-option>
- <el-option label="健康教育类" value="健康教育类"></el-option>
- <el-option label="促进业务类" value="促进业务类"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="活动二级类别">
- <el-select v-model="query1.secondClassify">
- <el-option :label="item.label" :value="item.value" v-for="item in getSecondClassifyList(query1.firstClassify)" :key="item.value"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="dialogSearch1">查询</el-button>
- <el-button type="ff9526" @click="dialogExport1" :disabled="dialogExportLoading1">导出</el-button>
- </el-form-item>
- </el-form>
- <el-table :data="dialogTableData1" border v-loading="dialogLoading1">
- <el-table-column type="index" label="序号" :width="70"></el-table-column>
- <el-table-column v-for="item in dialogHeader1" :label="item.label" :prop="item.prop" :key="item.prop" :min-width="item.width || 100">
- <template slot-scope="scope">
- <span>{{scope.row[item.prop]}}</span>
- </template>
- </el-table-column>
- </el-table>
- <div style="display: flex; justify-content: flex-end; margin-top: 10px">
- <el-pagination
- @current-change="handleCurrentChange($event, 3)"
- @size-change="handleSizeChange($event, 3)"
- :current-page.sync="page3"
- :page-size="size3"
- :page-sizes="[10, 20, 50]"
- layout="total, sizes, prev, pager, next, jumper"
- :total="total3"></el-pagination>
- </div>
- </el-dialog>
- </div>
|