From b5a56d53e44c426fa188ba3e4e1db3eb779e2fd9 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期三, 11 九月 2024 21:49:21 +0800 Subject: [PATCH] 测试完成 --- src/views/patient/propaganda/QuestionnaireTask.vue | 846 +++++++++++++++++++++++++++++++++----------------------- 1 files changed, 495 insertions(+), 351 deletions(-) diff --git a/src/views/patient/propaganda/QuestionnaireTask.vue b/src/views/patient/propaganda/QuestionnaireTask.vue index 189b1fe..3f8df23 100644 --- a/src/views/patient/propaganda/QuestionnaireTask.vue +++ b/src/views/patient/propaganda/QuestionnaireTask.vue @@ -7,14 +7,13 @@ <el-step icon="el-icon-edit" title="鍩虹淇℃伅" - description="閫夋嫨妯$増銆佸舰寮忕瓑鍩虹淇℃伅" + description="閫夋嫨妯℃澘銆佸舰寮忕瓑鍩虹淇℃伅" ></el-step> <el-step icon="el-icon-user" title="浠诲姟涓讳綋" description="鍦ㄦ湰閮ㄩ�夋嫨鏈嶅姟鎮h��" ></el-step> - <el-step icon="el-icon-user" title="妯$増纭"></el-step> </el-steps> </div> </div> @@ -22,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"> <!-- 鍩虹淇℃伅 --> @@ -31,50 +30,68 @@ <div>鍩虹淇℃伅</div> </div> <div class="jic-value"> - <el-form ref="form" :model="form" label-width="105px"> + <el-form + ref="form" + :model="form" + :rules="rules" + label-width="125px" + > <el-row :gutter="20"> <el-col :span="12" - ><el-form-item label="浠诲姟鍚嶇О"> + ><el-form-item label="浠诲姟鍚嶇О" prop="taskName"> <el-input style="width: 220px" v-model="form.taskName" placeholder="璇疯緭鍏ヤ换鍔″悕绉�" /> </el-form-item ></el-col> - <el-col :span="8" - ><el-form-item label="妯$増鍚嶇О"> - <el-input - style="width: 220px" - :disabled="true" - v-model="form.templatename" - placeholder="璇峰湪涓嬪垪閫夋嫨" - /> </el-form-item + <el-col :span="12" + ><el-form-item label="浠诲姟绫诲瀷"> + <el-select + v-model="serviceType" + placeholder="璇烽�夋嫨鏂板绫诲瀷" + > + <el-option + v-for="item in tasktypes" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> </el-form-item ></el-col> - <el-col :span="4"> - <el-button - type="primary" - icon="el-icon-edit" - @click="drawermb = true" - circle - ></el-button> - </el-col> </el-row> - <el-form-item label="浠诲姟鎻忚堪"> + <el-form-item label="浠诲姟鎻忚堪" prop="taskDesc"> <el-input type="textarea" v-model="form.taskDesc" placeholder="璇疯緭鍏ヤ换鍔℃弿杩�" /> </el-form-item> - <el-form-item label="鍙戦�佽缃細" v-if="currenttype != 2"> + <el-form-item label="鏈嶅姟褰㈠紡"> + <el-checkbox-group v-model="checkList"> + <el-checkbox + v-for="(item, index) in checkboxlist" + :key="index" + :label="item.value" + > + {{ item.label }}</el-checkbox + > + </el-checkbox-group> + </el-form-item> + <el-form-item label="鎵ц璁剧疆" prop="sendType"> <el-radio-group v-model="form.sendType"> - <el-radio :label="1">鏃堕棿娈靛彂閫�</el-radio> - <el-radio :label="3">鏃堕棿鐐瑰彂閫�</el-radio> - <el-radio :label="2">鍗冲埢鍙戦��</el-radio> + <el-radio :label="1">鏃堕棿娈垫墽琛�</el-radio> + <el-radio :label="3">鏃堕棿鐐规墽琛�</el-radio> + <el-radio :label="2">鍗冲埢鎵ц</el-radio> </el-radio-group> </el-form-item> - <el-form-item label="鍙戦�佹棩鏈燂細" v-if="form.sendType == 1"> + <el-form-item + label="鎵ц鏃ユ湡" + v-if="form.sendType == 1" + prop="daytime" + > <el-date-picker v-model="daytime" @change="changeTimeday" @@ -87,7 +104,11 @@ </el-date-picker> </el-form-item> - <el-form-item label="鍙戦�佹椂闂寸偣锛�" v-if="form.sendType == 3"> + <el-form-item + label="鎵ц鏃堕棿鐐�" + v-if="form.sendType == 3" + prop="daytime" + > <div style="display: flex"> <div style="margin-right: 10px"> <el-date-picker @@ -102,12 +123,14 @@ </div> </el-form-item> - <el-form-item label="鍙戦�佹椂闂存锛�" v-if="form.sendType == 1"> + <el-form-item + label="鎵ц鏃堕棿娈�" + v-if="form.sendType == 1" + prop="daytime" + > <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 @@ -122,9 +145,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 @@ -139,9 +160,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 @@ -157,24 +176,64 @@ </div> </div> </el-form-item> - <el-form-item label="鏈嶅姟褰㈠紡"> - <el-checkbox-group v-model="checkList"> - <el-checkbox - v-for="(item, index) in checkboxlist" - :key="index" - :label="item" - ></el-checkbox> - </el-checkbox-group> - </el-form-item> + <el-row> + <el-col :span="12" + ><el-form-item label="寮�鍦虹櫧" prop="kcb"> + <el-input + type="textarea" + :rows="3" + v-model="form.kcb" + placeholder="璇疯緭鍏ュ紑鍦虹櫧" + /> </el-form-item + ></el-col> + <el-col :span="12" + ><el-form-item label="缁撴潫璇�" prop="jsy"> + <el-input + type="textarea" + :rows="3" + v-model="form.jsy" + placeholder="璇疯緭鍏ョ粨鏉熻" + /> </el-form-item + ></el-col> + </el-row> </el-form> </div> </div> <div class="examine-jic"> <div class="headline"> - <div>鍙橀噺鍖归厤閲忓弬</div> + <div>浠诲姟浣跨敤妯℃澘</div> + <div style="margin-left: 20px"> + <el-form ref="forms"> + <el-form-item label=""> + <el-input + style="width: 300px" + :disabled="true" + v-model="form.templatename" + placeholder="璇风偣鍑诲彸渚ч�夋嫨" + /> + <el-button + type="primary" + icon="el-icon-edit" + @click="drawermb = true" + circle + ></el-button> + + <el-button + v-if="form.libtemplateid" + type="success" + icon="el-icon-search" + @click="previewfnmb" + circle + ></el-button> + </el-form-item> + </el-form> + </div> </div> + <div class="examine-jic"> <div class="jic-value"> + <div style="margin-bottom: 10px">妯℃澘涓娇鐢ㄧ殑鍙橀噺锛�</div> + <el-row :gutter="20"> <el-table :data="variableList" style="width: 100%"> <el-table-column @@ -220,7 +279,6 @@ }}</el-button> <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button> </div> - <!-- 浠诲姟璇︽儏 --> <div v-if="Editprogress == 2"> <el-alert title="鍦ㄦ湰闃舵閫夋嫨瀹f暀鐥呬汉" type="success" effect="dark"> @@ -233,88 +291,6 @@ <div class="examine-jic"> <div class="jic-value"> <el-row :gutter="20"> - <!--鐢ㄦ埛鏁版嵁--> - <!-- <el-form - :model="topqueryParams" - ref="queryForm" - size="small" - :inline="true" - v-show="showSearch" - label-width="98px" - > - <el-form-item label="鎮h�呭悕绉�"> - <el-input v-model="topqueryParams.name"></el-input> - </el-form-item> - - <el-form-item label="鎮h�呰寖鍥�" prop="status"> - <el-select - v-model="topqueryParams.topic" - placeholder="璇烽�夋嫨" - > - <el-option - v-for="item in taskoptions" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> - - <el-form-item label="鎮h�呯姸鎬�" prop="status"> - <el-select - v-model="topqueryParams.topic" - placeholder="璇烽�夋嫨" - > - <el-option - v-for="item in topicoptions" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> - <el-form-item label="闂嵎缁撴灉" prop="status"> - <el-select - v-model="topqueryParams.topic" - placeholder="璇烽�夋嫨" - > - <el-option - v-for="item in topicoptions" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> - <el-form-item label="鎮h�呯數璇�"> - <el-input v-model="topqueryParams.name"></el-input> - </el-form-item> - <el-form-item> - <el-button - type="primary" - icon="el-icon-search" - size="medium" - @click="handleQuery" - >鎼滅储</el-button - > - <el-button - icon="el-icon-refresh" - size="medium" - @click="resetQuery" - >閲嶇疆</el-button - > - <el-button - icon="el-icon-upload2" - size="medium" - type="warning" - >褰撳墠鎮h�呬竴閿彂閫�</el-button - > - </el-form-item> - </el-form> - <el-divider></el-divider> --> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-select @@ -330,6 +306,7 @@ </el-option> </el-select> </el-col> + <el-col :span="1.5"> <el-button type="primary" @@ -337,7 +314,7 @@ icon="el-icon-plus" size="medium" :disabled="!patientqueryParams.allhosp" - @click="handleAddpatient" + @click="handleQuery" >鏂板</el-button > </el-col> @@ -389,7 +366,7 @@ </div> <!-- 娣诲姞鎮h�� --> <el-dialog - title="娣诲姞娲惧彂鎮h��" + title="閫夋嫨鎮h��" :visible.sync="dialogVisiblepatient" width="70%" :before-close="handleClosehz" @@ -407,30 +384,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.topica" + 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 @@ -476,68 +447,68 @@ > </span> </el-dialog> - <el-dialog title="妯$増棰勮" :visible.sync="previewtf" width="60%"> + <el-dialog title="妯℃澘棰勮" :visible.sync="previewtf" width="60%"> <div class="preview-left"> - <!-- 鍗曢�� --> - <div - class="scriptTopic-dev" - v-for="item in questionList" - :key="item.sort" - v-if="item.scriptType == 1" - > - <div class="dev-text"> - {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span> + <div v-for="item in questionList"> + <!-- 鍗曢�� --> + <div + class="scriptTopic-dev" + :key="item.sort" + v-if="item.scriptType == 1" + > + <div class="dev-text"> + {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span> + </div> + <div class="dev-xx"> + <el-radio-group v-model="item.remark"> + <el-radio + v-for="(items, index) in item.svyLibTemplateTargetoptions" + :key="index" + :label="index" + >{{ items.optioncontent }}</el-radio + > + </el-radio-group> + </div> </div> - <div class="dev-xx"> - <el-radio-group v-model="item.remark"> - <el-radio - v-for="(items, index) in item.svyLibTemplateTargetoptions" - :key="index" - :label="index" - >{{ items.optioncontent }}</el-radio - > - </el-radio-group> + <!-- 澶氶�� --> + <div + class="scriptTopic-dev" + :key="item.sort" + v-if="item.scriptType == 2" + > + <div class="dev-text"> + {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span> + </div> + <div class="dev-xx"> + <el-checkbox-group v-model="qremark"> + <el-checkbox + v-for="(items, index) in item.svyLibTemplateTargetoptions" + :key="index" + :label="index" + > + {{ items.optioncontent }} + </el-checkbox> + </el-checkbox-group> + </div> </div> - </div> - <!-- 澶氶�� --> - <div - class="scriptTopic-dev" - v-for="item in questionList" - v-if="item.scriptType == 2" - > - <div class="dev-text"> - {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span> - </div> - <div class="dev-xx"> - <el-checkbox-group v-model="multiplechoice"> - <el-checkbox - v-for="items in item.svyLibTemplateTargetoptions" - :key="items.optioncontent" - :label="items.optioncontent" - > - {{ items.optioncontent }} - </el-checkbox> - </el-checkbox-group> - </div> - </div> - <!-- 濉┖ --> - <div - class="scriptTopic-dev" - v-for="item in questionList" - :key="item.sort" - v-if="item.scriptType == 3" - > - <div class="dev-text"> - {{ item.sort }}銆乕濉┖]<span>{{ item.scriptContent }}</span> - </div> - <div class="dev-xx"> - <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="item.radioas" clearable> - </el-input> + <!-- 濉┖ --> + <div + class="scriptTopic-dev" + :key="item.sort" + v-if="item.scriptType == 4" + > + <div class="dev-text"> + {{ item.sort }}銆乕闂瓟]<span>{{ item.scriptContent }}</span> + </div> + <div class="dev-xx"> + <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable> + </el-input> + </div> </div> </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> @@ -561,95 +532,8 @@ 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> - <el-form-item - label="闂嵎鍚嶇О" - 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> - - <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="闂嵎绫诲瀷" - 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 label="闂嵎鍚嶇О"> + <el-input v-model="topqueryParams.svyname"></el-input> </el-form-item> <el-form-item label="閫傜敤褰㈠紡" prop="status"> <el-select v-model="topqueryParams.topica" placeholder="璇烽�夋嫨"> @@ -662,24 +546,12 @@ </el-option> </el-select> </el-form-item> - - <el-form-item label="閫傜敤绉戝" prop="status"> - <el-select v-model="topqueryParams.topicd" placeholder="璇烽�夋嫨"> - <el-option - v-for="item in topicoptions" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> <el-form-item> <el-button type="primary" icon="el-icon-search" size="medium" - @click="handleQuery" + @click="handleQuerymb" >鎼滅储</el-button > <el-button @@ -691,7 +563,7 @@ </el-form-item> </el-form> <el-divider></el-divider> - <!-- 閫夋嫨妯$増鍒楄〃 --> + <!-- 閫夋嫨妯℃澘鍒楄〃 --> <SFtable @selectfn="selectfn" :currentList="userList" @@ -723,6 +595,7 @@ getlibrarylist, getFollowuplist, getQtemplatelist, + getQtemplateobj, TaskQuestioncomit, Questionnairetaskget, gethetaskinfo, @@ -740,13 +613,13 @@ 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, // 閬僵灞� @@ -757,13 +630,13 @@ questionList: [], // 鎮h�呰〃鍗� tableLabelhz: [ - { label: "搴忓彿", width: "", prop: "patid" }, - { label: "鎮h�呭悕绉�", width: "", prop: "name" }, + { label: "鎮h��", width: "", prop: "name" }, + { label: "韬唤璇�", width: "200", prop: "idcardno" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, - { label: "灏辫瘖绉戝", width: "", prop: "deptName" }, - { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" }, - { label: "鍒涘缓浜猴紙缂猴級", width: "", prop: "update_by" }, + { label: "鍖荤敓", width: "", prop: "drname" }, + { label: "绉戝", width: "", prop: "deptName" }, + { label: "灏辫瘖/鍑洪櫌鏃ユ湡", width: "280", prop: "inhosptime" }, ], tableLabelwj: [ @@ -811,6 +684,7 @@ patientqueryParams: { pageNum: 1, // pageSize: 10, + topica:0,//0鍏ㄩ儴1绉戝2鐥呭尯 }, topicoptions: [{ children: [{ children: [] }] }], showSearch: true, // @@ -824,7 +698,7 @@ // 闈炲涓鐢� multiple: true, // 鐢ㄦ埛琛ㄦ牸鏁版嵁 - userList: [], //妯$増鍒楄〃 + userList: [], //妯℃澘鍒楄〃 multiplechoice: [], //澶氶�夌粨鏋� patientuserList: [], //閫夋嫨鎮h�呭垪琛� sonuserList: [], //閫変腑鎮h�呭垪琛� @@ -878,6 +752,8 @@ templatename: "", templateid: null, libtemplateid: null, + kcb:'浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�', + jsy:'鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒', }, taskoptions: [ { @@ -893,7 +769,75 @@ label: "浣撴鐥呬汉", }, ], + source: [ + { + value: 0, + label: "鎵�鏈夋偅鑰�", + }, + { + value: 1, + label: "绉戝鎮h��", + }, + { + value: 2, + label: "鐥呭尯鎮h��", + }, + ], + + tasktypes: [ + { + value: 1, + label: "鐩戞祴璇勪及", + }, + { + value: 2, + label: "鍑洪櫌闅忚", + }, + { + value: 3, + label: "闂ㄨ瘖闅忚", + }, + { + value: 4, + label: "瀹f暀鍏虫��", + }, + { + value: 5, + label: "澶嶈瘖绠$悊", + }, + { + value: 6, + label: "婊℃剰搴﹁皟鏌�", + }, + { + value: 7, + label: "鎮h�呮姤鍛�", + }, + + { + value: 8, + label: "鍏朵粬閫氱煡", + }, + ], + rules: { + taskName: [ + { required: true, message: "浠诲姟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }, + { + min: 2, + max: 30, + message: "浠诲姟鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 30 涔嬮棿", + trigger: "blur", + }, + ], + taskDesc: [ + { required: true, message: "浠诲姟鎻忚堪涓嶈兘涓虹┖", trigger: "blur" }, + ], + sendType: [ + { required: true, message: "鍙戦�佽缃笉鑳戒负绌�", trigger: "blur" }, + ], + }, quote: false, + serviceType: null, }; }, components: { SFtable }, @@ -902,9 +846,18 @@ this.id = this.$route.query.id; this.form.type = this.$route.query.type; this.form.typename = this.$route.query.typename; + this.serviceType = Number(this.$route.query.serviceType); + this.form.serviceType = Number(this.$route.query.serviceType); this.listDept(); this.Acquisitiontype(); this.Getdetails(); + }, + activated() { + if (this.id != this.$route.query.id) { + this.listDept(); + this.Acquisitiontype(); + this.Getdetails(); + } }, methods: { @@ -946,31 +899,153 @@ this.currenttype = this.$route.query.type; this.title = "闂嵎鍐呭鍒楄〃"; this.tableLabel = this.tableLabelwj; - this.checkboxlist = ["鐭俊", "寰俊", "浜哄伐鐢佃瘽", "鏅鸿兘鏈哄櫒浜�"]; - getQtemplatelist(queryParams).then((response) => { + if (this.form.serviceType == 1) { + this.checkboxlist = [ + { + value: "1", + label: "浜哄伐", + }, + + { + value: "2", + label: "绾歌川", + }, + { + value: "5", + label: "寰俊鍏紬鍙�", + }, + ]; + } else if (this.form.serviceType == 6) { + this.checkboxlist = [ + { + value: "3", + label: "鐢佃瘽", + }, + { + value: "4", + label: "鐭俊", + }, + { + value: "5", + label: "寰俊鍏紬鍙�", + }, + { + value: "6", + label: "寰俊灏忕▼搴�", + }, + + { + value: "8", + label: "鏅鸿兘鏈哄櫒浜�", + }, + ]; + } else if (this.form.serviceType == 7) { + this.checkboxlist = [ + { + value: "1", + label: "浜哄伐", + }, + { + value: "2", + label: "绾歌川", + }, + { + value: "3", + label: "鐢佃瘽", + }, + { + value: "4", + label: "鐭俊", + }, + { + value: "5", + label: "寰俊鍏紬鍙�", + }, + { + value: "6", + label: "寰俊灏忕▼搴�", + }, + ]; + } else if (this.form.serviceType == 2 || this.form.serviceType == 3) { + this.checkboxlist = [ + { + value: "1", + label: "浜哄伐", + }, + { + value: "3", + label: "鐢佃瘽", + }, + { + value: "4", + label: "鐭俊", + }, + { + value: "5", + label: "寰俊鍏紬鍙�", + }, + { + value: "6", + label: "寰俊灏忕▼搴�", + }, + + { + value: "8", + label: "鏅鸿兘鏈哄櫒浜�", + }, + ]; + } + getQtemplatelist(this.topqueryParams).then((response) => { this.userList = response.rows; this.total = response.total; }); }, nextstep() { - if (this.Editprogress <= 3) { - return this.Editprogress++; - } + this.$refs["form"].validate((valid) => { + if (valid) { + if (this.Editprogress <= 3) { + return this.Editprogress++; + } + } else { + this.$modal.msgError("琛ㄥ崟鍐呭鏈畬鍠勶紝璇锋鏌�"); + } + }); }, // 淇濆瓨 submitForm(formName) { - // this.form.preachform = this.checkList.join(","); - this.formatFn(1); + if (this.time4 && this.form.sendType == 3) + this.form.showTimeMorn = this.time4; + this.form.sendTimeslot = [ + { + begantime: this.time4, + endtime: "", + xh: 1, + }, + ]; + if (this.checkList[0]) { + this.form.preachform = this.checkList.join(","); + } else { + this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷"); + return; + } if (!this.form.patTaskRelevances[0]) { this.$modal.msgError("璇烽�夋嫨鐥呬汉"); return; } - this.form.hospType = this.currenttype; + if (!this.form.templatename) { + this.$modal.msgError("鏈�夋嫨妯℃澘"); + return; + } + if ((this.form.sendType == 1 && this.time1) || this.form.sendType == 2) { + } else if (this.form.sendType == 3 && this.time4) { + } else { + return this.$modal.msgError("鏃堕棿淇℃伅缂哄け"); + } + const filteredArray = this.variableList.filter( (item) => item.name !== "濮撳悕" && item.name !== "鐢佃瘽" && item.name !== "鍦板潃" ); - console.log(filteredArray, "瀛樺墠鍙橀噺"); this.form.textParam = this.convertFormat2ToFormat1(filteredArray); if (this.form.taskid) { this.form.isoperation = 2; @@ -980,6 +1055,7 @@ if (!this.form.type) { this.form.type = this.$route.query.type; } + this.form.serviceType = this.serviceType; Editsingletask(this.form).then((res) => { if (res.code == 200) { if (this.form.taskid) { @@ -989,27 +1065,44 @@ } this.$router.push({ path: "/followvisit/tasklist", - query: { tasktopic: 6 }, + query: { tasktopic: this.form.serviceType }, }); } }); }, // ----------------------琛ㄦ牸瀛愮粍浠朵簨浠� - // 纭閫夋嫨妯$増鏀惧叆浠诲姟妯$増 + + // 纭閫夋嫨妯℃澘鏀惧叆浠诲姟妯℃澘 selectfn(row, type) { - // 妯$増鎯呭喌涓嬭幏鍙栨ā鐗堜俊鎭� + // 妯℃澘鎯呭喌涓嬭幏鍙栨ā鏉夸俊鎭� if (type == 1) { this.libName = row.svyname; this.libId = row.svyid; - console.log(row, "row"); this.Tasktemplate = row; this.questionList = row.svyTemplateLibScripts; - this.previewtf = true; + getQtemplateobj({ svyid: row.svyid }).then((res) => { + if (res.code == 200) { + this.questionList = res.rows[0].svyTemplateLibScripts; + this.previewtf = true; + } + }); + console.log(row.svyTemplateLibScripts); this.previewid = row.svyid; this.Variablehandling(row.svyTemplateLibScripts, 1); } else if (type == 2) { } else if (type == 3) { } + }, + // 棰勮 + previewfnmb() { + console.log(this.form); + + getQtemplateobj({ svyid: this.form.libtemplateid }).then((res) => { + if (res.code == 200) { + this.questionList = res.rows[0].svyTemplateLibScripts; + this.previewtf = true; + } + }); }, // 澶勭悊闂灞傚彉閲� Variablehandling(arr, type) { @@ -1046,6 +1139,27 @@ this.overallCase.forEach((item) => { this.allpids.push(item.patid); }); + if (this.patientqueryParams.allhosp == 1) { + this.tableLabelhz = [ + { label: "鎮h��", width: "", prop: "name" }, + { label: "韬唤璇�", width: "200", prop: "idcardno" }, + { label: "鎬у埆", width: "", prop: "sex" }, + { label: "骞撮緞", width: "", prop: "age" }, + { label: "鍖荤敓", width: "", prop: "drname" }, + { label: "绉戝", width: "", prop: "deptName" }, + { label: "灏辫瘖/鍑洪櫌鏃ユ湡", width: "280", prop: "inhosptime" }, + ]; + } else if (this.patientqueryParams.allhosp == 2) { + this.tableLabelhz = [ + { label: "鎮h��", width: "", prop: "name" }, + { label: "鎬у埆", width: "", prop: "sex" }, + { label: "骞撮緞", width: "", prop: "age" }, + { label: "璇婃柇", width: "", prop: "diagname" }, + { label: "灏辫瘖绉戝", width: "", prop: "deptName" }, + { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" }, + { label: "鍒涘缓浜�", width: "", prop: "createBy" }, + ]; + } if (this.allpids[0]) { this.patientqueryParams.pids = this.allpids; console.log(this.patientqueryParams.pids); @@ -1065,7 +1179,6 @@ handleUpdate() {}, handleDelete() {}, handleExport() {}, - // 閫夋嫨鎮h�呰〃鏁版嵁 handleSelectionChange(selection) { console.log("澶氶�夋偅鑰�"); @@ -1077,6 +1190,7 @@ const isExist = this.overallCase.find((obj) => obj.name == item.name); if (!isExist) { item.isoperation = 1; + item.patid = item.id; item.hospType = this.patientqueryParams.allhosp; this.overallCase.push(item); this.form.patTaskRelevances.push(item); @@ -1125,9 +1239,27 @@ }, getList() {}, handleQuery() { + if (this.patientqueryParams.topica == 0) { + this.patientqueryParams.leavehospitaldistrictcodes = + store.getters.leavehospitaldistrictcodes; + this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes; + } else if (topica == 1) { + this.patientqueryParams.leavehospitaldistrictcodes = null; + this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes; + } else if (topica == 2) { + this.patientqueryParams.leavehospitaldistrictcodes = + store.getters.leavehospitaldistrictcodes; + this.patientqueryParams.leaveldeptcodes = null; + } this.handleAddpatient(); }, resetQuery() {}, + handleQuerymb() { + getQtemplatelist(this.topqueryParams).then((response) => { + this.userList = response.rows; + this.total = response.total; + }); + }, handleClosehz() { this.dialogVisiblepatient = false; }, @@ -1139,30 +1271,41 @@ resetForm(formName) { this.$refs[formName].resetFields(); }, - // 棰勮妯$増 + // 棰勮妯℃澘 PreviewTemplate() {}, Acknowledgereference() { this.quote = true; }, // 鑾峰彇璇︽儏 Getdetails() { + this.form = { + patTaskRelevances: [], + sendType: 1, + templatename: "", + templateid: null, + libtemplateid: null, + kcb:'浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�', + jsy:'鐢熸椿涓婅鍔抽�哥粨鍚堬紝娉ㄦ剰浼戞伅鍜岃惀鍏伙紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒', + }; + this.questionList = []; if (this.id) { Questionnairetaskget({ taskid: this.id }).then((res) => { let filteredArray = ""; - console.log(2233); 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.formatFn(2); - console.log(this.form.showDate, "this.form"); - this.daytime = this.form.showDate.split(","); + this.checkList = this.form.preachform.split(","); + console.log(this.form, "this.form"); + if (this.form.showDate) + this.daytime = this.form.showDate.split(","); if (this.form.showTimeMorn) { if (this.form.sendType == 3) { this.time4 = this.form.showTimeMorn; + console.log(1122); } else { this.time1 = this.form.showTimeMorn.split(","); } @@ -1273,12 +1416,11 @@ 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(","); - console.log(combinedData, "combinedData"); }, - // 鏌ョ湅妯$増 + // 鏌ョ湅妯℃澘 previewGo() { this.$router.push({ - path: "/knowledge/templateku/configurat/", + path: "/knowledge/tpuconfigurat/", query: { id: this.previewid, task: true, data: this.form }, }); }, @@ -1286,19 +1428,20 @@ let id = this.Tasktemplate.id; this.Tasktemplate.id = null; console.log(this.Tasktemplate); - this.Tasktemplate.svyTemplateLibScripts.svyTaskTemplateTargetoptions = - this.Tasktemplate.svyTemplateLibScripts.svyLibTemplateTargetoptions; + + this.Tasktemplate.svyTemplateLibScripts.forEach((item) => { + item.svyTaskTemplateTargetoptions = item.svyLibTemplateTargetoptions; + }); this.Tasktemplate.svyTaskTemplateScriptVOS = this.Tasktemplate.svyTemplateLibScripts; this.Tasktemplate.templateid = id; this.Tasktemplate.isoperation = 1; TaskQuestioncomit(this.Tasktemplate).then((response) => { - console.log(response); this.previewtf = false; this.form.templateid = response.data; this.form.libtemplateid = this.libId; this.form.templatename = this.libName; - this.$modal.msgSuccess("閫夋嫨妯$増鎴愬姛"); + this.$modal.msgSuccess("閫夋嫨妯℃澘鎴愬姛"); }); }, // 澶勭悊鏈嶅姟褰㈠紡 @@ -1368,11 +1511,12 @@ margin: 20px; .headline { font-size: 24px; + height: 40px; border-left: 5px solid #41a1be; padding-left: 5px; margin-bottom: 10px; display: flex; - justify-content: space-between; + // justify-content: space-between; .Add-details { font-size: 18px; color: #02a7f0; -- Gitblit v1.9.3