Commit c53f2faf authored by gengchunlei's avatar gengchunlei

居民端小程序 v1.2 通用随访字段 逻辑处理调整

parent 196ee02e
......@@ -532,17 +532,20 @@ export default {
const {
personId,
visitWay,
visitWayRules,
visitWayRules ,
groupsArrays,
sendNumber,
...others
} = this.form
let par = {
visitWay,
visitWayRules,
groupsArrays,
sendNumber,
residentInfoId: this.form.residentInfoId,
residentsRecord: {
...others,
groupsArrays: this.info.groupsArrays,
id: this.form.personId
}
}
......
......@@ -251,8 +251,25 @@ export default {
onSubmit() {
return new Promise((resolve, reject) => {
this.$refs.form.validate().then(() => {
const { isSmsIsWx = [], ...others} = this.form
let isSms = 2
let isWx = 2
let wxTel = ''
if (isSmsIsWx.length && this.showPush) {
if (isSmsIsWx.includes(1)) {
isWx = 1
wxTel = this.modeEnumList.weixinTel
}
if (isSmsIsWx.includes(2)) {
isSms = 1
}
}
let par = {
...this.form
...others,
isSms,
isWx,
isSmsIsWx,
sendNumber: wxTel,
}
resolve(par)
}).catch((e) => {
......
......@@ -2,8 +2,7 @@
<van-form ref='form'
class='grow flex flex-col' style='min-height: 1px;flex-wrap: nowrap;'>
<div class='flex flex-col' v-if='fileType?.includes(1)'>
<div class='health mt-2'>
<div>
<!-- 无选项-->
<div class='health-cell mt-2' v-for="item in form.contentList.filter(e => e.templateModeTrans == '无')">
<div class='no-req-label'>{{ contentTitle }}</div>
......@@ -47,7 +46,8 @@
<div class='health-cell mt-2' v-for="item in form.contentList.filter(e => e.templateModeTrans != '无')">
<template v-if='item.templateMode === 5'>
<div class='no-req-label'>药物指导</div>
<div v-for='(item, index) in form.drugsList' :key='item._id' :style="{marginTop: index == 0 ? '0': '.16rem'}">
<div v-for='(item, index) in form.drugsList' :key='item._id'
:style="{marginTop: index == 0 ? '0': '.16rem'}">
<div class='text-driver' v-if='index'></div>
<DocDrug v-model:value='item.drugsCode' placeholder='拼音码查询药品'
:valueName="selectData.drugsList ? selectData.drugsList[index]?.helpCode : ''"
......@@ -152,16 +152,21 @@
@play='e => activeMediaUrl = e.annexUrl'
remove
@onRemove='getMP3RemoveInfo'
class='mt-2'
/>
</div>
</div>
<div v-if='fileType.includes(3)' class='w-full'>
<div class='health-cell mt-2'>
<div class='no-req-label'>视频</div>
<Mp4 :files='_video' :activeMediaUrl='activeMediaUrl'
@play='e => activeMediaUrl = e.annexUrl'
remove
@onRemove='getMP4RemoveInfo'
class='mt-2'
/>
</div>
</div>
</van-form>
</template>
......@@ -286,7 +291,7 @@ export default {
]
let infoC = info.contentList || []
//判断父组件的数据里是否存在 无 的选项
let resList = infoC.filter(item => item.templateMode !=1)
let resList = infoC.filter(item => item.templateMode != 1)
if (!resList.length) {
contentList = [...initC, ...infoC]
} else {
......@@ -295,9 +300,28 @@ export default {
const drugsList = info?.drugsList?.length ? info.drugsList.map(e => {
if (e.id) {
e._id = e.id
e.doseUnitName = this.store.getDictValue(this.store.getDict('CP00081'), e.doseUnit)
e.frequencyName = this.store.getDictValue(this.store.getDict('CP00084'), e.frequency)
e.usageMethodName = this.store.getDictValue(this.store.getDict('CP00083'), e.usageMethod)
}
return e
}) : []
//给更多内容赋值
let contentSelectName = ''
let contentSelectNameList = []
this.checkContentSelect = []
contentList.forEach(item => {
if (item.templateMode !=1) {
this.checkContentSelect.push(item.templateMode)
contentSelectNameList.push(item.templateModeTrans)
}
if (contentSelectNameList && contentSelectNameList.length) {
contentSelectName = contentSelectNameList.join()
}
})
const form = {
id: info.id,
templateType: info.templateType,
......@@ -313,7 +337,8 @@ export default {
// 存放上传后返回的id
_video: JSON.parse(JSON.stringify(info._video || [])),
_audio: JSON.parse(JSON.stringify(info._audio || [])),
drugSelect: 1
drugSelect: 1,
contentSelectName: contentSelectName,
}
return form
},
......@@ -457,7 +482,7 @@ export default {
const drugsList = query.drugsList
let str = ''
drugsList.forEach(e => {
str = `药品名:${e.drugsName} 剂量:${e.dose} ${this.$dictValue('CP00081', e.doseUnit)} 频次:${this.$dictValue('CP00084', e.frequency)} 用法:${this.$dictValue('CP00083', e.usageMethod)}\n` + str
str = `药品名:${e.drugsName} 剂量:${e.dose} ${this.store.getDictValue('CP00081', e.doseUnit)} 频次:${this.store.getDictValue('CP00084', e.frequency)} 用法:${this.store.getDictValue('CP00083', e.usageMethod)}\n` + str
})
item.templateContent = str
}
......@@ -499,7 +524,7 @@ export default {
const drugsList = query.drugsList
let str = ''
drugsList.forEach(e => {
str = `药品名:${e.drugsName} 剂量:${e.dose} ${this.$dictValue('CP00081', e.doseUnit)} 频次:${this.$dictValue('CP00084', e.frequency)} 用法:${this.$dictValue('CP00083', e.usageMethod)}\n` + str
str = `药品名:${e.drugsName} 剂量:${e.dose} ${this.store.getDictValue('CP00081', e.doseUnit)} 频次:${this.store.getDictValue('CP00084', e.frequency)} 用法:${this.store.getDictValue('CP00083', e.usageMethod)}\n` + str
})
item.templateContent = str
}
......
......@@ -186,6 +186,7 @@ export default {
this.modeEnumList = getModeEnum(this.info)
},
async toNext(val) {
window.scrollTo(0, 0)
if (val == 2) {
this.firstForm = await this.$refs.baseInfo.onSubmit()
}
......@@ -224,33 +225,10 @@ export default {
let baseInfo = await this.$refs.baseInfo.onSubmit()
let generalFUForm = await this.$refs.generalFUForm.onSubmit()
let commonBottom = await this.$refs.commonBottom.onSubmit()
let imgInput1List = []
let imgInput2List = []
let uploadVisitRecord = ''
let sceneVisitImage = ''
//图片上传
if (generalFUForm.imgInput1.length) {
imgInput1List = await this.upload(generalFUForm.imgInput1)
}
if (generalFUForm.imgInput2.length) {
imgInput2List = await this.upload(generalFUForm.imgInput2)
}
if (generalFUForm.img1.length) {
let img1List = this.baseImgHandle(generalFUForm.img1)
let lsit1 = [...imgInput1List, ...img1List]
uploadVisitRecord = Array.from(new Set(lsit1)).join()
}
if (generalFUForm.img2.length) {
let img2List = this.baseImgHandle(generalFUForm.img2)
let lsit2 = [...imgInput2List, ...img2List]
sceneVisitImage = Array.from(new Set(lsit2)).join()
}
let params = {
...baseInfo,
...generalFUForm,
...commonBottom,
uploadVisitRecord,
sceneVisitImage,
...baseInfo,
source: 2
}
if (this.info.id) {
......
......@@ -287,3 +287,17 @@ export function isResidentInfo() {
}
return res
}
//一维数组去重
export function uniqueArr(arr =[], key= '') {
let res = []
if (key) {
arr.forEach(item => {
let tmp = res.filter(i => i[key] == item[key])
if (!tmp.length) {
res.push(item)
}
})
}
return res
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment