修改专病路径

This commit is contained in:
闫晓茹 2024-06-14 15:43:32 +08:00
parent bd016ace81
commit 23496791a5
4 changed files with 814 additions and 353 deletions

View File

@ -317,6 +317,7 @@ Boot.registerPlugin(withAttachment)
function renderAttachment(elem, children, editor) { // JS
// myResume
const { fileName = '', link = '', fileSpan = '', fieldMark = '' } = elem
// const { add=[]}
// icon vnode
const iconVnode = h(
// HTML tag
@ -359,7 +360,7 @@ function renderAttachment(elem, children, editor) {
on: { click() { }, /* 其他... */ }
},
// img
[fileSpan]
[add]
)
const nameVnode = h(
// HTML tag
@ -367,7 +368,7 @@ function renderAttachment(elem, children, editor) {
// HTML
{
props: { contentEditable: false }, // HTML
style: { color: '#fff', background: '#009A82', padding: '5px 10px' /* 其他... */ }, // style
style: { color: '#fff', background: 'red', padding: '5px 10px' /* 其他... */ }, // style
on: { click() { }, /* 其他... */ }
},
// img

View File

@ -161,6 +161,9 @@ export default {
this.Departmentlist();
},
methods: {
listDisease(){
this.$emit("on-template", { templateId: '', templateName: '', templateContent: '' });
},
nohandleselect() {
this.handleselectId = ''
this.handleselectName = ''

View File

@ -2,8 +2,18 @@
<div class="header">
<div class="topheader">
<div class="user">
<img class="headsculpture" src="../../../assets/manage/touxiang.png" alt="" v-if="list.sex == 'MALE'" />
<img class="headsculpture" src="../../../assets/manage/nvtouxiang.png" alt="" v-if="list.sex == 'FEMALE'" />
<img
class="headsculpture"
src="../../../assets/manage/touxiang.png"
alt=""
v-if="list.sex == 'MALE'"
/>
<img
class="headsculpture"
src="../../../assets/manage/nvtouxiang.png"
alt=""
v-if="list.sex == 'FEMALE'"
/>
<div class="name">
{{ list.patientName }}
</div>
@ -37,83 +47,187 @@
<div class="bottomheader">
<div style="display: flex">
<!-- 问卷模板 -->
<div class="right" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
">
<div style="float: right; margin-top: 20px" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
">
<el-form :inline="true" class="demo-form-inline" :model="questiondata" :rules="rules" ref="questiondata">
<div
class="right"
v-if="
$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
"
>
<div
style="float: right; margin-top: 20px"
v-if="
$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
"
>
<el-form
:inline="true"
class="demo-form-inline"
:model="questiondata"
:rules="rules"
ref="questiondata"
>
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input type="textarea" placeholder="请输入任务处理信息" v-model="questiondata.routeHandleRemark" />
<el-input
type="textarea"
placeholder="请输入任务处理信息"
v-model="questiondata.routeHandleRemark"
/>
</el-form-item>
</el-form>
</div>
<div class="sport" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'">
<div
class="sport"
v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'"
>
问卷模板: Barthel指数评定问卷
</div>
<div class="words" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'">
<div
class="words"
v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'"
>
您好!本问卷用于评估日常生活能力请根据自身日常实际表现选择合适的选项
</div>
<div class="sport" v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'">
<div
class="sport"
v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
人工随访模板: 神经内科人工随访
</div>
<div class="words" v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'">
<div
class="words"
v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
**您好!
</div>
<div class="words" v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'">
<div
class="words"
v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
我是医院的工作人员今天给您打电话想要了解一下您的恢复情况
</div>
<div class="words" v-for="(item, index) in questiondata.questionSubjectList" :key="index">
<div
class="words"
v-for="(item, index) in questiondata.questionSubjectList"
:key="index"
>
{{ index + 1 }}.{{ item.questionName }}
<span v-if="item.questionType == 'MULTIPLE_CHOICE'">单选题</span>
<span v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS'">多选题</span>
<span v-if="item.questionType == 'SCORING_QUESTIONS'">打分题</span>
<span v-if="item.questionType == 'COMBINATION_RADIO_SUBJECT'">组合单选题</span>
<span v-if="item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'">组合多选题</span>
<span v-if="item.questionType == 'COMBINATION_BLANKS_SUBJECT'">组合填空题</span>
<span v-if="item.questionType == 'FILL_IN_THE_BLANKS'">填空题</span>
<span v-if="item.questionType == 'COMBINATION_SCORING_SUBJECT'">组合打分题</span>
<span v-if="item.questionType == 'DATE_BLANKS_SUBJECT'">日期填空题</span>
<span v-if="item.questionType == 'TIME_BLANKS_SUBJECT'">时间填空题</span>
<el-radio-group v-if="item.questionType == 'MULTIPLE_CHOICE' ||
item.questionType == 'COMBINATION_RADIO_SUBJECT' ||
item.questionType == 'SCORING_QUESTIONS' ||
item.questionType == 'COMBINATION_SCORING_SUBJECT'
" v-model="questiondata[index]" class="custom-radio-group" @change="radioGroupChange($event, item)">
<el-radio class="custom" v-for="(aitem, aindex) in item.questionSubjectOptionList" :key="aindex"
:label="aitem.id" @change="radioChange($event, aitem, index)">{{ aitem.optionName }}</el-radio>
<span v-if="item.questionType == 'MULTIPLE_CHOICE'"
>单选题</span
>
<span v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS'"
>多选题</span
>
<span v-if="item.questionType == 'SCORING_QUESTIONS'"
>打分题</span
>
<span v-if="item.questionType == 'COMBINATION_RADIO_SUBJECT'"
>组合单选题</span
>
<span v-if="item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'"
>组合多选题</span
>
<span v-if="item.questionType == 'COMBINATION_BLANKS_SUBJECT'"
>组合填空题</span
>
<span v-if="item.questionType == 'FILL_IN_THE_BLANKS'"
>填空题</span
>
<span v-if="item.questionType == 'COMBINATION_SCORING_SUBJECT'"
>组合打分题</span
>
<span v-if="item.questionType == 'DATE_BLANKS_SUBJECT'"
>日期填空题</span
>
<span v-if="item.questionType == 'TIME_BLANKS_SUBJECT'"
>时间填空题</span
>
<el-radio-group
v-if="
item.questionType == 'MULTIPLE_CHOICE' ||
item.questionType == 'COMBINATION_RADIO_SUBJECT' ||
item.questionType == 'SCORING_QUESTIONS' ||
item.questionType == 'COMBINATION_SCORING_SUBJECT'
"
v-model="questiondata[index]"
class="custom-radio-group"
@change="radioGroupChange($event, item)"
>
<el-radio
class="custom"
v-for="(aitem, aindex) in item.questionSubjectOptionList"
:key="aindex"
:label="aitem.id"
@change="radioChange($event, aitem, index)"
>{{ aitem.optionName }}</el-radio
>
</el-radio-group>
<!-- 多选组合多选 -->
<el-checkbox-group v-model="checkeddata" @change="radioGroupChange($event, item, 'checkbox')" v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS' ||
item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'
">
<el-checkbox v-for="(aitem, aindex) in item.questionSubjectOptionList" :key="aindex" :label="aitem.id"
@change="radioChangecheck($event, aitem, index, aindex)">{{ aitem.optionName }}</el-checkbox>
<el-checkbox-group
v-model="checkeddata"
@change="radioGroupChange($event, item, 'checkbox')"
v-if="
item.questionType == 'MULTIPLE_CHOICE_QUESTIONS' ||
item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'
"
>
<el-checkbox
v-for="(aitem, aindex) in item.questionSubjectOptionList"
:key="aindex"
:label="aitem.id"
@change="radioChangecheck($event, aitem, index, aindex)"
>{{ aitem.optionName }}</el-checkbox
>
</el-checkbox-group>
<!-- 填空题组合填空 -->
<div v-if="item.questionType == 'FILL_IN_THE_BLANKS' ||
item.questionType == 'COMBINATION_BLANKS_SUBJECT'
" class="tk">
<el-input v-model="item.fillBlanksAnswer" placeholder="请输入答案" type="textarea" />
<div
v-if="
item.questionType == 'FILL_IN_THE_BLANKS' ||
item.questionType == 'COMBINATION_BLANKS_SUBJECT'
"
class="tk"
>
<el-input
v-model="item.fillBlanksAnswer"
placeholder="请输入答案"
type="textarea"
/>
<!-- <el-input></el-input> -->
</div>
<!-- 日期填空题 -->
<div v-if="item.questionType == 'DATE_BLANKS_SUBJECT'" style="margin: 20px 0 10px 30px">
<el-date-picker @change="timepicker($event, index)" clearable v-model="item.fillBlanksAnswer" type="date"
value-format="yyyy-MM-dd" placeholder="选择日期">
<div
v-if="item.questionType == 'DATE_BLANKS_SUBJECT'"
style="margin: 20px 0 10px 30px"
>
<el-date-picker
@change="timepicker($event, index)"
clearable
v-model="item.fillBlanksAnswer"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期"
>
</el-date-picker>
</div>
<!-- 时间填空题 -->
<div style="margin: 20px 0 10px 30px" v-if="item.questionType == 'TIME_BLANKS_SUBJECT'">
<el-time-select @change="timepickerselect($event, index)" clearable v-model="item.fillBlanksAnswer"
<div
style="margin: 20px 0 10px 30px"
v-if="item.questionType == 'TIME_BLANKS_SUBJECT'"
>
<el-time-select
@change="timepickerselect($event, index)"
clearable
v-model="item.fillBlanksAnswer"
:picker-options="{
start: '08:30',
step: '00:30',
end: '23:30',
}" placeholder="选择时间">
start: '08:30',
step: '00:30',
end: '23:30',
}"
placeholder="选择时间"
>
</el-time-select>
</div>
</div>
@ -123,22 +237,42 @@
<div class="sport">电话外呼</div>
<div class="nexttime">
<el-form ref="formlist" :model="formlist" label-width="110px" :inline="true" :rules="rulesphone">
<el-form
ref="formlist"
:model="formlist"
label-width="110px"
:inline="true"
:rules="rulesphone"
>
<el-form-item label="话术名称" prop="scriptName">
<el-input disabled v-model="formlist.scriptName" placeholder="请输入话术名称" />
<el-radio v-model="radio" label="1">备选项</el-radio>
<el-radio v-model="radio" label="2">备选项</el-radio>
</el-form-item>
<br />
<el-form-item label="通用话术名称" prop="commonScriptName">
<el-input disabled v-model="formlist.commonScriptName" placeholder="请输入通用话术名称" />
<el-input
disabled
v-model="formlist.commonScriptName"
placeholder="请输入通用话术名称"
/>
</el-form-item>
<br />
<el-form-item label="话术简介" prop="scriptIntroduction">
<el-input disabled type="textarea" v-model="formlist.scriptIntroduction" placeholder="请输入话术简介" />
<el-input
disabled
type="textarea"
v-model="formlist.scriptIntroduction"
placeholder="请输入话术简介"
/>
</el-form-item>
<br />
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input type="textarea" v-model="formlist.routeHandleRemark" placeholder="请输入任务处理信息" />
<el-input
type="textarea"
v-model="formlist.routeHandleRemark"
placeholder="请输入任务处理信息"
/>
</el-form-item>
</el-form>
</div>
@ -148,22 +282,27 @@
</div>
</template>
<script>
import { selectFollowPatientInfo, question, addPatientQuestionResult } from "@/api/system/followupsee";
<script>
import {
selectFollowPatientInfo,
question,
addPatientQuestionResult,
} from "@/api/system/followupsee";
import { getScript } from "@/api/manage/script";
import Cookies from 'js-cookie'
import Cookies from "js-cookie";
export default {
name: "patientdetails",
data() {
return {
obj: {},
radio: "1",
checkList: [],
checked: false,
formlist: {},
form: {
taskType: this.$route.query.taskType,
routeHandleId: Cookies.get('userId'),
routeHandlePerson: Cookies.get('userName'),
routeHandleId: Cookies.get("userId"),
routeHandlePerson: Cookies.get("userName"),
routeHandleRemark: null,
patientId: this.$route.query.patientId,
manageRouteId: this.$route.query.manageRouteId,
@ -178,36 +317,36 @@ export default {
},
rules: {
routeHandleRemark: [
{ required: true, message: '请输入任务处理信息', trigger: 'change' }
{ required: true, message: "请输入任务处理信息", trigger: "change" },
],
},
rulesphone: {
routeHandleRemark: [
{ required: true, message: '请输入任务处理信息', trigger: 'change' }
{ required: true, message: "请输入任务处理信息", trigger: "change" },
],
},
radio: "B",
id: "",
list: [],
type: '',
type: "",
checkeddata: [],
questiondata: {
totalScore: 0, //
totalScore: 0, //
routeHandlePerson: null,
routeHandleId: null,
},
};
},
created() {
this.id = this.$route.query.manageRouteId;
this.info();
if (this.$route.query.taskType == 'QUESTIONNAIRE_SCALE' || this.$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP') {
if (
this.$route.query.taskType == "QUESTIONNAIRE_SCALE" ||
this.$route.query.taskType == "ARTIFICIAL_FOLLOW_UP"
) {
this.questioninfo();
} else {
getScript(this.$route.query.templateId).then(response => {
getScript(this.$route.query.templateId).then((response) => {
if (response.data) {
this.formlist = response.data;
}
@ -217,200 +356,222 @@ export default {
methods: {
//
timepicker(e, index) {
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e;
},
//
timepickerselect(e, index) {
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e
},
radioGroupChange(e, item) {
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e;
},
radioGroupChange(e, item) {},
// radio
radioChange(e, item, index) {
console.log(e, item, index, '选中某个单选框时')
this.questiondata.questionSubjectList[index].questionSubjectOptionList.forEach(el => {
console.log(e, item, index, "选中某个单选框时");
this.questiondata.questionSubjectList[
index
].questionSubjectOptionList.forEach((el) => {
if (el.id == item.id) {
el.optionChooseSign = '0'
el.optionChooseSign = "0";
} else {
el.optionChooseSign = "1";
}
else {
el.optionChooseSign = '1'
}
})
console.log(this.questiondata, 'this.questiondata')
this.questiondata
});
console.log(this.questiondata, "this.questiondata");
this.questiondata;
},
//
radioChangecheck(e, item, index, aindex) {
console.log(e, item, index, '选中某个复选框时')
console.log(e, item, index, "选中某个复选框时");
if (e == true) {
this.questiondata.questionSubjectList[index].questionSubjectOptionList[aindex].optionChooseSign = '0'
this.questiondata.questionSubjectList[index].questionSubjectOptionList[
aindex
].optionChooseSign = "0";
} else {
this.questiondata.questionSubjectList[index].questionSubjectOptionList[aindex].optionChooseSign = '1'
this.questiondata.questionSubjectList[index].questionSubjectOptionList[
aindex
].optionChooseSign = "1";
}
},
info() {
selectFollowPatientInfo(this.id).then((res) => {
this.list = res.data;
});
},
questioninfo() {
question(this.$route.query.templateId).then((res) => {
this.questiondata = res.data;
this.questiondata.questionInfoId = res.data.id;
this.questiondata.routeHandlePerson = Cookies.get('userName')
this.questiondata.routeHandleId = Cookies.get('userId')
this.questiondata.patientId = this.$route.query.patientId
this.questiondata.manageRouteId = this.$route.query.manageRouteId
this.questiondata.manageRouteNodeId = this.$route.query.manageRouteNodeId
this.questiondata.patientName = this.$route.query.patientName
this.questiondata.manageRouteName = this.$route.query.manageRouteName
this.questiondata.manageRouteNodeName = this.$route.query.manageRouteNodeName
this.questiondata.taskType = this.$route.query.taskType
this.questiondata.visitRecordId = this.$route.query.visitRecordId
this.questiondata.totalScore = 0
this.questiondata.questionSubjectList.forEach(e => {
if (e.questionType == 'MULTIPLE_CHOICE' || e.questionType == 'MULTIPLE_CHOICE_QUESTIONS' || e.questionType == 'SCORING_QUESTIONS' || e.questionType == 'COMBINATION_RADIO_SUBJECT' || e.questionType == 'COMBINATION_MULTIPLE_SUBJECT' || e.questionType == 'COMBINATION_SCORING_SUBJECT') {
e.whetherScore = '1'
this.questiondata.routeHandlePerson = Cookies.get("userName");
this.questiondata.routeHandleId = Cookies.get("userId");
this.questiondata.patientId = this.$route.query.patientId;
this.questiondata.manageRouteId = this.$route.query.manageRouteId;
this.questiondata.manageRouteNodeId =
this.$route.query.manageRouteNodeId;
this.questiondata.patientName = this.$route.query.patientName;
this.questiondata.manageRouteName = this.$route.query.manageRouteName;
this.questiondata.manageRouteNodeName =
this.$route.query.manageRouteNodeName;
this.questiondata.taskType = this.$route.query.taskType;
this.questiondata.visitRecordId = this.$route.query.visitRecordId;
this.questiondata.totalScore = 0;
this.questiondata.questionSubjectList.forEach((e) => {
if (
e.questionType == "MULTIPLE_CHOICE" ||
e.questionType == "MULTIPLE_CHOICE_QUESTIONS" ||
e.questionType == "SCORING_QUESTIONS" ||
e.questionType == "COMBINATION_RADIO_SUBJECT" ||
e.questionType == "COMBINATION_MULTIPLE_SUBJECT" ||
e.questionType == "COMBINATION_SCORING_SUBJECT"
) {
e.whetherScore = "1";
} else {
e.whetherScore = '0'
e.whetherScore = "0";
}
e.questionSubjectOptionList.forEach(el => {
el.questionNumber = e.questionNumber
if (e.questionType == 'MULTIPLE_CHOICE_QUESTIONS' || e.questionType == 'COMBINATION_MULTIPLE_SUBJECT') {
el.optionChooseSign = '1'
e.questionSubjectOptionList.forEach((el) => {
el.questionNumber = e.questionNumber;
if (
e.questionType == "MULTIPLE_CHOICE_QUESTIONS" ||
e.questionType == "COMBINATION_MULTIPLE_SUBJECT"
) {
el.optionChooseSign = "1";
}
})
})
});
});
});
},
//
/** 提交按钮 */
submit() {
if (this.$route.query.taskType == 'QUESTIONNAIRE_SCALE') {
if (this.$route.query.taskType == "QUESTIONNAIRE_SCALE") {
// .=.
this.$delete(this.questiondata, 'updateBy',)
this.$delete(this.questiondata, 'updateTime',)
var score = 0
this.$delete(this.questiondata, "updateBy");
this.$delete(this.questiondata, "updateTime");
var score = 0;
//
this.questiondata.questionSubjectList.forEach(e => {
this.questiondata.questionSubjectList.forEach((e) => {
if (e.questionSubjectOptionList?.length > 0) {
e.questionSubjectOptionList.forEach(el => {
if (e.questionType == 'MULTIPLE_CHOICE' || e.questionType == 'MULTIPLE_CHOICE_QUESTIONS' || e.questionType == 'SCORING_QUESTIONS' || e.questionType == 'COMBINATION_RADIO_SUBJECT' || e.questionType == 'COMBINATION_MULTIPLE_SUBJECT' || e.questionType == 'COMBINATION_SCORING_SUBJECT') {
if (el.optionChooseSign == '0') {
score += el.optionScore
e.questionSubjectOptionList.forEach((el) => {
if (
e.questionType == "MULTIPLE_CHOICE" ||
e.questionType == "MULTIPLE_CHOICE_QUESTIONS" ||
e.questionType == "SCORING_QUESTIONS" ||
e.questionType == "COMBINATION_RADIO_SUBJECT" ||
e.questionType == "COMBINATION_MULTIPLE_SUBJECT" ||
e.questionType == "COMBINATION_SCORING_SUBJECT"
) {
if (el.optionChooseSign == "0") {
score += el.optionScore;
}
}
})
});
// console.log(score, 'score')
this.questiondata.totalScore = score
this.questiondata.totalScore = score;
}
})
this.questiondata.subjectResultDTOList = this.questiondata.questionSubjectList
this.obj = JSON.parse(JSON.stringify(this.questiondata))
});
this.questiondata.subjectResultDTOList =
this.questiondata.questionSubjectList;
this.obj = JSON.parse(JSON.stringify(this.questiondata));
delete this.obj.questionSubjectList;
this.obj.subjectResultDTOList.forEach(e => {
e.optionResultList = e.questionSubjectOptionList
this.obj.subjectResultDTOList.forEach((e) => {
e.optionResultList = e.questionSubjectOptionList;
if (e.optionResultList.optionSubmitAnswer) {
e.optionResultList.optionSubmitAnswer = e.optionResultList.optionSubmitAnswer
e.optionResultList.optionSubmitAnswer =
e.optionResultList.optionSubmitAnswer;
}
// this.$delete(this.obj, '0', '')
delete e.questionSubjectOptionList;
});
// console.log(this.obj, 'obj')
} else if (this.$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP') {
console.log(this.questiondata, 'questiondata')
} else if (this.$route.query.taskType == "ARTIFICIAL_FOLLOW_UP") {
console.log(this.questiondata, "questiondata");
// .=.
this.$delete(this.questiondata, 'updateBy',)
this.$delete(this.questiondata, 'updateTime',)
this.questiondata.subjectResultDTOList = this.questiondata.questionSubjectList
this.obj = JSON.parse(JSON.stringify(this.questiondata))
this.$delete(this.questiondata, "updateBy");
this.$delete(this.questiondata, "updateTime");
this.questiondata.subjectResultDTOList =
this.questiondata.questionSubjectList;
this.obj = JSON.parse(JSON.stringify(this.questiondata));
delete this.obj.questionSubjectList;
this.obj.subjectResultDTOList.forEach(e => {
e.optionResultList = e.questionSubjectOptionList
this.obj.subjectResultDTOList.forEach((e) => {
e.optionResultList = e.questionSubjectOptionList;
if (e.optionResultList.optionSubmitAnswer) {
e.optionResultList.optionSubmitAnswer = e.optionResultList.optionSubmitAnswer
e.optionResultList.optionSubmitAnswer =
e.optionResultList.optionSubmitAnswer;
}
// this.$delete(this.obj, '0', '')
delete e.questionSubjectOptionList;
});
// this.$delete(this.obj, 'totalScore',)
}
// 访
if (this.$route.query.taskType == 'QUESTIONNAIRE_SCALE' || this.$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP') {
if (
this.$route.query.taskType == "QUESTIONNAIRE_SCALE" ||
this.$route.query.taskType == "ARTIFICIAL_FOLLOW_UP"
) {
// console.log(this.obj, 'objobj')
// return
this.$refs["questiondata"].validate(valid => {
this.$refs["questiondata"].validate((valid) => {
if (valid) {
addPatientQuestionResult(this.obj).then(response => {
this.$confirm('保存成功, 是否返回上一页?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'success'
}).then(() => {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.push({
path: "/task/followup",
});
})
}).catch(() => {
this.$modal.msgSuccess("保存成功");
});
});
}
});
} else if (this.$route.query.taskType == 'PHONE_OUTBOUND') {
// console.log(this.form, '')
// return
this.$refs["formlist"].validate(valid => {
if (valid) {
this.form.departmentId = this.formlist.departmentId,
this.form.departmentName = this.formlist.departmentName,
this.form.diseaseTypeId = this.formlist.diseaseTypeId,
this.form.diseaseTypeName = this.formlist.diseaseTypeName,
this.form.routeHandleRemark = this.formlist.routeHandleRemark
this.form.visitRecordId = this.$route.query.visitRecordId,
// console.log(this.form, 'this.form')
// return
addPatientQuestionResult(this.form).then(response => {
this.$confirm('保存成功, 是否返回上一页?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'success'
}).then(() => {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.push({
path: "/task/followup",
addPatientQuestionResult(this.obj).then((response) => {
this.$confirm("保存成功, 是否返回上一页?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "success",
})
.then(() => {
this.$store
.dispatch("tagsView/delView", this.$route)
.then(({ visitedViews }) => {
this.$router.push({
path: "/task/followup",
});
});
})
}).catch(() => {
})
.catch(() => {
this.$modal.msgSuccess("保存成功");
});
});
});
}
});
} else if (this.$route.query.taskType == "PHONE_OUTBOUND") {
// console.log(this.form, '')
// return
this.$refs["formlist"].validate((valid) => {
if (valid) {
(this.form.departmentId = this.formlist.departmentId),
(this.form.departmentName = this.formlist.departmentName),
(this.form.diseaseTypeId = this.formlist.diseaseTypeId),
(this.form.diseaseTypeName = this.formlist.diseaseTypeName),
(this.form.routeHandleRemark = this.formlist.routeHandleRemark);
(this.form.visitRecordId = this.$route.query.visitRecordId),
// console.log(this.form, 'this.form')
// return
addPatientQuestionResult(this.form).then((response) => {
this.$confirm("保存成功, 是否返回上一页?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "success",
})
.then(() => {
this.$store
.dispatch("tagsView/delView", this.$route)
.then(({ visitedViews }) => {
this.$router.push({
path: "/task/followup",
});
});
})
.catch(() => {
this.$modal.msgSuccess("保存成功");
});
});
}
});
}
},
//
cencal() {
this.$router.push({
path: "/task/followup",
});
},
handleClick(tab, event) {
@ -419,17 +580,15 @@ export default {
},
};
</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;
}
.tk {
::v-deep .el-textarea__inner {
margin: 20px 0 10px 30px;
@ -439,28 +598,23 @@ export default {
::v-deep .el-radio {
padding: 10px;
}
::v-deep .el-checkbox-group {
display: flex;
flex-direction: column;
padding: 10px 0px 10px 24px;
}
::v-deep .el-checkbox {
padding: 10px 0 10px 0px;
// padding: 10px;
}
.custom-radio-group {
display: flex;
flex-direction: column;
padding: 10px 0 10px 10px;
.custom {
padding: 10px 0 10px 10px;
}
}
.bodytop {
position: relative;
top: 20px;
@ -470,41 +624,34 @@ export default {
// background: red;f
overflow: auto;
border: 1px solid #e2e2e2;
.titledata {
margin: 30px 0px 15px 30px;
top: 14px;
font-size: 20px;
}
.audiotop {
margin: 10px 0px 10px 30px;
}
img {
// width: 362px;
// height: 127px;
margin: 0px 0px 0px 30px;
}
.know {
margin: 11px 0px 10px 30px;
font-size: 20px;
font-weight: 550;
}
.knowlist {
margin: 10px 0px 10px 30px;
font-size: 16px;
}
}
.right {
width: 100%;
height: 500px;
// background: yellow;
}
.header {
background-color: #f1f3f5;
padding-top: 10px;
@ -523,18 +670,15 @@ export default {
background-color: #fff;
margin: 10px auto;
padding: 10px 20px;
.sport {
padding: 10px 50px 10px 10px;
font-size: 20px;
font-weight: 600;
}
.words {
font-size: 15px;
padding: 10px 50px 10px 10px;
}
.sports {
position: absolute;
left: 50%;
@ -542,25 +686,21 @@ export default {
font-size: 18px;
font-weight: 600;
}
.word {
font-size: 14px;
font-weight: 550;
padding: 50px 50px 10px 10px;
}
.videoleft {
width: 40%;
height: 200px;
background: red;
}
.time {
font-size: 20px;
font-weight: 550;
padding: 10px 50px 10px 10px;
}
.number {
width: 25px;
height: 25px;
@ -570,25 +710,21 @@ export default {
background: blue;
border-radius: 50%;
}
.nexttime {
font-size: 15px;
padding: 10px 50px 10px 10px;
}
.images {
width: 53%;
height: 241px;
margin: 0 auto;
background: red;
}
.attention {
font-size: 14px;
font-weight: 550;
padding: 10px 50px 10px 10px;
}
// .videobottom
// {
// font-size: 14px;
@ -603,7 +739,6 @@ export default {
margin: 0 auto;
.information {
width: 100%;
display: flex;
flex-wrap: wrap;
padding: 10px 20px;
@ -634,7 +769,6 @@ export default {
position: relative;
right: 59px;
position: absolute;
.item {
margin-left: 20px;
}

View File

@ -8,8 +8,17 @@
</div>
<div class="select">
<span> 适用范围 </span>
<el-select v-model="updata.suitRange" placeholder="请选择" @change="changeoptions">
<el-option v-for="item in options" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue">
<el-select
v-model="updata.suitRange"
placeholder="请选择"
@change="changeoptions"
>
<el-option
v-for="item in options"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
</el-select>
</div>
@ -21,12 +30,20 @@
<i class="el-icon-circle-plus-outline" @click="addlist"></i>
</div>
<el-timeline>
<el-timeline-item v-for="(item, index) in lists" :key="index" :color="listindex == index ? '#409EFF' : ''">
<el-timeline-item
v-for="(item, index) in lists"
:key="index"
:color="listindex == index ? '#409EFF' : ''"
>
<div class="top">
<div class="toptop">
<el-select v-model="item.routeNodeName" style="width: 100px">
<el-option v-for="item in parentDictCodelist" :key="item.dictValue" :label="item.dictLabel"
:value="item.dictValue">
<el-option
v-for="item in parentDictCodelist"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
<!-- <el-option label="出院后" value="AFTER_DISCHARGE" />
<el-option label="入院后" value="AFTER_ADMISSION" />
@ -38,22 +55,43 @@
<el-option label="术前" value="PREOPERATIVE" />
<el-option label="术后" value="POSTOPERATIVE" /> -->
</el-select>
<el-input v-model="item.routeNodeDay" style="width: 70px" type="number" :min="0"></el-input>
<el-input
v-model="item.routeNodeDay"
style="width: 70px"
type="number"
:min="0"
></el-input>
<span></span>
</div>
<div>
<i class="el-icon-delete" @click="delitem(item, index)"></i>
<i class="el-icon-circle-plus-outline" @click="additem(item)"></i>
<i
class="el-icon-circle-plus-outline"
@click="additem(item)"
></i>
</div>
</div>
<el-card v-for="(uitem, uindex) in item.list" :key="uitem.id"
<el-card
v-for="(uitem, uindex) in item.list"
:key="uitem.id"
@click.native="bottomclickevent(uitem, index, uindex)"
:class="listindex == index && itemindex == uindex ? 'cards' : ''">
:class="listindex == index && itemindex == uindex ? 'cards' : ''"
>
<h3 style="height: 20px">{{ uitem.taskTypeName }}</h3>
<el-tag v-if="uitem.routeCheckStatus == 'AGREE'" class="routeCheckStatus">已审核</el-tag>
<el-tag v-else-if="uitem.routeCheckStatus == 'DISAGREE'" type="danger"
class="routeCheckStatus">不同意</el-tag>
<el-tag v-else type="warning" class="routeCheckStatus">未审核</el-tag>
<el-tag
v-if="uitem.routeCheckStatus == 'AGREE'"
class="routeCheckStatus"
>已审核</el-tag
>
<el-tag
v-else-if="uitem.routeCheckStatus == 'DISAGREE'"
type="danger"
class="routeCheckStatus"
>不同意</el-tag
>
<el-tag v-else type="warning" class="routeCheckStatus"
>未审核</el-tag
>
<p style="height: 16px">{{ uitem.taskSubdivisionName }}</p>
</el-card>
</el-timeline-item>
@ -63,48 +101,165 @@
<div class="topform">
<el-form ref="form" :inline="true" :model="form" class="form">
<el-form-item label="任务类型" prop="">
<el-select v-model="form.taskType" style="width: 110px" @change="changeTaskType">
<el-option v-for="item in selectTaskTypeList" :key="item.taskTypeCode" :label="item.taskTypeName"
:value="item.taskTypeCode">
<el-select
v-model="form.taskType"
style="width: 110px"
@change="changeTaskType"
>
<el-option
v-for="item in selectTaskTypeList"
:key="item.taskTypeCode"
:label="item.taskTypeName"
:value="item.taskTypeCode"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="任务细分" prop="">
<el-select v-model="form.taskSubdivision" style="width: 110px" @change="changetaskSubdivision">
<el-option v-for="item in taskPartitionList" :key="item.taskPartitionCode"
:label="item.taskPartitionName" :value="item.taskPartitionCode">
<el-select
v-model="form.taskSubdivision"
style="width: 110px"
@change="changetaskSubdivision"
>
<el-option
v-for="item in taskPartitionList"
:key="item.taskPartitionCode"
:label="item.taskPartitionName"
:value="item.taskPartitionCode"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="任务状态" prop="">
<el-select v-model="form.taskStatus" style="width: 110px">
<el-option v-for="item in taskStatusDictList" :key="item.id" :label="item.taskStatusName"
:value="item.taskStatusCode">
<el-option
v-for="item in taskStatusDictList"
:key="item.id"
:label="item.taskStatusName"
:value="item.taskStatusCode"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="二级分类描述" prop="">
<el-input v-model="form.secondClassifyDescribe" style="width: 110px" disabled></el-input>
<el-input
v-model="form.secondClassifyDescribe"
style="width: 110px"
disabled
></el-input>
</el-form-item>
<el-form-item label="执行时间" prop="">
<el-time-select v-model="form.executionTime" style="width: 120px" placeholder="选择时间" disabled>
<el-time-select
v-model="form.executionTime"
style="width: 120px"
placeholder="选择时间"
disabled
>
</el-time-select>
</el-form-item>
<el-form-item label="问卷库模板选择" prop="" v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'">
<question @on-template="questionontemplate" :templateId="form.templateId"
:templateName="form.templateName"></question>
<el-form-item
label="问卷库模板选择"
prop=""
v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'"
>
<question
@on-template="questionontemplate"
:templateId="form.templateId"
:templateName="form.templateName"
></question>
</el-form-item>
<el-form-item label="宣教库模板选择" prop="" v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'">
<propaganda @on-template="propagandaontemplate" :templateId="form.templateId"
:templateName="form.templateName"></propaganda>
<el-form-item
label="宣教库模板选择"
prop=""
v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'"
>
<propaganda
@on-template="propagandaontemplate"
:templateId="form.templateId"
:templateName="form.templateName"
></propaganda>
</el-form-item>
</el-form>
</div>
<div class="bottomform">
<wangeditor style="width: 100%" :nodeContent="form.nodeContent" @on-nodeContent="onNodeContent"
v-show="form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' && form.taskSubdivisiontemplateType != 'PROPAGANDA'"
ref="wangeditor" />
<div class="card">
<wangeditor
style="width: 100%"
:nodeContent="form.nodeContent"
@on-nodeContent="onNodeContent"
v-show="
form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' &&
form.taskSubdivisiontemplateType != 'PROPAGANDA' &&
form.taskSubdivisiontemplateType != 'SCRIPT'
"
ref="wangeditor"
/>
<!-- <div
class="card"
v-show="form.taskSubdivisiontemplateType == 'SCRIPT'"
> -->
<!-- <div class="flex">
<div class="pushMethod">
推送方式
<span> 人工电话 </span>
</div>
<div>
短信提醒:
<span>
<el-select
v-model="form.phoneMessageRemind"
style="width: 150px"
>
<el-option
v-for="item in optionslist"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
</el-select>
</span>
</div>
<div>
重拨次数:
<span>
<el-select v-model="form.redialTimes" style="width: 150px">
<el-option
v-for="item in optionslistS"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
</el-select>
</span>
</div>
<div class="pushMethod">
模板
<scripts
@on-template="messageontemplateword"
:templateId="form.phoneTemplateId"
:templateName="form.phoneTemplateName"
></scripts>
</div>
<div class="pushMethod">
<el-switch
v-model="form.phonePushsign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch>
</div>
</div> -->
<!-- <div class="flextwo">
<div class="text">短信预览</div>
<el-input class="textarea" v-model="form.messagePreview" disabled></el-input>
</div> -->
<!-- </div> -->
<div
class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
>
<div class="flex">
<div class="pushMethod">
推送方式
@ -112,11 +267,19 @@
</div>
<div class="pushMethod">
模板
<message @on-template="messageontemplate" :templateId="form.messageTemplateId"
:templateName="form.messageTemplateName"></message>
<message
@on-template="messageontemplate"
:templateId="form.messageTemplateId"
:templateName="form.messageTemplateName"
></message>
</div>
<div class="pushMethod">
<el-switch v-model="form.messagePushSign" active-color="#13ce66" active-value="1" inactive-value="0">
<el-switch
v-model="form.messagePushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch>
</div>
</div>
@ -125,7 +288,10 @@
<el-input class="textarea" v-model="form.messagePreview" disabled></el-input>
</div> -->
</div>
<div class="card">
<div
class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
>
<div class="flex">
<div class="pushMethod">
推送方式
@ -134,13 +300,21 @@
<div class="pushMethod">
模板
<span>
<officialAccount @on-template="officialAccountontemplate" :templateId="form.officialTemplateId"
:templateName="form.officialTemplateName">
<officialAccount
@on-template="officialAccountontemplate"
:templateId="form.officialTemplateId"
:templateName="form.officialTemplateName"
>
</officialAccount>
</span>
</div>
<div class="pushMethod">
<el-switch v-model="form.officialPushSign" active-color="#13ce66" active-value="1" inactive-value="0">
<el-switch
v-model="form.officialPushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch>
</div>
</div>
@ -149,7 +323,10 @@
<el-input v-model="form.officialRemindContent" class="textarea" disabled></el-input>
</div> -->
</div>
<div class="card">
<div
class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
>
<div class="flex">
<div class="pushMethod">
推送方式
@ -158,13 +335,21 @@
<div class="pushMethod">
模板
<span>
<miniProgram @on-template="miniProgramtemplate" :templateId="form.appletTemplateId"
:templateName="form.appletTemplateName">
<miniProgram
@on-template="miniProgramtemplate"
:templateId="form.appletTemplateId"
:templateName="form.appletTemplateName"
>
</miniProgram>
</span>
</div>
<div class="pushMethod">
<el-switch v-model="form.appletPushSign" active-color="#13ce66" active-value="1" inactive-value="0">
<el-switch
v-model="form.appletPushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch>
</div>
</div>
@ -177,88 +362,151 @@
<el-input v-model="form.appletPromptDescription" class="textarea" disabled></el-input>
</div> -->
</div>
<!-- <div class="card" style="height: 250px;">
<div class="flex">
<div class="pushMethod">
推送方式
<span>
AI电话
</span>
</div>
<div class="pushMethod">
模板
<span>
<el-select v-model="value" style="width:200px;">
<el-option v-for="item in taskStatusDictList" :key="item.id" style="color:black"
:label="item.taskStatusName" :value="item.id">
</el-option>
</el-select>
</span>
</div>
<div class="pushMethod">
<el-switch v-model="form.value" active-color="#13ce66" active-value="1"
inactive-value="0">
</el-switch>
</div>
</div>
<div class="flextwo">
<div class="text">
机构名称
</div>
<div class="text">
我是
</div>
<el-input v-model="form.input" placeholder="" style="width:150px;padding:0 10px"></el-input>
<div class="text">
的工作人员
</div>
</div>
<div class="flextwo">
<div class="text">
重播次数
</div>
<el-input v-model="form.input" placeholder="" style="width:200px;"></el-input>
<div class="text" style="padding-left: 100px;">
时间间隔
</div>
<el-input v-model="form.input" placeholder="" style="width:200px;"></el-input>
</div>
<div class="flextwo">
<div class="text">
短信提醒
</div>
<el-select v-model="value" style="width:200px;">
<el-option v-for="item in taskStatusDictList" :key="item.id" style="color:black"
:label="item.taskStatusName" :value="item.id">
</el-option>
</el-select>
<div class="text" style="padding-left: 100px;">
短信模板
</div>
<el-select v-model="value" style="width:200px;">
<el-option v-for="item in taskStatusDictList" :key="item.id" style="color:black"
:label="item.taskStatusName" :value="item.id">
</el-option>
</el-select>
</div>
</div> -->
<div
class="card"
style="height: 250px"
v-show="form.taskSubdivisiontemplateType == 'SCRIPT'"
>
<div class="flex">
<div class="pushMethod">
推送方式
<span> AI电话 </span>
</div>
<div class="pushMethod">
模板
<scripts
@on-template="messageontemplateword"
:templateId="form.phoneTemplateId"
:templateName="form.phoneTemplateName"
></scripts>
</div>
<div class="pushMethod">
<el-switch
v-model="form.phonePushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch>
</div>
</div>
<div class="flex">
<div class="pushMethod">
重播次数
<span>
<el-select
v-model="form.phoneRedialTimes"
style="width: 100px"
>
<el-option
v-for="item in optionslistS"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
</el-select>
</span>
</div>
<div class="pushMethod">
时间间隔:
<span>
<el-input
v-model.number="form.phoneTimeInterval"
oninput="value=value.replace(/[^\d]/g,'')"
style="width: 100px"
>
<!-- <el-option
v-for="item in optionslistS"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option> -->
</el-input>
</span>
</div>
<div class="pushMethod">
短信提醒
<el-select
v-model="form.phoneMessageRemind"
style="width: 150px"
@change="changelist"
>
<el-option
v-for="item in optionslist"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
</el-select>
</div>
<div class="pushMethod">
短信模板
<span
class="spanname"
v-if="form.phoneMessageRemind == 'NOT_SEND_MESSAGE'"
>
<message
ref="refname"
style="width: 200px"
@on-template="messageontemplateMESSAGE"
:templateId="form.phoneMessageTemplateId"
:templateName="form.phoneMessageTemplateName"
></message>
</span>
<span v-else>
<message
style="width: 200px"
@on-template="messageontemplateMESSAGE"
:templateId="form.phoneMessageTemplateId"
:templateName="form.phoneMessageTemplateName"
></message>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="TemporaryStorage"> </el-button>
<el-button type="primary" @click="dialogVisible = true" v-if="form.specialDiseaseNodeId">审核完成 {{ agreeNumber ?
agreeNumber : "0" }} /
{{ totalNumber ? totalNumber : "0" }}</el-button>
<el-button
type="primary"
@click="dialogVisible = true"
v-if="form.specialDiseaseNodeId"
>审核完成 {{ agreeNumber ? agreeNumber : "0" }} /
{{ totalNumber ? totalNumber : "0" }}</el-button
>
</div>
<el-dialog title="提交审核完成" :visible.sync="dialogVisible" width="30%" :before-close="handleClose">
<el-form ref="routeform" :model="routeform" label-width="120px" :rules="rules">
<el-dialog
title="提交审核完成"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose"
>
<el-form
ref="routeform"
:model="routeform"
label-width="120px"
:rules="rules"
>
<el-form-item label="节点审核状态" prop="routeCheckStatus">
<el-radio v-model="routeform.routeCheckStatus" label="AGREE">同意</el-radio>
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE">不同意</el-radio>
<el-radio v-model="routeform.routeCheckStatus" label="AGREE"
>同意</el-radio
>
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE"
>不同意</el-radio
>
</el-form-item>
<el-form-item label="节点审核备注">
<el-input type="textarea" :rows="2" placeholder="请输入节点审核备注" v-model="routeform.routeCheckRemark">
<el-input
type="textarea"
:rows="2"
placeholder="请输入节点审核备注"
v-model="routeform.routeCheckRemark"
>
</el-input>
</el-form-item>
</el-form>
@ -274,6 +522,8 @@
import wangeditor from "../components/wangEditor.vue";
import question from "../components/question.vue";
import message from "../components/message.vue";
import scripts from "../components/script.vue";
import propaganda from "../components/propaganda.vue";
import officialAccount from "../components/officialAccount.vue";
import miniProgram from "../components/miniProgram.vue";
@ -294,12 +544,16 @@ export default {
question,
propaganda,
message,
scripts,
officialAccount,
miniProgram,
},
name: "specialDiseaseNode",
data() {
return {
optionslist: [],
optionslistS: [],
value: "",
options: [],
dialogVisible: false,
routeform: {
@ -355,11 +609,43 @@ export default {
},
created() {
this.infolist();
this.infolistword();
this.infolistMESSAGE();
},
beforeDestroy() { },
beforeDestroy() {},
watch: {},
mounted() { },
mounted() {},
methods: {
changelist(e) {
console.log(e, "e");
if (e == "NOT_SEND_MESSAGE ") {
console.log(this.form,'this.form')
this.$refs.refname.listDisease()
// this.form.phoneMessageTemplateId
// this.form.phoneMessageTemplateId = "";
// this.form.phoneMessageTemplateName = "";
}
},
listDisease(){
this.form.phoneMessageTemplateId = "";
this.form.phoneMessageTemplateName = "";
},
infolistword() {
var dictType = "text_message_remind";
getAgencytype(dictType).then((res) => {
this.optionslist = res.data;
// this.taskinfo();
});
},
infolistMESSAGE() {
var dictType = "redial_times";
getAgencytype(dictType).then((res) => {
this.optionslistS = res.data;
// this.taskinfo();
});
},
changeoptions(e) {
this.parentDictCode = this.options.find(
(el) => el.dictValue == e
@ -427,6 +713,15 @@ export default {
taskSubdivision: "",
taskSubdivisionName: "",
taskStatus: "",
phoneAgencyName: null,
phoneRedialTimes: null,
phoneTimeInterval: null,
phoneMessageRemind: null,
phoneMessageTemplateId: null,
phoneMessageTemplateName: null,
phonePushSign: "0",
phoneTemplateId: "",
phoneTemplateName: "",
secondClassifyDescribe: "",
executionTime: "",
appletPushSign: "0",
@ -441,8 +736,10 @@ export default {
],
});
this.form = this.lists[0].list[0];
console.log(this.form, "6555555555555555");
}
},
handleData(list, key, keytwo) {
//
let keysArr = list.map((item) => {
@ -483,7 +780,7 @@ export default {
},
//wangeditor
onNodeContent(item) {
console.log(item, 'itemfu')
console.log(item, "itemfu");
this.form.nodeContent = item.nodeContent;
},
//
@ -498,6 +795,19 @@ export default {
this.form.messageTemplateName = item.templateName;
this.form.messagePreview = item.templateContent;
},
//
messageontemplateMESSAGE(item) {
console.log(item, "2222222");
this.form.phoneMessageTemplateId = item.templateId;
this.form.phoneMessageTemplateName = item.templateName;
this.form.messagePreview = item.templateContent;
},
//
messageontemplateword(item) {
this.form.phoneTemplateId = item.templateId;
this.form.phoneTemplateName = item.templateName;
this.form.messagePreview = item.templateContent;
},
//
officialAccountontemplate(item) {
this.form.officialTemplateId = item.templateId;
@ -506,7 +816,10 @@ export default {
},
//
TemporaryStorage() {
if (this.form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' && this.form.taskSubdivisiontemplateType != 'PROPAGANDA') {
if (
this.form.taskSubdivisiontemplateType != "QUESTIONNAIRE" &&
this.form.taskSubdivisiontemplateType != "PROPAGANDA"
) {
this.$refs.wangeditor.emit();
}
this.$confirm(
@ -527,10 +840,10 @@ export default {
this.lists.forEach((e) => {
e.list.length > 0
? e.list.forEach((el) => {
el.routeNodeDay = e.routeNodeDay;
el.routeNodeName = e.routeNodeName;
this.updata.specialDiseaseNodeList.push(el);
})
el.routeNodeDay = e.routeNodeDay;
el.routeNodeName = e.routeNodeName;
this.updata.specialDiseaseNodeList.push(el);
})
: "";
});
this.updata.specialDiseaseNodeList =
@ -546,6 +859,7 @@ export default {
this.info();
loading.close();
this.$modal.msgSuccess("暂存成功!");
console.log(this.form, "666666666");
});
setTimeout(() => {
loading.close();
@ -563,7 +877,10 @@ export default {
this.form.templateName = item.templateName;
},
bottomclickevent(uitem, index, uindex) {
if (this.form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' && this.form.taskSubdivisiontemplateType != 'PROPAGANDA') {
if (
this.form.taskSubdivisiontemplateType != "QUESTIONNAIRE" &&
this.form.taskSubdivisiontemplateType != "PROPAGANDA"
) {
this.$refs.wangeditor.emit();
}
setTimeout(() => {
@ -586,6 +903,11 @@ export default {
this.info();
});
},
//
changephoneMessageRemind(e) {
console.log(e, "e");
// if
},
//
changeTaskType(code, taskSubdivision) {
let id = this.selectTaskTypeList?.find((e) => e.taskTypeCode == code)?.id;
@ -785,8 +1107,6 @@ export default {
padding: 20px 50px 0px 20px;
.flextwo {
display: flex;
align-items: center;
margin-top: 20px;
.text {
@ -828,15 +1148,19 @@ export default {
.flex {
display: flex;
width: 100%;
align-items: center;
justify-content: space-between;
.pushMethod {
height: 30px;
margin-top: 30px;
line-height: 30px;
font-size: 13px;
color: #64666a;
.spanname {
pointer-events: none;
}
::v-deep .el-input__inner {
color: black;
font-size: 13px;
@ -972,7 +1296,6 @@ export default {
::v-deep .el-card {
margin-top: 20px !important;
}
.container {
padding: 20px;
}