From c1cf70d01a5b11075170cfc6278a213833d1f799 Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期二, 10 六月 2025 16:55:57 +0800 Subject: [PATCH] 1 --- src/views/doctor/check/index.vue | 2330 +++++++++++++++++++++++++++++++--------------------------- 1 files changed, 1,244 insertions(+), 1,086 deletions(-) diff --git a/src/views/doctor/check/index.vue b/src/views/doctor/check/index.vue index b27449e..1680390 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" style="margin-right:15px;">鎼滅储</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> @@ -24,7 +24,6 @@ <template> <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="cusSex" width="60px"> @@ -36,10 +35,9 @@ </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="pacName" 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="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> @@ -73,12 +71,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> @@ -110,10 +110,6 @@ </el-option> </el-select> </el-form-item> - <!-- <el-form-item label="鐢宠鏃堕棿" prop="createTime"> - <el-date-picker v-model="form.createTime" type="datetime" placeholder="閫夋嫨鐢宠鏃堕棿"> - </el-date-picker> - </el-form-item> --> </el-form> </el-col> </el-row> @@ -138,7 +134,6 @@ <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.replyContent }}</div> </div> @@ -150,10 +145,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> @@ -198,22 +189,19 @@ </div> </el-dialog> - <!-- 鐐瑰嚮鍙宠竟寮瑰嚭灞� --> <el-drawer :visible.sync="drawer" :with-header="false" size="70%" :before-close="handleClose"> <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 +220,7 @@ 鎬у埆锛� </td> <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> - {{ tableAll.cusSex == 0? "鐢�" :tableAll.cusSex == 1?"濂�":"鏈煡"}} + {{ tableAll.cusSex == 0 ? "鐢�" : tableAll.cusSex == 1 ? "濂�" : "鏈煡" }} </td> </tr> <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> @@ -261,325 +249,320 @@ <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($event, row)" + :disabled="row.project.proName === 'BMI'" + ></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)" + :disabled="scope.row.project.sfcyyc === 1"></el-checkbox> + </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)" + :disabled="scope.row.project.sfcyyc === 1 || scope.row.project.proName === 'BMI'"></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 label="鍙傝�冭寖鍥�" width="70"> + <template slot-scope="scope"> - <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"> - <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 - > + {{ scope.row.project.proScope }} + + </template> + </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="isReturn" label="澶嶈瘖" width="60px" align="center"> + <template slot-scope="scope"> + <el-checkbox v-model="scope.row.isReturn"></el-checkbox> + </template> + </el-table-column> + <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> - <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" - 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> + </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"> + <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($event, row)" + :disabled="row.project.proName === 'BMI'" + ></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> + <el-table-column prop="exceptionDesc" label="寮傚父" width="55px" align="center"> + <template slot-scope="scope"> + <el-checkbox v-model="scope.row.exceptionDesc" :disabled="scope.row.project.sfcyyc === 1" + @change="changDesc(scope.row)"></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> + <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-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 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> + </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> - <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" - 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> + </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"> @@ -588,11 +571,130 @@ </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 === 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> + </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> </template> - <script> +import jianceResult from "@/components/jianceResult"; import proposal from "@/components/proposal"; import createproposal from "@/components/createproposal"; import { getInfoById } from "@/api/hosp/history"; @@ -610,19 +712,40 @@ 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"; + export default { dicts: ["sys_user_sex", "sys_yes_no", "tj_result_type", "lj_positive"], name: "check", - components: { Public, Historicalreport, jianqianwenzhen,createproposal,proposal }, + components: { + Public, + Historicalreport, + jianqianwenzhen, + createproposal, + proposal, + jianceResult, + }, data() { return { - creatobj:{}, + remakes: "", + titles: "", + type: null, + advice: "", + idss: [], + vaids: [], + vaids1: [], + activeNames: "first", + taocan: false, + creatobj: {}, dataText: [], propform: {}, cusobj: {}, @@ -634,11 +757,11 @@ jianqians: false, selected: false, checkval: false, - // 閬僵灞� loading: false, open: false, foropen: false, dialogVisible: false, + openOne: false, reportHistorydata: [], url: "", cateringList: [], @@ -648,26 +771,26 @@ formIn: {}, focusrow: {}, hzlogList: [], - // proDefault: "", - // dataList: [], rows: [], id: [], deptAdviceList: [], - value: [], - remark: "", //澶囨敞 + deptAdviceList1: [], + deptAdviceList2: [], + deptAdviceList3: [], + deptAdviceList4: [], + value: {}, + remark: "", remarks: "", - // 鎬绘潯鏁� total: 0, - // 缁戝畾鍗曢�夋寜閽� + total1: 0, tjStatus: "0", - // 鎶藉眽鎵撳紑鏂瑰紡 drawer: false, Parentcheck: {}, - // 鑾峰彇鎶藉眽鍒楄〃 drawerList: [], - // 鑾峰彇淇℃伅闆嗗悎 tableList: [], deptList: [], + jieguoList: [], + jyjc: null, tableAll: {}, row: {}, info: {}, @@ -677,17 +800,15 @@ form: { createTime: new Date(), }, - // 鍖荤敓 doctorName: "", - // 鐖堕」 proName: "", - // 鐖堕」Id proId: "", company: "", tjStandardGtValue: "", - // 鐢ㄦ埛琛ㄦ牸鏁版嵁 + xiangmuList: [], + name: "", userList: null, - // 鐖堕」鐩垪琛� + curindex: {}, Parent: [], hzReplyLogsList: [], hasdeptList: [], @@ -695,10 +816,8 @@ nums: "", proParentList: [], tjNumber: "", - // 鍏ㄩ儴灏忕粨 DeptadviceAll: [], project: {}, - // 灏忕粨 summaryList: [], summaryAll: [], tjOrderDetailList: [], @@ -711,7 +830,6 @@ .toJSON() .substr(0, 19) .replace("T", " "), - // 鏌ヨ鍙傛暟 queryParams: { page: 1, pageSize: 10, @@ -719,10 +837,14 @@ type: "", name: null, }, + queryParam1: { + nr: null, + page: 1, + pageSize: 10, + }, queryParam: { page: 1, pageSize: 1000, - }, rules: { hzType: [ @@ -750,6 +872,7 @@ this.$refs.inputName.focus(); }); }, + beforeDestroy() { if (this.timer) { clearInterval(this.timer); @@ -757,19 +880,545 @@ }, 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; + // 璁$畻 BMI + calculateBMI(height, weight) { + if (height && weight) { + const heightInMeters = parseFloat(height) / 100; // cm 杞崲涓� m + const weightInKg = parseFloat(weight); + const bmi = weightInKg / (heightInMeters * heightInMeters); + return bmi.toFixed(1); // 淇濈暀涓�浣嶅皬鏁� + } + return ''; + }, + + getBMIStatus(row) { + const bmi = parseFloat(row.proResult); + if (isNaN(bmi) || !row.proResult) return ''; // 澶勭悊鏃犳晥鎴栫┖鐨凚MI鍊� + if (bmi > 28) { + row.exceptionDesc = true; // 鑷姩鍕鹃�夊紓甯稿閫夋 + row.conclusion = '鍋忛珮'; // 璁剧疆缁撹 + return '鍋忛珮'; + } + if (bmi < 12) { + row.exceptionDesc = true; // 鑷姩鍕鹃�夊紓甯稿閫夋 + row.conclusion = '鍋忎綆'; // 璁剧疆缁撹 + return '鍋忎綆'; + } + row.exceptionDesc = false; // 姝e父鑼冨洿鍐呭彇娑堝嬀閫� + row.conclusion = '姝e父'; // 璁剧疆缁撹 + return '姝e父'; + }, + + // 瀹炴椂鏇存柊 BMI 骞堕獙璇佽緭鍏� + vale(value, row) { + console.log(3333) + if (row.project.proName === '韬珮' || row.project.proName === '浣撻噸') { + const heightRow = this.proParentList.sons.find( + item => item.project.proName === '韬珮' + ); + const weightRow = this.proParentList.sons.find( + item => item.project.proName === '浣撻噸' + ); + const bmiRow = this.proParentList.sons.find( + item => item.project.proName === 'BMI' + ); + + if (heightRow && weightRow && bmiRow) { + const height = row.project.proName === '韬珮' ? value : heightRow.proResult; + const weight = row.project.proName === '浣撻噸' ? value : weightRow.proResult; + const bmi = this.calculateBMI(height, weight); + bmiRow.proResult = bmi || ''; // 瀹炴椂鏇存柊BMI鍊� + this.getBMIStatus(bmiRow); // 妫�鏌MI鐘舵�佸苟鏇存柊寮傚父澶嶉�夋 + } + } + + // 鐜版湁鐨勮鍒欐鏌ラ�昏緫淇濇寔涓嶅彉 + this.focusrow = row; + this.proResult = row; + const pattern3 = new RegExp("[0-9]+"); + if (row.proResult) { } + if (pattern3.test(row.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 (row.project.sfcyyc == 1) { + return; + } else { + 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 && (this.autorule[0] || this.autorule[0].nr)) { + this.focusrow.proAdvice = this.autorule[0].nr; + } + this.autorule.forEach((item) => { + this.focusrow.conclusion += this.focusrow.conclusion ? item.bz : item.bz; + }); + } + }); + } + }, + + /* vale(value, row) { + if (row.project.proName === '韬珮' || row.project.proName === '浣撻噸') { + // 杈撳叆楠岃瘉 + if (!/^\d*\.?\d*$/.test(value) || parseFloat(value) <= 0) { + this.$message.error('璇疯緭鍏ユ湁鏁堢殑姝f暟'); + row.proResult = ''; // 娓呯┖鏃犳晥杈撳叆 + return; + } + + const heightRow = this.proParentList.sons.find( + item => item.project.proName === '韬珮' + ); + const weightRow = this.proParentList.sons.find( + item => item.project.proName === '浣撻噸' + ); + const bmiRow = this.proParentList.sons.find( + item => item.project.proName === 'BMI' + ); + + if (!heightRow || !weightRow || !bmiRow) { + + return; + } + + const height = row.project.proName === '韬珮' ? value : heightRow.proResult; + const weight = row.project.proName === '浣撻噸' ? value : weightRow.proResult; + + if (!height || !weight) { + this.$message.warning('璇峰~鍐欒韩楂樺拰浣撻噸浠ヨ绠� BMI'); + bmiRow.proResult = ''; + return; + } + + const bmi = this.calculateBMI(height, weight); + bmiRow.proResult = bmi || ''; // 瀹炴椂鏇存柊 BMI + } + }, + */ + // 杈撳叆纭鏃舵洿鏂� BMI + handleInputConfirm(row) { + if (row.proResult) { + if (row.project.proName === '韬珮' || row.project.proName === '浣撻噸') { + const heightRow = this.proParentList.sons.find( + item => item.project.proName === '韬珮' + ); + const weightRow = this.proParentList.sons.find( + item => item.project.proName === '浣撻噸' + ); + const bmiRow = this.proParentList.sons.find( + item => item.project.proName === 'BMI' + ); + + if (heightRow && weightRow && bmiRow) { + const height = heightRow.proResult; + const weight = weightRow.proResult; + const bmi = this.calculateBMI(height, weight); + bmiRow.proResult = bmi || ''; + this.getBMIStatus(bmiRow); // 妫�鏌MI鐘舵�佸苟鏇存柊寮傚父澶嶉�夋 + } + } + } + // 鐜版湁鐨勮鍒欐鏌ラ�昏緫淇濇寔涓嶅彉 + this.focusrow = row; + this.proResult = row; + const pattern3 = new RegExp("[0-9]+"); + if (pattern3.test(row.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 (row.project.sfcyyc == 1) { + return; + } else { + 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 && (this.autorule[0] || this.autorule[0].nr)) { + this.focusrow.proAdvice = this.autorule[0].nr; + } + this.autorule.forEach((item) => { + this.focusrow.conclusion += this.focusrow.conclusion ? item.bz : item.bz; + }); + } + }); + } + this.rows.push(row); + }, + /* handleInputConfirm(row, params) { + console.log(row, params, 55555); + // 濡傛灉鏈� params 涓斾负绌猴紝鍙栨秷寮傚父鐘舵�佸苟娓呯┖鐩稿叧瀛楁 + if (params && params.length === 0) { + row.exceptionDesc = false; + row.proResult = ""; + row.conclusion = ""; + row.proAdvice = ""; + row.rulesList = []; + return; + } + + // 澶勭悊 BMI 璁$畻 + if (row.proResult) { + if (row.project.proName === '韬珮' || row.project.proName === '浣撻噸') { + const heightRow = this.proParentList.sons.find( + item => item.project.proName === '韬珮' + ); + const weightRow = this.proParentList.sons.find( + item => item.project.proName === '浣撻噸' + ); + const bmiRow = this.proParentList.sons.find( + item => item.project.proName === 'BMI' + ); + + if (heightRow && weightRow && bmiRow) { + const height = heightRow.proResult; + const weight = weightRow.proResult; + const bmi = this.calculateBMI(height, weight); + bmiRow.proResult = bmi || ''; + this.getBMIStatus(bmiRow); // 妫�鏌MI鐘舵�佸苟鏇存柊寮傚父澶嶉�夋 + } + } + + this.focusrow = row; + this.proResult = row; + const pattern3 = new RegExp("[0-9]+"); + if (pattern3.test(row.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 (row.project.sfcyyc == 1) { + return; + } else { + 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 && (this.autorule[0] || this.autorule[0].nr)) { + this.focusrow.proAdvice = this.autorule[0].nr; + } + this.autorule.forEach((item) => { + this.focusrow.conclusion += this.focusrow.conclusion ? item.bz : item.bz; + }); + } + }); + } else { + let data = { + proId: this.focusrow.proId, + cusId: this.tableAll.cusId, + keyWord: this.proResult.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 (row.project.sfcyyc == 1) { + return; + } else { + 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 && (this.autorule[0] || this.autorule[0].nr)) { + this.focusrow.proAdvice = this.autorule[0].nr; + } + this.autorule.forEach((item) => { + this.focusrow.conclusion += this.focusrow.conclusion ? item.bz : item.bz; + }); } }); } - ); + + // 灏嗗綋鍓嶈娣诲姞鍒� rows 涓� + this.rows.push(row); + console.log(this.rows, row); + } + }, */ + + // 鍒濆鍖栨暟鎹椂璁$畻 BMI + getParentIdsss() { + let data = { + tjNumber: this.tjNumber, + proParentId: this.nums, + }; + getParentId(data).then((response) => { + if (response.data != {}) { + this.proParentList = response.data; + const heightRow = this.proParentList.sons.find( + item => item.project.proName === '韬珮' + ); + const weightRow = this.proParentList.sons.find( + item => item.project.proName === '浣撻噸' + ); + const bmiRow = this.proParentList.sons.find( + item => item.project.proName === 'BMI' + ); + if (heightRow && weightRow && bmiRow) { + const bmi = this.calculateBMI(heightRow.proResult, weightRow.proResult); + bmiRow.proResult = bmi || ''; + } else { + // this.$message.error('缂哄皯韬珮銆佷綋閲嶆垨 BMI 椤圭洰'); + } + this.proParentList.xiaoJie.forEach((item) => { + this.titles += item.title + ","; + }); + } + + this.loading = false; + this.value = []; + if (this.proParentList.xiaoJieIds != null) { + if (this.proParentList.xiaoJieIds.length != 0) { + this.proParentList.xiaoJieIds.forEach((item2) => { + let item = Number(item2); + this.value.push(item); + }); + } + } + this.proParentList.sons.forEach((item) => { + this.doctorName = item.doctorName; + + if (this.doctorName == null) { + this.userList.forEach((element) => { + const userName = this.$store.state.user.name; + if (userName == element.userName) { + this.doctorName = element.nickName; + } + }); + } + if (item.isReturn == 1) item.isReturn = true; + if (item.isReturn == 0) item.isReturn = false; + if (item.exceptionDesc == "1") item.exceptionDesc = true; + if (item.exceptionDesc == "0" || item.project.sfcyyc == 1) item.exceptionDesc = false; + }); + if (this.proParentList.xiaoJie && this.proParentList.xiaoJie.length != 0) { + this.Parent.forEach((item3) => { + if (item3.proId === this.nums) { + this.proParentList.remark = item3.remark; + } + }); + } else { + this.proParentList.remark = ""; + } + }); + }, + + 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.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); + }, + + handleChanges(param1, param2) { + this.row.conclusion = param1; + this.row.rulesList = param2; + }, + + handleguize(row) { + this.row = row; + this.$refs.aaa.open = true; + this.$refs.aaa.title = "璇婃柇缁撴灉缁撹"; + this.$refs.aaa.getList(this.row); + }, + + 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.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; + this.isRed = ycbz === "1"; + if (res.data.length > 0) { + this.drawer = true; + this.$nextTick(() => this.initInputDOM()); + } else { + this.$message.warning("璇ラ」鐩病鏈夌粨鏋�"); + } + }); + }, + + changRed({ row }) { + if (row.ycbz === "1") return { color: "red" }; + }, + + 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); + } + selection.forEach((item) => this.deptAdviceList2.push(item)); + this.deptAdviceList1 = [...new Set(this.deptAdviceList2.concat(this.deptAdviceList3))]; + }, + + queding() { + if (this.proParentList.xiaoJie.length != 0) { + this.remakes = ""; + this.titles = ""; + this.deptAdviceList1.forEach((item1) => { + 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.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 = 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; @@ -777,43 +1426,34 @@ this.nickName = response.user.nickName; }); }, + handleClose() { - this.$tab.refreshPage(); + this.drawer = false; // 鍙叧闂娊灞夛紝涓嶅埛鏂伴〉闈㈡垨閲嶇疆鏁版嵁 }, + handleClose1() { this.jianqians = false; }, - // 鑾峰彇鍖荤敓 + selName(val) { this.doctorName = val; - // this.userList.forEach(item =>{ - // if(val === item.userId){ - // this.doctorName = item.nickName - // } - // }) + }, + + changDesc(item) { + item.conclusion = item.exceptionDesc ? "寮傚父" : "姝e父"; }, myclass(row, column, rowIndex, columnIndex) { - if (row.row.isPositive == 1) { - return "setclass"; - } + if (row.row.isPositive == 1) return "setclass"; }, - // 灏忕粨鑾峰彇澶囨敞 + sel(val) { if (this.proParentList.xiaoJie.length != 0) { - // this.proParentList.remark = ""; this.deptAdviceList.forEach((item) => { this.ids = item.id; val.forEach((item1) => { - if ( - item1 === item.id && - !this.proParentList.remark.includes(item.title) - ) { - if (this.proParentList.remark) { - this.proParentList.remark += item.title + ","; - } else { - this.proParentList.remark = item.title + ","; - } + if (item1 === item.id && !this.proParentList.remark.includes(item.title)) { + this.proParentList.remark = this.proParentList.remark ? this.proParentList.remark + item.title + "," : item.title + ","; } }); }); @@ -822,80 +1462,38 @@ this.deptAdviceList.forEach((item) => { this.ids = item.id; val.forEach((item1) => { - if ( - item1 === item.id && - !this.proParentList.remark.includes(item.title) - ) { - if (this.proParentList.remark) { - this.proParentList.remark += item.title + ","; - } else { - this.proParentList.remark = item.title + ","; - } + if (item1 === item.id && !this.proParentList.remark.includes(item.title)) { + this.proParentList.remark = this.proParentList.remark ? this.proParentList.remark + item.title + "," : item.title + ","; } }); }); } }, - 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() { + const inputDoms = document.querySelectorAll('.el-input__inner'); + inputDoms.forEach((item, index) => item.setAttribute('data-index', index)); + this.inputDoms = 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(); - }, - // 瑙勫垯 - handleguize(row) { - this.row = row; - this.$refs.aaa.open = true; - this.$refs.aaa.title = "璇婃柇缁撴灉缁撹"; - this.$refs.aaa.getList(this.row); - }, - - handleChanges(param1, param2) { - this.row.conclusion = param1; - this.row.rulesList = param2; }, getList() { @@ -905,11 +1503,7 @@ 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.tableList = response.data.date || response.data.customers || []; this.total = response.data.total; } else { this.tableList = []; @@ -918,53 +1512,43 @@ }); }, - // 鍗曢�夋寜閽� radioChange(val) { this.queryParams.type = val; this.loading = true; getProList(this.queryParams).then((response) => { if (response.code == 200) { this.loading = false; - if (response.data) { - this.tableList = response.data.date; - this.total = response.data.total; - } else { - this.tableList = []; - } + this.tableList = response.data.date || response.data.customers || []; + this.total = response.data.total; + } else { + this.tableList = []; } }); }, - hb() { - if (this.queryParams.tjNumber != "") { - this.submitForm(); - } - }, + + hb() {}, + 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; - }); + 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.creatobj = { proParentList: this.proParentList.remark, isZj: 1 }; this.$refs.createproposal.open = true; this.$refs.createproposal.title = "甯哥敤寤鸿缁存姢"; - }else{ - this.$message({ - type: "warning ", - message: "璇峰厛濉啓鎬绘寤鸿", - }); + } else { + this.$message({ type: "warning", message: "璇峰厛濉啓鎬绘寤鸿" }); } }, - // 鎼滅储 submitForm() { this.queryParams.page = 1; this.loading = true; @@ -972,65 +1556,26 @@ getProList(this.queryParams).then((response) => { if (response.code == 200) { this.loading = false; - if (response.data) { - if (response.data.date) { - this.tableList = response.data.date; - this.queryParams.tjNumber = "" - } else { - this.tableList = response.data.customers; - this.queryParams.tjNumber = "" - } - this.total = response.data.total; - } else { - this.tableList = []; - } + this.tableList = response.data.date || response.data.customers || []; + this.total = response.data.total; + this.queryParams.tjNumber = ""; + } else { + this.tableList = []; } }); - - - // this.loading = true; - // (this.queryParams = { - // page: 1, - // pageSize: 10, - // tjNumber: this.queryParams.tjNumber, - // name: this.queryParams.name, - // }), - // getProList(this.queryParams).then((response) => { - // if (response.data) { - // if (response.data.customers) { - // this.tableList = response.data.customers; - // this.loading = false; - // this.tableList.forEach((item) => { - // this.tjStatus = item.tjStatus; - // }); - // } else { - // this.tableList = response.data.customers; - // this.tableList.forEach((item) => { - // this.tjStatus = item.tjStatus; - // }); - // } - // this.total = response.data.total; - // } else { - // this.tableList = []; - // } - // }); }, - // 閲嶇疆 + resetQuery() { this.resetForm("tableList"); this.submitForm(); - this.$nextTick(() => { - this.$refs.inputName.focus(); - }); + this.$nextTick(() => this.$refs.inputName.focus()); }, Changeapplyfor(row) { this.open = true; this.form = row; this.form.hzDoctorId = this.info.userId; - getChildList().then((res) => { - this.deptList = res.data; - }); + getChildList().then((res) => this.deptList = res.data); this.Hzlog(this.form.tjNumber); }, @@ -1061,6 +1606,7 @@ }); } }, + submitcheckval() { addBigPositive(this.formIn).then((res) => { this.$modal.msgSuccess("鏂板鎴愬姛"); @@ -1068,36 +1614,31 @@ this.checkval = false; }); }, + cancell() { this.checkval = false; this.vals.isPositive = "0"; }, Hzlog(val) { - let data = { - tjNumber: val, - }; + let data = { tjNumber: val }; listHzlog(data).then((response) => { this.hzlogList = response.rows; this.hzlogList.forEach((item) => { - item.hzDeptName = ""; - if (item.hzType == "0") { - item.hzDeptName = "鍏ㄩ櫌浼氳瘖"; - } else { + item.hzDeptName = item.hzType == "0" ? "鍏ㄩ櫌浼氳瘖" : ""; + if (item.hzType != "0") { item.hzDeptIdList.forEach((item1) => { this.deptList.forEach((item2) => { - if (item1 == item2.deptId) { - item.hzDeptName += item2.deptName + ","; - } + if (item1 == item2.deptId) item.hzDeptName += item2.deptName + ","; }); }); } }); }); }, + handledele(row) { - this.id = []; - this.id.push(row.id); + this.id = [row.id]; delHzlog(this.id).then((res) => { this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); this.Hzlog(this.form.tjNumber); @@ -1107,55 +1648,14 @@ 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() { let data = {}; this.userList.forEach((item1) => { - if (this.form.hzDoctorId == item1.userId) { - this.form.hzDoctorName = item1.nickName; - } + if (this.form.hzDoctorId == item1.userId) this.form.hzDoctorName = item1.nickName; }); 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) { @@ -1190,7 +1690,7 @@ hzDoctorName: this.form.hzDoctorName, id: this.form.id, }; - if (this.form.hzDeptId.length != 0) { + if (this.form.hzDeptId?.length) { addHzlog(data).then((res) => { if (res.code == 200) { this.$modal.msgSuccess("鐢宠鎴愬姛"); @@ -1210,6 +1710,7 @@ this.$modal.msgError("璇烽�夋嫨浼氳瘖绉戝"); } }, + cancel() { this.open = false; this.foropen = false; @@ -1219,32 +1720,24 @@ this.foropen = true; this.Hzlog(this.tableAll.tjNumber); }, + historicalreport() { this.baogaoqian = false; this.baogaohou = true; this.loading = true; - let data = { - cusId: this.tableAll.cusId, - }; + let data = { cusId: this.tableAll.cusId }; reportHistory(data).then((res) => { this.loading = false; - if (res.data[0] != null) { - this.reportHistorydata = res.data; - } - if (this.reportHistorydata.length >= 1) { - this.lishi = true; - } else { - this.lishi = true; - this.$modal.msgError("鏆傛棤鍘嗗彶鎶ュ憡"); - } + if (res.data[0] != null) this.reportHistorydata = res.data; + this.lishi = this.reportHistorydata.length >= 1; + if (!this.lishi) this.$modal.msgError("鏆傛棤鍘嗗彶鎶ュ憡"); }); }, jianqian() { this.flags = true; this.jianqians = true; - let tjNumber = this.tableAll.tjNumber; - this.jianqianwenzhendata.push(tjNumber); + this.jianqianwenzhendata.push(this.tableAll.tjNumber); }, handlecan(row) { @@ -1259,21 +1752,15 @@ 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湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�!", - }); + setTimeout(() => loading.close(), 3000); + this.$message({ type: "warning", message: "鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�" }); } else { this.dialogVisible = true; - - this.url = window.webkitURL.createObjectURL(response); //灏嗗悗绔繑鍥炵殑blob鏂囦欢璇诲彇鍑簎rl + this.url = window.webkitURL.createObjectURL(response); } }); }, + submitFormreply() { let data = { hzId: this.allList[0].id, @@ -1295,7 +1782,6 @@ }); }, - // 澶氶�夋閫変腑鏁版嵁 handleSelectionChange(selection) { if (selection.length > 1) { const newRows = selection.filter((it, index) => { @@ -1307,18 +1793,10 @@ 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]) { - if (selection[0].hzReplyLogsList) { - this.hzReplyLogsList = selection[0].hzReplyLogsList; - } + if (selection[0].hzReplyLogsList) this.hzReplyLogsList = selection[0].hzReplyLogsList; } else { this.hzReplyLogsList = []; } @@ -1326,41 +1804,26 @@ } }, - // 鐐瑰嚮璇︽儏 handleClick(row) { 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 = "鏈煡"; - // } this.tjNumber = row.tjNumber; let num = 0; - getParentList(this.tjNumber).then((response) => { + getParentList(this.tjNumber,this.tjStatus).then((response) => { if (response.data) { this.loading = false; this.Parent = response.data; this.Parent.forEach((item) => { - if (item.type === 1) { - item.proName += " 鉁�"; - } + if (item.type === 1) item.proName += " 鉁�"; if (num === 0) { this.nums = item.proId; this.radio = item.proId; this.proId = item.proId; - // this.radioChange1(item.proId, item); this.getParentIdsss(); - - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + this.getbzlist(); } num = num + 1; }); @@ -1370,99 +1833,20 @@ this.$modal.msgError("璇ョ瀹や笅鏃犻」鐩紒"); } }); - getDeptAdvice().then((response) => { - this.deptAdviceList = response.data; - }); - - // getSons(this.tjNumber).then((response) => { - // response.data.forEach(item1 => { - // if (item1.parent == '鑲濆姛妫�鏌�') { - // this.DeptadviceAll = item1.parentAdvices - // } - // }) - // }); - - // 鑾峰彇灏忕粨 - // getDeptadvice().then((response) => { - // response.data.forEach(item => { - // this.DeptadviceAll = item - // }) - // }); - }, - - getParentIdsss() { - let data = { - tjNumber: this.tjNumber, - proParentId: this.nums, - }; - getParentId(data).then((response) => { - this.proParentList = response.data; - - this.loading = false; - this.value = []; - if (this.proParentList.xiaoJieIds != null) { - if (this.proParentList.xiaoJieIds.length != 0) { - this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2); - this.value.push(item); - }); - } - } - this.proParentList.sons.forEach((item) => { - this.doctorName = item.doctorName; - if (this.doctorName == null) { - this.userList.forEach((element) => { - const userName = this.$store.state.user.name; - if (userName == element.userName) { - this.doctorName = element.nickName; - } - }); - } - - if (item.isReturn == 1) { - item.isReturn = true; - } - if (item.isReturn == 0) { - item.isReturn = false; - } - - if (item.exceptionDesc == "1") { - item.exceptionDesc = true; - } - if (item.exceptionDesc == "0") { - item.exceptionDesc = false; - } - }); - if (this.proParentList.xiaoJie.length != 0) { - this.Parent.forEach((item3) => { - if (item3.proId === this.nums) { - this.proParentList.remark = item3.remark; - } - }); - } else { - this.proParentList.remark = ""; - } - }); + this.getbzlist(); }, getDept(val) { - let data = { - tjNumber: val, - deptId: this.deptId, - }; + let data = { tjNumber: val, deptId: this.deptId }; hzHasDept(data).then((res) => { if (res.data) { this.hasdeptList = res.data; this.hasdeptList.forEach((item) => { - item.hzDeptName = ""; - if (item.hzType == "0") { - item.hzDeptName = "鍏ㄩ櫌浼氳瘖"; - } else { + item.hzDeptName = item.hzType == "0" ? "鍏ㄩ櫌浼氳瘖" : ""; + if (item.hzType != "0") { item.hzDeptIdList.forEach((item1) => { this.deptList.forEach((item2) => { - if (item1 == item2.deptId) { - item.hzDeptName += item2.deptName + ","; - } + if (item1 == item2.deptId) item.hzDeptName += item2.deptName + ","; }); }); } @@ -1472,46 +1856,28 @@ }, handleTabClick(tab, event) { - // console.log(tab, event); - // console.log(tab.name); - this.Parent.forEach(item => { - if (tab.name == item.proId) { - this.Parentcheck = item; - } - }) + this.Parent.forEach((item) => { + if (tab.name == item.proId) this.Parentcheck = item; + }); - this.$confirm( - "妫�娴嬪埌浣撴缁撴灉鏈彁浜わ紝鏄惁鍦ㄧ寮�璇ラ」鐩墠鎻愪氦淇敼锛�", - "纭淇℃伅", - { - distinguishCancelAndClose: true, - confirmButtonText: "鎻愪氦", - cancelButtonText: "涓嶄繚瀛橈紝绂诲紑", - } - ) + this.$confirm("妫�娴嬪埌浣撴缁撴灉鏈彁浜わ紝鏄惁鍦ㄧ寮�璇ラ」鐩墠鎻愪氦淇敼锛�", "纭淇℃伅", { + distinguishCancelAndClose: true, + confirmButtonText: "鎻愪氦", + cancelButtonText: "涓嶄繚瀛橈紝绂诲紑", + }) .then(() => { - // 浣撴鍙� let tjNumber = this.tableAll.tjNumber; this.userList.forEach((item) => { - if (this.doctorName == item.nickName) { - this.doctorName = item.userId; - } + if (this.doctorName == item.nickName) this.doctorName = item.userId; }); this.proParentList.sons.forEach((item) => { if (this.rows) { this.rows.forEach((item1) => { - if (item1 === item) { - item = item1; - } - // if (item.isReturn == true) { - // item.isReturn = 1; - // } - // if (item.isReturn == false) { - // item.isReturn = 0; - // } + if (item1 === item) item = item1; }); } this.tjOrderDetail.push({ + proAdvice: item.proAdvice, proName: item.project.proName, proId: item.project.proId, orderDetailId: item.orderDetailId, @@ -1525,359 +1891,46 @@ }); }); - var data = [ - { - tjNumber, - proId: this.proId, - remark: this.proParentList.remark, // 澶囨敞 - proName: this.proName, //鐖堕」 - summaryList: this.value, //灏忕粨 - doctorName: this.doctorName, - tjOrderDetailList: this.tjOrderDetail, - }, - ]; - getaddRemark(data).then((res) => { - this.$modal.msgSuccess("鎻愪氦鎴愬姛"); - }); - this.proName = item.proName; - this.nums = tab.name; - this.proId = tab.name; - var data = { - tjNumber: this.tjNumber, - proParentId: this.nums, - }; - getParentId(data).then((response) => { - this.proParentList = response.data; - this.value = []; - if (this.proParentList.xiaoJieIds != null) { - if (this.proParentList.xiaoJieIds.length != 0) { - this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2); - this.value.push(item); - }); - } - } - this.proParentList.sons.forEach((item) => { - this.doctorName = item.doctorName; - if (this.doctorName == null) { - this.userList.forEach((element) => { - const userName = this.$store.state.user.name; - if (userName == element.userName) { - this.doctorName = element.nickName; - } - }); - } - if (item.isReturn == 1) { - item.isReturn = true; - } - if (item.isReturn == 0) { - item.isReturn = false; - } - - if (item.exceptionDesc == "1") { - item.exceptionDesc = true; - } - if (item.exceptionDesc == "0") { - item.exceptionDesc = false; - } - }); - 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; - }); - }) - .catch((action) => { - if(action === "cancel"){ - this.$message({ - type: "warning", - message: "鏀惧純淇濆瓨骞剁寮�", - }); - } - + var data = [{ + tjNumber, + proId: this.proId, + remark: this.proParentList.remark, + proName: this.proName, + summaryList: this.value, + doctorName: this.doctorName, + tjOrderDetailList: this.tjOrderDetail, + }]; + getaddRemark(data).then((res) => this.$modal.msgSuccess("鎻愪氦鎴愬姛")); this.proName = this.Parentcheck.proName; this.nums = tab.name; this.proId = tab.name; - let data = { - tjNumber: this.tjNumber, - proParentId: this.nums, - }; - getParentId(data).then((response) => { - this.proParentList = response.data; - this.value = []; - if (this.proParentList.xiaoJieIds != null) { - if (this.proParentList.xiaoJieIds.length != 0) { - this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2); - this.value.push(item); - }); - } - } - this.proParentList.sons.forEach((item) => { - this.doctorName = item.doctorName; - if (this.doctorName == null) { - this.userList.forEach((element) => { - const userName = this.$store.state.user.name; - if (userName == element.userName) { - this.doctorName = element.nickName; - } - }); - } - if (item.isReturn == 1) { - item.isReturn = true; - } - if (item.isReturn == 0) { - item.isReturn = false; - } - - if (item.exceptionDesc == "1") { - item.exceptionDesc = true; - } - if (item.exceptionDesc == "0") { - item.exceptionDesc = false; - } - }); - 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; - }); - }); - }, - - // 鎸夐挳鐐瑰嚮浜嬩欢 - radioChange1(proParentId, item) { - this.Parentcheck = item; - this.$confirm( - "妫�娴嬪埌浣撴缁撴灉鏈彁浜わ紝鏄惁鍦ㄧ寮�璇ラ」鐩墠鎻愪氦淇敼锛�", - "纭淇℃伅", - { - distinguishCancelAndClose: true, - confirmButtonText: "鎻愪氦", - cancelButtonText: "涓嶄繚瀛橈紝绂诲紑", - } - ) - .then(() => { - // 浣撴鍙� - let tjNumber = this.tableAll.tjNumber; - this.userList.forEach((item) => { - if (this.doctorName == item.nickName) { - this.doctorName = item.userId; - } - }); - this.proParentList.sons.forEach((item) => { - if (this.rows) { - this.rows.forEach((item1) => { - if (item1 === item) { - item = item1; - } - // if (item.isReturn == true) { - // item.isReturn = 1; - // } - // if (item.isReturn == false) { - // item.isReturn = 0; - // } - }); - } - this.tjOrderDetail.push({ - proName: item.project.proName, - proId: item.project.proId, - orderDetailId: item.orderDetailId, - flowingWaterId: item.flowingWaterId, - proResult: item.proResult, - tjStatus: 1, - isReturn: item.isReturn === true ? 1 : 0, - exceptionDesc: item.exceptionDesc === true ? 1 : 0, - conclusion: item.conclusion, - rulesList: item.rulesList, - }); - }); - - var data = [ - { - tjNumber, - proId: this.proId, - remark: this.proParentList.remark, // 澶囨敞 - proName: this.proName, //鐖堕」 - summaryList: this.value, //灏忕粨 - doctorName: this.doctorName, - tjOrderDetailList: this.tjOrderDetail, - }, - ]; - getaddRemark(data).then((res) => { - this.$modal.msgSuccess("鎻愪氦鎴愬姛"); - }); - this.proName = item.proName; - this.nums = proParentId; - this.proId = proParentId; - var data = { - tjNumber: this.tjNumber, - proParentId: this.nums, - }; - getParentId(data).then((response) => { - this.proParentList = response.data; - this.value = []; - if (this.proParentList.xiaoJieIds != null) { - if (this.proParentList.xiaoJieIds.length != 0) { - this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2); - this.value.push(item); - }); - } - } - this.proParentList.sons.forEach((item) => { - this.doctorName = item.doctorName; - if (this.doctorName == null) { - this.userList.forEach((element) => { - const userName = this.$store.state.user.name; - if (userName == element.userName) { - this.doctorName = element.nickName; - } - }); - } - if (item.isReturn == 1) { - item.isReturn = true; - } - if (item.isReturn == 0) { - item.isReturn = false; - } - - if (item.exceptionDesc == "1") { - item.exceptionDesc = true; - } - if (item.exceptionDesc == "0") { - item.exceptionDesc = false; - } - }); - if (this.proParentList.xiaoJie.length != 0) { - this.Parent.forEach((item3) => { - if (item3.proId === proParentId) { - this.remark = item.remark; - } - }); - } else { - this.remark = ""; - } - }); - - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + this.getParentIdsss(); + this.getbzlist(); }) .catch((action) => { - if(action === "cancel"){ - this.$message({ - type: "warning", - message: "鏀惧純淇濆瓨骞剁寮�", - }); - } - this.proName = item.proName; - this.nums = proParentId; - this.proId = proParentId; - let data = { - tjNumber: this.tjNumber, - proParentId: this.nums, - }; - getParentId(data).then((response) => { - this.proParentList = response.data; - this.value = []; - if (this.proParentList.xiaoJieIds != null) { - if (this.proParentList.xiaoJieIds.length != 0) { - this.proParentList.xiaoJieIds.forEach((item2) => { - let item = Number(item2); - this.value.push(item); - }); - } - } - this.proParentList.sons.forEach((item) => { - this.doctorName = item.doctorName; - if (this.doctorName == null) { - this.userList.forEach((element) => { - const userName = this.$store.state.user.name; - if (userName == element.userName) { - this.doctorName = element.nickName; - } - }); - } - if (item.isReturn == 1) { - item.isReturn = true; - } - if (item.isReturn == 0) { - item.isReturn = false; - } - - if (item.exceptionDesc == "1") { - item.exceptionDesc = true; - } - if (item.exceptionDesc == "0") { - item.exceptionDesc = false; - } - }); - if (this.proParentList.xiaoJie.length != 0) { - this.Parent.forEach((item3) => { - if (item3.proId === proParentId) { - this.remark = item.remark; - } - }); - } else { - this.remark = ""; - } - }); - - getDeptAdvice(this.proId).then((response) => { - this.deptAdviceList = response.data; - }); + if (action === "cancel") this.$message({ type: "warning", message: "鏀惧純淇濆瓨骞剁寮�" }); + this.proName = this.Parentcheck.proName; + this.nums = tab.name; + this.proId = tab.name; + this.getParentIdsss(); + this.getbzlist(); }); }, - handleInConfirm(row) { - this.focusrow = row; - }, - handleInputConfirm(row) { - this.rows.push(row); - }, - // 鐐瑰嚮纭 determine() { - // 浣撴鍙� + this.tjOrderDetail = []; let tjNumber = this.tableAll.tjNumber; this.userList.forEach((item) => { - if (this.doctorName == item.nickName) { - this.doctorName = item.userId; - } + if (this.doctorName == item.nickName) this.doctorName = item.userId; }); this.proParentList.sons.forEach((item) => { if (this.rows) { this.rows.forEach((item1) => { - if (item1 === item) { - item = item1; - } - // if (item.isReturn == true) { - // item.isReturn = 1; - // } - // if (item.isReturn == false) { - // item.isReturn = 0; - // } + if (item1 === item) item = item1; }); } this.tjOrderDetail.push({ + proAdvice: item.proAdvice, proName: item.project.proName, proId: item.project.proId, orderDetailId: item.orderDetailId, @@ -1891,19 +1944,18 @@ }); }); - let data = [ - { - tjNumber, - proId: this.proId, - remark: this.proParentList.remark, // 澶囨敞 - proName: this.proName, //鐖堕」 - summaryList: this.value, //灏忕粨 - doctorName: this.doctorName, - tjOrderDetailList: this.tjOrderDetail, - }, - ]; + let data = [{ + tjNumber, + proId: this.proId, + remark: this.proParentList.remark, + proName: this.proName, + summaryList: this.vaids1, + doctorName: this.doctorName, + tjOrderDetailList: this.tjOrderDetail, + }]; getaddRemark(data).then((res) => { this.$modal.msgSuccess("鎻愪氦鎴愬姛"); + this.rows = []; // 鎻愪氦鎴愬姛鍚庢竻绌� this.rows this.drawer = false; }); this.handleClose(); @@ -1911,7 +1963,11 @@ }, }; </script> -<style> +<style lang="scss" scoped> +.a { + position: relative; +} + .el-table .cell { -webkit-box-sizing: border-box; box-sizing: border-box; @@ -1934,7 +1990,6 @@ } .el-button--medium { - padding: 4px 14px; font-size: 14px; } @@ -1967,4 +2022,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