Commit 79ea1e7e authored by sjf1256754123's avatar sjf1256754123

demo

parent bc984288
...@@ -29,6 +29,31 @@ ...@@ -29,6 +29,31 @@
</picker> </picker>
</view> </view>
</template> </template>
<template v-else-if="item.type == 'pickerMore'">
<view class="margin-top" :key="index">
<uni-collapse>
<uni-collapse-item :title="index+1 +'、' + item.label" :open="true" :required="item.required">
<view class="padding-lr">
<view class="uni-list">
<checkbox-group>
<label class="uni-list-cell uni-list-cell-pd" v-for="(itemCheck,indexCheck) in item.opts" :key="itemCheck.value"
@click="checkboxChange(indexCheck,item.opts,itemCheck,item.value)">
<view class="list-item">
<view class="fl">
<checkbox :value="itemCheck.value" :checked="itemCheck.checked" />
</view>
<view style="padding-left:60upx">{{itemCheck.label}}</view>
</view>
</label>
</checkbox-group>
</view>
</view>
</uni-collapse-item>
</uni-collapse>
</view>
</template>
<template v-else-if="item.type == 'date'"> <template v-else-if="item.type == 'date'">
<view class="cu-form-group margin-top padding-rl" v-show="!item.hidden" :key="item.value"> <view class="cu-form-group margin-top padding-rl" v-show="!item.hidden" :key="item.value">
<view :class="item.titleClass"><span style="color:red;display: inline-block; vertical-align:inherit;margin-right:4upx" v-if="item.required">*</span>{{index+1}}{{item.label}}</view> <view :class="item.titleClass"><span style="color:red;display: inline-block; vertical-align:inherit;margin-right:4upx" v-if="item.required">*</span>{{index+1}}{{item.label}}</view>
...@@ -64,6 +89,53 @@ ...@@ -64,6 +89,53 @@
</view> </view>
</view> </view>
</template> </template>
<view class="cu-form-group margin-top-sm">
<view class="uni-padding-wrap uni-common-mt">
<view class="padding-top padding-bottom">
<checkbox-group @change="checkboxChange($event,'agree')">
<label>
<checkbox value="A" :checked="form.agree == 'a'" class="fl" style="margin-top:4upx" />
<view style="padding-left:60upx;padding-top:6upx" @click="modalName = 'Modal'">
我已阅读理解了全部情况,我同意参加
</view>
</label>
</checkbox-group>
</view>
</view>
</checkbox-group>
</view>
<view class="cu-modal" :class="modalName=='Modal'?'show':''">
<view class="cu-dialog">
<view class="cu-bar bg-white justify-end text-bold">
<view class="content">知情同意书</view>
<view class="action" @tap="modalName = ''">
<text class="cuIcon-close text-black"></text>
</view>
</view>
<view class="padding-xl green-word">
<div class="text-left">
<p>在您决定是否参加该筛查(或随访)之前,请仔细阅读以下内容。您可以和您的亲属、朋友一起讨论,或请医生给予解释,然后做出决定。</p>
<p>&nbsp;</p>
<p class="text-bold">一、筛查开展的背景和目的</p>
<p>癌症是严重威胁人民生命和健康的疾病,也是我国居民的主要死亡原因之一。目前因出现临床症状而就诊的患者多为中晚期病人,治疗费用昂贵而且效果不佳,给病人和家属带来极大的痛苦和沉重的经济负担。</p>
<p>医学研究和临床实践证实,癌症的发生发展有一个过程,可以通过科学有效的技术方法对人群进行筛查,及时发现癌前病变及早期癌,经有效治疗,可以阻断癌前病变的发展。接受早诊早治的患者痛苦小,经济花费少,而且患者可以很快恢复健康,像健康人一样工作生活。早诊早治是目前控制癌症的最有效的途径。</p>
<p>&nbsp;</p>
<p class="text-bold">四、哪些人不宜参加筛查</p>
<p>具有下列情况的,不宜参加筛查:①严重心脏病,心力衰竭;②重症呼吸道疾病,呼吸困难,哮喘持续状态;③有严重脑部疾病者;④咽后壁脓肿,严重脊柱畸形,或主动脉瘤患者;⑤身体虚弱不能耐受内镜检查,或难以镇静自控者;⑥上消化道腐蚀性炎症急性期,或疑为上消化道穿孔者;⑦大量腹水、严重腹胀,或有重度食管静脉曲张者;⑧有出血倾向者(凝血功能不正常),或正在服用抗凝血药物者,后者须停药一周后检查出凝血功能正常方可进行内镜检查;⑨妊娠期妇女;⑨40-69岁有碘过敏史者等。</p>
<p>&nbsp;</p>
<p class="text-bold">五、参加筛查可能带来的不适与不便</p>
<p>内镜检查和治疗时一般很安全。但也偶有检查和治疗过程中发生食管或胃出血、穿孔及药物反应(如碘过敏)等。对这些情况医生都有很好的预防措施和应急预案,即使发生,罕有危及生命的可能。如果您想进一步了解情况,请与检查小组的医生联系。</p>
<p>&nbsp;</p>
<p class="text-bold">六、保密原则</p>
<p>您的所有个人资料将是保密的,由承担该筛查工作的医院妥善保存。任何公开报告将不会披露您的个人信息。我们将在法律允许的范围内,尽一切努力保护您的隐私。</p>
<p>我们将保存所采取的标本资料,并可能在以后的研究中使用,标本上贴有带编码的标签,不会出现您的姓名,您的所有信息将会保密。</p>
</div>
<button @click="modalName = ''" class="cu-btn block bg-blue margin-tb-sm lg">我知道了</button>
</view>
</view>
</view>
<view class="padding"> <view class="padding">
<button form-type="submit" class="cu-btn block bg-blue margin-tb-sm lg">提 交</button> <button form-type="submit" class="cu-btn block bg-blue margin-tb-sm lg">提 交</button>
</view> </view>
...@@ -82,13 +154,14 @@ ...@@ -82,13 +154,14 @@
}, },
data() { data() {
return { return {
modalName:'',
id:'', id:'',
radio:[], radio:[],
shanghaiList:[ shanghaiList:[
{ {
label:'是否离沪', label:'是否离沪',
required:true, required:true,
value:'relativesGastricCount', value:'left',
titleClass:'title', titleClass:'title',
type:'picker', type:'picker',
opts:[{value:'a',label:''},{value:'b',label:''}] opts:[{value:'a',label:''},{value:'b',label:''}]
...@@ -96,7 +169,7 @@ ...@@ -96,7 +169,7 @@
{ {
label:'离沪原因', label:'离沪原因',
required:true, required:true,
value:'relativesGastricCount', value:'leftReason',
titleClass:'title', titleClass:'title',
type:'picker', type:'picker',
opts:[{value:'a',label:'探亲'},{value:'b',label:'出差'},{value:'b',label:'旅游'},{value:'b',label:'其他'}] opts:[{value:'a',label:'探亲'},{value:'b',label:'出差'},{value:'b',label:'旅游'},{value:'b',label:'其他'}]
...@@ -104,14 +177,14 @@ ...@@ -104,14 +177,14 @@
{ {
label:'离沪出发日期', label:'离沪出发日期',
required:true, required:true,
value:'relativesGastricCount2222', value:'leftDate',
titleClass:'title', titleClass:'title',
type:'date', type:'date',
}, },
{ {
label:'离沪方式', label:'离沪方式',
required:true, required:true,
value:'relativesGastricCount2222', value:'leftVehicle',
titleClass:'title', titleClass:'title',
type:'date', type:'date',
opts:[{value:'a',label:'火车 '},{value:'飞机',label:''},{value:'客车',label:''},{value:'自驾',label:''}] opts:[{value:'a',label:'火车 '},{value:'飞机',label:''},{value:'客车',label:''},{value:'自驾',label:''}]
...@@ -119,7 +192,7 @@ ...@@ -119,7 +192,7 @@
{ {
label:'离沪车次/航班', label:'离沪车次/航班',
required:true, required:true,
value:'relativesGastricAge', value:'leftVehicleNum',
titleClass:'title', titleClass:'title',
placeholder:'请输入地址', placeholder:'请输入地址',
type:'input', type:'input',
...@@ -127,15 +200,14 @@ ...@@ -127,15 +200,14 @@
{ {
label:'离沪到达日期', label:'离沪到达日期',
required:true, required:true,
value:'relativesGastricCount2222', value:'leftReachDate',
titleClass:'title', titleClass:'title',
type:'date', type:'date',
opts:[{value:'a',label:''},{value:'b',label:''}]
}, },
{ {
label:'离沪目的地', label:'离沪目的地',
required:true, required:true,
value:'relativesGastricAge', value:'leftTarget',
titleClass:'title', titleClass:'title',
placeholder:'请输入地址', placeholder:'请输入地址',
type:'input', type:'input',
...@@ -143,7 +215,7 @@ ...@@ -143,7 +215,7 @@
{ {
label:'离沪具体地址', label:'离沪具体地址',
required:true, required:true,
value:'relativesGastricAge', value:'leftAddress',
titleClass:'title', titleClass:'title',
placeholder:'请输入地址', placeholder:'请输入地址',
type:'input', type:'input',
...@@ -151,7 +223,7 @@ ...@@ -151,7 +223,7 @@
{ {
label:'离沪同行者姓名(没有填无)', label:'离沪同行者姓名(没有填无)',
required:true, required:true,
value:'relativesGastricAge', value:'leftDependentNames',
titleClass:'title', titleClass:'title',
placeholder:'请输入', placeholder:'请输入',
type:'input', type:'input',
...@@ -159,7 +231,7 @@ ...@@ -159,7 +231,7 @@
{ {
label:'离沪同行者联系方式(没有填无)', label:'离沪同行者联系方式(没有填无)',
required:true, required:true,
value:'relativesGastricAge', value:'leftDependentPhones',
titleClass:'title', titleClass:'title',
placeholder:'请输入', placeholder:'请输入',
type:'input', type:'input',
...@@ -167,7 +239,7 @@ ...@@ -167,7 +239,7 @@
{ {
label:'是否返沪', label:'是否返沪',
required:true, required:true,
value:'relativesGastricCount', value:'backed',
titleClass:'title', titleClass:'title',
type:'picker', type:'picker',
opts:[{value:'a',label:''},{value:'b',label:''}] opts:[{value:'a',label:''},{value:'b',label:''}]
...@@ -175,7 +247,7 @@ ...@@ -175,7 +247,7 @@
{ {
label:'返沪出发地', label:'返沪出发地',
required:true, required:true,
value:'relativesGastricAge', value:'backFrom',
titleClass:'title', titleClass:'title',
placeholder:'请输入', placeholder:'请输入',
type:'input', type:'input',
...@@ -183,14 +255,14 @@ ...@@ -183,14 +255,14 @@
{ {
label:'返沪出发日期', label:'返沪出发日期',
required:true, required:true,
value:'relativesGastricCount2222', value:'backDate',
titleClass:'title', titleClass:'title',
type:'date', type:'date',
}, },
{ {
label:'返沪方式', label:'返沪方式',
required:true, required:true,
value:'relativesGastricCount2222', value:'backVehicle',
titleClass:'title', titleClass:'title',
type:'picker', type:'picker',
opts:[{value:'a',label:'火车 '},{value:'飞机',label:''},{value:'客车',label:''},{value:'自驾',label:''}] opts:[{value:'a',label:'火车 '},{value:'飞机',label:''},{value:'客车',label:''},{value:'自驾',label:''}]
...@@ -198,7 +270,7 @@ ...@@ -198,7 +270,7 @@
{ {
label:'返沪车次/航班', label:'返沪车次/航班',
required:true, required:true,
value:'relativesGastricAge', value:'backVehicleNum',
titleClass:'title', titleClass:'title',
placeholder:'请输入地址', placeholder:'请输入地址',
type:'input', type:'input',
...@@ -206,14 +278,14 @@ ...@@ -206,14 +278,14 @@
{ {
label:'返沪到达日期', label:'返沪到达日期',
required:true, required:true,
value:'relativesGastricCount2222', value:'backReachedDate',
titleClass:'title', titleClass:'title',
type:'date', type:'date',
}, },
{ {
label:'返沪同行者姓名(没有填无)', label:'返沪同行者姓名(没有填无)',
required:true, required:true,
value:'relativesGastricAge', value:'backDependentNames',
titleClass:'title', titleClass:'title',
placeholder:'请输入', placeholder:'请输入',
type:'input', type:'input',
...@@ -221,7 +293,7 @@ ...@@ -221,7 +293,7 @@
{ {
label:'返沪同行者联系方式(没有填无)', label:'返沪同行者联系方式(没有填无)',
required:true, required:true,
value:'relativesGastricAge', value:'backDependentPhones',
titleClass:'title', titleClass:'title',
placeholder:'请输入', placeholder:'请输入',
type:'input', type:'input',
...@@ -229,11 +301,20 @@ ...@@ -229,11 +301,20 @@
{ {
label:'当前状况', label:'当前状况',
required:true, required:true,
value:'relativesGastricCount', value:'currentStatus',
titleClass:'title', titleClass:'title',
type:'picker', type:'picker',
opts:[{value:'a',label:'已经确诊'},{value:'b',label:'疑似诊断'},{value:'b',label:'亲密接触者'},{value:'b',label:'正在接受集中医学观察'},{value:'b',label:'居家观察'},{value:'b',label:'已解除集中医学观察'},{value:'b',label:'无上述情况'}] opts:[{value:'a',label:'已经确诊'},{value:'b',label:'疑似诊断'},{value:'b',label:'亲密接触者'},{value:'b',label:'正在接受集中医学观察'},{value:'b',label:'居家观察'},{value:'b',label:'已解除集中医学观察'},{value:'b',label:'无上述情况'}]
}, },
{
label:'症状',
required:true,
value:'symptom',
titleClass:'title',
type:'pickerMore',
opts:[{value:'发热',label:'发热'},{value:'咳嗽',label:'咳嗽'},{value:'流涕',label:'流涕'},{value:'咽痛',label:'咽痛'},{value:'咳痰',label:'咳痰'},{value:'胸痛',label:'胸痛'},{value:'肌肉酸痛/关节痛',label:'肌肉酸痛/关节痛'},{value:'气促',label:'气促'},{value:'腹泻',label:'腹泻'},{value:'无上述症状',label:'无上述症状'}]
},
{ {
label:'湖北接触史', label:'湖北接触史',
required:true, required:true,
...@@ -328,12 +409,201 @@ ...@@ -328,12 +409,201 @@
label:'计划复工日期', label:'计划复工日期',
hidden:true, hidden:true,
required:true, required:true,
value:'relativesGastricCount2222', value:'planReturnDate',
titleClass:'title', titleClass:'title',
type:'date' type:'date'
} },
{
label:'是否离沪',
required:true,
value:'left',
titleClass:'title',
type:'picker',
opts:[{value:'a',label:''},{value:'b',label:''}]
},
{
label:'离沪原因',
required:true,
value:'leftReason',
titleClass:'title',
type:'picker',
opts:[{value:'a',label:'探亲'},{value:'b',label:'出差'},{value:'b',label:'旅游'},{value:'b',label:'其他'}]
},
{
label:'离沪出发日期',
required:true,
value:'leftDate',
titleClass:'title',
type:'date',
},
{
label:'离沪方式',
required:true,
value:'leftVehicle',
titleClass:'title',
type:'date',
opts:[{value:'a',label:'火车 '},{value:'飞机',label:''},{value:'客车',label:''},{value:'自驾',label:''}]
},
{
label:'离沪车次/航班',
required:true,
value:'leftVehicleNum',
titleClass:'title',
placeholder:'请输入地址',
type:'input',
},
{
label:'离沪到达日期',
required:true,
value:'leftReachDate',
titleClass:'title',
type:'date',
opts:[{value:'a',label:''},{value:'b',label:''}]
},
{
label:'离沪目的地',
required:true,
value:'leftTarget',
titleClass:'title',
placeholder:'请输入地址',
type:'input',
},
{
label:'离沪具体地址',
required:true,
value:'leftAddress',
titleClass:'title',
placeholder:'请输入地址',
type:'input',
},
{
label:'离沪同行者姓名(没有填无)',
required:true,
value:'leftDependentNames',
titleClass:'title',
placeholder:'请输入',
type:'input',
},
{
label:'离沪同行者联系方式(没有填无)',
required:true,
value:'leftDependentPhones',
titleClass:'title',
placeholder:'请输入',
type:'input',
},
{
label:'是否返沪',
required:true,
value:'backed',
titleClass:'title',
type:'picker',
opts:[{value:'a',label:''},{value:'b',label:''}]
},
{
label:'返沪出发地',
required:true,
value:'backFrom',
titleClass:'title',
placeholder:'请输入',
type:'input',
},
{
label:'返沪出发日期',
required:true,
value:'backDate',
titleClass:'title',
type:'date',
},
{
label:'返沪方式',
required:true,
value:'backVehicle',
titleClass:'title',
type:'picker',
opts:[{value:'a',label:'火车 '},{value:'飞机',label:''},{value:'客车',label:''},{value:'自驾',label:''}]
},
{
label:'返沪车次/航班',
required:true,
value:'backVehicleNum',
titleClass:'title',
placeholder:'请输入地址',
type:'input',
},
{
label:'返沪到达日期',
required:true,
value:'backReachedDate',
titleClass:'title',
type:'date',
},
{
label:'返沪同行者姓名(没有填无)',
required:true,
value:'backDependentNames',
titleClass:'title',
placeholder:'请输入',
type:'input',
},
{
label:'返沪同行者联系方式(没有填无)',
required:true,
value:'backDependentPhones',
titleClass:'title',
placeholder:'请输入',
type:'input',
},
{
label:'当前状况',
required:true,
value:'currentStatus',
titleClass:'title',
type:'picker',
opts:[{value:'a',label:'已经确诊'},{value:'b',label:'疑似诊断'},{value:'b',label:'亲密接触者'},{value:'b',label:'正在接受集中医学观察'},{value:'b',label:'居家观察'},{value:'b',label:'已解除集中医学观察'},{value:'b',label:'无上述情况'}]
},
{
label:'症状',
required:true,
value:'symptom',
titleClass:'title',
type:'pickerMore',
opts:[{value:'发热',label:'发热'},{value:'咳嗽',label:'咳嗽'},{value:'流涕',label:'流涕'},{value:'咽痛',label:'咽痛'},{value:'咳痰',label:'咳痰'},{value:'胸痛',label:'胸痛'},{value:'肌肉酸痛/关节痛',label:'肌肉酸痛/关节痛'},{value:'气促',label:'气促'},{value:'腹泻',label:'腹泻'},{value:'以上均无',label:'以上均无'}]
},
{
label:'湖北接触史',
required:true,
value:'relativesGastricCount',
titleClass:'title',
type:'radio',
opts:[{value:'已经确诊',label:'已经确诊'},{value:'疑似诊断',label:'疑似诊断'},{value:'亲密接触者',label:'亲密接触者'},{value:'正在接受集中医学观察',label:'正在接受集中医学观察'},{value:'居家观察',label:'居家观察'},{value:'已解除集中医学观察',label:'已解除集中医学观察'}]
},
{
label:'患者接触史',
required:true,
value:'relativesGastricCount',
titleClass:'title',
type:'radio',
opts:[{value:'接触过已确诊或疑似患者',label:'接触过已确诊或疑似患者'},{value:'家属接触过已确诊或疑似患者',label:'家属接触过已确诊或疑似患者'}]
},
{
label:'隔离地址',
required:true,
value:'quarantineAdress',
titleClass:'title',
placeholder:'请输入',
type:'input',
},
{
label:'隔离开始日期',
required:true,
value:'quarantineDate',
titleClass:'title',
type:'date',
},
], ],
form:{ form:{
agree:'',
orgId:-1, orgId:-1,
department:'', department:'',
position:'', position:'',
...@@ -350,10 +620,6 @@ ...@@ -350,10 +620,6 @@
}, },
onLoad(option) { onLoad(option) {
// this.id = option.id || ''
// if(option.id){
// this.getInfo(option.id)
// }
this.getOrg() this.getOrg()
}, },
...@@ -384,17 +650,25 @@ ...@@ -384,17 +650,25 @@
}, },
// 获取信息 // 获取信息
getInfo(id){ getInfo(id){
// this.$http.get(`/ewell-gastric-cancer-data/report/selectReportBySampleId?id=${id}`).then(res => {
// const d = res.data
// if(d.code == 1){
// this.form = Object.assign(this.form,d.object.reportContent.data)
// this.isShowChild()
// }
// }).catch(err => {
// console.log(err)
// })
},
},
// 更新复选框绑定的表单内容
checkboxChange(index, checkList, obj, prop) {
for (var i = 0, lenI = checkList.length; i < lenI; ++i) {
if (index == i) {
this.$set(checkList[i], 'checked', !checkList[i].checked)
}
}
// 处理以上均无情况
if (obj.label == '以上均无') {
for (var i = 0, lenI = checkList.length; i < lenI; ++i) {
this.$set(checkList[i], 'checked', false)
}
this.$set(checkList[checkList.length - 1], 'checked', true)
} else {
this.$set(checkList[checkList.length - 1], 'checked', false)
}
},
radioChange(val,prop){ radioChange(val,prop){
this.$set(this.form,prop,val) this.$set(this.form,prop,val)
this.isShowChild() this.isShowChild()
...@@ -419,41 +693,41 @@ ...@@ -419,41 +693,41 @@
// 提交信息 // 提交信息
formSubmit(){ formSubmit(){
console.log(this.form) console.log(this.form)
let flag = true // let flag = true
let msg = '' // let msg = ''
for (let i = 0; i < this.list.length; i++) { // for (let i = 0; i < this.list.length; i++) {
if(this.list[i].required){ // if(this.list[i].required){
if(!this.form[this.list[i].value]){ // if(!this.form[this.list[i].value]){
flag = false // flag = false
uni.showToast({ // uni.showToast({
icon: 'none', // icon: 'none',
title: ""+(i+1)+"项有必填数据未填写" // title: "第"+(i+1)+"项有必填数据未填写"
}) // })
break // break
} // }
if(!flag){ // if(!flag){
break // break
} // }
} // }
} // }
if(!flag){ // if(!flag){
return false // return false
}else{ // }else{
this.$http.post(`/ewell-gastric-cancer-data/wechat/report`,obj).then(res => { // this.$http.post(`/ewell-gastric-cancer-data/wechat/report`,obj).then(res => {
const d = res.data // const d = res.data
if(d.code == 1){ // if(d.code == 1){
}else{ // }else{
uni.showToast({ // uni.showToast({
icon: 'none', // icon: 'none',
title: d.message // title: d.message
}) // })
} // }
}).catch(err => { // }).catch(err => {
console.log(err) // console.log(err)
}) // })
} // }
} }
} }
} }
......
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