This commit is contained in:
闫晓茹 2024-07-15 17:37:19 +08:00
parent a37ecfcbf4
commit e059cd61ae

View File

@ -116,7 +116,10 @@
</el-tabs> </el-tabs>
</div> </div>
<!-- 文章模板 --> <!-- 文章模板 -->
<div class="right" v-if="$route.query.taskNodeType == 'PROPAGANDA_ARTICLE'"> <div
class="right"
v-if="$route.query.taskNodeType == 'PROPAGANDA_ARTICLE'"
>
<div class="sport">文章模板:{{ formview.propagandaTitle }}</div> <div class="sport">文章模板:{{ formview.propagandaTitle }}</div>
<div class="bodytop"> <div class="bodytop">
<div> <div>
@ -143,16 +146,11 @@
<!-- 问卷模板 --> <!-- 问卷模板 -->
<div <div
class="right" class="right"
v-if=" v-if="$route.query.taskNodeType == 'QUESTIONNAIRE_SCALE'"
$route.query.taskNodeType == 'QUESTIONNAIRE_SCALE'
"
> >
<div <div
class="handle" class="handle"
v-if=" v-if="$route.query.taskNodeType == 'QUESTIONNAIRE_SCALE'"
$route.query.taskNodeType == 'QUESTIONNAIRE_SCALE'
"
> >
<el-form <el-form
:inline="true" :inline="true"
@ -343,86 +341,6 @@
label-width="110px" label-width="110px"
:inline="true" :inline="true"
> >
<!-- <br/> -->
<el-form-item label="是否接通" prop="phone">
<el-radio
v-model="formlist.phoneConnectStatus"
label="CONNECTED"
>已接通</el-radio
>
<el-radio
v-model="formlist.phoneConnectStatus"
label="NOTCONNECTED"
>未接通</el-radio
>
</el-form-item>
<br />
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input
v-model="formlist.routeHandleRemark"
placeholder="请输入任务处理信息"
/>
</el-form-item>
<br />
<!-- <el-form-item label="话术名称" prop="scriptName">
<el-input
disabled
v-model="formlist.scriptName"
placeholder="请输入话术名称"
/>
</el-form-item> -->
<!-- <br /> -->
<el-form-item label="通用话术名称" prop="phoneTemplateName">
<el-input
disabled
v-model="formlist.phoneTemplateName"
placeholder="请输入通用话术名称"
/>
</el-form-item>
<br />
<!-- <el-form-item label="话术简介" prop="scriptIntroduction">
<el-input
disabled
type="textarea"
v-model="formlist.scriptIntroduction"
placeholder="请输入话术简介"
/>
</el-form-item>
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input
type="textarea"
v-model="formlist.routeHandleRemark"
placeholder="请输入任务处理信息"
/>
</el-form-item> -->
<!-- <br /> -->
<el-form-item label="电话推送" prop="phonePushSign">
<!-- <el-input
type="textarea"
v-model="formlist.routeHandleRemark"
placeholder="请输入任务处理信息"
/> -->
<!-- <el-switch
disabled
v-model="formlist.phonePushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch> -->
<el-radio disabled v-model="formlist.phonePushSign" label="1"
>已开启</el-radio
>
<el-radio disabled v-model="formlist.phonePushSign" label="0"
>未开启</el-radio
>
</el-form-item>
<br />
<el-form-item label="电话" prop="patientPhone"> <el-form-item label="电话" prop="patientPhone">
<el-input <el-input
disabled disabled
@ -431,61 +349,74 @@
/> />
</el-form-item> </el-form-item>
<br /> <br />
<!-- <div style="background:red;width:200px;height:1600px"> --> <el-form-item label="是否接通" prop="phone">
<el-form-item label="重复次数" prop="phoneRedialTimes"> <el-radio
<el-select
v-model="formlist.phoneRedialTimes"
disabled disabled
style="width: 200px" v-model="formlist.phoneConnectStatus"
label="CONNECTED"
>已接通</el-radio
> >
<el-option <el-radio
v-for="item in optionslistS" disabled
:key="item.dictValue" v-model="formlist.phoneConnectStatus"
:label="item.dictLabel" label="NOTCONNECTED"
:value="item.dictValue" >未接通</el-radio
> >
</el-option> </el-form-item>
</el-select> <br />
<el-form-item label="通用话术名称" prop="phoneTemplateName">
<el-input
disabled
v-model="formlist.phoneTemplateName"
placeholder="请输入通用话术名称"
/>
</el-form-item>
<br />
<el-form-item label="重复次数" prop="phoneRedialTimes">
<el-input
disabled
v-model="formlist.phoneRedialTimes"
placeholder=""
/>
</el-form-item> </el-form-item>
<br /> <br />
<el-form-item label="电话短信提醒" prop="phone"> <el-form-item label="电话短信提醒" prop="phone">
<el-select <el-input
disabled disabled
v-model="formlist.phoneMessageRemind" v-model="formlist.phoneMessageRemind"
style="width: 200px" placeholder=""
> />
<el-option
v-for="item in optionslist"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
</el-select>
<!-- <el-input
style="width: 200px"
v-model="formlist.phoneMessageRemind"
placeholder="请输入电话"
/> -->
</el-form-item> </el-form-item>
<br /> <br />
<div class="pushMethod"> <el-form-item label="短信模板:" prop="phone">
<el-form-item label="短信模板:" prop="phone"> <span class="spanname">
<span class="spanname"> <message
<message style="width: 200px; height: 50px"
style="width: 200px; height: 10px" @on-template="messageontemplateMESSAGE"
@on-template="messageontemplateMESSAGE" :templateId="formlist.phoneMessageTemplateId"
:templateId="formlist.phoneMessageTemplateId" :templateName="formlist.phoneMessageTemplateName"
:templateName="formlist.phoneMessageTemplateName" >
></message> </message>
</span> </span>
</el-form-item> </el-form-item>
</div>
<br /> <br />
<el-form-item label="话术图" prop="phone"> <el-form-item label="话术图" prop="phone">
<img <!-- <img :src="formlist.scriptFilePath" style="width: 250px; height: 200px" /> -->
:src="formlist.scriptFilePath" <el-button
style="width: 250px; height: 200px" type="primary"
size="small"
@click="scriptlook(formlist.phoneNodeContent)"
>预览</el-button
>
</el-form-item>
<br />
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input
type="textarea"
disabled
v-model="formlist.routeHandleRemark"
style="width: 500px"
placeholder="请输入任务处理信息"
/> />
</el-form-item> </el-form-item>
<br /> <br />
@ -510,6 +441,19 @@
</el-form> </el-form>
</div> --> </div> -->
</div> </div>
<!-- 预览 -->
<el-dialog title="话术预览" :visible.sync="lookshow" width="90%">
<Scriptpreview
:phoneNodeContent="phoneNodeContent"
v-if="lookshow"
></Scriptpreview>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="lookshow = false"
> </el-button
>
</span>
</el-dialog>
<!-- 文字提醒 --> <!-- 文字提醒 -->
<div v-if="$route.query.taskNodeType == 'TEXT_REMIND'"> <div v-if="$route.query.taskNodeType == 'TEXT_REMIND'">
<div class="sport">文字提醒</div> <div class="sport">文字提醒</div>
@ -542,11 +486,9 @@
import { getPropaganda } from "@/api/manage/propaganda"; import { getPropaganda } from "@/api/manage/propaganda";
import Editorxj from "../../system/Editorxj/index.vue"; import Editorxj from "../../system/Editorxj/index.vue";
import message from "../components/message.vue"; import message from "../components/message.vue";
import Scriptpreview from ".././components/Scriptpreviewopen.vue";
import { import { selectPhonePush } from "@/api/system/followupsee";
selectPhonePush,
} from "@/api/system/followupsee";
import { import {
selectVisitRecord, selectVisitRecord,
selectPatientQuestionSubmit, selectPatientQuestionSubmit,
@ -556,13 +498,21 @@ import { getAgencytype } from "@/api/system/agency";
export default { export default {
components: { components: {
message, message,
Editorxj Editorxj,
Scriptpreview,
}, },
name: "patientdetails", name: "patientdetails",
// components: { }, // components: { },
data() { data() {
return { return {
checkeddata: [], checkeddata: [],
lookshow: false,
phoneNodeContent: {
scriptInfoId: null,
flowScheme: null,
nodes: [],
edges: [],
},
formlists: {}, formlists: {},
baseUrl: process.env.VUE_APP_BASE_API, baseUrl: process.env.VUE_APP_BASE_API,
radio: "1", radio: "1",
@ -584,10 +534,9 @@ export default {
}; };
}, },
created() { created() {
console.log(this.$route.query);
this.info(); this.info();
this.infolistMESSAGE(); // this.infolistMESSAGE();
this.infolistword() // this.infolistword();
// //
if (this.$route.query.textRemindContent) { if (this.$route.query.textRemindContent) {
this.formlists.textRemindContent = this.$route.query.textRemindContent; this.formlists.textRemindContent = this.$route.query.textRemindContent;
@ -609,22 +558,36 @@ export default {
selectPhonePush(this.$route.query.manageRouteNodeId).then((response) => { selectPhonePush(this.$route.query.manageRouteNodeId).then((response) => {
if (response.data) { if (response.data) {
this.formlist = response.data; this.formlist = response.data;
this.formlist.phoneRedialTimes = response.data.phoneRedialTimes;
this.infolistMESSAGE();
this.infolistword();
if (this.formlist.phonePushSign == 0) { if (this.formlist.phonePushSign == 0) {
this.formlist.phonePushSign = '0' this.formlist.phonePushSign = "0";
} else if (this.formlist.phonePushSign == 1) { } else if (this.formlist.phonePushSign == 1) {
this.formlist.phonePushSign = '1' this.formlist.phonePushSign = "1";
} }
} }
}); });
} }
}, },
methods: { methods: {
scriptlook(e) {
if (e == null || e == "") {
this.$message.error("暂无话术图");
} else {
this.phoneNodeContent = e;
this.lookshow = true;
}
},
// //
infolistword() { infolistword() {
var dictType = "text_message_remind"; var dictType = "text_message_remind";
getAgencytype(dictType).then((res) => { getAgencytype(dictType).then((res) => {
this.optionslist = res.data; this.optionslist = res.data;
// this.taskinfo(); this.formlist.phoneMessageRemind = this.optionslist.find(
(el) => el.dictValue == this.formlist.phoneMessageRemind
)?.dictLabel;
}); });
}, },
@ -640,6 +603,9 @@ export default {
var dictType = "redial_times"; var dictType = "redial_times";
getAgencytype(dictType).then((res) => { getAgencytype(dictType).then((res) => {
this.optionslistS = res.data; this.optionslistS = res.data;
this.formlist.phoneRedialTimes = this.optionslistS.find(
(el) => el.dictValue == this.formlist.phoneRedialTimes
)?.dictLabel;
}); });
}, },
// //
@ -701,7 +667,7 @@ export default {
this.questiondata.questionSubjectList[index].optionAnswer = e; this.questiondata.questionSubjectList[index].optionAnswer = e;
}, },
radioGroupChange(e, item) { }, radioGroupChange(e, item) {},
// radio // radio
radioChange(e, item, index) { radioChange(e, item, index) {
console.log(e, item, index, "选中某个单选框时"); console.log(e, item, index, "选中某个单选框时");
@ -743,6 +709,14 @@ export default {
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .el-input.is-disabled .el-input__inner {
background: #fff !important;
color: #606266;
}
::v-deep .el-textarea.is-disabled .el-textarea__inner {
color: #606266;
background: #fff;
}
::v-deep iframe { ::v-deep iframe {
width: 100%; width: 100%;
height: 500px; height: 500px;
@ -831,7 +805,9 @@ export default {
font-size: 16px; font-size: 16px;
} }
} }
.spanname {
pointer-events: none;
}
.right { .right {
width: 70%; width: 70%;
padding-bottom: 30px; padding-bottom: 30px;
@ -843,8 +819,8 @@ export default {
margin-top: 20px; margin-top: 20px;
::v-deep .el-textarea__inner { ::v-deep .el-textarea__inner {
width: 350px; width: 350px;
height: 250px; height: 250px;
} }
} }
} }