| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px"> |
| | | <el-form-item label="姓名" prop="name"> |
| | | <el-input v-model="queryParams.name" placeholder="请输入姓名" clearable @keyup.enter.native="handleQuery" |
| | | style="width: 110px" /> |
| | | </el-form-item> |
| | | <el-form-item label="体检号" prop="tjNumber"> |
| | | <el-input ref="inputName" v-model="queryParams.tjNumber" placeholder="请输入体检号" clearable |
| | | @keyup.enter.native="handleQuery" @blur="hb" style="width: 170px" /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="姓名" prop="name"> |
| | | <el-input v-model="queryParams.name" placeholder="请输入姓名" clearable @keyup.enter.native="handleQuery" |
| | | style="width: 110px" /> |
| | | <el-form-item label="项目" prop="tcm"> |
| | | <el-input v-model="queryParams.tcm" placeholder="请输入项目" clearable @keyup.enter.native="handleQuery" |
| | | style="width: 170px" /> |
| | | </el-form-item> |
| | | <el-form-item label="单位名称" prop="tjCompName" style="margin-left: 20px"> |
| | | <el-select :remote-method="getRemoteData" v-model="queryParams.tjCompName" value-key="drugManufacturerId" |
| | |
| | | <el-option v-for="dict in CompanyList" :key="dict.drugManufacturerId" :label="dict.cnName" :value="dict" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="项目" prop="tcm"> |
| | | <el-input v-model="queryParams.tcm" placeholder="请输入项目" clearable @keyup.enter.native="handleQuery" |
| | | style="width: 170px" /> |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" |
| | | style="margin-right: 15px">搜索</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| | | <el-button type="primary" size="mini" @click="toggleCollapse" style="margin-right: 15px" |
| | | v-show="isCollapsed == 0">高级搜索</el-button> |
| | | <el-button type="primary" size="mini" @click="toggleCollapse3" style="margin-right: 15px" |
| | | v-show="isCollapsed == 1">高级搜索</el-button> |
| | | </el-form-item> |
| | | <el-form-item label="登记时间" prop="createTimeList" v-show="isCollapsed == 1"> |
| | | |
| | | <el-row v-show="isCollapsed == 1" :gutter="20"> |
| | | <el-col :span="8"> |
| | | <el-form-item label="登记时间" prop="createTimeList" v-show="isCollapsed == 1"> |
| | | <el-date-picker v-model="createTimeList" type="datetimerange" align="right" :picker-options="pickerOptions" |
| | | style="width: 310px" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" |
| | | format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm" @change="dateChangebirthday1"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" size="mini" @click="toggleCollapse" style="margin-right: 15px" |
| | | v-show="isCollapsed == 0">展开更多</el-button> |
| | | <el-button type="primary" size="mini" @click="toggleCollapse3" style="margin-right: 15px" |
| | | v-show="isCollapsed == 1">收起更多</el-button> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" |
| | | style="margin-right: 15px">搜索</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | |
| | | <el-radio-group v-model="checkStatus" @input="radioChange" style="margin: 10px 15px"> |
| | |
| | | <el-col :span="11"> |
| | | <el-table v-loading="loading" ref="tb" :data="pictureList" highlight-current-row |
| | | :row-class-name="tableRowClassName" @current-change="handleCurrentChange" border height="520px"> |
| | | <el-table-column label="体检号" align="center" prop="tjNumber" min-width="160" /> |
| | | <el-table-column label="体检号" align="center" prop="tjNumber" min-width="130" /> |
| | | <el-table-column label="姓名" align="center" prop="cusName" min-width="80" /> |
| | | <el-table-column label="性别" align="center" prop="cusSex" min-width="50"> |
| | | <template slot-scope="scope"> |
| | |
| | | <span v-if="scope.row.cusSex == '9'">未说明性别</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="手机号" align="center" prop="cusPhone" min-width="100" /> |
| | | <el-table-column label="身份证号" align="center" prop="cusIdcard" min-width="190" /> |
| | | <el-table-column label="套餐名" align="center" prop="tcm" min-width="100" /> |
| | | <el-table-column label="登记时间" align="center" prop="tjTime" min-width="120" /> |
| | | <el-table-column label="审核状态" align="center" prop="confirmStatus" min-width="80"> |
| | |
| | | <el-button type="primary" @click="imagePreviewVisible = false">确定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <Public ref="aaa" :check-status="checkStatus" :pro-result="form.proResult" :conclusion="form.conclusion" |
| | | @add="handleChanges" :project-list="projectList" /> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getListPicture, |
| | |
| | | tupian(formData) |
| | | .then(response => { |
| | | console.log('成功了', response); |
| | | if (response.code === 200 && response.base64) { |
| | | if (response.code === 200) { |
| | | this.$message.success('图片上传成功!'); |
| | | const index = this.tableList.findIndex(item => item.proId === proId); |
| | | if (index !== -1) { |
| | | const base64Image = `data:image/${fileExtension};base64,${response.base64}`; |
| | | this.$set(this.tableList[index], 'imageUrl', base64Image); |
| | | // 保存 base64 图像用于显示 |
| | | if (response.base64) { |
| | | const base64Image = `data:image/${fileExtension};base64,${response.base64}`; |
| | | this.$set(this.tableList[index], 'imageUrl', base64Image); |
| | | } |
| | | // 保存返回的 url |
| | | if (response.url) { |
| | | this.$set(this.tableList[index], 'url', response.url); |
| | | } |
| | | } |
| | | } else { |
| | | this.$message.error('图片上传失败!'); |
| | |
| | | let tjNumber = val; |
| | | this.loading = true; |
| | | getYxJcXx(tjNumber).then((res) => { |
| | | this.tableList = res.data; |
| | | this.tableList = res.data.map(item => { |
| | | // 如果 imageUrl 存在且是纯 Base64 字符串,添加 data:image 前缀 |
| | | if (item.imageUrl && !item.imageUrl.startsWith('data:image')) { |
| | | // 假设图片类型为 png,如果接口提供类型,可以替换为动态值 |
| | | item.imageUrl = `data:image/png;base64,${item.imageUrl}`; |
| | | } |
| | | return item; |
| | | }); |
| | | this.loading = false; |
| | | this.$nextTick(() => { |
| | | const headerCheckbox = this.$refs.mu.$el.querySelector( |
| | |
| | | const proId = this.selectedRow.proId; |
| | | const jcsj = this.form.proResult || " "; |
| | | const jcjl = this.form.conclusion || " "; |
| | | const url = this.selectedRow.url || ""; // 获取 url,如果不存在则为空字符串 |
| | | |
| | | addYxJcXx({ |
| | | proId: proId, |
| | | tjNumber: this.selectedTjNumber, |
| | | jcsj: jcsj, |
| | | jcjl: jcjl, |
| | | url: url // 添加 url 参数 |
| | | }) |
| | | .then((response) => { |
| | | this.form.proResult = ""; |
| | |
| | | console.error("提交失败", error); |
| | | }); |
| | | }, |
| | | handleDelete() {}, |
| | | handleExport() {}, |
| | | handleDelete() { }, |
| | | handleExport() { }, |
| | | }, |
| | | }; |
| | | </script> |