From d0594c96b1905f461ebf4dbdcc49a5c6230f1102 Mon Sep 17 00:00:00 2001 From: su1124 <1583764726@qq.com> Date: 星期二, 26 十二月 2023 15:33:00 +0800 Subject: [PATCH] su --- src/views/doctor/check/index.vue | 1126 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 809 insertions(+), 317 deletions(-) diff --git a/src/views/doctor/check/index.vue b/src/views/doctor/check/index.vue index d954fd1..0af36fa 100644 --- a/src/views/doctor/check/index.vue +++ b/src/views/doctor/check/index.vue @@ -1,31 +1,72 @@ <template> <div> - <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px"> + <el-form + :model="queryParams" + ref="tableList" + :inline="true" + label-width="76px" + style="margin-top: 10px" + > <el-form-item label="濮撳悕" prop="name"> - <el-input v-model="queryParams.name" style="width: 116px" placeholder="璇疯緭鍏ュ鍚�" clearable - @keyup.enter.native="handleQuery"></el-input> + <el-input + v-model="queryParams.name" + style="width: 116px" + placeholder="璇疯緭鍏ュ鍚�" + clearable + @keyup.enter.native="submitForm" + ></el-input> </el-form-item> <el-form-item label="浣撴鍙�" prop="tjNumber"> - <el-input ref="inputName" v-model="queryParams.tjNumber" style="width: 240px" placeholder="璇疯緭鍏ヤ綋妫�鍙�"></el-input> + <el-input + ref="inputName" + v-model="queryParams.tjNumber" + style="width: 240px" + placeholder="璇疯緭鍏ヤ綋妫�鍙�" + @blur="submitForm" + @keyup.enter.native="submitForm" + ></el-input> </el-form-item> <el-form-item> - <el-button size="mini" type="primary" @click="submitForm">鎼滅储</el-button> + <el-button size="mini" type="primary" @click="submitForm" + >鎼滅储</el-button + > <el-button size="mini" @click="resetQuery">閲嶇疆</el-button> </el-form-item> </el-form> - <div style="display: flex;"> - <el-radio-group v-model="tjStatus" @input="radioChange" style="margin-left: 30px"> + <div style="display: flex"> + <el-radio-group + v-model="tjStatus" + @input="radioChange" + style="margin-left: 30px" + > <el-radio-button label="0">鏈</el-radio-button> <el-radio-button label="1">宸叉</el-radio-button> </el-radio-group> </div> <template> - <el-table :data="tableList" v-loading="loading" ref="table" height="536px" style="margin: 20px; width: 98%" - border=""> + <el-table + :data="tableList" + v-loading="loading" + ref="table" + height="536px" + style="margin: 20px; width: 98%" + border + :cell-class-name="myclass" + > <!-- <template slot="empty">鏁版嵁姝e湪鍔犺浇涓�</template> --> - <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" width="160px" /> - <el-table-column label="濮撳悕" align="center" prop="cusName" width="90px" /> + <el-table-column + label="浣撴鍙�" + align="center" + prop="tjNumber" + width="160px" + /> + <el-table-column + label="濮撳悕" + align="center" + prop="cusName" + width="90px" + /> <el-table-column label="鎬у埆" align="center" prop="cusSex" width="60px"> <template slot-scope="scope"> <span v-if="scope.row.cusSex == '0'">鐢�</span> @@ -34,56 +75,139 @@ <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span> </template> </el-table-column> - <el-table-column label="鍑虹敓鏃ユ湡" align="center" prop="cusBrithday" width="100px" /> - <el-table-column label="鐢佃瘽" align="center" prop="cusPhone" width="100px" /> - <el-table-column label="浣撴绫诲瀷" align="center" prop="tjType" width="80px" /> - <el-table-column label="鐧昏鏃堕棿" align="center" prop="createTime" width="160px" /> - <el-table-column label="浣撴鏃堕棿" align="center" prop="tjTime" width="100px" /> - <el-table-column label="鏈椤�" prop="notCheckeds" :show-overflow-tooltip="true" /> + <el-table-column + label="鍑虹敓鏃ユ湡" + align="center" + prop="cusBrithday" + width="100px" + /> + <el-table-column + label="鐢佃瘽" + align="center" + prop="cusPhone" + width="100px" + /> + <el-table-column + label="浣撴绫诲瀷" + align="center" + prop="tjType" + width="80px" + /> + <el-table-column + label="鐧昏鏃堕棿" + align="center" + prop="tjTime" + width="160px" + > + </el-table-column> + <el-table-column + label="浣撴鏃堕棿" + align="center" + prop="tjTime" + width="100px" + > + <template slot-scope="scope"> + <span>{{ parseTime(scope.row.tjTime, "{y}-{m}-{d}") }}</span> + </template> + </el-table-column> + <el-table-column + label="鏈椤�" + prop="notCheckeds" + :show-overflow-tooltip="true" + /> <el-table-column label="鎿嶄綔" align="center" width="130px"> <template slot-scope="scope"> - <el-button type="primary" icon="el-icon-first-aid-kit" size="mini" @click="Changeapplyfor(scope.row)" - title="浼氳瘖鐢宠" v-if="tjStatus == '1'"></el-button> - <el-button type="primary" icon="el-icon-share" size="mini" @click="handleClick(scope.row)" - title="璇︽儏"></el-button> + <el-button + type="primary" + icon="el-icon-first-aid-kit" + size="mini" + @click="Changeapplyfor(scope.row)" + title="浼氳瘖鐢宠" + v-if="tjStatus == '1'" + ></el-button> + <el-button + type="primary" + icon="el-icon-share" + size="mini" + @click="handleClick(scope.row)" + title="璇︽儏" + ></el-button> </template> </el-table-column> </el-table> <div class="pag"> <div class="pag1"> - <pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.pageSize" - @pagination="getList" /> + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.page" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> </div> </div> </template> - <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body> + <el-dialog + :title="title" + :visible.sync="open" + width="1000px" + append-to-body + > <el-row> <el-col :span="9" v-if="hzlogList.length >= 1"> <h3>浼氳瘖鐢宠璁板綍</h3> <el-table :data="hzlogList" style="width: 100%" border> - <el-table-column label="鐢宠浜�" align="center" prop="hzDoctorName" width="100px" /> + <el-table-column + label="鐢宠浜�" + align="center" + prop="hzDoctorName" + width="100px" + /> <el-table-column label="绉戝" align="center" prop="hzDeptName" /> <el-table-column label="鎿嶄綔" align="center" width="150px"> <template slot-scope="scope"> - <el-button type="primary" size="mini" @click="hadleedit(scope.row)" - v-if="scope.row.hzReplyLogsList.length == 0 && scope.row.hzDoctorId == info.userId">淇敼</el-button> - <el-button type="primary" size="mini" - v-if="scope.row.hzReplyLogsList.length == 0 && scope.row.hzDoctorId == info.userId" - @click="handledele(scope.row)">鍒犻櫎</el-button> + <el-button + type="primary" + size="mini" + @click="hadleedit(scope.row)" + v-if=" + scope.row.hzReplyLogsList.length == 0 && + scope.row.hzDoctorId == info.userId + " + >淇敼</el-button + > + <el-button + type="primary" + size="mini" + v-if=" + scope.row.hzReplyLogsList.length == 0 && + scope.row.hzDoctorId == info.userId + " + @click="handledele(scope.row)" + >鍒犻櫎</el-button + > </template> </el-table-column> </el-table> </el-col> <el-col :span="14"> - <h3 style="text-align: center;">浼氳瘖璁板綍鐢宠</h3> + <h3 style="text-align: center">浼氳瘖璁板綍鐢宠</h3> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form-item label="濮撳悕" prop="cusName"> - <el-input v-model="form.cusName" placeholder="璇疯緭鍏ュ鍚�" disabled /> + <el-input + v-model="form.cusName" + placeholder="璇疯緭鍏ュ鍚�" + disabled + /> </el-form-item> <el-form-item label="浣撴鍙�" prop="tjNumber"> - <el-input v-model="form.tjNumber" placeholder="璇疯緭鍏ヤ綋妫�鍙�" disabled /> + <el-input + v-model="form.tjNumber" + placeholder="璇疯緭鍏ヤ綋妫�鍙�" + disabled + /> </el-form-item> <el-form-item label="浼氳瘖绉戝" prop="hzType"> <el-radio-group v-model="form.hzType"> @@ -92,14 +216,33 @@ </el-radio-group> </el-form-item> <el-form-item label="閫夋嫨绉戝" v-if="form.hzType == '1'"> - <el-select v-model="form.hzDeptId" multiple filterable style="width: 100%"> - <el-option v-for="item in deptList" :key="item.deptId" :label="item.deptName" - :value="item.deptId"></el-option> + <el-select + v-model="form.hzDeptId" + multiple + filterable + style="width: 100%" + > + <el-option + v-for="item in deptList" + :key="item.deptId" + :label="item.deptName" + :value="item.deptId" + ></el-option> </el-select> </el-form-item> - <el-form-item label="鐢宠浜�" prop="hzDoctorId"> - <el-select v-model="form.hzDoctorId" placeholder="璇烽�夋嫨" style="width: 100%" filterable> - <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId"> + <el-form-item label="鐢宠浜�" prop="hzDoctorId" style="margin-top:22px"> + <el-select + v-model="form.hzDoctorId" + placeholder="璇烽�夋嫨" + style="width: 100%" + filterable + > + <el-option + v-for="item in userList" + :key="item.userId" + :label="item.nickName" + :value="item.userId" + > </el-option> </el-select> </el-form-item> @@ -116,29 +259,58 @@ </div> </el-dialog> - <el-dialog :title="title" :visible.sync="foropen" width="1000px" append-to-body> + <el-dialog + :title="title" + :visible.sync="foropen" + width="1000px" + append-to-body + > <el-row> <el-col :span="8" v-if="hasdeptList.length >= 1"> - <h3 style="text-align: center;">浼氳瘖鐢宠璁板綍</h3> - <el-table :data="hasdeptList" style="width: 100%" border ref="tab" @selection-change="handleSelectionChange"> + <h3 style="text-align: center">浼氳瘖鐢宠璁板綍</h3> + <el-table + :data="hasdeptList" + style="width: 100%" + border + ref="tab" + @selection-change="handleSelectionChange" + > <el-table-column type="selection" width="50" align="center" /> - <el-table-column label="鐢宠浜�" align="center" prop="hzDoctorName" width="100px" /> - <el-table-column label="绉戝" align="center" prop="hzDeptName" width="260px" /> + <el-table-column + label="鐢宠浜�" + align="center" + prop="hzDoctorName" + width="100px" + /> + <el-table-column + label="绉戝" + align="center" + prop="hzDeptName" + width="260px" + /> </el-table> </el-col> - <el-col :span="16" style="padding: 0 10px;"> - <h3 style="text-align: center;">浼氳瘖鎰忚</h3> - <div v-if="hzReplyLogsList.length >= 1" style="margin-bottom: 10px;"> - <div v-for="(item, index) in hzReplyLogsList" :key="index" - style="padding-bottom:5px;border-bottom: 1px solid black;"> + <el-col :span="16" style="padding: 0 10px"> + <h3 style="text-align: center">浼氳瘖鎰忚</h3> + <div v-if="hzReplyLogsList.length >= 1" style="margin-bottom: 10px"> + <div + v-for="(item, index) in hzReplyLogsList" + :key="index" + style="padding-bottom: 5px; border-bottom: 1px solid black" + > <!-- <div>浼氳瘖绉戝锛歿{ item.replyDeptName }}</div> --> - <div> 鍖荤敓锛歿{ item.hzDoctorName }} </div> + <div>鍖荤敓锛歿{ item.hzDoctorName }}</div> <div>鍥炲锛歿{ item.replyContent }}</div> </div> </div> - <el-input type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" v-model="textarea"> + <el-input + type="textarea" + :rows="2" + placeholder="璇疯緭鍏ュ唴瀹�" + v-model="textarea" + > </el-input> - <div style="padding: 10px 10px;"> + <div style="padding: 10px 10px"> <el-button type="primary" @click="submitFormreply">鍥炲</el-button> </div> </el-col> @@ -149,7 +321,12 @@ </div> --> </el-dialog> - <el-dialog title="濉啓鏄惁閲嶅ぇ闃虫��" :visible.sync="checkval" width="800px" append-to-body> + <el-dialog + title="濉啓鏄惁閲嶅ぇ闃虫��" + :visible.sync="checkval" + width="800px" + append-to-body + > <el-form ref="form" :model="formIn" label-width="100px"> <el-form-item label="濮撳悕"> <el-input v-model="formIn.cusName" disabled></el-input> @@ -170,8 +347,18 @@ </el-radio-group> </el-form-item> <el-form-item label="绛夌骇"> - <el-select v-model="formIn.level" placeholder="璇烽�夋嫨" filterable style="width: 100%;"> - <el-option v-for="item in dict.type.lj_positive" :key="item.value" :label="item.label" :value="item.value"> + <el-select + v-model="formIn.level" + placeholder="璇烽�夋嫨" + filterable + style="width: 100%" + > + <el-option + v-for="item in dict.type.lj_positive" + :key="item.value" + :label="item.label" + :value="item.value" + > </el-option> </el-select> </el-form-item> @@ -185,10 +372,31 @@ </div> </el-dialog> + <el-dialog + title="PDF 棰勮" + :visible.sync="dialogVisible" + :close-on-click-modal="false" + > + <div class="main"> + <iframe + id="printIframe" + :src="url" + frameborder="0" + style="width: 100%; height: 100%" + ></iframe> + </div> + </el-dialog> + <!-- 鐐瑰嚮鍙宠竟寮瑰嚭灞� --> - <el-drawer :visible.sync="drawer" :with-header="false" size="70%" :before-close="handleClose"> + <el-drawer + :visible.sync="drawer" + :with-header="false" + size="70%" + :before-close="handleClose" + > <div style="font-size: 14px"> - <table style=" + <table + style=" width: 96%; height:70px margin: 10px 10px; @@ -196,14 +404,19 @@ border: 1px solid #dfe6ec; border-collapse: collapse; font-size:16px - " cellspacing="4"> + " + cellspacing="4" + > <caption style="background-color: #f8f8f9; font-size: 18px"> 濉啓{{ tableAll.cusName }}鐨勪綋妫�璧勬枡 </caption> <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + align="right" + > 濮撳悕锛� </td> <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> @@ -215,7 +428,10 @@ <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span> </template> </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + align="right" + > 鎬у埆锛� </td> <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> @@ -223,13 +439,19 @@ </td> </tr> <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + align="right" + > 浣撴鍗曞彿锛� </td> <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> {{ tableAll.tjNumber }} </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + align="right" + > 浣撴鏃堕棿锛� </td> <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> @@ -238,125 +460,240 @@ </tr> </table> </div> - <div style="margin: 10px 10px;" v-if="hasdeptList.length >= 1"> - <el-button type="primary" size="mini" @click="Changeapply()">浼氳瘖鐢宠</el-button> + <div style="display: flex"> + <div style="margin: 10px 10px" v-if="hasdeptList.length >= 1"> + <el-button type="primary" size="mini" @click="Changeapply()" + >浼氳瘖鐢宠</el-button + > + </div> + <div style="margin: 10px 10px"> + <el-button type="primary" size="mini" @click="historicalreport()" + >鍘嗗彶鎶ュ憡</el-button + > + </div> </div> - <template> - <div style="margin-left: 10px"> - <el-radio-group v-model="radio" v-for="(item, index) in Parent" :key="index" - @input="radioChange1(item.proId, item)"> - <el-radio-button :label="item.proId">{{ - item.proName - }}</el-radio-button> - </el-radio-group> - </div> - </template> - <el-table v-loading="loading" :data="proParentList.sons" border height="460px" - style="width: 96%; margin: 10px 10px"> - <el-table-column prop="project.proName" label="妫�娴嬮」鐩�" width="150"> - <!-- <template slot-scope="scope"> + <el-row> + <el-col :span="18"> + <template> + <div style="margin-left: 10px"> + <el-radio-group + v-model="radio" + v-for="(item, index) in Parent" + :key="index" + @input="radioChange1(item.proId, item)" + > + <el-radio-button :label="item.proId">{{ + item.proName + }}</el-radio-button> + </el-radio-group> + </div> + </template> + <el-table + v-loading="loading" + :data="proParentList.sons" + border + height="460px" + style="width: 96%; margin: 10px 10px" + > + <el-table-column + prop="project.proName" + label="妫�娴嬮」鐩�" + width="150" + > + <!-- <template slot-scope="scope"> {{ scope.row.project.proName }} </template> --> - </el-table-column> - <el-table-column prop="proResult" label="妫�娴嬬粨鏋�" width="280"> - <template slot-scope="scope"> - <el-input size="mini" v-model="scope.row.proResult" autocomplete="off" placeholder="璇疯緭鍏ユ娴嬬粨鏋�" - @blur="handleInputConfirm(scope.row)" @input="vale"></el-input> - </template> - </el-table-column> - <el-table-column label="瑙勫垯" width="55"> - <template slot-scope="scope"> - <el-button class="blue-button" @click="handleguize(scope.row)">...</el-button> - </template> - </el-table-column> - <el-table-column prop="project.proMetering" label="鍗曚綅"> - <!-- <template slot-scope="scope"> + </el-table-column> + <el-table-column prop="proResult" label="妫�娴嬬粨鏋�" width="200"> + <template slot-scope="scope"> + <el-input + type="textarea" + autosize + size="mini" + v-model="scope.row.proResult" + autocomplete="off" + placeholder="璇疯緭鍏ユ娴嬬粨鏋�" + @blur="handleInputConfirm(scope.row)" + @input="vale" + @focus="handleInConfirm(scope.row)" + ></el-input> + </template> + </el-table-column> + <el-table-column label="瑙勫垯" width="55"> + <template slot-scope="scope"> + <el-button class="blue-button" @click="handleguize(scope.row)" + >...</el-button + > + </template> + </el-table-column> + <el-table-column prop="project.proMetering" label="鍗曚綅"> + <!-- <template slot-scope="scope"> {{ scope.row.standard.company }} </template> --> - </el-table-column> - <el-table-column prop="project.proScope" label="鍙傝�冭寖鍥�"> - </el-table-column> - <el-table-column prop="conclusion" label="缁撴灉缁撹" width="280"> - <template slot-scope="scope"> - <el-input size="mini" v-model="scope.row.conclusion" autocomplete="off" placeholder="璇疯緭鍏ユ娴嬬粨鏋�" - disabled></el-input> - </template> - </el-table-column> - <el-table-column prop="exceptionDesc" label="鏄惁寮傚父" width="80px" align="center"> - <template slot-scope="scope"> - <el-checkbox v-model="scope.row.exceptionDesc"></el-checkbox> - </template> - </el-table-column> - <el-table-column prop="isReturn" label="鏄惁澶嶈瘖" width="80px" align="center"> - <template slot-scope="scope"> - <el-checkbox v-model="scope.row.isReturn"></el-checkbox> - </template> - </el-table-column> - <el-table-column prop="project.resultType" label="缁撴灉绫诲瀷"> - <template slot-scope="scope"> - <dict-tag :options="dict.type.tj_result_type" :value="scope.row.project.resultType" /> - </template> - </el-table-column> - <el-table-column prop="isPositive" label="閲嶅ぇ闃虫��"> - <template slot-scope="scope"> - <el-switch v-model="scope.row.isPositive" active-value="1" inactive-value="0" - @change="checkboxchange(scope.row)"></el-switch> + </el-table-column> + <el-table-column prop="project.proScope" label="鍙傝�冭寖鍥�"> + </el-table-column> + <el-table-column prop="conclusion" label="缁撴灉缁撹" width="200"> + <template slot-scope="scope"> + <el-input + size="mini" + type="textarea" + autosize + v-model="scope.row.conclusion" + autocomplete="off" + placeholder="璇疯緭鍏ユ娴嬬粨鏋�" + disabled + ></el-input> + </template> + </el-table-column> + <el-table-column + prop="exceptionDesc" + label="鏄惁寮傚父" + width="80px" + align="center" + > + <template slot-scope="scope"> + <el-checkbox v-model="scope.row.exceptionDesc"></el-checkbox> + </template> + </el-table-column> + <el-table-column + prop="isReturn" + label="鏄惁澶嶈瘖" + width="80px" + align="center" + > + <template slot-scope="scope"> + <el-checkbox v-model="scope.row.isReturn"></el-checkbox> + </template> + </el-table-column> + <el-table-column prop="project.resultType" label="缁撴灉绫诲瀷"> + <template slot-scope="scope"> + <dict-tag + :options="dict.type.tj_result_type" + :value="scope.row.project.resultType" + /> + </template> + </el-table-column> + <el-table-column prop="isPositive" label="閲嶅ぇ闃虫��"> + <template slot-scope="scope"> + <el-switch + v-model="scope.row.isPositive" + active-value="1" + inactive-value="0" + @change="checkboxchange(scope.row)" + ></el-switch> + </template> + </el-table-column> + </el-table> - </template> - </el-table-column> - </el-table> + <div style="font-size: 14px; overflow-y: auto; height: 286px"> + <table + style=" + width: 96%; + margin: 4px 10px; + border: 1px solid #dfe6ec; + border-collapse: collapse; + " + cellspacing="4" + > + <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + > + 鐥呯閫夋嫨锛� + </td> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + > + <el-select + v-model="value" + multiple + placeholder="璇烽�夋嫨" + style="width: 100%; height: 45px" + v-if="deptAdviceList" + @change="sel" + filterable + > + <el-option + v-for="item in deptAdviceList" + :key="item.id" + :label="item.title" + :value="item.id" + > + </el-option> + </el-select> + </td> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + > + 涓绘鍖诲笀锛� + </td> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + > + <el-select + v-model="doctorName" + placeholder="璇烽�夋嫨" + style="width: 100%" + v-if="deptAdviceList" + @change="selName" + filterable + > + <el-option + v-for="item in userList" + :key="item.userId" + :label="item.nickName" + :value="item.userId" + > + </el-option> + </el-select> + </td> + </tr> + <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + > + 寤鸿锛� + </td> + <td + style="border: 1px solid #dfe6ec; border-collapse: collapse" + colspan="2" + > + <el-input + type="textarea" + placeholder="璇疯緭鍏ュ唴瀹�" + v-model="proParentList.remark" + rows="7" + > + </el-input> + </td> + </tr> + </table> - <div style="font-size: 14px; overflow-y: auto; height: 286px"> - <table style=" - width: 96%; - margin: 4px 10px; - border: 1px solid #dfe6ec; - border-collapse: collapse; - " cellspacing="4"> - <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> - 鐥呯閫夋嫨锛� - </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> - <el-select v-model="value" multiple placeholder="璇烽�夋嫨" style="width: 100%; height: 45px" - v-if="deptAdviceList" @change="sel" filterable> - <el-option v-for="item in deptAdviceList" :key="item.id" :label="item.title" :value="item.id"> - </el-option> - </el-select> - </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> - 涓绘鍖诲笀锛� - </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> - <el-select v-model="doctorName" placeholder="璇烽�夋嫨" style="width: 100%" v-if="deptAdviceList" - @change="selName" filterable> - <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId"> - </el-option> - </el-select> - </td> - </tr> - <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> - 寤鸿锛� - </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2"> - <el-input type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" v-model="proParentList.remark" rows="7"> - </el-input> - </td> - </tr> - </table> - - <div slot="footer" class="dialog-footers"> - <!-- <el-button type="primary" + <div slot="footer" class="dialog-footers"> + <!-- <el-button type="primary" size="mini" @click="radioChange" v-hasPermi="['system:notice:add']" v-show="tjStatus == '1'" >浼氳瘖鐢宠</el-button> --> - <el-button type="primary" @click="determine" v-show="tjStatus == '0'">鎻� 浜�</el-button> - </div> - </div> + <el-button + type="primary" + @click="determine" + v-show="tjStatus == '0'" + >鎻� 浜�</el-button + > + </div> + </div> + </el-col> + <el-col :span="6"> + <Historicalreport + :reportHistorydata="reportHistorydata" + ></Historicalreport> + </el-col> + </el-row> + <!-- <div style="background-color: #f3f3f3;font-size:14px;overflow-y:auto;height: calc(100% - 11%);"> <table style="width:96%;margin: 4px 10px;border:1px solid white" cellspacing="4" border="2" v-for="(item, index) in proParentList.sons" :key="index"> @@ -405,28 +742,28 @@ <script> import Public from "@/components/public"; +import { getPdf } from "@/api/hosp/order"; import { getInfo } from "@/api/login"; +import Historicalreport from "@/components/Historicalreport"; import { getProList, getSons, + AutoGetRule, getaddRemark, getParentList, getParentId, getDeptAdvice, + reportHistory, } from "@/api/doctor/check"; -import { - addBigPositive -} from "@/api/doctor/bigPositive"; -import { - addReplylog, hzHasDept -} from "@/api/hosp/replylog"; +import { addBigPositive } from "@/api/doctor/bigPositive"; +import { addReplylog, hzHasDept } from "@/api/hosp/replylog"; import { listHzlog, addHzlog, delHzlog, updateHzlog } from "@/api/hosp/hzlog"; import { listUser } from "@/api/system/user"; import { getChildList } from "@/api/system/dept"; export default { dicts: ["sys_user_sex", "sys_yes_no", "tj_result_type", "lj_positive"], name: "check", - components: { Public }, + components: { Public, Historicalreport }, data() { return { selected: false, @@ -435,11 +772,15 @@ loading: false, open: false, foropen: false, + dialogVisible: false, + reportHistorydata: [], + url: "", cateringList: [], orderDetailId: "", textarea: "", title: "", formIn: {}, + focusrow: {}, hzlogList: [], // proDefault: "", // dataList: [], @@ -465,8 +806,10 @@ row: {}, info: {}, allList: [], + autorule: [], + vals: {}, form: { - createTime: new Date() + createTime: new Date(), }, // 鍖荤敓 doctorName: "", @@ -510,10 +853,8 @@ name: null, }, rules: { - hzType: [ - { required: true, message: '璇烽�夋嫨绉戝', trigger: 'change' } - ] - } + hzType: [{ required: true, message: "浼氳瘖绉戝涓哄繀濉」", trigger: "change" }], + }, }; }, @@ -550,7 +891,7 @@ } ); getInfo().then((response) => { - this.info = response.user + this.info = response.user; this.deptId = response.user.deptId; this.userId = response.user.userId; this.nickName = response.user.nickName; @@ -567,6 +908,12 @@ // this.doctorName = item.nickName // } // }) + }, + + myclass(row, column, rowIndex, columnIndex) { + if (row.row.isPositive == 1) { + return "setclass"; + } }, // 灏忕粨鑾峰彇澶囨敞 sel(val) { @@ -609,6 +956,49 @@ vale(datas) { this.proResult = datas; + var pattern3 = new RegExp("[0-9]+"); + if (pattern3.test(this.proResult)) { + let data = { + proId: this.focusrow.proId, + cusId: this.tableAll.cusId, + keyNum: this.proResult, + }; + AutoGetRule(data).then((res) => { + this.focusrow.conclusion = ""; + if (res.data) { + this.autorule = res.data; + this.focusrow.rulesList = this.autorule; + this.autorule.forEach((item) => { + if (this.focusrow.conclusion) { + this.focusrow.conclusion += item.bingzhong; + } else { + this.focusrow.conclusion = item.bingzhong; + } + }); + } + }); + } else { + let data = { + proId: this.focusrow.proId, + cusId: this.tableAll.cusId, + keyWord: this.proResult, + }; + AutoGetRule(data).then((res) => { + this.focusrow.conclusion = ""; + if (res.data) { + this.autorule = res.data; + this.focusrow.rulesList = this.autorule; + this.autorule.forEach((item) => { + if (this.focusrow.conclusion) { + this.focusrow.conclusion += item.bingzhong; + } else { + this.focusrow.conclusion = item.bingzhong; + } + }); + } + }); + } + // this.$refs.aaa.open = true; // this.$refs.aaa.getList(); }, @@ -626,17 +1016,21 @@ }, getList() { + this.loading = true; this.queryParams.type = this.tjStatus; getProList(this.queryParams).then((response) => { - if (response.data) { - if (response.data.date) { - this.tableList = response.data.date; + if (response.code == 200) { + this.loading = false; + if (response.data) { + if (response.data.date) { + this.tableList = response.data.date; + } else { + this.tableList = response.data.customers; + } + this.total = response.data.total; } else { - this.tableList = response.data.customers; + this.tableList = []; } - this.total = response.data.total; - } else { - this.tableList = []; } }); }, @@ -644,19 +1038,23 @@ // 鍗曢�夋寜閽� radioChange(val) { this.queryParams.type = val; + this.loading = true; getProList(this.queryParams).then((response) => { - if (response.data) { - this.tableList = response.data.date; - this.total = response.data.total; - } else { - this.tableList = []; + if (response.code == 200) { + this.loading = false; + if (response.data) { + this.tableList = response.data.date; + this.total = response.data.total; + } else { + this.tableList = []; + } } }); }, // 鎼滅储 submitForm() { - this.queryParams.pageNum = 1; + this.queryParams.page = 1; this.getList(); // this.loading = true; // (this.queryParams = { @@ -693,149 +1091,191 @@ Changeapplyfor(row) { this.open = true; - this.form = row + this.form = row; this.form.hzDoctorId = this.info.userId; - getChildList().then(res => { + getChildList().then((res) => { this.deptList = res.data; - }) - this.Hzlog(this.form.tjNumber) + }); + this.Hzlog(this.form.tjNumber); }, checkboxchange(val) { - this.project = val.project - this.formIn.tjNumber = this.tableAll.tjNumber - this.formIn.cusId = this.tableAll.cusId - this.formIn.cusName = this.tableAll.cusName - this.formIn.proId = this.project.proId - this.formIn.proName = this.project.proName - this.formIn.orderId = val.orderId - this.Parent.forEach(item => { + this.vals = val; + this.project = val.project; + this.formIn.tjNumber = this.tableAll.tjNumber; + this.formIn.cusId = this.tableAll.cusId; + this.formIn.cusName = this.tableAll.cusName; + this.formIn.proId = this.project.proId; + this.formIn.proName = this.project.proName; + this.formIn.orderId = val.orderId; + this.Parent.forEach((item) => { if (this.radio == item.proId) { - this.Parentcheck.proName = item.proName - this.formIn.proParentId = item.proId + this.Parentcheck.proName = item.proName; + this.formIn.proParentId = item.proId; } - }) + }); if (val.isPositive == "1") { this.checkval = true; + this.formIn.flag = "0"; + this.formIn.level = ""; } else { - this.formIn.flag = "0" - addBigPositive(this.formIn).then(res => { - this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); - this.getParentIdsss() - }) + this.formIn.flag = "0"; + addBigPositive(this.formIn).then((res) => { + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); + this.getParentIdsss(); + }); } }, submitcheckval() { - addBigPositive(this.formIn).then(res => { + addBigPositive(this.formIn).then((res) => { this.$modal.msgSuccess("鏂板鎴愬姛"); - this.getParentIdsss() + this.getParentIdsss(); this.checkval = false; - }) + }); }, cancell() { this.checkval = false; + this.vals.isPositive = "0"; }, Hzlog(val) { let data = { - tjNumber: val - } - listHzlog(data).then(response => { + tjNumber: val, + }; + listHzlog(data).then((response) => { this.hzlogList = response.rows; - this.hzlogList.forEach(item => { - item.hzDeptName = "" + this.hzlogList.forEach((item) => { + item.hzDeptName = ""; if (item.hzType == "0") { - item.hzDeptName = "鍏ㄩ櫌浼氳瘖" + item.hzDeptName = "鍏ㄩ櫌浼氳瘖"; } else { - item.hzDeptIdList.forEach(item1 => { - this.deptList.forEach(item2 => { + item.hzDeptIdList.forEach((item1) => { + this.deptList.forEach((item2) => { if (item1 == item2.deptId) { - item.hzDeptName += item2.deptName + "," + item.hzDeptName += item2.deptName + ","; } - }) - }) + }); + }); } - }) + }); }); }, handledele(row) { - this.id = [] - this.id.push(row.id) - delHzlog(this.id).then(res => { + this.id = []; + this.id.push(row.id); + delHzlog(this.id).then((res) => { this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); - this.Hzlog(this.form.tjNumber) - }) + this.Hzlog(this.form.tjNumber); + }); }, hadleedit(row) { - this.form.hzType = row.hzType - this.form.id = row.id + console.log(row, 111); + this.form.hzType = row.hzType; + this.form.id = row.id; + this.form.hzDeptId = row.hzDeptNameList; + // row.hzDeptIdList.forEach(item=>{ + // console.log(item,222); + // this.deptList.forEach(items=>{ + // console.log(item,333); + // if(item == items.deptId){ + // this.form.hzDeptNameList = + // } + // }) + // }) }, submitFormapply() { - console.log(this.form) - let data = {} - this.userList.forEach(item1 => { + let data = {}; + this.userList.forEach((item1) => { if (this.form.hzDoctorId == item1.userId) { - this.form.hzDoctorName = item1.nickName + this.form.hzDoctorName = item1.nickName; } - }) + }); if (this.form.hzType != undefined) { - if (this.form.hzDeptId && this.form.id) { - // let hzDeptId = "" - // this.form.hzDeptId.forEach(item => { - // hzDeptId += item + ',' - // }) - data = { - tjNumber: this.form.tjNumber, - userId: this.form.cusId, - userName: this.form.cusName, - hzDeptIdList: this.form.hzDeptId, - hzDoctorId: this.form.hzDoctorId, - hzType: this.form.hzType, - orderId: this.form.orderId, - hzDoctorName: this.form.hzDoctorName, - id: this.form.id - } - } else { - data = { - tjNumber: this.form.tjNumber, - userId: this.form.cusId, - userName: this.form.cusName, - hzDoctorId: this.form.hzDoctorId, - hzType: this.form.hzType, - orderId: this.form.orderId, - hzDoctorName: this.form.hzDoctorName - } - } + // if (this.form.hzDeptId && this.form.id) { + // console.log(111); + // // let hzDeptId = "" + // // this.form.hzDeptId.forEach(item => { + // // hzDeptId += item + ',' + // // }) + // data = { + // tjNumber: this.form.tjNumber, + // userId: this.form.cusId, + // userName: this.form.cusName, + // hzDeptIdList: this.form.hzDeptId, + // hzDoctorId: this.form.hzDoctorId, + // hzType: this.form.hzType, + // orderId: this.form.orderId, + // hzDoctorName: this.form.hzDoctorName, + // id: this.form.id, + // }; + // } else { + // console.log(222); + // data = { + // tjNumber: this.form.tjNumber, + // userId: this.form.cusId, + // userName: this.form.cusName, + // hzDoctorId: this.form.hzDoctorId, + // hzType: this.form.hzType, + // orderId: this.form.orderId, + // hzDoctorName: this.form.hzDoctorName, + // }; + // } this.$refs["form"].validate((valid) => { if (valid) { if (this.form.id != null) { - updateHzlog(data).then(res => { + data = { + tjNumber: this.form.tjNumber, + userId: this.form.cusId, + userName: this.form.cusName, + hzDeptIdList: this.form.hzDeptId, + hzDoctorId: this.form.hzDoctorId, + hzType: this.form.hzType, + orderId: this.form.orderId, + hzDoctorName: this.form.hzDoctorName, + id: this.form.id, + }; + updateHzlog(data).then((res) => { if (res.code == 200) { this.$modal.msgSuccess("淇敼鎴愬姛"); - this.form = {} - this.Hzlog() - this.radioChange(1) + this.form = {}; + this.Hzlog(); + this.radioChange(1); } - }) + }); } else { - addHzlog(data).then(res => { + data = { + tjNumber: this.form.tjNumber, + userId: this.form.cusId, + userName: this.form.cusName, + hzDeptIdList: this.form.hzDeptId, + hzDoctorId: this.form.hzDoctorId, + hzType: this.form.hzType, + orderId: this.form.orderId, + hzDoctorName: this.form.hzDoctorName, + id: this.form.id, + }; + if(this.form.hzDeptId.length != 0){ + addHzlog(data).then((res) => { if (res.code == 200) { this.$modal.msgSuccess("鐢宠鎴愬姛"); - this.form = {} - this.Hzlog() - this.radioChange(1) + this.form = {}; + this.Hzlog(); + this.radioChange(1); } - }) + }); this.open = false; + }else{ + this.$modal.msgError("璇烽�夋嫨浼氳瘖绉戝"); + } + } } - }) + }); } else { this.$modal.msgError("璇烽�夋嫨浼氳瘖绉戝"); } - }, cancel() { this.open = false; @@ -843,9 +1283,48 @@ }, Changeapply() { - this.foropen = true - this.Hzlog(this.tableAll.tjNumber) + this.foropen = true; + this.Hzlog(this.tableAll.tjNumber); + }, + historicalreport() { + this.loading = true; + let data = { + cusId: this.tableAll.cusId, + }; + reportHistory(data).then((res) => { + this.loading = false; + if (res.data[0] != null) { + this.reportHistorydata = res.data; + } + }); + }, + handlecan(row) { + this.dialogVisible = true; + const tjNumber = row.tjNumber; + const flag = true; + getPdf(tjNumber, flag).then((response) => { + if (response.size === 0) { + const loading = this.$loading({ + lock: true, + text: "Loading", + spinner: "el-icon-loading", + background: "rgba(0, 0, 0, 0.7)", + }); + setTimeout(() => { + loading.close(); + }, 3000); + // this.$message.msgSuccess("鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�"); + this.$message({ + type: "warning ", + message: "鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�!", + }); + } else { + this.dialogVisible = true; + + this.url = window.webkitURL.createObjectURL(response); //灏嗗悗绔繑鍥炵殑blob鏂囦欢璇诲彇鍑簎rl + } + }); }, submitFormreply() { let data = { @@ -860,13 +1339,12 @@ hzType: this.allList[0].hzType, replyDoctorName: this.nickName, replyDeptId: this.deptId, - replyDoctorId: this.userId - - } - addReplylog(data).then(res => { + replyDoctorId: this.userId, + }; + addReplylog(data).then((res) => { this.$modal.msgSuccess("鍥炲鎴愬姛"); - this.getDept(this.allList[0].tjNumber) - }) + this.getDept(this.allList[0].tjNumber); + }); }, // 澶氶�夋閫変腑鏁版嵁 @@ -883,26 +1361,26 @@ }); // this.allList = [] // if(newRows[0].hzReplyLogsList){ - // this.hzReplyLogsList = newRows[0].hzReplyLogsList + // this.hzReplyLogsList = newRows[0].hzReplyLogsList // } // console.log(this.hzReplyLogsList) // this.allList = newRows } else { - this.allList = [] + this.allList = []; if (selection[0]) { if (selection[0].hzReplyLogsList) { - this.hzReplyLogsList = selection[0].hzReplyLogsList + this.hzReplyLogsList = selection[0].hzReplyLogsList; } } else { - this.hzReplyLogsList = [] + this.hzReplyLogsList = []; } - this.allList = selection + this.allList = selection; } }, // 鐐瑰嚮璇︽儏 handleClick(row) { - this.getDept(row.tjNumber) + this.getDept(row.tjNumber); this.loading = true; this.drawer = true; this.tableAll = row; @@ -911,6 +1389,9 @@ } if (this.tableAll.cusSex === 1) { this.tableAll.cusSex = "濂�"; + } + if (this.tableAll.cusSex === 2) { + this.tableAll.cusSex = "鏈煡"; } this.tjNumber = row.tjNumber; let num = 0; @@ -927,7 +1408,7 @@ this.radio = item.proId; this.proId = item.proId; // this.radioChange1(item.proId, item); - this.getParentIdsss() + this.getParentIdsss(); getDeptAdvice(this.proId).then((response) => { this.deptAdviceList = response.data; @@ -940,7 +1421,6 @@ this.Parent = []; this.$modal.msgError("璇ョ瀹や笅鏃犻」鐩紒"); } - }); getDeptAdvice().then((response) => { this.deptAdviceList = response.data; @@ -974,7 +1454,7 @@ if (this.proParentList.xiaoJieIds != null) { if (this.proParentList.xiaoJieIds.length != 0) { this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2) + let item = Number(item2); this.value.push(item); }); } @@ -1000,7 +1480,7 @@ if (this.proParentList.xiaoJie.length != 0) { this.Parent.forEach((item3) => { if (item3.proId === this.nums) { - this.proParentList.remark = item.remark; + this.proParentList.remark = item3.remark; } }); } else { @@ -1012,33 +1492,32 @@ getDept(val) { let data = { tjNumber: val, - deptId: this.deptId - } - hzHasDept(data).then(res => { + deptId: this.deptId, + }; + hzHasDept(data).then((res) => { if (res.data) { - this.hasdeptList = res.data - this.hasdeptList.forEach(item => { - item.hzDeptName = "" + this.hasdeptList = res.data; + this.hasdeptList.forEach((item) => { + item.hzDeptName = ""; if (item.hzType == "0") { - item.hzDeptName = "鍏ㄩ櫌浼氳瘖" + item.hzDeptName = "鍏ㄩ櫌浼氳瘖"; } else { - item.hzDeptIdList.forEach(item1 => { - this.deptList.forEach(item2 => { + item.hzDeptIdList.forEach((item1) => { + this.deptList.forEach((item2) => { if (item1 == item2.deptId) { - item.hzDeptName += item2.deptName + "," + item.hzDeptName += item2.deptName + ","; } - }) - }) + }); + }); } - }) + }); } - - }) + }); }, // 鎸夐挳鐐瑰嚮浜嬩欢 radioChange1(proParentId, item) { - this.Parentcheck = item + this.Parentcheck = item; this.$confirm( "妫�娴嬪埌浣撴缁撴灉鏈彁浜わ紝鏄惁鍦ㄧ寮�璇ラ」鐩墠鎻愪氦淇敼锛�", "纭淇℃伅", @@ -1111,7 +1590,7 @@ if (this.proParentList.xiaoJieIds != null) { if (this.proParentList.xiaoJieIds.length != 0) { this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2) + let item = Number(item2); this.value.push(item); }); } @@ -1165,7 +1644,7 @@ if (this.proParentList.xiaoJieIds != null) { if (this.proParentList.xiaoJieIds.length != 0) { this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2) + let item = Number(item2); this.value.push(item); }); } @@ -1201,6 +1680,9 @@ this.deptAdviceList = response.data; }); }); + }, + handleInConfirm(row) { + this.focusrow = row; }, handleInputConfirm(row) { @@ -1263,7 +1745,7 @@ }, }; </script> -<style scoped> +<style > .el-table .cell { -webkit-box-sizing: border-box; box-sizing: border-box; @@ -1273,6 +1755,11 @@ line-height: 23px; padding-left: 10px; padding-right: 10px; +} + +.setclass { + background-color: #f86b35; + color: black; } .blue-button { @@ -1290,6 +1777,11 @@ margin-left: calc(100% - 10%); } +.main { + height: 700px; + overflow: hidden; +} + .pag { width: 100%; display: flex; -- Gitblit v1.8.0