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