| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 | <!-- 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-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="请选择" @change="getTeam">        <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 pr20" v-if="form.range == 'team'">      <label class="c-333 c-f14">团队:</label>      <el-select class="formWidth" v-model="form.team" placeholder="请选择">        <el-option v-for="(option, index) in teamOptions" :label="option.name" :value="option.id" :key="option.id"></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"    :row-key="(record) => `${record.code}-${record.name}`"    lazy    :load="load"    :tree-props="{children: 'children', hasChildren: 'hasChildren'}">    <el-table-column :label="item.label" v-for="item in tableHeader" :min-width="item.width" :key="item.prop" :prop="item.prop">      <template slot="header" slot-scope="scope">        {{scope.column.label}}        <el-tooltip effect="dark" :content="item.tooltip" placement="top-start">          <i class="el-icon-question" v-if="item.tooltip"></i>        </el-tooltip>      </template>      <template slot-scope="scope">        <span          :class="`${(item.prop== 'turnUpTimes'&&scope.row.code)|| (item.prop== 'turnUpTimes'&&scope.row.name=='其他')  ?'pointer c-409eff':''}`"          @click="openDialog(scope.row, item.prop)">          {{scope.row[item.prop]}}        </span>      </template>    </el-table-column>  </el-table>  <el-dialog :visible.sync="visible" title="上转预约明细列表" @close="closeDialog" width="1200px">    <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.orgName" placeholder="请输入预约医院查询"></el-input>      </el-form-item>      <el-form-item label="预约科室:">        <el-input v-model="query.deptName" 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 label="签约医院">        <el-input v-model="query.signHospitalName" placeholder="请输入签约医院查询"></el-input>      </el-form-item>      <el-form-item label="签约医生">        <el-input v-model="query.signDoctorName" placeholder="请输入签约医生查询"></el-input>      </el-form-item>      <el-form-item label="数据范围:">        <el-select v-model="query.range" disabled>          <el-option v-for="item in rangeOptions" :value="item.value" :label="item.label" :key="item.value"></el-option>        </el-select>      </el-form-item>      <el-form-item label="地区:" v-if="query.range == 'town'">        <el-select v-model="query.area" disabled>          <el-option v-for="(option, index) in dataRangeOption" :label="option.label" :value="option.value" :key="option.value"></el-option>        </el-select>      </el-form-item>      <el-form-item label="社区:" v-if="query.range == 'hospital'">        <el-select v-model="query.hospital" disabled>          <el-option v-for="(option, index) in dataRangeOption" :label="option.label" :value="option.value" :key="option.value"></el-option>        </el-select>      </el-form-item>      <el-form-item label="团队:" v-if="query.range == 'team'">        <el-select v-model="query.team" disabled>          <el-option v-for="(option, index) in dataRangeOption" :label="option.label" :value="option.value" :key="option.value"></el-option>        </el-select>      </el-form-item>      <el-form-item>        <el-button type="primary" @click="dialogSearchFn(1)">查询</el-button>        <el-button type="warning" @click="dialogExportFn(1)" :disabled="dialogExportLoading">导出</el-button>        <span @click="dialogReset" style="color: #676a6c; cursor: pointer">清除筛选条件</span>      </el-form-item>    </el-form>    <el-table :data="dialogTableData" border v-loading="dialogLoading">      <el-table-column type="index" label="序号"></el-table-column>      <el-table-column v-for="item in dialogHeader" :label="item.label" :key="item.prop" :render-header="renderHeader">        <template slot-scope="scope">          <span :class="`${item.prop=='name'?'pointer c-409eff':''}`" @click="seePatientDetail(scope.row, item.prop)">{{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"        @size-change="handleSizeChange"        :current-page.sync="page"        :page-size="size"        :page-sizes="[10, 20, 50]"        layout="total, sizes, prev, pager, next, jumper"        :total="total"></el-pagination>    </div>  </el-dialog>  <el-dialog :visible.sync="xxVisible" title="上转预约明细列表" @close="closeDialog" width="1200px">    <el-form inline size="mini">      <el-form-item label="居民姓名:">        <el-input v-model="xxQuery.name" placeholder="请输入居民姓名查询"></el-input>      </el-form-item>      <el-form-item label="操作上转医生机构:">        <el-input v-model="xxQuery.organizationName" placeholder="请输入操作上转医生机构查询"></el-input>      </el-form-item>      <el-form-item label="上转的单位:">        <el-input v-model="xxQuery.transportOrgName" placeholder="请输入上转的单位查询"></el-input>      </el-form-item>      <el-form-item label="上转住院">        <el-input v-model="xxQuery.toIp" placeholder="请输入上转住院查询"></el-input>      </el-form-item>      <el-form-item label="数据范围:">        <el-select v-model="form.range" disabled>          <el-option v-for="item in rangeOptions" :value="item.value" :label="item.label" :key="item.value"></el-option>        </el-select>      </el-form-item>      <el-form-item label="地区:">其他</el-form-item>      <el-form-item>        <el-button type="primary" @click="dialogSearchFn(2)">查询</el-button>        <el-button type="warning" @click="dialogExportFn(2)" :disabled="dialogExportLoading">导出</el-button>        <span @click="dialogReset" style="color: #676a6c; cursor: pointer">清除筛选条件</span>      </el-form-item>    </el-form>    <el-table :data="xxTableData" border v-loading="dialogLoading">      <el-table-column type="index" label="序号"></el-table-column>      <el-table-column v-for="item in xxDialogHeader" :label="item.label" :key="item.prop" :render-header="renderHeader">        <template slot-scope="scope">          <span :class="`${item.prop=='patientName'?'pointer c-409eff':''}`" @click="seePatientDetail(scope.row, item.prop)">{{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="handleXxCurrentChange"        @size-change="handleXxSizeChange"        :current-page.sync="xxPage"        :page-size="xxPageSize"        :page-sizes="[10, 20, 50]"        layout="total, sizes, prev, pager, next, jumper"        :total="xxTotal"></el-pagination>    </div>  </el-dialog></div>
 |