diff --git a/config/baseUrl.js b/config/baseUrl.js
index e460a939..17028d24 100644
--- a/config/baseUrl.js
+++ b/config/baseUrl.js
@@ -3,8 +3,8 @@ let baseUrl = "";
let socketUrl = "";
if (process.env.NODE_ENV === 'development') {
// 开发环境
- baseUrl = "http://192.168.110.100:9200/pb/"; // 张川川
- // baseUrl = "https://api.nuttyreading.com/"; //线上正式
+ // baseUrl = "http://192.168.110.100:9200/pb/"; // 张川川
+ baseUrl = "https://api.nuttyreading.com/"; //线上正式
} else if (process.env.NODE_ENV === 'production') {
// baseUrl = "http://192.168.110.100:9200/pb/"; // 张川川
baseUrl = "https://api.nuttyreading.com/"; //线上正式
diff --git a/pages.json b/pages.json
index c3bdb1a9..ac79c9fb 100644
--- a/pages.json
+++ b/pages.json
@@ -1,16 +1,16 @@
{
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
- // {
- // "path": "pages/home/index",
- // "style": {
- // "navigationBarTitleText": "首页",
- // "app-plus": {
- // "bounce": "none",
- // "titleNView": false,
- // "popGesture": "none"
- // }
- // }
- // },
+ {
+ "path": "pages/home/index",
+ "style": {
+ "navigationBarTitleText": "首页",
+ "app-plus": {
+ "bounce": "none",
+ "titleNView": false,
+ "popGesture": "none"
+ }
+ }
+ },
{
"path": "pages/doctors/index",
"style": {
diff --git a/pages/home/index.vue b/pages/home/index.vue
index cfdb9f0c..ff0aa9d3 100644
--- a/pages/home/index.vue
+++ b/pages/home/index.vue
@@ -24,57 +24,30 @@
-
-
-
- 患者姓名
-
+
+
+
+ {{item.title}}
+ {{ inquiryCollapsed[index] ? '展开' : '收起' }}
-
- 西医诊断
-
+
+ {{ child.label }}
+
+
+
+
+
+
+
-
- 主要病史
-
-
-
- 主要症状
-
-
-
- 检查结果
-
-
-
- 基因检测阳性
-
-
-
-
-
-
- {{ item }}
- ×
-
-
-
-
-
-
-
+
+
{
+ if (this.isInquiryBlockComplete(block) && !this.inquiryCollapsed[index]) {
+ this.$set(this.inquiryCollapsed, index, true);
+ }
+ });
+ },
+ deep: true
+ }
+ },
onLoad() {
uni.hideTabBar();
uni.removeStorageSync('homeParams');
+ this.inquiryCollapsed = this.inquiryFormData.map(() => false);
//获取设备信息
const systemInfo = uni.getSystemInfoSync();
this.containerHeight = systemInfo.windowHeight; //获取设备的窗口高度
@@ -270,6 +260,39 @@ export default {
}
},
methods: {
+ toggleInquiryBlock(index) {
+ this.$set(this.inquiryCollapsed, index, !this.inquiryCollapsed[index]);
+ },
+ onRadioChange(blockIndex, childIndex, event) {
+ const value = event && event.detail ? event.detail.value : '';
+ this.$set(this.inquiryFormData[blockIndex].content[childIndex], 'value', value);
+ this.autoCollapseBlock(blockIndex);
+ },
+ onCheckboxChange(blockIndex, childIndex, event) {
+ const value = event && event.detail ? event.detail.value : [];
+ this.$set(this.inquiryFormData[blockIndex].content[childIndex], 'value', value);
+ this.autoCollapseBlock(blockIndex);
+ },
+ onInputChange(blockIndex, childIndex, event) {
+ const value = event && event.detail ? event.detail.value : event;
+ this.$set(this.inquiryFormData[blockIndex].content[childIndex], 'value', value);
+ this.autoCollapseBlock(blockIndex);
+ },
+ autoCollapseBlock(index) {
+ const block = this.inquiryFormData[index];
+ if (this.isInquiryBlockComplete(block) && !this.inquiryCollapsed[index]) {
+ this.$set(this.inquiryCollapsed, index, true);
+ }
+ },
+ isInquiryBlockComplete(block) {
+ if (!block || !Array.isArray(block.content)) return false;
+ return block.content.every(field => {
+ if (field.type === 'checkbox') {
+ return Array.isArray(field.value) && field.value.length > 0;
+ }
+ return field.value !== '' && field.value !== null && field.value !== undefined;
+ });
+ },
//设置滚动到最底部
scrollToBottom() {
this.scrollIntoView = '';
@@ -1493,7 +1516,7 @@ h3{
}
.aiFlag{
position: absolute;
- bottom: 55px;
+ bottom: 80px;
left: 20px;
width: calc(100% - 40px);
font-size: 11px;
@@ -1505,4 +1528,13 @@ h3{
padding: 5px;
border-radius: 6px;
}
+
+/* 模块标题条 */
+.inquiry-block{margin:14px 12px;background:#fff;border-radius:18px;padding:14px 14px 10px;box-shadow:0 8px 20px rgba(15,23,42,.06);border:1px solid #e2e8f0}
+.inquiry-block-title{display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:600;margin-bottom:12px;cursor:pointer;padding-bottom:8px;border-bottom:1px dashed #e2e8f0;}
+.inquiry-block-title .collapse-icon{font-size:12px;color:#64748b;font-weight: normal;}
+.inquiry-block-title::before{content:"";width:6px;height:16px;border-radius:3px;background:linear-gradient(180deg,#2563eb,#60a5fa);margin-right:8px}
+
+.child-inquiry{margin-bottom:14px;}
+.child-inquiry .title{font-size:13px;color:#64748b;margin-bottom:6px}
diff --git a/pages/home/inquiryFormData.js b/pages/home/inquiryFormData.js
new file mode 100644
index 00000000..e47fcefd
--- /dev/null
+++ b/pages/home/inquiryFormData.js
@@ -0,0 +1,638 @@
+const inquiryFormData = [
+ {
+ title: '就诊类型',
+ content: [
+ {
+ label: '就诊类型',
+ type: 'radio',
+ field: 'visitType',
+ value: '',
+ options: ['初诊', '复诊']
+ }
+ ]
+ },
+ {
+ title: '基本信息',
+ content: [
+ {
+ label: '性别',
+ type: 'radio',
+ field: 'gender',
+ value: '',
+ options: ['男', '女']
+ },
+ {
+ label: '年龄',
+ type: 'input',
+ field: 'age',
+ value: '',
+ options: []
+ },
+ {
+ label: '婚姻状况',
+ type: 'radio',
+ field: 'isMarried',
+ value: '',
+ options: ['已婚', '未婚']
+ },
+ {
+ label: '孕',
+ type: 'input',
+ field: 'pregnancyCount',
+ value: '',
+ options: []
+ },
+ {
+ label: '产',
+ type: 'input',
+ field: 'deliveryCount',
+ value: '',
+ options: []
+ },
+ {
+ label: '是否哺乳',
+ type: 'radio',
+ field: 'isBreastfeeding',
+ value: '',
+ options: ['是', '否']
+ },
+ {
+ label: '肿瘤家族史',
+ type: 'input',
+ field: 'familyCancerHistory',
+ value: '',
+ options: []
+ }
+ ]
+ },
+ {
+ title: '病史信息',
+ content: [
+ {
+ label: '确诊时间(年/月)',
+ type: 'input',
+ field: 'diagnosisTime',
+ value: '',
+ options: []
+ },
+ {
+ label: '派杰氏病',
+ type: 'radio',
+ field: 'pagetDisease',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '乳头溢液或溢血',
+ type: 'radio',
+ field: 'nippleDischarge',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '骨转移',
+ type: 'radio',
+ field: 'boneMetastasis',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '肺转移',
+ type: 'radio',
+ field: 'lungMetastasis',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '胸腔积液(就诊当下情况)',
+ type: 'radio',
+ field: 'pleuralEffusion',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '肝转移',
+ type: 'radio',
+ field: 'liverMetastasis',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '脑转移',
+ type: 'radio',
+ field: 'brainMetastasis',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '其他转移部位',
+ type: 'input',
+ field: 'otherMetastasisSites',
+ value: '',
+ options: []
+ },
+ {
+ label: '治疗史',
+ type: 'input',
+ field: 'treatmentHistory',
+ value: '',
+ options: []
+ },
+ {
+ label: '手术史',
+ type: 'input',
+ field: 'surgeryHistory',
+ value: '',
+ options: []
+ },
+ {
+ label: '化疗史',
+ type: 'input',
+ field: 'chemoHistory',
+ value: '',
+ options: []
+ },
+ {
+ label: '放疗史',
+ type: 'input',
+ field: 'radiotherapyHistory',
+ value: '',
+ options: []
+ },
+ {
+ label: '靶向治疗史',
+ type: 'input',
+ field: 'targetedTherapyHistory',
+ value: '',
+ options: []
+ },
+ {
+ label: '免疫治疗史',
+ type: 'input',
+ field: 'immunotherapyHistory',
+ value: '',
+ options: []
+ }
+ ]
+ },
+ {
+ title: '病理信息',
+ content: [
+ {
+ label: 'ER',
+ type: 'radio',
+ field: 'erStatus',
+ value: '',
+ options: ['阳性', '阴性']
+ },
+ {
+ label: 'PR',
+ type: 'radio',
+ field: 'prStatus',
+ value: '',
+ options: ['阳性', '阴性']
+ },
+ {
+ label: 'HER2',
+ type: 'radio',
+ field: 'her2Status',
+ value: '',
+ options: ['阳性', '阴性']
+ },
+ {
+ label: '导管扩张或液体潴留',
+ type: 'radio',
+ field: 'ductDilation',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: 'Ki-67(%)',
+ type: 'input',
+ field: 'ki67',
+ value: '',
+ options: []
+ },
+ {
+ label: '淋巴结转移',
+ type: 'radio',
+ field: 'lymphNodeMetastasis',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '硬癌',
+ type: 'radio',
+ field: 'hardCarcinoma',
+ value: '',
+ options: ['是', '否']
+ },
+ {
+ label: '炎性乳癌',
+ type: 'radio',
+ field: 'inflammatoryBreastCancer',
+ value: '',
+ options: ['是', '否']
+ }
+ ]
+ },
+ {
+ title: '基因检测',
+ content: [
+ {
+ label: '基因检测异常结果',
+ type: 'input',
+ field: 'geneTestAbnormal',
+ value: '',
+ options: []
+ }
+ ]
+ },
+ {
+ title: '实验室检查',
+ content: [
+ {
+ label: '催乳素',
+ type: 'radio',
+ field: 'prolactin',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: '血小板',
+ type: 'radio',
+ field: 'platelet',
+ value: '',
+ options: ['10万以下', '正常', '30万以上']
+ },
+ {
+ label: '白细胞',
+ type: 'radio',
+ field: 'whiteBloodCell',
+ value: '',
+ options: ['正常', '升高', '降低']
+ },
+ {
+ label: '红细胞',
+ type: 'radio',
+ field: 'redBloodCell',
+ value: '',
+ options: ['正常', '升高', '降低']
+ },
+ {
+ label: '凝血酶原时间(PT)',
+ type: 'input',
+ field: 'pt',
+ value: '',
+ options: []
+ },
+ {
+ label: '部分凝血活酶时间(APTT)',
+ type: 'input',
+ field: 'aptt',
+ value: '',
+ options: []
+ },
+ {
+ label: 'D-二聚体',
+ type: 'input',
+ field: 'dDimer',
+ value: '',
+ options: []
+ },
+ {
+ label: '血尿酸',
+ type: 'radio',
+ field: 'uricAcid',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: '直接胆红素',
+ type: 'radio',
+ field: 'directBilirubinStatus',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: '直接胆红素(数值)',
+ type: 'input',
+ field: 'directBilirubinValue',
+ value: '',
+ options: []
+ },
+ {
+ label: '间接胆红素',
+ type: 'radio',
+ field: 'indirectBilirubinStatus',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: '间接胆红素(数值)',
+ type: 'input',
+ field: 'indirectBilirubinValue',
+ value: '',
+ options: []
+ },
+ {
+ label: 'ALT',
+ type: 'radio',
+ field: 'altStatus',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: 'ALT(数值)',
+ type: 'input',
+ field: 'altValue',
+ value: '',
+ options: []
+ },
+ {
+ label: 'AST',
+ type: 'radio',
+ field: 'astStatus',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: 'AST(数值)',
+ type: 'input',
+ field: 'astValue',
+ value: '',
+ options: []
+ },
+ {
+ label: 'GGT',
+ type: 'radio',
+ field: 'ggtStatus',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: 'GGT(数值)',
+ type: 'input',
+ field: 'ggtValue',
+ value: '',
+ options: []
+ },
+ {
+ label: 'ALP',
+ type: 'radio',
+ field: 'alpStatus',
+ value: '',
+ options: ['正常', '升高']
+ },
+ {
+ label: 'ALP(数值)',
+ type: 'input',
+ field: 'alpValue',
+ value: '',
+ options: []
+ },
+ {
+ label: '肿瘤标志物(最近一次异常及数值)',
+ type: 'input',
+ field: 'tumorMarkers',
+ value: '',
+ options: []
+ }
+ ]
+ },
+ {
+ title: '症状与体征',
+ content: [
+ {
+ label: '四肢冰凉',
+ type: 'radio',
+ field: 'coldLimbs',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '乏力',
+ type: 'radio',
+ field: 'fatigue',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '失眠',
+ type: 'radio',
+ field: 'insomnia',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '便秘',
+ type: 'radio',
+ field: 'constipation',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '腹泻',
+ type: 'radio',
+ field: 'diarrhea',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '厌食',
+ type: 'radio',
+ field: 'anorexia',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '胃痛',
+ type: 'radio',
+ field: 'stomachPain',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '恶心呕吐',
+ type: 'radio',
+ field: 'nauseaVomiting',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '口苦',
+ type: 'radio',
+ field: 'bitterTaste',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '心悸',
+ type: 'radio',
+ field: 'palpitation',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '多汗',
+ type: 'radio',
+ field: 'hyperhidrosis',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '潮热',
+ type: 'radio',
+ field: 'hotFlush',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '口舌生疮',
+ type: 'radio',
+ field: 'mouthSores',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '外阴瘙痒',
+ type: 'radio',
+ field: 'vulvarItching',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '腰膝酸软',
+ type: 'radio',
+ field: 'lowBackWeakness',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '腿抽筋',
+ type: 'radio',
+ field: 'legCramps',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '烦躁',
+ type: 'radio',
+ field: 'irritability',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '紧张',
+ type: 'radio',
+ field: 'tension',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '焦虑',
+ type: 'radio',
+ field: 'anxiety',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '抑郁',
+ type: 'radio',
+ field: 'depression',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '疼痛',
+ type: 'radio',
+ field: 'pain',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '疼痛部位',
+ type: 'input',
+ field: 'painLocation',
+ value: '',
+ options: []
+ },
+ {
+ label: '肿瘤破溃',
+ type: 'radio',
+ field: 'tumorUlceration',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '上肢淋巴水肿',
+ type: 'radio',
+ field: 'upperLimbLymphedema',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '手术切口不愈合',
+ type: 'radio',
+ field: 'incisionNonHealing',
+ value: '',
+ options: ['有', '无']
+ },
+ {
+ label: '手术切口不愈合描述',
+ type: 'input',
+ field: 'incisionNonHealingDetail',
+ value: '',
+ options: []
+ },
+ {
+ label: '其他症状',
+ type: 'input',
+ field: 'otherSymptoms',
+ value: '',
+ options: []
+ }
+ ]
+ },
+ {
+ title: '中医舌脉信息',
+ content: [
+ {
+ label: '舌色',
+ type: 'radio',
+ field: 'tongueColor',
+ value: '',
+ options: ['淡', '正常', '红']
+ },
+ {
+ label: '舌形态',
+ type: 'checkbox',
+ field: 'tongueShape',
+ value: [],
+ options: ['胖大', '瘦小', '舌边沿肿大', '齿痕']
+ },
+ {
+ label: '苔色',
+ type: 'radio',
+ field: 'coatingColor',
+ value: '',
+ options: ['白', '黄', '黄白夹杂']
+ },
+ {
+ label: '苔厚度',
+ type: 'radio',
+ field: 'coatingThickness',
+ value: '',
+ options: ['厚腻', '正常', '薄、少', '花剥', '无苔']
+ },
+ {
+ label: '脉象',
+ type: 'checkbox',
+ field: 'pulseType',
+ value: [],
+ options: ['沉', '缓', '迟', '数', '滑', '涩', '微', '洪', '大', '细', '弦', '芤']
+ }
+ ]
+ }
+]
+export default inquiryFormData
diff --git a/pages/user/login.vue b/pages/user/login.vue
index 27140fd4..9d55ad02 100644
--- a/pages/user/login.vue
+++ b/pages/user/login.vue
@@ -417,12 +417,12 @@ export default {
setTimeout(() => {
uni.setStorageSync("isJump", "false");
- // uni.reLaunch({
- // url: "/pages/home/index"
- // });
uni.reLaunch({
- url: "/pages/doctors/index"
+ url: "/pages/home/index"
});
+ // uni.reLaunch({
+ // url: "/pages/doctors/index"
+ // });
}, 100);
}).catch(e => {
uni.showToast({
@@ -459,12 +459,12 @@ export default {
title: "登录成功",
});
setTimeout(() => {
- // uni.reLaunch({
- // url: "/pages/home/index"
- // });
uni.reLaunch({
- url: "/pages/doctors/index"
+ url: "/pages/home/index"
});
+ // uni.reLaunch({
+ // url: "/pages/doctors/index"
+ // });
}, 500);
}).catch(e => {
uni.showToast({