hwy 4 місяців тому
батько
коміт
e9bff2cbd6

+ 4 - 0
api/statistics-api.js

@ -348,6 +348,10 @@
    dealRecordPage: function (data) {
      return httpRequest.get('/doctor/jkCopd/dealRecordPage', { data: data })
    },
    
    getPatientAccetokenByIdcard: function (data) {
      return httpRequest.post('/doctor/archives/getPatientAccetokenByIdcard', { data: data })
    },
    followupDetail: function (data) {
      return httpRequest.get('/doctor/jkCopd/followupDetail', { data: data })
    },

+ 1 - 1
component/statistics/CopdPatientRecord/index.html

@ -107,7 +107,7 @@
              <el-button type="success  " size="mini" @click="toggle(true)">导入</el-button>
              <el-button type="ff9526" size="mini" @click="exportTable">导出</el-button>
              <el-button type="success" size="mini" @click="synPatient">档案同步</el-button>
              <el-button type="5692fb" size="mini" @click="distributionHospital">批量分配</el-button>
              <el-button type="primary" size="mini" @click="distributionHospital">批量分配</el-button>
              <span class="eliminate" @click="eliminateClick">清除筛选条件</span>
            </div>
            <!--=======================================================-->

+ 37 - 6
component/statistics/CopdPatientRecord/index.js

@ -50,6 +50,7 @@ Vue.component('copd-patient-record', {
      hospital:'',
      doctorName:'',
      isLive: '',
      patientCode:'',
      firstOrg: '',
      currentSelect:[],
      followupStatus:[],
@ -108,7 +109,6 @@ Vue.component('copd-patient-record', {
      vm.transferStatusOptions=[{code:'',value:'全部'}],
      vm.recordStatusOptions=[{code:'',value:'全部'}],
      vm.followStatusArr=[{code:'',value:'全部'}],
      vm.receivingHospitalList=[{code:'',name:'全部'}],
      vm.receiveStatusOptions=[{value:'',label:'全部'},{value:'1',label:' 已接收'},{value:'0',label:' 未接收'}],
      vm.survivalStatusOption=[{code:'',value:'全部'}],
      vm.getJkCopdPatientPage()
@ -321,12 +321,43 @@ Vue.component('copd-patient-record', {
      this.currentEditData = record
      this.serviceRecordVisable = true
    },
    /*打开预览链接*/
openURL (url) {
  let aLabel = document.createElement('a');
  //设置链接
  aLabel.setAttribute('href', url);
  //新窗口打开链接
  aLabel.setAttribute('target', '_blank');
  //设置标签ID
  aLabel.setAttribute('id', 'reportpoint');
  // 防止反复添加
  if (document.getElementById('reportpoint')) {
      document.body.removeChild(document.getElementById('reportpoint'));
     }
  document.body.appendChild(aLabel);
  aLabel.click();
  console.log("打开链接:",url);
  //window.open(url);
},
    onClickHealthRecord(record) {
      console.log('ssssssssssssssss',record)
    var  healthRecordServer="http://www.xmtyw.cn/wlyy/profileweb/#/"  //健康档案服务
     var healthRecordServer="https://www.xmtyw.cn/wlyytest/profileweb/#/"  //健康档案服务wlyytest
       window.open(healthRecordServer + '?patientCode=' + record.patient)
      // this.healthRecordVisable = true
      this.getCode(record.idcard)
    },
    getCode(idcard){
      var vm=this
      this.patientCode = ''
      statisticAPI.getPatientAccetokenByIdcard({idcard:idcard}).then(function(res){
      if (res.status == 200) {
        vm.patientCode=res.data.patientCode
        var  healthRecordServer="http://www.xmtyw.cn/wlyy/profileweb/#/menzhen"  //健康档案服务
        //var healthRecordServer="https://www.xmtyw.cn/wlyytest/profileweb/#/menzhen"  //健康档案服务wlyytest
      window.open(healthRecordServer + '?patientCode=' + res.data.patientCode)
      }else{
        vm.patientCode=''
        this.$message.error('获取授权码失败')
          return
      }
      })
    },
  	handleCurrentChange:function(val) {
      this.page = val

+ 1 - 2
component/statistics/CopdPatientRecordEdit/index.html

@ -149,8 +149,7 @@
              </el-select>
            </el-form-item>
            <el-form-item label="常住地区:" class="copd-form-item">
              <div     class="copd-form-input">
              <div class="copd-form-input">
                <el-cascader
                clearable
                width="100%"

+ 57 - 30
component/statistics/CopdPatientRecordEdit/index.js

@ -67,6 +67,9 @@ Vue.component('copd-patient-record-edit', {
      deep: true,
      immediate: true
   },
   addressVal(value){
    console.log(value,'0000000000000000000000')
   }
  },
  mounted() {
    var vm=this
@ -293,36 +296,60 @@ Vue.component('copd-patient-record-edit', {
          }else{
            vm.formData.sex=2
          }
          vm.addressVal.forEach(function(item,index){
             if(index==0){
              vm.formData.liveProvince=item
              vm.formData.liveProvinceName=vm.$refs.cascader.currentLabels[index]
             }else if(index==1){
              vm.formData.liveCity=item
              vm.formData.liveCityName=vm.$refs.cascader.currentLabels[index]
             }else if(index==2){
              vm.formData.liveTown=item
              vm.formData.liveTownName=vm.$refs.cascader.currentLabels[index]
             }else if(index==3){
              vm.formData.liveStreet=item
              vm.formData.liveStreetName=vm.$refs.cascader.currentLabels[index]
             }
          })
          vm.resiginAddressVal.forEach(function(item,index){
            if(index==0){
             vm.formData.registProvince=item
             vm.formData.registProvinceName=vm.$refs.cas.currentLabels[index]
            }else if(index==1){
             vm.formData.registCity=item
             vm.formData.registCityName=vm.$refs.cas.currentLabels[index]
            }else if(index==2){
             vm.formData.registTown=item
             vm.formData.registTownName=vm.$refs.cas.currentLabels[index]
            }else if(index==3){
             vm.formData.registStreet=item
             vm.formData.registStreetName=vm.$refs.cas.currentLabels[index]
            }
         })
          if(vm.addressVal.length){
            
            vm.addressVal.forEach(function(item,index){
               if(index==0){
                vm.formData.liveProvince=item
                vm.formData.liveProvinceName=vm.$refs.cascader.currentLabels[index]
               }else if(index==1){
                vm.formData.liveCity=item
                vm.formData.liveCityName=vm.$refs.cascader.currentLabels[index]
               }else if(index==2){
                vm.formData.liveTown=item
                vm.formData.liveTownName=vm.$refs.cascader.currentLabels[index]
               }else if(index==3){
                vm.formData.liveStreet=item
                vm.formData.liveStreetName=vm.$refs.cascader.currentLabels[index]
               }
            })
          }else{
            vm.formData.liveProvince=''
            vm.formData.liveProvinceName=''
            vm.formData.liveCity=''
            vm.formData.liveCityName=''
            vm.formData.liveTown=''
            vm.formData.liveTownName=''
            vm.formData.liveStreet=''
            vm.formData.liveStreetName=''
          }
          if(vm.resiginAddressVal.length){
            vm.resiginAddressVal.forEach(function(item,index){
              if(index==0){
               vm.formData.registProvince=item
               vm.formData.registProvinceName=vm.$refs.cas.currentLabels[index]
              }else if(index==1){
               vm.formData.registCity=item
               vm.formData.registCityName=vm.$refs.cas.currentLabels[index]
              }else if(index==2){
               vm.formData.registTown=item
               vm.formData.registTownName=vm.$refs.cas.currentLabels[index]
              }else if(index==3){
               vm.formData.registStreet=item
               vm.formData.registStreetName=vm.$refs.cas.currentLabels[index]
              }
           })
          }else{
            vm.formData.registProvince=''
            vm.formData.registProvinceName=''
            vm.formData.registCity=''
            vm.formData.registCityName=''
            vm.formData.registTown=''
            vm.formData.registTownName=''
            vm.formData.registStreet=''
            vm.formData.registStreetName=''
          }
          statisticAPI.updJkCopdPatient({jsonData:JSON.stringify(vm.formData),doctor:vm.docInfo.code}).then(
            function(res){
              if(res.status==200){

+ 20 - 0
component/statistics/CopdRecordSearch/index.js

@ -264,6 +264,22 @@ initScope(vm) {
        vm.daLoading=false
      })
    },
    bubbleSort(array) {
      for (var i = 0; i < array.length - 1; i++) {
        for (var j = 0; j < array.length - i - 1; j++) {
          // 1.对每一个值和它的下一个值进行比较
          if (array[j] > array[j + 1]) {
            // 如果第一个值更多,则将其赋予自定义计数值 count
             var count = array[j];
              // 反复交换
              array[j] = array[j + 1];
              array[j + 1] = count;
           };
        };
      };
      return array;
    },
    
    search(){
      if(this.quotaStrArr.length){
        this.manageInfo()
@ -311,6 +327,10 @@ initScope(vm) {
    exportTable(){
      var vm=this
      vm.daLoading=true
      //  var quotaStrs= this.bubbleSort(this.quotaStrArr)
      this.quotaStrArr.sort(function(a, b) {
        
       return a - b});
      var params={
        startTime: this.radio==1? this.chooseYear+'-01-01' : this.startTime,
        endTime:this.radio==1? this.chooseYear+'-12-31': this.endTime,

+ 22 - 6
component/statistics/CopdServiceRecord/index.html

@ -97,7 +97,7 @@
                    <template v-else>这是数据值,他可能会很长</template> -->
                    </span>
                  </div>
                  <div style="width: 50%">
                  <div style="width: 50%" v-if="event.isCirculation!=0">
                    <span style="color: #9fa2a8">流转去向:</span>
                    <span style="color: #656565">
                      <template v-if="event.isCirculation==0">———</template>
@ -112,11 +112,11 @@
                    <template v-else>这是数据值,他可能会很长</template> -->
                    </span>
                  </div>
                  <div style="width: 50%">
                  <div style="width: 50%" v-if="event.isBack!=0">
                    <span style="color: #9fa2a8">回退原因:</span>
                    <span style="color: #656565">
                      <template v-if="event.isBack==0">———</template>
                      <template v-else>{{event.backReason}}</template>
                      <template v-else>{{event.backType==1?'找到本人或家属,但否认慢阻肺病史':event.backType==2?'找到本人或家属,非本辖区,也不清楚现在的住址':event.backReason}}</template>
                    </span>
                  </div>
                  <div style="width: 50%">
@ -181,7 +181,7 @@
                    <template v-else>这是数据值,他可能会很长</template> -->
                    </span>
                  </div>
                  <div style="width: 50%">
                  <div style="width: 50%" v-if="event.isCirculation!=0">
                    <span style="color: #9fa2a8">流转去向:</span>
                    <span style="color: #656565">
                      <template v-if="event.isCirculation==0">———</template>
@ -196,11 +196,11 @@
                    <template v-else>这是数据值,他可能会很长</template> -->
                    </span>
                  </div>
                  <div style="width: 50%">
                  <div style="width: 50%" v-if="event.isBack!=0">
                    <span style="color: #9fa2a8">回退原因:</span>
                    <span style="color: #656565">
                      <template v-if="event.isBack==0">———</template>
                      <template v-else>{{event.backReason}}</template>
                      <template v-else>{{event.backType==1?'找到本人或家属,但否认慢阻肺病史':event.backType==2?'找到本人或家属,非本辖区,也不清楚现在的住址':event.backReason}}</template>
                    </span>
                  </div>
                  <div style="display: flex; justify-content: space-between; width: 100%; ">
@ -254,12 +254,25 @@
                  </div>
                <div class="data-title" style="color: #12B7F5; font-size: 14px" v-if="event.type==5" @click="showDetail(event)"> 查看随访详情</div>
                <div class="data-cont" v-else>
                
                  <div style="width: 50%" v-for="item in event.achievesRecordList" :key="item.id">
                    <span style="color: #9fa2a8">{{item.classFieldName}}:</span>
                    <span style="color: #656565">
                      <template>{{item.newCommentName}}</template>
                    </span>
                  </div>
                  <div style="width: 50%">
                    <span style="color: #9fa2a8">操作医生:</span>
                    <span style="color: #656565">
                      <template>{{event.operaterName}}</template>
                    </span>
                  </div>
                  <div style="width: 50%" >
                    <span style="color: #9fa2a8">操作机构:</span>
                    <span style="color: #656565">
                      <template>{{event.orgName}}</template>
                    </span>
                  </div>
                </div>
                
              </div>
@ -291,6 +304,9 @@
          <div class="copd-bb-base-info-item" v-if="followup"> 
            随访状态:{{followup}}
          </div>
          <div class="copd-bb-base-info-item" v-if="followInfo.status==4"> 
            失访原因:{{followInfo.lostReason}}
          </div>
        </div>
      </div>
      <template v-if="followInfo.status!='4'">

+ 13 - 8
component/statistics/CopdServiceRecord/index.js

@ -34,8 +34,9 @@ Vue.component('copd-service-record', {
        {date: '2026年', description: 'Description for event 4'},
        {title: 'Event 5', date: '2027年', description: 'Description for event 5'}
      ],
      dicName:['jkcopd_followup_status','jkcopd_symptom','jkcopd_isLive','jkcopd_first_area','jkcopd_first_org_level', 'jkcopd_marriage','jkcopd_occupation','jkcopd_smoke','jkcopd_drink','jkcopd_archivesStatus','jkcopd_disease_conversion','jkcopd_firstVisitType','jkcopd_educational','idCardType','jkcopd_diagnosticBasis'],
      dicName:['jkcopd_back_type','jkcopd_followup_status','jkcopd_symptom','jkcopd_isLive','jkcopd_first_area','jkcopd_first_org_level', 'jkcopd_marriage','jkcopd_occupation','jkcopd_smoke','jkcopd_drink','jkcopd_archivesStatus','jkcopd_disease_conversion','jkcopd_firstVisitType','jkcopd_educational','idCardType','jkcopd_diagnosticBasis'],
      marriageArr:[],
      backTypeName:'',
      diagnosticBasisName:'',
      marriageName:'',
      symptom:'',
@ -154,16 +155,11 @@ Vue.component('copd-service-record', {
              vm.educational=item.value
            }
          })
          
        }else if(value=='jkcopd_symptom'){
          var arr = res.list
          vm.symptomsArr=[]
          var symptoms=vm.followInfo.symptom.split(',')
    
          arr.forEach(function(item){
            // if(item.code==vm.followInfo.symptom){
            //   vm.symptom=item.value
            // }
            symptoms.forEach(function(v){
              if(v==item.code){
                vm.symptomsArr.push(item.value)
@ -171,8 +167,6 @@ Vue.component('copd-service-record', {
            })
          })
          vm.symptom=vm.symptomsArr.join()
          console.log('-----------------',vm.symptomsArr,vm.symptom)
        }
        else if(value=='jkcopd_diagnosticBasis'){
          var arr = res.list
@ -183,6 +177,17 @@ Vue.component('copd-service-record', {
          })
        }
        // }else if(value=='jkcopd_back_type'){
        //   var arr = res.list
        //   arr.forEach(function(item){
        //     if(item.code==vm.followInfo.backType){
        //       vm.backTypeName=item.value
        //       console.log('wwwwwwwwwwwwwwwwwwwww',vm.backTypeName)
        //     }
        //   })
        // }
        
       
      })