Kaynağa Gözat

西南儿童要求:挂号页面添加字段

yanqiliang 3 ay önce
ebeveyn
işleme
32a9be42ed
2 değiştirilmiş dosya ile 465 ekleme ve 584 silme
  1. 169 3
      src/pages/index/pages/components/writeDeseCon/writeDeseCon.vue
  2. 296 581
      yarn.lock

+ 169 - 3
src/pages/index/pages/components/writeDeseCon/writeDeseCon.vue

@@ -85,6 +85,53 @@
                     </scroll-view>
                 </view>
                 <view class="ddc-message" v-if="entrance != '4'">*为保护您的隐私,请不要输入您的住址等信息。</view>
+                <!-- 是否线下就诊过 -->
+                <view class="detail-list-item" v-if="entrance != '4'">
+                    <view><text style="color:#ee0a24;">*</text>是否就该病情到线下医院就诊过</view>
+                    <view class="right">
+                        <radio-group style="display:flex;" @change="onChangeVisited">
+                            <label style="margin-right:30rpx;"><radio value="Y" :checked="visitedOffline === 'Y'" style="transform:scale(0.8);" />是</label>
+                            <label><radio value="N" :checked="visitedOffline === 'N'" style="transform:scale(0.8);" />否</label>
+                        </radio-group>
+                    </view>
+                </view>
+                <view class="detail-list-item" v-if="entrance != '4' && visitedOffline === 'Y'">
+                    <view><text style="color:#ee0a24;">*</text>医生诊断的名称</view>
+                    <view class="right" style="text-align: right;">
+                        <input placeholder="请输入医生诊断的名称" :value="offlineDiagnosis" @input="inputDiagnosis" />
+                    </view>
+                </view>
+                <!-- 职业 -->
+                <view class="detail-list-item" v-if="entrance != '4'">
+                    <view><text style="color:#ee0a24;">*</text>职业</view>
+                    <view class="right">
+                        <picker mode="selector" :range="OCCUList" range-key="label" @change="onChangeOCCU">
+                            <view style="display:flex;align-items:center;">
+                                <text style="margin-right:20rpx" :style="{ color: OCCUSelect ? '#333333' : '#999999' }">{{ OCCUSelect ? OCCUSelect.label : '请选择' }}</text>
+                                <uni-icons size="28rpx" color="#333333" type="forward" />
+                            </view>
+                        </picker>
+                    </view>
+                </view>
+                <!-- 问诊人 -->
+                <view class="detail-list-item" v-if="entrance != '4'">
+                    <view><text style="color:#ee0a24;">*</text>问诊人</view>
+                    <view class="right" style="text-align: right;">
+                        <input placeholder="请输入问诊人姓名" :value="inquirerName" @input="inputInquirerName" />
+                    </view>
+                </view>
+                <!-- 问诊人和就诊人关系 -->
+                <view class="detail-list-item" v-if="entrance != '4'">
+                    <view><text style="color:#ee0a24;">*</text>问诊人和就诊人关系</view>
+                    <view class="right">
+                        <picker mode="selector" :range="relationList" range-key="label" @change="onChangeRelation">
+                            <view style="display:flex;align-items:center;">
+                                <text style="margin-right:20rpx" :style="{ color: relationSelect ? '#333333' : '#999999' }">{{ relationSelect ? relationSelect.label : '请选择' }}</text>
+                                <uni-icons size="28rpx" color="#333333" type="forward" />
+                            </view>
+                        </picker>
+                    </view>
+                </view>
                 <view class="detail-list-item" style="border-bottom:0" v-if="entrance != '4'">
                     <view>
                         <view>上传图片</view>
@@ -355,6 +402,13 @@
                 checkBoxData: [],
                 checkBoxDesc: "",
                 checkBox: [],
+                visitedOffline: "", // 是否就该病情到线下医院就诊过 Y/N
+                offlineDiagnosis: "", // 医生诊断的名称
+                OCCUList: [], // 职业字典
+                OCCUSelect: null, // 选中的职业 {label, value}
+                inquirerName: "", // 问诊人
+                relationList: [], // 家庭关系字典
+                relationSelect: null, // 选中的关系 {label, value}
                 showMedicalInsurancePopup: true, // 医保使用提示弹窗是否显示
                 entrance: null,
                 platform: app.globalData.platform,
@@ -453,6 +507,7 @@
             })
             this.getCheckBox();
             this.getVisitorDataList();
+            this.getDictList();
         },
         methods: {
 			copyParams() {
@@ -644,6 +699,60 @@
                 });
             },
 
+            /// 获取职业、家庭关系字典(复用就诊人登记页字典接口)
+            getDictList() {
+                let data = {
+                    params: []
+                }
+                $http.post("urlS", this, {
+                    code: "01030011",
+                    data: data,
+                    success: function(res) {
+                        if (+res.errorCode === 0) {
+                            this.setData({
+                                OCCUList: res.OCCU && res.OCCU.length > 0 ? res.OCCU : [],
+                                relationList: res.relation && res.relation.length > 0 ? res.relation : []
+                            })
+                        }
+                    }
+                });
+            },
+
+            // 是否线下就诊过
+            onChangeVisited(e) {
+                this.setData({
+                    visitedOffline: e.detail.value
+                })
+            },
+
+            // 输入医生诊断的名称
+            inputDiagnosis(e) {
+                this.setData({
+                    offlineDiagnosis: e.detail.value
+                })
+            },
+
+            // 输入问诊人姓名
+            inputInquirerName(e) {
+                this.setData({
+                    inquirerName: e.detail.value
+                })
+            },
+
+            // 选择职业
+            onChangeOCCU(e) {
+                this.setData({
+                    OCCUSelect: this.OCCUList[e.detail.value] || null
+                })
+            },
+
+            // 选择问诊人和就诊人关系
+            onChangeRelation(e) {
+                this.setData({
+                    relationSelect: this.relationList[e.detail.value] || null
+                })
+            },
+
             //切换单选按钮
             onChangeCheck(event) {
                 console.log(event)
@@ -1110,7 +1219,12 @@
                         schTimeKey,
                         disesNote,
                         patObj,
-                        showButton
+                        showButton,
+                        visitedOffline,
+                        offlineDiagnosis,
+                        OCCUSelect,
+                        inquirerName,
+                        relationSelect
                     } = self
                     console.log('schTimeKey==', schTimeKey)
                     let appointID = flag ? schDateKey : schTimeKey;
@@ -1130,6 +1244,46 @@
                         });
                         return;
                     }
+                    if (!visitedOffline && entrance != '4') {
+                        uni.hideLoading();
+                        uni.showToast({
+                            icon: 'none',
+                            title: '请选择是否到线下医院就诊过'
+                        });
+                        return;
+                    }
+                    if (visitedOffline === 'Y' && !offlineDiagnosis.trim() && entrance != '4') {
+                        uni.hideLoading();
+                        uni.showToast({
+                            icon: 'none',
+                            title: '请输入医生诊断的名称'
+                        });
+                        return;
+                    }
+                    if (!OCCUSelect && entrance != '4') {
+                        uni.hideLoading();
+                        uni.showToast({
+                            icon: 'none',
+                            title: '请选择职业'
+                        });
+                        return;
+                    }
+                    if (!inquirerName.trim() && entrance != '4') {
+                        uni.hideLoading();
+                        uni.showToast({
+                            icon: 'none',
+                            title: '请输入问诊人姓名'
+                        });
+                        return;
+                    }
+                    if (!relationSelect && entrance != '4') {
+                        uni.hideLoading();
+                        uni.showToast({
+                            icon: 'none',
+                            title: '请选择问诊人和就诊人关系'
+                        });
+                        return;
+                    }
                     if (!patObj.patName) {
                         uni.hideLoading();
                         uni.showToast({
@@ -1348,7 +1502,12 @@
                     drugName,
                     checkBoxDesc,
                     platform,
-                    appId
+                    appId,
+                    visitedOffline,
+                    offlineDiagnosis,
+                    OCCUSelect,
+                    inquirerName,
+                    relationSelect
                 } = self
                 const userCode = platform == "alipay" ? "alisf" : "wxsf"
                 const payWayCode = platform == "alipay" ? "ALIPAY" : "WECHAT"
@@ -1407,7 +1566,14 @@
                                     appointID: flag ? schDateKey : schTimeKey,
                                     AllergyFlag: checked ? "Y" : "N",
                                     AllergyDesc: drugName || "",
-                                    DiseaseDesc: checkBoxDesc || ""
+                                    DiseaseDesc: checkBoxDesc || "",
+                                    visitedFlag: visitedOffline || "", // 是否到线下医院就诊过 Y/N
+                                    diagnosisDesc: visitedOffline === 'Y' ? (offlineDiagnosis || "") : "", // 医生诊断的名称
+                                    occupationID: OCCUSelect && OCCUSelect.value ? OCCUSelect.value : "", // 职业ID
+                                    occupationDesc: OCCUSelect && OCCUSelect.label ? OCCUSelect.label : "", // 职业名称
+                                    inquirerName: inquirerName || "", // 问诊人
+                                    relationID: relationSelect && relationSelect.value ? relationSelect.value : "", // 关系ID
+                                    relationDesc: relationSelect && relationSelect.label ? relationSelect.label : "" // 关系名称
                                 },
                                 paywStr: [{
                                     payWayCode,

Dosya farkı çok büyük olduğundan ihmal edildi
+ 296 - 581
yarn.lock


Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor