From 333626d05a8ce4cf553e2a1e3fed1259d0814fb1 Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期一, 21 四月 2025 18:11:03 +0800 Subject: [PATCH] 1 --- src/views/doctor/check/index.vue | 1591 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 1,110 insertions(+), 481 deletions(-) diff --git a/src/views/doctor/check/index.vue b/src/views/doctor/check/index.vue index ce52fdc..b97caf5 100644 --- a/src/views/doctor/check/index.vue +++ b/src/views/doctor/check/index.vue @@ -10,7 +10,7 @@ @blur="hb" @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" style="margin-right: 15px">鎼滅储</el-button> <el-button size="mini" @click="resetQuery">閲嶇疆</el-button> </el-form-item> </el-form> @@ -73,12 +73,14 @@ <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> @@ -150,10 +152,6 @@ </div> </el-col> </el-row> - <!-- <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitFormapply">纭� 瀹�</el-button> - <el-button @click="cancel">鍙� 娑�</el-button> - </div> --> </el-dialog> <el-dialog title="濉啓鏄惁閲嶅ぇ闃虫��" :visible.sync="checkval" width="800px" append-to-body> @@ -203,17 +201,17 @@ <div style="font-size: 14px"> <table style=" width: 96%; - height:70px; + height: 70px; margin: 10px 10px; - margin-bottom:10px; + margin-bottom: 10px; border: 1px solid #dfe6ec; border-collapse: collapse; - font-size:16px + font-size: 16px; " cellspacing="4"> <caption style="background-color: #f8f8f9; font-size: 18px"> 濉啓{{ - tableAll.cusName - }}鐨勪綋妫�璧勬枡 + tableAll.cusName + }}鐨勪綋妫�璧勬枡 </caption> <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> @@ -232,7 +230,13 @@ 鎬у埆锛� </td> <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> - {{ tableAll.cusSex }} + {{ + tableAll.cusSex == 0 + ? "鐢�" + : tableAll.cusSex == 1 + ? "濂�" + : "鏈煡" + }} </td> </tr> <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> @@ -261,313 +265,515 @@ <div style="margin: 10px 10px"> <el-button type="primary" size="mini" @click="jianqian">妫�鍓嶉棶璇�</el-button> </div> + <div style="margin: 10px 10px"> + <el-button type="primary" size="mini" @click="result">妫�鏌ユ楠岀粨鏋�</el-button> + </div> </div> <el-row> <el-col v-show="baogaoqian"> <template> - <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px;"> - <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index"> - <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" fixed="left"> - <!-- <template slot-scope="scope"> - {{ scope.row.project.proName }} - </template> --> - </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="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> + <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px"> + <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index" :lazy="false"> + <el-table class="bgc" v-loading="loading" :data="proParentList.sons" border height="460px" + style="width: 96%; margin: 10px 10px" :row-class-name="tableRowClassName"> + <el-table-column prop="project.proName" label="妫�娴嬮」鐩�" width="150"> + </el-table-column> + <el-table-column prop="proResult" label="妫�娴嬬粨鏋�" width="150"> + + <template slot-scope="{ row, $index }"> + <el-input type="textarea" autosize size="mini" v-model="row.proResult" :ref="`input-item${index}-row${$index}`" + @keydown.enter.native="keyInputConfirm($event,index,$index)" @focus="handleFocus(row)" + @blur="handleInputConfirm(row)" @input="vale"></el-input> + </template> + </el-table-column> + <el-table-column prop="exceptionDesc" label="寮傚父" width="55px" align="center"> + <template slot-scope="scope"> + <el-checkbox v-model="scope.row.exceptionDesc" @change="changDesc(scope.row)"></el-checkbox> + </template> + </el-table-column> + <el-table-column label="瑙勫垯" width="70"> + <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="鍗曚綅" width="55"> + </el-table-column> + <el-table-column prop="project.proScope" label="鍙傝�冭寖鍥�" width="70"> + </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> - <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> + <el-table-column prop="isReturn" label="澶嶈瘖" width="60px" align="center"> + <template slot-scope="scope"> + <el-checkbox v-model="scope.row.isReturn"></el-checkbox> + </template> + </el-table-column> - <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-table-column prop="isPositive" label="閲嶅ぇ闃虫��" width="55"> + <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-column prop="proAdvice" label="缁撴灉寤鸿"> + <template slot-scope="scope"> + <el-popover placement="top" trigger="hover" width="400"> + <div> + {{ scope.row.proAdvice }} + </div> + <div slot="reference" class="jianyi"> + <el-input type="textarea" autosize v-model="scope.row.proAdvice" placeholder="璇疯緭鍏ョ粨鏋滃缓璁�" + :disabled="true"></el-input> + </div> + </el-popover> + </template> + </el-table-column> + </el-table> + + <div style="font-size: 14px; overflow-y: auto; height: 286px" class="a"> + <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 @click="bzxz" style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + "> + <el-input type="textarea" placeholder="璇烽�夋嫨鍐呭" v-model="titles" rows="2"> + </el-input> + </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"> + <div style="margin: 0 0px 10px 15px"> + <el-button type="primary" @click="propoChange" + style="margin-top: 10px; height: 37px">蹇嵎寤鸿</el-button> + <el-button type="primary" @click="proposalChange" + style="margin-top: 10px; height: 37px">鐢熸垚寤鸿</el-button> + </div> + <el-input type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" v-model="proParentList.remark" rows="7"> + </el-input> + </td> + </tr> + </table> + + <div slot="footer" class="dialog-footers1"> + <el-button type="primary" @click="determine">鎻� 浜�</el-button> + </div> + </div> </el-tab-pane> </el-tabs> </template> - <!-- <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-col> <el-col :span="18" v-show="baogaohou"> <template> - <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px;"> - <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index"> - <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" fixed="left"> - <!-- <template slot-scope="scope"> - {{ scope.row.project.proName }} - </template> --> - </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="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> + <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px"> + <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index" :lazy="false"> + <el-table class="bgc" v-loading="loading" :data="proParentList.sons" border height="460px" + style="width: 96%; margin: 10px 10px" :row-class-name="tableRowClassName"> + <el-table-column prop="project.proName" label="妫�娴嬮」鐩�" width="100"> + </el-table-column> + <el-table-column prop="proResult" label="妫�娴嬬粨鏋�" width="150"> + <!-- slot-scope="scope" --> + <template slot-scope="{ row, $index }"> + <el-input type="textarea" autosize size="mini" v-model="row.proResult" :ref="`input-item${index}-row${$index}`" + @keydown.enter.native="keyInputConfirm($event,index,$index)" @focus="handleFocus(row)" + @blur="handleInputConfirm(row)" ></el-input> + <!-- @input="vale" --> + <!-- <el-input type="textarea" autosize size="mini" v-model="scope.row.proResult" autocomplete="off" :ref="`input-${scope.$index}-${scope.row.proResult}`" + placeholder="璇疯緭鍏ユ娴嬬粨鏋�" @keyup=" + keyInputConfirm($event,scope.$index,'proResult') + " @focus="handleFocus(scope.row)" @blur="handleInputConfirm(scope.row)" + @input="vale"></el-input> --> + </template> + </el-table-column> + <el-table-column label="瑙勫垯" width="70"> + <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="鍗曚綅" width="55"> + </el-table-column> + <el-table-column prop="project.proScope" label="鍙傝�冭寖鍥�" width="80"> + </el-table-column> - <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> + <el-table-column prop="exceptionDesc" label="寮傚父" width="55px" 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="55px" align="center"> + <template slot-scope="scope"> + <el-checkbox v-model="scope.row.isReturn"></el-checkbox> + </template> + </el-table-column> - <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-table-column prop="isPositive" label="閲嶅ぇ闃虫��" width="55"> + <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-column prop="proAdvice" label="缁撴灉寤鸿"> + <template slot-scope="scope"> + <el-popover placement="top" trigger="hover" width="400"> + <div> + {{ scope.row.proAdvice }} + </div> + <div slot="reference" class="jianyi"> + <el-input type="textarea" autosize v-model="scope.row.proAdvice" placeholder="璇疯緭鍏ョ粨鏋滃缓璁�" + :disabled="true"></el-input> + </div> + </el-popover> + </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-input type="textarea" placeholder="璇烽�夋嫨鍐呭" v-model="titles" rows="2"> + </el-input> + <!-- <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; + "> + <div style="margin: 0 0px 10px 15px"> + <el-button type="primary" @click="propoChange" + style="margin-top: 10px; height: 37px">蹇嵎寤鸿</el-button> + <el-button type="primary" @click="proposalChange" + style="margin-top: 10px; height: 37px">鐢熸垚寤鸿</el-button> + </div> + <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" @click="determine">鎻� 浜�</el-button> + </div> + </div> </el-tab-pane> </el-tabs> </template> - <!-- <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-col> <el-col :span="6" style="margin-top: 15px"> <Historicalreport v-show="lishi" :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"> - <tr align="center"> - <th>妫�娴嬮」鐩�</th> - <th>妫�娴嬬粨鏋�</th> - <th>鍗曚綅</th> - <th>鍙傝�冭寖鍥�</th> - </tr> - - <tr> - <td>{{ item.project.proName }}</td> - <td><el-input v-model="item.proResult" placeholder="璇疯緭鍏ュ唴瀹�"></el-input></td> - <td>{{ item.standard.company }}</td> - <td>{{ item.standard.tjStandardGtValue + "-" + item.standard.tjStandardLtValue }}</td> - </tr> - <tr> - <td>灏忕粨锛�</td> - <td> - <el-select v-model="item.value" multiple filterable placeholder="璇烽�夋嫨" style="width:100%"> - <el-option v-for="item in proParentList.parentAdvice" :key="item.id" :label="item.title" - :value="item.id"> - </el-option> - </el-select> - </td> - <td>涓绘鍖诲笀锛�</td> - <td>{{ item.doctorName }}</td> - </tr> - <tr> - <td>澶囨敞锛�</td> - <td colspan="2"> - <el-input type="textarea" autosize placeholder="璇疯緭鍏ュ唴瀹�" v-model="item.remark"> - </el-input> - </td> - </tr> - </table> - <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="determine">纭� 瀹�</el-button> - </div> - </div> --> </el-drawer> <Public ref="aaa" :row="row" @add="handleChanges" /> - + <jianceResult ref="bbb" @add="handleChangesZt" /> <el-dialog title="鎻愮ず" :visible.sync="jianqians" width="1000px" :before-close="handleClose1"> <jianqianwenzhen :jianqianwenzhendata="jianqianwenzhendata" v-if="flags"></jianqianwenzhen> <span slot="footer" class="dialog-footer"> <el-button @click="jianqians = false">鍙� 娑�</el-button> + </span> + </el-dialog> + <proposal ref="proposal" :cusobj="cusobj" @event1="eventchange($event)" /> + <createproposal ref="createproposal" :creatobj="creatobj" /> + + <!-- 妫�鏌ユ楠岀粨鏋滄寜閽殑寮规 --> + <el-dialog title="妫�鏌ユ楠岀粨鏋�" :visible.sync="openOne" width="80%"> + <div style=" + width: 100%; + margin-left: 10px; + display: flex; + justify-content: space-around; + "> + <div style="width: 44%"> + <el-table v-loading="loading" border :data="xiangmuList" height="520" ref="tab1" highlight-current-row> + <el-table-column label="绉戝" align="center" prop="deptName" width="100" :show-overflow-tooltip="true" /> + <el-table-column label="椤圭洰" align="center" prop="proName" width="150" :show-overflow-tooltip="true" /> + <el-table-column label="鐘舵��" align="center" prop="type" :show-overflow-tooltip="true" width="100"> + <template slot-scope="scope"> + <span v-if="scope.row.type == '0'" :style="type == 0 ? { color: 'red' } : { color: '#409EFF' }"> + {{ type == 0 ? "鏈� 妫�" : "鍦� 妫�" }} + </span> + <span v-if="scope.row.type == '1'">宸插畬鎴�</span> + <span v-if="scope.row.type == '2'">寮冩</span> + <span v-if="scope.row.type == '3'">寤舵湡</span> + </template> + </el-table-column> + + <el-table-column label="妫�鏌ユ椂闂�" align="center" prop="bcupdateTime" width="160" /> + + <el-table-column label="鎿嶄綔" align="center" width="120px"> + <template slot-scope="scope"> + <!-- <el-button + size="mini" + type="text" + :disabled="scope.row.type === 1" + @click="qijian(scope.row)" + >{{ scope.row.type === 0 ? "寮冩" : "鎭㈠" }}</el-button + > --> + + <el-button size="mini" type="text" :disabled="scope.row.type === 0 || scope.row.type === 2" + @click="queryResultone(scope.row)">缁撴灉鏌ヨ</el-button> + </template> + </el-table-column> + </el-table> + </div> + <div style="width: 44%; margin-left: 20px"> + <div style="text-align: center; background-color: #aad8df"> + {{ name || "" }} + </div> + <div class="a"> + <div v-if="jyjc == 0"> + <el-table :data="jieguoList" border :row-style="changRed" height="520" highlight-current-row + style="width: 100%" :header-cell-style="{ background: '#AAD8DF' }"> + <el-table-column label="妫�娴嬮」鐩�" prop="pro_name"> + </el-table-column> + <el-table-column label="妫�娴嬬粨鏋�" prop="pro_result"> + </el-table-column> + <el-table-column label="鍙傝�冭寖鍥�" prop="ckfw"> + </el-table-column> + </el-table> + </div> + + <div v-if="jyjc == 1"> + <div style="text-align: center; background-color: #aad8df"></div> + <div class="check-result-container"> + <div class="check-item"> + <div class="check-title">妫�鏌ユ墍瑙侊細</div> + <div class="check-description" :style="{ color: isRed ? 'red' : '' }"> + {{ jieguoList[0].pro_result }} + </div> + </div> + + <div class="check-item"> + <div class="check-title">妫�鏌ョ粨璁猴細</div> + <div class="check-description" :style="{ color: isRed ? 'red' : '' }"> + {{ jieguoList[0].yxzd || "鏆傛棤缁撹" }} + </div> + </div> + </div> + </div> + </div> + </div> + </div> + </el-dialog> + + <el-dialog title="閫夋嫨鐥呯" :visible.sync="taocan" width="80%" height="700px" :close-on-click-modal="false"> + <el-tabs type="border-card" style="min-height: 538px; margin: 0 10px; width: 100%" @tab-click="handleClick" + v-model="activeNames"> + <el-tab-pane label="鐥呯" name="first"> + <div class="tab8"> + <div class="tab3"> + <el-form @submit.native.prevent :model="queryParam1" ref="tableList" :inline="true" label-width="76px" + style="margin-top: 10px"> + <el-form-item> + <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="queryParam1.nr" clearable> + </el-input> + </el-form-item> + + <el-form-item> + <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuerys">鎼滅储</el-button> + </el-form-item> + </el-form> + <el-table ref="multipleTable" border :data="deptAdviceList" height="430px" + @selection-change="handleSelectionChanges"> + <el-table-column type="selection" width="40"> </el-table-column> + <el-table-column prop="title" label="鐥呯鍚嶇О" align="center" width="130px"></el-table-column> + <el-table-column prop="advice" label="寤鸿" align="center" :show-overflow-tooltip="true"> + </el-table-column> + </el-table> + <pagination v-show="total1 > 0" :total="total1" :page.sync="queryParam1.page" + :limit.sync="queryParam1.pageSize" @pagination="getbzlist" /> + </div> + <div class="tab4"> + <div class="tab4_txt"> + <h4>宸查�夌梾绉�</h4> + </div> + + <el-table border :data="deptAdviceList1" height="430px"> + <el-table-column prop="title" label="鐥呯鍚嶇О" align="center"> + </el-table-column> + <el-table-column label="鎿嶄綔" align="center" fixed="right" class-name="small-padding fixed-width" + width="50px"> + <template slot-scope="scope"> + <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" + title="鍒犻櫎"></el-button> + </template> + </el-table-column> + </el-table> + <!-- <el-table + :data="DataList" + border + style="width: 100%" + height="400" + :span-method="objectSpanMethod" + > + <el-table-column prop="propinName" label="妫�鏌ラ」鐩�"> + </el-table-column> + <el-table-column + prop="proName" + label="鏄庣粏椤圭洰" + width="260px" + > + </el-table-column> + <el-table-column prop="proPrice" label="鍘熶环" width="56px"> + </el-table-column> + + <el-table-column + label="鎿嶄綔" + align="center" + fixed="right" + class-name="small-padding fixed-width" + width="50px" + > + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-delete" + @click="handleDelete(scope.row)" + title="鍒犻櫎" + ></el-button> + </template> + </el-table-column> + </el-table> --> + + <!-- <el-collapse v-model="activeName" accordion v-if="list1"> + <div> + <el-collapse-item title="璇烽�夋嫨椤圭洰"> + <el-table + :data="DataList" + border + style="width: 100%" + height="400" + :span-method="objectSpanMethod" + > + <el-table-column + prop="proName" + label="椤圭洰" + width="180" + > + </el-table-column> + <el-table-column prop="ordPrice" label="鍘熶环"> + </el-table-column> + </el-table> + </el-collapse-item> + </div> + </el-collapse> --> + </div> + </div> + </el-tab-pane> + </el-tabs> + <span slot="footer" class="dialog-footer"> + <el-button @click="taocan = false">鍙� 娑�</el-button> + <el-button type="primary" @click="queding">纭� 瀹�</el-button> </span> </el-dialog> </div> @@ -575,6 +781,9 @@ <script> +import jianceResult from "@/components/jianceResult"; +import proposal from "@/components/proposal"; +import createproposal from "@/components/createproposal"; import { getInfoById } from "@/api/hosp/history"; import jianqianwenzhen from "@/components/jianqianwenzhen"; import Public from "@/components/public"; @@ -590,18 +799,43 @@ getParentId, getDeptAdvice, reportHistory, + getAdviceByTjNumAndPro, + getXm, } from "@/api/doctor/check"; 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 { getlistUser } from "@/api/system/user"; import { getChildList } from "@/api/system/dept"; +import { resultList } from "@/api/doctor/examination"; +import { selectZT } from "@/api/system/package"; +import { get } from "sortablejs"; export default { dicts: ["sys_user_sex", "sys_yes_no", "tj_result_type", "lj_positive"], name: "check", - components: { Public, Historicalreport, jianqianwenzhen }, + components: { + Public, + Historicalreport, + jianqianwenzhen, + createproposal, + proposal, + jianceResult, + }, data() { return { + remakes: "", + titles: "", + type: null, + advice: "", + idss: [], + vaids: [], + vaids1: [], + activeNames: "first", + taocan: false, + creatobj: {}, + dataText: [], + propform: {}, + cusobj: {}, baogaoqian: true, baogaohou: false, flags: false, @@ -615,6 +849,7 @@ open: false, foropen: false, dialogVisible: false, + openOne: false, reportHistorydata: [], url: "", cateringList: [], @@ -629,11 +864,16 @@ rows: [], id: [], deptAdviceList: [], - value: [], + deptAdviceList1: [], + deptAdviceList2: [], + deptAdviceList3: [], + deptAdviceList4: [], + value: {}, remark: "", //澶囨敞 remarks: "", // 鎬绘潯鏁� total: 0, + total1: 0, // 缁戝畾鍗曢�夋寜閽� tjStatus: "0", // 鎶藉眽鎵撳紑鏂瑰紡 @@ -644,6 +884,8 @@ // 鑾峰彇淇℃伅闆嗗悎 tableList: [], deptList: [], + jieguoList: [], + jyjc: null, tableAll: {}, row: {}, info: {}, @@ -661,9 +903,12 @@ proId: "", company: "", tjStandardGtValue: "", + xiangmuList: [], + name: "", // 鐢ㄦ埛琛ㄦ牸鏁版嵁 userList: null, // 鐖堕」鐩垪琛� + curindex: {}, Parent: [], hzReplyLogsList: [], hasdeptList: [], @@ -695,10 +940,14 @@ type: "", name: null, }, + queryParam1: { + nr: null, + page: 1, + pageSize: 10, + }, queryParam: { page: 1, pageSize: 1000, - }, rules: { hzType: [ @@ -733,19 +982,219 @@ }, methods: { - /** 鏌ヨ鐢ㄦ埛鍒楄〃 */ - getListUser() { - listUser().then( - (response) => { - this.userList = response.rows; - this.userList.forEach((element) => { - const userName = this.$store.state.user.name; - if (userName == element.userName) { - this.doctorName = element.nickName; - } + handleFocus(row) { + this.autorule = []; + if (!row.resultType || row.resultType == 2 ) { + return; + } else { + this.curindex = row; + selectZT({ + proId: row.proId, + }).then((res) => { + if (res.data.length > 0) { + this.$refs.bbb.title = "閫夋嫨妫�娴嬬粨鏋�"; + // this.$refs.bbb.proId = row.proId; + this.$refs.bbb.open = true; + this.$refs.bbb.getList(this.curindex); + } else { + this.$refs.bbb.open = false; + } + }); + + } + }, + handleChangesZt(params) { + this.curindex.proResult = params.map((item) => item.ruleStr).join(","); + this.handleInputConfirm(this.curindex, params); + }, + tableRowClassName({ row }) { + if (row.exceptionDesc) { + return "warning-row"; + } + return ""; + }, + getbzlist() { + this.loading = true; + getDeptAdvice(this.queryParam1).then((response) => { + + if (response.data.list) { + this.deptAdviceList = response.data.list; + this.loading = false + } + + this.total1 = response.data.total; + }); + }, + /** 鎼滅储鎸夐挳鎿嶄綔 */ + handleQuerys() { + this.queryParam1.page = 1; + this.getbzlist(); + }, + bzxz() { + this.taocan = true; + let data = { + proId: this.proId, + tjNum: this.tableAll.tjNumber, + }; + getAdviceByTjNumAndPro(data).then((res) => { + if (res.data) { + // this.deptAdviceList2 = []; + this.deptAdviceList3 = res.data; + this.deptAdviceList1 = [ + ...new Set(this.deptAdviceList2.concat(this.deptAdviceList3)), + ]; + this.deptAdviceList3.forEach((items) => { + this.idss.push(items.id); + this.remakes += items.advice + ","; }); } - ); + }); + }, + // 妫�鏌ユ楠岀粨鏋滄寜閽� + result() { + let tjNumber = this.tableAll.tjNumber; + + getXm(tjNumber).then((res) => { + this.xiangmuList = res.data; + if (this.xiangmuList.length > 0) { + this.openOne = true; + } + else { + this.openOne = false; + this.$modal.msgWarning("鏆傛棤椤圭洰涓庢鏌ユ楠岀粨鏋�") + } + }); + }, + queryResultone(row) { + const tjNum = this.tableAll.tjNumber; + const proId = row.proId; + resultList(tjNum, proId).then((res) => { + this.jieguoList = res.data; + + this.jyjc = this.jieguoList[0].jyjc; + const ycbz = this.jieguoList[0].ycbz; + // 璁剧疆鏄惁闇�瑕佹敼鍙橀鑹� + if (ycbz === "1") { + this.isRed = true; // 璁剧疆鏍囪瘑锛屾敼鍙樺瓧浣撻鑹� + } else { + this.isRed = false; // 鎭㈠榛樿棰滆壊 + } + + if (res.data.length > 0) { + this.drawer = true; + this.$nextTick(() => { + this.initInputDOM() + }) + } else { + this.$message.warning("璇ラ」鐩病鏈夌粨鏋�"); + } + }); + }, + changRed({ row }) { + if (row.ycbz != "" && row.ycbz != null && row.ycbz === "1") { + // 鍙橀鑹茬殑鏉′欢 + return { + color: "red", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor + }; + } + }, + /** 鍒犻櫎鎸夐挳鎿嶄綔 */ + handleDelete(row) { + this.deptAdviceList1.forEach((item, index) => { + if (item.id == row.id) { + this.deptAdviceList1.splice(index, 1); + } + }); + }, + handleSelectionChanges(selection) { + this.deptAdviceList2 = this.deptAdviceList1; + if (selection.length > 1) { + const del_row = selection.shift(); + this.$refs.multipleTable.toggleRowSelection(del_row, false); + } + + // this.selectArr = selection; + selection.forEach((item) => { + this.deptAdviceList2.push(item); + }); + this.deptAdviceList1 = [ + ...new Set(this.deptAdviceList2.concat(this.deptAdviceList3)), + ]; + }, + + queding() { + if (this.proParentList.xiaoJie.length != 0) { + // this.proParentList.remark = ""; + this.remakes = ""; + this.titles = ""; + // this.deptAdviceList.forEach((item) => { + // this.ids = item.id; + this.deptAdviceList1.forEach((item1) => { + // if ( + // item1.id === item.id && + // !this.proParentList.remark.includes(item.title) + // ) { + if (this.proParentList.remark != null) { + this.titles += item1.title + ","; + this.remakes += item1.advice + ","; + this.proParentList.remark = + this.proParentList.remark + this.remakes; + this.value += item1.title + ","; + this.vaids.push(item1.id); + this.vaids1 = this.vaids.concat(this.idss); + } else { + this.titles += item1.title + ","; + this.proParentList.remark = item1.advice + ","; + this.value += item1.title + ","; + this.vaids.push(item1.id); + this.vaids1 = this.vaids.concat(this.idss); + } + // } + }); + // }); + this.taocan = false; + } else { + // this.proParentList.remark = ""; + this.titles = ""; + this.remakes = ""; + + this.deptAdviceList1.forEach((item) => { + this.titles += item.title + ","; + this.remakes += item.advice + ","; + this.vaids.push(item.id); + this.vaids1 = this.vaids.concat(this.idss); + }); + + if (this.proParentList.remark != null) { + this.proParentList.remark = ""; + + let data = { + tjNumber: this.tjNumber, + proParentId: this.nums, + }; + getParentId(data).then((response) => { + this.proParentList = response.data; + this.proParentList.remark = + this.remakes + this.proParentList.remark; + }); + } else { + this.proParentList.remark = this.remakes; + } + + this.taocan = false; + } + }, + /** 鏌ヨ鐢ㄦ埛鍒楄〃 */ + getListUser() { + getlistUser().then((response) => { + this.userList = response.data; + this.userList.forEach((element) => { + const userName = this.$store.state.user.name; + if (userName == element.userName) { + this.doctorName = element.nickName; + } + }); + }); getInfo().then((response) => { this.info = response.user; this.deptId = response.user.deptId; @@ -754,7 +1203,9 @@ }); }, handleClose() { - this.$tab.refreshPage(); + // 鍙埛鏂拌〃鏍兼暟鎹� + this.getList(); + this.drawer = false; }, handleClose1() { this.jianqians = false; @@ -769,6 +1220,14 @@ // }) }, + changDesc(item) { + if (item.exceptionDesc == true) { + item.conclusion = "寮傚父" + } else { + item.conclusion = "姝e父" + } + }, + myclass(row, column, rowIndex, columnIndex) { if (row.row.isPositive == 1) { return "setclass"; @@ -777,7 +1236,7 @@ // 灏忕粨鑾峰彇澶囨敞 sel(val) { if (this.proParentList.xiaoJie.length != 0) { - this.proParentList.remark = ""; + // this.proParentList.remark = ""; this.deptAdviceList.forEach((item) => { this.ids = item.id; val.forEach((item1) => { @@ -812,56 +1271,135 @@ }); } }, + vale(value) { + // 浣犲彲浠ュ湪杩欓噷澶勭悊杈撳叆浜嬩欢 + console.log("杈撳叆鍐呭:", value); + }, - 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; - } - }); + initInputDOM() { + // 鑾峰彇id涓簍able-form涓嬬殑鎵�鏈塱nput 妗� + const inputDoms = document.querySelectorAll('.el-input__inner') + // 閬嶅巻杩欎釜input妗嗙粰浠栦滑涓�涓爣璇� + inputDoms.forEach((item, index) => { + item.setAttribute('data-index', index) + }) + this.inputDoms = inputDoms + // console.log(this.inputDoms) + }, + keyInputConfirm(event,index, currentRowIndex) { + // 闃绘榛樿鍥炶溅琛屼负锛屾瘮濡傛彁浜よ〃鍗� + event.preventDefault(); + event.stopPropagation() + const nextRowIndex = currentRowIndex + 1; // 璁$畻涓嬩竴琛岀储寮� + // 濡傛灉涓嬩竴琛屽瓨鍦紝鍒欒仛鐒﹁琛岀殑杈撳叆妗� + if (nextRowIndex < this.proParentList.sons.length) { + this.$nextTick(() => { + const nextInputRef = `input-item${index}-row${nextRowIndex}`; + const nextInput = this.$refs[nextInputRef]; + if (nextInput) { + // 澶勭悊 ref 鍙兘涓烘暟缁勭殑鎯呭喌锛堝鍔ㄦ�佹覆鏌擄級 + const target = Array.isArray(nextInput) ? nextInput[0] : nextInput; + target.focus(); // 鑱氱劍杈撳叆妗� + // target.select(); // 鍙�夛細閫変腑鏂囨湰 } }); } - // this.$refs.aaa.open = true; - // this.$refs.aaa.getList(); }, - // 瑙勫垯 + handleInputConfirm(datas, params) { + if (params && params.length === 0) { + // 濡傛灉娌℃湁閫変腑浠讳綍椤圭洰锛屽彇娑堝紓甯稿閫夋鐨勯�変腑鐘舵�� + this.curindex.exceptionDesc = false; + this.curindex.proResult = ""; + this.curindex.conclusion = ""; + this.curindex.proAdvice = ""; + this.curindex.rulesList = []; + // console.log("鍑哄彂浜�"); + return; // 杩欓噷鐨� return 浼氭彁鍓嶇粨鏉熷嚱鏁版墽琛� + } + + if (datas.proResult) { + this.focusrow = 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, + tjNum: this.tableAll.tjNumber, + keyNum: this.proResult.proResult, + }; + AutoGetRule(data).then((res) => { + this.focusrow.conclusion = ""; + if (res.data) { + this.autorule = res.data; + this.focusrow.rulesList = res.data; + if (res.data.length > 0) { + const conditions = ["姝e父", "鏈寮傚父", "闃存��", "鏈鏄庢樉寮傚父"]; + this.focusrow.exceptionDesc = !conditions.some((condition) => + this.autorule[0].bz.includes(condition) + ); + } else { + this.focusrow.exceptionDesc = false; + } + if(this.autorule.length != 0){ + if( this.autorule[0]||this.autorule[0].nr){ + this.focusrow.proAdvice = this.autorule[0].nr; + } + } + + this.autorule.forEach((item) => { + if (this.focusrow.conclusion) { + this.focusrow.conclusion += item.bz; + } else { + this.focusrow.conclusion += item.bz; + } + }); + } + }); + } else { + let data = { + proId: this.focusrow.proId, + cusId: this.tableAll.cusId, + keyWord: this.proResult, + tjNum: this.tableAll.tjNumber, + keyNum: this.proResult.proResult, + }; + AutoGetRule(data).then((res) => { + this.focusrow.conclusion = ""; + if (res.data) { + this.autorule = res.data; + this.focusrow.rulesList = res.data; + if (res.data.length > 0) { + const conditions = ["姝e父", "鏈寮傚父", "闃存��", "鏈鏄庢樉寮傚父"]; + this.focusrow.exceptionDesc = !conditions.some((condition) => + this.autorule[0].bz.includes(condition) + ); + } else { + this.focusrow.exceptionDesc = false; + } + if(this.autorule.length != 0){ + if( this.autorule[0]||this.autorule[0].nr){ + this.focusrow.proAdvice = this.autorule[0].nr; + } + } + + + this.autorule.forEach((item) => { + if (this.focusrow.conclusion) { + this.focusrow.conclusion += item.bz; + } else { + this.focusrow.conclusion += item.bz; + } + }); + // this.rows.push(this.focusrow); + } + }); + } + this.rows.push(datas); + } + }, + handleguize(row) { this.row = row; this.$refs.aaa.open = true; @@ -911,8 +1449,32 @@ }); }, hb() { - if (this.queryParams.tjNumber != "") { - this.submitForm(); + /* if (this.queryParams.tjNumber != "") { + // this.submitForm(); + } */ + }, + propoChange() { + this.cusobj = { sex: this.tableAll.cusSex, isZj: 1 }; + this.$refs.proposal.open = true; + this.$refs.proposal.title = "寤鸿鏂规"; + // this.$refs.proposal.getList(); + }, + eventchange(data) { + this.dataText = data; + data.forEach((item) => { + this.proParentList.remark += item.advice; + }); + }, + proposalChange() { + if (this.proParentList.remark) { + this.creatobj = { proParentList: this.proParentList.remark, isZj: 1 }; + this.$refs.createproposal.open = true; + this.$refs.createproposal.title = "甯哥敤寤鸿缁存姢"; + } else { + this.$message({ + type: "warning ", + message: "璇峰厛濉啓鎬绘寤鸿", + }); } }, @@ -927,10 +1489,10 @@ if (response.data) { if (response.data.date) { this.tableList = response.data.date; - this.queryParams.tjNumber = "" + this.queryParams.tjNumber = ""; } else { this.tableList = response.data.customers; - this.queryParams.tjNumber = "" + this.queryParams.tjNumber = ""; } this.total = response.data.total; } else { @@ -938,7 +1500,6 @@ } } }); - // this.loading = true; // (this.queryParams = { @@ -1059,16 +1620,6 @@ hadleedit(row) { 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() { @@ -1079,35 +1630,6 @@ } }); if (this.form.hzType != undefined) { - // 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) { @@ -1259,12 +1781,6 @@ return false; } }); - // this.allList = [] - // if(newRows[0].hzReplyLogsList){ - // this.hzReplyLogsList = newRows[0].hzReplyLogsList - // } - // console.log(this.hzReplyLogsList) - // this.allList = newRows } else { this.allList = []; if (selection[0]) { @@ -1283,19 +1799,26 @@ this.getDept(row.tjNumber); this.loading = true; this.drawer = true; + this.$nextTick(() => { + this.initInputDOM() + }) this.tableAll = row; - if (this.tableAll.cusSex === 0) { - this.tableAll.cusSex = "鐢�"; - } - if (this.tableAll.cusSex === 1) { - this.tableAll.cusSex = "濂�"; - } - if (this.tableAll.cusSex === 2) { - this.tableAll.cusSex = "鏈煡"; - } + // if (this.tableAll.cusSex === 0) { + // this.tableAll.cusSex = "鐢�"; + // } + // if (this.tableAll.cusSex === 1) { + // this.tableAll.cusSex = "濂�"; + // } + // if (this.tableAll.cusSex === 2) { + // this.tableAll.cusSex = "鏈煡"; + // } this.tjNumber = row.tjNumber; let num = 0; - getParentList(this.tjNumber).then((response) => { + let data = { + type:this.tjStatus, + tjNumber:this.tjNumber + } + getParentList(data).then((response) => { if (response.data) { this.loading = false; this.Parent = response.data; @@ -1310,9 +1833,7 @@ // this.radioChange1(item.proId, item); this.getParentIdsss(); - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + this.getbzlist(); } num = num + 1; }); @@ -1322,9 +1843,7 @@ this.$modal.msgError("璇ョ瀹や笅鏃犻」鐩紒"); } }); - getDeptAdvice().then((response) => { - this.deptAdviceList = response.data; - }); + this.getbzlist(); // getSons(this.tjNumber).then((response) => { // response.data.forEach(item1 => { @@ -1348,7 +1867,13 @@ proParentId: this.nums, }; getParentId(data).then((response) => { - this.proParentList = response.data; + if (response.data != {}) { + this.proParentList = response.data; + this.proParentList.xiaoJie.forEach((item) => { + this.titles += item.title + ","; + // this.advice += item.advice + ","; + }); + } this.loading = false; this.value = []; @@ -1385,12 +1910,14 @@ item.exceptionDesc = false; } }); - if (this.proParentList.xiaoJie.length != 0) { - this.Parent.forEach((item3) => { - if (item3.proId === this.nums) { - this.proParentList.remark = item3.remark; - } - }); + if (this.proParentList.xiaoJie) { + if (this.proParentList.xiaoJie.length != 0) { + this.Parent.forEach((item3) => { + if (item3.proId === this.nums) { + this.proParentList.remark = item3.remark; + } + }); + } } else { this.proParentList.remark = ""; } @@ -1424,13 +1951,11 @@ }, handleTabClick(tab, event) { - // console.log(tab, event); - // console.log(tab.name); - this.Parent.forEach(item => { + this.Parent.forEach((item) => { if (tab.name == item.proId) { this.Parentcheck = item; } - }) + }); this.$confirm( "妫�娴嬪埌浣撴缁撴灉鏈彁浜わ紝鏄惁鍦ㄧ寮�璇ラ」鐩墠鎻愪氦淇敼锛�", @@ -1455,15 +1980,11 @@ if (item1 === item) { item = item1; } - // if (item.isReturn == true) { - // item.isReturn = 1; - // } - // if (item.isReturn == false) { - // item.isReturn = 0; - // } }); } this.tjOrderDetail.push({ + proAdvice: item.proAdvice, + proName: item.project.proName, proId: item.project.proId, orderDetailId: item.orderDetailId, @@ -1498,6 +2019,7 @@ tjNumber: this.tjNumber, proParentId: this.nums, }; + this.loading = true; getParentId(data).then((response) => { this.proParentList = response.data; this.value = []; @@ -1533,26 +2055,29 @@ item.exceptionDesc = false; } }); - if (this.proParentList.xiaoJie.length != 0) { - this.Parent.forEach((item3) => { - if (item3.proId === tab.name) { - this.remark = this.Parentcheck.remark; - } - }); + if (this.proParentList.xiaoJie) { + if (this.proParentList.xiaoJie.length != 0) { + this.Parent.forEach((item3) => { + if (item3.proId === tab.name) { + this.remark = this.Parentcheck.remark; + } + }); + } } else { this.remark = ""; } }); - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + this.getbzlist(); }) .catch((action) => { - this.$message({ - type: "warning", - message: action === "cancel" ? "鏀惧純淇濆瓨骞剁寮�" : "鍋滅暀鍦ㄥ綋鍓嶉〉闈�", - }); + if (action === "cancel") { + this.$message({ + type: "warning", + message: "鏀惧純淇濆瓨骞剁寮�", + }); + } + this.proName = this.Parentcheck.proName; this.nums = tab.name; this.proId = tab.name; @@ -1595,20 +2120,20 @@ item.exceptionDesc = false; } }); - if (this.proParentList.xiaoJie.length != 0) { - this.Parent.forEach((item3) => { - if (item3.proId === tab.name) { - this.remark = this.Parentcheck.remark; - } - }); + if (this.proParentList.xiaoJie) { + if (this.proParentList.xiaoJie.length != 0) { + this.Parent.forEach((item3) => { + if (item3.proId === tab.name) { + this.remark = this.Parentcheck.remark; + } + }); + } } else { this.remark = ""; } }); - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + this.getbzlist(); }); }, @@ -1647,6 +2172,8 @@ }); } this.tjOrderDetail.push({ + proAdvice: item.proAdvice, + proName: item.project.proName, proId: item.project.proId, orderDetailId: item.orderDetailId, @@ -1727,15 +2254,15 @@ } }); - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + this.getbzlist(); }) .catch((action) => { - this.$message({ - type: "warning", - message: action === "cancel" ? "鏀惧純淇濆瓨骞剁寮�" : "鍋滅暀鍦ㄥ綋鍓嶉〉闈�", - }); + if (action === "cancel") { + this.$message({ + type: "warning", + message: "鏀惧純淇濆瓨骞剁寮�", + }); + } this.proName = item.proName; this.nums = proParentId; this.proId = proParentId; @@ -1789,21 +2316,16 @@ } }); - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + this.getbzlist(); }); }, - handleInConfirm(row) { - this.focusrow = row; - }, - handleInputConfirm(row) { - this.rows.push(row); - }, // 鐐瑰嚮纭 determine() { - // 浣撴鍙� + // 娓呯┖鏁扮粍 + this.tjOrderDetail = []; + + // 鍘熸湁浠g爜 let tjNumber = this.tableAll.tjNumber; this.userList.forEach((item) => { if (this.doctorName == item.nickName) { @@ -1825,6 +2347,7 @@ }); } this.tjOrderDetail.push({ + proAdvice: item.proAdvice, proName: item.project.proName, proId: item.project.proId, orderDetailId: item.orderDetailId, @@ -1844,7 +2367,7 @@ proId: this.proId, remark: this.proParentList.remark, // 澶囨敞 proName: this.proName, //鐖堕」 - summaryList: this.value, //灏忕粨 + summaryList: this.vaids1, //灏忕粨 doctorName: this.doctorName, tjOrderDetailList: this.tjOrderDetail, }, @@ -1858,7 +2381,11 @@ }, }; </script> -<style> +<style lang="scss" scoped> +.a { + position: relative; +} + .el-table .cell { -webkit-box-sizing: border-box; box-sizing: border-box; @@ -1881,7 +2408,6 @@ } .el-button--medium { - padding: 4px 14px; font-size: 14px; } @@ -1914,4 +2440,107 @@ .el-message * { color: var(--white) !important; } + +.tab8 { + width: 100%; + display: flex; + justify-content: space-between; +} + +.tab3 { + width: 68%; +} + +.tab4 { + margin-top: 6px; + width: 30%; +} + +.tab4_txt { + display: flex; + justify-content: center; +} + +::v-deep .el-table .warning-row { + background: #ffe6e6 !important; + /* 杞诲井鐨勭孩鑹茶儗鏅� */ +} + +::v-deep .bgc .el-table__body tr:hover>td { + background-color: #ffe6e6 !important; +} + +::v-deep .bgc .el-table__cell { + padding: 5px 0 !important; +} + +.jianyi { + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; + overflow: hidden; + text-overflow: ellipsis; + cursor: pointer; + font-size: 12px; +} + +::v-deep .el-checkbox__input.is-checked .el-checkbox__inner { + background-color: #66cc66; + border-color: #66cc66; +} + +.dialog-footers1 { + position: fixed; + bottom: 0; + left: 63%; + transform: translateX(-50%); + display: flex; + justify-content: center; + align-items: center; + z-index: 1000; + /* 纭繚鎸夐挳灞傜骇鍦ㄥ叾浠栧唴瀹逛笂鏂� */ + width: 300px; + background-color: white; + /* 鍙牴鎹渶瑕佽皟鏁磋儗鏅鑹� */ +} + +/* 纭繚鎸夐挳涔嬮棿鏈夊悎閫傜殑闂磋窛 */ +.dialog-footers1 .el-button { + margin: 0 5px; +} + +.check-result-container { + // background-color: #fafafa; + padding: 20px; + border-radius: 8px; + // box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); + margin: 0 auto; + max-width: 700px; +} + +.check-item { + margin-bottom: 20px; +} + +.check-title { + font-size: 16px; + font-weight: bold; + color: #333; + // margin-bottom: 8px; +} + +.check-description { + font-size: 14px; + color: #555; + /* 涓伆鑹叉枃瀛� */ + line-height: 1.6; + /* 琛岄珮锛屽鍔犲彲璇绘�� */ + padding: 8px 0; + /* 涓婁笅鍐呰竟璺� */ +} + +.check-description.no-result { + color: #bbb; + /* 濡傛灉娌℃湁缁撹锛屾枃瀛椾负娣$伆鑹� */ +} </style> -- Gitblit v1.8.0