From 3573a134c7c7d4d99f605420f9afb2f80e9b8967 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期六, 22 十一月 2025 14:59:46 +0800
Subject: [PATCH] 宣教更新

---
 src/views/patient/propaganda/Missioncreation.vue |  851 ++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 632 insertions(+), 219 deletions(-)

diff --git a/src/views/patient/propaganda/Missioncreation.vue b/src/views/patient/propaganda/Missioncreation.vue
index 5ea6e2d..cfd57e0 100644
--- a/src/views/patient/propaganda/Missioncreation.vue
+++ b/src/views/patient/propaganda/Missioncreation.vue
@@ -82,56 +82,44 @@
                     placeholder="璇疯緭鍏ヤ换鍔℃弿杩�"
                   />
                 </el-form-item>
-                <el-row>
-                  <el-col :span="20"
-                    ><el-form-item label="閫傜敤绉戝" prop="region">
-                      <el-select
-                        v-model="form.deptcode"
-                        style="width: 400px"
-                        size="medium"
-                        filterable
-                        placeholder="璇烽�夋嫨绉戝"
-                      >
-                        <el-option
-                          class="ruleFormaa"
-                          v-for="item in belongDepts"
-                          :key="item.deptCode"
-                          :label="item.deptName"
-                          :value="item.deptCode"
-                        >
-                        </el-option>
-                      </el-select> </el-form-item
-                  ></el-col>
+                <el-form-item label="鏈嶅姟褰㈠紡">
+                  <SortCheckbox
+                    v-model="checkList"
+                    :options="checkboxlist"
+                    :initialselectedOrder="selectedOrder"
+                    value-key="value"
+                    label-key="label"
+                    @change="checkSelectionChange"
+                  />
+                </el-form-item>
+
+                <el-form-item label="鎵ц鍛ㄦ湡" prop="longTask">
+                  <el-radio-group v-model="form.longTask">
+                    <el-radio :label="0">鑷畾涔夊懆鏈�</el-radio>
+                    <el-radio :label="1">闀挎湡浠诲姟</el-radio>
+                  </el-radio-group>
+                </el-form-item>
+                <el-row :gutter="20" v-if="form.longTask">
+                  <el-col :span="8">
+                    <el-form-item label="鍛ㄦ湡鏃堕棿" prop="name">
+                      <el-input
+                        v-model="form.sendDay"
+                        placeholder="榛樿5澶╁悗"
+                      ></el-input>
+                    </el-form-item>
+                  </el-col>
                 </el-row>
-                <el-row>
-                  <el-col :span="20"
-                    ><el-form-item label="閫傜敤鐥呭尯" prop="region">
-                      <el-select
-                        v-model="form.leavehospitaldistrictcode"
-                        style="width: 400px"
-                        size="medium"
-                        filterable
-                        placeholder="璇烽�夋嫨鐥呭尯"
-                      >
-                        <el-option
-                          class="ruleFormaa"
-                          v-for="item in belongWards"
-                          :key="item.districtCode"
-                          :label="item.districtName"
-                          :value="item.districtCode"
-                        >
-                        </el-option>
-                      </el-select> </el-form-item
-                  ></el-col>
-                </el-row>
-                <el-form-item label="鍙戦�佽缃細" v-if="currenttype != 2">
+                <el-form-item label="鎵ц璁剧疆" v-if="!form.longTask">
                   <el-radio-group v-model="form.sendType">
                     <el-radio :label="1">鏃堕棿娈靛彂閫�</el-radio>
                     <el-radio :label="3">鏃堕棿鐐瑰彂閫�</el-radio>
                     <el-radio :label="2">鍗冲埢鍙戦��</el-radio>
                   </el-radio-group>
                 </el-form-item>
-                <el-form-item label="鍙戦�佹棩鏈燂細" v-if="form.sendType == 1">
+                <el-form-item
+                  label="鎵ц鏃ユ湡锛�"
+                  v-if="form.sendType == 1 && !form.longTask"
+                >
                   <el-date-picker
                     v-model="daytime"
                     @change="changeTimeday"
@@ -144,7 +132,10 @@
                   </el-date-picker>
                 </el-form-item>
 
-                <el-form-item label="鍙戦�佹椂闂寸偣锛�" v-if="form.sendType == 3">
+                <el-form-item
+                  label="鎵ц鏃堕棿鐐癸細"
+                  v-if="form.sendType == 3 && !form.longTask"
+                >
                   <div style="display: flex">
                     <div style="margin-right: 10px">
                       <el-date-picker
@@ -159,7 +150,10 @@
                   </div>
                 </el-form-item>
 
-                <el-form-item label="鍙戦�佹椂闂存锛�" v-if="form.sendType == 1">
+                <el-form-item
+                  label="鎵ц鏃堕棿娈碉細"
+                  v-if="form.sendType == 1 && !form.longTask"
+                >
                   <div style="display: flex">
                     <div style="margin-right: 10px">
                       <span style="font-size: 18px; margin-right: 10px">鈶�</span>
@@ -228,17 +222,116 @@
                       /> </el-form-item
                   ></el-col>
                 </el-row>
-                <el-form-item label="鏈嶅姟褰㈠紡">
-                  <el-checkbox-group v-model="checkList">
-                    <el-checkbox
-                      v-for="(item, index) in checkboxlist"
-                      :key="index"
-                      :label="item.value"
-                    >
-                      {{ item.label }}</el-checkbox
-                    >
-                  </el-checkbox-group>
+
+                <el-form-item label="浠诲姟鍏宠仈" prop="longTask">
+                  <el-radio-group v-model="form.appltype">
+                    <el-radio label="1">绉戝鍏宠仈</el-radio>
+                    <el-radio label="2">鐥呭尯鍏宠仈</el-radio>
+                    <el-radio label="3">鐤剧梾鍏宠仈</el-radio>
+                    <el-radio label="4">鎵嬫湳鍏宠仈</el-radio>
+                  </el-radio-group>
                 </el-form-item>
+                <el-row v-if="form.appltype == 1">
+                  <el-col :span="20"
+                    ><el-form-item label="閫傜敤绉戝" prop="region">
+                      <el-select
+                        v-model="deptcodesWards"
+                        @remove-tag="removetag"
+                        style="width: 400px"
+                        size="medium"
+                        multiple
+                        filterable
+                        placeholder="璇烽�夋嫨绉戝"
+                      >
+                        <el-option
+                          class="ruleFormaa"
+                          v-for="item in belongDepts"
+                          :label="item.deptName"
+                          :value="item.deptCode"
+                        >
+                        </el-option>
+                      </el-select> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row v-if="form.appltype == 2">
+                  <el-col :span="20"
+                    ><el-form-item label="閫傜敤鐥呭尯" prop="region">
+                      <el-select
+                        v-model="leavehospitaldistrictcodes"
+                        style="width: 400px"
+                        @remove-tag="removehpsp"
+                        size="medium"
+                        multiple
+                        filterable
+                        placeholder="璇烽�夋嫨鐥呭尯"
+                      >
+                        <el-option
+                          class="ruleFormaa"
+                          v-for="item in belongWards"
+                          :label="item.districtName"
+                          :value="item.districtCode"
+                        >
+                        </el-option>
+                      </el-select> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row v-if="form.appltype == 3">
+                  <div class="xinz-infs">
+                    <el-form-item>
+                      <template #label>
+                        <el-tooltip
+                          class="item"
+                          effect="light"
+                          content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!"
+                          placement="top-start"
+                        >
+                          <i class="el-icon-warning-outline"></i>
+                        </el-tooltip>
+                      </template>
+                      <div style="margin-bottom: 10px">
+                        <el-button
+                          type="warning"
+                          @click="$refs.child.handleAddpatient()"
+                          >娣诲姞鐤剧梾璇婃柇</el-button
+                        >
+                      </div>
+                      <el-tag
+                        v-for="tag in diagglist"
+                        @close="removediagg(tag.icd10code)"
+                        type="warning"
+                        closable
+                        :disable-transitions="false"
+                      >
+                        {{ tag.icdname }}
+                      </el-tag>
+                      <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> -->
+                    </el-form-item>
+                  </div>
+                </el-row>
+                <el-row v-if="form.appltype == 4">
+                  <el-col :span="20"
+                    ><el-form-item label="閫傜敤鎵嬫湳" prop="region">
+                      <el-select
+                        v-model="operationcodes"
+                        style="width: 400px"
+                        @remove-tag="removeopera"
+                        size="medium"
+                        :remote-method="remoteopcode"
+                        multiple
+                        filterable
+                        remote
+                        placeholder="璇烽�夋嫨鎵嬫湳"
+                      >
+                        <el-option
+                          class="ruleFormaa"
+                          v-for="item in baseoperaList"
+                          :label="item.opdesc"
+                          :value="item.opcode"
+                        >
+                        </el-option>
+                      </el-select> </el-form-item
+                  ></el-col>
+                </el-row>
               </el-form>
             </div>
           </div>
@@ -306,45 +399,6 @@
             <div class="examine-jic">
               <div class="jic-value">
                 <el-row :gutter="20">
-                  <!--鐢ㄦ埛鏁版嵁-->
-                  <!-- <el-form
-                    :model="topqueryParams"
-                    ref="queryForm"
-                    size="small"
-                    :inline="true"
-                    v-show="showSearch"
-                    label-width="98px"
-                  >
-                    <el-form-item label="鎮h�呭悕绉�">
-                      <el-input v-model="topqueryParams.name"></el-input>
-                    </el-form-item>
-
-                    <el-form-item label="灏辫瘖绉戝">
-                      <el-input v-model="topqueryParams.deptName"></el-input>
-                    </el-form-item>
-                    <el-form-item>
-                      <el-button
-                        type="primary"
-                        icon="el-icon-search"
-                        size="medium"
-                        @click="handleQuery"
-                        >鎼滅储</el-button
-                      >
-                      <el-button
-                        icon="el-icon-refresh"
-                        size="medium"
-                        @click="resetQuery"
-                        >閲嶇疆</el-button
-                      >
-                      <el-button
-                        icon="el-icon-upload2"
-                        size="medium"
-                        type="warning"
-                        >褰撳墠鎮h�呬竴閿彂閫�</el-button
-                      >
-                    </el-form-item>
-                  </el-form> -->
-                  <!-- <el-divider></el-divider> -->
                   <el-row :gutter="10" class="mb8">
                     <el-col :span="1.5">
                       <el-select
@@ -367,7 +421,7 @@
                         icon="el-icon-plus"
                         size="medium"
                         :disabled="!patientqueryParams.allhosp"
-                        @click="handleAddpatient"
+                        @click="handleQuery"
                         >鏂板</el-button
                       >
                     </el-col>
@@ -390,7 +444,6 @@
                         icon="el-icon-upload2"
                         size="medium"
                         @click="handleImport"
-
                         >瀵煎叆</el-button
                       >
                     </el-col>
@@ -454,6 +507,18 @@
                   @keyup.enter.native="handleQuery"
                 ></el-input>
               </el-form-item>
+              <el-form-item label="鎮h�呰瘖鏂細">
+                <el-input
+                  v-model="patientqueryParams.leavediagname"
+                  @keyup.enter.native="handleQuery"
+                ></el-input>
+              </el-form-item>
+              <el-form-item label="涓绘不鍖荤敓锛�">
+                <el-input
+                  v-model="patientqueryParams.drname"
+                  @keyup.enter.native="handleQuery"
+                ></el-input>
+              </el-form-item>
               <el-select
                 v-model="patientqueryParams.searchscope"
                 placeholder="璇烽�夋嫨鎮h�呰寖鍥�"
@@ -496,7 +561,7 @@
             />
           </el-row>
           <pagination
-            v-show="patienttotal > 0"
+            v-show="patienttotal > 0 && this.patientqueryParams.allhosp != 6"
             :total="patienttotal"
             :page.sync="patientqueryParams.pageNum"
             :limit.sync="patientqueryParams.pageSize"
@@ -514,11 +579,19 @@
     <!-- 妯℃澘棰勮 -->
     <el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="60%">
       <div class="preview-left">
-        <!-- 鍗曢�� -->
-        <div v-html="htmlRichText"></div>
+        <!-- 鏍规嵁妯℃澘绫诲瀷鏄剧ず涓嶅悓鍐呭 -->
+        <div v-if="currentTemplateType == '2'">
+          <!-- 閫氱煡妯℃澘鍙樉绀虹函鏂囨湰鍐呭 -->
+          <div style="white-space: pre-wrap; font-size: 16px; line-height: 1.6">
+            {{ plainTextContent }}
+          </div>
+        </div>
+        <div v-else>
+          <!-- 鍏朵粬绫诲瀷妯℃澘鏄剧ず瀵屾枃鏈唴瀹� -->
+          <div v-html="htmlRichText"></div>
+        </div>
       </div>
       <span slot="footer" class="dialog-footer">
-        <!-- <el-button @click="previewGo">鍓嶅線妯℃澘璇︽儏淇敼</el-button> -->
         <el-button type="primary" @click="previewFn">纭浣跨敤</el-button>
       </span>
     </el-dialog>
@@ -590,13 +663,16 @@
 
         <el-table :data="uploadingData" style="width: 100%">
           <el-table-column prop="serial" label="鎮h�卛d"> </el-table-column>
-          <el-table-column prop="name" label="濮撳悕"
-          width="100"> </el-table-column>
-          <el-table-column prop="sex" label="鎬у埆"width="100"> </el-table-column>
-          <el-table-column prop="idcardno" width="300" label="璇佷欢鍙风爜"> </el-table-column>
+          <el-table-column prop="name" label="濮撳悕" width="100">
+          </el-table-column>
+          <el-table-column prop="sex" label="鎬у埆" width="100">
+          </el-table-column>
+          <el-table-column prop="idcardno" width="300" label="璇佷欢鍙风爜">
+          </el-table-column>
           <el-table-column prop="goday" label="鍑虹敓鏃ユ湡"> </el-table-column>
-          <el-table-column prop="telcode" width="200" label="鑱旂郴鏂瑰紡"> </el-table-column>
-          <el-table-column prop="createTime"  width="200" label="鍒涘缓鏃ユ湡">
+          <el-table-column prop="telcode" width="200" label="鑱旂郴鏂瑰紡">
+          </el-table-column>
+          <el-table-column prop="createTime" width="200" label="鍒涘缓鏃ユ湡">
           </el-table-column>
         </el-table>
         <!-- <pagination
@@ -637,26 +713,20 @@
               <el-form-item label="瀹f暀鍚嶇О">
                 <el-input v-model="topqueryParams.preachname"></el-input>
               </el-form-item>
-              <el-form-item label="瀹f暀鍒嗙被" prop="region">
+              <el-form-item label="瀹f暀绫诲瀷" prop="region">
                 <el-select
-                  v-model="topqueryParams.assortid"
+                  v-model="topqueryParams.hetype"
                   size="medium"
                   filterable
                   placeholder="璇烽�夋嫨鍒嗙被"
                 >
-                  <el-option-group
-                    v-for="group in sortlist"
-                    :key="group.id"
-                    :label="group.assortname"
+                  <el-option
+                    v-for="item in heLibraryAssortList"
+                    :key="item.id"
+                    :label="item.value"
+                    :value="item.id"
                   >
-                    <el-option
-                      v-for="item in group.heLibraryAssortList"
-                      :key="item.id"
-                      :label="item.assortname"
-                      :value="item.id"
-                    >
-                    </el-option>
-                  </el-option-group>
+                  </el-option>
                 </el-select>
               </el-form-item>
 
@@ -694,7 +764,7 @@
                 <el-button
                   icon="el-icon-refresh"
                   size="medium"
-                  @click="resetQuery"
+                  @click="resetQuerymb"
                   >閲嶇疆</el-button
                 >
               </el-form-item>
@@ -721,6 +791,13 @@
         </div>
       </div>
     </el-drawer>
+    <Optional-Form
+      ref="child"
+      :dialogVisiblepatient="dialogVisiblepatientjb"
+      :overallCase="diagglist"
+      @addoption="dialogVisiblepatientjb = false"
+      @kkoption="dialogVisiblepatientjb = true"
+    />
   </div>
 </template>
 
@@ -730,20 +807,36 @@
 
 import store from "@/store";
 import {
-  getTaskpatient,
-  getlibrarylist,
-  getFollowuplist,
+  getTaskpatientQC,
+  taskoperhospgetsondel,
+  taskdiaghospgetsondel,
+  getillnesslist,
+  getbaseopera,
+  Externallist,
   getQtemplatelist,
+  getQtemplateobj,
+  taskgetQtemplateobj,
   TaskQuestioncomit,
-  getTaskInfo,
-  gethetaskinfo,
-  delhetaskinfo,
+  deleteTaskQuestioncomit,
+  Questionnairetaskgetson,
+  getTaskQuestioncomit,
+  depthospgetson,
+  getillness,
   Editsingletask,
+  getQtemplateclassify,
+  taskdepthospgetsondel,
+  taskdepthospgetsonlist,
+  taskdiaggetlist,
+  taskopergetlist,
+  getTaskInfo,
   getheLibraryAssort,
+  getlibrarylist,
 } from "@/api/AiCentre/index";
 import { listDept } from "@/api/system/dept";
 import { getToken } from "@/utils/auth";
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
+import OptionalForm from "@/components/OptionalForm";
+import SortCheckbox from "@/components/SortCheckbox"; //琛ㄦ牸缁勪欢
 
 export default {
   name: "ServiceDetails",
@@ -751,11 +844,14 @@
     return {
       title: "瀹f暀鍐呭鍒楄〃",
       currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闂嵎
+      currentTemplateType: "", // 褰撳墠妯℃澘绫诲瀷
+      plainTextContent: "", // 绾枃鏈唴瀹�
       id: "", //
       previewid: "", //浠诲姟妯℃澘浼犻�抜d
       libName: "",
       overallCase: [], //閫夋嫨鎮h�呮��
       allpids: [],
+      diagglist: [],
       libId: null, //妯℃澘搴撴ā鏉縤d
       Editprogress: 1, //缂栬緫杩涘害
       drawermb: false, //閫夋嫨妯℃澘寮圭獥
@@ -763,20 +859,27 @@
       loading: false, // 閬僵灞�
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
+      dialogVisiblepatientjb: false, //娣诲姞鐤剧梾寮规
       radio: 1,
       checkboxlist: [],
+      selectedOrder: [],
+      baseoperaList: [],
       // 绉戝/鐥呭尯
-      belongWards: [],
       belongWards: [],
       tableLabel: [],
       questionList: [],
       uploadingData: [],
+      deptcodesWards: [], //绉戝鏁版嵁
+      leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁
+      operationcodes: [], //鎵嬫湳鏁版嵁
+      illnesscodes: [], //鐤剧梾鏁版嵁
       htmlRichText: "<p>Hello, <strong>world</strong>!</p>",
       // 鎮h�呰〃鍗�
       tableLabelhz: [
-        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
         { label: "鎮h��", width: "", prop: "name" },
-        { label: "韬唤璇�", width: "200", prop: "sfzh" },
+        { label: "韬唤璇�", width: "200", prop: "idcardno" },
+        { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
         { label: "鎬у埆", width: "", prop: "sex" },
         { label: "骞撮緞", width: "", prop: "age" },
         { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
@@ -789,6 +892,7 @@
         { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
         { label: "鎮h��", width: "", prop: "name" },
         { label: "韬唤璇�", width: "200", prop: "sfzh" },
+        { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
         { label: "鎬у埆", width: "", prop: "sex" },
         { label: "骞撮緞", width: "", prop: "age" },
         { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
@@ -800,7 +904,7 @@
       tableLabelxj: [
         { label: "鍒涘缓浜�", width: "", prop: "createBy" },
         { label: "瀹f暀鍚嶇О", width: "180", prop: "preachname" },
-        { label: "瀹f暀鎻忚堪", width: "180", prop: "preachcontent" },
+        { label: "瀹f暀鍐呭", width: "180", prop: "preachcontent" },
         // { label: "瀹f暀褰㈠紡", width: "", prop: "playType" },
         { label: "閫傜敤鏂瑰紡", width: "", prop: "suitway" },
         { label: "淇敼鏃ユ湡", width: "", prop: "uploadTime" },
@@ -855,6 +959,8 @@
       patientqueryParams: {
         pageNum: 1, //
         pageSize: 10,
+        leavehospitaldistrictcodes: [],
+        leaveldeptcodes: [],
       },
       topicoptions: [{ children: [{ children: [] }] }],
       showSearch: true, //
@@ -914,24 +1020,34 @@
       ],
       variableListTime: [],
       sortlist: [],
+      heLibraryAssortList: [
+        { id: 1, value: "瀹f暀" },
+        { id: 2, value: "閫氱煡" },
+      ],
       tasktopic: null, //鏂板绫诲瀷
       SelectPatientslist: [],
+      belongDepts: [],
+
       form: {
         patTaskRelevances: [],
         sendType: 1,
+        longTask: 0,
         templatename: "",
         templateid: null,
         libtemplateid: null,
-        kcb: "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄櫙瀹佷汉姘戝尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
+        kcb:
+          "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾垜浠槸" +
+          localStorage.getItem("orgname") +
+          "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
         jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       },
       taskoptions: [
         {
-          value: "1",
+          value: "4",
           label: "鍑洪櫌鐥呬汉",
         },
         {
-          value: "4",
+          value: "1",
           label: "鍦ㄩ櫌鐥呬汉",
         },
         {
@@ -941,6 +1057,14 @@
         {
           value: "3",
           label: "浣撴鐥呬汉",
+        },
+        {
+          value: "6",
+          label: "闄㈠鎮h��",
+        },
+        {
+          value: "5",
+          label: "鎵嬫湳鐥呬汉",
         },
       ],
       source: [
@@ -960,7 +1084,7 @@
       quote: false,
     };
   },
-  components: { SFtable },
+  components: { SFtable, OptionalForm, SortCheckbox },
 
   created() {
     this.id = this.$route.query.id;
@@ -970,7 +1094,7 @@
     this.belongDepts = store.getters.belongDepts;
     this.form.typename = this.$route.query.typename;
     this.form.serviceType = Number(this.$route.query.serviceType);
-    this.listDept();
+    // this.listDept();
     this.Acquisitiontype();
     this.Getdetails();
     this.getheLibraryAssort();
@@ -1084,15 +1208,61 @@
       }
     },
     // 淇濆瓨
-    submitForm(formName) {
+    async submitForm(formName) {
       this.form.preachform = this.checkList.join(",");
       // this.formatFn(1);
-      if (!this.form.patTaskRelevances[0]) {
-        this.$modal.msgError("璇烽�夋嫨鐥呬汉");
-        return;
+      if (!this.form.patTaskRelevances[0] && this.form.longTask == 0) {
+        try {
+          // 绛夊緟鐢ㄦ埛纭
+          await this.$modal.confirm("褰撳墠浠诲姟鏈�夋嫨鎮h�呮槸鍚︿繚瀛橈紵");
+          // 鍙湁鐢ㄦ埛鐐瑰嚮鈥滅‘璁も�濆悗锛屼唬鐮佹墠浼氭墽琛屽埌杩欓噷
+        } catch (error) {
+          // 鐢ㄦ埛鐐瑰嚮浜嗏�滃彇娑堚�濓紝鐩存帴涓柇鍑芥暟鎵ц
+          this.$modal.msgWarning("鎿嶄綔宸插彇娑�");
+          return; // 鍏抽敭锛氳繖閲宺eturn鐩存帴閫�鍑哄嚱鏁�
+        }
       }
       if (!this.form.templatename) {
         this.$modal.msgError("鏈�夋嫨妯℃澘");
+        return;
+      }
+      if (this.checkList) {
+        this.form.preachform = this.checkList.join(",");
+        this.form.preachformList = this.selectedOrder;
+      } else {
+        this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷");
+        this.submitLoading = false;
+
+        return;
+      }
+      if (this.form.appltype == 1) {
+        this.leavehospitaldistrictcodes = [];
+        this.operationcodes = [];
+        this.illnesscodes = [];
+      } else if (this.form.appltype == 2) {
+        this.deptcodesWards = [];
+        this.operationcodes = [];
+        this.illnesscodes = [];
+      } else if (this.form.appltype == 3) {
+        this.deptcodesWards = [];
+        this.leavehospitaldistrictcodes = [];
+        this.operationcodes = [];
+      } else if (this.form.appltype == 4) {
+        this.deptcodesWards = [];
+        this.illnesscodes = [];
+        this.leavehospitaldistrictcodes = [];
+      }
+      if (
+        this.deptcodesWards[0] ||
+        this.leavehospitaldistrictcodes[0] ||
+        this.diagglist[0] ||
+        this.operationcodes[0] ||
+        this.form.longTask == 2 ||
+        this.serviceType == 3
+      ) {
+      } else {
+        this.$modal.msgError("璇烽�夋嫨浠诲姟鍏宠仈鏉′欢");
+        this.submitLoading = false;
         return;
       }
       const filteredArray = this.variableList.filter(
@@ -1105,17 +1275,18 @@
         this.form.isoperation = 2;
       } else {
         this.form.isoperation = 1;
-        this.form.sendState=1;
+        this.form.sendState = 1;
       }
       if (!this.form.type) {
         this.form.type = this.$route.query.type;
       }
-      this.form.leaveldeptcodes = store.getters.belongDepts.map(
-        (obj) => obj.deptCode
-      );
-      this.form.leavehospitaldistrictcodes = store.getters.belongWards.map(
-        (obj) => obj.districtCode
-      );
+      this.form.deptcode = this.deptcodesWards.join(",");
+      this.form.leavehospitaldistrictcode =
+        this.leavehospitaldistrictcodes.join(",");
+      this.form.opcode = this.operationcodes.join(",");
+      this.form.icd10code = this.diagglist
+        .map((item) => item.icdcode)
+        .join(",");
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
           if (this.form.taskid) {
@@ -1133,28 +1304,33 @@
     // ----------------------琛ㄦ牸瀛愮粍浠朵簨浠�
     // 閫夋嫨妯℃澘骞堕瑙�
     selectfn(row, type) {
-      // 妯℃澘鎯呭喌涓嬭幏鍙栨ā鏉夸俊鎭�
       this.libName = row.preachname;
       this.htmlRichText = null;
       this.libId = row.id;
-      console.log(row, "row");
       this.Tasktemplate = row;
+
+      // 璁剧疆褰撳墠妯℃澘绫诲瀷
+      this.currentTemplateType = row.hetype || "1"; // 榛樿涓哄鏁欑被鍨�
+
       this.previewtf = true;
       this.previewid = row.svyid;
-      console.log(this.questionList, "questionList");
-      // this.Variablehandling(row.svyLibScripts, 1);
-      console.log(row.htmlRichText);
-      axios
-        .get(row.htmlRichText)
-        .then((response) => {
-          console.log(response.data, "鏁版嵁"); // 杈撳嚭鑾峰彇鍒扮殑鏂囦欢鍐呭
-          this.htmlRichText = response.data;
-          this.htmlRichText = this.addStyleToImages(this.htmlRichText);
-        })
-        .catch((error) => {
-          this.$modal.msgError("鑾峰彇瀵屾枃鏈け璐�");
-          console.error("Failed to fetch file:", error);
-        });
+
+      if (this.currentTemplateType == "2") {
+        // 濡傛灉鏄�氱煡妯℃澘锛岃幏鍙栫函鏂囨湰鍐呭
+        this.plainTextContent = row.preachcontent;
+      } else {
+        // 鍏朵粬绫诲瀷妯℃澘鑾峰彇瀵屾枃鏈唴瀹�
+        axios
+          .get(row.htmlRichText)
+          .then((response) => {
+            this.htmlRichText = response.data;
+            this.htmlRichText = this.addStyleToImages(this.htmlRichText);
+          })
+          .catch((error) => {
+            this.$modal.msgError("鑾峰彇瀵屾枃鏈け璐�");
+            console.error("Failed to fetch file:", error);
+          });
+      }
     },
     // 棰勮妯℃澘
     previewfnm() {
@@ -1165,16 +1341,24 @@
         this.Tasktemplate = res.rows[0];
         this.previewtf = true;
         this.previewid = res.rows[0].svyid;
-        axios
-          .get(res.rows[0].htmlRichText)
-          .then((response) => {
-            this.htmlRichText = response.data;
-            this.htmlRichText = this.addStyleToImages(this.htmlRichText);
-          })
-          .catch((error) => {
-            this.$modal.msgError("鑾峰彇瀵屾枃鏈け璐�");
-            console.error("Failed to fetch file:", error);
-          });
+        this.currentTemplateType = res.rows[0].hetype || "1"; // 榛樿涓哄鏁欑被鍨�
+
+        if (this.currentTemplateType == "2") {
+          // 濡傛灉鏄�氱煡妯℃澘锛岃幏鍙栫函鏂囨湰鍐呭
+          this.plainTextContent = res.rows[0].preachcontent;
+        } else {
+          // 鍏朵粬绫诲瀷妯℃澘鑾峰彇瀵屾枃鏈唴瀹�
+          axios
+            .get(res.rows[0].htmlRichText)
+            .then((response) => {
+              this.htmlRichText = response.data;
+              this.htmlRichText = this.addStyleToImages(this.htmlRichText);
+            })
+            .catch((error) => {
+              this.$modal.msgError("鑾峰彇瀵屾枃鏈け璐�");
+              console.error("Failed to fetch file:", error);
+            });
+        }
       });
     },
     addStyleToImages(html) {
@@ -1190,13 +1374,32 @@
       this.overallCase.forEach((item) => {
         this.allpids.push(item.patid);
       });
-      if (this.patientqueryParams.allhosp == 1) {
+      if (this.patientqueryParams.allhosp == 4) {
         this.tableLabelhz = [
+          // { label: "鍏ラ櫌鏃ユ湡", width: "170", prop: "starttime" },
           { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
           { label: "鎮h��", width: "", prop: "name" },
-          { label: "韬唤璇�", width: "200", prop: "sfzh" },
+          { label: "鎮h�呰瘖鏂�", width: "", prop: "leavediagname" },
+          { label: "韬唤璇�", width: "200", prop: "idcardno" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
+          { label: "鐢佃瘽", width: "180", prop: "telcode" },
+          { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
+          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+          { label: "鍖荤敓", width: "", prop: "drname" },
+          { label: "绉戝", width: "180", prop: "dept" },
+          { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
+        ];
+      } else if (this.patientqueryParams.allhosp == 1) {
+        this.tableLabelhz = [
+          { label: "鍏ラ櫌鏃ユ湡", width: "150", prop: "starttime" },
+          { label: "鎮h��", width: "", prop: "name" },
+          { label: "鎮h�呰瘖鏂�", width: "", prop: "leavediagname" },
+          { label: "韬唤璇�", width: "200", prop: "idcardno" },
+          { label: "鎬у埆", width: "", prop: "sex" },
+          { label: "骞撮緞", width: "", prop: "age" },
+          { label: "鐢佃瘽", width: "180", prop: "telcode" },
+          { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
           { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
           { label: "鍖荤敓", width: "", prop: "drname" },
           { label: "绉戝", width: "180", prop: "dept" },
@@ -1204,14 +1407,18 @@
         ];
       } else if (this.patientqueryParams.allhosp == 2) {
         this.tableLabelhz = [
-          { label: "搴忓彿", width: "", prop: "patid" },
-          { label: "鎮h�呭悕绉�", width: "", prop: "name" },
+          { label: "灏辫瘖鏃ユ湡", width: "150", prop: "admitdate" },
+          { label: "鎮h��", width: "", prop: "name" },
+          { label: "韬唤璇�", width: "200", prop: "idcardno" },
+          { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
-          { label: "璇婃柇", width: "", prop: "diagname" },
-          { label: "灏辫瘖绉戝", width: "", prop: "deptName" },
-          { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" },
-          { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+          { label: "鐢佃瘽", width: "180", prop: "telcode" },
+          { label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
+          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+          { label: "鍖荤敓", width: "", prop: "drname" },
+          { label: "绉戝", width: "180", prop: "dept" },
+          { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
       }
       if (this.allpids[0]) {
@@ -1219,33 +1426,26 @@
       } else {
         this.patientqueryParams.pids = null;
       }
-      // 绫诲瀷鍒ゆ柇
-      if (this.patientqueryParams.allhosp == 1) {
-        this.patientqueryParams.cry = 1;
-      } else if (this.patientqueryParams.allhosp == 4) {
-        this.patientqueryParams.cry = 0;
-        this.patientqueryParams.allhosp = "1";
-      }
-      if (this.patientqueryParams.searchscope == 1) {
-        this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
-          (obj) => obj.deptCode
-        );
+      if (this.patientqueryParams.allhosp == 4) {
+        this.patientqueryParams.hospitaldistrictcodes = [];
+        this.patientqueryParams.deptcodes = [];
+      } else if (this.patientqueryParams.allhosp == 1) {
+        this.patientqueryParams.deptcodes =
+          this.patientqueryParams.leaveldeptcodes;
+        this.patientqueryParams.hospitaldistrictcodes =
+          this.patientqueryParams.leavehospitaldistrictcodes;
         this.patientqueryParams.leavehospitaldistrictcodes = [];
-      } else if (this.patientqueryParams.searchscope == 2) {
-        this.patientqueryParams.leavehospitaldistrictcodes =
-          store.getters.belongWards.map((obj) => obj.districtCode);
         this.patientqueryParams.leaveldeptcodes = [];
-      } else {
-        this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
-          (obj) => obj.deptCode
-        );
-        this.patientqueryParams.leavehospitaldistrictcodes =
-          store.getters.belongWards.map((obj) => obj.districtCode);
       }
 
-      getTaskpatient(this.patientqueryParams).then((response) => {
+      getTaskpatientQC(this.patientqueryParams).then((response) => {
         console.log(response);
         this.patientuserList = response.rows;
+        this.patientuserList.forEach((item) => {
+          if (item.endtime) {
+            item.endDay = this.daysBetween(item.endtime);
+          }
+        });
         this.patienttotal = response.total;
         this.loading = false;
         this.Restorecheck();
@@ -1257,9 +1457,8 @@
     handleExport() {},
 
     // 閫夋嫨鎮h�呰〃鏁版嵁
-    handleSelectionChange(selection,type) {
-      console.log("澶氶�夋偅鑰�");
-      this.SelectPatientslist = selection;
+    handleSelectionChange(selection) {
+      this.SelectPatientslist = structuredClone(selection);
       this.multiple = !selection.length;
 
       // 璧嬪�肩粰鏁翠綋閫変腑鏁扮粍
@@ -1268,13 +1467,22 @@
         if (!isExist) {
           item.isoperation = 1;
           item.patid = item.id;
-          if (item.idcardno) {
-            item.sfzh = item.idcardno;
+          item.hospType = this.patientqueryParams.allhosp;
+          item.sfzh = item.idcardno;
+          item.deptCode = item.deptcode;
+          item.deptName = item.dept;
+          item.admindate = item.inhosptime;
+          item.diagname = item.leavediagname;
+          item.sfzh = item.idcardno;
+          if (this.patientqueryParams.allhosp == 6) {
+            item.patfrom = 1;
           }
-          if (type) {
-            item.hospType=type
-          }else{
-            item.hospType = this.patientqueryParams.allhosp;
+          if (this.patientqueryParams.allhosp == 1) {
+            item.visittime = item.endtime;
+          } else if (this.patientqueryParams.allhosp == 4) {
+            item.visittime = item.starttime;
+          } else if (this.patientqueryParams.allhosp == 2) {
+            item.visittime = item.admitdate;
           }
           this.overallCase.push(item);
           this.form.patTaskRelevances.push(item);
@@ -1323,9 +1531,54 @@
     },
     getList() {},
     handleQuery() {
+      if (this.patientqueryParams.allhosp == 6) {
+        this.Externallist();
+        console.log();
+
+        return;
+      }
+      if (this.patientqueryParams.searchscope == 1) {
+        this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.patientqueryParams.leavehospitaldistrictcodes = [];
+      } else if (this.patientqueryParams.searchscope == 2) {
+        this.patientqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+        this.patientqueryParams.leaveldeptcodes = [];
+      } else {
+        this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+          (obj) => obj.deptCode
+        );
+        this.patientqueryParams.leavehospitaldistrictcodes =
+          store.getters.belongWards.map((obj) => obj.districtCode);
+      }
+      if (
+        !this.patientqueryParams.leavehospitaldistrictcodes ||
+        !this.patientqueryParams.leavehospitaldistrictcodes[0]
+      )
+        this.patientqueryParams.leavehospitaldistrictcodes = null;
+      if (
+        !this.patientqueryParams.leaveldeptcodes ||
+        !this.patientqueryParams.leaveldeptcodes[0]
+      )
+        this.patientqueryParams.leaveldeptcodes = null;
       this.handleAddpatient();
     },
-    resetQuery() {},
+    resetQuery() {
+      this.patientqueryParams = {
+        pageNum: 1, //
+        pageSize: 10,
+        topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯
+        leavehospitaldistrictcodes: [],
+        leaveldeptcodes: [],
+      };
+      this.handleQuery();
+    },
+    resetQuerymb() {
+      this.topqueryParams = { svyname: "" };
+      this.handleQuerymb();
+    },
     handleClosehz() {
       this.dialogVisiblepatient = false;
     },
@@ -1351,7 +1604,10 @@
         templateid: null,
         libtemplateid: null,
         serviceType: Number(this.$route.query.serviceType),
-        kcb: "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄櫙瀹佷汉姘戝尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�",
+        kcb:
+          "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾垜浠槸" +
+          localStorage.getItem("orgname") +
+          "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
         jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       };
 
@@ -1367,6 +1623,7 @@
               : [];
             this.overallCase = this.form.patTaskRelevances.concat();
             this.checkList = this.form.preachform.split(",");
+            this.selectedOrder = this.form.preachformList;
             console.log(this.form.showDate, "this.form");
             if (this.form.daytime) this.daytime = this.form.showDate.split(",");
             console.log(this.newadd, "渚濈収");
@@ -1394,6 +1651,49 @@
         });
       }
     },
+    checkSelectionChange(selectedValues, selectedOrder) {
+      this.selectedOrder = selectedValues;
+      console.log("褰撳墠閫変腑:", selectedValues);
+      console.log("閫変腑椤哄簭:", selectedOrder);
+    },
+    getillnesslist() {
+      getillnesslist({
+        pageNum: 1,
+        pageSize: 1000,
+      }).then((res) => {
+        this.donorchargeList = res.rows;
+      });
+      getbaseopera({
+        pageNum: 1,
+        pageSize: 1000,
+      }).then((res) => {
+        this.baseoperaList = res.rows;
+      });
+    },
+    // 鎵嬫湳鏌ヨ
+    remoteopcode(name) {
+      if (name) {
+        getbaseopera({
+          pageNum: 1,
+          pageSize: 1000,
+          opdesc: name,
+        }).then((res) => {
+          this.baseoperaList = res.rows;
+        });
+      }
+    },
+    // 鐤剧梾鏌ヨ
+    remotedonor(name) {
+      if (name) {
+        getbaseopera({
+          pageNum: 1,
+          pageSize: 1000,
+          opdesc: name,
+        }).then((res) => {
+          this.baseoperaList = res.rows;
+        });
+      }
+    },
     // 渚濈収鏂板鏃跺鐞�
     neWaddfn() {
       this.id = null;
@@ -1418,9 +1718,45 @@
     },
     // 鑾峰彇绉戝鍒楄〃
     listDept() {
-      listDept().then((res) => {
-        this.topicoptions = this.handleTree(res.data, "deptId");
-        console.log(this.topicoptions, "topicoptions");
+      this.leavehospitaldistrictcodes = [];
+      this.deptcodesWards = [];
+      this.queryParamsdept.taskId = this.form.taskid;
+      taskdepthospgetsonlist(this.queryParamsdept).then((res) => {
+        if (res.code == 200) {
+          let arr = res.rows;
+          arr.forEach((item) => {
+            if (item.deptType == 1) {
+              this.deptlist.push(item);
+              this.deptcodesWards.push(item.deptCode);
+            } else if (item.deptType == 2) {
+              this.hosplist.push(item);
+              this.leavehospitaldistrictcodes.push(item.deptCode);
+            }
+          });
+        }
+      });
+      taskdiaggetlist(this.queryParamsdept).then((res) => {
+        if (res.code == 200) {
+          let arr = res.rows;
+          arr.forEach((item) => {
+            getillnesslist({
+              icdcode: item.icd10code,
+            }).then((res) => {
+              item.icdname = res.rows[0].icdname;
+              this.diagglist.push(item);
+            });
+            this.illnesscodes.push(item.icd10code);
+          });
+        }
+      });
+      taskopergetlist(this.queryParamsdept).then((res) => {
+        if (res.code == 200) {
+          let arr = res.rows;
+          arr.forEach((item) => {
+            this.operlist.push(item);
+            this.operationcodes.push(item.opcode);
+          });
+        }
       });
     },
     // 鏂板娲鹃�佹偅鑰�
@@ -1526,6 +1862,7 @@
       TaskQuestioncomit(this.Tasktemplate).then((response) => {
         console.log(response);
         this.previewtf = false;
+        this.drawermb = false;
         this.form.templateid = response.data;
         this.form.libtemplateid = this.libId;
         this.form.templatename = this.libName;
@@ -1562,6 +1899,65 @@
         this.checkList = list;
       }
     },
+    // 浠诲姟绉戝鍒犻櫎瑙﹀彂
+    removetag(row) {
+      let result = this.deptlist
+        .filter((item) => item.deptCode == row)
+        .map((item) => item.id);
+
+      if (result.length) {
+        taskdepthospgetsondel(result).then((res) => {
+          if (res.code) {
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          }
+        });
+      }
+    },
+    // 闄㈠尯鍒犻櫎鍒犻櫎瑙﹀彂
+    removehpsp(row) {
+      let result = this.hosplist
+        .filter((item) => item.deptCode == row)
+        .map((item) => item.id);
+      if (result.length) {
+        taskdepthospgetsondel(result).then((res) => {
+          if (res.code) {
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          }
+        });
+      }
+    },
+    // 鎵嬫湳鍒犻櫎瑙﹀彂
+    removeopera(row) {
+      let result = this.operlist
+        .filter((item) => item.opcode == row)
+        .map((item) => item.id);
+      if (result.length) {
+        taskoperhospgetsondel(result).then((res) => {
+          if (res.code) {
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          }
+        });
+      }
+    },
+    // 鐤剧梾鍒犻櫎瑙﹀彂
+    removediagg(row) {
+      console.log(row, "row");
+      console.log(this.diagglist, "this.diagglist");
+
+      let result = this.diagglist
+        .filter((item) => item.icd10code == row)
+        .map((item) => item.id);
+      if (result.length) {
+        taskdiaghospgetsondel(result).then((res) => {
+          if (res.code) {
+            this.diagglist = this.diagglist.filter(
+              (item) => item.icd10code != row
+            );
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          }
+        });
+      }
+    },
     /** 瀵煎叆鎸夐挳鎿嶄綔 */
     handleImport() {
       this.upload.title = "鐢ㄦ埛瀵煎叆";
@@ -1584,9 +1980,9 @@
         this.$refs.upload.submit();
         this.dractive++;
       } else if (this.dractive == 2) {
-        this.handleSelectionChange(this.uploadingData,4);
+        this.handleSelectionChange(this.uploadingData, 4);
         this.upload.open = false;
-        this.dractive = 1
+        this.dractive = 1;
       }
     },
 
@@ -1737,6 +2133,23 @@
     }
   }
 }
+/* 鏂板鏍峰紡 */
+.preview-left {
+  padding: 20px;
+  max-height: 70vh;
+  overflow-y: auto;
+}
+
+/* 绾枃鏈唴瀹规牱寮� */
+.plain-text-content {
+  white-space: pre-wrap;
+  font-size: 16px;
+  line-height: 1.6;
+  padding: 15px;
+  background: #f9f9f9;
+  border-radius: 4px;
+}
+
 .download {
   text-align: center;
   .el-upload__tip {
@@ -1767,7 +2180,7 @@
   }
 }
 .button-textsc {
-  color: #28cfe6;
+  color: #3664d9;
 }
 .button-textxg {
   color: #de7897;

--
Gitblit v1.9.3