123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314 |
- var d = dialog({contentType:'load', skin:'bk-popup'});
- var request = GetRequest(),
- doctorCode = request["doctorCode"],
- docInfo,
- patientInfo = window.localStorage.getItem(agentName1);
- var userAgent = window.localStorage.getItem(agentName);
- var patientcode = "";
- var serverId = ""; //微信图片上传获取的图片id
- $(function(){
- if(patientInfo){
- patientInfo = JSON.parse(patientInfo);
- }
- if(userAgent){
- userAgent = JSON.parse(userAgent);
- patientcode = userAgent.uid;
- }
- // $("#lbl_patient").text(patientInfo.name);
-
- //获取医生信息
- getDoctorInfo();
-
- bindEvents();
- getWxSign();
- getFamilyMembers();
- })
- function getDoctorInfo(){
- d.show();
- var url = "family_contract/homepage/homepage",
- params = {
- doctor: doctorCode
- };
- sendPost(url, params, 'json', 'get', queryFailed, function(res){
- if(res.status == 200){
- d.close();
- docInfo = res.data;
- var text = docInfo.name;
- if(docInfo.jobName){
- text += "("+docInfo.jobName+")"
- }
- $("#lbl_doctor").text(text);
- }else{
- queryFailed(res);
- }
- })
- }
- function bindEvents(){
- //提交咨询
- $("#commit").click(function() {
- if($(this).hasClass("active")){
- var txtContent = $("#txtContent").val();
-
- if(txtContent){
- txtContent = utf16toEntities(txtContent.replace(/\s+/g,""));
- }
-
- var data = {
- type: 1,
- symptoms: txtContent || "",
- voice: ""
- };
- if (validate(data)) {
- //验证通过执行
- d.showModal();
- var images = getImages();
- if(images.length == 0){
- $("#commit").css("pointer-events","none");
- serverId = '';
- doSubmit(data);
- }
- else{
- uploadImage(data);
- }
- }
- }
- });
- }
- function getFamilyMembers(){
- sendPost("patient/family/authorize_members", {}, "json", "get", function(res){
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();
- }, function(res){
- if (res.status == 200) {
- if (res.data.length > 0) {
- var html = '';
- for(i=0; i<res.data.length; i++){
- var item = res.data[i];
- html += '<option value="'+item.code+'">'+item.name+'</option>';
- }
- $('#lbl_patient').html(html);
- $('#lbl_patient').mobiscroll().select({
- theme: 'ios',
- lang: 'zh',
- display: 'bottom',
- rows:5,
- placeholder:'请选择咨询人员',
- onSelect: function ( valueText, inst) {
- var userAgent = JSON.parse(window.localStorage.getItem(agentName));
- if(userAgent){
- //删除represented字段
- if(userAgent.represented){
- delete userAgent.represented
- }
- if(userAgent.uid!=inst._tempValue){
- userAgent.represented = inst._tempValue;
- patientcode = inst._tempValue;
- }
- window.localStorage.setItem(agentName,JSON.stringify(userAgent))
- }
- }
- })
- $("#patientInfo").val(patientInfo.uid).show()
- }else{
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'加载家庭成员失败'}).show();
- }
- }else{
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();
- }
- });
- }
- //验证信息
- function validate(data) {
- if (data.symptoms.length < 10) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请至少用10个字描述您的症状'}).show();
- return false;
- }
- if (data.symptoms.length > 500) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请在500字以内完成您的症状描述'}).show();
- return false;
- }
- // if(!$(".input-group-pack > input[type=checkbox]").attr("checked")){
- // dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请勾选"我已阅读咨询说明"'}).show();
- // return false;
- // }
- return true;
- }
- function chooseImage(){
- wx.chooseImage({
- count: 9-getImages().length,
- success: function (res) {
- for (var i in res.localIds) {
- appendFile(res.localIds[i]);
- }
- }
- });
- }
- function uploadImage(data){
- $("#commit").css("pointer-events","none");
- var images = getImages();
- if (images.length == 0) {
- return;
- }
- var i = 0, length = images.length;
- serverId = "";
- function upload() {
- wx.uploadImage({
- localId: images[i],
- isShowProgressTips: 0,
- success: function (res) {
- i++;
- if(serverId.length == 0){
- serverId = res.serverId;
- }
- else{
- serverId =serverId + "," + res.serverId;
- }
- if (i < length) {
- upload();
- }
- if(i == images.length){
- doSubmit(data);
- }
- },
- fail: function (res) {
- $("#commit").css("pointer-events","");
- alert(JSON.stringify(res));
- }
- });
- }
- upload();
- }
- // 添加文件
- function appendFile(p) {
- var amount = getImages().length;
- if (amount >= 8) {
- $("#add_img_li").hide();
- }
- if(amount < 9){
- var $li = $('<li>' + ' <img src="' + p + '" data-src="' + p + '" onclick="viewImg(this)">' + ' <a href="javascript:;" class="del-img" onclick="delImg(this)"><i class="iconfont icon-laji"></i></a>' + '</li>');
- var $add_img_li = $("#add_img_li");
- $add_img_li.before($li);
- $("#image_tips").text(getImages().length + "/9");
- }
- }
- //获取需要上传的图片
- function getImages() {
- var images = [];
- $("#img_ul").find("img").each(function() {
- var imgSrc = $(this).attr("data-src");
- images.push(imgSrc);
- });
- return images;
- }
- //查看图片
- function viewImg(dom) {
- var $img = $(dom);
- var thissrc = $img.attr("data-src");
- var mWid = $(window).width();
- var mHei = $(window).height();
- var nHtml = '<div class="delimgpop"><div class="del-img-box"><div class="del-img-con"><img class="del-pop-img" src="' + thissrc + '" style="max-width:' + mWid + 'px; max-height:' + mHei + 'px;"></div></div></div>';
- $("body").append(nHtml);
- $(".delimgpop").click(function() {
- $(this).remove()
- });
- };
- //删除图片
- function delImg(dom) {
- var $li = $(dom).parent();
- $li.remove();
- $("#image_tips").text(getImages().length + "/9");
- var amount = getImages().length;
- if(amount <= 8){
- $("#add_img_li").show();
- }
- return;
- }
- //微信sdk配置出错
- wx.error(function (res) {
- alert("wx.error:" + res.errMsg);
- });
- //提交咨询
- function doSubmit(data) {
- data.mediaIds = serverId;
- data.doctor = doctorCode;
- var url = 'patient/consult/add';//新增三师或家庭
- sendPost(url, data, 'json', 'post', submitFailed, submitSuccess);
-
- }
- function submitSuccess(res) {
- if (res.status == 200) {
- $("#commit").css("pointer-events","");
- d.close();
- //页面跳转到消息页面
- localStorage.setItem("signInfo_tab", 0);
- var direct_url = "../../qygl/html/sign_info.html?doctor="+doctorCode+"&consult="+res.data.consult+"&patientcode="+patientcode;
-
- window.location.href = direct_url;
- } else {
- submitFailed(res);
- }
- }
- function queryFailed(res){
- d.close();
- if (res && res.msg) {
- dialog({contentType:'tipsbox', skin:'bk-popup' , content:res.msg,bottom:true}).show();
- } else {
- dialog({contentType:'tipsbox', skin:'bk-popup' , content:'加载失败',bottom:true}).show();
- }
- }
- function submitFailed(res) {
- $("#commit").css("pointer-events","");
- d.close();
- if (res && res.msg) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'提交失败'}).show();
- }
- }
- function getWxSign(){
- //从后台那边获取签名等信息
- 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: [
- 'chooseImage',
- 'uploadImage'
- ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
- });
- }
- else{
- // dialog({
- // title:'提示',
- // skin:"ui-dialog ax-popup pror",
- // content:"获取微信签名失败",
- // ok: function (){}
- // }).showModal();
- }
- }
- });
- }
|