Browse Source

签收后高亮该行

lighter 1 year ago
parent
commit
255d11f178
1 changed files with 423 additions and 398 deletions
  1. 423 398
      src/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue

+ 423 - 398
src/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue

@@ -1,62 +1,62 @@
 <template>
-  <div class="layout_container">
-    <header class="round-header">
-      <el-date-picker
-          v-model="dateRange"
-          :shortcuts="maxHalfYear"
-          end-placeholder="结束日期"
-          range-separator="至"
-          start-placeholder="开始日期"
-          style="width: 260px"
-          type="daterange"
-      ></el-date-picker>
-      <el-select v-model="overviewParam.ward" clearable filterable placeholder="请选择科室" style="width: 130px">
-        <el-option v-for="item in userWards" :key="item.code" :label="item.name" :value="item.code"></el-option>
-      </el-select>
-      <el-select v-model="overviewParam.fileStatus" style="width: 90px">
-        <el-option label="未签收" value="0"></el-option>
-        <el-option label="已签收" value="1"></el-option>
-      </el-select>
-      <el-select v-model="overviewParam.lateFlag" style="width: 90px">
-        <el-option label="全部" value="3"></el-option>
-        <el-option label="迟交" value="1"></el-option>
-        <el-option label="未迟交" value="0"></el-option>
-      </el-select>
-      <el-input v-model="overviewParam.bah" clearable placeholder="住院号" style="width: 110px"></el-input>
-      <el-button icon="Search" type="primary" @click="searchPatient">检索</el-button>
-      <el-button icon="Check" type="primary" @click="archiveBa">签收</el-button>
-      <el-button icon="Operation" type="primary" @click="showAdvanceSearch = true">高级条件检索</el-button>
-      <el-divider direction="vertical"></el-divider>
-      <el-dropdown trigger="click" type="primary" @command="handleCommand">
-        <el-button type="primary">功能菜单<i class="el-icon-arrow-down el-icon--right"></i></el-button>
-        <template #dropdown>
-          <el-dropdown-menu>
-            <el-dropdown-item command="unSign" icon="Link">解除签收</el-dropdown-item>
-            <el-dropdown-item command="dismissCount" divided icon="OfficeBuilding">出院患者统计</el-dropdown-item>
-            <el-dropdown-item command="signedByDay" icon="Edit">签收统计</el-dropdown-item>
-            <el-dropdown-item command="exportLateData" icon="Clock">导出迟交病案</el-dropdown-item>
-            <el-dropdown-item command="exportUnsignedData" icon="Files">导出未签收病案</el-dropdown-item>
-            <el-dropdown-item command="print1" divided icon="Printer">打印正面</el-dropdown-item>
-            <el-dropdown-item command="print2" icon="Printer">打印反面</el-dropdown-item>
-            <el-dropdown-item command="print3" icon="Download">存为PDF</el-dropdown-item>
-            <el-dropdown-item command="quality" divided icon="DataLine">病案质控</el-dropdown-item>
-            <el-dropdown-item command="duplicate" divided icon="MessageBox">标记已复印</el-dropdown-item>
-            <el-dropdown-item command="closedown" icon="Paperclip">标记已封存</el-dropdown-item>
-            <el-dropdown-item command="lendout" divided icon="Document">借阅管理</el-dropdown-item>
-            <el-dropdown-item command="beforeExportdcl" divided icon="Download">
-              导出<span style="color: black; font-weight: bold">复印/封存/借阅</span>记录
-            </el-dropdown-item>
-          </el-dropdown-menu>
-        </template>
-      </el-dropdown>
-    </header>
-    <div class="layout_main layout_container layout-horizontal">
-      <aside style="width: max-content">
-        <div class="layout_container layout_el-table">
+  <div class="all-frontsheet">
+    <div class="layout_container">
+      <header class="round-header">
+        <el-date-picker
+            v-model="dateRange"
+            :shortcuts="maxHalfYear"
+            end-placeholder="结束日期"
+            range-separator="至"
+            start-placeholder="开始日期"
+            style="width: 260px"
+            type="daterange"
+        ></el-date-picker>
+        <el-select v-model="overviewParam.ward" clearable filterable placeholder="请选择科室" style="width: 130px">
+          <el-option v-for="item in userWards" :key="item.code" :label="item.name" :value="item.code"></el-option>
+        </el-select>
+        <el-select v-model="overviewParam.fileStatus" style="width: 90px">
+          <el-option label="未签收" value="0"></el-option>
+          <el-option label="已签收" value="1"></el-option>
+        </el-select>
+        <el-select v-model="overviewParam.lateFlag" style="width: 90px">
+          <el-option label="全部" value="3"></el-option>
+          <el-option label="迟交" value="1"></el-option>
+          <el-option label="未迟交" value="0"></el-option>
+        </el-select>
+        <el-input v-model="overviewParam.bah" clearable placeholder="住院号" style="width: 110px"></el-input>
+        <el-button icon="Search" type="primary" @click="searchPatient">检索</el-button>
+        <el-button icon="Check" type="primary" @click="archiveBa">签收</el-button>
+        <el-button icon="Operation" type="primary" @click="showAdvanceSearch = true">高级条件检索</el-button>
+        <el-divider direction="vertical"></el-divider>
+        <el-dropdown trigger="click" type="primary" @command="handleCommand">
+          <el-button type="primary">功能菜单<i class="el-icon-arrow-down el-icon--right"></i></el-button>
+          <template #dropdown>
+            <el-dropdown-menu>
+              <el-dropdown-item command="unSign" icon="Link">解除签收</el-dropdown-item>
+              <el-dropdown-item command="dismissCount" divided icon="OfficeBuilding">出院患者统计</el-dropdown-item>
+              <el-dropdown-item command="signedByDay" icon="Edit">签收统计</el-dropdown-item>
+              <el-dropdown-item command="exportLateData" icon="Clock">导出迟交病案</el-dropdown-item>
+              <el-dropdown-item command="exportUnsignedData" icon="Files">导出未签收病案</el-dropdown-item>
+              <el-dropdown-item command="print1" divided icon="Printer">打印正面</el-dropdown-item>
+              <el-dropdown-item command="print2" icon="Printer">打印反面</el-dropdown-item>
+              <el-dropdown-item command="print3" icon="Download">存为PDF</el-dropdown-item>
+              <el-dropdown-item command="quality" divided icon="DataLine">病案质控</el-dropdown-item>
+              <el-dropdown-item command="duplicate" divided icon="MessageBox">标记已复印</el-dropdown-item>
+              <el-dropdown-item command="closedown" icon="Paperclip">标记已封存</el-dropdown-item>
+              <el-dropdown-item command="lendout" divided icon="Document">借阅管理</el-dropdown-item>
+              <el-dropdown-item command="beforeExportdcl" divided icon="Download">
+                导出<span style="color: black; font-weight: bold">复印/封存/借阅</span>记录
+              </el-dropdown-item>
+            </el-dropdown-menu>
+          </template>
+        </el-dropdown>
+      </header>
+      <div class="layout_main layout_container layout-horizontal">
+        <aside class="layout_container layout_el-table" style="width: max-content">
           <el-table
               :data="overview.slice((currentPage - 1) * 15, currentPage * 15)"
               highlight-current-row
-              stripe
+              :row-class-name="differSignedRows"
               @row-click="fetchSheetInfo"
           >
             <el-table-column label="姓名" width="70">
@@ -67,8 +67,10 @@
             </el-table-column>
             <el-table-column label="住院号-次数" width="80">
               <template #default="scope">
-              <span style="font-weight: bold; color: black">{{ scope.row.bah }}</span
-              >-{{ scope.row.times }}
+              <span class="strong-pat-no">
+                {{ scope.row.bah }}
+              </span>
+                -{{ scope.row.times }}
               </template>
             </el-table-column>
             <el-table-column label="医生" prop="doctorName" width="60"></el-table-column>
@@ -80,339 +82,339 @@
               layout="total, pager"
               @current-change="handleCurrentPageChange">
           </el-pagination>
-        </div>
-      </aside>
-      <div class="layout_main" style="padding: 0 20px; overflow-y: scroll">
-        <div id="headpage">
-          <HeadPage :dics="dics" :patient="sheet"/>
-          <div style="position: fixed; top: 180px; left: 1230px">
-            <img v-if="sheet.zyDismissWay === '4'" :src="patientdead" alt="">
-            <div v-if="sheet.duplicated">
-              <img class="img-state" :src="baduplicated" alt="" @click="showMarkStateDetail('DUPLICATE')">
-            </div>
-            <div v-if="sheet.lendout">
-              <img class="img-state" :src="balendout" alt="" @click="showLendOutDetail">
-            </div>
-            <div v-if="sheet.closedown">
-              <img class="img-state" :src="baclosedown" alt="" @click="showMarkStateDetail('CLOSEDOWN')">
+        </aside>
+        <div class="layout_main" style="padding: 0 20px; overflow-y: scroll">
+          <div id="headpage">
+            <HeadPage :dics="dics" :patient="sheet"/>
+            <div style="position: fixed; top: 180px; left: 1230px">
+              <img v-if="sheet.zyDismissWay === '4'" :src="patientdead" alt="">
+              <div v-if="sheet.duplicated">
+                <img class="img-state" :src="baduplicated" alt="" @click="showMarkStateDetail('DUPLICATE')">
+              </div>
+              <div v-if="sheet.lendout">
+                <img class="img-state" :src="balendout" alt="" @click="showLendOutDetail">
+              </div>
+              <div v-if="sheet.closedown">
+                <img class="img-state" :src="baclosedown" alt="" @click="showMarkStateDetail('CLOSEDOWN')">
+              </div>
             </div>
           </div>
+          <div id="tailpage" style="margin-left: 70px">
+            <TailPage :dics="dics" :patient="sheet"/>
+          </div>
         </div>
-        <div id="tailpage" style="margin-left: 70px">
-          <TailPage :dics="dics" :patient="sheet"/>
+        <div id="fullpage" style="display: none; position: fixed">
+          <FullPage :dics="dics" :patient="sheet"/>
         </div>
       </div>
-      <div id="fullpage" style="display: none; position: fixed">
-        <FullPage :dics="dics" :patient="sheet"/>
-      </div>
     </div>
-  </div>
 
-  <el-drawer v-model="showMessageDrawer" title="首页签收校验结果">
-    <div class="page-inner">
-      <div v-if="forceVerifies.length === 0 && adviceVerifies.length === 0" class="no-verify-message">暂无校验内容
-      </div>
-      <div v-show="forceVerifies.length > 0" style="padding: 8px 0 4px 0; font-weight: bold">
-        以下条目为强制要求,请完善。
+    <el-drawer v-model="showMessageDrawer" title="首页签收校验结果">
+      <div class="page-inner">
+        <div v-if="forceVerifies.length === 0 && adviceVerifies.length === 0" class="no-verify-message">暂无校验内容
+        </div>
+        <div v-show="forceVerifies.length > 0" style="padding: 8px 0 4px 0; font-weight: bold">
+          以下条目为强制要求,请完善。
+        </div>
+        <div v-for="(item, index) in forceVerifies" :key="index" :style="messageColor(index)" class="message-item"
+             @click="currentMessageIndex = index">
+          {{ index + 1 }}、{{ item.name }}
+        </div>
+        <div v-show="adviceVerifies.length > 0" style="padding: 8px 0 4px 0; font-weight: bold">
+          以下条目为建议执行,不做强制要求。
+        </div>
+        <div v-for="(item, index) in adviceVerifies" :key="index"
+             style="padding: 6px; margin-bottom: 6px; border-radius: 4px; background: #eea7a752; color: #ff2b2b">
+          {{ index + 1 }}、{{ item.name }}
+        </div>
       </div>
-      <div v-for="(item, index) in forceVerifies" :key="index" :style="messageColor(index)" class="message-item"
-           @click="currentMessageIndex = index">
-        {{ index + 1 }}、{{ item.name }}
+    </el-drawer>
+    <div class="rightside-btn" @click="showMessageDrawer = !showMessageDrawer">首页签收校验结果</div>
+    <el-dialog v-model="showAdvanceSearch" title="高级条件检索" width="380px">
+      <div style="margin-top: 10px">
+        <el-tag type="info">病案条件</el-tag>
+        <div style="margin-top: 5px; display: flex">
+          &nbsp;&nbsp;病例分型:
+          <el-checkbox-group v-model="advanceSearch.blfxChkbox">
+            <el-checkbox label="1">A</el-checkbox>
+            <el-checkbox label="2">B</el-checkbox>
+            <el-checkbox label="3">C</el-checkbox>
+            <el-checkbox label="4">D</el-checkbox>
+          </el-checkbox-group>
+        </div>
       </div>
-      <div v-show="adviceVerifies.length > 0" style="padding: 8px 0 4px 0; font-weight: bold">
-        以下条目为建议执行,不做强制要求。
+      <div style="margin-top: 10px">
+        <el-tag type="info">医生条件</el-tag>
+        <div style="margin-top: 5px">
+          &nbsp;&nbsp;医生姓名:
+          <el-input v-model="advanceSearch.doctorName" clearable style="width: 160px"
+                    @click="showSearchData('advanceSearchDoctor')"></el-input>
+        </div>
       </div>
-      <div v-for="(item, index) in adviceVerifies" :key="index"
-           style="padding: 6px; margin-bottom: 6px; border-radius: 4px; background: #eea7a752; color: #ff2b2b">
-        {{ index + 1 }}、{{ item.name }}
+      <div style="margin-top: 10px">
+        <el-tag type="info">患者条件</el-tag>
+        <div style="margin-top: 5px">
+          &nbsp;&nbsp;医疗类别:
+          <el-select v-model="advanceSearch.medType" clearable style="width: 160px; margin-left: -4px">
+            <el-option v-for="item in frontSheetMedTypes" :key="item.code" :label="item.name"
+                       :value="item.code"></el-option>
+          </el-select>
+        </div>
+        <div style="margin-top: 5px">
+          &nbsp;&nbsp;诊断编码:
+          <el-input v-model="advanceSearch.icdCode" clearable style="width: 160px"
+                    @click="showSearchData('advanceSearchDiag')"></el-input>
+        </div>
+        <div style="margin-top: 5px">
+          &nbsp;&nbsp;手术编码:
+          <el-input v-model="advanceSearch.surgeryCode" clearable style="width: 160px"
+                    @click="showSearchData('advanceSearchSurgery')"></el-input>
+        </div>
+        <div style="margin-top: 5px">
+          &nbsp;&nbsp;患者性别:
+          <el-select v-model="advanceSearch.sex" clearable style="width: 160px; margin-left: -4px">
+            <el-option v-for="item in dics.getSexCode" :key="item.code" :label="item.name"
+                       :value="item.code"></el-option>
+          </el-select>
+        </div>
       </div>
-    </div>
-  </el-drawer>
-  <div class="rightside-btn" @click="showMessageDrawer = !showMessageDrawer">首页签收校验结果</div>
-  <el-dialog v-model="showAdvanceSearch" title="高级条件检索" width="380px">
-    <div style="margin-top: 10px">
-      <el-tag type="info">病案条件</el-tag>
-      <div style="margin-top: 5px; display: flex">
-        &nbsp;&nbsp;病例分型:
-        <el-checkbox-group v-model="advanceSearch.blfxChkbox">
-          <el-checkbox label="1">A</el-checkbox>
-          <el-checkbox label="2">B</el-checkbox>
-          <el-checkbox label="3">C</el-checkbox>
-          <el-checkbox label="4">D</el-checkbox>
-        </el-checkbox-group>
+      <div style="width: 100%; text-align: right; margin-top: 20px">
+        <el-button icon="Search" type="primary" @click="doAdvanceSearch">开始检索</el-button>
       </div>
-    </div>
-    <div style="margin-top: 10px">
-      <el-tag type="info">医生条件</el-tag>
-      <div style="margin-top: 5px">
-        &nbsp;&nbsp;医生姓名:
-        <el-input v-model="advanceSearch.doctorName" clearable style="width: 160px"
-                  @click="showSearchData('advanceSearchDoctor')"></el-input>
+    </el-dialog>
+
+    <el-dialog v-model="showSearch" title="数据搜索" width="700px">
+      检索依据:
+      <el-select v-model="searchMethod" style="width: 100px">
+        <el-option v-for="item in searchMethods" :key="item.code" :label="item.name" :value="item.code"></el-option>
+      </el-select>
+      &nbsp;&nbsp;&nbsp;&nbsp; 搜索内容:
+      <el-input ref="searchInput" v-model="searchContent" clearable placeholder="请输入搜索内容" prefix-icon="Search"
+                style="width: 160px" @input="executeSearch"></el-input>
+      <el-table :data="searchResults" height="400" highlight-current-row stripe @row-click="handleSelectSearch">
+        <el-table-column label="编码" prop="code" width="200"></el-table-column>
+        <el-table-column label="名称" prop="name" width="450"></el-table-column>
+      </el-table>
+      <div style="margin-top: 15px; width: 100%; text-align: right">
+        <el-button :disabled="currentSRPage === 1" icon="ArrowLeft" type="primary" @click="lastPage">上一页
+        </el-button>
+        <el-button :disabled="currentSRPage > 1 && searchResults.length < 10" icon="ArrowRight" type="primary"
+                   @click="nextPage">下一页
+        </el-button>
       </div>
-    </div>
-    <div style="margin-top: 10px">
-      <el-tag type="info">患者条件</el-tag>
-      <div style="margin-top: 5px">
-        &nbsp;&nbsp;医疗类别:
-        <el-select v-model="advanceSearch.medType" clearable style="width: 160px; margin-left: -4px">
-          <el-option v-for="item in frontSheetMedTypes" :key="item.code" :label="item.name"
-                     :value="item.code"></el-option>
+    </el-dialog>
+    <el-dialog v-model="showDismissCount" title="出院患者统计" width="70%">
+      <div style="margin: 12px 0">
+        <el-date-picker v-model="disCountParams.month" :clearable="false" placeholder="请选择"
+                        style="width: 110px" type="month"></el-date-picker>
+        <el-select v-model="disCountParams.countType" style="width: 120px" @change="dismissCountdata = []">
+          <el-option value="BY_DEPARTMENT" label="按科室计数"></el-option>
+          <el-option value="BY_SIGN_STAFF" label="按签收人计数"></el-option>
+          <el-option value="BY_DETAIL" label="按明细计数"></el-option>
+          <el-option value="BY_DEATH" label="死亡患者计数"></el-option>
         </el-select>
+        <el-select v-model="disCountParams.dept" :disabled="disCountParams.type === 1" clearable filterable
+                   placeholder="请选择科室" style="width: 130px">
+          <el-option v-for="item in userWards" :key="item.code" :label="item.name" :value="item.code"></el-option>
+        </el-select>
+        <el-divider direction="vertical"></el-divider>
+        <el-button icon="Search" type="primary" @click="fetchDismissCount">获取统计数据</el-button>
+        <el-button icon="Download" type="primary" @click="exportDismissCount">导出Excel</el-button>
       </div>
-      <div style="margin-top: 5px">
-        &nbsp;&nbsp;诊断编码:
-        <el-input v-model="advanceSearch.icdCode" clearable style="width: 160px"
-                  @click="showSearchData('advanceSearchDiag')"></el-input>
+      <div v-if="disCountParams.countType === 'BY_DEPARTMENT' ">
+        <el-table :data="dismissCountdata" height="360" stripe>
+          <el-table-column label="科室" prop="deptName"></el-table-column>
+          <el-table-column label="出院人数" prop="dismissCount"></el-table-column>
+          <el-table-column label="已签收" prop="signedCount"></el-table-column>
+          <el-table-column label="未签收" prop="unsignCount"></el-table-column>
+        </el-table>
       </div>
-      <div style="margin-top: 5px">
-        &nbsp;&nbsp;手术编码:
-        <el-input v-model="advanceSearch.surgeryCode" clearable style="width: 160px"
-                  @click="showSearchData('advanceSearchSurgery')"></el-input>
+      <div v-else-if="disCountParams.countType === 'BY_SIGN_STAFF' ">
+        <el-table :data="dismissCountdata" height="360" stripe>
+          <el-table-column label="签收人" prop="signStaffName"></el-table-column>
+          <el-table-column label="签收数量" prop="dismissCount"></el-table-column>
+        </el-table>
       </div>
-      <div style="margin-top: 5px">
-        &nbsp;&nbsp;患者性别:
-        <el-select v-model="advanceSearch.sex" clearable style="width: 160px; margin-left: -4px">
-          <el-option v-for="item in dics.getSexCode" :key="item.code" :label="item.name"
-                     :value="item.code"></el-option>
-        </el-select>
+      <div v-else>
+        <el-table :data="dismissCountdata.slice((currentDismissCountPage - 1) * 10, currentDismissCountPage * 10)"
+                  height="360" stripe>
+          <el-table-column v-if="disCountParams.countType === 'BY_DETAIL' " label="签收人"
+                           prop="signStaff"></el-table-column>
+          <el-table-column label="住院号" prop="patNo"></el-table-column>
+          <el-table-column label="住院次数" prop="times"></el-table-column>
+          <el-table-column label="姓名" prop="name"></el-table-column>
+          <el-table-column label="性别" prop="gender"></el-table-column>
+          <el-table-column label="年龄" prop="age"></el-table-column>
+          <el-table-column label="入院时间" prop="admissDate"></el-table-column>
+          <el-table-column v-if="disCountParams.countType === 'BY_DETAIL' " label="出院时间"
+                           prop="disDate"></el-table-column>
+          <el-table-column v-if="disCountParams.countType === 'BY_DEATH' " label="死亡时间"
+                           prop="disDate"></el-table-column>
+          <el-table-column label="住院天数" prop="inHospDays"></el-table-column>
+          <el-table-column label="住院费用" prop="totalCharge"></el-table-column>
+          <el-table-column label="入院科室" prop="admissDept"></el-table-column>
+          <el-table-column label="入院诊断" prop="admDiag"></el-table-column>
+          <el-table-column label="出院科室" prop="disDept"></el-table-column>
+          <el-table-column label="转科科室" prop="zkWard"></el-table-column>
+          <el-table-column label="出院主诊断" prop="disDiag"></el-table-column>
+          <el-table-column label="病例分型" prop="blfx"></el-table-column>
+          <el-table-column label="科主任" prop="kzr"></el-table-column>
+          <el-table-column label="主治医师" prop="zzys"></el-table-column>
+          <el-table-column label="住院医师" prop="zyys"></el-table-column>
+          <el-table-column label="法定传染病" prop="fdcrb"></el-table-column>
+        </el-table>
+        <el-pagination
+            :hide-on-single-page="false"
+            :page-size="10"
+            :total="dismissCountdata.length"
+            layout="prev, pager, next, total"
+            @current-change="handleCurrentDismissCountPageChange"
+        >
+        </el-pagination>
       </div>
-    </div>
-    <div style="width: 100%; text-align: right; margin-top: 20px">
-      <el-button icon="Search" type="primary" @click="doAdvanceSearch">开始检索</el-button>
-    </div>
-  </el-dialog>
-
-  <el-dialog v-model="showSearch" title="数据搜索" width="700px">
-    检索依据:
-    <el-select v-model="searchMethod" style="width: 100px">
-      <el-option v-for="item in searchMethods" :key="item.code" :label="item.name" :value="item.code"></el-option>
-    </el-select>
-    &nbsp;&nbsp;&nbsp;&nbsp; 搜索内容:
-    <el-input ref="searchInput" v-model="searchContent" clearable placeholder="请输入搜索内容" prefix-icon="Search"
-              style="width: 160px" @input="executeSearch"></el-input>
-    <el-table :data="searchResults" height="400" highlight-current-row stripe @row-click="handleSelectSearch">
-      <el-table-column label="编码" prop="code" width="200"></el-table-column>
-      <el-table-column label="名称" prop="name" width="450"></el-table-column>
-    </el-table>
-    <div style="margin-top: 15px; width: 100%; text-align: right">
-      <el-button :disabled="currentSRPage === 1" icon="ArrowLeft" type="primary" @click="lastPage">上一页
-      </el-button>
-      <el-button :disabled="currentSRPage > 1 && searchResults.length < 10" icon="ArrowRight" type="primary"
-                 @click="nextPage">下一页
-      </el-button>
-    </div>
-  </el-dialog>
-  <el-dialog v-model="showDismissCount" title="出院患者统计" width="70%">
-    <div style="margin: 12px 0">
-      <el-date-picker v-model="disCountParams.month" :clearable="false" placeholder="请选择"
-                      style="width: 110px" type="month"></el-date-picker>
-      <el-select v-model="disCountParams.countType" style="width: 120px" @change="dismissCountdata = []">
-        <el-option value="BY_DEPARTMENT" label="按科室计数"></el-option>
-        <el-option value="BY_SIGN_STAFF" label="按签收人计数"></el-option>
-        <el-option value="BY_DETAIL" label="按明细计数"></el-option>
-        <el-option value="BY_DEATH" label="死亡患者计数"></el-option>
-      </el-select>
-      <el-select v-model="disCountParams.dept" :disabled="disCountParams.type === 1" clearable filterable
-                 placeholder="请选择科室" style="width: 130px">
-        <el-option v-for="item in userWards" :key="item.code" :label="item.name" :value="item.code"></el-option>
-      </el-select>
-      <el-divider direction="vertical"></el-divider>
-      <el-button icon="Search" type="primary" @click="fetchDismissCount">获取统计数据</el-button>
-      <el-button icon="Download" type="primary" @click="exportDismissCount">导出Excel</el-button>
-    </div>
-    <div v-if="disCountParams.countType === 'BY_DEPARTMENT' ">
-      <el-table :data="dismissCountdata" height="360" stripe>
-        <el-table-column label="科室" prop="deptName"></el-table-column>
-        <el-table-column label="出院人数" prop="dismissCount"></el-table-column>
-        <el-table-column label="已签收" prop="signedCount"></el-table-column>
-        <el-table-column label="未签收" prop="unsignCount"></el-table-column>
-      </el-table>
-    </div>
-    <div v-else-if="disCountParams.countType === 'BY_SIGN_STAFF' ">
-      <el-table :data="dismissCountdata" height="360" stripe>
-        <el-table-column label="签收人" prop="signStaffName"></el-table-column>
-        <el-table-column label="签收数量" prop="dismissCount"></el-table-column>
-      </el-table>
-    </div>
-    <div v-else>
-      <el-table :data="dismissCountdata.slice((currentDismissCountPage - 1) * 10, currentDismissCountPage * 10)"
-                height="360" stripe>
-        <el-table-column v-if="disCountParams.countType === 'BY_DETAIL' " label="签收人"
-                         prop="signStaff"></el-table-column>
-        <el-table-column label="住院号" prop="patNo"></el-table-column>
-        <el-table-column label="住院次数" prop="times"></el-table-column>
-        <el-table-column label="姓名" prop="name"></el-table-column>
-        <el-table-column label="性别" prop="gender"></el-table-column>
-        <el-table-column label="年龄" prop="age"></el-table-column>
-        <el-table-column label="入院时间" prop="admissDate"></el-table-column>
-        <el-table-column v-if="disCountParams.countType === 'BY_DETAIL' " label="出院时间"
-                         prop="disDate"></el-table-column>
-        <el-table-column v-if="disCountParams.countType === 'BY_DEATH' " label="死亡时间"
-                         prop="disDate"></el-table-column>
-        <el-table-column label="住院天数" prop="inHospDays"></el-table-column>
-        <el-table-column label="住院费用" prop="totalCharge"></el-table-column>
-        <el-table-column label="入院科室" prop="admissDept"></el-table-column>
-        <el-table-column label="入院诊断" prop="admDiag"></el-table-column>
-        <el-table-column label="出院科室" prop="disDept"></el-table-column>
-        <el-table-column label="转科科室" prop="zkWard"></el-table-column>
-        <el-table-column label="出院主诊断" prop="disDiag"></el-table-column>
-        <el-table-column label="病例分型" prop="blfx"></el-table-column>
-        <el-table-column label="科主任" prop="kzr"></el-table-column>
-        <el-table-column label="主治医师" prop="zzys"></el-table-column>
-        <el-table-column label="住院医师" prop="zyys"></el-table-column>
-        <el-table-column label="法定传染病" prop="fdcrb"></el-table-column>
-      </el-table>
-      <el-pagination
-          :hide-on-single-page="false"
-          :page-size="10"
-          :total="dismissCountdata.length"
-          layout="prev, pager, next, total"
-          @current-change="handleCurrentDismissCountPageChange"
-      >
-      </el-pagination>
-    </div>
-  </el-dialog>
-  <el-dialog v-model="showSheetQuality" title="病案质控" width="70%">
-    <SheetQuality/>
-  </el-dialog>
+    </el-dialog>
+    <el-dialog v-model="showSheetQuality" title="病案质控" width="70%">
+      <SheetQuality/>
+    </el-dialog>
 
-  <el-dialog v-model="showSignedByDay" title="签收统计" width="450px" height="500px" @close="currentSignStaff = ''">
-    <div style="margin-top: 12px">
-      签收日期:
-      <el-button icon="ArrowLeft" @click="dateOffset(-1)"></el-button>
-      <el-date-picker style="width: 110px" :clearable="false" v-model="signDate"
-                      @change="handleSignDateChange"></el-date-picker>
-      <el-button icon="ArrowRight" @click="dateOffset(1)"></el-button>
-    </div>
-    <div style="margin: 12px 0; border-top: 1px solid lightgray"></div>
-    <div>
-      <div style="display: flex; margin-bottom: 12px">
-        <div style="flex: 1">签收人</div>
-        <div style="flex: 1">签收数量</div>
-        <div style="width: 35px"></div>
+    <el-dialog v-model="showSignedByDay" title="签收统计" width="450px" height="500px" @close="currentSignStaff = ''">
+      <div style="margin-top: 12px">
+        签收日期:
+        <el-button icon="ArrowLeft" @click="dateOffset(-1)"></el-button>
+        <el-date-picker style="width: 110px" :clearable="false" v-model="signDate"
+                        @change="handleSignDateChange"></el-date-picker>
+        <el-button icon="ArrowRight" @click="dateOffset(1)"></el-button>
       </div>
-      <div v-for="(val, key) in signData">
-        <div style="display: flex; line-height: 32px; color: #0079ff; font-weight: bold">
-          <div style="flex: 1">
-            {{ key }}
-          </div>
-          <div style="flex: 1">
-            {{ val.length }}
+      <div style="margin: 12px 0; border-top: 1px solid lightgray"></div>
+      <div>
+        <div style="display: flex; margin-bottom: 12px">
+          <div style="flex: 1">签收人</div>
+          <div style="flex: 1">签收数量</div>
+          <div style="width: 35px"></div>
+        </div>
+        <div v-for="(val, key) in signData">
+          <div style="display: flex; line-height: 32px; color: #0079ff; font-weight: bold">
+            <div style="flex: 1">
+              {{ key }}
+            </div>
+            <div style="flex: 1">
+              {{ val.length }}
+            </div>
+            <div style="width: 35px">
+              <el-button icon="Pointer" circle @click="clickSignStaff(key)"></el-button>
+            </div>
           </div>
-          <div style="width: 35px">
-            <el-button icon="Pointer" circle @click="clickSignStaff(key)"></el-button>
+          <div v-if="key === currentSignStaff">
+            <el-table :data="val" :max-height="300">
+              <el-table-column prop="bah" label="住院号"></el-table-column>
+              <el-table-column prop="times" label="住院次数"></el-table-column>
+              <el-table-column prop="name" label="姓名"></el-table-column>
+              <el-table-column prop="genderName" label="性别"></el-table-column>
+              <el-table-column prop="signTime" label="签收时间"></el-table-column>
+            </el-table>
           </div>
         </div>
-        <div v-if="key === currentSignStaff">
-          <el-table :data="val" :max-height="300">
-            <el-table-column prop="bah" label="住院号"></el-table-column>
-            <el-table-column prop="times" label="住院次数"></el-table-column>
-            <el-table-column prop="name" label="姓名"></el-table-column>
-            <el-table-column prop="genderName" label="性别"></el-table-column>
-            <el-table-column prop="signTime" label="签收时间"></el-table-column>
-          </el-table>
-        </div>
       </div>
-    </div>
-  </el-dialog>
+    </el-dialog>
 
-  <el-dialog v-model="showMarkStateDialog" :title="markStateTitle" width="450px">
-    <div style="margin-top: 30px;display: flex">
-      <div style="width: 90px">
-        病案管理员:
+    <el-dialog v-model="showMarkStateDialog" :title="markStateTitle" width="450px">
+      <div style="margin-top: 30px;display: flex">
+        <div style="width: 90px">
+          病案管理员:
+        </div>
+        <el-input style="width: 300px" v-model="markStateRequest.userName" disabled></el-input>
       </div>
-      <el-input style="width: 300px" v-model="markStateRequest.userName" disabled></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 90px">
-        住院号:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 90px">
+          住院号:
+        </div>
+        <el-input style="width: 300px" v-model="markStateRequest.bah" disabled></el-input>
       </div>
-      <el-input style="width: 300px" v-model="markStateRequest.bah" disabled></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 90px">
-        住院次数:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 90px">
+          住院次数:
+        </div>
+        <el-input style="width: 300px" v-model="markStateRequest.times" disabled></el-input>
       </div>
-      <el-input style="width: 300px" v-model="markStateRequest.times" disabled></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 90px">
-        {{ markStateTitle }}时间:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 90px">
+          {{ markStateTitle }}时间:
+        </div>
+        <el-input style="width: 300px" v-model="markStateRequest.markTime" disabled></el-input>
       </div>
-      <el-input style="width: 300px" v-model="markStateRequest.markTime" disabled></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 90px">
-        来访人员:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 90px">
+          来访人员:
+        </div>
+        <el-input style="width: 300px" v-model="markStateRequest.visitStaff"></el-input>
       </div>
-      <el-input style="width: 300px" v-model="markStateRequest.visitStaff"></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 90px">
-        备注:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 90px">
+          备注:
+        </div>
+        <el-input type="textarea" style="width: 300px" v-model="markStateRequest.remark"></el-input>
       </div>
-      <el-input type="textarea" style="width: 300px" v-model="markStateRequest.remark"></el-input>
-    </div>
 
-    <template #footer>
-      <div style="margin-top: -12px">
-        <el-button type="primary" @click="executeDuplicateOrClosedown(false)">提交</el-button>
-        <el-button type="primary" @click="printMarkStateRequest">打印</el-button>
-        <el-button type="success" @click="submitAndPrint">提交并打印</el-button>
-      </div>
-    </template>
-  </el-dialog>
+      <template #footer>
+        <div style="margin-top: -12px">
+          <el-button type="primary" @click="executeDuplicateOrClosedown(false)">提交</el-button>
+          <el-button type="primary" @click="printMarkStateRequest">打印</el-button>
+          <el-button type="success" @click="submitAndPrint">提交并打印</el-button>
+        </div>
+      </template>
+    </el-dialog>
 
 
-  <el-dialog v-model="lendOutDetailVisible" title="借阅详情" width="450px">
-    <div style="margin-top: 30px;display: flex">
-      <div style="width: 100px">
-        病案管理员:
+    <el-dialog v-model="lendOutDetailVisible" title="借阅详情" width="450px">
+      <div style="margin-top: 30px;display: flex">
+        <div style="width: 100px">
+          病案管理员:
+        </div>
+        <el-input style="width: 300px" v-model="lendOutDetail.opStaff" readonly></el-input>
       </div>
-      <el-input style="width: 300px" v-model="lendOutDetail.opStaff" readonly></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 100px">
-        住院号:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 100px">
+          住院号:
+        </div>
+        <el-input style="width: 300px" v-model="lendOutDetail.bah" readonly></el-input>
       </div>
-      <el-input style="width: 300px" v-model="lendOutDetail.bah" readonly></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 100px">
-        住院次数:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 100px">
+          住院次数:
+        </div>
+        <el-input style="width: 300px" v-model="lendOutDetail.times" readonly></el-input>
       </div>
-      <el-input style="width: 300px" v-model="lendOutDetail.times" readonly></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 100px">
-        借阅时间:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 100px">
+          借阅时间:
+        </div>
+        <el-input style="width: 300px" v-model="lendOutDetail.lendTime" readonly></el-input>
       </div>
-      <el-input style="width: 300px" v-model="lendOutDetail.lendTime" readonly></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 100px">
-        借阅人员:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 100px">
+          借阅人员:
+        </div>
+        <el-input style="width: 300px" v-model="lendOutDetail.lendStaff" readonly></el-input>
       </div>
-      <el-input style="width: 300px" v-model="lendOutDetail.lendStaff" readonly></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 100px">
-        借阅人员电话:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 100px">
+          借阅人员电话:
+        </div>
+        <el-input style="width: 300px" v-model="lendOutDetail.lendStaffPhone" readonly></el-input>
       </div>
-      <el-input style="width: 300px" v-model="lendOutDetail.lendStaffPhone" readonly></el-input>
-    </div>
-    <div style="margin-top: 12px;display: flex">
-      <div style="width: 100px">
-        备注:
+      <div style="margin-top: 12px;display: flex">
+        <div style="width: 100px">
+          备注:
+        </div>
+        <el-input type="textarea" style="width: 300px" v-model="lendOutDetail.remark" readonly></el-input>
       </div>
-      <el-input type="textarea" style="width: 300px" v-model="lendOutDetail.remark" readonly></el-input>
-    </div>
 
-  </el-dialog>
+    </el-dialog>
 
-  <el-dialog v-model="showLendOut" title="借阅管理" style="width: 600px">
-    <LendOut :lend-time="currentTime" :user-name="userName"/>
-  </el-dialog>
+    <el-dialog v-model="showLendOut" title="借阅管理" style="width: 600px">
+      <LendOut :lend-time="currentTime" :user-name="userName"/>
+    </el-dialog>
+  </div>
 </template>
 
 <script name="AllCaseFrontSheet" setup>
@@ -488,7 +490,7 @@ const searchPatient = () => {
 }
 
 const dateRange = ref([])
-
+const currentSideRow = ref({})
 const fetchSheetInfo = (row) => {
   if (row.bah !== sheet.value.bah || row.times !== sheet.value.admissTimes) {
     forceVerifies.value = []
@@ -496,6 +498,7 @@ const fetchSheetInfo = (row) => {
   }
   row.inOutFlag = 2
   getSheetInfo(row).then((res) => {
+    currentSideRow.value = row
     sheet.value = res
   })
 }
@@ -857,6 +860,7 @@ const archiveBa = () => {
     sheet: sheet.value,
   }
   executeSaveVerify(param).then(() => {
+    currentSideRow.value.fileStatus = 1
     ElMessage({
       message: '操作成功。',
       type: 'success',
@@ -1003,6 +1007,11 @@ function showLendOutDetail() {
   })
 }
 
+function differSignedRows({row}) {
+  console.log(row.fileStatus)
+  return row.fileStatus === 1 ? 'signed-row' : ''
+}
+
 onActivated(() => {
   initLodop()
 })
@@ -1024,64 +1033,80 @@ onMounted(() => {
 })
 </script>
 
-<style scoped>
-:deep(.el-dialog__body) {
-  padding-top: 0;
-}
+<style lang="scss">
 
-:deep(.el-drawer__header) {
-  margin-bottom: 8px;
-}
+.all-frontsheet {
+  width: 100%;
+  height: 100%;
 
-:deep(.el-checkbox) {
-  margin-right: 15px;
-}
+  .strong-pat-no {
+    font-weight: bold;
+    color: black;
+  }
 
-:deep(.el-checkbox__label) {
-  padding-left: 4px;
-}
+  .el-dialog__body {
+    padding-top: 0;
+  }
+  .el-drawer__header {
+    margin-bottom: 8px;
+  }
+  .el-checkbox {
+    margin-right: 15px;
+  }
+  .el-checkbox__label {
+    padding-left: 4px;
+  }
+  .page-inner {
+    padding: 0 20px 10px 26px;
+    border-radius: 12px;
+    text-align: justify;
+  }
 
-.page-inner {
-  padding: 0 20px 10px 26px;
-  border-radius: 12px;
-  text-align: justify;
-}
+  .message-item {
+    padding: 6px;
+    margin-bottom: 6px;
+    border-radius: 4px;
+  }
 
-.message-item {
-  padding: 6px;
-  margin-bottom: 6px;
-  border-radius: 4px;
-}
+  .message-item:hover {
+    cursor: pointer;
+  }
 
-.message-item:hover {
-  cursor: pointer;
-}
+  .rightside-btn {
+    display: flex;
+    align-items: center;
+    text-align: center;
+    color: white;
+    border-radius: 4px;
+    width: 20px;
+    height: 135px;
+    position: fixed;
+    background: rgb(238, 98, 5);
+    top: 260px;
+    right: 10px;
+    cursor: pointer;
+  }
 
-.rightside-btn {
-  display: flex;
-  align-items: center;
-  text-align: center;
-  color: white;
-  border-radius: 4px;
-  width: 20px;
-  height: 135px;
-  position: fixed;
-  background: rgb(238, 98, 5);
-  top: 260px;
-  right: 10px;
-  cursor: pointer;
-}
+  .no-verify-message {
+    width: 100%;
+    text-align: center;
+    margin-top: 50px;
+    font-size: 18px;
+    color: gray;
+  }
 
-.no-verify-message {
-  width: 100%;
-  text-align: center;
-  margin-top: 50px;
-  font-size: 18px;
-  color: gray;
-}
+  .img-state:hover {
+    scale: 1.08;
+    cursor: pointer;
+  }
 
-.img-state:hover {
-  scale: 1.08;
-  cursor: pointer;
+  .signed-row {
+    .cell, .strong-pat-no {
+      font-weight: bold;
+      font-size: 14px;
+      color: green!important;
+    }
+  }
 }
+
 </style>