123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267 |
- var d= dialog({contentType:'load', skin:'bk-popup'}).show();
- var Requests = GetRequest(),
- event = Requests.event;
- var $time = $('#time'),
- $type = $('#type'),
- $deptDoctor = $('#dept_doctor'),
- $org = $('#org'),
- $diagnosis = $('#diagnosis');
- var gallery = null;
- // 修改页面标题
- function setPageTitle(name) {
- //动态修改title的值
- var $body = $('body');
- document.title = name+"详情";
- // hack在微信等webview中无法修改document.title的情况
- var $iframe = $('<iframe src="/favicon.ico"></iframe>');
- $iframe.on('load',function() {
- setTimeout(function() {
- $iframe.off('load').remove();
- }, 0);
- }).appendTo($body);
- }
- function getEventTypeName(type) {
- if(type=="1") {
- return "门诊";
- } else if(type=="2"){
- return "住院";
- } else if(type == "3"){
- return "体检";
- }
- }
- function showDeptDoctor(dept,doctor) {
- if(!dept&&!doctor) {
- return ;
- } else if(dept&& doctor) {
- $deptDoctor.html('<label>科室/医生:</label>'+dept+'/'+doctor);
- } else if(dept) {
- $deptDoctor.html('<label>科室:</label>'+dept);
- } else if(doctor) {
- $deptDoctor.html('<label>医生:</label>'+doctor);
- }
- $deptDoctor.show();
- }
- function updateCatalogNameTip(img) {
- var catalog = $(img).attr('data-catalog')||"";
- var subCatalog = $(img).attr('data-sub-catalog')||"";
- var catalogName = catalog;
- if(subCatalog) {
- catalogName = catalogName + '_' + subCatalog;
- }
- $('#catalog_name').text(catalogName);
- }
- function updateCatalog(img) {
- var catalog = $(img).attr('data-catalog')||"";
- var subCatalog = $(img).attr('data-sub-catalog')||"";
- $('.img-catalog').find('a.c-btn-icon[data-type="'+catalog+'"]').trigger('click',[false]);
- $('.sub-catalog').find('a.c-btn-icon[data-type="'+subCatalog+'"]').trigger('click',[false]);
- }
- function previewImage(sid) {
- var pswpElement = document.querySelectorAll('.pswp')[0];
- var w = $(window).width(), h = $(window).height();
- var items = _.map($('img.preview-img'),function(img) {
- return {
- src: getImgUrl($(img).attr('src')),
- w: w,
- h: h,
- initialPosition: { x: 0, y:0 }
- }
- });
- var options = {
- // optionName: 'option value'
- // for example:
- index: sid||0 // start at first slide
- };
- options.mainClass = 'pswp--minimal--dark';
- options.barsSize = {top:0,bottom:0};
- options.captionEl = false;
- options.fullscreenEl = false;
- options.shareEl = false;
- options.bgOpacity = 0.85;
- options.tapToToggleControls = false;
- options.pinchToClose = false;
- options.clickToCloseNonZoomable = false;
- options.tapToClose = false;
- // Initializes and opens PhotoSwipe
- gallery = new PhotoSwipe( pswpElement, PhotoSwipeUI_Default, items, options);
- gallery.init();
- }
- function updateImgTypeToDB($img) {
- var id = $img.attr('data-id'),
- catalog = $img.attr('data-catalog'),
- subCatalog = $img.attr('data-sub-catalog');
- getReqPromise('patient/archives/event/img/edit',{id: id, imgType: catalog, imgLabel: subCatalog},'JSON','POST')
- .then(function(res) {
- if(res.status == 200) {
- $('.pswp__scroll-wrap').trigger('click');
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'图片编辑成功!'}).show();
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'图片编辑失败!'}).show();
- }
- }).catch(function(e) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'图片编辑失败!'}).show();
- console && console.error(e);
- })
- }
- getReqPromise('patient/archives/event/detail',{event:Requests.event},'JSON','GET')
- .then(function(res) {
- d.close();
- var data = {},
- imgsMap = {};
- if(res.status==200) {
- data = res.data;
- var eventName = getEventTypeName(data.eventType);
- setPageTitle(eventName);
- $type.text(eventName);
- showDeptDoctor(data.deptName,data.doctorName);
- $time.text(data.eventDate.substr(0,10));
- if(data.orgName) {
- $org.text(data.orgName);
- $org.parent().show();
- }
-
- $diagnosis.text(data.dianosis);
- imgsMap = _.groupBy(data.eventImg, function(v) {
- return v.imgType;
- });
- _.mapObject(imgsMap,function(val, key) {
- var catalog = key?key:"未分类";
- var $wrap = $('div[data-type="'+catalog+'"]'),
- $ul = $wrap.find('.img-list').eq(0);
- html = template('li_tmpl',{list: val});
- $ul.html(html);
- $wrap.show();
- });
- }
- })
- .then(function() {
- var $imgs = $('img.preview-img');
- $imgs.on('click',function() {
- var idx = $imgs.index(this);
- var length = $imgs.length;
- updateCatalogNameTip(this);
- $('#page_counter').text('('+(idx+1)+'/'+length+')')
- previewImage(idx);
- gallery.listen('afterChange', function() {
- var imgIdx = gallery.getCurrentIndex();
- var $img = $imgs.eq(imgIdx);
- updateCatalogNameTip($img);
- $('#page_counter').text('('+(imgIdx+1)+'/'+length+')')
- updateCatalog($img);
- });
- gallery.listen('close', function() {
- window.location.reload();
- });
- updateCatalog(this);
- });
- $('.pop-catalog-sel').on('click',function() {
- var imgIdx = gallery.getCurrentIndex();
- $('#cur_page').text(imgIdx+1);
- $('#amount_page').text($imgs.length);
- $('#catalog_bar').hide();
- $('#catalog_box').slideDown();
- });
- $('.pswp__scroll-wrap').on('tap',function() {
- if($('#catalog_box').css('display')!='none') {
- $('#catalog_box').hide();
- $('#catalog_bar').slideDown();
- var imgIdx = gallery.getCurrentIndex();
- var $img = $imgs.eq(imgIdx);
- updateCatalogNameTip($img);
- } else {
- gallery.close();
- }
- });
-
- $('.img-catalog').on('click','a.c-btn-icon',function(e,readOnly) {
- var ref = $(this).attr('data-ref');
- var imgIdx = gallery.getCurrentIndex();
- var $img = $imgs.eq(imgIdx);
- if(ref) {
- $('.sub-catalog').not('#'+ref).hide();
- $('#'+ref).slideDown().find('a.c-btn-icon').removeClass('active');
- } else {
- $('.sub-catalog').hide();
- }
-
- var $catalog = $(this).closest('.img-catalog');
- $catalog.find('a.c-btn-icon').removeClass('active');
- $(this).addClass('active');
- if(readOnly!==false){
- $img.attr('data-catalog',$(this).attr('data-type'));
- $img.attr('data-sub-catalog','');
- if(!ref){
- updateImgTypeToDB($img);
- }
- }
- })
-
- $('.sub-catalog').on('click','a.c-btn-icon',function(e,readOnly) {
- var $catalog = $(this).closest('.sub-catalog');
- $catalog.find('a.c-btn-icon').removeClass('active');
- $(this).addClass('active');
-
- var imgIdx = gallery.getCurrentIndex();
- var $img = $imgs.eq(imgIdx);
-
- if(readOnly!==false){
- $img.attr('data-sub-catalog',$(this).attr('data-type'));
- updateImgTypeToDB($img);
- }
- });
-
- $('#delete_img_btn').on('click',function() {
- var imgIdx = gallery.getCurrentIndex();
- var $img = $imgs.eq(imgIdx);
- var id = $img.attr("data-id");
- getReqPromise('patient/archives/event/img/delete',{id: id},'JSON','POST')
- .then(function(res) {
- if(res.status == 200) {
- gallery.close();
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'图片删除成功!'}).show();
- window.location.reload();
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'图片删除失败!'}).show();
- }
- }).catch(function(e) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'图片删除失败!'}).show();
- console && console.error(e);
- })
- })
- })
- .then(function() {
- $('#edit_btn').on('click',function() {
- window.location.href = "shangchuanjiuzhenjilu-edit.html?event="+Requests.event
- })
- })
- .catch(function(e) {
- d.close();
- console && console.error(e)
- })
- window.onpageshow = function() {
- var isLoaded = localStorage.getItem("jiuzhenxiangqing")
- if(isLoaded=="1") {
- localStorage.removeItem("jiuzhenxiangqing");
- location.reload(true);
- }
- else {
- localStorage.setItem("jiuzhenxiangqing","1");
- }
- }
- template.helper("setPhoto", function(p) {
- return getImgUrl(p);
- });
|