From 91f78c7a3c325b7627f269524cdf92f006948cdf Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期一, 20 十月 2025 17:37:35 +0800
Subject: [PATCH] 景宁电话接入
---
src/views/patient/propaganda/Missioncreation.vue | 734 +++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 585 insertions(+), 149 deletions(-)
diff --git a/src/views/patient/propaganda/Missioncreation.vue b/src/views/patient/propaganda/Missioncreation.vue
index 94cc4ac..f666f1a 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,14 +82,75 @@
placeholder="璇疯緭鍏ヤ换鍔℃弿杩�"
/>
</el-form-item>
- <el-form-item label="鍙戦�佽缃細" v-if="currenttype != 2">
+ <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="鎵ц鍛ㄦ湡" 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-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"
@@ -86,7 +163,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
@@ -101,12 +181,13 @@
</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
- >
+ <span style="font-size: 18px; margin-right: 10px">鈶�</span>
<el-time-picker
is-range
arrow-control
@@ -121,9 +202,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 +217,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,6 +233,26 @@
</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
@@ -311,6 +408,16 @@
>鍒犻櫎</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>
@@ -319,7 +426,7 @@
@details="detailhz"
@handleUpdate="handleUpdate"
:currentList="overallCase"
- :tableLabel="tableLabelhz"
+ :tableLabel="tableLabelhzwb"
:serialnumber="false"
:searchTrue="true"
:multiplechoice="false"
@@ -365,30 +472,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
@@ -434,15 +535,120 @@
>
</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-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>
+ <!-- 鐢ㄦ埛瀵煎叆瀵硅瘽妗� -->
+ <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="濮撳悕" 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>
+ </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暀鍐呭鍒楄〃"
@@ -463,32 +669,23 @@
v-show="showSearch"
label-width="98px"
>
- <el-form-item
- label="瀹f暀鍚嶇О"
-
- >
+ <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>
@@ -532,7 +729,7 @@
</el-form-item>
</el-form>
<el-divider></el-divider>
- <!-- 閫夋嫨妯$増鍒楄〃 -->
+ <!-- 閫夋嫨妯℃澘鍒楄〃 -->
<SFtable
@selectfn="selectfn"
:currentList="userList"
@@ -574,7 +771,7 @@
getheLibraryAssort,
} from "@/api/AiCentre/index";
import { listDept } from "@/api/system/dept";
-
+import { getToken } from "@/utils/auth";
import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
export default {
@@ -583,41 +780,61 @@
return {
title: "瀹f暀鍐呭鍒楄〃",
currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闂嵎
+ currentTemplateType: "", // 褰撳墠妯℃澘绫诲瀷
+ plainTextContent: "", // 绾枃鏈唴瀹�
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: [
@@ -632,8 +849,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: [], //璁$畻鏃ユ湡
@@ -666,7 +899,7 @@
// 闈炲涓鐢�
multiple: true,
// 鐢ㄦ埛琛ㄦ牸鏁版嵁
- userList: [], //妯$増鍒楄〃
+ userList: [], //妯℃澘鍒楄〃
patientuserList: [], //閫夋嫨鎮h�呭垪琛�
sonuserList: [], //閫変腑鎮h�呭垪琛�
delvariableList: [], //鍒犻櫎鍙橀噺涓存椂瀛樺偍
@@ -712,19 +945,33 @@
],
variableListTime: [],
sortlist: [],
+ heLibraryAssortList: [
+ { id: 1, value: "瀹f暀" },
+ { id: 2, value: "閫氱煡" },
+ ],
tasktopic: null, //鏂板绫诲瀷
SelectPatientslist: [],
form: {
patTaskRelevances: [],
sendType: 1,
+ longTask: 0,
templatename: "",
templateid: null,
libtemplateid: null,
+ kcb:
+ "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾垜浠槸" +
+ localStorage.getItem("orgname") +
+ "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
+ jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
},
taskoptions: [
{
value: "1",
label: "鍑洪櫌鐥呬汉",
+ },
+ {
+ value: "4",
+ label: "鍦ㄩ櫌鐥呬汉",
},
{
value: "2",
@@ -735,6 +982,20 @@
label: "浣撴鐥呬汉",
},
],
+ source: [
+ {
+ value: 0,
+ label: "鎵�灞炴偅鑰�",
+ },
+ {
+ value: 1,
+ label: "绉戝鎮h��",
+ },
+ {
+ value: 2,
+ label: "鐥呭尯鎮h��",
+ },
+ ],
quote: false,
};
},
@@ -743,9 +1004,12 @@
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.listDept();
this.Acquisitiontype();
this.Getdetails();
this.getheLibraryAssort();
@@ -818,10 +1082,10 @@
label: "寰俊灏忕▼搴�",
},
- {
- value: "8",
- label: "鏅鸿兘鏈哄櫒浜�",
- },
+ // {
+ // value: "8",
+ // label: "鏅鸿兘鏈哄櫒浜�",
+ // },
];
} else if (this.form.serviceType == 8) {
this.checkboxlist = [
@@ -838,10 +1102,10 @@
label: "寰俊灏忕▼搴�",
},
- {
- value: "8",
- label: "鏅鸿兘鏈哄櫒浜�",
- },
+ // {
+ // value: "8",
+ // label: "鏅鸿兘鏈哄櫒浜�",
+ // },
{
value: "9",
label: "閽夐拤",
@@ -862,8 +1126,12 @@
submitForm(formName) {
this.form.preachform = this.checkList.join(",");
// this.formatFn(1);
- if (!this.form.patTaskRelevances[0]) {
+ if (!this.form.patTaskRelevances[0]&&this.form.longTask==0) {
this.$modal.msgError("璇烽�夋嫨鐥呬汉");
+ return;
+ }
+ if (!this.form.templatename) {
+ this.$modal.msgError("鏈�夋嫨妯℃澘");
return;
}
const filteredArray = this.variableList.filter(
@@ -876,10 +1144,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) {
@@ -895,30 +1170,64 @@
});
},
// ----------------------琛ㄦ牸瀛愮粍浠朵簨浠�
- // 纭閫夋嫨妯$増鏀惧叆浠诲姟妯$増
+ // 閫夋嫨妯℃澘骞堕瑙�
selectfn(row, type) {
- // 妯$増鎯呭喌涓嬭幏鍙栨ā鐗堜俊鎭�
this.libName = row.preachname;
- this.richText = null;
+ 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.richText);
- axios
- .get(row.richText)
- .then((response) => {
- console.log(response.data, "鏁版嵁"); // 杈撳嚭鑾峰彇鍒扮殑鏂囦欢鍐呭
- this.richText = response.data;
- this.richText = this.addStyleToImages(this.richText);
- })
- .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() {
+ 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;
+ 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) {
return html.replace(
@@ -926,35 +1235,7 @@
'<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) {
this.allpids = [];
@@ -963,14 +1244,15 @@
});
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 +1268,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 +1309,7 @@
handleExport() {},
// 閫夋嫨鎮h�呰〃鏁版嵁
- handleSelectionChange(selection) {
+ handleSelectionChange(selection, type) {
console.log("澶氶�夋偅鑰�");
this.SelectPatientslist = selection;
this.multiple = !selection.length;
@@ -1016,7 +1320,14 @@
if (!isExist) {
item.isoperation = 1;
item.patid = item.id;
- item.hospType = this.patientqueryParams.allhosp;
+ 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);
}
@@ -1078,13 +1389,27 @@
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:
+ "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾垜浠槸" +
+ localStorage.getItem("orgname") +
+ "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�",
+ jsy: "鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
+ };
+
if (this.id) {
getTaskInfo({ taskid: this.id }).then((res) => {
let filteredArray = "";
@@ -1097,9 +1422,10 @@
: [];
this.overallCase = this.form.patTaskRelevances.concat();
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;
@@ -1117,8 +1443,26 @@
} 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暀鍒嗙被
@@ -1222,7 +1566,7 @@
if (this.time3) this.form.showTimeNight = this.time3.join(",");
console.log(combinedData, "combinedData");
},
- // 鏌ョ湅妯$増
+ // 鏌ョ湅妯℃澘
previewGo() {
this.$router.push({
path: "/knowledge/tpuconfigurat/",
@@ -1240,7 +1584,7 @@
this.form.templateid = response.data;
this.form.libtemplateid = this.libId;
this.form.templatename = this.libName;
- this.$modal.msgSuccess("閫夋嫨妯$増鎴愬姛");
+ this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
});
},
// 澶勭悊鏈嶅姟褰㈠紡
@@ -1272,6 +1616,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;
},
},
};
@@ -1408,6 +1792,58 @@
}
}
}
+/* 鏂板鏍峰紡 */
+.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 {
+ 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: #3664D9;
+}
+.button-textxg {
+ color: #de7897;
+}
::v-deep .addtopic-input {
input {
background: #02a7f0;
--
Gitblit v1.9.3