From 00d4894e071f319e36ac8de5a8f34cbdf445bbe3 Mon Sep 17 00:00:00 2001
From: lkk <364857242@qq.com>
Date: 星期三, 14 五月 2025 08:56:56 +0800
Subject: [PATCH] 1

---
 src/views/doctor/check/index.vue | 2381 +++++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 1,660 insertions(+), 721 deletions(-)

diff --git a/src/views/doctor/check/index.vue b/src/views/doctor/check/index.vue
index 8ee401a..262aa2c 100644
--- a/src/views/doctor/check/index.vue
+++ b/src/views/doctor/check/index.vue
@@ -1,68 +1,31 @@
 <template>
   <div>
-    <el-form
-      :model="queryParams"
-      ref="tableList"
-      :inline="true"
-      label-width="76px"
-      style="margin-top: 10px"
-    >
+    <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px">
       <el-form-item label="濮撳悕" prop="name">
-        <el-input
-          v-model="queryParams.name"
-          style="width: 116px"
-          placeholder="璇疯緭鍏ュ鍚�"
-          clearable
-          @keyup.enter.native="handleQuery"
-        ></el-input>
+        <el-input v-model="queryParams.name" style="width: 116px" placeholder="璇疯緭鍏ュ鍚�" clearable
+          @keyup.enter.native="submitForm"></el-input>
       </el-form-item>
       <el-form-item label="浣撴鍙�" prop="tjNumber">
-        <el-input
-          ref="inputName"
-          v-model="queryParams.tjNumber"
-          style="width: 240px"
-          placeholder="璇疯緭鍏ヤ綋妫�鍙�"
-        ></el-input>
+        <el-input ref="inputName" v-model="queryParams.tjNumber" style="width: 240px" placeholder="璇疯緭鍏ヤ綋妫�鍙�" clearable
+          @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>
-
-    <el-radio-group
-      v-model="tjStatus"
-      @input="radioChange"
-      style="margin-left: 30px"
-    >
-      <el-radio-button label="0">鏈</el-radio-button>
-      <el-radio-button label="1">宸叉</el-radio-button>
-    </el-radio-group>
+    <div style="display: flex">
+      <el-radio-group v-model="tjStatus" @input="radioChange" style="margin-left: 30px">
+        <el-radio-button label="0">鏈</el-radio-button>
+        <el-radio-button label="1">宸叉</el-radio-button>
+      </el-radio-group>
+    </div>
 
     <template>
-      <el-table
-        :data="tableList"
-        v-loading="loading"
-        ref="table"
-        height="536px"
-        style="margin: 20px; width: 98%"
-        border=""
-      >
-        <!-- <template slot="empty">鏁版嵁姝e湪鍔犺浇涓�</template> -->
-        <el-table-column
-          label="浣撴鍙�"
-          align="center"
-          prop="tjNumber"
-          width="180px"
-        />
-        <el-table-column
-          label="濮撳悕"
-          align="center"
-          prop="cusName"
-          width="100px"
-        />
+      <el-table :data="tableList" v-loading="loading" ref="table" height="536px" style="margin: 20px; width: 98%" border
+        :cell-class-name="myclass">
+        <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" width="160px" />
+        <el-table-column label="濮撳悕" align="center" prop="cusName" width="90px" />
         <el-table-column label="鎬у埆" align="center" prop="cusSex" width="60px">
           <template slot-scope="scope">
             <span v-if="scope.row.cusSex == '0'">鐢�</span>
@@ -71,107 +34,177 @@
             <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span>
           </template>
         </el-table-column>
-        <el-table-column
-          label="鍑虹敓鏃ユ湡"
-          align="center"
-          prop="cusBrithday"
-          width="120px"
-        />
-        <el-table-column
-          label="鐢佃瘽"
-          align="center"
-          prop="cusPhone"
-          width="120px"
-        />
-        <!-- <el-table-column
-          label="鐘舵��"
-          align="center"
-          prop="tjStatus"
-          :show-overflow-tooltip="true"
-          width="80px"
-        >
+        <el-table-column label="鍑虹敓鏃ユ湡" align="center" prop="cusBrithday" 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="100px">
           <template slot-scope="scope">
-            <span>{{ scope.row.tjStatus == "1" ? "宸叉" : "鏈" }}</span>
+            <span>{{ parseTime(scope.row.tjTime, "{y}-{m}-{d}") }}</span>
           </template>
-        </el-table-column> -->
-
-        <el-table-column
-          label="浣撴绫诲瀷"
-          align="center"
-          prop="tjType"
-          width="80px"
-        />
-        <el-table-column
-          label="鐧昏鏃堕棿"
-          align="center"
-          prop="createTime"
-          width="160px"
-        />
-        <el-table-column
-          label="浣撴鏃堕棿"
-          align="center"
-          prop="tjTime"
-          width="120px"
-        />
-        <el-table-column
-          label="鏈椤�"
-          prop="notCheckeds"
-          :show-overflow-tooltip="true"
-        />
-        <el-table-column label="鎿嶄綔" align="center" width="80px">
+        </el-table-column>
+        <el-table-column label="鏈椤�" prop="notCheckeds" :show-overflow-tooltip="true" />
+        <el-table-column label="鎿嶄綔" align="center" width="130px">
           <template slot-scope="scope">
-            <el-button
-              type="primary"
-              size="mini"
-              @click="handleClick(scope.row)"
-              >璇︽儏</el-button
-            >
+            <el-button type="primary" icon="el-icon-first-aid-kit" size="mini" @click="Changeapplyfor(scope.row)"
+              title="浼氳瘖鐢宠" v-if="tjStatus == '1'"></el-button>
+            <el-button type="primary" icon="el-icon-share" size="mini" @click="handleClick(scope.row)"
+              title="璇︽儏"></el-button>
           </template>
         </el-table-column>
       </el-table>
 
       <div class="pag">
         <div class="pag1">
-          <pagination
-            v-show="total > 0"
-            :total="total"
-            :page.sync="queryParams.page"
-            :limit.sync="queryParams.pageSize"
-            @pagination="getList"
-          />
+          <pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.pageSize"
+            @pagination="getList" />
         </div>
       </div>
     </template>
-    <!-- 鐐瑰嚮鍙宠竟寮瑰嚭灞� -->
-    <el-drawer
-      :visible.sync="drawer"
-      :with-header="false"
-      size="70%"
-      :before-close="handleClose"
-    >
+
+    <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body>
+      <el-row>
+        <el-col :span="9" v-if="hzlogList.length >= 1">
+          <h3>浼氳瘖鐢宠璁板綍</h3>
+          <el-table :data="hzlogList" style="width: 100%" border>
+            <el-table-column label="鐢宠浜�" align="center" prop="hzDoctorName" width="100px" />
+            <el-table-column label="绉戝" align="center" prop="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>
+              </template>
+            </el-table-column>
+          </el-table>
+        </el-col>
+        <el-col :span="14">
+          <h3 style="text-align: center">浼氳瘖璁板綍鐢宠</h3>
+          <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+            <el-form-item label="濮撳悕" prop="cusName">
+              <el-input v-model="form.cusName" placeholder="璇疯緭鍏ュ鍚�" disabled />
+            </el-form-item>
+            <el-form-item label="浣撴鍙�" prop="tjNumber">
+              <el-input v-model="form.tjNumber" placeholder="璇疯緭鍏ヤ綋妫�鍙�" disabled />
+            </el-form-item>
+            <el-form-item label="浼氳瘖绉戝" prop="hzType">
+              <el-radio-group v-model="form.hzType">
+                <el-radio-button label="0">鍏ㄩ櫌浼氳瘖</el-radio-button>
+                <el-radio-button label="1">绉戝浼氳瘖</el-radio-button>
+              </el-radio-group>
+            </el-form-item>
+            <el-form-item label="閫夋嫨绉戝" v-if="form.hzType == '1'" style="margin-top: 22px">
+              <el-select v-model="form.hzDeptId" multiple filterable style="width: 100%">
+                <el-option v-for="item in deptList" :key="item.deptId" :label="item.deptName"
+                  :value="item.deptId"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="鐢宠浜�" prop="hzDoctorId" style="margin-top: 22px">
+              <el-select v-model="form.hzDoctorId" placeholder="璇烽�夋嫨" style="width: 100%" filterable>
+                <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-form>
+        </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="title" :visible.sync="foropen" width="1000px" append-to-body>
+      <el-row>
+        <el-col :span="8" v-if="hasdeptList.length >= 1">
+          <h3 style="text-align: center">浼氳瘖鐢宠璁板綍</h3>
+          <el-table :data="hasdeptList" style="width: 100%" border ref="tab" @selection-change="handleSelectionChange">
+            <el-table-column type="selection" width="50" align="center" />
+            <el-table-column label="鐢宠浜�" align="center" prop="hzDoctorName" width="100px" />
+            <el-table-column label="绉戝" align="center" prop="hzDeptName" width="260px" />
+          </el-table>
+        </el-col>
+        <el-col :span="16" style="padding: 0 10px">
+          <h3 style="text-align: center">浼氳瘖鎰忚</h3>
+          <div v-if="hzReplyLogsList.length >= 1" style="margin-bottom: 10px">
+            <div v-for="(item, index) in hzReplyLogsList" :key="index"
+              style="padding-bottom: 5px; border-bottom: 1px solid black">
+              <div>鍖荤敓锛歿{ item.hzDoctorName }}</div>
+              <div>鍥炲锛歿{ item.replyContent }}</div>
+            </div>
+          </div>
+          <el-input type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" v-model="textarea">
+          </el-input>
+          <div style="padding: 10px 10px">
+            <el-button type="primary" @click="submitFormreply">鍥炲</el-button>
+          </div>
+        </el-col>
+      </el-row>
+    </el-dialog>
+
+    <el-dialog title="濉啓鏄惁閲嶅ぇ闃虫��" :visible.sync="checkval" width="800px" append-to-body>
+      <el-form ref="form" :model="formIn" label-width="100px">
+        <el-form-item label="濮撳悕">
+          <el-input v-model="formIn.cusName" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="浣撴鍙�">
+          <el-input v-model="formIn.tjNumber" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="鐖堕」鍚嶇О">
+          <el-input v-model="Parentcheck.proName" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="瀛愰」鍚嶇О">
+          <el-input v-model="formIn.proName" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="閲嶅ぇ闃虫��">
+          <el-radio-group v-model="formIn.flag">
+            <el-radio label="1">鏄�</el-radio>
+            <el-radio label="0">鍚�</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="绛夌骇">
+          <el-select v-model="formIn.level" placeholder="璇烽�夋嫨" filterable style="width: 100%">
+            <el-option v-for="item in dict.type.lj_positive" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="澶囨敞">
+          <el-input type="textarea" v-model="formIn.remark"></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitcheckval">纭� 瀹�</el-button>
+        <el-button @click="cancell">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
+
+    <el-dialog title="PDF 棰勮" :visible.sync="dialogVisible" :close-on-click-modal="false">
+      <div class="main">
+        <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe>
+      </div>
+    </el-dialog>
+
+    <el-drawer :visible.sync="drawer" :with-header="false" size="70%" :before-close="handleClose">
       <div style="font-size: 14px">
-        <table
-          style="
+        <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
-          "
-          cellspacing="4"
-        >
+            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"
-            >
+            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
               濮撳悕锛�
             </td>
             <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
@@ -183,30 +216,21 @@
                 <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span>
               </template>
             </td>
-            <td
-              style="border: 1px solid #dfe6ec; border-collapse: collapse"
-              align="right"
-            >
+            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
               鎬у埆锛�
             </td>
             <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
-              {{ tableAll.cusSex }}
+              {{ tableAll.cusSex == 0 ? "鐢�" : tableAll.cusSex == 1 ? "濂�" : "鏈煡" }}
             </td>
           </tr>
           <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
-            <td
-              style="border: 1px solid #dfe6ec; border-collapse: collapse"
-              align="right"
-            >
+            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
               浣撴鍗曞彿锛�
             </td>
             <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
               {{ tableAll.tjNumber }}
             </td>
-            <td
-              style="border: 1px solid #dfe6ec; border-collapse: collapse"
-              align="right"
-            >
+            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
               浣撴鏃堕棿锛�
             </td>
             <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
@@ -215,300 +239,606 @@
           </tr>
         </table>
       </div>
-
-      <template>
-        <div style="margin-left: 10px">
-          <el-radio-group
-            v-model="radio"
-            v-for="(item, index) in Parent"
-            :key="index"
-            @input="radioChange1(item.proId, item)"
-          >
-            <el-radio-button :label="item.proId">{{
-              item.proName
-            }}</el-radio-button>
-          </el-radio-group>
+      <div style="display: flex">
+        <div style="margin: 10px 10px" v-if="hasdeptList.length >= 1">
+          <el-button type="primary" size="mini" @click="Changeapply()">浼氳瘖鐢宠</el-button>
         </div>
-      </template>
-      <el-table
-        v-loading="loading"
-        :data="proParentList.sons"
-        border
-        height="460px"
-        style="width: 96%; margin: 10px 10px"
-      >
-        <el-table-column prop="project.proName" label="妫�娴嬮」鐩�" width="150">
-          <!-- <template slot-scope="scope">
-            {{ scope.row.project.proName }}
-          </template> -->
-        </el-table-column>
-        <el-table-column prop="proResult" label="妫�娴嬬粨鏋�" width="280">
-          <template slot-scope="scope">
-            <el-input
-              size="mini"
-              v-model="scope.row.proResult"
-              autocomplete="off"
-              placeholder="璇疯緭鍏ユ娴嬬粨鏋�"
-              @blur="handleInputConfirm(scope.row)"
-              @input="vale"
-            ></el-input>
-          </template>
-        </el-table-column>
-        <el-table-column label="瑙勫垯" width="55">
-          <template slot-scope="scope">
-            <el-button class="blue-button" @click="handleguize(scope.row)"
-              >...</el-button
-            >
-          </template>
-        </el-table-column>
-        <el-table-column prop="project.proMetering" label="鍗曚綅">
-          <!-- <template slot-scope="scope">
-            {{ scope.row.standard.company }}
-          </template> -->
-        </el-table-column>
-        <el-table-column prop="project.proScope" label="鍙傝�冭寖鍥�">
-        </el-table-column>
-        <el-table-column prop="conclusion" label="缁撴灉缁撹" width="280">
-          <template slot-scope="scope">
-            <el-input
-              size="mini"
-              v-model="scope.row.conclusion"
-              autocomplete="off"
-              placeholder="璇疯緭鍏ユ娴嬬粨鏋�"
-              disabled
-            ></el-input>
-          </template>
-        </el-table-column>
-        <el-table-column
-          prop="exceptionDesc"
-          label="鏄惁寮傚父"
-          width="80px"
-          align="center"
-        >
-          <template slot-scope="scope">
-            <el-checkbox v-model="scope.row.exceptionDesc"></el-checkbox>
-          </template>
-        </el-table-column>
-        <el-table-column
-          prop="isReturn"
-          label="鏄惁澶嶈瘖"
-          width="80px"
-          align="center"
-        >
-          <template slot-scope="scope">
-            <el-checkbox v-model="scope.row.isReturn"></el-checkbox>
-          </template>
-        </el-table-column>
-        <el-table-column prop="project.resultType" label="缁撴灉绫诲瀷">
-          <template slot-scope="scope">
-            <dict-tag
-              :options="dict.type.tj_result_type"
-              :value="scope.row.project.resultType"
-            />
-          </template>
-        </el-table-column>
-      </el-table>
-
-      <div style="font-size: 14px; overflow-y: auto; height: 286px">
-        <table
-          style="
-            width: 96%;
-            margin: 4px 10px;
-            border: 1px solid #dfe6ec;
-            border-collapse: collapse;
-          "
-          cellspacing="4"
-        >
-          <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
-            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
-              鐥呯閫夋嫨锛�
-            </td>
-            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
-              <el-select
-                v-model="value"
-                multiple
-                placeholder="璇烽�夋嫨"
-                style="width: 100%; height: 45px"
-                v-if="deptAdviceList"
-                @change="sel"
-                filterable
-              >
-                <el-option
-                  v-for="item in deptAdviceList"
-                  :key="item.id"
-                  :label="item.title"
-                  :value="item.id"
-                >
-                </el-option>
-              </el-select>
-            </td>
-            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
-              涓绘鍖诲笀锛�
-            </td>
-            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
-              <el-select
-                v-model="doctorName"
-                placeholder="璇烽�夋嫨"
-                style="width: 100%"
-                v-if="deptAdviceList"
-                @change="selName"
-                filterable
-              >
-                <el-option
-                  v-for="item in userList"
-                  :key="item.userId"
-                  :label="item.nickName"
-                  :value="item.userId"
-                >
-                </el-option>
-              </el-select>
-            </td>
-          </tr>
-          <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
-            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
-              寤鸿锛�
-            </td>
-            <td
-              style="border: 1px solid #dfe6ec; border-collapse: collapse"
-              colspan="2"
-            >
-              <el-input
-                type="textarea"
-                placeholder="璇疯緭鍏ュ唴瀹�"
-                v-model="proParentList.remark"
-                rows="7"
-              >
-              </el-input>
-            </td>
-          </tr>
-        </table>
-
-        <div slot="footer" class="dialog-footers">
-          <el-button type="primary" @click="determine" v-show="tjStatus == '0'"
-            >鎻� 浜�</el-button
-          >
+        <div style="margin: 10px 10px">
+          <el-button type="primary" size="mini" @click="historicalreport()">鍘嗗彶鎶ュ憡</el-button>
+        </div>
+        <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>
-      <!-- <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-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"
+                :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 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>
+                  <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>
+                </div>
+              </el-tab-pane>
+            </el-tabs>
+          </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"
+                :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-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>
+                </div>
+              </el-tab-pane>
+            </el-tabs>
+          </template>
+        </el-col>
+        <el-col :span="6" style="margin-top: 15px">
+          <Historicalreport v-show="lishi" :reportHistorydata="reportHistorydata"></Historicalreport>
+        </el-col>
+      </el-row>
     </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 === 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";
+import jianqianwenzhen from "@/components/jianqianwenzhen";
 import Public from "@/components/public";
+import { getPdf } from "@/api/hosp/order";
+import { getInfo } from "@/api/login";
+import Historicalreport from "@/components/Historicalreport";
 import {
   getProList,
   getSons,
+  AutoGetRule,
   getaddRemark,
   getParentList,
   getParentId,
   getDeptAdvice,
+  reportHistory,
+  getAdviceByTjNumAndPro,
+  getXm,
 } from "@/api/doctor/check";
-import { listUser } from "@/api/system/user";
+import { addBigPositive } from "@/api/doctor/bigPositive";
+import { addReplylog, hzHasDept } from "@/api/hosp/replylog";
+import { listHzlog, addHzlog, delHzlog, updateHzlog } from "@/api/hosp/hzlog";
+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"],
+  dicts: ["sys_user_sex", "sys_yes_no", "tj_result_type", "lj_positive"],
   name: "check",
-  components: { Public },
+  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,
+      lishi: false,
+      jianqianwenzhendata: [],
+      jianqians: false,
       selected: false,
-      // 閬僵灞�
+      checkval: false,
       loading: false,
+      open: false,
+      foropen: false,
+      dialogVisible: false,
+      openOne: false,
+      reportHistorydata: [],
+      url: "",
+      cateringList: [],
       orderDetailId: "",
-      // proDefault: "",
-      // dataList: [],
+      textarea: "",
+      title: "",
+      formIn: {},
+      focusrow: {},
+      hzlogList: [],
       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: {},
+      allList: [],
+      autorule: [],
+      vals: {},
+      form: {
+        createTime: new Date(),
+      },
       doctorName: "",
-      // 鐖堕」
       proName: "",
-      // 鐖堕」Id
       proId: "",
       company: "",
       tjStandardGtValue: "",
-      // 鐢ㄦ埛琛ㄦ牸鏁版嵁
+      xiangmuList: [],
+      name: "",
       userList: null,
-      // 鐖堕」鐩垪琛�
+      curindex: {},
       Parent: [],
+      hzReplyLogsList: [],
+      hasdeptList: [],
       radio: "",
       nums: "",
       proParentList: [],
       tjNumber: "",
-      // 鍏ㄩ儴灏忕粨
       DeptadviceAll: [],
-      // 灏忕粨
+      project: {},
       summaryList: [],
       summaryAll: [],
       tjOrderDetailList: [],
       tjOrderDetail: [],
+      deptId: "",
+      userId: "",
+      nickName: "",
+      doctorNames: "",
       date: new Date(new Date().getTime() + 8 * 3600 * 1000)
         .toJSON()
         .substr(0, 19)
         .replace("T", " "),
-      // 鏌ヨ鍙傛暟
       queryParams: {
         page: 1,
         pageSize: 10,
         tjNumber: "",
         type: "",
         name: null,
+      },
+      queryParam1: {
+        nr: null,
+        page: 1,
+        pageSize: 10,
+      },
+      queryParam: {
+        page: 1,
+        pageSize: 1000,
+      },
+      rules: {
+        hzType: [
+          { required: true, message: "浼氳瘖绉戝涓哄繀濉」", trigger: "change" },
+        ],
       },
     };
   },
@@ -531,6 +861,7 @@
       this.$refs.inputName.focus();
     });
   },
+
   beforeDestroy() {
     if (this.timer) {
       clearInterval(this.timer);
@@ -538,42 +869,447 @@
   },
 
   methods: {
-    /** 鏌ヨ鐢ㄦ埛鍒楄〃 */
-    getListUser() {
-      listUser(this.addDateRange(this.queryParams, this.dateRange)).then(
-        (response) => {
-          this.userList = response.rows;
+    // 璁$畻 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 '';
+    },
+
+    // 瀹炴椂鏇存柊 BMI 骞堕獙璇佽緭鍏�
+    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, 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) {
+            return;
+          }
+
+          const height = heightRow.proResult;
+          const weight = weightRow.proResult;
+
+          if (!height || !weight) {
+            this.$message.warning('璇峰~鍐欒韩楂樺拰浣撻噸浠ヨ绠� BMI');
+            bmiRow.proResult = '';
+            return;
+          }
+
+          const bmi = this.calculateBMI(height, weight);
+          bmiRow.proResult = bmi || '';
+        }
+
+        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;
+        this.userId = response.user.userId;
+        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";
+    },
+
     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 + ",";
             }
           });
         });
@@ -582,61 +1318,63 @@
         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;
-      // 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);
+    initInputDOM() {
+      const inputDoms = document.querySelectorAll('.el-input__inner');
+      inputDoms.forEach((item, index) => item.setAttribute('data-index', index));
+      this.inputDoms = inputDoms;
     },
 
-    handleChanges(param1, param2) {
-      this.row.conclusion = param1;
-      this.row.rulesList = param2;
+    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(); // 鍙�夛細閫変腑鏂囨湰
+          }
+        });
+      }
     },
 
     getList() {
+      this.loading = true;
       this.queryParams.type = this.tjStatus;
       getProList(this.queryParams).then((response) => {
-        if (response.data) {
-          if (response.data.date) {
-            this.tableList = response.data.date;
+        if (response.code == 200) {
+          this.loading = false;
+          if (response.data) {
+            this.tableList = response.data.date || response.data.customers || [];
+            this.total = response.data.total;
           } else {
-            this.tableList = response.data.customers;
+            this.tableList = [];
           }
-          this.total = response.data.total;
-        } else {
-          this.tableList = [];
         }
       });
     },
 
-    // 鍗曢�夋寜閽�
     radioChange(val) {
       this.queryParams.type = val;
+      this.loading = true;
       getProList(this.queryParams).then((response) => {
-        if (response.data) {
-          this.tableList = response.data.date;
+        if (response.code == 200) {
+          this.loading = false;
+          this.tableList = response.data.date || response.data.customers || [];
           this.total = response.data.total;
         } else {
           this.tableList = [];
@@ -644,174 +1382,358 @@
       });
     },
 
-    // 鎼滅储
-    submitForm() {
-      this.queryParams.pageNum = 1;
-      this.getList();
-      // 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 = [];
-      //     }
-      //   });
+    hb() {},
+
+    propoChange() {
+      this.cusobj = { sex: this.tableAll.cusSex, isZj: 1 };
+      this.$refs.proposal.open = true;
+      this.$refs.proposal.title = "寤鸿鏂规";
     },
-    // 閲嶇疆
+
+    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: "璇峰厛濉啓鎬绘寤鸿" });
+      }
+    },
+
+    submitForm() {
+      this.queryParams.page = 1;
+      this.loading = true;
+      this.queryParams.type = this.tjStatus;
+      getProList(this.queryParams).then((response) => {
+        if (response.code == 200) {
+          this.loading = false;
+          this.tableList = response.data.date || response.data.customers || [];
+          this.total = response.data.total;
+          this.queryParams.tjNumber = "";
+        } else {
+          this.tableList = [];
+        }
+      });
+    },
+
     resetQuery() {
       this.resetForm("tableList");
       this.submitForm();
+      this.$nextTick(() => this.$refs.inputName.focus());
     },
 
-    // 鐐瑰嚮璇︽儏
-    handleClick(row) {
-      this.loading = true;
-      this.drawer = true;
-      this.tableAll = row;
-      if (this.tableAll.cusSex === 0) {
-        this.tableAll.cusSex = "鐢�";
+    Changeapplyfor(row) {
+      this.open = true;
+      this.form = row;
+      this.form.hzDoctorId = this.info.userId;
+      getChildList().then((res) => this.deptList = res.data);
+      this.Hzlog(this.form.tjNumber);
+    },
+
+    checkboxchange(val) {
+      this.vals = val;
+      this.project = val.project;
+      this.formIn.tjNumber = this.tableAll.tjNumber;
+      this.formIn.cusId = this.tableAll.cusId;
+      this.formIn.cusName = this.tableAll.cusName;
+      this.formIn.proId = this.project.proId;
+      this.formIn.proName = this.project.proName;
+      this.formIn.orderId = val.orderId;
+      this.Parent.forEach((item) => {
+        if (this.radio == item.proId) {
+          this.Parentcheck.proName = item.proName;
+          this.formIn.proParentId = item.proId;
+        }
+      });
+      if (val.isPositive == "1") {
+        this.checkval = true;
+        this.formIn.flag = "0";
+        this.formIn.level = "";
+      } else {
+        this.formIn.flag = "0";
+        addBigPositive(this.formIn).then((res) => {
+          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          this.getParentIdsss();
+        });
       }
-      if (this.tableAll.cusSex === 1) {
-        this.tableAll.cusSex = "濂�";
-      }
+    },
 
-      this.tjNumber = row.tjNumber;
-      let num = 0;
-      getParentList(this.tjNumber).then((response) => {
-        this.Parent = response.data;
-        this.Parent.forEach((item) => {
-          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);
-            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;
+    submitcheckval() {
+      addBigPositive(this.formIn).then((res) => {
+        this.$modal.msgSuccess("鏂板鎴愬姛");
+        this.getParentIdsss();
+        this.checkval = false;
+      });
+    },
 
-                if (item.isReturn == 1) {
-                  item.isReturn = true;
-                }
-                if (item.isReturn == 0) {
-                  item.isReturn = false;
-                }
+    cancell() {
+      this.checkval = false;
+      this.vals.isPositive = "0";
+    },
 
-                if (item.exceptionDesc == "1") {
-                  item.exceptionDesc = true;
-                }
-                if (item.exceptionDesc == "0") {
-                  item.exceptionDesc = false;
-                }
+    Hzlog(val) {
+      let data = { tjNumber: val };
+      listHzlog(data).then((response) => {
+        this.hzlogList = response.rows;
+        this.hzlogList.forEach((item) => {
+          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 (this.proParentList.xiaoJie.length != 0) {
-                this.Parent.forEach((item3) => {
-                  if (item3.proId === this.nums) {
-                    this.proParentList.remark = item.remark;
-                  }
-                });
-              } else {
-                this.proParentList.remark = "";
-              }
-            });
-
-            getDeptAdvice(this.proId).then((response) => {
-              this.deptAdviceList = response.data;
             });
           }
-          num = num + 1;
         });
       });
+    },
 
-      getDeptAdvice().then((response) => {
-        this.deptAdviceList = response.data;
+    handledele(row) {
+      this.id = [row.id];
+      delHzlog(this.id).then((res) => {
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+        this.Hzlog(this.form.tjNumber);
+      });
+    },
+
+    hadleedit(row) {
+      this.form.hzType = row.hzType;
+      this.form.id = row.id;
+    },
+
+    submitFormapply() {
+      let data = {};
+      this.userList.forEach((item1) => {
+        if (this.form.hzDoctorId == item1.userId) this.form.hzDoctorName = item1.nickName;
+      });
+      if (this.form.hzType != undefined) {
+        this.$refs["form"].validate((valid) => {
+          if (valid) {
+            if (this.form.id != null) {
+              data = {
+                tjNumber: this.form.tjNumber,
+                userId: this.form.cusId,
+                userName: this.form.cusName,
+                hzDeptIdList: this.form.hzDeptId,
+                hzDoctorId: this.form.hzDoctorId,
+                hzType: this.form.hzType,
+                orderId: this.form.orderId,
+                hzDoctorName: this.form.hzDoctorName,
+                id: this.form.id,
+              };
+              updateHzlog(data).then((res) => {
+                if (res.code == 200) {
+                  this.$modal.msgSuccess("淇敼鎴愬姛");
+                  this.form = {};
+                  this.Hzlog();
+                  this.radioChange(1);
+                }
+              });
+            } else {
+              data = {
+                tjNumber: this.form.tjNumber,
+                userId: this.form.cusId,
+                userName: this.form.cusName,
+                hzDeptIdList: this.form.hzDeptId,
+                hzDoctorId: this.form.hzDoctorId,
+                hzType: this.form.hzType,
+                orderId: this.form.orderId,
+                hzDoctorName: this.form.hzDoctorName,
+                id: this.form.id,
+              };
+              if (this.form.hzDeptId?.length) {
+                addHzlog(data).then((res) => {
+                  if (res.code == 200) {
+                    this.$modal.msgSuccess("鐢宠鎴愬姛");
+                    this.form = {};
+                    this.Hzlog();
+                    this.radioChange(1);
+                  }
+                });
+                this.open = false;
+              } else {
+                this.$modal.msgError("璇烽�夋嫨浼氳瘖绉戝");
+              }
+            }
+          }
+        });
+      } else {
+        this.$modal.msgError("璇烽�夋嫨浼氳瘖绉戝");
+      }
+    },
+
+    cancel() {
+      this.open = false;
+      this.foropen = false;
+    },
+
+    Changeapply() {
+      this.foropen = true;
+      this.Hzlog(this.tableAll.tjNumber);
+    },
+
+    historicalreport() {
+      this.baogaoqian = false;
+      this.baogaohou = true;
+      this.loading = true;
+      let data = { cusId: this.tableAll.cusId };
+      reportHistory(data).then((res) => {
+        this.loading = false;
+        if (res.data[0] != null) this.reportHistorydata = res.data;
+        this.lishi = this.reportHistorydata.length >= 1;
+        if (!this.lishi) this.$modal.msgError("鏆傛棤鍘嗗彶鎶ュ憡");
+      });
+    },
+
+    jianqian() {
+      this.flags = true;
+      this.jianqians = true;
+      this.jianqianwenzhendata.push(this.tableAll.tjNumber);
+    },
+
+    handlecan(row) {
+      this.dialogVisible = true;
+      const tjNumber = row.tjNumber;
+      const flag = true;
+      getPdf(tjNumber, flag).then((response) => {
+        if (response.size === 0) {
+          const loading = this.$loading({
+            lock: true,
+            text: "Loading",
+            spinner: "el-icon-loading",
+            background: "rgba(0, 0, 0, 0.7)",
+          });
+          setTimeout(() => loading.close(), 3000);
+          this.$message({ type: "warning", message: "鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�" });
+        } else {
+          this.dialogVisible = true;
+          this.url = window.webkitURL.createObjectURL(response);
+        }
+      });
+    },
+
+    submitFormreply() {
+      let data = {
+        hzId: this.allList[0].id,
+        orderId: this.allList[0].orderId,
+        tjNumber: this.allList[0].tjNumber,
+        userId: this.allList[0].userId,
+        userName: this.allList[0].userName,
+        replyContent: this.textarea,
+        hzDoctorId: this.allList[0].hzDoctorId,
+        hzDoctorName: this.allList[0].hzDoctorName,
+        hzType: this.allList[0].hzType,
+        replyDoctorName: this.nickName,
+        replyDeptId: this.deptId,
+        replyDoctorId: this.userId,
+      };
+      addReplylog(data).then((res) => {
+        this.$modal.msgSuccess("鍥炲鎴愬姛");
+        this.getDept(this.allList[0].tjNumber);
+      });
+    },
+
+    handleSelectionChange(selection) {
+      if (selection.length > 1) {
+        const newRows = selection.filter((it, index) => {
+          if (index == selection.length - 1) {
+            this.$refs.tab.toggleRowSelection(it, true);
+            return true;
+          } else {
+            this.$refs.tab.toggleRowSelection(it, false);
+            return false;
+          }
+        });
+      } else {
+        this.allList = [];
+        if (selection[0]) {
+          if (selection[0].hzReplyLogsList) this.hzReplyLogsList = selection[0].hzReplyLogsList;
+        } else {
+          this.hzReplyLogsList = [];
+        }
+        this.allList = selection;
+      }
+    },
+
+    handleClick(row) {
+      this.getDept(row.tjNumber);
+      this.loading = true;
+      this.drawer = true;
+      this.$nextTick(() => this.initInputDOM());
+      this.tableAll = row;
+      this.tjNumber = row.tjNumber;
+      let num = 0;
+      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 (num === 0) {
+              this.nums = item.proId;
+              this.radio = item.proId;
+              this.proId = item.proId;
+              this.getParentIdsss();
+              this.getbzlist();
+            }
+            num = num + 1;
+          });
+        } else {
+          this.loading = false;
+          this.Parent = [];
+          this.$modal.msgError("璇ョ瀹や笅鏃犻」鐩紒");
+        }
+      });
+      this.getbzlist();
+    },
+
+    getDept(val) {
+      let data = { tjNumber: val, deptId: this.deptId };
+      hzHasDept(data).then((res) => {
+        if (res.data) {
+          this.hasdeptList = res.data;
+          this.hasdeptList.forEach((item) => {
+            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 + ",";
+                });
+              });
+            }
+          });
+        }
+      });
+    },
+
+    handleTabClick(tab, event) {
+      this.Parent.forEach((item) => {
+        if (tab.name == item.proId) this.Parentcheck = item;
       });
 
-      // 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
-      //   })
-      // });
-    },
-    // 鎸夐挳鐐瑰嚮浜嬩欢
-    radioChange1(proParentId, 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,
@@ -825,152 +1747,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 = 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 (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;
-          });
+          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;
+          this.getParentIdsss();
+          this.getbzlist();
         })
         .catch((action) => {
-          this.$message({
-            type: "info",
-            message: action === "cancel" ? "鏀惧純淇濆瓨骞剁寮�" : "鍋滅暀鍦ㄥ綋鍓嶉〉闈�",
-          });
-          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 (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();
         });
     },
 
-    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,
@@ -984,19 +1800,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();
@@ -1004,7 +1819,11 @@
   },
 };
 </script>
-<style scoped>
+<style lang="scss" scoped>
+.a {
+  position: relative;
+}
+
 .el-table .cell {
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
@@ -1016,19 +1835,28 @@
   padding-right: 10px;
 }
 
+.setclass {
+  background-color: #f86b35;
+  color: black;
+}
+
 .blue-button {
   width: 10px;
   background-color: #e2e3e4;
 }
 
 .el-button--medium {
-  padding: 4px 14px;
   font-size: 14px;
 }
 
 .dialog-footers {
   margin-top: 10px;
   margin-left: calc(100% - 10%);
+}
+
+.main {
+  height: 700px;
+  overflow: hidden;
 }
 
 .pag {
@@ -1040,6 +1868,117 @@
 .pag1 {
   width: 30%;
 }
-</style> 
 
+.el-message {
+  top: 40px !important;
+  border: 1px solid #c1c1c1;
+  background-color: #c1c1c1;
+}
 
+.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