From e353f0e17dc46203512dd272c5b559b094e40761 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 25 七月 2025 15:02:36 +0800
Subject: [PATCH] 测试完成
---
src/views/patient/propaganda/particty.vue | 2330 ++++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 1,801 insertions(+), 529 deletions(-)
diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index 7c26081..63761d5 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -7,12 +7,12 @@
<el-step
icon="el-icon-edit"
title="鍩虹淇℃伅"
- description="閫夋嫨瀹f暀妯$増銆佸舰寮忕瓑鍩虹淇℃伅"
+ description="閫夋嫨妯℃澘銆佸舰寮忕瓑鍩虹淇℃伅"
></el-step>
<el-step
icon="el-icon-user"
- title="瀹f暀瀵硅薄"
- description="鍦ㄦ湰閮ㄩ�夋嫨瀹f暀鐥呬汉"
+ title="浠诲姟涓讳綋"
+ description="鍦ㄦ湰閮ㄩ�夋嫨鏈嶅姟鎮h��"
></el-step>
</el-steps>
</div>
@@ -21,11 +21,7 @@
<div class="leftvlue" style="margin: 0 20px">
<!-- 鍩烘湰淇℃伅 -->
<div v-if="Editprogress == 1">
- <el-alert
- title="閫夋嫨瀹f暀妯$増銆佸舰寮忕瓑鍩虹淇℃伅"
- type="success"
- effect="dark"
- >
+ <el-alert title="閫夋嫨妯℃澘銆佸舰寮忕瓑鍩虹淇℃伅" type="success" effect="dark">
</el-alert>
<div class="leftvlue-jbxx">
<!-- 鍩虹淇℃伅 -->
@@ -34,238 +30,345 @@
<div>鍩虹淇℃伅</div>
</div>
<div class="jic-value">
- <el-form ref="form" :model="form" label-width="105px">
- <el-form-item label="鍙戦�佹椂闂达細" v-if="currenttype != 2">
+ <el-form
+ ref="form"
+ :model="form"
+ :rules="rules"
+ label-width="125px"
+ >
+ <el-row :gutter="20">
+ <el-col :span="12"
+ ><el-form-item label="浠诲姟鍚嶇О" prop="taskName">
+ <el-input
+ style="width: 220px"
+ v-model="form.taskName"
+ placeholder="璇疯緭鍏ヤ换鍔″悕绉�"
+ /> </el-form-item
+ ></el-col>
+ <el-col :span="12"
+ ><el-form-item label="浠诲姟绫诲瀷">
+ <el-select
+ v-model="serviceType"
+ placeholder="璇烽�夋嫨鏂板绫诲瀷"
+ >
+ <el-option
+ v-for="item in tasktypes"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select> </el-form-item
+ ></el-col>
+ </el-row>
+
+ <el-form-item label="浠诲姟鎻忚堪" prop="taskDesc">
+ <el-input
+ type="textarea"
+ v-model="form.taskDesc"
+ placeholder="璇疯緭鍏ヤ换鍔℃弿杩�"
+ />
+ </el-form-item>
+ <el-form-item label="鏈嶅姟褰㈠紡">
+ <el-radio-group
+ v-model="checkList"
+ @change="handleCheckedCitiesChange"
+ >
+ <el-radio
+ v-for="(item, index) in checkboxlist"
+ :key="index"
+ :label="item.value"
+ @change="checkboxChange($event, item.value)"
+ >
+ {{ item.label }}</el-radio
+ >
+ </el-radio-group>
+ </el-form-item>
+ <!-- <div class="xinz-infs">
+ <el-form-item label="鏈嶅姟鎵ц椤哄簭" prop="daytime">
+ <el-tag
+ :key="tag.label"
+ type="success"
+ v-for="(tag, index) in foncheckList"
+ closable
+ :disable-transitions="false"
+ @close="handleClosetag(tag)"
+ >
+ ({{ index + 1 }}){{ tag.label }}
+ </el-tag>
+ </el-form-item>
+ </div> -->
+ <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="鎵ц璁剧疆"
+ prop="sendType"
+ 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 && !form.longTask"
+ prop="daytime"
+ >
<el-date-picker
- v-model="form.name"
- type="date"
- placeholder="閫夋嫨鏃ユ湡"
+ v-model="daytime"
+ @change="changeTimeday"
+ type="daterange"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ value-format="yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
- <el-form-item label="鍙戦�佹椂闂存锛�" v-if="currenttype != 2">
- <el-checkbox-group v-model="checkList">
- <el-checkbox label="涓婂崍锛�8:30-11:30锛�"></el-checkbox>
- <el-checkbox label="涓嬪崍锛�14:30-16:30锛�"></el-checkbox>
- <el-checkbox label="澶滈棿锛�18:30-20:30锛�"></el-checkbox>
- </el-checkbox-group>
+
+ <el-form-item
+ label="鎵ц鏃堕棿鐐�"
+ v-if="form.sendType == 3 && !form.longTask"
+ prop="daytime"
+ >
+ <div style="display: flex">
+ <div style="margin-right: 10px">
+ <el-date-picker
+ v-model="time4"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ @change="Totaldate"
+ type="datetime"
+ placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+ >
+ </el-date-picker>
+ </div>
+ </div>
</el-form-item>
- <el-form-item label="鏈嶅姟褰㈠紡">
- <el-checkbox-group v-model="checkList">
- <el-checkbox
- v-for="(item, index) in checkboxlist"
- :key="index"
- :label="item"
- ></el-checkbox>
- </el-checkbox-group>
+
+ <el-form-item
+ label="鎵ц鏃堕棿娈�"
+ v-if="form.sendType == 1 && !form.longTask"
+ prop="daytime"
+ >
+ <div style="display: flex">
+ <div style="margin-right: 10px">
+ <span style="font-size: 18px; margin-right: 10px">鈶�</span>
+ <el-time-picker
+ is-range
+ arrow-control
+ @change="changeTime"
+ v-model="time1"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫椂闂�"
+ end-placeholder="缁撴潫鏃堕棿"
+ placeholder="閫夋嫨鏃堕棿鑼冨洿"
+ value-format="HH:mm:ss"
+ >
+ </el-time-picker>
+ </div>
+ <div style="margin-right: 10px">
+ <span style="font-size: 18px; margin-right: 10px">鈶�</span>
+ <el-time-picker
+ is-range
+ arrow-control
+ @change="changeTime"
+ v-model="time2"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫椂闂�"
+ end-placeholder="缁撴潫鏃堕棿"
+ placeholder="閫夋嫨鏃堕棿鑼冨洿"
+ value-format="HH:mm:ss"
+ >
+ </el-time-picker>
+ </div>
+ <div style="margin-right: 10px">
+ <span style="font-size: 18px; margin-right: 10px">鈶�</span>
+ <el-time-picker
+ is-range
+ arrow-control
+ @change="changeTime"
+ v-model="time3"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫椂闂�"
+ end-placeholder="缁撴潫鏃堕棿"
+ placeholder="閫夋嫨鏃堕棿鑼冨洿"
+ value-format="HH:mm:ss"
+ >
+ </el-time-picker>
+ </div>
+ </div>
</el-form-item>
- <el-form-item label="缁勭粐褰㈠紡">
- <el-radio-group v-model="form.radio">
- <el-radio :label="3">鍗曚汉</el-radio>
- <el-radio :label="6">澶氫汉</el-radio>
- </el-radio-group>
- </el-form-item>
- <el-form-item label="璇煶妯$増" prop="region">
- <el-select v-model="form.region" placeholder="璇烽�夋嫨妯$増">
- <el-option label="涓�鍙锋ā鐗�" value="shanghai"></el-option>
- <el-option label="浜屽彿妯$増" value="beijing"></el-option>
- </el-select>
- </el-form-item>
+ <el-row>
+ <el-col :span="20"
+ ><el-form-item label="閫傜敤绉戝" prop="region">
+ <el-select
+ v-model="deptcodesWards"
+ @remove-tag="removetag"
+ 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="leavehospitaldistrictcodes"
+ style="width: 400px"
+ @remove-tag="removehpsp"
+ 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-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>
</div>
</div>
<div class="examine-jic">
<div class="headline">
- <div>{{ title }}</div>
+ <div>浠诲姟浣跨敤妯℃澘</div>
+ <div style="margin-left: 20px">
+ <el-form ref="forms">
+ <el-form-item label="">
+ <el-input
+ style="width: 300px"
+ :disabled="true"
+ v-model="form.templatename"
+ placeholder="璇风偣鍑诲彸渚ч�夋嫨"
+ />
+ <el-button
+ v-if="
+ (form.templateid && form.sendState == 1) ||
+ !form.templateid
+ "
+ style="margin-left: 10px"
+ type="primary"
+ icon="el-icon-edit"
+ @click="drawermb = true"
+ circle
+ ></el-button>
+
+ <el-button
+ v-if="form.templatename"
+ type="success"
+ icon="el-icon-search"
+ @click="previewfnmb()"
+ circle
+ ></el-button>
+ </el-form-item>
+ </el-form>
+ </div>
</div>
+
<div class="examine-jic">
<div class="jic-value">
+ <div style="margin-bottom: 10px">妯℃澘涓娇鐢ㄧ殑鍙橀噺锛�</div>
+
<el-row :gutter="20">
- <!--鐢ㄦ埛鏁版嵁-->
-
- <el-form
- :model="topqueryParams"
- ref="queryForm"
- size="small"
- :inline="true"
- v-show="showSearch"
- label-width="98px"
- >
- <el-form-item label="瀹f暀涓婚" v-if="currenttype == 1">
- <el-input v-model="topqueryParams.name"></el-input>
- </el-form-item>
- <el-form-item
- label="闅忚鍚嶇О"
- v-if="currenttype == 2 || currenttype == 3"
+ <el-table :data="variableList" style="width: 100%">
+ <el-table-column
+ prop="name"
+ align="center"
+ label="鍙橀噺鍚嶇О"
>
- <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>
-
- <el-form-item
- label="瀹f暀绫诲瀷"
- prop="status"
- v-if="currenttype == 1"
- >
- <el-select
- v-model="topqueryParams.topic"
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in taskoptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
+ </el-table-column>
+ <el-table-column prop="value" align="center" label="鍖归厤绗�">
+ </el-table-column>
+ <el-table-column label="鏇挎崲鍊�" align="center">
+ <template slot-scope="scope">
+ <el-input
+ :disabled="scope.row.default"
+ v-model="scope.row.fill"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ ></el-input>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center">
+ <template slot-scope="scope">
+ <!-- <el-button
+ size="mini"
+ @click="variableEdit(scope.$index, scope.row)"
+ >缂栬緫</el-button
+ > -->
+ <el-button
+ size="mini"
+ type="danger"
+ @click="variableDelete(scope.$index, scope.row)"
+ >鍒犻櫎</el-button
>
- </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="闅忚绫诲瀷"
- prop="status"
- v-if="currenttype == 2 || currenttype == 3"
- >
- <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-select
- v-model="topqueryParams.topica"
- 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-select
- v-model="topqueryParams.topicd"
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in topicoptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </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-form-item>
- </el-form>
- <el-divider></el-divider>
- <!-- 閫夋嫨浠诲姟鍒楄〃 -->
- <SFtable
- @handleUpdate="handleUpdate"
- @handleSelectionChange="handleSelectionChange"
- :currentList="userList"
- :tableLabel="tableLabelxj"
- :controlsc="false"
- :multiplechoice="false"
- />
- <pagination
- v-show="total > 0"
- :total="total"
- :page.sync="topqueryParams.pageNum"
- :limit.sync="topqueryParams.pageSize"
- @pagination="getList"
- />
+ </template>
+ </el-table-column>
+ </el-table>
</el-row>
</div>
</div>
</div>
</div>
- <el-button type="success" @click="submitForm('ruleForm')">{{
- quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏璁剧疆"
+ <el-button type="success" @click="nextstep('ruleForm')">{{
+ quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏閰嶇疆"
}}</el-button>
<el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
</div>
-
<!-- 浠诲姟璇︽儏 -->
<div v-if="Editprogress == 2">
- <el-alert title="鍦ㄦ湰闃舵閫夋嫨瀹f暀鐥呬汉" type="success" effect="dark">
+ <el-alert title="鍦ㄦ湰闃舵閫夋嫨鐥呬汉" type="success" effect="dark">
</el-alert>
<div class="leftvlue-jbxx">
<div class="examine-jic">
@@ -275,92 +378,10 @@
<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="鎮h�呰寖鍥�" prop="status">
- <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="鎮h�呯姸鎬�" prop="status">
- <el-select
- v-model="topqueryParams.topic"
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in topicoptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="闅忚缁撴灉" prop="status">
- <el-select
- v-model="topqueryParams.topic"
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in topicoptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="鎮h�呯數璇�">
- <el-input v-model="topqueryParams.name"></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
- v-model="tasktopic"
+ v-model="patientqueryParams.allhosp"
placeholder="璇烽�夋嫨鏂板绫诲瀷"
>
<el-option
@@ -372,19 +393,20 @@
</el-option>
</el-select>
</el-col>
+
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="medium"
- :disabled="!tasktopic"
- @click="handleAddpatient"
+ :disabled="!patientqueryParams.allhosp"
+ @click="handleQuery"
>鏂板</el-button
>
</el-col>
- <el-col :span="1.5">
+ <!-- <el-col :span="1.5">
<el-button
type="danger"
plain
@@ -394,17 +416,21 @@
@click="handleDelete"
>鍒犻櫎</el-button
>
- </el-col>
+ </el-col> -->
<!-- <el-col :span="1.5"> </el-col> -->
</el-row>
<!-- 閫変腑鎮h�呭垪琛� -->
<SFtable
+ @details="detailhz"
@handleUpdate="handleUpdate"
- @handleSelectionChange="handleSelectionChange"
- :currentList="sonuserList"
- :tableLabel="tableLabelhz"
+ :currentList="overallCase"
+ :tableLabel="tableLabelhzwb"
+ :serialnumber="false"
+ :searchTrue="true"
+ :multiplechoice="false"
:controlxz="false"
+ :typeinfo="2"
/>
<pagination
v-show="total > 0"
@@ -419,18 +445,19 @@
</div>
</div>
<el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
- <el-button type="success" @click="submitForm('ruleForm')"
- >绔嬪嵆鍒涘缓</el-button
- >
+ <el-button type="success" @click="submitForm('11')">{{
+ quote ? "绔嬪嵆鍒涘缓" : "纭浠诲姟閰嶇疆"
+ }}</el-button>
<el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
</div>
</div>
<!-- 娣诲姞鎮h�� -->
<el-dialog
- title="娣诲姞娲惧彂鎮h��"
+ title="閫夋嫨鎮h��"
:visible.sync="dialogVisiblepatient"
width="70%"
:before-close="handleClosehz"
+ :close-on-click-modal="false"
>
<div class="examine-jic">
<div class="jic-value">
@@ -444,52 +471,31 @@
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="鎮h�呮潵婧�" prop="status">
- <el-select
- v-model="patientqueryParams.topic"
- placeholder="璇烽�夋嫨"
+ <el-form-item label="鎮h�呮爣绛撅細">
+ <el-input
+ v-model="patientqueryParams.tagname"
+ @keyup.enter.native="handleQuery"
+ ></el-input>
+ </el-form-item>
+ <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
- v-for="item in topicoptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="鍑洪櫌绉戝" prop="status">
- <el-select
- v-model="patientqueryParams.topic"
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in topicoptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
+ </el-option>
+ </el-select>
- <el-form-item label="鍑洪櫌鐥呭尯" prop="status">
- <el-select
- v-model="patientqueryParams.topic"
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in topicoptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
<el-form-item>
<el-button
type="primary"
@@ -508,11 +514,14 @@
</el-form>
<!-- 閫夋嫨鎮h�呭垪琛� -->
<SFtable
+ ref="multipleTable"
@handleUpdate="handleUpdate"
@handleSelectionChange="handleSelectionChange"
:currentList="patientuserList"
:tableLabel="tableLabelhz"
- :controlsc="false"
+ :serialnumber="false"
+ :center="false"
+ :typeinfo="3"
/>
</el-row>
<pagination
@@ -531,78 +540,413 @@
>
</span>
</el-dialog>
+ <!-- 妯℃澘棰勮 -->
+ <el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="70%">
+ <el-tabs type="border-card">
+ <el-tab-pane label="妯℃澘鍩虹鏁版嵁"
+ ><div class="preview-left">
+ <el-form :model="objyl" label-width="100px" class="demo-objyl">
+ <el-row :gutter="10">
+ <el-col :span="14">
+ <el-form-item label="闅忚鍒嗙被" prop="assortid">
+ <el-select
+ v-model="objyl.assortid"
+ size="medium"
+ filterable
+ placeholder="璇烽�夋嫨鍒嗙被"
+ >
+ <el-option-group
+ v-for="group in optionsclass"
+ :key="group.id"
+ :label="group.indexAssortName"
+ >
+ <el-option
+ v-for="item in group.ivrLibaTemplateAssortList"
+ :key="item.id"
+ :label="item.indexAssortName"
+ :value="item.id"
+ >
+ </el-option>
+ </el-option-group>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20">
+ <el-col :span="14">
+ <el-form-item label="鍙敤鐘舵��" prop="isenable">
+ <el-radio-group v-model="objyl.isenable">
+ <el-radio
+ v-for="(item, index) in usable"
+ :label="item.value"
+ >{{ item.label }}</el-radio
+ >
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鐗堟湰鍙�" prop="name">
+ <el-input
+ v-model="objyl.version"
+ placeholder="榛樿1.0"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-form-item label="闅忚鏍囬" prop="templateName">
+ <div style="width: 400px">
+ <el-input v-model="objyl.templateName"></el-input>
+ </div>
+ </el-form-item>
+
+ <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>
+
+ <el-tag
+ v-for="tag in illnesslist"
+ :key="tag.icdid"
+ type="warning"
+ :disable-transitions="false"
+ >
+ {{ tag.icdname }}
+ </el-tag>
+ <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> -->
+ </el-form-item>
+ </div>
+ <el-form-item label="闅忚鎻忚堪" prop="description">
+ <el-input
+ type="textarea"
+ :rows="2"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="objyl.description"
+ >
+ </el-input
+ ></el-form-item>
+
+ <el-form-item label="闅忚缁撴潫璇�" prop="conclusion">
+ <el-input
+ type="textarea"
+ :rows="2"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="objyl.conclusion"
+ >
+ </el-input
+ ></el-form-item>
+ </el-form></div
+ ></el-tab-pane>
+ <el-tab-pane label="闂灞曠ず"
+ ><div class="preview-left">
+ <div v-for="item in questionList">
+ <!-- 鍗曢�� -->
+ <div
+ class="scriptTopic-dev"
+ :key="item.sort"
+ v-if="item.scriptType == 1"
+ >
+ <div class="dev-text">
+ {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
+ </div>
+ <div class="dev-xx">
+ <el-radio-group v-model="item.remark">
+ <el-radio
+ v-for="(
+ items, index
+ ) in item.ivrLibaScriptTargetoptionList"
+ :key="index"
+ :label="index"
+ >{{ items.targetvalue }}</el-radio
+ >
+ </el-radio-group>
+ </div>
+ </div>
+ <!-- 澶氶�� -->
+ <div
+ class="scriptTopic-dev"
+ :key="item.sort"
+ v-if="item.scriptType == 2"
+ >
+ <div class="dev-text">
+ {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
+ </div>
+ <div class="dev-xx">
+ <el-checkbox-group v-model="qremark">
+ <el-checkbox
+ v-for="(
+ items, index
+ ) in item.ivrLibaScriptTargetoptionList"
+ :key="index"
+ :label="index"
+ >
+ {{ items.targetvalue }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </div>
+ </div>
+ <!-- 濉┖ -->
+ <div
+ class="scriptTopic-dev"
+ :key="item.sort"
+ v-if="item.scriptType == 4"
+ >
+ <div class="dev-text">
+ {{ item.sort }}銆乕闂瓟]<span>{{ item.scriptContent }}</span>
+ </div>
+ <div class="dev-xx">
+ <el-input
+ placeholder="璇疯緭鍏ョ瓟妗�"
+ v-model="item.radioas"
+ clearable
+ >
+ </el-input>
+ </div>
+ </div>
+ </div></div
+ ></el-tab-pane>
+ </el-tabs>
+
+ <span slot="footer" class="dialog-footer">
+ <!-- <el-button @click="previewGo">淇濆瓨妯℃澘璇︽儏淇敼</el-button> -->
+ <el-button
+ v-if="(form.templateid && form.sendState == 1) || !form.templateid"
+ type="primary"
+ @click="Departmenttreatment"
+ >{{ form.templateid ? "鏇挎崲浣跨敤" : "閫夋嫨浣跨敤" }}</el-button
+ >
+ <!-- <el-button
+ :type="previewtftype ? 'success' : 'warning'"
+ @click="Modifytemplate"
+ >{{
+ previewtftype ? "鍓嶅線淇敼宸查�夋嫨妯℃澘" : "鏂板淇濆瓨骞跺墠寰�淇敼"
+ }}</el-button
+ > -->
+ </span>
+ </el-dialog>
+ <el-drawer
+ title="闅忚鍐呭鍒楄〃"
+ :visible.sync="drawermb"
+ direction="rtl"
+ size="50%"
+ >
+ <div class="headline"></div>
+ <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="闅忚鍚嶇О">
+ <el-input v-model="topqueryParams.templateName"></el-input>
+ </el-form-item>
+ <!-- <el-form-item label="閫傜敤褰㈠紡" prop="status">
+ <el-select v-model="topqueryParams.topica" 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>
+ <el-button
+ type="primary"
+ icon="el-icon-search"
+ size="medium"
+ @click="handleQuerymb"
+ >鎼滅储</el-button
+ >
+ <el-button
+ icon="el-icon-refresh"
+ size="medium"
+ @click="resetQuery"
+ >閲嶇疆</el-button
+ >
+ </el-form-item>
+ </el-form>
+ <el-divider></el-divider>
+ <!-- 閫夋嫨妯℃澘鍒楄〃 -->
+ <SFtable
+ @selectfn="selectfn"
+ :currentList="userList"
+ :tableLabel="tableLabel"
+ :serialnumber="false"
+ :controlsc="false"
+ :multiplechoice="false"
+ :typeinfo="1"
+ />
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="topqueryParams.pageNum"
+ :limit.sync="topqueryParams.pageSize"
+ @pagination="Acquisitiontype"
+ />
+ </el-row>
+ </div>
+ </div>
+ </el-drawer>
</div>
</template>
<script>
-import { listsvr_prjtask, Addpatienttask } from "@/api/smartorpor/svr_prjtask";
-import { listpat_archive } from "@/api/smartorpor/pat_archive";
-import { listsvr_prjtaskline } from "@/api/smartorpor/svr_prjtaskline";
import { messagelistpatient } from "@/api/patient/homepage";
+import store from "@/store";
+import {
+ getTaskpatientQC,
+ getlibrarylist,
+ getFollowuplist,
+ getvFollowup,
+ Taskparticty,
+ deleteTaskparticty,
+ getTaskInfo,
+ getTaskparticty,
+ depthospgetson,
+ getillness,
+ Editsingletask,
+ getFollowupclassify,
+ taskdepthospgetsonlist,
+ taskdepthospgetsondel,
+ depthospgetsonlist,
+} from "@/api/AiCentre/index";
+import { deptTreeSelect } from "@/api/system/user";
+import { MessageBox } from "element-ui";
+
import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
export default {
- name: "ServiceDetails",
+ name: "particty",
data() {
return {
title: "瀹f暀鍐呭鍒楄〃",
- currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闂嵎
+ currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闅忚
+ id: "", //
+ previewid: "", //浠诲姟妯℃澘浼犻�抜d
+ libName: "",
+ username: "",
+ templateor: false,
+ objyl: {},
+ overallCase: [], //閫夋嫨鎮h�呮��
+ allpids: [],
+ appraiselist: [],
+ optionsclass: [],
+ illnesslist: [],
+ mode: [],
+ libId: null, //妯℃澘搴撴ā鏉縤d
Editprogress: 1, //缂栬緫杩涘害
+ drawermb: false, //閫夋嫨妯℃澘寮圭獥
+ previewtf: false, //棰勮
+ previewtftype: 0, //棰勮鎯呭喌0鏂版ā鏉块瑙�1宸查�夋嫨妯℃澘淇敼
loading: false, // 閬僵灞�
patientloading: false, // 閬僵灞�
dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
+ deptcodesWards: [], //绉戝鏁版嵁
+ leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁
+ radio: 1,
checkboxlist: [],
tableLabel: [],
+ questionList: [],
+ skip: false,
+ usable: [
+ { value: "0", label: "鍙敤" },
+ { value: "1", label: "鍋滅敤" },
+ ],
+ required: [
+ { value: "1", label: "蹇呭~" },
+ { value: "2", label: "涓嶅繀濉�" },
+ ],
+ props: { multiple: true, value: "deptCode", label: "deptName" },
+ propstask: { value: "deptCode", label: "deptName" },
// 鎮h�呰〃鍗�
tableLabelhz: [
- { label: "鎮h�呭悕绉�", width: "", prop: "name" },
+ { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
+ { 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: "impTemplate" },
- { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "create_time" },
- { label: "鍒涘缓浜�", width: "", prop: "update_by" },
+ { label: "鎮h�呮爣绛�", width: "", prop: "tag" },
+ // { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+ // { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+ { label: "绉戝", width: "240", prop: "dept" },
+ { label: "鐥呭尯", width: "240", prop: "leavehospitaldistrictname" },
],
- tableLabelxj: [
- { label: "瀹f暀鍚嶇О", width: "", prop: "name" },
- { label: "瀹f暀妯$増", width: "", prop: "impTemplate" },
- { label: "鍒涘缓鏃ユ湡", width: "", prop: "create_time" },
- { label: "鍒涘缓浜�", width: "", prop: "update_by" },
+ // 鎮h�呰〃鍗�
+ tableLabelhzwb: [
+ { 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: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
+ // { label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
+ // { label: "涓绘不鍖荤敓", width: "", prop: "drname" },
+ { label: "绉戝", width: "180", prop: "deptName" },
+ { label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
],
- tableLabelmz: [
- { label: "闅忚鍚嶇О", width: "118", prop: "name" },
- { label: "闅忚妯$増", width: "130", prop: "impTemplate" },
- { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
- { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
- ],
- tableLabelcy: [
- { label: "闅忚鍚嶇О", width: "118", prop: "name" },
- { label: "闅忚璁″垝", width: "130", prop: "impTemplate" },
- { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
- { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
- ],
- tableLabelfz: [
- { label: "閫氱煡鍚嶇О", width: "118", prop: "name" },
- { label: "閫氱煡妯$増", width: "130", prop: "impTemplate" },
- { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
- { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
- ],
- tableLabeltj: [
- { label: "閫氱煡鍚嶇О", width: "118", prop: "name" },
- { label: "閫氱煡妯$増", width: "130", prop: "impTemplate" },
- { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
- { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
- ],
+
tableLabelwj: [
- { label: "闂嵎鍚嶇О", width: "118", prop: "name" },
- { label: "闂嵎妯$増", width: "130", prop: "impTemplate" },
- { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
- { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
+ { label: "鍒涘缓浜�", width: "", prop: "createBy" },
+ { label: "妯℃澘鏍囬", width: "", prop: "templateName" },
+ { label: "闅忚鎻忚堪", width: "", prop: "note" },
+ { label: "淇敼鏃ユ湡", width: "", prop: "updateTime" },
],
+ // 鍙橀噺
+ tableLabelvariable: [
+ { label: "鍙橀噺鍚嶇О", width: "", prop: "variablename" },
+ { label: "鍖归厤绗�", width: "", prop: "character" },
+ { label: "鏇挎崲鍊�", width: "", prop: "Replacementvalue" },
+ ],
+ preachform: [
+ { label: "澶氬獟浣�", value: 1 },
+ { label: "绾歌川", value: 2 },
+ { label: "鏅鸿兘璇煶", value: 3 },
+ { label: "鐭俊", value: 4 },
+ { label: "寰俊鍏紬鍙�", value: 5 },
+ { label: "寰俊灏忕▼搴�", value: 6 },
+ { label: "鏀粯瀹�", value: 7 },
+ { label: "鏅鸿兘灏忕▼搴�", value: 8 },
+ { label: "閽夐拤", value: 9 },
+ { label: "绾夸笅锛堢焊璐級", value: 10 },
+ { label: "绾夸笂锛堢煭淇�/閽夐拤鐨勬枃鏈�侀殢璁块摼鎺ワ級", value: 11 },
+ ],
+ // 鏃堕棿澶勭悊
+ daytime: [], //鏃ユ湡
+ applydaytime: [], //璁$畻鏃ユ湡
+ time1: "", //涓婂崍鏃堕棿娈�
+ time2: "", //涓嬪崍鏃堕棿娈�
+ time3: "", //鏅氫笂鏃堕棿娈�
+ time4: "", //鏅氫笂鏃堕棿娈�
topqueryParams: {
pageNum: 1, //
pageSize: 10,
},
- checkList: [],
+ checkList: "",
+ foncheckList: [],
+ formatvalue: {
+ format1: "",
+ format2: "",
+ format3: "",
+ },
deliverytopqueryParams: {
pageNum: 1, //
pageSize: 10,
@@ -610,8 +954,11 @@
patientqueryParams: {
pageNum: 1, //
pageSize: 10,
+ topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯
+ leaveldeptcodes: [],
+ leavehospitaldistrictcodes: [],
},
- topicoptions: [],
+ topicoptions: [{ children: [{ children: [] }] }],
showSearch: true, //
total: 0, //
sontotal: 0, //
@@ -623,152 +970,728 @@
// 闈炲涓鐢�
multiple: true,
// 鐢ㄦ埛琛ㄦ牸鏁版嵁
- userList: [], //妯$増鍒楄〃
+ userList: [], //妯℃澘鍒楄〃
+ multiplechoice: [], //澶氶�夌粨鏋�
patientuserList: [], //閫夋嫨鎮h�呭垪琛�
sonuserList: [], //閫変腑鎮h�呭垪琛�
- tasktopic: null, //鏂板绫诲瀷
- form: {
- name: "",
- region: "",
- date1: "",
- date2: "",
- delivery: false,
- type: [],
- resource: "",
- desc: "",
- },
- options: [
+ delvariableList: [], //鍒犻櫎鍙橀噺涓存椂瀛樺偍
+ longtype: [
+ { value: 0, label: "鑷畾涔夊懆鏈�" },
+ { value: 1, label: "闀挎湡浠诲姟" },
+ ],
+ variableList: [
{
- value: "閫夐」1",
- label: "榛勯噾绯�",
+ name: "濮撳悕",
+ value: "${name}",
+ fill: "娲惧彂鏃惰嚜鍔ㄥ尮閰�",
+ default: true,
},
{
- value: "閫夐」2",
- label: "鍙岀毊濂�",
+ name: "鍦板潃",
+ value: "${dzz}",
+ fill: "娲惧彂鏃惰嚜鍔ㄥ尮閰�",
+ default: true,
},
{
- value: "閫夐」5",
- label: "鍖椾含鐑ら腑",
+ name: "鐢佃瘽",
+ value: "${dhh}",
+ fill: "娲惧彂鏃惰嚜鍔ㄥ尮閰�",
+ default: true,
+ },
+ ], //鍙橀噺鍒楄〃
+ transitionList: [
+ {
+ name: "濮撳悕",
+ value: "${name}",
+ fill: "娲惧彂鏃惰嚜鍔ㄥ尮閰�",
+ default: true,
+ },
+ {
+ name: "鍦板潃",
+ value: "${dzz}",
+ fill: "娲惧彂鏃惰嚜鍔ㄥ尮閰�",
+ default: true,
+ },
+ {
+ name: "鐢佃瘽",
+ value: "${dhh}",
+ fill: "娲惧彂鏃惰嚜鍔ㄥ尮閰�",
+ default: true,
},
],
+ variableListTime: [],
+ tasktopic: null, //鏂板绫诲瀷
+ SelectPatientslist: [],
+ form: {
+ patTaskRelevances: [],
+ sendType: 3,
+ longTask: 0,
+ templatename: "",
+ templateid: null,
+ libtemplateid: null,
+ kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄棤閿″効绔ュ尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝杩涜鏈鍥炶鏈嶅姟銆�",
+ jsy: "鎰熻阿鎮ㄥ弬涓庢湰娆¢殢璁裤�傛偍鐨勫弽棣堝府鍔╂垜浠洿濂藉湴浜嗚В瀹濆疂鐨勯�傚簲鎯呭喌锛屽苟涓烘偍鎻愪緵鏇寸簿鍑嗙殑鎶ょ悊寤鸿涓庡仴搴锋寚瀵笺�傜鎮ㄥ拰瀹濆疂鍋ュ悍蹇箰銆�",
+ },
taskoptions: [
{
value: "1",
- label: "閫氱煡",
- },
- {
- value: "2",
- label: "闅忚",
- },
- {
- value: "3",
- label: "闂嵎",
+ label: "鍑洪櫌鐥呬汉",
},
{
value: "4",
- label: "瀹f暀",
+ label: "鍦ㄩ櫌鐥呬汉",
+ },
+ {
+ value: "2",
+ label: "闂ㄨ瘖鐥呬汉",
+ },
+ {
+ value: "3",
+ label: "浣撴鐥呬汉",
},
],
+ source: [
+ {
+ value: 0,
+ label: "鎵�灞炴偅鑰�",
+ },
+ {
+ value: 1,
+ label: "绉戝鎮h��",
+ },
+ {
+ value: 2,
+ label: "鐥呭尯鎮h��",
+ },
+ ],
+
+ tasktypes: [
+ {
+ value: 1,
+ label: "鐩戞祴璇勪及",
+ },
+ {
+ value: 2,
+ label: "鍑洪櫌闅忚",
+ },
+ {
+ value: 3,
+ label: "闂ㄨ瘖闅忚",
+ },
+ {
+ value: 4,
+ label: "瀹f暀鍏虫��",
+ },
+ {
+ value: 5,
+ label: "澶嶈瘖绠$悊",
+ },
+ {
+ value: 6,
+ label: "婊℃剰搴﹁皟鏌�",
+ },
+ {
+ value: 7,
+ label: "鎮h�呮姤鍛�",
+ },
+
+ {
+ value: 8,
+ label: "鍏朵粬閫氱煡",
+ },
+ ],
+ // 绉戝/鐥呭尯
+ belongWards: [],
+ deptlist: [],
+ hosplist: [],
+ tempDetpRelevanceslist: [], //绉戝鏁版嵁
+ tempDetpRelevanceslistform: [], //绉戝鏁版嵁
+ tempbelongWards: [], //鐥呭尯鏁版嵁
+ tempbelongWardsform: [], //鐥呭尯鏁版嵁
+ rules: {
+ taskName: [
+ { required: true, message: "浠诲姟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
+ {
+ min: 2,
+ max: 30,
+ message: "浠诲姟鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 30 涔嬮棿",
+ trigger: "blur",
+ },
+ ],
+ sendType: [
+ { required: true, message: "鍙戦�佽缃笉鑳戒负绌�", trigger: "blur" },
+ ],
+ // deptcode: [
+ // { required: true, message: "閫傜敤绉戝涓嶈兘涓虹┖", trigger: "blur" },
+ // ],
+ // leavehospitaldistrictcode: [
+ // { required: true, message: "閫傜敤鐥呭尯涓嶈兘涓虹┖", trigger: "blur" },
+ // ],
+ },
+ // 绉戝闄㈠尯鏌ヨ鍏ュ弬
+ queryParamsdept: {
+ tempid: "",
+ type: 2,
+ },
+ belongDepts: [],
quote: false,
+ serviceType: null,
};
},
components: { SFtable },
created() {
- this.Addsubtask();
- this.Getsubtask();
+ this.appraiselist = store.getters.appraiselist;
+ this.belongWards = store.getters.belongWards;
+ this.belongDepts = store.getters.belongDepts;
+ this.username = store.getters.name;
+ this.mode = store.getters.Askmode;
+ this.id = this.$route.query.id;
+ this.newadd = this.$route.query.newadd;
+ this.form.type = this.$route.query.type;
+ this.form.typename = this.$route.query.typename;
+ this.serviceType = Number(this.$route.query.serviceType);
+ this.form.serviceType = Number(this.$route.query.serviceType);
this.Acquisitiontype();
+ this.Getdetails();
+ this.getFollowupclassify();
+ },
+ activated() {
+ console.log(this.id, "CS", this.$route.query.id);
+ if (this.id != this.$route.query.id) {
+ this.id = this.$route.query.id;
+ this.newadd = this.$route.query.newadd;
+ this.form.type = this.$route.query.type;
+ this.form.typename = this.$route.query.typename;
+ this.serviceType = Number(this.$route.query.serviceType);
+ this.form.serviceType = Number(this.$route.query.serviceType);
+
+ this.Acquisitiontype();
+ this.Getdetails();
+ this.getFollowupclassify();
+ }
},
methods: {
+ // 鍙橀噺杞崲瀵硅薄杞暟缁�
+ convertFormat1ToFormat2(data) {
+ let result = [];
+ for (let key in data) {
+ let innerKey = Object.keys(data[key])[0];
+ result.push({
+ name: key,
+ value: innerKey,
+ fill: data[key][innerKey],
+ });
+ }
+ return result;
+ },
+ // 鏁扮粍杞璞�
+ convertFormat2ToFormat1(data) {
+ let result = {};
+ data.forEach((item) => {
+ let innerObj = {};
+ innerObj[item.value] = item.fill;
+ result[item.name] = innerObj;
+ });
+ return result;
+ },
+
+ flattenArray(multiArray) {
+ let result = [];
+
+ // 閫掑綊鍑芥暟锛岀敤浜庡皢澶氱骇鏁扮粍杞崲涓轰竴缁存暟缁勶紝鍙寘鍚渶搴曞眰鐨勫厓绱�
+ function flatten(element) {
+ // 濡傛灉褰撳墠鍏冪礌鏈夊瓙鍏冪礌锛岀户缁�掑綊
+ if (element.children && element.children.length > 0) {
+ element.children.forEach((child) => flatten(child));
+ } else {
+ // 鍏嬮殕鍏冪礌浠ラ伩鍏嶄慨鏀瑰師濮嬫暟鎹�
+ let item = JSON.parse(JSON.stringify(element));
+ result.push(item); // 灏嗘渶搴曞眰鐨勫厓绱犳坊鍔犲埌缁撴灉鏁扮粍
+ }
+ }
+
+ // 浠庨《灞傚厓绱犲紑濮嬮�掑綊
+ multiArray.forEach((element) => flatten(element));
+ return result; // 杩斿洖鍙寘鍚渶搴曞眰鍏冪礌鐨勪竴缁存暟缁�
+ },
// 鑾峰彇褰撳墠绫诲瀷
Acquisitiontype() {
+ let queryParams = {
+ pageNum: this.topqueryParams.pageNum,
+ pageSize: this.topqueryParams.pageSize,
+ isenable: "",
+ };
this.currenttype = this.$route.query.type;
- console.log(this.currenttype);
- if (this.currenttype == 1) {
- this.title = "瀹f暀鍐呭鍒楄〃";
- this.tableLabel = this.tableLabelxj;
+ this.title = "闅忚鍐呭鍒楄〃";
+ this.tableLabel = this.tableLabelwj;
+ if (this.form.serviceType == 1) {
this.checkboxlist = [
- "褰撻潰",
- "澶氬獟浣�",
- "绾歌川",
- "鐢佃瘽",
- "鐭俊",
- "寰俊鍏紬鍙�",
- "寰俊灏忕▼搴�",
- "閽夐拤",
+ {
+ value: "1",
+ label: "浜哄伐",
+ },
+ {
+ value: "2",
+ label: "绾歌川",
+ },
+ {
+ value: "4",
+ label: "鐭俊",
+ },
+ {
+ value: "5",
+ label: "寰俊鍏紬鍙�",
+ },
];
- } else if (this.currenttype == 2) {
- this.title = "闅忚鍐呭鍒楄〃";
- this.tableLabel = this.tableLabelmz;
- this.checkboxlist = ["褰撻潰", "绾歌川", "鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
- } else if (this.currenttype == 3) {
- this.title = "闅忚璁″垝鍒楄〃";
- this.tableLabel = this.tableLabelcy;
- this.checkboxlist = ["褰撻潰", "绾歌川", "鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
- } else if (this.currenttype == 4) {
- this.title = "閫氱煡鍐呭鍒楄〃";
- this.tableLabel = this.tableLabelfz;
- this.checkboxlist = ["鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
- } else if (this.currenttype == 5) {
- this.title = "閫氱煡鍐呭鍒楄〃";
- this.tableLabel = this.tableLabeltj;
- this.checkboxlist = ["绾歌川", "鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
- } else if (this.currenttype == 6) {
- this.title = "闂嵎鍐呭鍒楄〃";
- this.tableLabel = this.tableLabelwj;
+ } else if (this.form.serviceType == 6) {
this.checkboxlist = [
- "褰撻潰",
- "澶氬獟浣�",
- "绾歌川",
- "鐢佃瘽",
- "鐭俊",
- "寰俊鍏紬鍙�",
- "寰俊灏忕▼搴�",
- "閽夐拤",
+ {
+ value: "3",
+ label: "鏅鸿兘璇煶",
+ },
+ {
+ value: "4",
+ label: "鐭俊",
+ },
+ {
+ value: "5",
+ label: "寰俊鍏紬鍙�",
+ },
+ {
+ value: "6",
+ label: "寰俊灏忕▼搴�",
+ },
+
+ // {
+ // value: "8",
+ // label: "鏅鸿兘鏈哄櫒浜�",
+ // },
];
+ } else if (this.form.serviceType == 7 || this.form.serviceType == 5) {
+ this.checkboxlist = [
+ {
+ value: "1",
+ label: "浜哄伐",
+ },
+ {
+ value: "2",
+ label: "绾歌川",
+ },
+ {
+ value: "3",
+ label: "鏅鸿兘璇煶",
+ },
+ {
+ value: "4",
+ label: "鐭俊",
+ },
+ {
+ value: "5",
+ label: "寰俊鍏紬鍙�",
+ },
+ {
+ value: "6",
+ label: "寰俊灏忕▼搴�",
+ },
+ ];
+ } else if (this.form.serviceType == 2 || this.form.serviceType == 3) {
+ this.checkboxlist = [
+ {
+ value: "1",
+ label: "浜哄伐",
+ },
+ {
+ value: "3",
+ label: "鏅鸿兘璇煶",
+ },
+ {
+ value: "4",
+ label: "鐭俊",
+ },
+ {
+ value: "5",
+ label: "寰俊鍏紬鍙�",
+ },
+ {
+ value: "6",
+ label: "寰俊灏忕▼搴�",
+ },
+
+ // {
+ // value: "8",
+ // label: "鏅鸿兘鏈哄櫒浜�",
+ // },
+ ];
+ }
+ getFollowuplist(this.topqueryParams).then((response) => {
+ this.userList = response.rows;
+ this.total = response.total;
+ });
+ },
+ nextstep() {
+ this.$refs["form"].validate((valid) => {
+ if (valid) {
+ if (this.Editprogress <= 3) {
+ return this.Editprogress++;
+ }
+ } else {
+ this.$modal.msgError("琛ㄥ崟鍐呭鏈畬鍠勶紝璇锋鏌�");
+ }
+ });
+ },
+ // 淇濆瓨
+ submitForm(type) {
+ if (this.templateor && type) this.templateor = false;
+ if (this.time4 && this.form.sendType == 3)
+ this.form.showTimeMorn = this.time4;
+ this.form.sendTimeslot = [
+ {
+ begantime: this.time4,
+ endtime: "",
+ xh: 1,
+ },
+ ];
+
+ if (this.checkList) {
+ this.form.preachform = this.checkList;
+ } else {
+ this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷");
+ return;
+ }
+
+ if (this.deptcodesWards[0] || this.leavehospitaldistrictcodes[0]) {
+ } else {
+ this.$modal.msgError("璇烽�夋嫨绉戝鎴栫梾鍖�");
+ return;
+ }
+ if (!this.form.patTaskRelevances[0] && !this.form.longTask) {
+ this.$modal.msgError("璇烽�夋嫨鐥呬汉");
+ return;
+ }
+
+ if (!this.form.templatename && !this.templateor) {
+ this.$modal.msgError("鏈�夋嫨妯℃澘");
+ return;
+ }
+
+ if ((this.form.sendType == 1 && this.time1) || this.form.sendType == 2) {
+ } else if (
+ (this.form.sendType == 3 && this.time4) ||
+ this.form.longTask
+ ) {
+ } else {
+ return this.$modal.msgError("鏃堕棿淇℃伅缂哄け");
+ }
+ const filteredArray = this.variableList.filter(
+ (item) =>
+ item.name !== "濮撳悕" && item.name !== "鐢佃瘽" && item.name !== "鍦板潃"
+ );
+ this.form.textParam = this.convertFormat2ToFormat1(filteredArray);
+ if (this.form.taskid) {
+ this.form.isoperation = 2;
+ } else {
+ this.form.isoperation = 1;
+ }
+ if (!this.form.type) {
+ this.form.type = this.$route.query.type;
+ }
+ this.form.serviceType = this.serviceType;
+ this.form.deptcode = this.deptcodesWards.join(",");
+ this.form.leavehospitaldistrictcode =
+ this.leavehospitaldistrictcodes.join(",");
+ Editsingletask(this.form).then((res) => {
+ if (res.code == 200) {
+ if (this.form.taskid) {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ } else {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ }
+ this.$router.push({
+ path: "/followvisit/tasklist",
+ query: { tasktopic: this.form.serviceType },
+ });
+ }
+ });
+ },
+
+ // ----------------------琛ㄦ牸瀛愮粍浠朵簨浠�
+
+ // 閫夋嫨棰勮
+ selectfn(row, type) {
+ // 妯℃澘鎯呭喌涓嬭幏鍙栨ā鏉夸俊鎭�
+ if (type == 1) {
+ this.libName = row.templateName;
+ this.libId = row.id;
+ this.questionList = row.ivrLibaTemplateScriptVOList;
+ getvFollowup({ id: row.id }).then((res) => {
+ if (res.code == 200) {
+ this.objyl = res.data;
+ // if (this.form.longTask) {
+ // this.objyl.sendDay = 5;
+ // }
+ this.queryParamsdept.type = 2;
+ this.queryParamsdept.tempid = row.id;
+ this.tempDetpRelevanceslist = [];
+ this.tempbelongWards = [];
+ this.objyl.suitway = this.objyl.suitway.split(",");
+ this.questionList = res.data.ivrLibaTemplateScriptVOList;
+ this.getillness(row.id);
+ this.Variablehandling(res.data.ivrLibaTemplateScriptVOList, 1);
+ this.previewtf = true;
+ }
+ });
+ this.previewid = row.id;
+ } else if (type == 2) {
+ } else if (type == 3) {
}
},
- // 涓嬩竴姝�
- submitForm(formName) {
- if (this.Editprogress <= 3) {
- return this.Editprogress++;
+ // 棰勮
+ previewfnmb() {
+ getTaskparticty(this.form.templateid).then((res) => {
+ if (res.code == 200) {
+ this.objyl = res.data;
+ if (this.objyl.suitway)
+ this.objyl.suitway = this.objyl.suitway.split(",");
+ this.queryParamsdept.tempid = this.form.templateid;
+ this.queryParamsdept.type = 21;
+ // 鐤剧梾
+ this.getillness(this.form.libtemplateid);
+
+ getvFollowup({ id: this.form.libtemplateid }).then((res) => {
+ if (res.code == 200) {
+ this.previewtf = true;
+ this.previewtftype = 1;
+ this.questionList = res.data.ivrLibaTemplateScriptVOList;
+ this.objyl.ivrLibaTemplateScriptVOList =
+ res.data.ivrLibaTemplateScriptVOList;
+ } else {
+ }
+ });
+ }
+ });
+ },
+ getillness(id) {
+ if (id) {
+ getillness({ outid: id, type: 5 }).then((res) => {
+ this.illnesslist = res.rows;
+ this.illnesslist.forEach((item) => {
+ item.icdname = item.icd10name;
+ });
+ });
}
- // 鎻愪氦
- // this.$refs[formName].validate((valid, object) => {
- // if (valid) {
- // alert("submit!");
- // } else {
- // console.log("error submit!!", object);
- // return false;
- // }
- // });
+ },
+ // 澶勭悊闂灞傚彉閲�
+ Variablehandling(arr, type) {
+ let Variablist = [];
+ if (type == 1) {
+ // 寰幆闂
+ arr.forEach((res) => {
+ // 寰幆閫夐」
+ JSON.parse(res.otherdata).forEach((item) => {
+ if (item.default != 1) {
+ Variablist.push({
+ value: item.variate,
+ fill: "",
+ name: item.variatename,
+ });
+ }
+ });
+ });
+
+ 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(row, "瀛愮粍浠舵暟鎹�");
- messagelistpatient(this.patientqueryParams).then((response) => {
- console.log(response);
+ this.allpids = [];
+ this.overallCase.forEach((item) => {
+ this.allpids.push(item.patid);
+ });
+ if (this.patientqueryParams.allhosp == 1) {
+ this.tableLabelhz = [
+ // { label: "鍏ラ櫌鏃ユ湡", width: "170", prop: "starttime" },
+ { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" },
+ { label: "鎮h��", width: "", prop: "name" },
+ { label: "韬唤璇�", width: "200", prop: "idcardno" },
+ { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
+ { label: "鎬у埆", width: "", prop: "sex" },
+ { label: "骞撮緞", width: "", prop: "age" },
+ { label: "鎮h�呮爣绛�", width: "", prop: "tag" },
+ { 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 == 4) {
+ this.tableLabelhz = [
+ { label: "鍏ラ櫌鏃ユ湡", width: "150", prop: "starttime" },
+ { label: "鎮h��", width: "", prop: "name" },
+ { label: "韬唤璇�", width: "200", prop: "idcardno" },
+ { label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
+ { label: "鎬у埆", width: "", prop: "sex" },
+ { label: "骞撮緞", width: "", prop: "age" },
+ { label: "鎮h�呮爣绛�", width: "", prop: "tag" },
+ { 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]) {
+ this.patientqueryParams.pids = this.allpids;
+ } 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);
+ }
+ getTaskpatientQC(this.patientqueryParams).then((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();
});
this.dialogVisiblepatient = true;
},
handleUpdate() {},
handleDelete() {},
handleExport() {},
- // 澶氶�夋閫変腑鏁版嵁
+ // 閫夋嫨鎮h�呰〃鏁版嵁
handleSelectionChange(selection) {
- this.ids = null;
- this.ids = selection.map((item) => item.patid).join(",");
- // let result = this.ids.join(",");
+ this.SelectPatientslist = structuredClone(selection);
this.multiple = !selection.length;
- console.log(this.ids);
+
+ // 璧嬪�肩粰鏁翠綋閫変腑鏁扮粍
+ this.SelectPatientslist.forEach((item) => {
+ const isExist = this.overallCase.find((obj) => obj.name == item.name);
+ if (!isExist) {
+ item.isoperation = 1;
+ item.patid = item.id;
+ item.hospType = this.patientqueryParams.allhosp;
+ item.sfzh = item.idcardno;
+ item.deptCode = item.deptcode;
+ item.deptName = item.dept;
+ item.admindate = item.inhosptime;
+ item.sfzh = item.idcardno;
+ if (this.patientqueryParams.allhosp==6) {
+ item.patfrom = 1;
+ }
+ this.overallCase.push(item);
+ this.form.patTaskRelevances.push(item);
+ }
+ });
+ },
+ // 鍒囨崲椤靛悗鎭㈠閫変腑
+ Restorecheck() {
+ const allid = this.overallCase.map((item) => item.patid);
+ const overlap = this.patientuserList.filter((value) => {
+ return allid.includes(value.patid);
+ });
+ // 淇濇寔ids鍜屽綋鍓嶉〉闈㈢殑鍚屾鎬�
+ this.SelectPatientslist = overlap;
+ this.toggleSelection(overlap);
+ },
+ // 鎸傝浇閫夋嫨鐘舵��
+ toggleSelection(rows) {
+ if (rows) {
+ this.decision = true;
+ this.$nextTick(() => {
+ rows.forEach((row) => {
+ this.$refs.multipleTable.toggleRowSelection(row, true);
+ });
+ this.decision = false;
+ });
+ } else {
+ this.$refs.multipleTable.clearSelection();
+ }
+ },
+ // 鍒犻櫎閫変腑鎮h��
+ detailhz(row, info) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鎮h��"' + row.name + '"鐨勬湇鍔¢」锛�')
+ .then(() => {
+ let indexa = this.overallCase.indexOf(row);
+ let indexb = this.form.patTaskRelevances.indexOf(row);
+ this.overallCase.splice(indexa, 1);
+ if (!this.form.taskid) {
+ this.form.patTaskRelevances.splice(indexa, 1);
+ } else {
+ this.form.patTaskRelevances[indexb].isoperation = 3;
+ }
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ });
},
getList() {},
- handleQuery() {},
+ handleQuery() {
+ if (this.patientqueryParams.topica == 0) {
+ this.patientqueryParams.leavehospitaldistrictcodes =
+ store.getters.leavehospitaldistrictcodes;
+ this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes;
+ } else if (this.patientqueryParams.topica == 1) {
+ this.patientqueryParams.leavehospitaldistrictcodes = null;
+ this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes;
+ } else if (this.patientqueryParams.topica == 2) {
+ this.patientqueryParams.leavehospitaldistrictcodes =
+ store.getters.leavehospitaldistrictcodes;
+ this.patientqueryParams.leaveldeptcodes = null;
+ }
+ 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() {},
+ handleQuerymb() {
+ getFollowuplist(this.topqueryParams).then((response) => {
+ this.userList = response.rows;
+ this.total = response.total;
+ });
+ },
handleClosehz() {
this.dialogVisiblepatient = false;
},
@@ -780,40 +1703,373 @@
resetForm(formName) {
this.$refs[formName].resetFields();
},
- // 棰勮妯$増
+ // 棰勮妯℃澘
PreviewTemplate() {},
Acknowledgereference() {
this.quote = true;
},
- // 鏂板瀛愪换鍔�
- Addsubtask() {
- this.topqueryParams.pguid = 2;
- // addsvr_prjtask(this.topqueryParams).then((res) => {
- // console.log(res);
- // });
+ // 鑾峰彇璇︽儏
+ Getdetails() {
+ this.form = {
+ patTaskRelevances: [],
+ sendType: 1,
+ sendDay: 5,
+ templatename: "",
+ templateid: null,
+ libtemplateid: null,
+ kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄棤閿″効绔ュ尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚銆�",
+ jsy: "鎰熻阿鎮ㄥ弬涓庢湰娆¢殢璁裤�傛偍鐨勫弽棣堝府鍔╂垜浠洿濂藉湴浜嗚В瀹濆疂鐨勯�傚簲鎯呭喌锛屽苟涓烘偍鎻愪緵鏇寸簿鍑嗙殑鎶ょ悊寤鸿涓庡仴搴锋寚瀵笺�傜鎮ㄥ拰瀹濆疂鍋ュ悍蹇箰銆�",
+ };
+
+ this.questionList = [];
+ if (this.id) {
+ getTaskInfo({ taskid: this.id }).then((res) => {
+ let filteredArray = "";
+ if (res.code == 200) {
+ this.form = res.data;
+ this.form.serviceType = this.serviceType;
+ this.form.patTaskRelevances = this.form.patTaskRelevances
+ ? this.form.patTaskRelevances
+ : [];
+ this.overallCase = this.form.patTaskRelevances.concat();
+ this.checkList = this.form.preachform;
+
+ this.overallCase.forEach((item) => {
+ if (item.endtime) {
+ item.endDay = this.daysBetween(item.endtime);
+ }
+ });
+ if (this.form.showDate)
+ this.daytime = this.form.showDate.split(",");
+ if (this.form.showTimeMorn) {
+ if (this.form.sendType == 3) {
+ this.time4 = this.form.showTimeMorn;
+ } else {
+ this.time1 = this.form.showTimeMorn.split(",");
+ }
+ }
+ if (this.form.taskid) {
+ this.listDept();
+ }
+ if (this.form.showTimeNoon)
+ this.time2 = this.form.showTimeNoon.split(",");
+ if (this.form.showTimeNight)
+ this.time3 = this.form.showTimeNight.split(",");
+ filteredArray = this.convertFormat1ToFormat2(this.form.textParam);
+ this.variableList = this.transitionList.concat(filteredArray);
+ } else {
+ this.$modal.msgError(res.code);
+ }
+
+ if (this.newadd) {
+ this.neWaddfn();
+ }
+ });
+ }
+ },
+ // 渚濈収鏂板鏃跺鐞�
+ neWaddfn() {
+ this.id = null;
+ this.form.taskName = "";
+ this.form.sendState = 1;
+ this.form.taskid = null;
+ this.overallCase = [];
+ this.form.patTaskRelevances = [];
+ this.daytime = []; //鏃ユ湡
+ this.applydaytime = []; //璁$畻鏃ユ湡
+ this.time1 = ""; //涓婂崍鏃堕棿娈�
+ this.time2 = ""; //涓嬪崍鏃堕棿娈�
+ this.time3 = ""; //鏅氫笂鏃堕棿娈�
+ this.time4 = ""; //鏅氫笂鏃堕棿娈�
+ },
+ // 鑾峰彇绉戝鍒楄〃
+ listDept() {
+ 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);
+ }
+ });
+ }
+ });
+ },
+ // 浠诲姟绉戝鍒犻櫎瑙﹀彂
+ 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) {
+ }
+ });
+ }
+ },
+ // 闄㈠尯鍒犻櫎鍒犻櫎瑙﹀彂
+ 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) {
+ }
+ });
+ }
+ },
+ getFollowupclassify() {
+ getFollowupclassify({}).then((res) => {
+ this.optionsclass = res.rows;
+ });
},
// 鏂板娲鹃�佹偅鑰�
AddDispatchpatients() {
- let objictpint = {};
- objictpint.patientes = this.ids;
- objictpint.pguid = 2;
- Addpatienttask(objictpint).then((res) => {
- console.log(res);
- });
+ // this.SelectPatientslist.forEach((item) => {
+ // item.isoperation = 1;
+ // });
+ // this.form.patTaskRelevances.push(...this.SelectPatientslist);
+ // this.overallCase.push(...this.SelectPatientslist);
this.dialogVisiblepatient = false;
},
- // 鏌ヨ瀛愪换鍔″垪琛�
- Getsubtask() {
- this.topqueryParams.pguid = 2;
- console.log(this.topqueryParams);
- messagelistpatient(this.topqueryParams).then((res) => {
- this.userList = res.rows;
- this.total = res.total;
- console.log(this.userList);
+ variableDelete(index, row) {
+ this.variableList.splice(index, 1);
+ row.isoperation = 3;
+ this.delvariableList.push(row);
+ },
+ // 鏃堕棿----------
+ changeTime(row) {
+ this.processingTime();
+ },
+ Totaldate(row) {
+ this.form.sendTimeslot = [{ begantime: row, endtime: row, xh: 1 }];
+ this.form.showTimeMorn = row;
+ },
+ changeTimeday(row) {
+ const startDate = new Date(row[0]);
+ const endDate = new Date(row[1]);
+ this.applydaytime = this.getDates(startDate, endDate);
+ this.processingTime();
+ },
+ getDates(startDate, endDate) {
+ const dates = [];
+ let currentDate = new Date(startDate);
+
+ while (currentDate <= endDate) {
+ dates.push(this.$moment(currentDate).format("YYYY-MM-DD"));
+ currentDate.setDate(currentDate.getDate() + 1);
+ }
+
+ return dates;
+ },
+ // 鏃堕棿鏈�缁堝鐞嗘柟娉�
+ processingTime() {
+ const combinedData = [];
+ let serialnumber = 1;
+ if (this.time3[0]) {
+ serialnumber = 3;
+ } else if (this.time2[0]) {
+ serialnumber = 2;
+ } else if (this.time1[0]) {
+ serialnumber = 1;
+ } else {
+ return;
+ }
+
+ for (let i = 0; i < this.applydaytime.length; i++) {
+ combinedData.push({
+ begantime: `${this.applydaytime[i]} ${this.time1[0]}`,
+ endtime: `${this.applydaytime[i]} ${this.time1[1]}`,
+ xh: serialnumber * i + 1,
+ });
+ if (serialnumber >= 2) {
+ combinedData.push({
+ begantime: `${this.applydaytime[i]} ${this.time2[0]}`,
+ endtime: `${this.applydaytime[i]} ${this.time2[1]}`,
+ xh: serialnumber * i + 2,
+ });
+ }
+ if (serialnumber >= 3) {
+ combinedData.push({
+ begantime: `${this.applydaytime[i]} ${this.time3[0]}`,
+ endtime: `${this.applydaytime[i]} ${this.time3[1]}`,
+ xh: serialnumber * i + 3,
+ });
+ }
+ }
+ this.form.sendTimeslot = combinedData;
+ // 灞曠ず鏁版嵁涓存椂瀛樺偍鏃ユ湡銆佹棭銆佷腑銆佹櫄
+
+ this.form.showDate = this.daytime.join(",");
+ if (this.time1) this.form.showTimeMorn = this.time1.join(",");
+ if (this.time2) this.form.showTimeNoon = this.time2.join(",");
+ if (this.time3) this.form.showTimeNight = this.time3.join(",");
+ },
+
+ // 淇濆瓨/鏇存柊浠诲姟妯℃澘
+ previewFn() {
+ if (Array.isArray(this.objyl.suitway)) {
+ this.objyl.suitway = this.objyl.suitway.join(",");
+ }
+ this.objyl.ivrLibaTemplateScriptVOList.forEach((item) => {
+ item.ivrTaskScriptTargetoptionList = item.ivrLibaScriptTargetoptionList;
+ });
+ this.objyl.ivrTaskTemplateScriptVOList =
+ this.objyl.ivrLibaTemplateScriptVOList;
+ this.objyl.isoperation = 1;
+ if (this.form.id) {
+ this.objyl.taskid = this.form.id;
+ }
+ // if (!this.objyl.sendDay) {
+ // this.objyl.sendDay = "5";
+ // }
+ if (this.form.templateid) {
+ deleteTaskparticty(this.form.templateid).then((res) => {
+ if (res.code == 200) {
+ Taskparticty(this.objyl).then((response) => {
+ this.previewtf = false;
+ this.form.libtemplateid = this.objyl.id;
+ this.form.templateid = response.data;
+ this.putbelongDepts(response.data);
+ this.form.templatename = this.objyl.templateName;
+ this.$modal.msgSuccess("鏇挎崲妯℃澘鎴愬姛");
+ this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
+ this.previewtf = false; //棰勮
+ if (this.skip) {
+ // 璺宠浆鍓嶅線淇敼
+ this.$router.push({
+ path: "/knowledge/taskub/",
+ query: { id: response.data },
+ });
+ }
+ });
+ }
+ });
+ } else {
+ Taskparticty(this.objyl).then((response) => {
+ this.previewtf = false;
+ this.form.libtemplateid = this.objyl.id;
+ this.form.templateid = response.data;
+ this.putbelongDepts(response.data);
+ this.form.templatename = this.objyl.templateName;
+ this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
+ this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
+ this.previewtf = false; //棰勮
+ if (this.skip) {
+ // 璺宠浆鍓嶅線淇敼
+ this.$router.push({
+ path: "/knowledge/taskub/",
+ query: { id: response.data },
+ });
+ }
+ });
+ }
+ },
+ // 淇濆瓨绉戝/鐥呭尯
+ putbelongDepts(id) {
+ this.tempDetpRelevanceslistform.forEach((item) => {
+ item.tempid = id;
+ });
+ this.tempbelongWardsform.forEach((item) => {
+ item.tempid = id;
+ });
+ depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("绉戝鏇存柊鎴愬姛");
+ this.tempDetpRelevanceslistform = [];
+ }
+ });
+ depthospgetson(this.tempbelongWardsform).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("鐥呭尯鏇存柊鎴愬姛");
+ this.tempbelongWardsform = [];
+ }
});
},
- /** 鏌ヨ鎮h�呭垪琛� */
+ checkboxChange(checked, value) {},
+ // 鏈嶅姟褰㈠紡閫夊彇
+ handleCheckedCitiesChange(row) {
+ console.log(row, "鏈嶅姟");
+ this.foncheckList = this.checkboxlist.filter((obj) =>
+ row.includes(obj.value)
+ );
+ },
+ // 鏈嶅姟褰㈠紡鍒犻櫎
+ handleClosetag(tag) {
+ console.log(tag, "tag");
+ console.log(this.foncheckList, "foncheckList");
+ this.checkList = this.checkList.filter((item) => item != tag.value);
+ this.foncheckList = this.foncheckList.filter(
+ (obj) => obj.value !== tag.value
+ );
+ },
+ // 绉戝澶勭悊
+ Departmenttreatment() {
+ if (!this.form.taskid) {
+ this.templateor = true;
+ MessageBox.confirm(
+ "褰撳墠涓烘柊澧炰换鍔℃湭淇濆瓨涓嶅彲鍏宠仈妯℃澘锛屾槸鍚﹀厛淇濆瓨浠诲姟锛�",
+ "鍔熻兘鎻愮ず",
+ {
+ confirmButtonText: "淇濆瓨浠诲姟",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ }
+ )
+ .then(() => {
+ if (Array.isArray(this.objyl.suitway)) {
+ this.objyl.suitway = this.objyl.suitway.join(",");
+ }
+ this.objyl.templateid = this.objyl.id;
+ this.objyl.isoperation = 1;
+ this.objyl.ivrLibaTemplateScriptVOList.forEach((item) => {
+ item.ivrTaskScriptTargetoptionList =
+ item.ivrLibaScriptTargetoptionList;
+ });
+ this.objyl.ivrTaskTemplateScriptVOList =
+ this.objyl.ivrLibaTemplateScriptVOList;
+ this.form.ivrTaskTemplateVO = this.objyl;
+
+ this.submitForm();
+ })
+ .catch(() => {});
+ } else {
+ setTimeout(() => {
+ this.previewFn();
+ }, 1000);
+ }
+ },
+ // 鍓嶅線淇敼
+ Modifytemplate() {
+ if (this.form.templateid && this.previewtftype) {
+ this.$modal.confirm("鏄惁鍓嶅線淇敼浠诲姟妯℃澘璇︾粏鍐呭锛�").then(() => {
+ this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
+ this.previewtf = false; //棰勮
+ this.$router.push({
+ path: "/knowledge/taskub/",
+ query: { id: this.form.templateid },
+ });
+ });
+ } else {
+ this.$modal
+ .confirm("褰撳墠涓哄熀纭�棰勮鏄惁鍒涘缓浠诲姟妯℃澘骞跺墠寰�淇敼璇︽儏锛�")
+ .then(() => {
+ // 璧板彇鍏堢粦瀹氬悗淇敼鎿嶄綔
+ this.Departmenttreatment();
+ this.skip = true;
+ });
+ }
+ },
},
};
</script>
@@ -848,13 +2104,15 @@
0 0 6px 0 rgba(0, 0, 0, 0.04);
}
.examine-jic {
+ margin: 20px;
.headline {
font-size: 24px;
+ height: 40px;
border-left: 5px solid #41a1be;
padding-left: 5px;
margin-bottom: 10px;
display: flex;
- justify-content: space-between;
+ // justify-content: space-between;
.Add-details {
font-size: 18px;
color: #02a7f0;
@@ -889,23 +2147,31 @@
}
}
}
-// .leftvlue-jbxx {
-// margin-bottom: 50px;
-// font-size: 20px;
-// span {
-// position: absolute;
-// right: 80px;
-// }
-// .demo-cascader {
-// margin-right: 20px;
-// }
-// .PreviewTemplate {
-// color: #02a7f0;
-// cursor: pointer;
-// font-size: 20px;
-// margin: 0 20px;
-// }
-// }
+.xinz-infs {
+ font-size: 18px;
+ line-height: 48px;
+
+ .el-tag + .el-tag {
+ margin-left: 10px;
+ }
+}
+
+.preview-left {
+ margin: 20px;
+ // margin: 20px;
+ padding: 30px;
+ background: #ffff;
+ // 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);
+ .scriptTopic-dev {
+ margin-bottom: 25px;
+ font-size: 20px !important;
+ .dev-text {
+ margin-bottom: 10px;
+ }
+ }
+}
.jic-value {
font-size: 20px;
border-top: 1px solid #a7abac;
@@ -967,12 +2233,18 @@
// }
::v-deep.el-radio-group {
span {
- font-size: 24px;
+ font-size: 18px;
}
+}
+::v-deep.el-input.is-disabled .el-input__inner {
+ background-color: #f5f7fa;
+ border-color: #dfe4ed;
+ color: rgb(253, 66, 66);
+ cursor: not-allowed;
}
::v-deep.el-checkbox-group {
span {
- font-size: 24px;
+ font-size: 18px;
}
}
</style>
--
Gitblit v1.9.3