123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521 |
- var d = dialog({
- contentType: 'load',
- skin: 'bk-popup'
- });
- var d1 = dialog({
- contentType: 'load',
- skin: 'bk-popup',
- content: '提交中...'
- });
- var doctor = "";
- var isQr = "";
- var waitSign;
- // 链接中是否有openid
- var openidInLink = false;
- // 存储链接中携带的wlyyPatientInviteLogCode参数,用来判断是否是从推送消息进入处理“签约邀请”
- var signInvitationInLink;
- var pagetype = 18;
- $(function() {
- var userAgent = window.localStorage.getItem(agentName);
- Request = GetRequest();
- var openid = Request["openid"];
- var code = Request["code"];
- isQr = Request["isQr"];
- openidInLink = openid!==undefined?true:false;
- signInvitationInLink = Request["wlyyPatientInviteLogCode"];
- if(!userAgent) {
- if(!openid) {
- sendPost("weixin/getOpenidByCode", {
- "code": code
- }, 'JSON', 'GET',
- function(res) {
- queryFailed(res);
- },
- function(res) {
- if(res.status == 200) {
- openid = res.openid;
- window.localStorage.setItem(pageName, "{\"pageurl\":\"" + window.location.href + "\"}");
- window.location.href = "../../home/html/login.html?type=0&openid=" + openid;
- } else {
- queryFailed(res);
- }
- });
- }
- }
- // 获取微信授权
- closeWindow();
- queryInit();
- });
- function popThanksDialog() {
- dialog({
- content: '<div class="c-t-left">感谢您签约家庭医生,您可将家庭医生推荐给更多好友,让大家一起享受家庭医生全方位的服务~</div>',
- okValue:'前往分享',
- ok: function (){
- location.href = 'signing-share.html'
- },
- cancelValue: '我知道了',
- cancel: function () {
- return;
- }
- }).showModal();
- }
- function closeWindow() {
- var Request = new Object();
- Request = GetRequest();
- var code = Request["code"];
- //从后台那边获取签名等信息
- var params = {};
- params.pageUrl = window.location.href;
- $.ajax(server + "weixin/getSign", {
- data: params,
- dataType: "json",
- type: "post",
- success: function(res) {
- if(res.status == 200) {
- var t = res.data.timestamp;
- var noncestr = res.data.noncestr;
- var signature = res.data.signature;
- wx.config({
- //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
- appId: appId, // 必填,公众号的唯一标识
- timestamp: t, // 必填,生成签名的时间戳
- nonceStr: noncestr, // 必填,生成签名的随机串
- signature: signature, // 必填,签名,见附录1
- jsApiList: [
- 'closeWindow'
- ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
- });
- }
- }
- });
- }
- function popOverlay(flag) {
- var height = document.body.scrollHeight,
- $pop = $('#overlay_pop');
-
- $('#introduce_guide').hide();
- $('#introduce_text').hide();
- if(flag) {
- $pop.one('click',function() {
- $('.btn-main img').attr('src','../images/geduoxuanfu_icon.png');
- $('.btn-item').hide();
- $('.btn-main').addClass('close');
- $('#introduce_guide').hide();
- $('#introduce_text').hide();
- $pop.hide();
- });
- $pop.height(height).show();
- } else {
- $pop.hide();
- }
- }
- function queryInit() {
- d.show();
- var data = {};
- var Request = new Object();
- Request = GetRequest();
- doctor = Request["state"];
- waitSign = Request["waitSign"];
- data.doctor = doctor;
- if(waitSign) {
- popThanksDialog();
- }
- sendPost('patient/family_contract/homepage', data, 'json', 'post', queryFailed, querySuccess);
- }
- function queryFailed(res) {
- d.close();
- if(res && res.msg) {
- dialog({
- contentType: 'tipsbox',
- skin: 'bk-popup',
- content: res.msg
- }).show();
- } else {
- dialog({
- contentType: 'tipsbox',
- skin: 'bk-popup',
- content: '加载失败'
- }).show();
- }
- }
- function querySuccess(res) {
- // TODO 示例数据
- // res = {
- // "msg": "医生主页查询成功!",
- // "data": {
- // "doctor": "D20160322000002",
- // "jobName": "主任医师",
- // "intro": "慢性阻塞性肺疾病、支气管扩张等能够较为熟练地结合中医辨证与西医辨病两套方法进",
- // "name": "聂青",
- // "sign": -1,
- // "photo": "http://172.19.103.85:8882/res/images/2016/07/27/20160727010854_298.jpeg",
- // "dept": "呼吸内科",
- // "services": [],
- // "job": "",
- // "hospital": "金山社区医疗服务中心",
- // "expertise": "及实验研究工作十年余,先后参加国家级、省部级多项课题的研究,在科室积极开展的中医特色疗法如穴位注射和敷贴、中药雾化等,疗效显著,对疑难疾病的诊治能坚持自己的观点,和科室同仁一道成功抢救许多肺心病、肺性脑病和呼吸衰竭等危重患。",
- // "group": "0"
- // },
- // "status": 200
- // };
-
- if(res.status == 200) {
- var name = res.data.name;
- var jobName = res.data.job;
- var hospitalName = res.data.hospital;
- var deptName = res.data.dept;
- var photo = res.data.photo;
- var expertise = res.data.expertise;
- var introduce = res.data.intro;
- var sign = Number(res.data.sign);
- var group = Number(res.data.group);
- var url2 = photo;
- var sex = res.data.sex;
- if(!photo){
- if(sex==1){
- url2 = "d-male.png";
- }else if(sex==2){
- url2 = "d-female.png";
- }else{
- url2 = "noSexDoctor.jpg";
- }
- }
- if(!jobName) jobName = "";
- if(!deptName) deptName = "";
- if(!expertise) expertise = "无";
- if(!introduce) introduce = "无";
- document.getElementById("photo").src = url2;
- document.getElementById("name").innerHTML = name;
- document.getElementById("jobName").innerHTML = jobName;
- document.getElementById("hospitalName").innerHTML = hospitalName;
- document.getElementById("deptName").innerHTML = deptName;
- document.getElementById("expertise").innerHTML = expertise;
- document.getElementById("introduce").innerHTML = introduce;
- document.getElementById("doctor_name").innerHTML = name;
-
- if(group == 1) {
- $("#ul-health").show();
- } else if(group == 2) {
- $("#ul-disease").show();
- } else if(group == 3) {
- $("#ul-sixfive").show();
- } else {
- $("#ul-common").show();
- }
- if(sign == 0) { // 待签约
- document.getElementById("btnSign").innerHTML = '<a onclick="cancelSign()" class="c-btn c-btn-E0A526 c-btn-full c-btn-radius c-f18">取消申请</a>';
- $('#btnSign').show();
- } else if(sign == 1) { // 已签约
- //document.getElementById("btnSign").innerHTML = '<a onclick="overSign()" class="c-btn c-btn-E0A526 c-btn-full c-btn-radius c-f18">申请解约</a>';
- $('#btnSign').hide();
- $('#btnMenu').show();
- $('.btn-main>img').on('click',function() {
- if($(this).hasClass('close')) {
- popOverlay(true);
- $('.btn-main img').attr('src','../images/xuanfuguanbi_icon.png');
- $('.btn-item').show();
- $(this).removeClass('close');
- } else {
- popOverlay(false);
- $('.btn-main img').attr('src','../images/geduoxuanfu_icon.png');
- $('.btn-item').hide();
- $(this).addClass('close');
- }
- });
- $('#btnMenu').on('click','.btn-item>img',function () {
- var type = $(this).attr('data-type');
- switch(type) {
- case 'break':
- overSign();
- $('.btn-main>img').click();
- break;
- case 'introduce':
- $('.btn-main img').attr('src','../images/geduoxuanfu_icon.png');
- $('.btn-item').hide();
- $('.btn-main').addClass('close');
- $('#introduce_guide').show();
- $('#introduce_text').show();
- break;
- case 'consultation':
- break;
- }
- });
- } else if(sign == -1) { // 患者解约
- // 有openid显示“申请签约”按钮
- if(openidInLink) {
- document.getElementById("btnSign").innerHTML = '<a onclick="startSign()" class="c-btn c-btn-4dcd70 c-btn-full c-btn-radius c-f18">申请签约</a>';
- $('#btnSign').show();
- }
- // 邀请签约时显示
- else if(signInvitationInLink) {
- document.getElementById("sign_invitation").innerHTML =
- '<div class="c-row">'
- +'<div class="c-50 c-tac height-50 lheight-50 bc-ff9526 c-fff" onclick="ignoreSignInvitation()">忽略签约邀请</div>'
- +'<div class="c-50 c-tac height-50 lheight-50 bc-75bf00 c-fff"><a href="javascript:void(0);" onclick="agreeSignInvitation()" class="c-fff">同意与其签约</a></div>'
- +'</div>';
- }
- // 否则显示医生二维码
- else {
- $('#doctor_qrcode').show();
- }
-
- $("#divAgree").hide();
- } else if(sign == 2) { // 待解约
- document.getElementById("btnSign").innerHTML = '<span class="c-f18" style="color: #E71F19;">您已申请了解约,流程审核中,请等待!!</span>';
- $('#btnSign').show();
- } else {
- document.getElementById("btnSign").innerHTML = '<span class="c-f18" style="color: #E71F19;">医生申请与您解约,流程审核中,请等待!!</span>';
- $('#btnSign').show();
- }
- d.close();
- } else {
- queryFailed(res);
- }
- }
- //申请签约
- function startSign() {
- if(isQr != false) {
- // sendPost('patient/family_contract/checkOpenid', {}, 'json', 'post', queryFailed, openidSuccess2);
- // 2016.08.31 yezehua 取消“无效的openid”错误提示
- sendPost('patient/family_contract/checkOpenid', {}, 'json', 'post', function() {}, openidSuccess2);
- } else {
- var doctorName = encodeURI(document.getElementById("name").innerHTML);
- var hospitalName = encodeURI(document.getElementById("hospitalName").innerHTML);
- window.location.href = "sign-agreement.html?doctor=" + doctor + "&doctorName=" + doctorName + "&hospitalName=" + hospitalName;
- }
- }
- function changeAgreement() {
- window.location.href = "sign-agreement1.html";
- }
- function cancelSign() {
- dialog({
- title: '提示',
- content: '您确定继续取消和' + document.getElementById("name").innerHTML + '医生的签约吗?',
- ok: function() {
- d1.showModal();
- var data = {};
- data.doctor = doctor;
- sendPost('patient/family_contract/unsign', data, 'json', 'post', submitFailed, submitSuccess);
- },
- cancel: function() {
- return;
- }
- }).showModal();
- }
- function overSign() {
- $("#txtInfo").hide();
- dialog({
- title: '申请解约',
- skin: "ui-dialog ax-popup pror",
- content: $("#xf-artd").get(0),
- ok: function() {
- var data = {};
- data.doctor = doctor;
- data.doctorName = document.getElementById("name").innerHTML;
- data.reason = $("#textReason").val();
- if(data.reason == "" || data.reason == null) {
- $("#txtInfo").show();
- return false;
- } else {
- $("#txtInfo").hide();
- d1.showModal();
- sendPost('patient/family_contract/surrender', data, 'json', 'post', submitFailed, submitSuccess2);
- return;
- }
- },
- cancel: function() {
- return;
- }
- }).showModal();
- }
- function submitFailed(res) {
- d1.close();
- if(res && res.msg) {
- dialog({
- contentType: 'tipsbox',
- skin: 'bk-popup',
- content: res.msg
- }).show();
- } else {
- dialog({
- contentType: 'tipsbox',
- skin: 'bk-popup',
- content: '操作失败'
- }).show();
- }
- }
- function submitSuccess(res) {
- if(res.status == 200) {
- d1.close();
- window.location.href = "choose-region.html";
- } else {
- submitFailed(res);
- }
- }
- function submitSuccess2(res) {
- if(res.status == 200) {
- document.getElementById("btnSign").innerHTML = '<span class="c-f18" style="color: #E71F19;">您已申请了解约,流程审核中,请等待!!</span>';
- d1.close();
- dialog({
- contentType: 'tipsbox',
- skin: 'bk-popup',
- content: '解约申请成功'
- }).show();
- window.scrollTo(0, 0);
- //window.location.href = "doctor-home-page.html?doctor=" + doctor;
- } else {
- submitFailed(res);
- }
- }
- //判断是否有三师信息
- function checkTeacter() {
- var data = {};
- sendPost('patient/teachers', data, 'json', 'post', queryFailedTeacter, querySuccessTeacter);
- }
- function querySuccessTeacter(res) {
- if(res.status == 200) {
- d.close();
- var list = res.data.list;
- if(list.length > 0) {
- var doctorTemp = "";
- var doctorName = "";
- for(var i = 0; i < list.length; i++) {
- var data = list[i];
- if(Number(data.type) == 2) {
- doctorTemp = data.code;
- doctorName = data.name;
- }
- }
- var doctorNameTemp = document.getElementById("name").innerHTML;
- if(doctorNameTemp != doctorName) {
- dialog({
- title: '提示',
- content: '您已存在三师签约,签约医生为' + doctorName + '医生,继续与' + doctorName + '医生签约家庭医生服务吗?',
- ok: function() {
- window.location.href = "doctor-home-page.html?doctor=" + doctorTemp;
- }
- }).showModal();
- } else {
- familyDoctor();
- }
- } else {
- familyDoctor();
- }
- } else if(res.status == 1 || res.status == 2) {
- d.close();
- familyDoctor();
- } else {
- queryFailedTeacter(res);
- }
- }
- //成功
- function openidSuccess2(res) {
- if(res.status == 200) {
- if(res.data == null || res.data == "") {
- checkTeacter();
- } else {
- queryDoctor(res);
- }
- } else {
- // 2016.08.31 yezehua 取消“无效的openid”错误提示
- // queryFailed(res);
- }
- }
- //获取家庭签约的医生信息
- function queryDoctor(res) {
- var data = {};
- data.doctor = res.data;
- sendPost('patient/family_contract/homepage', data, 'json', 'post', queryFailed, querySuccess3);
- }
- function querySuccess3(res) {
- if(res.status == 200) {
- var doctorName = document.getElementById("name").innerHTML;
- if(res.data.name != doctorName) {
- dialog({
- title: '提示',
- content: '您已存在家庭签约,签约医生为' + res.data.name + '医生,只可以签约一个家庭医生',
- ok: function() {
- wx.closeWindow();
- }
- }).showModal();
- } else {
- familyDoctor();
- }
- } else {
- queryFailed(res);
- }
- }
- function familyDoctor(querystr) {
- var doctorName = encodeURI(document.getElementById("name").innerHTML);
- var hospitalName = encodeURI(document.getElementById("hospitalName").innerHTML);
- window.location.href = "agreement.html?doctor=" + doctor + "&doctorName=" + doctorName + "&hospitalName=" + hospitalName+(querystr||"");
- }
- function queryFailedTeacter(res) {
- d.close();
- if(res && res.msg) {
- dialog({
- contentType: 'tipsbox',
- skin: 'bk-popup',
- content: res.msg
- }).show();
- } else {
- dialog({
- contentType: 'tipsbox',
- skin: 'bk-popup',
- content: '加载失败'
- }).show();
- }
- }
- // 忽略签约邀请
- function ignoreSignInvitation() {
- sendPost('patient/family/updatePatientInviteLog', {patientInviteLogCode:signInvitationInLink,type:2}, 'json', 'post', function(){
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请求失败'}).show();
- }, function(req) {
- if(req.status==200) {
- // 关闭页面,返回公众号
- wx.closeWindow();
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'处理失败'}).show();
- }
- });
- }
- // 同意与其签约
- function agreeSignInvitation() {
- sendPost('patient/family/updatePatientInviteLog', {patientInviteLogCode:signInvitationInLink,type:1}, 'json', 'post', function(){
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请求失败'}).show();
- }, function(req) {
- if(req.status==200) {
- // 跳转到协议页面
- familyDoctor("&signInvitationCode="+signInvitationInLink);
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'处理失败'}).show();
- }
- });
- }
|