const qs = require('qs'); import {post,config,getUrlArgObject} from './promise.js'; $(function(){ // 从地址栏获取参数,请求量表内容 function GetQueryString(name){      var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");      var r = window.location.search.substr(1).match(reg);      if(r!=null)return  unescape(r[2]); return null; } var scaleInfo; var id = GetQueryString('id') || 40744; var name = GetQueryString('name') || "密西根糖尿病周围神经病评分(MDNS)"; var url = "http://192.168.2.236:5050/api/icss/push/pushInner"; var urlParam = parseUrlParams(); //参数 // 用GetQueryString方法从地址栏获取参数,暂时写死 var params = { "age": getUrlArgObject('age') || 28, "featureType": getUrlArgObject('featureType') ||'21', "scaleId": getUrlArgObject('scaleId') ||40744, "scaleName": getUrlArgObject('scaleName') || "密西根糖尿病周围神经病评分(MDNS)", "sex": getUrlArgObject('sex') || 1, "diag": getUrlArgObject('diag') || "肺结核(复诊); ", "lis": getUrlArgObject('lis')?JSON.parse(getUrlArgObject('lis')) : [] // "age": 28, // "featureType": '21', // "scaleId": id, // "scaleName": name, // "sex": 1, // "diag": "肺结核(复诊); ", // "lis": [] } if(id){ $.ajax({ method:'post', url:url, data:JSON.stringify(params), dataType:'json', contentType:'application/json', success:function(res){ if(res.code==0){ scaleInfo = res.data.scale; console.log('量表数据为:',scaleInfo); for (var i = 0; i < scaleInfo.length; i++) { if( scaleInfo[i].type == 1) { var scaleList = JSON.parse(scaleInfo[i].content) // console.log('scaleList', scaleList) renderCalcu(scaleList) } else { $('.content').append(scaleInfo[i].content) } $('input').on('change', function(e) { var indexList = $(this).attr('data-index').split(',') for (var i = 0; i < scaleList.group[indexList[0]].rows[indexList[1]].row[indexList[2]].details.length; i++) { scaleList.group[indexList[0]].rows[indexList[1]].row[indexList[2]].details[i].select = 0 } scaleList.group[indexList[0]].rows[indexList[1]].row[indexList[2]].details[indexList[3]].select = 1 // console.log('this',$(this).parent().parent().parent()) $(this).parent().parent().parent().removeClass('noSelect') }) $('.calcuBtn').on('click', function() { // console.log('scaleList', scaleList) let allSelect = true for (let i = 0; i < scaleList.group.length; i++) { for (let j = 0; j < scaleList.group[i].rows.length; j++) { for (let x = 0; x < scaleList.group[i].rows[j].row.length; x++) { let itemSelect = false // console.log('scaleList.group[i].rows[j].row[x].details', scaleList.group[i].rows[j].row[x].details) for (let y = 0; y < scaleList.group[i].rows[j].row[x].details.length; y++) { if (scaleList.group[i].rows[j].row[x].details[y].select == 1) { itemSelect = true } } if(!itemSelect) { allSelect = false $('#' + i + j + x).addClass('noSelect') } } } } if(allSelect) { getCalcuResult(scaleList) } }) } } }, error:function(err){ console.log('请求失败:',err); } }) } }) function renderCalcu(scaleList) { console.log(scaleList) $("h1").html(scaleList.scaleName); var str = '' for(var j = 0; j < scaleList.group.length; j++) { str += '
' + scaleList.group[j].groupName + '
'; for (var x = 0; x < scaleList.group[j].rows.length; x++) { for (var y = 0; y < scaleList.group[j].rows[x].row.length; y++) { var str2 = '' for(var z = 0; z < scaleList.group[j].rows[x].row[y].details.length; z++) { str2 += '' + scaleList.group[j].rows[x].row[y].details[z].detailName + '('+scaleList.group[j].rows[x].row[y].details[z].score +')'+'' if (scaleList.group[j].rows[x].row[y].name+scaleList.group[j].rows[x].row[y].details[z].state == 1) { str2 += '智能推荐' } str2 += '' } str +='
'+ (x+1) + ' ' +scaleList.group[j].rows[x].row[y].name + '
' + str2 + '
' + '
' } } if(scaleList.group[j].groupCalculate.isShow == 1) { str += '
记分:'+ scaleList.group[j].groupCalculate.result.value +' '+ scaleList.group[j].groupCalculate.result.text +'
' } str += '
' } var calcuStr = '
总分:' if(scaleList.calculate && scaleList.calculate.result) { calcuStr += scaleList.calculate.result.value + ' ' + scaleList.calculate.result.text } calcuStr += '计算
' var allStr = '
' + str + calcuStr + '
' $('.content').append(allStr) } function parseUrlParams(){ // var url = 'http://localhost:8082/scale.html?age=28&featureType=21&scaleId=40744&scaleName=密西根糖尿病周围神经病评分(MDNS)&sex=1&diag=肺结核(复诊);&lis=[]' var url = window.location.search; var params = url.substring(url.indexOf('?')+1).split("&"); var tmp = '',obj = {},it={}; for(var i=0;iq[k]=v); // return obj; } function getCalcuResult(data) { var url = "http://192.168.2.236:5050/api/icss/calc/calculate"; const param = { type: 1, data: data } $.ajax({ type: 'post', url: url, headers: { // 'Accept': 'application/json, text/plain, */*', 'Content-Type':'application/json; charset=utf-8' }, data: JSON.stringify(param), success: function(res) { // console.log('calcaRes', res, data) if (res.code == 0) { data.calculate.result = res.data.calcalculate.result for(let i = 0; i < res.data.group.length; i++) { for(let j = 0; j < data.group.length; j++) { if (res.data.group[i].groupName == data.group[j].groupName) { data.group[j].groupCalculate.result = res.data.group[i].groupCalculate.result } } } if($('.calcu')) { for (let i = 0; i < $('.calcu').length; i++) { let calcuItemName = $('.calcu').eq(i).prev().find('.groupName').html(); let calcuItem = data.group.filter(function(item) { return item.groupName == calcuItemName })[0] $('.calcu').eq(i).html('记分:' + calcuItem.groupCalculate.result.value + ' ' + calcuItem.groupCalculate.result.text) } } $('.allCalcu').eq(0).html('总分:' + data.calculate.result.value + ' ' + data.calculate.result.text) } else { alert(res.msg) } }, error: function(error) { console.log(error) } }) }