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

+ 18 - 0
app/jbsc/html/filter_type.html

@ -145,6 +145,12 @@
							<div class="tag status-tag" :style="item.show?'background-color: #17b3ec;color: #fff;border: 1px solid #17b3ec;':''" v-for="(item,index) in status3" :key='index' @click="statusClick(item,3)">{{item.text}}</div>
						</div>		
					</div>
					<div id="statusType">
						<div class="c-333 c-f16 mt15 pl20">人群</div>
						<div class="c-border-b pb20 pl20 contetnBox">
							<div class="tag status-tag" :style="item.show?'background-color: #17b3ec;color: #fff;border: 1px solid #17b3ec;':''" v-for="(item,index) in status4" :key='index' @click="statusClick(item,4)">{{item.text}}</div>
						</div>		
					</div>
					<div class="clear-fixed-bottom" >
						<div class="btn-fixed-bottom">
							<button class="btn" style="background-color: #12b7f5;color: #fff;cursor: pointer"   @click="searchDenizen">筛选居民</button>
@ -208,6 +214,14 @@
						{id:'0',text:'未体检',show:false},
						{id:'1',text:'已体检',show:false},
					],
					status4:[
						{id:'',text:'全部',show:true},
						{id:'0',text:'老高糖',show:false},
						{id:'1',text:'儿童',show:false},
						{id:'2',text:'老年人',show:false},
						{id:'3',text:'高血压',show:false},
						{id:'4',text:'糖尿病',show:false},
					],
					medicalStatus:'',
					screenStatus:'',
					assessmentStatus:'',
@ -280,6 +294,10 @@
							vm.medicalStatus = item.id
							vm.medicalStatusName = item.text=='全部'?'':item.text
						}
						if(num==4){
							vm.medicalStatus = item.id
							vm.medicalStatusName = item.text=='全部'?'':item.text
						}
						data.forEach(function(v){
							if(v.id == item.id) {
								v.show = true

+ 32 - 2
app/jbsc/html/questionnaire.html

@ -102,6 +102,18 @@
                      <i></i>
                      <span v-text="opt.content"></span>
                    </template>
                    <template v-if="qst.isThird==3&&qst.question.thirdKey=='isCkd34'">
                      <input
                        :type="qst.questionType==1?'checkbox':'radio'"
                        :checked="opt.thirdValue == isCkd34"
                        id="myInput3"
                        :name="'ques'+index+screeningType+(qst.questionType==1?'[]':'')"
                        value="1" />
                      <i></i>
                      <span v-text="opt.content"></span>
                    </template>
                    <template v-if="qst.isThird==3&&qst.question.thirdKey=='diabetes'">
                      <input
                        :type="qst.questionType==1?'checkbox':'radio'"
@ -133,7 +145,7 @@
                      <span v-text="opt.content"></span>
                    </template>
                    <template
                      v-if="qst.question.thirdKey!='sex'&&qst.question.thirdKey!='acs'&&qst.question.thirdKey!='myocardialInfarct'&&qst.question.thirdKey!='ischemicStroke'&&qst.question.thirdKey!='smoke'&&qst.question.thirdKey!='hypertension'&&qst.question.thirdKey!='diabetes'&&qst.question.thirdKey!='seriousMedicalHistory'">
                      v-if="qst.question.thirdKey!='sex'&&qst.question.thirdKey!='acs'&&qst.question.thirdKey!='myocardialInfarct'&&qst.question.thirdKey!='ischemicStroke'&&qst.question.thirdKey!='smoke'&&qst.question.thirdKey!='isCkd34'&&qst.question.thirdKey!='hypertension'&&qst.question.thirdKey!='diabetes'&&qst.question.thirdKey!='seriousMedicalHistory'">
                      <input
                        :type="qst.questionType==1||qst.question.questionType?'checkbox':'radio'"
                        v-if="qst.question.thirdKey!='sex'"
@ -270,6 +282,7 @@
          ascvdS4: '',
          shaowas: '',
          smoke: '',
          isCkd34: '',
          hypertension: '',
          diabetes: '',
          questionList: [],
@ -614,6 +627,9 @@
              if (select.thirdKey == 'smoke') {
                vm.smoke = select.thirdValue
              }
              if (select.thirdKey == 'isCkd34') {
                vm.isCkd34 = select.thirdValue
              }
              if (select.thirdKey == 'hypertension') {
                vm.hypertension = select.thirdValue
              }
@ -900,12 +916,17 @@
                              vm.questions[i].question.content = data.renalFunctionCreatinine
                              vm.changeContent(vm.questions[i].question, data.renalFunctionCreatinine)
                            }
                            if (vm.questions[i].question.thirdKey == 'ckd34') {
                              if (data.renalFunctionCreatinine) {
                                var ckd34 = (((140 - vm.age) * data.weight) / (0.818 * data.renalFunctionCreatinine)).toFixed(2)
                                vm.questions[i].question.content = ckd34
                                vm.selectItem(vm.questions[i - 1].question, vm.questions[i - 1].option[0])
                                vm.changeContent(vm.questions[i].question, ckd34)
                              } else {
                                vm.selectItem(vm.questions[i - 1].question, vm.questions[i - 1].option[1])
                                vm.questions[i].question.content = '1'
                                vm.changeContent(vm.questions[i].question, '1')
                                vm.questions[i].question.content = ''
                              }
                            }
                          }
@ -975,6 +996,15 @@
              if (v.thirdKey == 'assessTime') {
                v.content = new Date(v.content).format('yyyy-MM-dd HH:mm')
              }
              if (v.thirdKey == 'isCkd34') {
                if (v.options[0].thirdValue == '0') {
                  vm.selectArr.forEach(function (it) {
                    if (it.thirdKey == 'ckd34') {
                      it.content = ''
                    }
                  })
                }
              }
            })
            var data
            if (vm.screeningType == 'aa9bd609fd8b492296f6a34849b76520') {

+ 189 - 180
app/rehabilitation/html/rehabilitation_management.html

@ -242,209 +242,218 @@
                <i class="icon icon-next icon-20" @click="nextMonth"></i>
              </span>
            </div>
            <div v-show="!showServerItemDetail&&tabStatus==1" class="calendar-content ui-grid ui-grid-vertical">
              <div class="calendar-descript">
                <span>图例注释:</span>
                <i class="icon icon-blue"></i>
                <span>专科团队</span>
                &emsp;
                <i class="icon icon-green"></i>
                <span>家医团队</span>
                &emsp;
                <i class="icon icon-flag"></i>
                <span>我的任务</span>
              </div>
              <!--快速查找-->
              <div class="ui-col-1 c-border-t" style="overflow: hidden; overflow-y: scroll" v-if="isFastSearch">
                <div v-if="searchData.length>0" class="calendar-days" v-for="searchData1 in searchData">
                  <div v-for="items in searchData1" class="flex-box clearfix">
                    <div class="fl flex-box calendar-day c-fff c-f28 bgc-2dbe55">
                      <p class="p0">{{items[0].mounth}}月</p>
                    </div>
                    <div class="fl calendar-day" v-for="item in items" @click="viewDetail(item.planDetailIds)" :is-future="item.future">
                      <span class="day-number">{{item.day}}</span>
                      <div class="task-icon">
                        <i v-if="item.myTaskFlag" class="icon icon-flag icon-20"></i>
                        <i v-if="item.finishFlag" class="icon icon-check"></i>
                      </div>
                      <div class="coloured-box">
                        <span v-if="item.specialist" class="coloured-ribbon coloured-ribbon-blue">
                          <br />
                        </span>
                        <span v-if="item.family" class="coloured-ribbon coloured-ribbon-green">
                          <br />
                        </span>
            <div class="c-t-center mt50">
              <img src="../images/wushuju_img.png" alt="" />
              <p class="c-999 mt10">
                该患者存在暂未结束的康复计划,
                <span style="color: #00a6ff">点击查看></span>
              </p>
            </div>
            <template v-if="0">
              <div v-show="!showServerItemDetail&&tabStatus==1" class="calendar-content ui-grid ui-grid-vertical">
                <div class="calendar-descript">
                  <span>图例注释:</span>
                  <i class="icon icon-blue"></i>
                  <span>专科团队</span>
                  &emsp;
                  <i class="icon icon-green"></i>
                  <span>家医团队</span>
                  &emsp;
                  <i class="icon icon-flag"></i>
                  <span>我的任务</span>
                </div>
                <!--快速查找-->
                <div class="ui-col-1 c-border-t" style="overflow: hidden; overflow-y: scroll" v-if="isFastSearch">
                  <div v-if="searchData.length>0" class="calendar-days" v-for="searchData1 in searchData">
                    <div v-for="items in searchData1" class="flex-box clearfix">
                      <div class="fl flex-box calendar-day c-fff c-f28 bgc-2dbe55">
                        <p class="p0">{{items[0].mounth}}月</p>
                      </div>
                      <div class="progress-box">
                        <div class="progress" :style="{opacity:item.specialist?'1':'0'}">
                          <span>{{(item.specialist && item.specialist.finish)+'/'+(item.specialist && item.specialist.all)}}</span>
                          <div
                            class="progress-bar"
                            role="progressbar"
                            aria-valuenow="0"
                            aria-valuemin="0"
                            aria-valuemax="100"
                            :style="{width: (item.specialist?(item.specialist.finish/item.specialist.all):0)*100+'%'}"></div>
                      <div class="fl calendar-day" v-for="item in items" @click="viewDetail(item.planDetailIds)" :is-future="item.future">
                        <span class="day-number">{{item.day}}</span>
                        <div class="task-icon">
                          <i v-if="item.myTaskFlag" class="icon icon-flag icon-20"></i>
                          <i v-if="item.finishFlag" class="icon icon-check"></i>
                        </div>
                        <div class="coloured-box">
                          <span v-if="item.specialist" class="coloured-ribbon coloured-ribbon-blue">
                            <br />
                          </span>
                          <span v-if="item.family" class="coloured-ribbon coloured-ribbon-green">
                            <br />
                          </span>
                        </div>
                        <div class="progress" :style="{opacity:item.family?'1':'0'}">
                          <span>{{(item.family && item.family.finish)+'/'+(item.family && item.family.all)}}</span>
                          <div
                            class="progress-bar progress-bar-success"
                            role="progressbar"
                            aria-valuenow="2"
                            aria-valuemin="0"
                            aria-valuemax="100"
                            :style="{width: (item.family?(item.family.finish/item.family.all):0)*100+'%'}"></div>
                        <div class="progress-box">
                          <div class="progress" :style="{opacity:item.specialist?'1':'0'}">
                            <span>{{(item.specialist && item.specialist.finish)+'/'+(item.specialist && item.specialist.all)}}</span>
                            <div
                              class="progress-bar"
                              role="progressbar"
                              aria-valuenow="0"
                              aria-valuemin="0"
                              aria-valuemax="100"
                              :style="{width: (item.specialist?(item.specialist.finish/item.specialist.all):0)*100+'%'}"></div>
                          </div>
                          <div class="progress" :style="{opacity:item.family?'1':'0'}">
                            <span>{{(item.family && item.family.finish)+'/'+(item.family && item.family.all)}}</span>
                            <div
                              class="progress-bar progress-bar-success"
                              role="progressbar"
                              aria-valuenow="2"
                              aria-valuemin="0"
                              aria-valuemax="100"
                              :style="{width: (item.family?(item.family.finish/item.family.all):0)*100+'%'}"></div>
                          </div>
                          <p v-if="!item.noService" class="mb0 f12" :class="{'visibility-hide':!curTask}" style="line-height: 1">{{curTaskName || '&emsp;'}}</p>
                        </div>
                        <p v-if="!item.noService" class="mb0 f12" :class="{'visibility-hide':!curTask}" style="line-height: 1">{{curTaskName || '&emsp;'}}</p>
                        <p v-if="item.noService" class="no-server">无服务项</p>
                      </div>
                      <p v-if="item.noService" class="no-server">无服务项</p>
                    </div>
                  </div>
                </div>
                <div v-else-if="!searchData[0].mouth" class="f16 ptb10 text-center">
                  <img src="../../../images/wushuju_img.png" class="mt50" />
                  <p class="c-666">暂无数据</p>
                </div>
              </div>
              <!--无快速查找-->
              <div class="ui-col-1" style="overflow: hidden; overflow-y: scroll" v-if="!isFastSearch">
                <div class="calendar-week">
                  <div class="flex-box text-center">
                    <div class="flex-box-item">周一</div>
                    <div class="flex-box-item">周二</div>
                    <div class="flex-box-item">周三</div>
                    <div class="flex-box-item">周四</div>
                    <div class="flex-box-item">周五</div>
                    <div class="flex-box-item">周六</div>
                    <div class="flex-box-item">周日</div>
                  <div v-else-if="!searchData[0].mouth" class="f16 ptb10 text-center">
                    <img src="../../../images/wushuju_img.png" class="mt50" />
                    <p class="c-666">暂无数据</p>
                  </div>
                </div>
                <div class="calendar-days">
                  <div v-for="items in calendarData" class="flex-box">
                    <div class="calendar-day" v-for="item in items" @click="viewDetail(item.planDetailIds)" :is-future="item.future">
                      <span class="day-number">{{item.day}}</span>
                      <div class="task-icon">
                        <i v-if="item.myTaskFlag" class="icon icon-flag icon-20"></i>
                        <i v-if="item.finishFlag" class="icon icon-check"></i>
                      </div>
                      <div class="coloured-box">
                        <span v-if="item.specialist" class="coloured-ribbon coloured-ribbon-blue">
                          <br />
                        </span>
                        <span v-if="item.family" class="coloured-ribbon coloured-ribbon-green">
                          <br />
                        </span>
                      </div>
                      <div class="progress-box">
                        <div class="progress" :style="{opacity:item.specialist?'1':'0'}">
                          <span>{{(item.specialist && item.specialist.finish)+'/'+(item.specialist && item.specialist.all)}}</span>
                          <div
                            class="progress-bar"
                            role="progressbar"
                            aria-valuenow="0"
                            aria-valuemin="0"
                            aria-valuemax="100"
                            :style="{width: (item.specialist?(item.specialist.finish/item.specialist.all):0)*100+'%'}"></div>
                <!--无快速查找-->
                <div class="ui-col-1" style="overflow: hidden; overflow-y: scroll" v-if="!isFastSearch">
                  <div class="calendar-week">
                    <div class="flex-box text-center">
                      <div class="flex-box-item">周一</div>
                      <div class="flex-box-item">周二</div>
                      <div class="flex-box-item">周三</div>
                      <div class="flex-box-item">周四</div>
                      <div class="flex-box-item">周五</div>
                      <div class="flex-box-item">周六</div>
                      <div class="flex-box-item">周日</div>
                    </div>
                  </div>
                  <div class="calendar-days">
                    <div v-for="items in calendarData" class="flex-box">
                      <div class="calendar-day" v-for="item in items" @click="viewDetail(item.planDetailIds)" :is-future="item.future">
                        <span class="day-number">{{item.day}}</span>
                        <div class="task-icon">
                          <i v-if="item.myTaskFlag" class="icon icon-flag icon-20"></i>
                          <i v-if="item.finishFlag" class="icon icon-check"></i>
                        </div>
                        <div class="progress" :style="{opacity:item.family?'1':'0'}">
                          <span>{{(item.family && item.family.finish)+'/'+(item.family && item.family.all)}}</span>
                          <div
                            class="progress-bar progress-bar-success"
                            role="progressbar"
                            aria-valuenow="2"
                            aria-valuemin="0"
                            aria-valuemax="100"
                            :style="{width: (item.family?(item.family.finish/item.family.all):0)*100+'%'}"></div>
                        <div class="coloured-box">
                          <span v-if="item.specialist" class="coloured-ribbon coloured-ribbon-blue">
                            <br />
                          </span>
                          <span v-if="item.family" class="coloured-ribbon coloured-ribbon-green">
                            <br />
                          </span>
                        </div>
                        <p v-if="!item.noService" class="mb0 f12" :class="{'visibility-hide':!curTask}" style="line-height: 1">{{curTaskName || '&emsp;'}}</p>
                        <div class="progress-box">
                          <div class="progress" :style="{opacity:item.specialist?'1':'0'}">
                            <span>{{(item.specialist && item.specialist.finish)+'/'+(item.specialist && item.specialist.all)}}</span>
                            <div
                              class="progress-bar"
                              role="progressbar"
                              aria-valuenow="0"
                              aria-valuemin="0"
                              aria-valuemax="100"
                              :style="{width: (item.specialist?(item.specialist.finish/item.specialist.all):0)*100+'%'}"></div>
                          </div>
                          <div class="progress" :style="{opacity:item.family?'1':'0'}">
                            <span>{{(item.family && item.family.finish)+'/'+(item.family && item.family.all)}}</span>
                            <div
                              class="progress-bar progress-bar-success"
                              role="progressbar"
                              aria-valuenow="2"
                              aria-valuemin="0"
                              aria-valuemax="100"
                              :style="{width: (item.family?(item.family.finish/item.family.all):0)*100+'%'}"></div>
                          </div>
                          <p v-if="!item.noService" class="mb0 f12" :class="{'visibility-hide':!curTask}" style="line-height: 1">{{curTaskName || '&emsp;'}}</p>
                        </div>
                        <p v-if="item.noService" class="no-server">无服务项</p>
                      </div>
                      <p v-if="item.noService" class="no-server">无服务项</p>
                    </div>
                  </div>
                </div>
              </div>
            </div>
            <div v-show="!showServerItemDetail&&tabStatus==2" class="mt50" style="height: calc(100% - 50px); overflow-y: auto">
              <div class="time-axis" style="max-height: calc(100% - 200px); overflow-y: auto">
                <div>
                  <table class="table">
                    <tr>
                      <th style="padding-right: 50px; text-align: right">时间</th>
                      <th>项目</th>
                      <th>执行人员</th>
                      <th>执行地点</th>
                      <th class="text-center">相关记录</th>
                      <th class="text-center">状态</th>
                    </tr>
                    <tr v-for="item in timeAxisData" :is-future="item.future">
                      <td class="time text-right time-box">
                        <p class="mb5">{{item.date}}</p>
                        <p class="mb0">{{item.time}}</p>
                        <span class="cur-status">{{item.html}}</span>
                      </td>
                      <td class="project-name mw400">
                        <p class="mt10">{{item.name}}</p>
                        <p class="ellipsis mb0">{{item.content}}</p>
                      </td>
                      <td class="executor">{{item.doctor_name}}</td>
                      <td class="place-of-execution">{{item.hospital_name}}</td>
                      <td class="view-task" @click="viewDetail(item.id,1,item)">查看</td>
                      <td class="task-status" :class="item.future==-1?'c-ff3b30':(item.status==0?'c-666':'')">{{item.status==0?'未完成':(item.status==1?'已完成':'已预约')}}</td>
                    </tr>
                    <tr v-if="!timeAxisData.length">
                      <td colspan="6" class="f16 ptb10 text-center">
                        <img src="../../../images/wushuju_img.png" class="mt50" />
                        <p class="c-666">暂无数据</p>
                      </td>
                    </tr>
                  </table>
              <div v-show="!showServerItemDetail&&tabStatus==2" class="mt50" style="height: calc(100% - 50px); overflow-y: auto">
                <div class="time-axis" style="max-height: calc(100% - 200px); overflow-y: auto">
                  <div>
                    <table class="table">
                      <tr>
                        <th style="padding-right: 50px; text-align: right">时间</th>
                        <th>项目</th>
                        <th>执行人员</th>
                        <th>执行地点</th>
                        <th class="text-center">相关记录</th>
                        <th class="text-center">状态</th>
                      </tr>
                      <tr v-for="item in timeAxisData" :is-future="item.future">
                        <td class="time text-right time-box">
                          <p class="mb5">{{item.date}}</p>
                          <p class="mb0">{{item.time}}</p>
                          <span class="cur-status">{{item.html}}</span>
                        </td>
                        <td class="project-name mw400">
                          <p class="mt10">{{item.name}}</p>
                          <p class="ellipsis mb0">{{item.content}}</p>
                        </td>
                        <td class="executor">{{item.doctor_name}}</td>
                        <td class="place-of-execution">{{item.hospital_name}}</td>
                        <td class="view-task" @click="viewDetail(item.id,1,item)">查看</td>
                        <td class="task-status" :class="item.future==-1?'c-ff3b30':(item.status==0?'c-666':'')">{{item.status==0?'未完成':(item.status==1?'已完成':'已预约')}}</td>
                      </tr>
                      <tr v-if="!timeAxisData.length">
                        <td colspan="6" class="f16 ptb10 text-center">
                          <img src="../../../images/wushuju_img.png" class="mt50" />
                          <p class="c-666">暂无数据</p>
                        </td>
                      </tr>
                    </table>
                  </div>
                </div>
              </div>
              <div class="plr10 pb10">
                <div v-for="(o, i) in limitlessItems" class="flex vc c-f14 c-border plr10 ptb5 mt10 link-control" @click="viewServerItemsDetail(o)">
                  <div class="flex1 c-12b7f5 ellipsis-1">{{o.name}}</div>
                  <div style="width: 250px">
                    <div class="flex lh28">
                      <span>完成情况:</span>
                      <div class="flex1" v-if="!o.frequency_code">
                        <span class="c-FF0000">{{o.compeletTotal}}</span>
                <div class="plr10 pb10">
                  <div v-for="(o, i) in limitlessItems" class="flex vc c-f14 c-border plr10 ptb5 mt10 link-control" @click="viewServerItemsDetail(o)">
                    <div class="flex1 c-12b7f5 ellipsis-1">{{o.name}}</div>
                    <div style="width: 250px">
                      <div class="flex lh28">
                        <span>完成情况:</span>
                        <div class="flex1" v-if="!o.frequency_code">
                          <span class="c-FF0000">{{o.compeletTotal}}</span>
                        </div>
                        <div class="flex1" v-else><span class="c-FF0000">{{o.compeletTotal}}/{{o.total}}</span></div>
                      </div>
                      <div class="flex1" v-else><span class="c-FF0000">{{o.compeletTotal}}/{{o.total}}</span></div>
                    </div>
                    <div v-if="o.code!='3'" class="flex lh28">
                      <span>上次完成:</span>
                      <div class="flex1">{{o.firstDate?o.firstDate:'--'}}</div>
                    </div>
                    <div v-if="o.frequency_code" class="flex lh28">
                      <span>下次计划:</span>
                      <div class="flex1">{{o.lastDate?o.lastDate:'--'}}</div>
                    </div>
                    <div v-if="o.code=='3'" class="flex lh28">
                      <!-- o.type 1: 血糖 2: 血压  -->
                      <span>最近体征:</span>
                      <div v-if="!o.type || o.compeletTotal==0" class="">--</div>
                      <div v-else-if="o.type==1">
                        <span class="zhibiao_icon" :class="{'low':o.levelClazz1=='low', 'high':o.levelClazz1=='high'}">{{o.levelName}}血糖:{{o.value1}}</span>
                      <div v-if="o.code!='3'" class="flex lh28">
                        <span>上次完成:</span>
                        <div class="flex1">{{o.firstDate?o.firstDate:'--'}}</div>
                      </div>
                      <div v-if="o.frequency_code" class="flex lh28">
                        <span>下次计划:</span>
                        <div class="flex1">{{o.lastDate?o.lastDate:'--'}}</div>
                      </div>
                      <div v-else-if="o.type==2" class="flex vc">
                        <span class="zhibiao_icon" :class="{'low':o.levelClazz1=='low', 'high':o.levelClazz1=='high'}">收缩压:{{o.value1}}</span>
                        <span class="zhibiao_icon" :class="{'low':o.levelClazz2=='low', 'high':o.levelClazz2=='high'}">舒张压:{{o.value2}}</span>
                      <div v-if="o.code=='3'" class="flex lh28">
                        <!-- o.type 1: 血糖 2: 血压  -->
                        <span>最近体征:</span>
                        <div v-if="!o.type || o.compeletTotal==0" class="">--</div>
                        <div v-else-if="o.type==1">
                          <span class="zhibiao_icon" :class="{'low':o.levelClazz1=='low', 'high':o.levelClazz1=='high'}">{{o.levelName}}血糖:{{o.value1}}</span>
                        </div>
                        <div v-else-if="o.type==2" class="flex vc">
                          <span class="zhibiao_icon" :class="{'low':o.levelClazz1=='low', 'high':o.levelClazz1=='high'}">收缩压:{{o.value1}}</span>
                          <span class="zhibiao_icon" :class="{'low':o.levelClazz2=='low', 'high':o.levelClazz2=='high'}">舒张压:{{o.value2}}</span>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
            </template>
            <server-items-detail
              ref="serverItemsDetail"
              v-if="showServerItemDetail"