123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461 |
- var Request = GetRequest();
- $(function () {
- var $viewTabs = $('#viewTabs'),
- $swiperWrapper = $('.swiper-wrapper'),
- $duringList = $('#duringList'),
- $qushiView = $('#qushiView'),
- $liebiaoView = $('#liebiaoView'),
- $xtEdit = $('.xt-edit'),
- $btns = $('.btns'),
- $xtAdd = $('.xt-add'),
- $cancelBtn = $('.cancel-btn'),
- $okBtn = $('.ok-btn'),
- $popMain = $('.pop-main'),
- $popBtns = $('.pop-btns'),
- $popEditBtn = $('.pop-edit-btn'),
- $popDelBtn = $('.pop-del-btn'),
- $popCancelBtn = $('.pop-cancel-btn'),
- $selDate = $('#selDate'),
- swiper = null,
- isTrue = false,
- d1 = [],
- d2 = [],
- d3 = [],
- d4 = [],
- page = 0,
- pagesize = 10,
- dayNum = 6,
- $xyList = $('.xy-list-con'),
- $xyTmp = $('#xyTmp'),
- isLoad = false;
- var scroller1 = new IScrollPullUpDown('wrapper6',{
- probeType:2,
- bounceTime: 250,
- bounceEasing: 'quadratic',
- mouseWheel:false,
- scrollbars:true,
- fadeScrollbars:true,
- click:true,
- // preventDefault: false,
- interactiveScrollbars:false
- },null,pullUpAction);
-
- //上拉加载数据
- function pullUpAction(theScrollerTemp) {
- $(".pullUp").show();
- setTimeout(function () {
- loadListPromise();
- }, 1000);
- }
- var norTime = decodeURIComponent(Request["dateT"]),
- begindate = decodeURIComponent(Request["dateT"]),
- enddate = getDateFromCurrentDate(begindate, -dayNum),
- sn = 0;
- console.log(begindate);
- console.log(enddate);
- var charts = [];
-
- function changeTabCon () {
- var qsv = $qushiView.css('display'),
- lbv = $liebiaoView.css('display');
- if (qsv === 'block') {
- lbv.hide();
- }
- }
- function pushHistory() {
- var state = {
- title: "体重",
- url: "#"
- };
- window.history.pushState(state, "体重", "#");
- }
- pushHistory();
- function bindEvents() {
- setTimeout( function () {
- window.addEventListener("popstate", function(e) {
- location.href = 'health-record.html';
- }, false);
- }, 300);
- $viewTabs.on('click','li',function(e) {
- e.stopPropagation();
- var index = $(this).index();
- $(this).siblings().removeClass('curr');
- $(this).addClass('curr');
- if (index === 0) {
- $qushiView.show();
- $liebiaoView.hide();
- $xtEdit.hide();
- } else {
- $qushiView.hide();
- $liebiaoView.show();
- $xtEdit.show();
- var data = null;
- if (dayNum == 7) {
- data = d1.list;
- }
- if (dayNum == 30) {
- data = d2.list;
- }
- if (dayNum == 90) {
- data = d3.list;
- }
- if (dayNum == -1) {
- data = d4.list;
- }
- if (!isLoad) {
- // isLoad = true;
- loadListPromise();
- }
- }
- });
- $selDate.on( 'click', 'li', function (e) {
- var index = $(this).index();
- $(this).siblings().removeClass('curr');
- $(this).addClass('curr');
- console.log(index);
- $swiperWrapper.find('.swiper-slide').html('');
- swiper.slideTo(swiper.slides.length - 1, 0, false); //切换到最后一个slide
- sn = swiper.slides.length - 1;
- begindate = norTime;
- switch(index) {
- case 0:
- dayNum = 6;
- break;
- case 1:
- dayNum = 30;
- break;
- case 2:
- dayNum = 90;
- break;
- case 3:
- dayNum = 365/2;
- break;
- }
- enddate = getDateFromCurrentDate(begindate, -dayNum);
- loadPromise( sn, enddate, begindate);
- });
-
- $xtEdit.on( 'click', function () {
- $(this).hide();
- $btns.show();
- $xtAdd.hide();
- $liebiaoView.find('.l-edit-icon').addClass('active');
- });
- $cancelBtn.on( 'click',function () {
- $liebiaoView.find('.l-edit-icon').removeClass('active');
- $xtEdit.show();
- $xtAdd.show();
- $btns.hide();
- });
- $okBtn.on( 'click', function () {
- $liebiaoView.find('.l-edit-icon').removeClass('active');
- $xtEdit.show();
- $xtAdd.show();
- $btns.hide();
- });
- $liebiaoView.on( 'click', '.l-item', function () {
- var lei = $(this).find('.l-edit-icon'),
- id = $(this).attr('data-id'),
- val = $(this).attr('data-val'),
- sn = $(this).attr('data-sn'),
- time = $(this).attr('data-time');
- if (lei.hasClass('active')) {
- $popMain.addClass('active');
- $popBtns.addClass('active');
- if (sn != '') {
- $popEditBtn.hide();
- }
- $popEditBtn.attr('data-id',id);
- $popEditBtn.attr('data-val',val);
- $popEditBtn.attr('data-time',time);
-
- $popDelBtn.attr('data-id',id);
-
- }
- });
-
- // 修改
- $popEditBtn.on( 'click', function () {
- var id = $(this).attr('data-id'),
- val = $(this).attr('data-val'),
- time = $(this).attr('data-time');
- window.location.href = 'health-index-add-weight.html?id=' + id + '&val=' + val + '&time=' + time;
- });
- // 删除
- $popDelBtn.on( 'click', function () {
- var id = $(this).attr('data-id');
- sendPost("patient/health_index/modify?id=" + id, {}, "json", "post", queryListFailed, function (res) {
- d.close();
- if (res.status == 200) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'删除成功'}).show();
- setTimeout(function(){
- location.reload();
- },2000);
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'删除失败'}).show();
- setTimeout(function(){
- location.reload();
- },2000);
- }
- });
- });//
- $popCancelBtn.on('click',function () {
- $popMain.removeClass('active');
- $popBtns.removeClass('active');
- });//
- $popMain.on( 'click', function () {
- $(this).removeClass('active');
- $popBtns.removeClass('active');
- });
- }
- bindEvents();
- function getxAxisData(data) {
- var a = [],
- b = [];
- b = _.chain(data).pluck('date').map(function(d) {
- return d.substr(5, 5)
- }).value();
- for (var i = b.length - 1; i >= 0; i--) {
- a.push(b[i]);
- }
- return a;
- }
- function getSeriesData(data) {
- var a = [],
- b = [];
- b = _.chain(data).pluck('value1').map(function(v) {
- return v;
- }).value();
- for (var i = b.length - 1; i >= 0; i--) {
- a.push(b[i]);
- }
- return a;
- }
-
-
- function queryListByTypeP(type,begindate,enddate,page,pagesize) {
- //拼请求内容
- d.show();
- var params = {};
- params.type = type;
- params.page = page;
- params.pagesize = pagesize;
- params.start = begindate+" 00:00:00";
- params.end = enddate+" 23:59:59";
- return new Promise(function(resolve, reject) {
- //发送ajax请求
- sendPost("patient/health_index/list", params, "json", "post", queryListFailed, function (res) {
- d.close();
- if (res.status == 200) {
- resolve(res)
- } else {
- queryListFailed(res);
- }
- });
- })
- }
- function loadListPromise () {
- page++;
- Promise.all([
- queryListByTypeP( 3, getDateFromCurrentDate(norTime, -2000), norTime, page, pagesize)
- ])
- .then(function(res) {
- $(".pullUp").hide();
- console.log(res);
- var data = res[0];
- console.log(data);
- if (data.list.length > 0) {
- console.log(page);
- $xyList.append(template('xyTmp',{data:data.list}));
- scroller1.myScroll.refresh();
- } else {
- if(!isLoad) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'暂无数据'}).show();
- $xtEdit.unbind('click');
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'暂无更多数据'}).show();
- }
- }
- isLoad = true;
- })
- .catch(function(e) {
- console && console.error(e)
- });
- }
-
-
- //初始化swiper
- function init() {
- Promise.all([(function () {
- $swiperWrapper
- .append($('<li id="chart0" class="swiper-slide"> </li>'))
- .append($('<li id="chart1" class="swiper-slide"> </li>'))
- .append($('<li id="chart2" class="swiper-slide"> </li>'))
- .append($('<li id="chart3" class="swiper-slide"> </li>'));
- })()])
- .then(function(echarts) {
- swiper = new Swiper('.swiper-container', {
- paginationClickable: false,
- onSlideChangeStart: function(swiper) {
- //切换
- var ind = swiper.activeIndex;
- if (ind < sn) {
- begindate = enddate;
- enddate = getDateFromCurrentDate( begindate, -dayNum);
- } else {
- enddate = begindate;
- begindate = getDateFromCurrentDate( begindate, dayNum);
- }
- sn = ind;
- loadPromise( sn, enddate, begindate);
- }
- });
- })
- .then(function () {
- $swiperWrapper.find('.swiper-slide');
- swiper.slideTo(swiper.slides.length - 1, 0, false); //切换到最后一个slide
- sn = swiper.slides.length - 1;
- loadPromise( sn, enddate, begindate);
- })
- .catch(function(e) {
- console && console.error(e)
- })
- }
- init();
- function loadPromise ( n, enddate, begindate) {
- Promise.all([
- queryChatByTypePromise( 3, enddate, begindate, 0)
- ])
- .then(function(res) {
- d1 = res[0];
- loadData(n);
- })
- .catch(function(e) {
- console && console.error(e)
- });
- }
- //初始化echart
- function loadData(n) {
- new Promise(function(resolve, reject) {
- var yAxisName = '单位(kg)';
- var el = document.getElementById('chart' + n);
- Promise.all([
- createChartPromise( el, 3, yAxisName, getxAxisData(d1.list), getSeriesData(d1.list))
- ])
- .then(function(echarts) {
- charts.push(echarts[0]);
- $(el).append('<div class="c-time">< ' + enddate + ' 至 ' + begindate + ' ></div>');
- })
- .then(function() {
-
- })
- .catch(function(e) {
- console && console.error(e)
- })
- });
- }
-
- // function loadPromise (cb) {
- // Promise.all([
- // queryChatByTypePromise( 3, getBeforeDate( begindate, 7), begindate, 0),
- // queryChatByTypePromise( 3, getBeforeDate( begindate, 30), begindate, 0),
- // queryChatByTypePromise( 3, getBeforeDate( begindate, 90), begindate, 0),
- // queryChatByTypePromise( 3, getBeforeDate( begindate, 365/2), begindate, 0)
- // ])
- // .then(function(res) {
- // d1 = res[0];
- // d2 = res[1];
- // d3 = res[2];
- // d4 = res[3];
- //
- // cb && cb.call(this);
- // })
- // .catch(function(e) {
- // console && console.error(e)
- // });
- // }
- // function loadData () {
- // new Promise(function (resolve, reject) {
- // var yAxisName = '单位(kg)';
- // $swiperWrapper
- // .append('<li id="chart3" class="swiper-slide">')
- // .append('<li id="chart2" class="swiper-slide">')
- // .append('<li id="chart1" class="swiper-slide">')
- // .append('<li id="chart0" class="swiper-slide">');
- //
- // var el1 = document.getElementById('chart0'),
- // el2 = document.getElementById('chart1'),
- // el3 = document.getElementById('chart2'),
- // el4 = document.getElementById('chart3')
- // Promise.all([
- // createChartPromise( el1, 3, yAxisName, getxAxisData(d1.list), getSeriesData(d1.list)),
- // createChartPromise( el2, 3, yAxisName, getxAxisData(d2.list), getSeriesData(d2.list)),
- // createChartPromise( el3, 3, yAxisName, getxAxisData(d3.list), getSeriesData(d3.list)),
- // createChartPromise( el4, 3, yAxisName, getxAxisData(d4.list), getSeriesData(d4.list))])
- // .then(function(echarts) {
- // charts.push(echarts[0]);
- // charts.push(echarts[1]);
- // charts.push(echarts[2]);
- // $(el1).append('<div class="c-time">< ' + getBeforeDate( begindate, 7) + ' 至 ' + begindate + ' ></div>');
- // $(el2).append('<div class="c-time">< ' + getBeforeDate( begindate, 30) + ' 至 ' + begindate + ' ></div>');
- // $(el3).append('<div class="c-time">< ' + getBeforeDate( begindate, 90) + ' 至 ' + begindate + ' ></div>');
- // $(el4).append('<div class="c-time">< ' + getBeforeDate( begindate, 365/2) + ' 至 ' + begindate + ' ></div>');
- //
- // })
- // .then(function(res) {
- // swiper = new Swiper('.swiper-container', {
- // paginationClickable: false,
- // normalizeSlideIndex:false,
- // onSlideChangeStart: function(swiper){
- // var ind = swiper.activeIndex;
- // console.log(ind);
- // switch (ind) {
- // case 0:
- // $selDate.find('li').removeClass('curr').eq(3).addClass('curr');
- // dayNum = -1;
- // break;
- // case 1:
- // $selDate.find('li').removeClass('curr').eq(2).addClass('curr');
- // dayNum = 90;
- // break;
- // case 2:
- // $selDate.find('li').removeClass('curr').eq(1).addClass('curr');
- // dayNum = 30;
- // break;
- // case 3:
- // $selDate.find('li').removeClass('curr').eq(0).addClass('curr');
- // dayNum = 7;
- // break;
- // }
- // }
- // });
- // $swiperWrapper.find('.swiper-slide')
- // swiper.slideTo(swiper.slides.length-1, 0, false);//切换到最后一个slide
- // })
- // .then(function () {
- // bindEvents()
- // })
- // .catch(function(e) {
- // console && console.error(e)
- // })
- // });
- // }
- // function checkLoad () {
- // if (!isTrue) {
- // loadPromise(loadData);
- // } else {
- // loadData();
- // }
- // }
- // checkLoad ();
- });
- //根据sd获取n天前的时间;
- function getDateFromCurrentDate(fromDate,dayInterval){
- var curDate = new Date(Date.parse(fromDate.replace(/-/g,"/")));
- curDate.setDate(curDate.getDate()+dayInterval);
- var year = curDate.getFullYear();
- var month = (curDate.getMonth()+1)<10?"0"+(curDate.getMonth()+1):(curDate.getMonth()+1);
- var day = curDate.getDate()<10?"0"+curDate.getDate():curDate.getDate();
- return year+"-"+month+"-"+day;
- };
|