From a5cba9ab040f6f97558046885dce3017f9bab7e9 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期二, 11 八月 2026 14:12:29 +0800
Subject: [PATCH] 提交
---
src/views/patient/propaganda/particty.vue | 2215 ++++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 1,357 insertions(+), 858 deletions(-)
diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index eb44171..e169997 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -69,44 +69,18 @@
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"
- >
- {{ item.label }}</el-radio
- >
- </el-radio-group>
- </el-form-item> -->
+
<el-form-item label="鏈嶅姟褰㈠紡">
<SortCheckbox
v-model="checkList"
:options="checkboxlist"
- :selectedOrder="selectedOrder"
+ :initialselectedOrder="selectedOrder"
value-key="value"
label-key="label"
@change="checkSelectionChange"
/>
</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>
@@ -223,14 +197,47 @@
</div>
</div>
</el-form-item>
+
<el-form-item label="浠诲姟鍏宠仈" prop="longTask">
<el-radio-group v-model="form.appltype">
<el-radio label="1">绉戝鍏宠仈</el-radio>
<el-radio label="2">鐥呭尯鍏宠仈</el-radio>
<el-radio label="3">鐤剧梾鍏宠仈</el-radio>
<el-radio label="4">鎵嬫湳鍏宠仈</el-radio>
+ <el-radio label="5">浠诲姟缁�</el-radio>
+ <el-radio label="6">鑽搧鍏宠仈</el-radio>
</el-radio-group>
</el-form-item>
+
+ <!-- 鑽搧鍏宠仈 -->
+ <el-row v-if="form.appltype == 6">
+ <el-col :span="20">
+ <el-form-item label="鍏宠仈鑽搧" prop="region">
+ <el-select
+ v-model="medicalCodes"
+ @remove-tag="removeMedical"
+ style="width: 400px"
+ size="medium"
+ multiple
+ filterable
+ remote
+ reserve-keyword
+ :remote-method="remoteSearchMedical"
+ placeholder="璇疯緭鍏ヨ嵂鍝佸悕绉版悳绱�"
+ loading-text="鎼滅储涓�..."
+ >
+ <el-option
+ v-for="item in medicalOptions"
+ :key="item.id"
+ :label="item.itemName + ' (' + item.manufacturerName + ')'"
+ :value="item.itemCode"
+ />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <!-- 绉戝鍏宠仈 -->
<el-row v-if="form.appltype == 1">
<el-col :span="20"
><el-form-item label="閫傜敤绉戝" prop="region">
@@ -254,6 +261,8 @@
</el-select> </el-form-item
></el-col>
</el-row>
+
+ <!-- 鐥呭尯鍏宠仈 -->
<el-row v-if="form.appltype == 2">
<el-col :span="20"
><el-form-item label="閫傜敤鐥呭尯" prop="region">
@@ -277,6 +286,8 @@
</el-select> </el-form-item
></el-col>
</el-row>
+
+ <!-- 鐤剧梾鍏宠仈 -->
<el-row v-if="form.appltype == 3">
<div class="xinz-infs">
<el-form-item>
@@ -307,35 +318,455 @@
>
{{ tag.icdname }}
</el-tag>
- <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> -->
</el-form-item>
</div>
- </el-row>
- <el-row v-if="form.appltype == 4">
- <el-col :span="20"
- ><el-form-item label="閫傜敤鎵嬫湳" prop="region">
- <el-select
- v-model="operationcodes"
- style="width: 400px"
- @remove-tag="removeopera"
- :remote-method="remoteopcode"
- size="medium"
- multiple
- filterable
- remote
- placeholder="璇烽�夋嫨鎵嬫湳"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in baseoperaList"
- :key="item.icdcode"
- :label="item.icdname"
- :value="item.icdcode"
+ <div
+ style="
+ margin-bottom: 20px;
+ padding: 8px 12px;
+ background-color: #f0f9ff;
+ border-left: 4px solid #409eff;
+ "
+ >
+ <p style="margin: 0; color: #606266; font-size: 13px">
+ <i
+ class="el-icon-info"
+ style="color: #409eff; margin-right: 6px"
+ ></i>
+ 閽堝鍚屼竴鐤剧梾鍦ㄥ绉戝/鐥呭尯涓嬪瓨鍦ㄧ殑鎯呭喌锛屽彲閫夋嫨鎬ч厤缃浐瀹氱瀹�/鐥呭尯
+ </p>
+ </div>
+ <el-row :gutter="20" style="margin-top: 20px">
+ <el-col :span="12">
+ <el-form-item label="鍏宠仈绉戝" prop="diseaseDept">
+ <el-select
+ v-model="diseaseDept"
+ style="width: 100%"
+ clearable
+ filterable
+ placeholder="璇烽�夋嫨绉戝锛堝彲閫夛級"
+ value-key="deptCode"
+ @change="handleDiseaseDeptChange"
>
- </el-option>
- </el-select> </el-form-item
- ></el-col>
+ <el-option
+ v-for="item in belongDepts"
+ :key="item.deptCode"
+ :label="item.deptName"
+ :value="item"
+ ></el-option>
+ </el-select>
+ <div v-if="diseaseDept" class="selected-info">
+ 宸查�夋嫨: {{ diseaseDept.deptName }} ({{
+ diseaseDept.deptCode
+ }})
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍏宠仈鐥呭尯" prop="diseaseWard">
+ <el-select
+ v-model="diseaseWard"
+ style="width: 100%"
+ clearable
+ filterable
+ placeholder="璇烽�夋嫨鐥呭尯锛堝彲閫夛級"
+ value-key="districtCode"
+ @change="handleDiseaseWardChange"
+ >
+ <el-option
+ v-for="item in belongWards"
+ :key="item.districtCode"
+ :label="item.districtName"
+ :value="item"
+ ></el-option>
+ </el-select>
+ <div v-if="diseaseWard" class="selected-info">
+ 宸查�夋嫨: {{ diseaseWard.districtName }} ({{
+ diseaseWard.districtCode
+ }})
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
</el-row>
+
+ <!-- 鎵嬫湳鍏宠仈 -->
+ <el-row v-if="form.appltype == 4">
+ <el-form-item label="閫傜敤鎵嬫湳" prop="region">
+ <el-select
+ v-model="form.oplevelcode"
+ style="width: 400px"
+ @remove-tag="removeopera"
+ size="medium"
+ :remote-method="remoteopcode"
+ filterable
+ remote
+ placeholder="璇烽�夋嫨鎵嬫湳"
+ >
+ <el-option
+ class="ruleFormaa"
+ v-for="item in baseoperaList"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <div
+ style="
+ margin-bottom: 20px;
+ padding: 8px 12px;
+ background-color: #f0f9ff;
+ border-left: 4px solid #409eff;
+ "
+ >
+ <p style="margin: 0; color: #606266; font-size: 13px">
+ <i
+ class="el-icon-info"
+ style="color: #409eff; margin-right: 6px"
+ ></i>
+ 閽堝鍚屼竴鎵嬫湳绫诲瀷鍦ㄥ绉戝/鐥呭尯涓嬪瓨鍦ㄧ殑鎯呭喌锛屽彲閫夋嫨鎬ч厤缃浐瀹氱瀹�/鐥呭尯
+ </p>
+ </div>
+ <el-row :gutter="20" style="margin-top: 20px">
+ <el-col :span="12">
+ <el-form-item label="鍏宠仈绉戝" prop="diseaseDept">
+ <el-select
+ v-model="diseaseDept"
+ style="width: 100%"
+ clearable
+ filterable
+ placeholder="璇烽�夋嫨绉戝锛堝彲閫夛級"
+ value-key="deptCode"
+ @change="handleDiseaseDeptChange"
+ >
+ <el-option
+ v-for="item in belongDepts"
+ :key="item.deptCode"
+ :label="item.deptName"
+ :value="item"
+ ></el-option>
+ </el-select>
+ <div v-if="diseaseDept" class="selected-info">
+ 宸查�夋嫨: {{ diseaseDept.deptName }} ({{
+ diseaseDept.deptCode
+ }})
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍏宠仈鐥呭尯" prop="diseaseWard">
+ <el-select
+ v-model="diseaseWard"
+ style="width: 100%"
+ clearable
+ filterable
+ placeholder="璇烽�夋嫨鐥呭尯锛堝彲閫夛級"
+ value-key="districtCode"
+ @change="handleDiseaseWardChange"
+ >
+ <el-option
+ v-for="item in belongWards"
+ :key="item.districtCode"
+ :label="item.districtName"
+ :value="item"
+ ></el-option>
+ </el-select>
+ <div v-if="diseaseWard" class="selected-info">
+ 宸查�夋嫨: {{ diseaseWard.districtName }} ({{
+ diseaseWard.districtCode
+ }})
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-row>
+
+ <!-- 浠诲姟缁� (appltype=5) -->
+ <div v-if="form.appltype == 5">
+ <el-divider content-position="left">浠诲姟缁勪富璁″垝</el-divider>
+ <el-form-item label="鎵ц鏂瑰紡">
+ <el-radio-group
+ v-model="form.serviceTaskScheduleVO.scheduleStyle"
+ >
+ <el-radio :label="0">闈炲惊鐜�</el-radio>
+ <el-radio :label="1">寰幆</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <div v-if="form.serviceTaskScheduleVO.scheduleStyle == 1">
+ <el-row :gutter="20" style="margin-top: 20px">
+ <el-col :span="12">
+ <el-form-item label="寰幆闂撮殧">
+ <el-input-number
+ v-model="form.serviceTaskScheduleVO.scheduleTimeNum"
+ :min="1"
+ style="width: 120px"
+ />
+ <el-select
+ v-model="
+ form.serviceTaskScheduleVO.scheduleTimeUnit
+ "
+ placeholder="鍗曚綅"
+ style="width: 100px; margin-left: 8px"
+ >
+ <el-option label="澶�" :value="1" />
+ <el-option label="鍛�" :value="2" />
+ <el-option label="鏈�" :value="3" />
+ <el-option label="骞�" :value="4" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鏈�澶ц疆娆�">
+ <el-input-number
+ v-model="form.serviceTaskScheduleVO.maxLoopCount"
+ :min="0"
+ :step="1"
+ placeholder="0琛ㄧず鏃犻檺"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <el-row :gutter="20" style="margin-top: 20px">
+ <el-col :span="12">
+ <el-form-item label="鍩哄噯鏃堕棿">
+ <el-radio-group
+ v-model="form.serviceTaskScheduleVO.scheduleBenchmark"
+ >
+ <el-radio :label="0">鑷畾涔�</el-radio>
+ <el-radio :label="1">鍏ラ櫌鏃堕棿</el-radio>
+ <el-radio :label="2">鍑洪櫌鏃堕棿</el-radio>
+ <el-radio :label="3">灏辫瘖鏃堕棿</el-radio>
+ <el-radio :label="4">鍏ョ粍鏃堕棿</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col
+ :span="12"
+ v-if="form.serviceTaskScheduleVO.scheduleBenchmark == 0"
+ >
+ <el-form-item label="鑷畾涔夊熀鍑嗘椂闂�">
+ <el-date-picker
+ v-model="
+ form.serviceTaskScheduleVO
+ .scheduleBenchmarkCustomTime
+ "
+ type="datetime"
+ placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ />
+ </el-form-item>
+ </el-col>
+
+ <el-col :span="12">
+ <el-form-item label="涓嬫鎵ц鏃堕棿">
+ <el-date-picker
+ v-model="form.serviceTaskScheduleVO.nextExecuteTime"
+ type="datetime"
+ placeholder="閫夋嫨棣栨鎵ц鏃堕棿"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20" style="margin-top: 20px">
+ <el-col :span="12">
+ <el-form-item label="鍏宠仈绉戝" prop="diseaseDept">
+ <el-select
+ v-model="diseaseDept"
+ style="width: 100%"
+ clearable
+ filterable
+ placeholder="璇烽�夋嫨绉戝锛堝彲閫夛級"
+ value-key="deptCode"
+ @change="handleDiseaseDeptChange"
+ >
+ <el-option
+ v-for="item in belongDepts"
+ :key="item.deptCode"
+ :label="item.deptName"
+ :value="item"
+ ></el-option>
+ </el-select>
+ <div v-if="diseaseDept" class="selected-info">
+ 宸查�夋嫨: {{ diseaseDept.deptName }} ({{
+ diseaseDept.deptCode
+ }})
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍏宠仈鐥呭尯" prop="diseaseWard">
+ <el-select
+ v-model="diseaseWard"
+ style="width: 100%"
+ clearable
+ filterable
+ placeholder="璇烽�夋嫨鐥呭尯锛堝彲閫夛級"
+ value-key="districtCode"
+ @change="handleDiseaseWardChange"
+ >
+ <el-option
+ v-for="item in belongWards"
+ :key="item.districtCode"
+ :label="item.districtName"
+ :value="item"
+ ></el-option>
+ </el-select>
+ <div v-if="diseaseWard" class="selected-info">
+ 宸查�夋嫨: {{ diseaseWard.districtName }} ({{
+ diseaseWard.districtCode
+ }})
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <div class="xinz-infs">
+ <el-form-item>
+ <template #label>
+ <el-tooltip
+ class="item"
+ effect="light"
+ content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!"
+ placement="top-start"
+ >
+ <i class="el-icon-warning-outline"></i>
+ </el-tooltip>
+ </template>
+ <div style="margin-bottom: 10px">
+ <el-button
+ type="warning"
+ @click="$refs.child.handleAddpatient()"
+ >娣诲姞鐤剧梾璇婃柇</el-button
+ >
+ </div>
+ <el-tag
+ v-for="tag in diagglist"
+ @close="removediagg(tag.icd10code)"
+ type="warning"
+ closable
+ :disable-transitions="false"
+ >
+ {{ tag.icdname }}
+ </el-tag>
+ </el-form-item>
+ </div>
+ </el-row>
+ <!-- 鏄庣粏鍒楄〃 -->
+ <el-row :gutter="20" style="margin-top: 20px">
+ <el-col :span="24">
+ <el-divider content-position="left"
+ >浠诲姟鏄庣粏鍒楄〃</el-divider
+ >
+ <el-button
+ type="primary"
+ size="small"
+ icon="el-icon-plus"
+ @click="addDetail"
+ >娣诲姞鏄庣粏</el-button
+ >
+ <el-table
+ :data="form.serviceTaskScheduleVO.detailList"
+ border
+ style="width: 100%; margin-top: 10px"
+ >
+ <el-table-column label="搴忓彿" width="80" align="center">
+ <template slot-scope="scope">{{
+ scope.row.seq
+ }}</template>
+ </el-table-column>
+ <el-table-column label="闂撮殧澶╂暟" width="120">
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.dayOffset"
+ :min="0"
+ size="small"
+ controls-position="right"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column label="妯℃澘" min-width="200">
+ <template slot-scope="scope">
+ <el-select
+ v-model="scope.row.templateid"
+ filterable
+ remote
+ :remote-method="remoteTemplate"
+ placeholder="鎼滅储妯℃澘"
+ size="small"
+ @change="
+ handleTemplateSelect(scope.$index, scope.row)
+ "
+ >
+ <el-option
+ v-for="item in templateOptions"
+ :key="item.id"
+ :label="item.templateName"
+ :value="item.id"
+ >
+ <span style="float: left">{{
+ item.templateName
+ }}</span>
+ <span
+ style="
+ float: right;
+ color: #8492a6;
+ font-size: 12px;
+ "
+ >{{ item.createBy }}</span
+ >
+ </el-option>
+ </el-select>
+ <span
+ style="
+ margin-left: 5px;
+ font-size: 12px;
+ color: #909399;
+ "
+ >{{ scope.row.templatename }}</span
+ >
+ </template>
+ </el-table-column>
+ <el-table-column label="寮�鍦虹櫧" min-width="150">
+ <template slot-scope="scope">
+ <el-input
+ v-model="scope.row.kcb"
+ size="small"
+ placeholder="鍙��"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column label="缁撴潫璇�" min-width="150">
+ <template slot-scope="scope">
+ <el-input
+ v-model="scope.row.jsy"
+ size="small"
+ placeholder="鍙��"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎿嶄綔"
+ width="100"
+ align="center"
+ >
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="danger"
+ icon="el-icon-delete"
+ @click="removeDetail(scope.$index)"
+ ></el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </el-col>
+ </el-row>
+ </div>
+
+ <!-- 缁撴潫 -->
<el-row>
<el-col :span="12"
><el-form-item label="寮�鍦虹櫧" prop="kcb">
@@ -372,17 +803,12 @@
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.templateid"
type="success"
@@ -398,17 +824,18 @@
<div class="examine-jic">
<div class="jic-value">
<div style="margin-bottom: 10px">妯℃澘涓娇鐢ㄧ殑鍙橀噺锛�</div>
-
<el-row :gutter="20">
<el-table :data="variableList" style="width: 100%">
<el-table-column
prop="name"
align="center"
label="鍙橀噺鍚嶇О"
- >
- </el-table-column>
- <el-table-column prop="value" align="center" label="鍖归厤绗�">
- </el-table-column>
+ ></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
@@ -420,11 +847,6 @@
</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"
@@ -442,7 +864,6 @@
<el-button type="success" @click="nextstep('ruleForm')">{{
quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏閰嶇疆"
}}</el-button>
- <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
</div>
<!-- 浠诲姟璇︽儏 -->
<div v-if="Editprogress == 2">
@@ -471,7 +892,6 @@
</el-option>
</el-select>
</el-col>
-
<el-col :span="1.5">
<el-button
type="primary"
@@ -480,25 +900,10 @@
size="medium"
:disabled="!patientqueryParams.allhosp"
@click="handleQuery"
- >鏂板</el-button
+ >娣诲姞鎮h��</el-button
>
</el-col>
-
- <!-- <el-col :span="1.5">
- <el-button
- type="danger"
- plain
- icon="el-icon-delete"
- size="medium"
- :disabled="multiple"
- @click="handleDelete"
- >鍒犻櫎</el-button
- >
- </el-col> -->
-
- <!-- <el-col :span="1.5"> </el-col> -->
</el-row>
- <!-- 閫変腑鎮h�呭垪琛� -->
<SFtable
@details="detailhz"
@handleUpdate="handleUpdate"
@@ -523,10 +928,12 @@
</div>
</div>
<el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
- <el-button type="success" @click="submitForm('11')">{{
- quote ? "绔嬪嵆鍒涘缓" : "纭浠诲姟閰嶇疆"
- }}</el-button>
- <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
+ <el-button
+ :loading="submitLoading"
+ type="success"
+ @click="submitForm('11')"
+ >{{ quote ? "绔嬪嵆鍒涘缓" : "纭浠诲姟閰嶇疆" }}</el-button
+ >
</div>
</div>
<!-- 娣诲姞鎮h�� -->
@@ -540,7 +947,6 @@
<div class="examine-jic">
<div class="jic-value">
<el-row :gutter="20">
- <!--鐢ㄦ埛鏁版嵁-->
<el-form
:model="patientqueryParams"
ref="queryForm"
@@ -573,7 +979,6 @@
>
</el-option>
</el-select>
-
<el-form-item>
<el-button
type="primary"
@@ -590,7 +995,6 @@
>
</el-form-item>
</el-form>
- <!-- 閫夋嫨鎮h�呭垪琛� -->
<SFtable
ref="multipleTable"
@handleUpdate="handleUpdate"
@@ -621,8 +1025,8 @@
<!-- 妯℃澘棰勮 -->
<el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="70%">
<el-tabs type="border-card">
- <el-tab-pane label="妯℃澘鍩虹鏁版嵁"
- ><div class="preview-left">
+ <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">
@@ -676,7 +1080,6 @@
<el-input v-model="objyl.templateName"></el-input>
</div>
</el-form-item>
-
<div class="xinz-infs">
<el-form-item>
<template #label>
@@ -690,7 +1093,6 @@
<i class="el-icon-warning-outline"></i>
</el-tooltip>
</template>
-
<el-tag
v-for="tag in illnesslist"
:key="tag.icdid"
@@ -699,7 +1101,6 @@
>
{{ 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">
@@ -711,7 +1112,6 @@
>
</el-input
></el-form-item>
-
<el-form-item label="闅忚缁撴潫璇�" prop="conclusion">
<el-input
type="textarea"
@@ -721,10 +1121,11 @@
>
</el-input
></el-form-item>
- </el-form></div
- ></el-tab-pane>
- <el-tab-pane label="闂灞曠ず"
- ><div class="preview-left">
+ </el-form>
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="闂灞曠ず">
+ <div class="preview-left">
<div v-for="item in questionList">
<!-- 鍗曢�� -->
<div
@@ -733,7 +1134,7 @@
v-if="item.scriptType == 1"
>
<div class="dev-text">
- {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
+ {{ item.sort }}. [鍗曢�塢<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
<el-radio-group v-model="item.remark">
@@ -755,7 +1156,7 @@
v-if="item.scriptType == 2"
>
<div class="dev-text">
- {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
+ {{ item.sort }}. [澶氶�塢<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
<el-checkbox-group v-model="qremark">
@@ -778,7 +1179,7 @@
v-if="item.scriptType == 4"
>
<div class="dev-text">
- {{ item.sort }}銆乕闂瓟]<span>{{ item.scriptContent }}</span>
+ {{ item.sort }}. [闂瓟]<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
<el-input
@@ -789,12 +1190,11 @@
</el-input>
</div>
</div>
- </div></div
- ></el-tab-pane>
+ </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"
@@ -810,6 +1210,7 @@
>
</span>
</el-dialog>
+ <!-- 妯℃澘鍒楄〃鎶藉眽 -->
<el-drawer
title="闅忚鍐呭鍒楄〃"
:visible.sync="drawermb"
@@ -820,8 +1221,6 @@
<div class="examine-jic">
<div class="jic-value">
<el-row :gutter="20">
- <!--鐢ㄦ埛鏁版嵁-->
-
<el-form
:model="topqueryParams"
ref="queryForm"
@@ -833,17 +1232,6 @@
<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"
@@ -855,13 +1243,12 @@
<el-button
icon="el-icon-refresh"
size="medium"
- @click="resetQuery"
+ @click="resetQuerymb"
>閲嶇疆</el-button
>
</el-form-item>
</el-form>
<el-divider></el-divider>
- <!-- 閫夋嫨妯℃澘鍒楄〃 -->
<SFtable
@selectfn="selectfn"
:currentList="userList"
@@ -891,7 +1278,6 @@
/>
</div>
</template>
-
<script>
import { messagelistpatient } from "@/api/patient/homepage";
import store from "@/store";
@@ -901,6 +1287,7 @@
getbaseopera,
getFollowuplist,
getvFollowup,
+ selectInfoByCondition,
Taskparticty,
deleteTaskparticty,
getTaskInfo,
@@ -915,54 +1302,61 @@
taskdiaghospgetsondel,
taskdiaggetlist,
taskopergetlist,
+ rwztaskdepthospgetsonlist,
+ rwztaskdiaggetlist,
+ getQtemplatelist,
} from "@/api/AiCentre/index";
+import { listMedication } from "@/api/knowledge/drug";
import { deptTreeSelect } from "@/api/system/user";
import OptionalForm from "@/components/OptionalForm";
-import SortCheckbox from "@/components/SortCheckbox"; //琛ㄦ牸缁勪欢
+import SortCheckbox from "@/components/SortCheckbox";
import { MessageBox } from "element-ui";
-
-import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
+import SFtable from "@/components/SFtable";
export default {
name: "particty",
data() {
return {
title: "瀹f暀鍐呭鍒楄〃",
- currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闅忚
- id: "", //
- previewid: "", //浠诲姟妯℃澘浼犻�抜d
+ currenttype: 1,
+ id: "",
+ previewid: "",
libName: "",
username: "",
templateor: false,
+ submitLoading: false,
objyl: {},
- overallCase: [], //閫夋嫨鎮h�呮��
+ overallCase: [],
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�呭脊妗�
+ libId: null,
+ Editprogress: 1,
+ drawermb: false,
+ previewtf: false,
+ previewtftype: 0,
+ dialogVisiblepatient: false,
dialogVisiblepatientjb: false,
- deptcodesWards: [], //绉戝鏁版嵁
- leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁
- operationcodes: [], //鎵嬫湳鏁版嵁
- illnesscodes: [], //鐤剧梾鏁版嵁
+ deptcodesWards: [],
+ leavehospitaldistrictcodes: [],
+ operationcodes: [],
+ illnesscodes: [],
radio: 1,
checkboxlist: [],
tableLabel: [],
questionList: [],
- skip: false,
donorchargeList: [],
- baseoperaList: [],
+ baseoperaList: [
+ { value: "1", label: "涓�绾ф墜鏈�" },
+ { value: "2", label: "浜岀骇鎵嬫湳" },
+ { value: "3", label: "涓夌骇鎵嬫湳" },
+ { value: "4", label: "鍥涚骇鎵嬫湳" },
+ ],
selectedOrder: [],
-
+ diseaseDept: null,
+ diseaseWard: null,
usable: [
{ value: "0", label: "鍙敤" },
{ value: "1", label: "鍋滅敤" },
@@ -973,7 +1367,6 @@
],
props: { multiple: true, value: "deptCode", label: "deptName" },
propstask: { value: "deptCode", label: "deptName" },
- // 鎮h�呰〃鍗�
tableLabelhz: [
{ label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" },
{ label: "鎮h��", width: "", prop: "name" },
@@ -981,12 +1374,12 @@
{ label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
{ label: "鎬у埆", width: "", prop: "sex" },
{ label: "骞撮緞", width: "", prop: "age" },
+ { label: "鐢佃瘽", width: "180", prop: "telcode" },
{ 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" },
@@ -1000,14 +1393,12 @@
{ label: "绉戝", width: "180", prop: "deptName" },
{ label: "鐥呭尯", width: "150", prop: "leavehospitaldistrictname" },
],
-
tableLabelwj: [
{ 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" },
@@ -1026,15 +1417,14 @@
{ label: "绾夸笅锛堢焊璐級", value: 10 },
{ label: "绾夸笂锛堢煭淇�/閽夐拤鐨勬枃鏈�侀殢璁块摼鎺ワ級", value: 11 },
],
- // 鏃堕棿澶勭悊
- daytime: [], //鏃ユ湡
- applydaytime: [], //璁$畻鏃ユ湡
- time1: "", //涓婂崍鏃堕棿娈�
- time2: "", //涓嬪崍鏃堕棿娈�
- time3: "", //鏅氫笂鏃堕棿娈�
- time4: "", //鏅氫笂鏃堕棿娈�
+ daytime: [],
+ applydaytime: [],
+ time1: "",
+ time2: "",
+ time3: "",
+ time4: "",
topqueryParams: {
- pageNum: 1, //
+ pageNum: 1,
pageSize: 10,
},
checkList: [],
@@ -1045,33 +1435,29 @@
format3: "",
},
deliverytopqueryParams: {
- pageNum: 1, //
+ pageNum: 1,
pageSize: 10,
},
patientqueryParams: {
- pageNum: 1, //
+ pageNum: 1,
pageSize: 10,
- topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯
+ topica: 1,
leaveldeptcodes: [],
leavehospitaldistrictcodes: [],
},
topicoptions: [{ children: [{ children: [] }] }],
- showSearch: true, //
- total: 0, //
- sontotal: 0, //
- patienttotal: 0, //
- // 閫変腑鏁扮粍
+ showSearch: true,
+ total: 0,
+ sontotal: 0,
+ patienttotal: 0,
ids: [],
- // 闈炲崟涓鐢�
single: true,
- // 闈炲涓鐢�
multiple: true,
- // 鐢ㄦ埛琛ㄦ牸鏁版嵁
- userList: [], //妯℃澘鍒楄〃
- multiplechoice: [], //澶氶�夌粨鏋�
- patientuserList: [], //閫夋嫨鎮h�呭垪琛�
- sonuserList: [], //閫変腑鎮h�呭垪琛�
- delvariableList: [], //鍒犻櫎鍙橀噺涓存椂瀛樺偍
+ userList: [],
+ multiplechoice: [],
+ patientuserList: [],
+ sonuserList: [],
+ delvariableList: [],
longtype: [
{ value: 0, label: "鑷畾涔夊懆鏈�" },
{ value: 1, label: "闀挎湡浠诲姟" },
@@ -1095,7 +1481,7 @@
fill: "娲惧彂鏃惰嚜鍔ㄥ尮閰�",
default: true,
},
- ], //鍙橀噺鍒楄〃
+ ],
transitionList: [
{
name: "濮撳悕",
@@ -1117,7 +1503,7 @@
},
],
variableListTime: [],
- tasktopic: null, //鏂板绫诲瀷
+ tasktopic: null,
SelectPatientslist: [],
form: {
patTaskRelevances: [],
@@ -1131,55 +1517,45 @@
localStorage.getItem("orgname") +
"鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝杩涜鏈鍥炶鏈嶅姟銆�",
jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
+ // 浠诲姟缁勪富瀵硅薄
+ serviceTaskScheduleVO: {
+ scheduleStyle: 0,
+ scheduleTimeNum: null,
+ scheduleTimeUnit: null,
+ maxLoopCount: 0,
+ currentLoopCount: 0,
+ currentSeq: 0,
+ nextSeq: 0,
+ nextExecuteTime: "",
+ scheduleBenchmark: 0,
+ scheduleBenchmarkCustomTime: "",
+ detailList: [],
+ },
},
taskoptions: [
- {
- value: "1",
- label: "鍑洪櫌鐥呬汉",
- },
- {
- value: "4",
- label: "鍦ㄩ櫌鐥呬汉",
- },
- {
- value: "2",
- label: "闂ㄨ瘖鐥呬汉",
- },
- {
- value: "3",
- label: "浣撴鐥呬汉",
- },
- {
- value: "5",
- label: "鎵嬫湳鐥呬汉",
- },
+ { value: "4", label: "鍑洪櫌鐥呬汉" },
+ { value: "1", label: "鍦ㄩ櫌鐥呬汉" },
+ { value: "2", label: "闂ㄨ瘖鐥呬汉" },
+ { value: "3", label: "浣撴鐥呬汉" },
+ { value: "5", label: "鎵嬫湳鐥呬汉" },
],
source: [
- {
- value: 0,
- label: "鎵�灞炴偅鑰�",
- },
- {
- value: 1,
- label: "绉戝鎮h��",
- },
- {
- value: 2,
- label: "鐥呭尯鎮h��",
- },
+ { value: 0, label: "鎵�灞炴偅鑰�" },
+ { value: 1, label: "绉戝鎮h��" },
+ { value: 2, label: "鐥呭尯鎮h��" },
],
-
tasktypes: store.getters.tasktypes,
- // 绉戝/鐥呭尯
belongWards: [],
deptlist: [],
hosplist: [],
diagglist: [],
operlist: [],
- tempDetpRelevanceslist: [], //绉戝鏁版嵁
- tempDetpRelevanceslistform: [], //绉戝鏁版嵁
- tempbelongWards: [], //鐥呭尯鏁版嵁
- tempbelongWardsform: [], //鐥呭尯鏁版嵁
+ medicalCodes: [],
+ medicalOptions: [],
+ tempDetpRelevanceslist: [],
+ tempDetpRelevanceslistform: [],
+ tempbelongWards: [],
+ tempbelongWardsform: [],
rules: {
taskName: [
{ required: true, message: "浠诲姟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
@@ -1193,14 +1569,10 @@
sendType: [
{ required: true, message: "鍙戦�佽缃笉鑳戒负绌�", trigger: "blur" },
],
- // deptcode: [
- // { required: true, message: "閫傜敤绉戝涓嶈兘涓虹┖", trigger: "blur" },
- // ],
- // leavehospitaldistrictcode: [
- // { required: true, message: "閫傜敤鐥呭尯涓嶈兘涓虹┖", trigger: "blur" },
- // ],
+ longTask: [
+ { required: true, message: "璇烽�夋嫨鎵ц鍛ㄦ湡", trigger: "blur" },
+ ],
},
- // 绉戝闄㈠尯鏌ヨ鍏ュ弬
queryParamsdept: {
tempid: "",
type: 2,
@@ -1208,10 +1580,12 @@
belongDepts: [],
quote: false,
serviceType: null,
+ // 妯℃澘鎼滅储
+ templateOptions: [],
+ templateLoading: false,
};
},
components: { SFtable, OptionalForm, SortCheckbox },
-
created() {
this.appraiselist = store.getters.appraiselist;
this.belongWards = store.getters.belongWards;
@@ -1224,15 +1598,12 @@
this.form.typename = this.$route.query.typename;
this.serviceType = Number(this.$route.query.serviceType);
this.form.serviceType = Number(this.$route.query.serviceType);
- console.log(localStorage.getItem("orgid"), "orgid");
-
this.Acquisitiontype();
this.getillnesslist();
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;
@@ -1240,15 +1611,13 @@
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) {
@@ -1261,7 +1630,6 @@
}
return result;
},
- // 鏁扮粍杞璞�
convertFormat2ToFormat1(data) {
let result = {};
data.forEach((item) => {
@@ -1271,27 +1639,28 @@
});
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); // 灏嗘渶搴曞眰鐨勫厓绱犳坊鍔犲埌缁撴灉鏁扮粍
+ result.push(item);
}
}
-
- // 浠庨《灞傚厓绱犲紑濮嬮�掑綊
multiArray.forEach((element) => flatten(element));
- return result; // 杩斿洖鍙寘鍚渶搴曞眰鍏冪礌鐨勪竴缁存暟缁�
+ return result;
},
- // 鑾峰彇褰撳墠绫诲瀷
+ daysBetween(endDate) {
+ if (!endDate) return "";
+ const now = new Date();
+ const end = new Date(endDate);
+ const diff = Math.floor((now - end) / (1000 * 60 * 60 * 24));
+ return diff > 0 ? diff : 0;
+ },
+
+ // ---------- 鏁版嵁鍔犺浇 ----------
Acquisitiontype() {
let queryParams = {
pageNum: this.topqueryParams.pageNum,
@@ -1300,49 +1669,25 @@
};
this.currenttype = this.$route.query.type;
this.title = "闅忚鍐呭鍒楄〃";
- this.tableLabel = this.tableLabelwj;
+ this.tableLabel = this.tableLabelwj || [];
if (this.form.serviceType == 1) {
this.checkboxlist = [
- {
- value: "1",
- label: "浜哄伐",
- },
- {
- value: "2",
- label: "绾歌川",
- },
- {
- value: "4",
- label: "鐭俊",
- },
- {
- value: "5",
- label: "寰俊鍏紬鍙�",
- },
+ { value: "1", label: "浜哄伐" },
+ { value: "2", label: "绾歌川" },
+ { value: "4", label: "鐭俊" },
+ { value: "5", label: "寰俊鍏紬鍙�" },
];
- } else if (this.form.serviceType == 6) {
+ } else if (
+ this.form.serviceType == 6 ||
+ this.form.serviceType == 14 ||
+ this.form.serviceType == 15
+ ) {
this.checkboxlist = [
- {
- value: "3",
- label: "鏅鸿兘璇煶",
- },
- {
- value: "4",
- label: "鐭俊",
- },
- {
- value: "5",
- label: "寰俊鍏紬鍙�",
- },
- {
- value: "6",
- label: "寰俊灏忕▼搴�",
- },
-
- // {
- // value: "8",
- // label: "鏅鸿兘鏈哄櫒浜�",
- // },
+ { value: "1", label: "浜哄伐" },
+ { value: "3", label: "鏅鸿兘璇煶" },
+ { value: "4", label: "鐭俊" },
+ { value: "5", label: "寰俊鍏紬鍙�" },
+ { value: "6", label: "寰俊灏忕▼搴�" },
];
} else if (
this.form.serviceType == 7 ||
@@ -1354,67 +1699,28 @@
this.form.serviceType == 10
) {
this.checkboxlist = [
- {
- value: "1",
- label: "浜哄伐",
- },
- {
- value: "2",
- label: "绾歌川",
- },
- {
- value: "3",
- label: "鏅鸿兘璇煶",
- },
- {
- value: "4",
- label: "鐭俊",
- },
- {
- value: "5",
- label: "寰俊鍏紬鍙�",
- },
- {
- value: "6",
- label: "寰俊灏忕▼搴�",
- },
- {
- value: "7",
- label: "鏈悗闅忚",
- },
+ { value: "1", label: "浜哄伐" },
+ { value: "2", label: "绾歌川" },
+ { value: "3", label: "鏅鸿兘璇煶" },
+ { value: "4", label: "鐭俊" },
+ { value: "5", label: "寰俊鍏紬鍙�" },
+ { value: "6", label: "寰俊灏忕▼搴�" },
+ { value: "7", label: "鏈悗闅忚" },
];
} else if (
this.form.serviceType == 2 ||
+ this.form.serviceType == 18 ||
+ this.form.serviceType == 19 ||
this.form.serviceType == 3 ||
this.form.serviceType == 16 ||
this.form.serviceType == 4
) {
this.checkboxlist = [
- {
- value: "1",
- label: "浜哄伐",
- },
- {
- value: "3",
- label: "鏅鸿兘璇煶",
- },
- {
- value: "4",
- label: "鐭俊",
- },
- {
- value: "5",
- label: "寰俊鍏紬鍙�",
- },
- {
- value: "6",
- label: "寰俊灏忕▼搴�",
- },
-
- // {
- // value: "8",
- // label: "鏅鸿兘鏈哄櫒浜�",
- // },
+ { value: "1", label: "浜哄伐" },
+ { value: "3", label: "鏅鸿兘璇煶" },
+ { value: "4", label: "鐭俊" },
+ { value: "5", label: "寰俊鍏紬鍙�" },
+ { value: "6", label: "寰俊灏忕▼搴�" },
];
}
getFollowuplist(this.topqueryParams).then((response) => {
@@ -1422,172 +1728,17 @@
this.total = response.total;
});
},
- nextstep() {
- this.$refs["form"].validate((valid) => {
- if (valid) {
- if (this.Editprogress <= 3) {
- return this.Editprogress++;
- }
- } else {
- this.$modal.msgError("琛ㄥ崟鍐呭鏈畬鍠勶紝璇锋鏌�");
- }
+ getFollowupclassify() {
+ getFollowupclassify({}).then((res) => {
+ this.optionsclass = res.rows;
});
},
- // 淇濆瓨
- 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.form.appltype == 1) {
- this.leavehospitaldistrictcodes = [];
- this.operationcodes = [];
- this.illnesscodes = [];
- } else if (this.form.appltype == 2) {
- this.deptcodesWards = [];
- this.operationcodes = [];
- this.illnesscodes = [];
- } else if (this.form.appltype == 3) {
- this.deptcodesWards = [];
- this.leavehospitaldistrictcodes = [];
- this.operationcodes = [];
- } else if (this.form.appltype == 4) {
- this.deptcodesWards = [];
- this.illnesscodes = [];
- this.leavehospitaldistrictcodes = [];
- }
- if (this.checkList) {
- this.form.preachform = this.checkList.join(",");
- this.form.preachformList = this.selectedOrder;
- } else {
- this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷");
- return;
- }
-
- if (
- this.deptcodesWards[0] ||
- this.leavehospitaldistrictcodes[0] ||
- this.diagglist[0] ||
- this.operationcodes[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(",");
- this.form.opcode = this.operationcodes.join(",");
- this.form.icd10code = this.diagglist
- .map((item) => item.icdcode)
- .join(",");
- Editsingletask(this.form).then((res) => {
- if (res.code == 200) {
- if (this.form.taskid) {
- 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) {
- }
- },
- // 棰勮
- 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 {
- }
- });
- }
+ getillnesslist() {
+ getillnesslist({
+ pageNum: 1,
+ pageSize: 1000,
+ }).then((res) => {
+ this.donorchargeList = res.rows;
});
},
getillness(id) {
@@ -1600,35 +1751,466 @@
});
}
},
- // 澶勭悊闂灞傚彉閲�
+ Getdetails() {
+ this.form = {
+ patTaskRelevances: [],
+ sendType: 1,
+ sendDay: 5,
+ templatename: "",
+ templateid: null,
+ libtemplateid: null,
+ kcb:
+ "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄�" +
+ localStorage.getItem("orgname") +
+ "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝杩涜鏈鍥炶鏈嶅姟銆�",
+ jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
+ serviceTaskScheduleVO: {
+ scheduleStyle: 0,
+ scheduleTimeNum: null,
+ scheduleTimeUnit: null,
+ maxLoopCount: 0,
+ currentLoopCount: 0,
+ currentSeq: 0,
+ nextSeq: 0,
+ nextExecuteTime: "",
+ scheduleBenchmark: 0,
+ scheduleBenchmarkCustomTime: "",
+ detailList: [],
+ },
+ };
+ this.questionList = [];
+ if (this.id) {
+ getTaskInfo({ taskid: this.id }).then((res) => {
+ if (res.code == 200) {
+ this.form = res.data;
+ // 濡傛灉杩斿洖浜� serviceTaskScheduleVO锛屽垯瑙f瀽鏄庣粏涓殑 content
+ if (
+ this.form.serviceTaskScheduleVO &&
+ this.form.serviceTaskScheduleVO.detailList
+ ) {
+ this.form.serviceTaskScheduleVO.detailList.forEach((item) => {
+ if (item.content) {
+ try {
+ const contentObj = JSON.parse(item.content);
+ item.kcb = contentObj.kcb || "";
+ item.jsy = contentObj.jsy || "";
+ item.textParam = contentObj.text_param || {};
+ } catch (e) {
+ item.kcb = "";
+ item.jsy = "";
+ item.textParam = {};
+ }
+ } else {
+ item.kcb = "";
+ item.jsy = "";
+ item.textParam = {};
+ }
+ });
+ } else {
+ // 鑻ュ悗鍙版湭杩斿洖锛屽垯鍒濆鍖栦负绌哄璞�
+ this.form.serviceTaskScheduleVO = {
+ scheduleStyle: 0,
+ scheduleTimeNum: null,
+ scheduleTimeUnit: null,
+ maxLoopCount: 0,
+ currentLoopCount: 0,
+ currentSeq: 0,
+ nextSeq: 0,
+ nextExecuteTime: "",
+ scheduleBenchmark: 0,
+ scheduleBenchmarkCustomTime: "",
+ detailList: [],
+ };
+ }
+ // 鍘熸湁鍥炴樉
+ this.diseaseDept = {
+ deptCode: this.form.deptcode,
+ deptName: this.form.deptname,
+ };
+ this.diseaseWard = {
+ districtCode: this.form.leavehospitaldistrictcode,
+ districtName: this.form.leavehospitaldistrictname,
+ };
+ this.form.serviceType = this.serviceType;
+ this.form.patTaskRelevances = this.form.patTaskRelevances
+ ? this.form.patTaskRelevances
+ : [];
+ // 鑽搧鍏宠仈鍥炴樉
+ if (this.form.medicalCode) {
+ this.medicalCodes = this.form.medicalCode.split(",").filter(Boolean);
+ listMedication({ itemCode: this.form.medicalCode, pageNum: 1, pageSize: 200 }).then((res) => {
+ this.medicalOptions = res.rows || [];
+ });
+ }
+ this.overallCase = this.form.patTaskRelevances.concat();
+ this.checkList = this.form.preachform
+ ? this.form.preachform.split(",")
+ : [];
+ this.selectedOrder = this.form.preachformList || [];
+ 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(",");
+ let 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 = null;
+ this.form.taskid = null;
+ this.overallCase = [];
+ this.form.patTaskRelevances = [];
+ this.daytime = [];
+ this.applydaytime = [];
+ this.time1 = "";
+ this.time2 = "";
+ this.time3 = "";
+ this.time4 = "";
+ // 閲嶇疆浠诲姟缁�
+ this.form.serviceTaskScheduleVO = {
+ scheduleStyle: 0,
+ scheduleTimeNum: null,
+ scheduleTimeUnit: null,
+ maxLoopCount: 0,
+ currentLoopCount: 0,
+ currentSeq: 0,
+ nextSeq: 0,
+ nextExecuteTime: "",
+ scheduleBenchmark: 0,
+ scheduleBenchmarkCustomTime: "",
+ detailList: [],
+ };
+ },
+
+ // ---------- 浠诲姟缁勬槑缁嗘搷浣� ----------
+ addDetail() {
+ const detailList = this.form.serviceTaskScheduleVO.detailList;
+ const seq = detailList.length + 1;
+ detailList.push({
+ seq: seq,
+ dayOffset: 0,
+ templateid: null,
+ libtemplateid: null,
+ templatename: "",
+ content: "",
+ kcb: "",
+ jsy: "",
+ textParam: {},
+ });
+ },
+ removeDetail(index) {
+ this.form.serviceTaskScheduleVO.detailList.splice(index, 1);
+ // 閲嶆柊璋冩暣搴忓彿
+ this.form.serviceTaskScheduleVO.detailList.forEach((item, idx) => {
+ item.seq = idx + 1;
+ });
+ },
+ handleTemplateSelect(index, row) {
+ // 浠� templateOptions 涓煡鎵鹃�変腑椤�
+ const selected = this.templateOptions.find(
+ (item) => item.id === row.templateid
+ );
+ if (selected) {
+ row.templatename = selected.templateName;
+ row.libtemplateid = selected.libtemplateid || selected.id; // 鍋囪鏈� libtemplateid
+ } else {
+ row.templatename = "";
+ row.libtemplateid = null;
+ }
+ },
+ remoteTemplate(query) {
+ if (query !== "") {
+ this.templateLoading = true;
+ getFollowuplist({ templateName: query, pageNum: 1, pageSize: 20 })
+ .then((res) => {
+ this.templateOptions = res.rows;
+ this.templateLoading = false;
+ })
+ .catch(() => {
+ this.templateLoading = false;
+ });
+ } else {
+ this.templateOptions = [];
+ }
+ },
+
+ // ---------- 鍒楄〃涓庢悳绱� ----------
+ handleQuerymb() {
+ getFollowuplist(this.topqueryParams).then((response) => {
+ this.userList = response.rows;
+ this.total = response.total;
+ });
+ },
+ resetQuerymb() {
+ this.topqueryParams = { pageNum: 1, pageSize: 10 };
+ this.handleQuerymb();
+ },
+ getList() {
+ // 鍗犱綅
+ },
+
+ // ---------- 妯℃澘鐩稿叧 ----------
+ 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;
+ this.queryParamsdept.type = 2;
+ this.queryParamsdept.tempid = row.id;
+ this.tempDetpRelevanceslist = [];
+ this.tempbelongWards = [];
+ this.objyl.suitway = 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;
+ }
+ },
+ 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);
+ selectInfoByCondition({ id: this.form.templateid }).then((res) => {
+ if (res.code == 200) {
+ this.previewtf = true;
+ this.previewtftype = 1;
+ this.questionList = res.data.ivrTaskTemplateScriptVOList;
+ this.questionList.forEach((item) => {
+ item.qremark = [];
+ item.ivrLibaScriptTargetoptionList =
+ item.ivrTaskScriptTargetoptionList;
+ });
+ this.objyl.ivrLibaScriptTargetoptionList =
+ res.data.ivrTaskScriptTargetoptionList;
+ }
+ });
+ }
+ });
+ },
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,
- });
- }
- });
+ if (res.otherdata) {
+ 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);
}
},
- // 瀛愪换鍔′簩绾у脊妗�
+ variableDelete(index, row) {
+ this.variableList.splice(index, 1);
+ row.isoperation = 3;
+ this.delvariableList.push(row);
+ },
+
+ // ---------- 鍏宠仈閫夋嫨 ----------
+ handleDiseaseDeptChange(dept) {
+ this.diseaseDept = dept;
+ },
+ handleDiseaseWardChange(ward) {
+ this.diseaseWard = ward;
+ },
+
+ // ---------- 绉戝/鐥呭尯/鐤剧梾/鎵嬫湳 鎿嶄綔 ----------
+ listDept() {
+ this.leavehospitaldistrictcodes = [];
+ this.deptcodesWards = [];
+ this.queryParamsdept.taskId = this.form.taskid;
+
+ if (this.form.appltype == 5) {
+ // 浠诲姟缁勶細浣跨敤 rwz 鍓嶇紑鐨勪笓灞炴帴鍙�
+ rwztaskdepthospgetsonlist(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);
+ }
+ });
+ }
+ });
+ rwztaskdiaggetlist(this.queryParamsdept).then((res) => {
+ if (res.code == 200) {
+ let arr = res.rows;
+ arr.forEach((item) => {
+ if (localStorage.getItem("orgname") == "鍗楀崕澶у闄勫睘绗竴鍖婚櫌") {
+ item.icdname = item.icd10name;
+ this.diagglist.push(item);
+ } else {
+ this.diagglist.push(item);
+ }
+ this.illnesscodes.push(item.icd10code);
+ });
+ }
+ });
+ } else {
+ // 鏅�氱被鍨�
+ taskdepthospgetsonlist(this.queryParamsdept).then((res) => {
+ if (res.code == 200) {
+ let arr = res.rows;
+ arr.forEach((item) => {
+ if (item.deptType == 1) {
+ this.deptlist.push(item);
+ this.deptcodesWards.push(item.deptCode);
+ } else if (item.deptType == 2) {
+ this.hosplist.push(item);
+ this.leavehospitaldistrictcodes.push(item.deptCode);
+ }
+ });
+ }
+ });
+ taskdiaggetlist(this.queryParamsdept).then((res) => {
+ if (res.code == 200) {
+ let arr = res.rows;
+ arr.forEach((item) => {
+ if (localStorage.getItem("orgname") == "鍗楀崕澶у闄勫睘绗竴鍖婚櫌") {
+ item.icdname = item.icd10name;
+ this.diagglist.push(item);
+ } else {
+ getillnesslist({ icdname: item.icd10name }).then((res) => {
+ item.icdname = res.rows[0].icdname;
+ this.diagglist.push(item);
+ });
+ }
+ this.illnesscodes.push(item.icd10code);
+ });
+ }
+ });
+ }
+ taskopergetlist(this.queryParamsdept).then((res) => {
+ if (res.code == 200) {
+ let arr = res.rows;
+ arr.forEach((item) => {
+ this.operlist.push(item);
+ this.operationcodes.push(item.opcode);
+ });
+ }
+ });
+ },
+ removetag(row) {
+ let result = this.deptlist
+ .filter((item) => item.deptCode == row)
+ .map((item) => item.id);
+ if (result.length) {
+ taskdepthospgetsondel(result).then((res) => {
+ if (res.code) this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ });
+ }
+ },
+ removehpsp(row) {
+ let result = this.hosplist
+ .filter((item) => item.deptCode == row)
+ .map((item) => item.id);
+ if (result.length) {
+ taskdepthospgetsondel(result).then((res) => {
+ if (res.code) this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ });
+ }
+ },
+ removeopera(row) {
+ let result = this.operlist
+ .filter((item) => item.opcode == row)
+ .map((item) => item.id);
+ if (result.length) {
+ taskoperhospgetsondel(result).then((res) => {
+ if (res.code) this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ });
+ }
+ },
+ removediagg(row) {
+ // 浠诲姟缁勶細鏈湴鍒犻櫎鍗冲彲锛屽悗绔繚瀛樻椂缁熶竴鏇存柊
+ if (this.form.appltype == 5) {
+ this.diagglist = this.diagglist.filter((item) => item.icd10code != row);
+ return;
+ }
+ // 鏅�氱柧鐥呭叧鑱旓細璋冨悗绔帴鍙i�愭潯鍒犻櫎
+ let result = this.diagglist
+ .filter((item) => item.icd10code == row)
+ .map((item) => item.id);
+ if (result.length) {
+ taskdiaghospgetsondel(result).then((res) => {
+ if (res.code) {
+ this.diagglist = this.diagglist.filter(
+ (item) => item.icd10code != row
+ );
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }
+ });
+ }
+ },
+ remoteopcode(name) {
+ // 鍗犱綅
+ },
+ remoteSearchMedical(query) {
+ if (!query) { this.medicalOptions = []; return; }
+ listMedication({ itemName: query, pageNum: 1, pageSize: 20 }).then((res) => {
+ this.medicalOptions = res.rows || [];
+ });
+ },
+ removeMedical(code) {
+ this.medicalCodes = this.medicalCodes.filter((c) => c !== code);
+ },
+
+ // ---------- 鎮h�呴�夋嫨 ----------
handleAddpatient(row) {
this.allpids = [];
this.overallCase.forEach((item) => {
@@ -1636,13 +2218,13 @@
});
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: "鐢佃瘽", width: "180", prop: "telcode" },
{ label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
{ label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
{ label: "鍖荤敓", width: "", prop: "drname" },
@@ -1657,6 +2239,7 @@
{ label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
{ label: "鎬у埆", width: "", prop: "sex" },
{ label: "骞撮緞", width: "", prop: "age" },
+ { label: "鐢佃瘽", width: "180", prop: "telcode" },
{ label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
{ label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
{ label: "鍖荤敓", width: "", prop: "drname" },
@@ -1671,6 +2254,7 @@
{ label: "鐢佃瘽鍙风爜", width: "180", prop: "telcode" },
{ label: "鎬у埆", width: "", prop: "sex" },
{ label: "骞撮緞", width: "", prop: "age" },
+ { label: "鐢佃瘽", width: "180", prop: "telcode" },
{ label: "鍑洪櫌澶╂暟", width: "", prop: "endDay" },
{ label: "璐d换鎶ゅ+", width: "", prop: "nurseName" },
{ label: "鍖荤敓", width: "", prop: "drname" },
@@ -1683,15 +2267,9 @@
} 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
@@ -1716,20 +2294,13 @@
}
});
this.patienttotal = response.total;
- this.loading = false;
this.Restorecheck();
});
this.dialogVisiblepatient = true;
},
- handleUpdate() {},
- handleDelete() {},
- handleExport() {},
- // 閫夋嫨鎮h�呰〃鏁版嵁
handleSelectionChange(selection) {
this.SelectPatientslist = structuredClone(selection);
this.multiple = !selection.length;
-
- // 璧嬪�肩粰鏁翠綋閫変腑鏁扮粍
this.SelectPatientslist.forEach((item) => {
const isExist = this.overallCase.find((obj) => obj.name == item.name);
if (!isExist) {
@@ -1740,47 +2311,37 @@
item.deptCode = item.deptcode;
item.deptName = item.dept;
item.admindate = item.inhosptime;
- item.sfzh = item.idcardno;
- if (this.patientqueryParams.allhosp == 6) {
- item.patfrom = 1;
- }
- if (this.patientqueryParams.allhosp == 1) {
+ if (this.patientqueryParams.allhosp == 6) item.patfrom = 1;
+ if (this.patientqueryParams.allhosp == 1)
item.visittime = item.endtime;
- } else if (this.patientqueryParams.allhosp == 4) {
+ else if (this.patientqueryParams.allhosp == 4)
item.visittime = item.starttime;
- } else if (this.patientqueryParams.allhosp == 2) {
+ else if (this.patientqueryParams.allhosp == 2)
item.visittime = item.admitdate;
- }
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鍜屽綋鍓嶉〉闈㈢殑鍚屾鎬�
+ const overlap = this.patientuserList.filter((value) =>
+ allid.includes(value.patid)
+ );
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 + '"鐨勬湇鍔¢」锛�')
@@ -1796,7 +2357,6 @@
this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
});
},
- getList() {},
handleQuery() {
if (this.patientqueryParams.topica == 0) {
this.patientqueryParams.leavehospitaldistrictcodes =
@@ -1822,267 +2382,50 @@
this.patientqueryParams.leaveldeptcodes = null;
this.handleAddpatient();
},
- resetQuerymb() {
- this.topqueryParams = { svyname: "" };
- this.handleQuerymb();
- },
resetQuery() {
this.patientqueryParams = {
- pageNum: 1, //
+ pageNum: 1,
pageSize: 10,
- topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯
+ topica: 1,
leaveldeptcodes: [],
leavehospitaldistrictcodes: [],
};
this.handleQuery();
},
- handleQuerymb() {
- getFollowuplist(this.topqueryParams).then((response) => {
- this.userList = response.rows;
- this.total = response.total;
- });
- },
handleClosehz() {
this.dialogVisiblepatient = false;
},
- // 涓婁竴姝�
+ AddDispatchpatients() {
+ this.dialogVisiblepatient = false;
+ },
+ handleUpdate() {},
+ handleDelete() {},
+ handleExport() {},
+
+ // ---------- 姝ラ瀵艰埅 ----------
+ nextstep() {
+ this.$refs["form"].validate((valid) => {
+ if (valid) {
+ if (this.Editprogress <= 3) this.Editprogress++;
+ } else {
+ this.$modal.msgError("琛ㄥ崟鍐呭鏈畬鍠勶紝璇锋鏌�");
+ }
+ });
+ },
laststep() {
this.Editprogress--;
},
- // 鎻愪氦琛ㄥ崟
resetForm(formName) {
this.$refs[formName].resetFields();
},
- // 棰勮妯℃澘
- PreviewTemplate() {},
- Acknowledgereference() {
- this.quote = true;
- },
- // 鑾峰彇璇︽儏
- Getdetails() {
- this.form = {
- patTaskRelevances: [],
- sendType: 1,
- sendDay: 5,
- templatename: "",
- templateid: null,
- libtemplateid: null,
- kcb:
- "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄�" +
- localStorage.getItem("orgname") +
- "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝杩涜鏈鍥炶鏈嶅姟銆�",
- 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.split(",");
- this.selectedOrder = this.form.preachformList;
-
- 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 = null;
- 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);
- }
- });
- }
- });
- taskdiaggetlist(this.queryParamsdept).then((res) => {
- if (res.code == 200) {
- let arr = res.rows;
- arr.forEach((item) => {
- getillnesslist({
- icdcode: item.icd10code,
- }).then((res) => {
- item.icdname = res.rows[0].icdname;
- this.diagglist.push(item);
- });
- this.illnesscodes.push(item.icd10code);
- });
- }
- });
- taskopergetlist(this.queryParamsdept).then((res) => {
- if (res.code == 200) {
- let arr = res.rows;
- arr.forEach((item) => {
- this.operlist.push(item);
- this.operationcodes.push(item.opcode);
- });
- }
- });
- },
- getillnesslist() {
- getillnesslist({
- pageNum: 1,
- pageSize: 1000,
- }).then((row) => {
- this.donorchargeList = res.rows;
- });
- getbaseopera({
- pageNum: 1,
- pageSize: 1000,
- }).then((row) => {
- this.baseoperaList = res.rows;
- });
- },
- // 鎵嬫湳鏌ヨ
- remoteopcode(name) {
- if (name) {
- getbaseopera({
- pageNum: 1,
- pageSize: 1000,
- opdesc: name,
- }).then((res) => {
- this.baseoperaList = res.rows;
- });
- }
+ // ---------- 鏈嶅姟褰㈠紡鎺掑簭 ----------
+ checkSelectionChange(selectedValues, selectedOrder) {
+ this.selectedOrder = selectedValues || [];
},
- // 浠诲姟绉戝鍒犻櫎瑙﹀彂
- removetag(row) {
- let result = this.deptlist
- .filter((item) => item.deptCode == row)
- .map((item) => item.id);
-
- if (result.length) {
- taskdepthospgetsondel(result).then((res) => {
- if (res.code) {
- this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- }
- });
- }
- },
- // 闄㈠尯鍒犻櫎鍒犻櫎瑙﹀彂
- removehpsp(row) {
- let result = this.hosplist
- .filter((item) => item.deptCode == row)
- .map((item) => item.id);
- if (result.length) {
- taskdepthospgetsondel(result).then((res) => {
- if (res.code) {
- this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- }
- });
- }
- },
- // 鎵嬫湳鍒犻櫎瑙﹀彂
- removeopera(row) {
- let result = this.operlist
- .filter((item) => item.opcode == row)
- .map((item) => item.id);
- if (result.length) {
- taskoperhospgetsondel(result).then((res) => {
- if (res.code) {
- this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- }
- });
- }
- },
- // 鐤剧梾鍒犻櫎瑙﹀彂
- removediagg(row) {
- let result = this.diagglist
- .filter((item) => item.icd10code == row)
- .map((item) => item.id);
- if (result.length) {
- taskdiaghospgetsondel(result).then((res) => {
- if (res.code) {
- this.diagglist = this.diagglist.filter(
- (item) => item.icd10code != row
- );
- this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- }
- });
- }
- },
- getFollowupclassify() {
- getFollowupclassify({}).then((res) => {
- this.optionsclass = res.rows;
- });
- },
- // 鏂板娲鹃�佹偅鑰�
- AddDispatchpatients() {
- // this.SelectPatientslist.forEach((item) => {
- // item.isoperation = 1;
- // });
- // this.form.patTaskRelevances.push(...this.SelectPatientslist);
- // this.overallCase.push(...this.SelectPatientslist);
- this.dialogVisiblepatient = false;
- },
-
- variableDelete(index, row) {
- this.variableList.splice(index, 1);
- row.isoperation = 3;
- this.delvariableList.push(row);
- },
- // 鏃堕棿----------
- changeTime(row) {
+ // ---------- 鏃堕棿澶勭悊 ----------
+ changeTime() {
this.processingTime();
},
Totaldate(row) {
@@ -2098,27 +2441,19 @@
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;
- }
+ if (this.time3 && this.time3[0]) serialnumber = 3;
+ else if (this.time2 && this.time2[0]) serialnumber = 2;
+ else if (this.time1 && this.time1[0]) serialnumber = 1;
+ else return;
for (let i = 0; i < this.applydaytime.length; i++) {
combinedData.push({
@@ -2142,15 +2477,13 @@
}
}
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(",");
@@ -2164,23 +2497,20 @@
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.libtemplatename = this.objyl.templateName;
this.form.templateid = response.data;
this.putbelongDepts(response.data);
this.form.templatename = this.objyl.templateName;
this.$modal.msgSuccess("鏇挎崲妯℃澘鎴愬姛");
- this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
- this.previewtf = false; //棰勮
+ this.drawermb = false;
+ this.previewtf = false;
if (this.skip) {
- // 璺宠浆鍓嶅線淇敼
this.$router.push({
path: "/knowledge/taskub/",
query: { id: response.data },
@@ -2193,14 +2523,14 @@
Taskparticty(this.objyl).then((response) => {
this.previewtf = false;
this.form.libtemplateid = this.objyl.id;
+ this.form.libtemplatename = this.objyl.templateName;
this.form.templateid = response.data;
this.putbelongDepts(response.data);
this.form.templatename = this.objyl.templateName;
this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛");
- this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
- this.previewtf = false; //棰勮
+ this.drawermb = false;
+ this.previewtf = false;
if (this.skip) {
- // 璺宠浆鍓嶅線淇敼
this.$router.push({
path: "/knowledge/taskub/",
query: { id: response.data },
@@ -2209,7 +2539,6 @@
});
}
},
- // 淇濆瓨绉戝/鐥呭尯
putbelongDepts(id) {
this.tempDetpRelevanceslistform.forEach((item) => {
item.tempid = id;
@@ -2230,28 +2559,6 @@
}
});
},
- checkSelectionChange(selectedValues, selectedOrder) {
- this.selectedOrder = selectedValues;
- console.log("褰撳墠閫変腑:", selectedValues);
- console.log("閫変腑椤哄簭:", selectedOrder);
- },
- // 鏈嶅姟褰㈠紡閫夊彇
- 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;
@@ -2268,7 +2575,8 @@
if (Array.isArray(this.objyl.suitway)) {
this.objyl.suitway = this.objyl.suitway.join(",");
}
- this.objyl.templateid = this.objyl.id;
+ this.objyl.libtemplateid = this.objyl.id;
+ this.form.libtemplateid = this.objyl.id;
this.objyl.isoperation = 1;
this.objyl.ivrLibaTemplateScriptVOList.forEach((item) => {
item.ivrTaskScriptTargetoptionList =
@@ -2292,12 +2600,11 @@
}, 1000);
}
},
- // 鍓嶅線淇敼
Modifytemplate() {
if (this.form.templateid && this.previewtftype) {
this.$modal.confirm("鏄惁鍓嶅線淇敼浠诲姟妯℃澘璇︾粏鍐呭锛�").then(() => {
- this.drawermb = false; //閫夋嫨妯℃澘寮圭獥
- this.previewtf = false; //棰勮
+ this.drawermb = false;
+ this.previewtf = false;
this.$router.push({
path: "/knowledge/taskub/",
query: { id: this.form.templateid },
@@ -2307,25 +2614,228 @@
this.$modal
.confirm("褰撳墠涓哄熀纭�棰勮鏄惁鍒涘缓浠诲姟妯℃澘骞跺墠寰�淇敼璇︽儏锛�")
.then(() => {
- // 璧板彇鍏堢粦瀹氬悗淇敼鎿嶄綔
this.Departmenttreatment();
this.skip = true;
});
}
},
+
+ // ---------- 鎻愪氦琛ㄥ崟 ----------
+ submitForm(type) {
+ if (this.submitLoading) return;
+ this.submitLoading = true;
+
+ try {
+ 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.form.appltype == 1) {
+ this.leavehospitaldistrictcodes = [];
+ this.operationcodes = [];
+ this.illnesscodes = [];
+ } else if (this.form.appltype == 2) {
+ this.deptcodesWards = [];
+ this.operationcodes = [];
+ this.illnesscodes = [];
+ } else if (this.form.appltype == 3) {
+ this.deptcodesWards = [];
+ this.leavehospitaldistrictcodes = [];
+ this.operationcodes = [];
+ } else if (this.form.appltype == 4) {
+ this.deptcodesWards = [];
+ this.illnesscodes = [];
+ this.leavehospitaldistrictcodes = [];
+ } else if (this.form.appltype == 6) {
+ this.deptcodesWards = [];
+ this.leavehospitaldistrictcodes = [];
+ this.illnesscodes = [];
+ this.operationcodes = [];
+ }
+
+ // 鏈嶅姟褰㈠紡鏍¢獙
+ if (this.checkList) {
+ this.form.preachform = this.checkList.join(",") || [];
+ this.form.preachformList = this.selectedOrder || [];
+ } else {
+ this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷");
+ this.submitLoading = false;
+ return;
+ }
+
+ // 浠诲姟鍏宠仈鏉′欢鏍¢獙锛堜换鍔$粍鍏佽鏃犲叧鑱旀潯浠讹級
+ const hasCondition =
+ this.deptcodesWards[0] ||
+ this.leavehospitaldistrictcodes[0] ||
+ this.diagglist[0] ||
+ this.operationcodes[0] ||
+ this.medicalCodes[0] ||
+ this.form.longTask == 2 ||
+ this.serviceType == 3 ||
+ this.form.appltype == 5; // 浠诲姟缁勮烦杩囧己鍒跺叧鑱�
+
+ if (!hasCondition) {
+ this.$modal.msgError("璇烽�夋嫨浠诲姟鍏宠仈鏉′欢");
+ this.submitLoading = false;
+ return;
+ }
+
+ // 浠诲姟缁勯�氳繃鏄庣粏鍒楄〃鍚勮嚜閫夋嫨妯℃澘锛屼富妯℃澘鍙负绌�
+ if (
+ !this.form.templatename &&
+ !this.templateor &&
+ this.form.appltype != 5
+ ) {
+ this.$modal.msgError("鏈�夋嫨妯℃澘");
+ this.submitLoading = false;
+ return;
+ }
+
+ const isValidTime =
+ (this.form.sendType == 1 && this.time1) ||
+ this.form.sendType == 2 ||
+ (this.form.sendType == 3 && this.time4) ||
+ this.form.longTask;
+ if (!isValidTime) {
+ this.submitLoading = false;
+ this.$modal.msgError("鏃堕棿淇℃伅缂哄け");
+ return;
+ }
+
+ // 澶勭悊鍙橀噺
+ const filteredArray = this.variableList.filter(
+ (item) =>
+ item.name !== "濮撳悕" && item.name !== "鐢佃瘽" && item.name !== "鍦板潃"
+ );
+ this.form.textParam = this.convertFormat2ToFormat1(filteredArray);
+
+ // 澶勭悊浠诲姟缁勬槑缁嗙殑 content
+ if (this.form.appltype == 5 && this.form.serviceTaskScheduleVO) {
+ this.form.serviceTaskScheduleVO.detailList.forEach((item) => {
+ // 缁勮 content
+ const contentObj = {
+ kcb: item.kcb || "",
+ jsy: item.jsy || "",
+ text_param: item.textParam || {},
+ };
+ item.content = JSON.stringify(contentObj);
+ // 鍒犻櫎涓存椂瀛楁锛岄伩鍏嶆彁浜ゅ浣欏瓧娈�
+ delete item.kcb;
+ delete item.jsy;
+ delete item.textParam;
+ });
+ // 灏嗕富瀵硅薄鏀惧叆 form 鎻愪氦
+ }
+ if (this.form.appltype == 5) {
+ console.log(this.form,'杩涘叆浠诲姟缁勯厤缃�');
+
+ this.form.serviceTaskScheduleVO.icd10codes = this.form.icd10code;
+ this.form.serviceTaskScheduleVO.wardCodes =
+ this.form.leavehospitaldistrictcode;
+ this.form.serviceTaskScheduleVO.deptCodes = this.form.deptcode;
+ }
+ if (this.form.taskid) {
+ this.form.isoperation = 2;
+ } else {
+ this.form.isoperation = 1;
+ }
+ if (!this.form.type) {
+ this.form.type = this.$route.query.type;
+ }
+
+ if (this.form.appltype == 1 || this.form.appltype == 2) {
+ this.form.deptcode = this.deptcodesWards.join(",");
+ this.form.leavehospitaldistrictcode =
+ this.leavehospitaldistrictcodes.join(",");
+ } else {
+ if (this.diseaseDept) {
+ this.form.deptcode = this.diseaseDept.deptCode;
+ this.form.deptname = this.diseaseDept.deptName;
+ }
+ if (this.diseaseWard) {
+ this.form.leavehospitaldistrictcode = this.diseaseWard.districtCode;
+ this.form.leavehospitaldistrictname = this.diseaseWard.districtName;
+ }
+ }
+ // 鑽搧鍏宠仈锛氱粍瑁呴�楀彿鍒嗛殧鐨勭紪鐮�/鍚嶇О/鍘傚
+ if (this.form.appltype == 6) {
+ const selectedMeds = this.medicalOptions.filter((m) =>
+ this.medicalCodes.includes(m.itemCode)
+ );
+ this.form.medicalCode = this.medicalCodes.join(",");
+ this.form.medicalName = selectedMeds.map((m) => m.itemName).join(",");
+ this.form.medicalCompany = selectedMeds.map((m) => m.manufacturerName).join(",");
+ }
+
+ this.form.serviceType = this.serviceType;
+
+ this.form.opcode = this.operationcodes.join(",");
+ this.form.icd10code = this.diagglist
+ .map((item) => item.icdcode)
+ .join(",");
+ this.form.icd10name = this.diagglist
+ .map((item) => item.icdname)
+ .join(",");
+ // 鐤剧梾/鎵嬫湳鍏宠仈鐨勭瀹�/鐥呭尯鏍¢獙
+ if (this.form.appltype == 3 || this.form.appltype == 4) {
+ const hasDept = this.diseaseDept?.deptCode;
+ const hasWard = this.diseaseWard?.districtCode;
+ if (!hasDept && !hasWard) {
+ this.$modal.msgError("褰撳墠鐤剧梾闇�鍏宠仈绉戝鎴栫梾鍖�");
+ this.submitLoading = false;
+ return;
+ }
+ this.form.deptcode = hasDept;
+ this.form.leavehospitaldistrictcode = hasWard;
+ }
+ Editsingletask(this.form)
+ .then((res) => {
+ if (res.code == 200) {
+ if (this.form.taskid) {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ } else {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ }
+ this.submitLoading = false;
+ this.$router.push({
+ path: "/followvisit/tasklist",
+ query: { tasktopic: this.form.serviceType },
+ });
+ } else {
+ this.$modal.msgError(res.msg || "鎿嶄綔澶辫触");
+ this.submitLoading = false;
+ }
+ })
+ .catch((error) => {
+ console.error("鎻愪氦澶辫触:", error);
+ this.$modal.msgError(error.message || "缃戠粶寮傚父锛岃绋嶅悗閲嶈瘯");
+ this.submitLoading = false;
+ });
+ } catch (error) {
+ console.error("琛ㄥ崟鎻愪氦寮傚父:", error);
+ this.$modal.msgError(error.message || "琛ㄥ崟鎻愪氦寮傚父");
+ this.submitLoading = false;
+ }
+ },
},
};
</script>
-
<style lang="scss" scoped>
-.Questionnairemanagement {
-}
.leftvlue-jbxx {
margin-top: 10px;
}
.sidecolumn {
width: 100%;
- // min-height: 12vh;
margin: 20px;
margin-bottom: 0;
padding: 30px;
@@ -2335,17 +2845,15 @@
0 0 6px 0 rgba(0, 0, 0, 0.04);
}
.leftvlue {
- // display: flex;
- // flex: 1;
width: 100%;
margin-top: 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);
}
+
.examine-jic {
margin: 20px;
.headline {
@@ -2355,7 +2863,6 @@
padding-left: 5px;
margin-bottom: 10px;
display: flex;
- // justify-content: space-between;
.Add-details {
font-size: 18px;
color: #02a7f0;
@@ -2390,10 +2897,10 @@
}
}
}
+
.xinz-infs {
font-size: 18px;
line-height: 48px;
-
.el-tag + .el-tag {
margin-left: 10px;
}
@@ -2401,12 +2908,8 @@
.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;
@@ -2415,6 +2918,7 @@
}
}
}
+
.jic-value {
font-size: 20px;
border-top: 1px solid #a7abac;
@@ -2442,6 +2946,7 @@
}
}
}
+
::v-deep .addtopic-input {
input {
background: #02a7f0;
@@ -2455,9 +2960,6 @@
::v-deep.el-row {
margin-bottom: 10px;
}
-// ::v-deep.el-input--medium {
-// font-size: 24px !important;
-// }
::v-deep.ruleFormaa.el-select {
display: inline-block;
position: relative;
@@ -2471,9 +2973,6 @@
width: 22px;
height: 22px;
}
-// ::v-deep.topic-dev.el-radio__label {
-// font-size: 24px;
-// }
::v-deep.el-radio-group {
span {
font-size: 18px;
--
Gitblit v1.9.3