Merge branches 'master' and 'xzj' of https://gitee.com/darlk/ShengTangManage into xzj

This commit is contained in:
xiezhijun 2021-06-27 21:27:28 +08:00
commit ea75eddab0
17 changed files with 699 additions and 235 deletions

View File

@ -57,6 +57,10 @@ public class SysCustomerHealthyExtended extends BaseEntity
@Excel(name = "焦虑状态评估") @Excel(name = "焦虑状态评估")
private String anxietyStateMessage; private String anxietyStateMessage;
/** 月经不调、多囊信息 */
@Excel(name = "月经不调、多囊信息")
private String menstruationMessage;
/** 删除标识 0未删除 1已删除 */ /** 删除标识 0未删除 1已删除 */
private Long delFlag; private Long delFlag;
} }

View File

@ -15,11 +15,12 @@
<result property="depressedStateMessage" column="depressed_state_message" /> <result property="depressedStateMessage" column="depressed_state_message" />
<result property="bloodPressureMessage" column="blood_pressure_message" /> <result property="bloodPressureMessage" column="blood_pressure_message" />
<result property="anxietyStateMessage" column="anxiety_state_message" /> <result property="anxietyStateMessage" column="anxiety_state_message" />
<result property="menstruationMessage" column="menstruation_message" />
<result property="delFlag" column="del_flag" /> <result property="delFlag" column="del_flag" />
</resultMap> </resultMap>
<sql id="selectSysCustomerHealthyExtendedVo"> <sql id="selectSysCustomerHealthyExtendedVo">
select id, healthy_id, waist, hipline, eat_fruits_message, long_eat_drug_message, blood_sugar_message, depressed_state_message, blood_pressure_message, anxiety_state_message, del_flag from sys_customer_healthy_extended select id, healthy_id, waist, hipline, eat_fruits_message, long_eat_drug_message, blood_sugar_message, depressed_state_message, blood_pressure_message, anxiety_state_message, menstruation_messag,del_flag from sys_customer_healthy_extended
</sql> </sql>
<select id="selectSysCustomerHealthyExtendedList" parameterType="SysCustomerHealthyExtended" resultMap="SysCustomerHealthyExtendedResult"> <select id="selectSysCustomerHealthyExtendedList" parameterType="SysCustomerHealthyExtended" resultMap="SysCustomerHealthyExtendedResult">
@ -43,6 +44,7 @@
<if test="depressedStateMessage != null">depressed_state_message,</if> <if test="depressedStateMessage != null">depressed_state_message,</if>
<if test="bloodPressureMessage != null">blood_pressure_message,</if> <if test="bloodPressureMessage != null">blood_pressure_message,</if>
<if test="anxietyStateMessage != null">anxiety_state_message,</if> <if test="anxietyStateMessage != null">anxiety_state_message,</if>
<if test="menstruationMessage != null">menstruation_message,</if>
<if test="delFlag != null">del_flag,</if> <if test="delFlag != null">del_flag,</if>
</trim> </trim>
<trim prefix="values (" suffix=")" suffixOverrides=","> <trim prefix="values (" suffix=")" suffixOverrides=",">
@ -55,6 +57,7 @@
<if test="depressedStateMessage != null">#{depressedStateMessage},</if> <if test="depressedStateMessage != null">#{depressedStateMessage},</if>
<if test="bloodPressureMessage != null">#{bloodPressureMessage},</if> <if test="bloodPressureMessage != null">#{bloodPressureMessage},</if>
<if test="anxietyStateMessage != null">#{anxietyStateMessage},</if> <if test="anxietyStateMessage != null">#{anxietyStateMessage},</if>
<if test="menstruationMessage != null">#{menstruationMessage},</if>
<if test="delFlag != null">#{delFlag},</if> <if test="delFlag != null">#{delFlag},</if>
</trim> </trim>
</insert> </insert>
@ -71,6 +74,7 @@
<if test="depressedStateMessage != null">depressed_state_message = #{depressedStateMessage},</if> <if test="depressedStateMessage != null">depressed_state_message = #{depressedStateMessage},</if>
<if test="bloodPressureMessage != null">blood_pressure_message = #{bloodPressureMessage},</if> <if test="bloodPressureMessage != null">blood_pressure_message = #{bloodPressureMessage},</if>
<if test="anxietyStateMessage != null">anxiety_state_message = #{anxietyStateMessage},</if> <if test="anxietyStateMessage != null">anxiety_state_message = #{anxietyStateMessage},</if>
<if test="menstruationMessage != null">menstruation_message = #{menstruationMessage},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if> <if test="delFlag != null">del_flag = #{delFlag},</if>
</trim> </trim>
where id = #{id} where id = #{id}

View File

@ -557,7 +557,7 @@
</resultMap> </resultMap>
<select id="getHealthyExtendedByHealthyId" parameterType="Long" resultMap="HealthyExtendedResult"> <select id="getHealthyExtendedByHealthyId" parameterType="Long" resultMap="HealthyExtendedResult">
select id, healthy_id, waist, hipline, eat_fruits_message, long_eat_drug_message, blood_sugar_message, depressed_state_message, blood_pressure_message, anxiety_state_message from sys_customer_healthy_extended where del_flag = 0 and healthy_id = #{id} limit 1 select id, healthy_id, waist, hipline, eat_fruits_message, long_eat_drug_message, blood_sugar_message, depressed_state_message, blood_pressure_message, anxiety_state_message,menstruation_message from sys_customer_healthy_extended where del_flag = 0 and healthy_id = #{id} limit 1
</select> </select>
</mapper> </mapper>

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1" style="margin-top: 10px;">{{healthyData['titleArray'][0]}}</p> <p class="p_title_1" style="margin-top: 10px;">{{getTitle()}}</p>
<p style="font-size: 15px; margin-bottom: 12px;margin-top: 10px;">请您确认下方姓名手机号是否正确</p> <p style="font-size: 15px; margin-bottom: 12px;margin-top: 10px;">请您确认下方姓名手机号是否正确</p>
<el-form-item label="真实姓名" prop="name"> <el-form-item label="真实姓名" prop="name">
<el-input v-model="form.name" :readonly="true" placeholder="请输入真实姓名" maxlength="20"/> <el-input v-model="form.name" :readonly="true" placeholder="请输入真实姓名" maxlength="20"/>
@ -73,6 +73,9 @@ export default {
}); });
} }
}, },
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 0);
},
}, },
props: { props: {
form: { form: {

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1">{{healthyData['titleArray'][2]}}</p> <p class="p_title_1">{{getTitle()}}</p>
<p class="p_title_2">1家庭调味品</p> <p class="p_title_2">1家庭调味品</p>
<el-form-item :label="'(1) 调味品种类'" prop="condiment" class="margin-left"> <el-form-item :label="'(1) 调味品种类'" prop="condiment" class="margin-left">
<el-checkbox-group v-model="form.condiment"> <el-checkbox-group v-model="form.condiment">
@ -50,7 +50,9 @@ export default {
}; };
}, },
methods: { methods: {
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 2);
},
}, },
props: { props: {
form: { form: {

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1">{{healthyData['titleArray'][3]}}</p> <p class="p_title_1">{{getTitle()}}</p>
<p class="p_title_2">1您三餐的习惯</p> <p class="p_title_2">1您三餐的习惯</p>
<el-form-item :label="'(1) 早餐习惯'" prop="breakfast" class="margin-left"> <el-form-item :label="'(1) 早餐习惯'" prop="breakfast" class="margin-left">
<el-radio-group v-model="form.breakfastType"> <el-radio-group v-model="form.breakfastType">
@ -151,7 +151,9 @@ export default {
}; };
}, },
methods: { methods: {
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 3);
},
}, },
props: { props: {
form: { form: {

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1">{{healthyData['titleArray'][4]}}</p> <p class="p_title_1">{{getTitle()}}</p>
<p class="p_title_2">1您每天的饮水习惯</p> <p class="p_title_2">1您每天的饮水习惯</p>
<el-form-item label="(1) 每天饮水量(毫升)" prop="waterNum" class="margin-left"> <el-form-item label="(1) 每天饮水量(毫升)" prop="waterNum" class="margin-left">
<el-input-number v-model="form.waterNum" :step="50" :min="0"></el-input-number> <el-input-number v-model="form.waterNum" :step="50" :min="0"></el-input-number>
@ -145,7 +145,9 @@ export default {
}; };
}, },
methods: { methods: {
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 4);
},
}, },
props: { props: {
form: { form: {

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1">{{healthyData['titleArray'][5]}}</p> <p class="p_title_1">{{getTitle()}}</p>
<p class="p_title_2">1运动频率</p> <p class="p_title_2">1运动频率</p>
<el-form-item label="(1) 每周运动情况" prop="motionSituation" class="margin-left"> <el-form-item label="(1) 每周运动情况" prop="motionSituation" class="margin-left">
<div> <div>
@ -60,7 +60,9 @@ export default {
}; };
}, },
methods: { methods: {
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 5);
},
}, },
props: { props: {
form: { form: {

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1">{{healthyData['titleArray'][6]}}</p> <p class="p_title_1">{{getTitle()}}</p>
<p class="p_title_2">1您的睡眠状况</p> <p class="p_title_2">1您的睡眠状况</p>
<el-form-item label="(1) 一般晚上几点睡" prop="sleepTime" class="margin-left"> <el-form-item label="(1) 一般晚上几点睡" prop="sleepTime" class="margin-left">
<el-time-select v-model="form.sleepTime" :picker-options="{ start: '00:00', step: '01:00', end: '24:00' }" placeholder="请选择时间" :editable="false"/> <el-time-select v-model="form.sleepTime" :picker-options="{ start: '00:00', step: '01:00', end: '24:00' }" placeholder="请选择时间" :editable="false"/>
@ -43,7 +43,9 @@ export default {
}; };
}, },
methods: { methods: {
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 6);
},
}, },
props: { props: {
form: { form: {

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1">{{healthyData['titleArray'][7]}}</p> <p class="p_title_1">{{getTitle()}}</p>
<p class="p_title_2">1本人病史情况</p> <p class="p_title_2">1本人病史情况</p>
<el-form-item label="(1) 病史体征(可多选)" prop="physicalSignsId" class="margin-left"> <el-form-item label="(1) 病史体征(可多选)" prop="physicalSignsId" class="margin-left">
<el-select v-model="form.physicalSignsId" multiple placeholder="请选择"> <el-select v-model="form.physicalSignsId" multiple placeholder="请选择">
@ -161,6 +161,9 @@ export default {
}; };
}, },
methods: { methods: {
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 7);
},
//湿 //湿
getMoistureDictData() { getMoistureDictData() {
if(this.flag == 0){ if(this.flag == 0){

View File

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<p class="p_title_1">{{healthyData.extendHealthyIndex.indexOf(form.conditioningProjectId) != -1 ? '十、体检报告' : healthyData['titleArray'][8]}}</p> <p class="p_title_1">{{getTitle()}}</p>
<p class="p_title_2">1体检报告</p> <p class="p_title_2">1体检报告</p>
<el-form-item label="(1) 请上传相应的体检报告" prop="fileList" class="margin-left"> <el-form-item label="(1) 请上传相应的体检报告" prop="fileList" class="margin-left">
<el-upload style="margin-left: 20px;" <el-upload style="margin-left: 20px;"
@ -22,6 +22,7 @@
<el-button style="margin-left: 10px;" size="small" @click="removeFileList()">移除文件</el-button> <el-button style="margin-left: 10px;" size="small" @click="removeFileList()">移除文件</el-button>
<div slot="tip" class="el-upload__tip">1最多可上传三份且每份文件不超过20M <div slot="tip" class="el-upload__tip">1最多可上传三份且每份文件不超过20M
<br>2仅支持bmpgif, jpg, jpeg, png, doc, docx, xls, xlsx, ppt, pptx, html, htm, txt, rar, zip, gz, bz2, pdf格式文件 <br>2仅支持bmpgif, jpg, jpeg, png, doc, docx, xls, xlsx, ppt, pptx, html, htm, txt, rar, zip, gz, bz2, pdf格式文件
<br><span style="color:red">{{ form.conditioningProjectId == 3 ? '3、体检报告必须包含精子活力检查、阴道彩超、地中海贫血基因筛查、甲状腺功能检查、叶酸代谢基因检测五个方面' : ""}}</span>
</div> </div>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
@ -59,6 +60,9 @@ export default {
}; };
}, },
methods: { methods: {
getTitle(){
return this.healthyData.getTitle(this.form.conditioningProjectId, 8);
},
uploadFile(){ uploadFile(){
if(this.upload.fileList.length > 0 && this.form.medicalReport.length != this.upload.fileList.length){ if(this.upload.fileList.length > 0 && this.form.medicalReport.length != this.upload.fileList.length){
this.$refs.upload.submit(); this.$refs.upload.submit();

View File

@ -6,8 +6,9 @@
<div v-show="form.conditioningProjectId == 6"> <div v-show="form.conditioningProjectId == 6">
<p class="p_title_2">1餐前餐后血糖</p> <p class="p_title_2">1餐前餐后血糖</p>
<div style="margin-top:10px"> <div style="margin-top:10px">
<div class="margin-left"><span>餐前</span><el-input placeholder="输入血糖数值" v-model="form.healthyExtend.bloodSugarMessage.beforeMealBloodSugar" maxlength="100" style="width:50%"></el-input><span class="margin-left">mmol/L</span></div> <div class="margin-left"><span>餐前</span><el-input placeholder="输入血糖数值" v-model="form.healthyExtend.bloodSugarMessage.beforeMealBloodSugar" maxlength="100" style="width:40%"></el-input><span class="margin-left">mmol/L</span></div>
<div class="margin-left" style="margin-top:8px;"><span>餐后两小时</span><el-input style="width:50%;" v-model="form.healthyExtend.bloodSugarMessage.afterMealBloodSugar" maxlength="100" placeholder="输入血糖数值"></el-input><span class="margin-left">mmol/L</span></div> <div class="margin-left" style="margin-top:8px;"><span>餐后两小时</span><el-input style="width:40%;" v-model="form.healthyExtend.bloodSugarMessage.afterMealBloodSugar" maxlength="100" placeholder="输入血糖数值"></el-input><span class="margin-left">mmol/L</span></div>
<div class="margin-left" style="margin-top:8px;"><span>糖化血红蛋白</span><el-input style="width:40%;" v-model="form.healthyExtend.bloodSugarMessage.sugarHemoglobin" maxlength="100" placeholder="输入糖化血红蛋白数值"></el-input><span class="margin-left">mmol/L</span></div>
</div> </div>
<p class="p_title_2">2血糖水平以及测量时间</p> <p class="p_title_2">2血糖水平以及测量时间</p>
<el-form-item :label="'(1) 是否有规律测血糖'" class="margin-left"> <el-form-item :label="'(1) 是否有规律测血糖'" class="margin-left">
@ -66,6 +67,15 @@
<el-radio :label="1" ></el-radio> <el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio> <el-radio :label="0" ></el-radio>
</el-radio-group> </el-radio-group>
<div style="margin-top:8px;"><span>若存在体重变化请您描述一下变化情况</span>
<el-input type="textarea"
v-model="form.healthyExtend.bloodSugarMessage.weightChangeDescribe"
placeholder="近三个月体重变化情况"
maxlength="200"
show-word-limit
rows="3"
></el-input>
</div>
</el-form-item> </el-form-item>
</div> </div>
@ -121,7 +131,7 @@
</el-radio-group> </el-radio-group>
<div style="margin-top:8px;"><span>若存在请选择对应症状</span> <div style="margin-top:8px;"><span>若存在请选择对应症状</span>
<el-checkbox-group v-model="form.healthyExtend.bloodPressureMessage.inferiorSymptom"> <el-checkbox-group v-model="form.healthyExtend.bloodPressureMessage.inferiorSymptom">
<el-checkbox v-for="(item,index) in healthyData['syndromeNameArray']" :label="item.name" :key="index">{{ item.name }}</el-checkbox> <el-checkbox v-for="(item,index) in healthyData['syndromeNameArray']" :label="item.value" :key="index">{{ item.name }}</el-checkbox>
</el-checkbox-group> </el-checkbox-group>
</div> </div>
@ -188,6 +198,174 @@
</el-form-item> </el-form-item>
</div> </div>
</div> </div>
<!-- 月经不调多囊卵巢综合症 -->
<div v-if="form.conditioningProjectId == 1 || form.conditioningProjectId == 2">
<p class="p_title_2">1月经基础情况</p>
<div style="margin-top:10px">
<el-form-item label="(1) 月经周期、天数" class="margin-left">
<div class="margin-left"><span class="text-span">月经周期</span><el-input placeholder="输入月经周期" v-model="form.healthyExtend.menstruationMessage.menstrualCycle" maxlength="100" style="width:40%"></el-input><span class="margin-left"></span></div>
<div class="margin-left text-span" style="margin-top:8px;"><span>月经天数</span><el-input style="width:40%;" v-model="form.healthyExtend.menstruationMessage.menstrualDays" maxlength="100" placeholder="输入月经天数"></el-input><span class="margin-left"></span></div>
</el-form-item>
</div>
<el-form-item label="(2) 月经大概预估量" class="margin-left">
<el-input type="textarea"
v-model="form.healthyExtend.menstruationMessage.menstrualForecast"
placeholder="请描述下大概预估量可以参考用的姨妈纸的量比如日用280换几次"
maxlength="100"
show-word-limit
rows="3"
></el-input>
</el-form-item>
<el-form-item label="(3) 月经推迟时长" class="margin-left">
<el-input type="textarea"
v-model="form.healthyExtend.menstruationMessage.menstrualDelayDays"
placeholder="请描述下推迟时长可以填具体推迟天数也可以填写具体的时间如3个月2次之类的"
maxlength="100"
show-word-limit
rows="3"
></el-input>
</el-form-item>
<el-form-item label="(4) 月经提前时长" class="margin-left">
<el-input type="textarea"
v-model="form.healthyExtend.menstruationMessage.menstrualAdvanceDays"
placeholder="请描述下提前时长可以填具体推迟天数也可以填写具体的时间如3个月2次之类的"
maxlength="100"
show-word-limit
rows="3"
></el-input>
</el-form-item>
<el-form-item label="(4) 是否有闭经" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.amenorrhoeaFlag">
<el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio>
</el-radio-group>
<div style="margin-top:8px;"><span class="text-span">若存在闭经请您描述一下闭经时长</span>
<el-input maxlength="100"
v-model="form.healthyExtend.bloodSugarMessage.amenorrhoeaDays"
placeholder="请输入闭经时长"
></el-input>
</div>
</el-form-item>
<el-form-item label="(5) 月经颜色" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.menstrualColor">
<el-radio v-for="(item,index) in healthyData['menstrualColorArray']" :label="item.value" :key="index" >{{ item.name }}</el-radio>
</el-radio-group>
<div style="margin-top:8px">
<span class="text-span">其他颜色</span>
<el-input maxlength="100"
v-model="form.healthyExtend.menstruationMessage.otherMenstrualColor"
placeholder="请输入其他颜色"
style="width:50%"
></el-input>
</div>
</el-form-item>
<el-form-item label="(6) 月经形状" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.menstrualCharacter">
<el-radio v-for="(item,index) in healthyData['menstrualCharacterArray']" :label="item.value" :key="index">{{ item.name }}</el-radio>
</el-radio-group>
<div style="margin-top:8px">
<span class="text-span">其他形状</span>
<el-input maxlength="100"
v-model="form.healthyExtend.menstruationMessage.otherMenstrualCharacter"
placeholder="请输入其他形状"
style="width:50%"
></el-input>
</div>
</el-form-item>
<p class="p_title_2">2痛经情况</p>
<el-form-item label="(1)、是否痛经" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.menstrualPainFlag">
<el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="(2)、痛经性质" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.menstrualNature">
<el-radio v-for="(item,index) in healthyData['menstrualNatureArray']" :style="'width:100%;'+(index >0 ? 'margin-top:7px' : '')" :label="item.value" :key="index">{{ item.name }}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="(3)、痛经类型" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.menstrualType">
<el-radio v-for="(item,index) in healthyData['menstrualTypeArray']" :style="'width:100%;'+(index >0 ? 'margin-top:7px' : '')" :label="item.value" :key="index">{{ item.name }}</el-radio>
</el-radio-group>
</el-form-item>
<div class="margin-left text-span">
<div style="color:#1890ff">类型特点说明</div>
<div style="margin-top:5px" v-for="(item,index) in healthyData['menstrualTypeIntroduceArray']" :key="index+'div'">{{item.name}}<span class="text-span-min">{{item.value}}</span></div>
</div>
<p class="p_title_2">3药物情况</p>
<el-form-item label="(1)、是否用药" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.medicationFlag">
<el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio>
</el-radio-group>
<div style="margin-top:8px;"><span class="text-span">若存在用药请描述具体名称剂量服用时间等</span>
<el-input maxlength="100"
v-model="form.healthyExtend.bloodSugarMessage.medication"
placeholder="请输入用药详情"
></el-input>
</div>
</el-form-item>
<el-form-item label="(2)、是否有生育计划" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.familyPlann">
<el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="(3)、是否存在同房出血情况" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.sameRoomBleed">
<el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="(4)、是否存在排卵期出血" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.ovulationBleed">
<el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="(5)、是否出现胰岛素抵抗(重点)" class="margin-left">
<el-radio-group v-model="form.healthyExtend.menstruationMessage.insulinResistanceFlag">
<el-radio :label="1" ></el-radio>
<el-radio :label="0" ></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="(6)、其他补充" class="margin-left">
<el-input type="textarea"
v-model="form.healthyExtend.menstruationMessage.otherDescriptions"
placeholder="请输入其他补充"
maxlength="200"
show-word-limit
rows="3"
></el-input>
</el-form-item>
</div>
</div> </div>
</template> </template>
<script> <script>
@ -261,6 +439,18 @@ export default {
margin-right: 5px; margin-right: 5px;
} }
.text-span{
color:#606266;
font-weight: 700;
font-size: 14px
}
.text-span-min{
color:#606266;
font-weight: 400;
font-size: 13px
}
</style> </style>

View File

@ -15,7 +15,7 @@
<!-- 只有新版健康评估信息才可修改旧的体征数据不支持修改 --> <!-- 只有新版健康评估信息才可修改旧的体征数据不支持修改 -->
<el-button <el-button
type="info" type="info"
v-show="dataType == 0" v-show="dataType == 0 && healthyData.conditioningProjectId == 0"
@click="generateReport" @click="generateReport"
plain plain
>下载报告</el-button >下载报告</el-button
@ -25,7 +25,7 @@
v-show="dataType == 0" v-show="dataType == 0"
@click="handleEditGuidanceClick" @click="handleEditGuidanceClick"
plain plain
>{{guidanceButtonNmae ? guidanceButtonNmae : '减脂指导'}}</el-button >{{guidanceButtonNmae ? guidanceButtonNmae : '指导'}}</el-button
> >
<el-button <el-button
v-hasPermi="['custom:healthy:edit']" v-hasPermi="['custom:healthy:edit']"
@ -108,7 +108,8 @@
style="margin-bottom: 50px" style="margin-bottom: 50px"
:key="index" :key="index"
> >
<div> <!-- 备孕 -->
<div v-if="index > 0 || healthyDataConstData['notExperienceIndex'].indexOf(healthyData.conditioningProjectId) == -1">
<p class="p_title_1" style="margin-top: 5px"> <p class="p_title_1" style="margin-top: 5px">
{{ getTitle(index+1) }} {{ getTitle(index+1) }}
</p> </p>
@ -277,6 +278,7 @@ export default {
}, },
data() { data() {
return { return {
healthyDataConstData: healthyData,
logo, logo,
visible: false, visible: false,
showFlag: false, showFlag: false,
@ -317,145 +319,9 @@ export default {
// //
titleArray: healthyData["titleArray"], titleArray: healthyData["titleArray"],
// //
healthyTitleData: [ healthyTitleData: healthyData['healthyTitleData'],
[
["创建时间", "客户姓名", "手机号"],
["调理项目", "性别", "年龄"],
["身高(厘米)", "体重(斤)", "腰围(厘米)"],
["臀围(厘米)", "地域", "BMI"],
],
[
["减脂经历", "减脂遇到的困难", "减脂是否反弹"],
["是否意识到生活习惯是减脂关键", "", ""],
],
[
["调味品种", "烹调方式", "烹调频次"],
["洗菜方式", "", ""],
],
[
["早餐习惯", "早餐吃的食物", "午餐习惯"],
["晚餐习惯", "正餐中素菜占比", "最常吃的肉类"],
["晚餐时间", "每周吃夜宵次数", "夜宵通常吃的食物"],
["食物的冷热偏好", "食物的口味偏好", "平均每周吃生蔬菜几次"],
["每周吃生蔬菜的频次类型", "平均每天吃水果次数", "吃水果的时间段"],
["平时吃水果的频次", "经常吃的水果以及份量","一餐吃几碗饭"],
["吃几成饱","吃饭速度", "饮食特点"],
["常吃的零食","有无服用营养保健品", "营养保健品品牌名"],
["营养保健品产品名","服用营养保健品频次", "忌口过敏食物"],
],
[
["每天的饮水量", "喜欢喝什么水", "喝水习惯"],
["常喝的饮品的每周频次", "是否喝酒", "喝酒种类"],
["对应酒的量", "是否抽烟", "抽烟频次和烟龄"],
["是否经常抽二手烟", "工作行业", "工作性质"],
["排便次数", "排便时间段", "排便的形状"],
["排便的气味", "排便的速度", "排便的颜色"],
],
[
["每周运动次数", "每次运动的时长", "每天运动的时间"],
["运动", "运动场地", ""],
],
[
["睡觉时间", "睡眠质量", "是否有辅助入睡药物"],
["辅助睡眠类药物名称", "是否经常熬夜", "熬夜频次"],
],
[
["病史体征", "湿气数据", "气血数据"],
["家族疾病史", "手术史", "近期是否做过手术"],
["手术恢复情况", "是否长期服用药物", "长期服用的药物"],
["是否出现过过敏症状", "过敏症状", "过敏源"],
],
[["体检报告(1)", "体检报告(2)", "体检报告(3)"]],
[
["餐前餐后血糖", "是否有规律测血糖", "测量血糖时间"],
["近期血糖水平", "是否有低血糖反应", "是否有出现并发症"],
["并发症情况", "存在症状", "近三个月体重是否有变化"],
],
[
["餐前餐后血压", "是否有规律测血压", "测量血压时间"],
["近期血压水平", "是否有低血压反应", "是否有出现并发症"],
["并发症情况", "存在症状", "近三个月体重是否有变化"]
],
[
["你认为你是一个容易焦虑或紧张的人吗","最近一段时间,你是否比平时更感到焦虑或忐忑不安","是否有一些特殊场合或情景更容易使得你紧张、焦虑"],
["你曾经有过惊恐发作吗.即突然发生的强烈不适感或心慌、眩晕、感到憋气或呼吸困难等症状","",""]
],
[
["过去几周(或几个月)是否感觉到无精打采、伤感、或对生活的乐趣减少","除了不开心之外,是否比平时更加悲观或想哭","经常有早醒吗(事实上不需那么早醒来)"],
["近来是否经常想到活着没有意思","",""]
]
],
// //
healthyValueData: [ healthyValueData: healthyData['healthyValueData'],
[
["createTime", "name", "phone"],
["conditioningProject", "sex", "age"],
["tall", "weight", "healthyExtend,waist"],
["healthyExtend,hipline", "position", "bmi"],
],
[
["experience", "difficulty", "rebound"],
["crux", "", ""],
],
[
["condiment", "cookingStyle", "cookingStyleRate"],
["washVegetablesStyle", "", ""],
],
[
["breakfastType", "breakfastFood", "lunchType"],
["dinner", "vegetableRate", "commonMeat"],
["dinnerTime", "supperNum", "supperFood"],
["dietHotAndCold", "dietFlavor", "vegetablesNum"],
["vegetablesRateType", "fruitsNum", "fruitsTime"],
["fruitsRate", "healthyExtend,eatFruitsMessage", "riceNum"],
[ "riceFull","eatingSpeed", "makeFoodType"],
["snacks","healthProductsFlag", "healthProductsBrand"],
["healthProductsName","healthProductsWeekRate", "dishesIngredient"],
],
[
["waterNum", "waterType", "waterHabit"],
["drinksNum", "drinkWineFlag", "drinkWineClassify"],
["drinkWineAmount", "smokeFlag", "smokeRate"],
["secondSmoke", "workIndustry", "workType"],
["defecationNum", "defecationTime", "defecationShape"],
["defecationSmell", "defecationSpeed", "defecationColor"],
],
[
["motionNum", "motionDuration", "motionTime"],
["motion", "motionField", ""],
],
[
["sleepTime", "sleepQuality", "sleepDrugFlag"],
["sleepDrug", "stayupLateFlag", "stayupLateWeekNum"],
],
[
["physicalSigns", "moistureDate", "bloodData"],
["familyIllnessHistory", "operationHistory", "nearOperationFlag"],
["recoveryeSituation", "longEatDrugFlag", "longEatDrugClassify"],
["allergyFlag", "allergySituation", "allergen"],
],
[["medicalReport_one", "medicalReport_two", "medicalReport_three"]],
[
["mealBloodSugar", "measureBloodSugarFlag", "measureBloodSugarTime"],
["nearBloodSugar", "lowBloodSugarFlag", "complicationFlag"],
["complication", "inferiorSymptom", "weightChangeFlag"]
],
[
["mealBloodPressure", "measureBloodPressureFlag", "measureBloodPressureTime"],
["nearBloodPressure", "lowBloodPressureFlag", "pressureComplicationFlag"],
["pressureComplication", "pressureInferiorSymptom", "pressureWeightChangeFlag"],
],
[
["easyAnxiousFlag","upsetRecently","nervousOnSpecialOccasionsFlag"],
["terrifiedFlag","",""]
],
[
["listlessRecentlyFlag","cryRecentlyFlag","wakeUpEarlyRecentlyFlag"],
["noFunLiving","",""]
]
],
extendedTitleArray:['十、高血糖信息评估',"十、高血压信息评估","十一、焦虑信息评估","十二、抑郁信息评估"], extendedTitleArray:['十、高血糖信息评估',"十、高血压信息评估","十一、焦虑信息评估","十二、抑郁信息评估"],
copyValue: "", copyValue: "",
detailHealthy: null, detailHealthy: null,
@ -502,10 +368,8 @@ export default {
this.showFlag = false; this.showFlag = false;
if (res.data.customerHealthy) { if (res.data.customerHealthy) {
if(res.data.type == 0){ if(res.data.type == 0){
//healthyExtend //jsonjson
healthyData["needJSONFieldName"].forEach(function (item, index) { res.data.customerHealthy.healthyExtend = healthyData.dealHealthyExtendJson(res.data.customerHealthy.healthyExtend, true);
res.data.customerHealthy.healthyExtend[item] = res.data.customerHealthy.healthyExtend[item] != null ? JSON.parse(res.data.customerHealthy.healthyExtend[item]) : null;
});
} }
// //
this.dataType = res.data.type; this.dataType = res.data.type;
@ -814,46 +678,10 @@ export default {
(detailHealthy.tall / 100) / (detailHealthy.tall / 100) /
(detailHealthy.tall / 100) (detailHealthy.tall / 100)
).toFixed(1); ).toFixed(1);
//
let eatFruitsMessage = "";
if(detailHealthy.healthyExtend.eatFruitsMessage != null && detailHealthy.healthyExtend.eatFruitsMessage.length > 0){
detailHealthy.healthyExtend.eatFruitsMessage.forEach((item,index) => {
eatFruitsMessage += (eatFruitsMessage == "" ? "" : ", ") + item.name + "/" + item.num;
});
}
detailHealthy.healthyExtend.eatFruitsMessage = eatFruitsMessage;
detailHealthy.mealBloodSugar = "餐前血糖:"+(detailHealthy.healthyExtend.bloodSugarMessage.beforeMealBloodSugar == null ? "" : (detailHealthy.healthyExtend.bloodSugarMessage.beforeMealBloodSugar+"mmol/L"))+", "
+"餐后两小时血糖:"+(detailHealthy.healthyExtend.bloodSugarMessage.afterMealBloodSugar == null ? "" : (detailHealthy.healthyExtend.bloodSugarMessage.afterMealBloodSugar+"mmol/L"));
detailHealthy.measureBloodSugarFlag = detailHealthy.healthyExtend.bloodSugarMessage.measureBloodSugarFlag == 1 ? "是" : "否";
detailHealthy.measureBloodSugarTime = detailHealthy.healthyExtend.bloodSugarMessage.measureBloodSugarTime;
detailHealthy.nearBloodSugar = detailHealthy.healthyExtend.bloodSugarMessage.nearBloodSugar;
detailHealthy.lowBloodSugarFlag = (detailHealthy.healthyExtend.bloodSugarMessage.lowBloodSugarFlag == 1 ? "是" : "否") + ", 出现时间:"+detailHealthy.healthyExtend.bloodSugarMessage.lowBloodSugarTime;
detailHealthy.complicationFlag = detailHealthy.healthyExtend.bloodSugarMessage.complicationFlag == 1 ? "是" : "否";
detailHealthy.complication = detailHealthy.healthyExtend.bloodSugarMessage.complication;
detailHealthy.inferiorSymptom = (detailHealthy.healthyExtend.bloodSugarMessage.inferiorSymptomFlag == 1 ? "是" : "否") + ", 具体症状:"+detailHealthy.healthyExtend.bloodSugarMessage.inferiorSymptom.join(",");
detailHealthy.weightChangeFlag = detailHealthy.healthyExtend.bloodSugarMessage.weightChangeFlag == 1 ? "是" : "否";
detailHealthy.mealBloodPressure = "餐前血压:"+(detailHealthy.healthyExtend.bloodPressureMessage.beforeMealBloodPressure == null ? "" : (detailHealthy.healthyExtend.bloodPressureMessage.beforeMealBloodPressure+"mmHg"))+", "
+"餐后两小时血压:"+(detailHealthy.healthyExtend.bloodPressureMessage.afterMealBloodPressure == null ? "" : (detailHealthy.healthyExtend.bloodPressureMessage.afterMealBloodPressure+"mmHg"));
detailHealthy.measureBloodPressureFlag = detailHealthy.healthyExtend.bloodPressureMessage.measureBloodPressureFlag == 1 ? "是" : "否";
detailHealthy.measureBloodPressureTime = detailHealthy.healthyExtend.bloodPressureMessage.measureBloodPressureTime;
detailHealthy.nearBloodPressure = detailHealthy.healthyExtend.bloodPressureMessage.nearBloodPressure;
detailHealthy.lowBloodPressureFlag = (detailHealthy.healthyExtend.bloodPressureMessage.lowBloodPressureFlag == 1 ? "是" : "否") + ", 出现时间:"+detailHealthy.healthyExtend.bloodPressureMessage.lowBloodPressureTime;
detailHealthy.pressureComplicationFlag = detailHealthy.healthyExtend.bloodPressureMessage.complicationFlag == 1 ? "是" : "否";
detailHealthy.pressureComplication = detailHealthy.healthyExtend.bloodPressureMessage.complication;
detailHealthy.pressureInferiorSymptom = (detailHealthy.healthyExtend.bloodPressureMessage.inferiorSymptomFlag == 1 ? "是" : "否") + ", 具体症状:"+detailHealthy.healthyExtend.bloodPressureMessage.inferiorSymptom.join(",");
detailHealthy.pressureWeightChangeFlag = detailHealthy.healthyExtend.bloodPressureMessage.weightChangeFlag == 1 ? "是" : "否";
detailHealthy.easyAnxiousFlag = detailHealthy.healthyExtend.anxietyStateMessage.easyAnxiousFlag == 1 ? "是" : "否";
detailHealthy.upsetRecently = detailHealthy.healthyExtend.anxietyStateMessage.upsetRecently == 1 ? "是" : "否";
detailHealthy.nervousOnSpecialOccasionsFlag = detailHealthy.healthyExtend.anxietyStateMessage.nervousOnSpecialOccasionsFlag == 1 ? "是" : "否";
detailHealthy.terrifiedFlag = detailHealthy.healthyExtend.anxietyStateMessage.terrifiedFlag == 1 ? "是" : "否";
detailHealthy.listlessRecentlyFlag = detailHealthy.healthyExtend.depressedStateMessage.listlessRecentlyFlag == 1 ? "是" : "否";
detailHealthy.cryRecentlyFlag = detailHealthy.healthyExtend.depressedStateMessage.cryRecentlyFlag == 1 ? "是" : "否";
detailHealthy.wakeUpEarlyRecentlyFlag = detailHealthy.healthyExtend.depressedStateMessage.wakeUpEarlyRecentlyFlag == 1 ? "是" : "否";
detailHealthy.noFunLiving = detailHealthy.healthyExtend.depressedStateMessage.noFunLiving == 1 ? "是" : "否";
this.detailHealthy = detailHealthy; this.detailHealthy = healthyData.dealHealthyExtend(detailHealthy);
for (let i = 0; i < this.healthyTitleData.length; i++) { for (let i = 0; i < this.healthyTitleData.length; i++) {
let stepArray = []; let stepArray = [];
for (let j = 0; j < this.healthyTitleData[i].length; j++) { for (let j = 0; j < this.healthyTitleData[i].length; j++) {
@ -992,7 +820,8 @@ export default {
this.editGuidanceShow(true); this.editGuidanceShow(true);
this.$refs["physicalSignsGuidanceDialog"].showDialog( this.$refs["physicalSignsGuidanceDialog"].showDialog(
this.data, this.data,
this.healthyData this.healthyData,
this.guidanceButtonNmae
); );
}, },
editGuidanceShow(flag) { editGuidanceShow(flag) {

View File

@ -14,12 +14,15 @@
v-model="showModuleArray" v-model="showModuleArray"
@change="changeShowModule()" @change="changeShowModule()"
> >
<template v-for="(item, index) in healthyData['titleArray']">
<el-checkbox <el-checkbox
v-for="(item, index) in healthyData['titleArray']" v-if="index != 1 || healthyData['notExperienceIndex'].indexOf(form.conditioningProjectId) == -1"
:label="index" :label="index"
:key="index" :key="index"
>{{ getTitle(index) }}</el-checkbox >{{ getTitle(index) }}</el-checkbox
> >
</template>
</el-checkbox-group> </el-checkbox-group>
</el-form-item> </el-form-item>
</el-form> </el-form>

View File

@ -10,7 +10,7 @@
:rows="25" :rows="25"
maxlength="300" maxlength="300"
show-word-limit show-word-limit
placeholder="请输入减脂指导" placeholder="请输入指导内容"
v-model="form.guidance"> v-model="form.guidance">
</el-input> </el-input>
</el-form-item> </el-form-item>
@ -45,9 +45,9 @@ export default {
}; };
}, },
methods: { methods: {
showDialog(data, healthy) { showDialog(data, healthy,guidanceButtonNmae) {
this.data = data; this.data = data;
this.title = "修改"+`${data.name}`+"减脂指导"; this.title = "修改"+guidanceButtonNmae;//""+`${data.name}`+""+guidanceButtonNmae+"";
this.form.id = healthy.id; this.form.id = healthy.id;
this.form.guidance = healthy.guidance; this.form.guidance = healthy.guidance;
this.visible = true; this.visible = true;

View File

@ -1,13 +1,29 @@
export const titleArray = [ export const titleArray = [
"一、基础信息", "基础信息",
"二、减脂经历评估", "减脂经历评估",
"三、食品安全评估", "食品安全评估",
"四、饮食结构评估", "饮食结构评估",
"五、生活习惯评估", "生活习惯评估",
"六、运动习惯评估", "运动习惯评估",
"七、睡眠质量评估", "睡眠质量评估",
"八、既往病史/用药史评估", "既往病史/用药史评估",
"九、体检报告" "体检报告"
];
export const titleNumArray = [
"一、",
"二、",
"三、",
"四、",
"五、",
"六、",
"七、",
"八、",
"九、",
"十、",
"十一、",
"十二、",
"十三、"
]; ];
export const condimentArray = [ export const condimentArray = [
@ -332,6 +348,44 @@ export const syndromeNameArray = [
{ name: "视力下降", value: "8" } { name: "视力下降", value: "8" }
]; ];
//月经颜色
export const menstrualColorArray = [
{ name: "鲜红色", value: "1" },
{ name: "褐色", value: "2" },
{ name: "暗黑色", value: "3" }
];
//月经形状
export const menstrualCharacterArray = [
{ name: "带血块", value: "1" },
{ name: "豆腐渣", value: "2" },
{ name: "正常", value: "3" }
];
//痛经形状
export const menstrualNatureArray = [
{ name: "无", value: "0" },
{ name: "生理性(原发性)", value: "1" },
{ name: "病理性(继发性,如子宫内膜炎)", value: "2" }
];
//痛经类型
export const menstrualTypeArray = [
{ name: "无", value: "0" },
{ name: "气滞血瘀型", value: "1" },
{ name: "寒湿凝滞型", value: "2" },
{ name: "气血两虚型", value: "3" },
{ name: "湿热瘀结型", value: "4" }
];
//痛经类型特点说明
export const menstrualTypeIntroduceArray = [
{ name: "气滞血瘀型", value: "经血排出不顺畅、颜色深有血块,血块排出后疼痛就减少" },
{ name: "寒湿凝滞型", value: "小腹冷痛、热敷或者喝热汤后有缓解,怕冷手脚冰凉,经量少,颜色深有血块,便溏" },
{ name: "气血两虚型", value: "小腹隐痛、月经稀少、颜色淡、脸色黄白没力气,吃不下还便溏" },
{ name: "湿热瘀结型", value: "湿热瘀结型,特点是经期疼痛、经血深红粘稠,腰部胀痛,或者有低热,小便黄,便秘" }
];
//需要将数组转成字符串的属性名称,包含对象数组、字符串数组 //需要将数组转成字符串的属性名称,包含对象数组、字符串数组
export const arrayName = [ export const arrayName = [
"condiment", "condiment",
@ -512,7 +566,8 @@ export const needJSONFieldName = [
"bloodSugarMessage", "bloodSugarMessage",
"bloodPressureMessage", "bloodPressureMessage",
"anxietyStateMessage", "anxietyStateMessage",
"depressedStateMessage" "depressedStateMessage",
"menstruationMessage"
]; ];
//健康信息处理,将数组转为字符串 //健康信息处理,将数组转为字符串
@ -698,23 +753,42 @@ export function dealHealthy(customerHealthy) {
return customerHealthy; return customerHealthy;
} }
export const extendHealthyTitle = {"0":"减脂","5":"降血压","6":"降血糖"}; export const extendHealthyTitle = {"0":"减脂","5":"降血压","6":"降血糖","3": "备孕营养", "1": "月经不调", "2": "多囊调理", "11":"心脑血管调理"};
export const projectName = {"0":"减脂","5":"高血压","6":"高血糖"}; export const projectName = {"0":"减脂","5":"高血压","6":"高血糖","3": "备孕营养", "1":"月经不调", "2":"多囊卵巢综合症"};
export const extendHealthyIndex = [5, 6]; //需要填写慢病调查问卷的项目
export const extendHealthyIndex = [5, 6, 1, 2];
//跳过减脂经历问卷的项目
export const notExperienceIndex = [3,1,2];
export function getTitleKey(projectId){ export function getTitleKey(projectId){
return extendHealthyTitle[projectId+""] ? extendHealthyTitle[projectId+""] : extendHealthyTitle["0"]; return extendHealthyTitle[projectId+""] != null ? extendHealthyTitle[projectId+""] : extendHealthyTitle["0"];
} }
export function getTitle(projectId, index){ export function getTitle(projectId, index){
if(extendHealthyIndex.includes(projectId)){ if(extendHealthyIndex.includes(projectId)){
if(index == 1){ //跳过了减脂经历
return "二、"+getTitleKey(projectId)+"经历评估"; if(notExperienceIndex.includes(projectId)){
if(index > 1){
return titleNumArray[index-1] + titleArray[index];
}else{ }else{
return titleArray[index]; return titleNumArray[index]+titleArray[index];
} }
}else{ }else{
return titleArray[index]; if(index == 1){
return titleNumArray[index]+getTitleKey(projectId)+"经历评估";
}else if(index == 8){
return titleNumArray[index+1] + titleArray[index];
}else{
return titleNumArray[index]+titleArray[index];
}
}
}else{
//跳过了减脂经历
if(notExperienceIndex.includes(projectId) && index > 1){
return titleNumArray[index-1] + titleArray[index];
}else{
return titleNumArray[index]+titleArray[index];
}
} }
} }
@ -728,3 +802,291 @@ export function getTitleShowArray(projectId){
return array; return array;
} }
/**
* 新增查询展示时用于json与json字符串互相转换
* @param {*} healthyExtend 健康扩展数据
* @param {*} jsonFlag true json字符串转JSON false json对象转json字符串
*/
export function dealHealthyExtendJson(healthyExtend, jsonFlag){
//处理healthyExtend扩展数据
needJSONFieldName.forEach(function (item, index) {
healthyExtend[item] = healthyExtend[item] != null ? (jsonFlag ? JSON.parse(healthyExtend[item]) : JSON.stringify(healthyExtend[item])) : null;
});
return healthyExtend;
}
export const extendedYesNoAttrName = [
//焦虑
{"targetAttrName": "easyAnxiousFlag", "healthyAttrName": "anxietyStateMessage,easyAnxiousFlag"},
{"targetAttrName": "upsetRecently", "healthyAttrName": "anxietyStateMessage,upsetRecently"},
{"targetAttrName": "nervousOnSpecialOccasionsFlag", "healthyAttrName": "anxietyStateMessage,nervousOnSpecialOccasionsFlag"},
{"targetAttrName": "terrifiedFlag", "healthyAttrName": "anxietyStateMessage,terrifiedFlag"},
//抑郁
{"targetAttrName": "listlessRecentlyFlag", "healthyAttrName": "depressedStateMessage,listlessRecentlyFlag"},
{"targetAttrName": "cryRecentlyFlag", "healthyAttrName": "depressedStateMessage,cryRecentlyFlag"},
{"targetAttrName": "wakeUpEarlyRecentlyFlag", "healthyAttrName": "depressedStateMessage,wakeUpEarlyRecentlyFlag"},
{"targetAttrName": "noFunLiving", "healthyAttrName": "depressedStateMessage,noFunLiving"},
//高血糖
{"targetAttrName": "measureBloodSugarFlag", "healthyAttrName": "bloodSugarMessage,measureBloodSugarFlag"},
{"targetAttrName": "lowBloodSugarFlag", "healthyAttrName": "bloodSugarMessage,lowBloodSugarFlag"},
{"targetAttrName": "complicationFlag", "healthyAttrName": "bloodSugarMessage,complicationFlag"},
{"targetAttrName": "inferiorSymptom", "healthyAttrName": "bloodSugarMessage,inferiorSymptomFlag"},
{"targetAttrName": "weightChangeFlag", "healthyAttrName": "bloodSugarMessage,weightChangeFlag"},
{"targetAttrName": "amenorrhoeaFlag", "healthyAttrName": "menstruationMessage,amenorrhoeaFlag"},
]
//单选的value转成对应name
export function getStringBySigleValue(array, value){
if(value == undefined || value == null){
return "";
}
let val = "";
array.forEach((item,index) => {
if(item.value == value){
val = item.name;
}
})
return val;
}
//多选的value转成对应name
export function getStringByMuchValue(array, valueArray){
if(valueArray == undefined || valueArray == null || valueArray.length == 0){
return "";
}
let val = [];
array.forEach((item,index) => {
if(valueArray.includes(item.value)){
val.push(item.name);
}
})
return val.join(",");
}
export function dealHealthyExtend(detailHealthy){
//将0、1处理成是、否
extendedYesNoAttrName.forEach((item,index) => {
let array = item.healthyAttrName.split(",");
detailHealthy[item.targetAttrName] = (array.length > 1 ? detailHealthy.healthyExtend[array[0]][array[1]] : detailHealthy.healthyExtend[array[0]]) == 1 ? '是' : '否';
})
//常吃水果以及份量
let eatFruitsMessage = "";
if(detailHealthy.healthyExtend.eatFruitsMessage != null && detailHealthy.healthyExtend.eatFruitsMessage.length > 0){
detailHealthy.healthyExtend.eatFruitsMessage.forEach((item,index) => {
eatFruitsMessage += (eatFruitsMessage == "" ? "" : ", ") + item.name + "/" + item.num;
});
}
//高血糖
detailHealthy.healthyExtend.eatFruitsMessage = eatFruitsMessage;
detailHealthy.mealBloodSugar = "餐前血糖:"+(detailHealthy.healthyExtend.bloodSugarMessage.beforeMealBloodSugar == null ? "" : (detailHealthy.healthyExtend.bloodSugarMessage.beforeMealBloodSugar+"mmol/L"))+", "
+"餐后两小时血糖:"+(detailHealthy.healthyExtend.bloodSugarMessage.afterMealBloodSugar == null ? "" : (detailHealthy.healthyExtend.bloodSugarMessage.afterMealBloodSugar+"mmol/L"))
+",糖化血红蛋白:"+(detailHealthy.healthyExtend.bloodSugarMessage.sugarHemoglobin == null ? "" : (detailHealthy.healthyExtend.bloodSugarMessage.sugarHemoglobin+"mmol/L"))
detailHealthy.measureBloodSugarTime = detailHealthy.healthyExtend.bloodSugarMessage.measureBloodSugarTime;
detailHealthy.nearBloodSugar = detailHealthy.healthyExtend.bloodSugarMessage.nearBloodSugar;
detailHealthy.lowBloodSugarFlag = detailHealthy.lowBloodSugarFlag + ", 出现时间:"+nullToString(detailHealthy.healthyExtend.bloodSugarMessage.lowBloodSugarTime);
detailHealthy.complication = detailHealthy.healthyExtend.bloodSugarMessage.complication;
detailHealthy.inferiorSymptom = detailHealthy.inferiorSymptom +", 具体症状:"+getStringByMuchValue( syndromeNameArray, detailHealthy.healthyExtend.bloodSugarMessage.inferiorSymptom);
detailHealthy.weightChangeFlag = detailHealthy.weightChangeFlag + ",具体变化情况:"+detailHealthy.healthyExtend.bloodSugarMessage.weightChangeDescribe;
//高血压
detailHealthy.mealBloodPressure = "餐前血压:"+(detailHealthy.healthyExtend.bloodPressureMessage.beforeMealBloodPressure == null ? "" : (detailHealthy.healthyExtend.bloodPressureMessage.beforeMealBloodPressure+"mmHg"))+", "
+"餐后两小时血压:"+(detailHealthy.healthyExtend.bloodPressureMessage.afterMealBloodPressure == null ? "" : (detailHealthy.healthyExtend.bloodPressureMessage.afterMealBloodPressure+"mmHg"));
detailHealthy.measureBloodPressureFlag = detailHealthy.healthyExtend.bloodPressureMessage.measureBloodPressureFlag == 1 ? "是" : "否";
detailHealthy.measureBloodPressureTime = detailHealthy.healthyExtend.bloodPressureMessage.measureBloodPressureTime;
detailHealthy.nearBloodPressure = detailHealthy.healthyExtend.bloodPressureMessage.nearBloodPressure;
detailHealthy.lowBloodPressureFlag = (detailHealthy.healthyExtend.bloodPressureMessage.lowBloodPressureFlag == 1 ? "是" : "否") + ", 出现时间:"+nullToString(detailHealthy.healthyExtend.bloodPressureMessage.lowBloodPressureTime);
detailHealthy.pressureComplicationFlag = detailHealthy.healthyExtend.bloodPressureMessage.complicationFlag == 1 ? "是" : "否";
detailHealthy.pressureComplication = detailHealthy.healthyExtend.bloodPressureMessage.complication;
detailHealthy.pressureInferiorSymptom = (detailHealthy.healthyExtend.bloodPressureMessage.inferiorSymptomFlag == 1 ? "是" : "否") + ", 具体症状:"+getStringByMuchValue(syndromeNameArray,detailHealthy.healthyExtend.bloodPressureMessage.inferiorSymptom);
detailHealthy.pressureWeightChangeFlag = detailHealthy.healthyExtend.bloodPressureMessage.weightChangeFlag == 1 ? "是" : "否";
detailHealthy.menstrualCycle = "生理周期:" + detailHealthy.healthyExtend.menstruationMessage.menstrualCycle + ",生理天数:" + detailHealthy.healthyExtend.menstruationMessage.menstrualDays;
detailHealthy.menstrualForecast = detailHealthy.healthyExtend.menstruationMessage.menstrualForecast;
dealHealthy.menstrualDelayDays = dealHealthy.healthyExtend.menstruationMessage.menstrualForecast;
dealHealthy.menstrualAdvanceDays = dealHealthy.healthyExtend.menstruationMessage.menstrualAdvanceDays;
dealHealthy.amenorrhoeaDays = dealHealthy.amenorrhoeaFlag + ",痛经时长:" + dealHealthy.healthyExtend.menstruationMessage.amenorrhoeaDays;
dealHealthy.amenorrhoeaDays = dealHealthy.amenorrhoeaFlag + ",痛经时长:" + dealHealthy.healthyExtend.menstruationMessage.amenorrhoeaDays;
dealHealthy.menstrualColor = getStringBySigleValue(menstrualColorArray, dealHealthy.healthyExtend.menstruationMessage.menstrualColor);
dealHealthy.menstrualColor += dealHealthy.menstrualColor != "" ? (""+ dealHealthy.healthyExtend.menstruationMessage.otherMenstrualColor) : dealHealthy.healthyExtend.menstruationMessage.otherMenstrualColor;
dealHealthy.menstrualCharacter = getStringBySigleValue(menstrualCharacterArray, dealHealthy.healthyExtend.menstruationMessage.menstrualCharacter);
dealHealthy.menstrualCharacter += dealHealthy.menstrualCharacter != "" ? (""+dealHealthy.healthyExtend.menstruationMessage.otherMenstrualCharacter) : dealHealthy.healthyExtend.menstruationMessage.otherMenstrualCharacter;
dealHealthy.menstrualNature = getStringBySigleValue(menstrualNatureArray, dealHealthy.healthyExtend.menstruationMessage.menstrualNature);
}
export function nullToString(val){
return (val == undefined || val == null) ? "" : val;
}
// 健康评估标题
export const healthyTitleData = [
[
["创建时间", "客户姓名", "手机号"],
["调理项目", "性别", "年龄"],
["身高(厘米)", "体重(斤)", "腰围(厘米)"],
["臀围(厘米)", "地域", "BMI"],
],
[
["减脂经历", "减脂遇到的困难", "减脂是否反弹"],
["是否意识到生活习惯是减脂关键", "", ""],
],
[
["调味品种", "烹调方式", "烹调频次"],
["洗菜方式", "", ""],
],
[
["早餐习惯", "早餐吃的食物", "午餐习惯"],
["晚餐习惯", "正餐中素菜占比", "最常吃的肉类"],
["晚餐时间", "每周吃夜宵次数", "夜宵通常吃的食物"],
["食物的冷热偏好", "食物的口味偏好", "平均每周吃生蔬菜几次"],
["每周吃生蔬菜的频次类型", "平均每天吃水果次数", "吃水果的时间段"],
["平时吃水果的频次", "经常吃的水果以及份量","一餐吃几碗饭"],
["吃几成饱","吃饭速度", "饮食特点"],
["常吃的零食","有无服用营养保健品", "营养保健品品牌名"],
["营养保健品产品名","服用营养保健品频次", "忌口过敏食物"],
],
[
["每天的饮水量", "喜欢喝什么水", "喝水习惯"],
["常喝的饮品的每周频次", "是否喝酒", "喝酒种类"],
["对应酒的量", "是否抽烟", "抽烟频次和烟龄"],
["是否经常抽二手烟", "工作行业", "工作性质"],
["排便次数", "排便时间段", "排便的形状"],
["排便的气味", "排便的速度", "排便的颜色"],
],
[
["每周运动次数", "每次运动的时长", "每天运动的时间"],
["运动", "运动场地", ""],
],
[
["睡觉时间", "睡眠质量", "是否有辅助入睡药物"],
["辅助睡眠类药物名称", "是否经常熬夜", "熬夜频次"],
],
[
["病史体征", "湿气数据", "气血数据"],
["家族疾病史", "手术史", "近期是否做过手术"],
["手术恢复情况", "是否长期服用药物", "长期服用的药物"],
["是否出现过过敏症状", "过敏症状", "过敏源"],
],
[["体检报告(1)", "体检报告(2)", "体检报告(3)"]],
[
["餐前餐后血糖", "是否有规律测血糖", "测量血糖时间"],
["近期血糖水平", "是否有低血糖反应", "是否有出现并发症"],
["并发症情况", "存在症状", "近三个月体重是否有变化"],
],
[
["餐前餐后血压", "是否有规律测血压", "测量血压时间"],
["近期血压水平", "是否有低血压反应", "是否有出现并发症"],
["并发症情况", "存在症状", "近三个月体重是否有变化"]
],
[
["你认为你是一个容易焦虑或紧张的人吗","最近一段时间,你是否比平时更感到焦虑或忐忑不安","是否有一些特殊场合或情景更容易使得你紧张、焦虑"],
["你曾经有过惊恐发作吗.即突然发生的强烈不适感或心慌、眩晕、感到憋气或呼吸困难等症状","",""]
],
[
["过去几周(或几个月)是否感觉到无精打采、伤感、或对生活的乐趣减少","除了不开心之外,是否比平时更加悲观或想哭","经常有早醒吗(事实上不需那么早醒来)"],
["近来是否经常想到活着没有意思","",""]
],
[
["月经周期、天数", "月经预估量", "月经推迟时长"],
["月经提前时长", "是否闭经、闭经时长", "月经颜色"],
["月经形状","痛经情况","痛经类型"],
["用药情况","是否有生育计划","是否同房出血"],
["是否排卵期出血","是否出现胰岛素抵抗","其他补充"]
]
]
// 健康评估属性
export const healthyValueData = [
[
["createTime", "name", "phone"],
["conditioningProject", "sex", "age"],
["tall", "weight", "healthyExtend,waist"],
["healthyExtend,hipline", "position", "bmi"],
],
[
["experience", "difficulty", "rebound"],
["crux", "", ""],
],
[
["condiment", "cookingStyle", "cookingStyleRate"],
["washVegetablesStyle", "", ""],
],
[
["breakfastType", "breakfastFood", "lunchType"],
["dinner", "vegetableRate", "commonMeat"],
["dinnerTime", "supperNum", "supperFood"],
["dietHotAndCold", "dietFlavor", "vegetablesNum"],
["vegetablesRateType", "fruitsNum", "fruitsTime"],
["fruitsRate", "healthyExtend,eatFruitsMessage", "riceNum"],
[ "riceFull","eatingSpeed", "makeFoodType"],
["snacks","healthProductsFlag", "healthProductsBrand"],
["healthProductsName","healthProductsWeekRate", "dishesIngredient"],
],
[
["waterNum", "waterType", "waterHabit"],
["drinksNum", "drinkWineFlag", "drinkWineClassify"],
["drinkWineAmount", "smokeFlag", "smokeRate"],
["secondSmoke", "workIndustry", "workType"],
["defecationNum", "defecationTime", "defecationShape"],
["defecationSmell", "defecationSpeed", "defecationColor"],
],
[
["motionNum", "motionDuration", "motionTime"],
["motion", "motionField", ""],
],
[
["sleepTime", "sleepQuality", "sleepDrugFlag"],
["sleepDrug", "stayupLateFlag", "stayupLateWeekNum"],
],
[
["physicalSigns", "moistureDate", "bloodData"],
["familyIllnessHistory", "operationHistory", "nearOperationFlag"],
["recoveryeSituation", "longEatDrugFlag", "longEatDrugClassify"],
["allergyFlag", "allergySituation", "allergen"],
],
[["medicalReport_one", "medicalReport_two", "medicalReport_three"]],
[
["mealBloodSugar", "measureBloodSugarFlag", "measureBloodSugarTime"],
["nearBloodSugar", "lowBloodSugarFlag", "complicationFlag"],
["complication", "inferiorSymptom", "weightChangeFlag"]
],
[
["mealBloodPressure", "measureBloodPressureFlag", "measureBloodPressureTime"],
["nearBloodPressure", "lowBloodPressureFlag", "pressureComplicationFlag"],
["pressureComplication", "pressureInferiorSymptom", "pressureWeightChangeFlag"],
],
[
["easyAnxiousFlag","upsetRecently","nervousOnSpecialOccasionsFlag"],
["terrifiedFlag","",""]
],
[
["listlessRecentlyFlag","cryRecentlyFlag","wakeUpEarlyRecentlyFlag"],
["noFunLiving","",""]
],
[
["menstrualCycle", "menstrualForecast", "menstrualDelayDays"],
["menstrualAdvanceDays", "amenorrhoeaDays", "menstrualColor"],
["menstrualCharacter","menstrualNature","menstrualType"],
["medication","familyPlann","sameRoomBleed"],
["ovulationBleed","insulinResistanceFlag","otherDescriptions"]
]
]

View File

@ -222,7 +222,11 @@ export default {
"complication": null, "complication": null,
"inferiorSymptomFlag": 0, "inferiorSymptomFlag": 0,
"inferiorSymptom": [], "inferiorSymptom": [],
"weightChangeFlag": 0 "weightChangeFlag": 0,
//
"sugarHemoglobin": null,
//
"weightChangeDescribe": null
}, },
// //
bloodPressureMessage:{ bloodPressureMessage:{
@ -252,6 +256,51 @@ export default {
"cryRecentlyFlag":0, "cryRecentlyFlag":0,
"wakeUpEarlyRecentlyFlag":0, "wakeUpEarlyRecentlyFlag":0,
"noFunLiving":0 "noFunLiving":0
},
///
menstruationMessage:{
//
menstrualCycle: null,
//
menstrualDays: null,
//
menstrualForecast: null,
//
menstrualDelayDays: null,
//
menstrualAdvanceDays: null,
//
amenorrhoeaFlag: 0,
//
amenorrhoeaDays: null,
//
menstrualColor: null,
//
otherMenstrualColor: null,
//
menstrualCharacter: null,
//
otherMenstrualCharacter: null,
//
menstrualPainFlag: 0,
//
menstrualNature: "0",
//
menstrualType: "0",
//
medicationFlag: 0,
//
medication: null,
//
familyPlann: 0,
//
sameRoomBleed: 0,
//
ovulationBleed: 0,
//
insulinResistanceFlag: 0,
//
otherDescriptions: null
} }
} }
}, },
@ -355,10 +404,7 @@ export default {
}); });
let cusMessageExtended = Object.assign({}, this.form.healthyExtend); let cusMessageExtended = Object.assign({}, this.form.healthyExtend);
//healthyExtend //healthyExtend
this.healthyData["needJSONFieldName"].forEach(function (item, index) { cusMessage.healthyExtend = this.healthyData.dealHealthyExtendJson(cusMessageExtended, false);
cusMessageExtended[item] = cusMessageExtended[item] != null ? JSON.stringify(cusMessageExtended[item]) : null;
});
cusMessage.healthyExtend = cusMessageExtended;
addCustomerHealthy(cusMessage) addCustomerHealthy(cusMessage)
.then((response) => { .then((response) => {
if (response.code === 200) { if (response.code === 200) {
@ -400,11 +446,17 @@ export default {
} }
} }
if((this.stepActive == 7 && step > 0) || (this.stepActive == 9 && step < 0)){ if((this.stepActive == 7 && step > 0) || (this.stepActive == 9 && step < 0)){
// //
if(this.healthyData.extendHealthyIndex.indexOf(this.form.conditioningProjectId) == -1){ if(this.healthyData.extendHealthyIndex.indexOf(this.form.conditioningProjectId) == -1){
step = step * 2; step = step * 2;
} }
} }
if((this.stepActive == 0 && step > 0) || (this.stepActive == 2 && step < 0)){
//
if(this.healthyData.notExperienceIndex.indexOf(this.form.conditioningProjectId) != -1){
step = step * 2;
}
}
this.stepArray[this.stepActive] = false; this.stepArray[this.stepActive] = false;
this.stepActive = this.stepActive + step; this.stepActive = this.stepActive + step;
this.stepArray[this.stepActive] = true; this.stepArray[this.stepActive] = true;