From 1a090a490d8fc93224a0e3ad0fd7fe16c9fe63a8 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期二, 21 一月 2025 19:01:11 +0800
Subject: [PATCH] 测试完成

---
 src/views/patient/propaganda/Missioncreation.vue |  788 +++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 580 insertions(+), 208 deletions(-)

diff --git a/src/views/patient/propaganda/Missioncreation.vue b/src/views/patient/propaganda/Missioncreation.vue
index 85e3be6..876fb54 100644
--- a/src/views/patient/propaganda/Missioncreation.vue
+++ b/src/views/patient/propaganda/Missioncreation.vue
@@ -7,7 +7,7 @@
           <el-step
             icon="el-icon-edit"
             title="鍩虹淇℃伅"
-            description="閫夋嫨妯$増銆佸舰寮忕瓑鍩虹淇℃伅"
+            description="閫夋嫨妯℃澘銆佸舰寮忕瓑鍩虹淇℃伅"
           ></el-step>
           <el-step
             icon="el-icon-user"
@@ -21,7 +21,7 @@
     <div class="leftvlue" style="margin: 0 20px">
       <!-- 鍩烘湰淇℃伅 -->
       <div v-if="Editprogress == 1">
-        <el-alert title="閫夋嫨妯$増銆佸舰寮忕瓑鍩虹淇℃伅" type="success" effect="dark">
+        <el-alert title="閫夋嫨妯℃澘銆佸舰寮忕瓑鍩虹淇℃伅" type="success" effect="dark">
         </el-alert>
         <div class="leftvlue-jbxx">
           <!-- 鍩虹淇℃伅 -->
@@ -41,7 +41,7 @@
                       /> </el-form-item
                   ></el-col>
                   <el-col :span="8"
-                    ><el-form-item label="妯$増鍚嶇О">
+                    ><el-form-item label="妯℃澘鍚嶇О">
                       <el-input
                         style="width: 220px"
                         :disabled="true"
@@ -56,7 +56,23 @@
                       @click="drawermb = true"
                       circle
                     ></el-button>
+                    <el-button
+                      v-if="form.templatename"
+                      type="success"
+                      icon="el-icon-search"
+                      @click="previewfnm"
+                      circle
+                    ></el-button>
                   </el-col>
+                  <!-- <el-col :span="2">
+                    <el-button
+                      v-if="form.templatename"
+                      type="success"
+                      icon="el-icon-search"
+                      @click="previewfnm"
+                      circle
+                    ></el-button>
+                  </el-col> -->
                 </el-row>
 
                 <el-form-item label="浠诲姟鎻忚堪">
@@ -66,6 +82,48 @@
                     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-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-radio-group v-model="form.sendType">
                     <el-radio :label="1">鏃堕棿娈靛彂閫�</el-radio>
@@ -104,9 +162,7 @@
                 <el-form-item label="鍙戦�佹椂闂存锛�" v-if="form.sendType == 1">
                   <div style="display: flex">
                     <div style="margin-right: 10px">
-                      <span style="font-size: 18px; margin-right: 10px"
-                        >鏃堕棿娈典竴</span
-                      >
+                      <span style="font-size: 18px; margin-right: 10px">鈶�</span>
                       <el-time-picker
                         is-range
                         arrow-control
@@ -121,9 +177,7 @@
                       </el-time-picker>
                     </div>
                     <div style="margin-right: 10px">
-                      <span style="font-size: 18px; margin-right: 10px"
-                        >鏃堕棿娈典簩</span
-                      >
+                      <span style="font-size: 18px; margin-right: 10px">鈶�</span>
                       <el-time-picker
                         is-range
                         arrow-control
@@ -138,9 +192,7 @@
                       </el-time-picker>
                     </div>
                     <div style="margin-right: 10px">
-                      <span style="font-size: 18px; margin-right: 10px"
-                        >鏃堕棿娈典笁</span
-                      >
+                      <span style="font-size: 18px; margin-right: 10px">鈶�</span>
                       <el-time-picker
                         is-range
                         arrow-control
@@ -156,13 +208,35 @@
                     </div>
                   </div>
                 </el-form-item>
+                <el-row>
+                  <el-col :span="12"
+                    ><el-form-item label="寮�鍦虹櫧" prop="kcb">
+                      <el-input
+                        type="textarea"
+                        :rows="3"
+                        v-model="form.kcb"
+                        placeholder="璇疯緭鍏ュ紑鍦虹櫧"
+                      /> </el-form-item
+                  ></el-col>
+                  <el-col :span="12"
+                    ><el-form-item label="缁撴潫璇�" prop="jsy">
+                      <el-input
+                        type="textarea"
+                        :rows="3"
+                        v-model="form.jsy"
+                        placeholder="璇疯緭鍏ョ粨鏉熻"
+                      /> </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"
-                    ></el-checkbox>
+                      :label="item.value"
+                    >
+                      {{ item.label }}</el-checkbox
+                    >
                   </el-checkbox-group>
                 </el-form-item>
               </el-form>
@@ -309,6 +383,17 @@
                         >鍒犻櫎</el-button
                       >
                     </el-col>
+                    <el-col :span="1.5">
+                      <el-button
+                        type="info"
+                        plain
+                        icon="el-icon-upload2"
+                        size="medium"
+                        @click="handleImport"
+
+                        >瀵煎叆</el-button
+                      >
+                    </el-col>
 
                     <!-- <el-col :span="1.5"> </el-col> -->
                   </el-row>
@@ -317,7 +402,7 @@
                     @details="detailhz"
                     @handleUpdate="handleUpdate"
                     :currentList="overallCase"
-                    :tableLabel="tableLabelhz"
+                    :tableLabel="tableLabelhzwb"
                     :serialnumber="false"
                     :searchTrue="true"
                     :multiplechoice="false"
@@ -363,30 +448,24 @@
               v-show="showSearch"
               label-width="98px"
             >
-              <el-form-item label="鎮h�呭悕绉帮細">
-                <el-input v-model="patientqueryParams.name"></el-input>
+              <el-form-item label="鎮h�咃細">
+                <el-input
+                  v-model="patientqueryParams.name"
+                  @keyup.enter.native="handleQuery"
+                ></el-input>
               </el-form-item>
-
-              <!-- <el-form-item label="灏辫瘖绉戝" prop="status">
-                <el-select
-                  v-model="patientqueryParams.topic"
-                  placeholder="璇烽�夋嫨"
+              <el-select
+                v-model="patientqueryParams.searchscope"
+                placeholder="璇烽�夋嫨鎮h�呰寖鍥�"
+              >
+                <el-option
+                  v-for="item in source"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
                 >
-                  <el-option-group
-                    v-for="group in topicoptions[0].children"
-                    :key="group.deptName"
-                    :label="group.deptName"
-                  >
-                    <el-option
-                      v-for="item in group.children"
-                      :key="item.deptId"
-                      :label="item.deptName"
-                      :value="item.deptId"
-                    >
-                    </el-option>
-                  </el-option-group>
-                </el-select>
-              </el-form-item> -->
+                </el-option>
+              </el-select>
 
               <el-form-item>
                 <el-button
@@ -432,15 +511,108 @@
         >
       </span>
     </el-dialog>
-    <el-dialog title="妯$増棰勮" :visible.sync="previewtf" width="60%">
+    <!-- 妯℃澘棰勮 -->
+    <el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="60%">
       <div class="preview-left">
         <!-- 鍗曢�� -->
-        <div v-html="richText"></div>
+        <div v-html="htmlRichText"></div>
       </div>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="previewGo">鍓嶅線妯$増璇︽儏淇敼</el-button>
+        <!-- <el-button @click="previewGo">鍓嶅線妯℃澘璇︽儏淇敼</el-button> -->
         <el-button type="primary" @click="previewFn">纭浣跨敤</el-button>
       </span>
+    </el-dialog>
+    <!-- 鐢ㄦ埛瀵煎叆瀵硅瘽妗� -->
+    <el-dialog
+      :title="upload.title"
+      :visible.sync="upload.open"
+      width="70%"
+      append-to-body
+    >
+      <el-steps :active="dractive" simple>
+        <el-step title="涓婁紶瀵煎叆鏂囦欢" icon="el-icon-upload"></el-step>
+        <el-step title="瀵煎叆妫�鏌�" icon="el-icon-picture"></el-step>
+      </el-steps>
+      <!-- 涓婁紶瀵煎叆鏂囦欢 -->
+      <div class="download" v-if="dractive == 1">
+        <el-upload
+          class="upload-demo"
+          ref="upload"
+          :limit="1"
+          accept=".xlsx, .xls"
+          :headers="upload.headers"
+          :action="upload.url"
+          :disabled="upload.isUploading"
+          :on-progress="handleFileUploadProgress"
+          :on-success="handleFileSuccess"
+          drag
+        >
+          <i class="el-icon-upload"></i>
+          <div class="el-upload__text">灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em></div>
+          <div class="el-upload__tip text-center" slot="tip">
+            <!-- <div class="el-upload__tip" slot="tip">
+              <el-checkbox v-model="upload.updateSupport" />
+              鏄惁鏇存柊宸茬粡瀛樺湪鐨勭敤鎴锋暟鎹�
+            </div> -->
+            <span>浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢銆�</span>
+            <el-link
+              type="primary"
+              :underline="false"
+              style="font-size: 24px; vertical-align: baseline"
+              @click="importTemplate"
+              >涓嬭浇妯℃澘
+            </el-link>
+            <!-- <el-link
+              type="success"
+              :underline="false"
+              style="font-size: 24px; vertical-align: baseline"
+              href="http://m.qpic.cn/psc?/V50ZTolo1AIhq00dqrJP2169QM2VHGTU/ruAMsa53pVQWN7FLK88i5qfmCJclyMduqqL6kjE4h7TXDAjimVtmLmTyGVfF4qlkyOISsYQ4Mxx705X2tkXEIUPrfCS4L4yK.f11SmO8Tq0!/b&bo=twb0AgAAAAADB2U!&rf=viewer_4"
+              target="_blank"
+            >
+              鏌ョ湅妯℃澘</el-link
+            > -->
+          </div>
+        </el-upload>
+      </div>
+
+      <!-- 瀹屾垚 -->
+      <div class="drexamine" v-else-if="dractive == 2">
+        <div style="display: flex">
+          <img src="@/assets/images/瀵煎叆.png" />
+          <p>瀵煎叆鎮h�呮垚鍔燂紒</p>
+          <p>
+            鏈鎴愬姛瀵煎叆<span style="color: #72d3a9; font-size: 20px">{{
+              uploadingData.length
+            }}</span
+            >浣嶆偅鑰�
+          </p>
+        </div>
+
+        <el-table :data="uploadingData" style="width: 100%">
+          <el-table-column prop="serial" label="鎮h�卛d"> </el-table-column>
+          <el-table-column prop="name" label="濮撳悕"> </el-table-column>
+          <el-table-column prop="sex" label="鎬у埆"> </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>
+        </el-table>
+        <!-- <pagination
+          v-show="total > 0"
+          :total="total"
+          :page.sync="queryParams.pageNum"
+          :limit.sync="queryParams.pageSize"
+          @pagination="geterryList"
+        /> -->
+      </div>
+
+      <div slot="footer">
+        <el-button type="primary" @click="submitFileForm">{{
+          dractive == 1 ? "涓嬩竴姝�" : "鍔犲叆浠诲姟"
+        }}</el-button>
+        <el-button @click="submitclose">鍙� 娑�</el-button>
+      </div>
     </el-dialog>
     <el-drawer
       title="瀹f暀鍐呭鍒楄〃"
@@ -453,7 +625,6 @@
         <div class="jic-value">
           <el-row :gutter="20">
             <!--鐢ㄦ埛鏁版嵁-->
-
             <el-form
               :model="topqueryParams"
               ref="queryForm"
@@ -462,97 +633,33 @@
               v-show="showSearch"
               label-width="98px"
             >
-              <el-form-item
-                label="瀹f暀涓婚"
-                v-if="currenttype == 1 || currenttype == 8"
-              >
-                <el-input v-model="topqueryParams.name"></el-input>
+              <el-form-item label="瀹f暀鍚嶇О">
+                <el-input v-model="topqueryParams.preachname"></el-input>
               </el-form-item>
-              <el-form-item
-                label="瀹f暀鍚嶇О"
-                v-if="currenttype == 2 || currenttype == 3 || currenttype == 7"
-              >
-                <el-input
-                  v-model="topqueryParams.name"
-                ></el-input> </el-form-item
-              ><el-form-item
-                label="閫氱煡鍚嶇О"
-                v-if="currenttype == 4 || currenttype == 5"
-              >
-                <el-input
-                  v-model="topqueryParams.name"
-                ></el-input> </el-form-item
-              ><el-form-item label="浣撴濂楅" v-if="currenttype == 5">
-                <el-input v-model="topqueryParams.name"></el-input>
-              </el-form-item>
-              <el-form-item label="闂嵎涓婚" v-if="currenttype == 6">
-                <el-input v-model="topqueryParams.name"></el-input>
-              </el-form-item>
-              <el-form-item label="閫傜敤鐤剧梾" v-if="currenttype != 5">
-                <el-input v-model="topqueryParams.name"></el-input>
+              <el-form-item label="瀹f暀鍒嗙被" prop="region">
+                <el-select
+                  v-model="topqueryParams.assortid"
+                  size="medium"
+                  filterable
+                  placeholder="璇烽�夋嫨鍒嗙被"
+                >
+                  <el-option-group
+                    v-for="group in sortlist"
+                    :key="group.id"
+                    :label="group.assortname"
+                  >
+                    <el-option
+                      v-for="item in group.heLibraryAssortList"
+                      :key="item.id"
+                      :label="item.assortname"
+                      :value="item.id"
+                    >
+                    </el-option>
+                  </el-option-group>
+                </el-select>
               </el-form-item>
 
-              <el-form-item
-                label="瀹f暀绫诲瀷"
-                prop="status"
-                v-if="currenttype == 1 || currenttype == 8"
-              >
-                <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in taskoptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item
-                label="閫氱煡绫诲瀷"
-                prop="status"
-                v-if="currenttype == 4 || currenttype == 5"
-              >
-                <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in taskoptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item
-                label="瀹f暀绫诲瀷"
-                prop="status"
-                v-if="currenttype == 2 || currenttype == 3 || currenttype == 7"
-              >
-                <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in taskoptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item
-                label="闂嵎绫诲瀷"
-                prop="status"
-                v-if="currenttype == 6"
-              >
-                <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in taskoptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item label="閫傜敤褰㈠紡" prop="status">
+              <!-- <el-form-item label="閫傜敤褰㈠紡" prop="status">
                 <el-select v-model="topqueryParams.topica" placeholder="璇烽�夋嫨">
                   <el-option
                     v-for="item in taskoptions"
@@ -562,9 +669,9 @@
                   >
                   </el-option>
                 </el-select>
-              </el-form-item>
+              </el-form-item> -->
 
-              <el-form-item label="閫傜敤绉戝" prop="status">
+              <!-- <el-form-item label="閫傜敤绉戝" prop="status">
                 <el-select v-model="topqueryParams.topicd" placeholder="璇烽�夋嫨">
                   <el-option
                     v-for="item in topicoptions"
@@ -574,13 +681,13 @@
                   >
                   </el-option>
                 </el-select>
-              </el-form-item>
+              </el-form-item> -->
               <el-form-item>
                 <el-button
                   type="primary"
                   icon="el-icon-search"
                   size="medium"
-                  @click="handleQuery"
+                  @click="Acquisitiontypeget"
                   >鎼滅储</el-button
                 >
                 <el-button
@@ -592,7 +699,7 @@
               </el-form-item>
             </el-form>
             <el-divider></el-divider>
-            <!-- 閫夋嫨妯$増鍒楄〃 -->
+            <!-- 閫夋嫨妯℃澘鍒楄〃 -->
             <SFtable
               @selectfn="selectfn"
               :currentList="userList"
@@ -607,7 +714,7 @@
               :total="total"
               :page.sync="topqueryParams.pageNum"
               :limit.sync="topqueryParams.pageSize"
-              @pagination="Acquisitiontype"
+              @pagination="Acquisitiontypeget"
             />
           </el-row>
         </div>
@@ -631,9 +738,10 @@
   gethetaskinfo,
   delhetaskinfo,
   Editsingletask,
+  getheLibraryAssort,
 } from "@/api/AiCentre/index";
 import { listDept } from "@/api/system/dept";
-
+import { getToken } from "@/utils/auth";
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
 
 export default {
@@ -643,40 +751,58 @@
       title: "瀹f暀鍐呭鍒楄〃",
       currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闂嵎
       id: "", //
-      previewid: "", //浠诲姟妯$増浼犻�抜d
+      previewid: "", //浠诲姟妯℃澘浼犻�抜d
       libName: "",
       overallCase: [], //閫夋嫨鎮h�呮��
       allpids: [],
-      libId: null, //妯℃澘搴撴ā鐗坕d
+      libId: null, //妯℃澘搴撴ā鏉縤d
       Editprogress: 1, //缂栬緫杩涘害
-      drawermb: false, //閫夋嫨妯$増寮圭獥
+      drawermb: false, //閫夋嫨妯℃澘寮圭獥
       previewtf: false, //棰勮
       loading: false, // 閬僵灞�
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
       radio: 1,
       checkboxlist: [],
+      // 绉戝/鐥呭尯
+      belongWards: [],
+      belongWards: [],
       tableLabel: [],
       questionList: [],
-      richText: "<p>Hello, <strong>world</strong>!</p>",
+      uploadingData: [],
+      htmlRichText: "<p>Hello, <strong>world</strong>!</p>",
       // 鎮h�呰〃鍗�
       tableLabelhz: [
-        { label: "搴忓彿", width: "", prop: "patid" },
-        { label: "鎮h�呭悕绉�", width: "", prop: "name" },
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
+        { label: "鎮h��", width: "", prop: "name" },
+        { label: "韬唤璇�", width: "200", prop: "sfzh" },
         { label: "鎬у埆", width: "", prop: "sex" },
         { label: "骞撮緞", width: "", prop: "age" },
-        { label: "灏辫瘖绉戝", width: "", prop: "deptName" },
-        { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" },
-        { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        { label: "绉戝", width: "240", prop: "dept" },
+        { label: "鐥呭尯", width: "240", prop: "leavehospitaldistrictname" },
+      ],
+      // 鎮h�呰〃鍗�
+      tableLabelhzwb: [
+        { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
+        { label: "鎮h��", width: "", prop: "name" },
+        { label: "韬唤璇�", width: "200", prop: "sfzh" },
+        { label: "鎬у埆", width: "", prop: "sex" },
+        { label: "骞撮緞", width: "", prop: "age" },
+        { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+        { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+        { label: "绉戝", width: "180", prop: "deptName" },
+        { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
       ],
 
       tableLabelxj: [
-        { label: "瀹f暀鍚嶇О", width: "", prop: "preachname" },
-        { label: "瀹f暀鎻忚堪", width: "", prop: "note" },
-        { label: "瀹f暀褰㈠紡", width: "", prop: "playType" },
+        { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+        { label: "瀹f暀鍚嶇О", width: "180", prop: "preachname" },
+        { label: "瀹f暀鎻忚堪", width: "180", prop: "preachcontent" },
+        // { label: "瀹f暀褰㈠紡", width: "", prop: "playType" },
         { label: "閫傜敤鏂瑰紡", width: "", prop: "suitway" },
         { label: "淇敼鏃ユ湡", width: "", prop: "uploadTime" },
-        { label: "鍒涘缓浜�", width: "", prop: "createBy" },
       ],
       // 鍙橀噺
       tableLabelvariable: [
@@ -691,8 +817,24 @@
         { label: "鐭俊", value: 4 },
         { label: "寰俊鍏紬", value: 5 },
         { label: "閽夐拤", value: 6 },
-        { label: "鏅鸿兘鏈哄櫒浜�", value: 7 },
+        // { label: "鏅鸿兘鏈哄櫒浜�", value: 7 },
       ],
+      upload: {
+        // 鏄惁鏄剧ず寮瑰嚭灞傦紙鐢ㄦ埛瀵煎叆锛�
+        open: false,
+        // 寮瑰嚭灞傛爣棰橈紙鐢ㄦ埛瀵煎叆锛�
+        title: "",
+        // 鏄惁绂佺敤涓婁紶
+        isUploading: false,
+        // 鏄惁鏇存柊宸茬粡瀛樺湪鐨勭敤鎴锋暟鎹�
+        updateSupport: 0,
+        // 璁剧疆涓婁紶鐨勮姹傚ご閮�
+        headers: { Authorization: "Bearer " + getToken() },
+        // 涓婁紶鐨勫湴鍧�
+        url: process.env.VUE_APP_BASE_API + "/smartor/import/importPatInfo",
+      },
+      //瀵煎叆杩涘害
+      dractive: 1,
       // 鏃堕棿澶勭悊
       daytime: [], //鏃ユ湡
       applydaytime: [], //璁$畻鏃ユ湡
@@ -725,7 +867,7 @@
       // 闈炲涓鐢�
       multiple: true,
       // 鐢ㄦ埛琛ㄦ牸鏁版嵁
-      userList: [], //妯$増鍒楄〃
+      userList: [], //妯℃澘鍒楄〃
       patientuserList: [], //閫夋嫨鎮h�呭垪琛�
       sonuserList: [], //閫変腑鎮h�呭垪琛�
       delvariableList: [], //鍒犻櫎鍙橀噺涓存椂瀛樺偍
@@ -770,6 +912,7 @@
         },
       ],
       variableListTime: [],
+      sortlist: [],
       tasktopic: null, //鏂板绫诲瀷
       SelectPatientslist: [],
       form: {
@@ -778,11 +921,17 @@
         templatename: "",
         templateid: null,
         libtemplateid: null,
+        kcb: "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
+        jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
       },
       taskoptions: [
         {
           value: "1",
           label: "鍑洪櫌鐥呬汉",
+        },
+        {
+          value: "4",
+          label: "鍦ㄩ櫌鐥呬汉",
         },
         {
           value: "2",
@@ -793,6 +942,20 @@
           label: "浣撴鐥呬汉",
         },
       ],
+      source: [
+        {
+          value: 0,
+          label: "鎵�灞炴偅鑰�",
+        },
+        {
+          value: 1,
+          label: "绉戝鎮h��",
+        },
+        {
+          value: 2,
+          label: "鐥呭尯鎮h��",
+        },
+      ],
       quote: false,
     };
   },
@@ -801,10 +964,15 @@
   created() {
     this.id = this.$route.query.id;
     this.form.type = this.$route.query.type;
+    this.newadd = this.$route.query.newadd;
+    this.belongWards = store.getters.belongWards;
+    this.belongDepts = store.getters.belongDepts;
     this.form.typename = this.$route.query.typename;
+    this.form.serviceType = Number(this.$route.query.serviceType);
     this.listDept();
     this.Acquisitiontype();
     this.Getdetails();
+    this.getheLibraryAssort();
   },
 
   methods: {
@@ -836,6 +1004,14 @@
       });
       return result;
     },
+    Acquisitiontypeget() {
+      console.log(2211);
+
+      getlibrarylist(this.topqueryParams).then((response) => {
+        this.userList = response.rows;
+        this.total = response.total;
+      });
+    },
     // 鑾峰彇褰撳墠绫诲瀷
     Acquisitiontype() {
       let queryParams = {
@@ -846,7 +1022,56 @@
       this.currenttype = this.$route.query.type;
       this.title = "瀹f暀鍐呭鍒楄〃";
       this.tableLabel = this.tableLabelxj;
-      this.checkboxlist = ["鐭俊", "寰俊", "浜哄伐鐢佃瘽", "鏅鸿兘鏈哄櫒浜�"];
+      if (this.form.serviceType == 4) {
+        this.checkboxlist = [
+          {
+            value: "2",
+            label: "绾歌川",
+          },
+
+          {
+            value: "4",
+            label: "鐭俊",
+          },
+          {
+            value: "5",
+            label: "寰俊鍏紬鍙�",
+          },
+          {
+            value: "6",
+            label: "寰俊灏忕▼搴�",
+          },
+
+          // {
+          //   value: "8",
+          //   label: "鏅鸿兘鏈哄櫒浜�",
+          // },
+        ];
+      } else if (this.form.serviceType == 8) {
+        this.checkboxlist = [
+          {
+            value: "4",
+            label: "鐭俊",
+          },
+          {
+            value: "5",
+            label: "寰俊鍏紬鍙�",
+          },
+          {
+            value: "6",
+            label: "寰俊灏忕▼搴�",
+          },
+
+          // {
+          //   value: "8",
+          //   label: "鏅鸿兘鏈哄櫒浜�",
+          // },
+          {
+            value: "9",
+            label: "閽夐拤",
+          },
+        ];
+      }
       getlibrarylist(queryParams).then((response) => {
         this.userList = response.rows;
         this.total = response.total;
@@ -859,11 +1084,14 @@
     },
     // 淇濆瓨
     submitForm(formName) {
-      // this.form.preachform = this.checkList.join(",");
-      this.formatFn(1);
-      this.form.hospType = this.currenttype;
+      this.form.preachform = this.checkList.join(",");
+      // this.formatFn(1);
       if (!this.form.patTaskRelevances[0]) {
         this.$modal.msgError("璇烽�夋嫨鐥呬汉");
+        return;
+      }
+      if (!this.form.templatename) {
+        this.$modal.msgError("鏈�夋嫨妯℃澘");
         return;
       }
       const filteredArray = this.variableList.filter(
@@ -876,10 +1104,17 @@
         this.form.isoperation = 2;
       } else {
         this.form.isoperation = 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
+      );
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
           if (this.form.taskid) {
@@ -889,17 +1124,17 @@
           }
           this.$router.push({
             path: "/followvisit/tasklist",
-            query: { tasktopic: 1 },
+            query: { tasktopic: this.form.serviceType },
           });
         }
       });
     },
     // ----------------------琛ㄦ牸瀛愮粍浠朵簨浠�
-    // 纭閫夋嫨妯$増鏀惧叆浠诲姟妯$増
+    // 閫夋嫨妯℃澘骞堕瑙�
     selectfn(row, type) {
-      // 妯$増鎯呭喌涓嬭幏鍙栨ā鐗堜俊鎭�
+      // 妯℃澘鎯呭喌涓嬭幏鍙栨ā鏉夸俊鎭�
       this.libName = row.preachname;
-      this.richText = null;
+      this.htmlRichText = null;
       this.libId = row.id;
       console.log(row, "row");
       this.Tasktemplate = row;
@@ -907,17 +1142,39 @@
       this.previewid = row.svyid;
       console.log(this.questionList, "questionList");
       // this.Variablehandling(row.svyLibScripts, 1);
-      console.log(row.richText);
+      console.log(row.htmlRichText);
       axios
-        .get(row.richText)
+        .get(row.htmlRichText)
         .then((response) => {
           console.log(response.data, "鏁版嵁"); // 杈撳嚭鑾峰彇鍒扮殑鏂囦欢鍐呭
-          this.richText = response.data;
-          this.richText = this.addStyleToImages(this.richText);
+          this.htmlRichText = response.data;
+          this.htmlRichText = this.addStyleToImages(this.htmlRichText);
         })
         .catch((error) => {
+          this.$modal.msgError("鑾峰彇瀵屾枃鏈け璐�");
           console.error("Failed to fetch file:", error);
         });
+    },
+    // 棰勮妯℃澘
+    previewfnm() {
+      getlibrarylist({ id: this.form.libtemplateid }).then((res) => {
+        this.libName = res.rows[0].preachname;
+        this.htmlRichText = null;
+        this.libId = res.rows[0].id;
+        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);
+          });
+      });
     },
     addStyleToImages(html) {
       return html.replace(
@@ -925,52 +1182,24 @@
         '<img$1style="width:100%;height:auto;"$3>'
       );
     },
-    // 澶勭悊闂灞傚彉閲�
-    // Variablehandling(arr, type) {
-    //   let Variablist = [];
-    //   if (type == 1) {
-    //     console.log(arr);
-    //     // 寰幆闂
-    //     arr.forEach((res) => {
-    //       console.log(JSON.parse(res.otherdata), "ss");
-    //       // 寰幆閫夐」
-    //       JSON.parse(res.otherdata).forEach((item) => {
-    //         if (item.default != 1) {
-    //           Variablist.push({
-    //             value: item.variate,
-    //             fill: "",
-    //             name: item.variatename,
-    //           });
-    //         }
-    //       });
-    //     });
-    //     console.log(Variablist, "Variablist");
-    //     const Aarr = Variablist.filter(
-    //       (obj, index, self) =>
-    //         index ===
-    //         self.findIndex((t) => t.name === obj.name && t.value === obj.value)
-    //     );
-    //     this.variableList = this.transitionList.concat(Aarr);
-    //     // this.form.textParam = this.convertFormat2ToFormat1(this.variableList);
-    //   }
-    // },
+
     // 瀛愪换鍔′簩绾у脊妗�
     handleAddpatient(row) {
-      console.log(this.overallCase, "ssaaa");
       this.allpids = [];
       this.overallCase.forEach((item) => {
         this.allpids.push(item.patid);
       });
       if (this.patientqueryParams.allhosp == 1) {
         this.tableLabelhz = [
-          { label: "搴忓彿", width: "", prop: "patid" },
-          { label: "鎮h�呭悕绉�", width: "", prop: "name" },
+          { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
+          { label: "鎮h��", width: "", prop: "name" },
+          { label: "韬唤璇�", width: "200", prop: "sfzh" },
           { label: "鎬у埆", width: "", prop: "sex" },
           { label: "骞撮緞", width: "", prop: "age" },
-          { label: "涓讳换鍖诲笀", width: "", prop: "drname" },
-          { label: "灏辫瘖绉戝", width: "", prop: "deptName" },
-          { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" },
-          { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+          { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+          { label: "鍖荤敓", width: "", prop: "drname" },
+          { label: "绉戝", width: "180", prop: "dept" },
+          { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
         ];
       } else if (this.patientqueryParams.allhosp == 2) {
         this.tableLabelhz = [
@@ -986,9 +1215,31 @@
       }
       if (this.allpids[0]) {
         this.patientqueryParams.pids = this.allpids;
-        console.log(this.patientqueryParams.pids);
       } 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
+        );
+        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) => {
@@ -1005,7 +1256,7 @@
     handleExport() {},
 
     // 閫夋嫨鎮h�呰〃鏁版嵁
-    handleSelectionChange(selection) {
+    handleSelectionChange(selection,type) {
       console.log("澶氶�夋偅鑰�");
       this.SelectPatientslist = selection;
       this.multiple = !selection.length;
@@ -1015,7 +1266,15 @@
         const isExist = this.overallCase.find((obj) => obj.name == item.name);
         if (!isExist) {
           item.isoperation = 1;
-          item.hospType = this.patientqueryParams.allhosp;
+          item.patid = item.id;
+          if (item.idcardno) {
+            item.sfzh = item.idcardno;
+          }
+          if (type) {
+            item.hospType=type
+          }else{
+            item.hospType = this.patientqueryParams.allhosp;
+          }
           this.overallCase.push(item);
           this.form.patTaskRelevances.push(item);
         }
@@ -1077,13 +1336,24 @@
     resetForm(formName) {
       this.$refs[formName].resetFields();
     },
-    // 棰勮妯$増
+    // 棰勮妯℃澘
     PreviewTemplate() {},
     Acknowledgereference() {
       this.quote = true;
     },
     // 鑾峰彇璇︽儏
     Getdetails() {
+      this.form = {
+        patTaskRelevances: [],
+        sendType: 1,
+        templatename: "",
+        templateid: null,
+        libtemplateid: null,
+        serviceType: Number(this.$route.query.serviceType),
+        kcb: "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�",
+        jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
+      };
+
       if (this.id) {
         getTaskInfo({ taskid: this.id }).then((res) => {
           let filteredArray = "";
@@ -1095,9 +1365,11 @@
               ? this.form.patTaskRelevances
               : [];
             this.overallCase = this.form.patTaskRelevances.concat();
-            this.formatFn(2);
+            this.checkList = this.form.preachform.split(",");
             console.log(this.form.showDate, "this.form");
-            this.daytime = this.form.showDate.split(",");
+            if (this.form.daytime) this.daytime = this.form.showDate.split(",");
+            console.log(this.newadd, "渚濈収");
+
             if (this.form.showTimeMorn) {
               if (this.form.sendType == 3) {
                 this.time4 = this.form.showTimeMorn;
@@ -1115,8 +1387,33 @@
           } else {
             this.$modal.msgError(res.code);
           }
+          if (this.newadd) {
+            this.neWaddfn();
+          }
         });
       }
+    },
+    // 渚濈収鏂板鏃跺鐞�
+    neWaddfn() {
+      this.id = null;
+      // this.form.taskName = "";
+      this.form.taskid = null;
+      console.log("渚濈収");
+      this.overallCase = [];
+      this.form.patTaskRelevances = [];
+      this.daytime = []; //鏃ユ湡
+      this.applydaytime = []; //璁$畻鏃ユ湡
+      this.time1 = ""; //涓婂崍鏃堕棿娈�
+      this.time2 = ""; //涓嬪崍鏃堕棿娈�
+      this.time3 = ""; //鏅氫笂鏃堕棿娈�
+      this.time4 = ""; //鏅氫笂鏃堕棿娈�
+    },
+    getheLibraryAssort() {
+      // 瀹f暀鍒嗙被
+      getheLibraryAssort({}).then((res) => {
+        this.sortlist = res.rows;
+        console.log(this.sortlist);
+      });
     },
     // 鑾峰彇绉戝鍒楄〃
     listDept() {
@@ -1213,10 +1510,10 @@
       if (this.time3) this.form.showTimeNight = this.time3.join(",");
       console.log(combinedData, "combinedData");
     },
-    // 鏌ョ湅妯$増
+    // 鏌ョ湅妯℃澘
     previewGo() {
       this.$router.push({
-        path: "/knowledge/templateku/configurat/",
+        path: "/knowledge/tpuconfigurat/",
         query: { id: this.previewid, task: true, data: this.form },
       });
     },
@@ -1231,7 +1528,7 @@
         this.form.templateid = response.data;
         this.form.libtemplateid = this.libId;
         this.form.templatename = this.libName;
-        this.$modal.msgSuccess("閫夋嫨妯$増鎴愬姛");
+        this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
       });
     },
     // 澶勭悊鏈嶅姟褰㈠紡
@@ -1263,6 +1560,46 @@
         });
         this.checkList = list;
       }
+    },
+    /** 瀵煎叆鎸夐挳鎿嶄綔 */
+    handleImport() {
+      this.upload.title = "鐢ㄦ埛瀵煎叆";
+      this.upload.open = true;
+    },
+    handleFileUploadProgress(event, file, fileList) {
+      this.upload.isUploading = true;
+    },
+    // 鏂囦欢涓婁紶鎴愬姛澶勭悊
+    handleFileSuccess(response, file, fileList) {
+      this.upload.isUploading = false;
+      this.uploadingData = response.rows;
+
+      this.$refs.upload.clearFiles();
+    },
+    // 鎻愪氦涓婁紶鏂囦欢
+    submitFileForm() {
+      // 涓婁紶
+      if (this.dractive == 1) {
+        this.$refs.upload.submit();
+        this.dractive++;
+      } else if (this.dractive == 2) {
+        this.handleSelectionChange(this.uploadingData,4);
+        this.upload.open = false;
+        this.dractive = 1
+      }
+    },
+
+    /** 涓嬭浇妯℃澘鎿嶄綔 */
+    importTemplate() {
+      this.download(
+        "smartor/import/getImportPatTemplate",
+        {},
+        `user_template_${new Date().getTime()}.xlsx`
+      );
+    },
+    submitclose() {
+      this.upload.open = false;
+      this.dractive = 1;
     },
   },
 };
@@ -1399,6 +1736,41 @@
     }
   }
 }
+.download {
+  text-align: center;
+  .el-upload__tip {
+    font-size: 23px;
+  }
+  .el-upload__text {
+    font-size: 23px;
+  }
+}
+.uploading {
+  margin-top: 20px;
+  margin: 20px;
+  padding: 30px;
+  background: #ffffff;
+  border: 1px solid #dcdfe6;
+  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
+    0 0 6px 0 rgba(0, 0, 0, 0.04);
+}
+.drexamine {
+  // display: flex;
+  align-items: center;
+  justify-content: center;
+  padding: 20px;
+  background: #daeaf5;
+  img {
+    width: 50px;
+    height: 50px;
+  }
+}
+.button-textsc {
+  color: #28cfe6;
+}
+.button-textxg {
+  color: #de7897;
+}
 ::v-deep .addtopic-input {
   input {
     background: #02a7f0;

--
Gitblit v1.9.3