guide_the_message.js 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. ! function() {
  2. var httpData = GetRequest();
  3. new Vue({
  4. el: "#app",
  5. data: {
  6. imgData: {
  7. accept: 'image/gif, image/jpeg, image/png, image/jpg',
  8. },
  9. isCollapse: false,
  10. upImgs: [],
  11. upImgArr: [],
  12. planid: httpData['planid'],
  13. service: {
  14. relationRecordImg:{}
  15. }
  16. },
  17. mounted: function() {
  18. this.getServiceItem();
  19. },
  20. methods: {
  21. zwkf: function() {
  22. top.layer.msg('此功能暂未开放', {
  23. icon: 1
  24. });
  25. },
  26. jkjy: function(patient, planId) {
  27. var vm = this
  28. top.layer.open({
  29. type: 2,
  30. // offset: ['100px'], //右下角弹出
  31. area: ['80%', '648px'],
  32. shade: 0.5,
  33. title: '健康教育',
  34. fixed: true, //不固定
  35. maxmin: true,
  36. closeBtn: 1,
  37. shift: 5,
  38. shadeClose: false, //点击遮罩关闭层
  39. content: '../../article/html/article.html?code=' + patient + '&planId=' + planId + '&isReha=true'
  40. });
  41. },
  42. // 健康指导
  43. jkzd: function(planId,patient) {
  44. var vm = this
  45. top.layer.open({
  46. type: 2,
  47. // offset: ['100px'], //右下角弹出
  48. area: ['80%', '648px'],
  49. shade: 0.5,
  50. title: '健康教育',
  51. fixed: true, //不固定
  52. maxmin: true,
  53. closeBtn: 1,
  54. shift: 5,
  55. shadeClose: false, //点击遮罩关闭层
  56. content: '../../guidance/html/index.html#/person-edit-panel?patient=' + patient + '&planId=' + planId
  57. });
  58. },
  59. qwapp: function() {
  60. top.layer.msg('请前往app处理', {
  61. icon: 5
  62. });
  63. },
  64. getServiceItem: function() {
  65. var vm = this;
  66. var loginDoctor = JSON.parse(window.localStorage.getItem('wlyyAgent'));
  67. var loadding = top.layer.load(0, {
  68. shade: false
  69. }); //0代表加载的风格,支持0-2
  70. rehaAPI.serviceItem({
  71. planDetailId: vm.planid
  72. }).then(function(res) {
  73. top.layer.close(loadding);
  74. if(res.status == 200) {
  75. vm.service = res.data;
  76. var isZK=loginDoctor.doctorType==1?true:false;
  77. vm.service.isZK=isZK;
  78. if(vm.service.isMyTask==1){//执行者
  79. vm.service.isCK=true;//无法显示按钮
  80. if(loginDoctor.uid==vm.service.specialistDoctorCode){//说明我自己是创建者
  81. vm.service.isCK=false;
  82. vm.service.isCreate=true;
  83. }
  84. }else{
  85. if(loginDoctor.uid==vm.service.specialistDoctorCode){//说明我自己是创建者
  86. vm.service.isCreate=true;
  87. }
  88. }
  89. } else {
  90. top.layer.msg(res.msg, {
  91. icon: 5
  92. });
  93. }
  94. if(vm.service.status==1){
  95. var index = top.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
  96. top.layer.title('服务记录详情', index) //再改变当前层的标题
  97. }
  98. })
  99. },
  100. zdly: function(data) {
  101. var vm = this
  102. var loginDoctor = JSON.parse(window.localStorage.getItem('wlyyAgent'));
  103. var otherCode, otherName;
  104. var planDetailId = data.planDetaiId;
  105. if(loginDoctor.doctorType == 1) {
  106. otherCode = data.familyDoctorCode;
  107. otherName = data.familyDoctorName;
  108. } else {
  109. otherCode = data.specialistDoctorCode;
  110. otherName = data.specialistDoctorName;
  111. }
  112. top.layer.open({
  113. type: 2,
  114. // offset: ['100px'], //右下角弹出
  115. area: ['80%', '600px'],
  116. shade: 0.5,
  117. title: '指导留言',
  118. fixed: true, //不固定
  119. maxmin: true,
  120. closeBtn: 1,
  121. shift: 5,
  122. shadeClose: false, //点击遮罩关闭层
  123. content: '../../consulting/html/consulting.html?otherCode=' + otherCode + '&otherName=' + encodeURI(otherName) + '&planDetailId=' + planDetailId,
  124. end: function() { // 未点击确定按钮,点击关闭按钮
  125.       
  126. vm.getServiceItem();    
  127. }
  128. });
  129. },
  130. deleteImg: function(idx) {
  131. console.log(idx)
  132. this.upImgs.splice(idx, 1)
  133. },
  134. chakan: function() {
  135. this.isCollapse = !this.isCollapse;
  136. },
  137. upLoadImgToBase64: function() {
  138. var vm = this;
  139. var img1 = event.target.files[0];
  140. console.log(img1)
  141. var reader = new FileReader();
  142. var type = img1.type; //文件的类型,判断是否是图片
  143. var size = img1.size; //文件的大小,判断图片的大小
  144. if(this.imgData.accept.indexOf(type) == -1) {
  145. alert('请选择我们支持的图片格式!');
  146. return false;
  147. }
  148. if(size > 3145728) {
  149. alert('请选择3M以内的图片!');
  150. return false;
  151. }
  152. reader.readAsDataURL(img1);
  153. reader.onload = function(e) {
  154. vm.upImgs.push({
  155. baseUrl: e.target.result
  156. });
  157. vm.upImgArr.push(img1);
  158. // vm.uploadImg(vm.upImgArr);
  159. }
  160. },
  161. qrwc: function() {
  162. var vm = this;
  163. vm.uploadImg(vm.upImgArr, vm.updateNoteAndImageRehabilitationOperate);
  164. },
  165. //上传图片
  166. uploadImg: function(data, cb) {
  167. var vm = this;
  168. var len = data.length;
  169. if(!len) {
  170. cb && cb();
  171. } else {
  172. var file = data[len - 1];
  173. var formData = new FormData();
  174. formData.append('file', file);
  175. rehaAPI.upload(formData).then(function(res) {
  176. console.log(res)
  177. if(res.status == 200) {
  178. console.log(vm.upImgs[len - 1])
  179. vm.upImgs[len - 1].img = res.data;
  180. data.pop();
  181. vm.uploadImg(data, cb);
  182. }
  183. })
  184. }
  185. },
  186. viewDetial:function(type,code){
  187. var vm=this;
  188. if(type==4){
  189. top.layer.msg('客户端暂不支持查询随访记录');
  190. }else{
  191. top.layer.open({
  192. type: 2,
  193. // offset: ['100px'], //右下角弹出
  194. area: ['80%', '600px'],
  195. shade: 0.5,
  196. title: '指导留言',
  197. fixed: true, //不固定
  198. maxmin: true,
  199. closeBtn: 1,
  200. shift: 5,
  201. shadeClose: false, //点击遮罩关闭层
  202. content: '../../article/html/article-info.html?articleId=' + code,
  203. end: function() { // 未点击确定按钮,点击关闭按钮
  204. vm.getServiceItem();    
  205. }
  206. });
  207. }
  208. },
  209. updateNoteAndImageRehabilitationOperate: function() {
  210. var vm = this;
  211. var _image = [];
  212. for(var i in vm.upImgs) {
  213. _image.push(vm.upImgs[i].img);
  214. }
  215. var params = {
  216. planDetailId: vm.planid,
  217. node: vm.service.node,
  218. image: JSON.stringify(_image)
  219. }
  220. var loadding = top.layer.load(0, {
  221. shade: false
  222. }); //0代表加载的风格,支持0-2
  223. rehaAPI.updateNoteAndImageRehabilitationOperate(params).then(function(res) {
  224. top.layer.close(loadding);
  225. console.log(res)
  226. if(res.status == 200) {
  227. vm.getServiceItem();
  228. }
  229. })
  230. },
  231. },
  232. filters: {
  233. formatDate: function(value, format) {
  234. if(!value) return;
  235. var fmt = format || "yyyy-MM-dd hh:mm";
  236. var date = new Date(value);
  237. if(/(y+)/.test(fmt)) {
  238. fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
  239. }
  240. let o = {
  241. 'M+': date.getMonth() + 1,
  242. 'd+': date.getDate(),
  243. 'h+': date.getHours(),
  244. 'm+': date.getMinutes(),
  245. 's+': date.getSeconds()
  246. };
  247. for(let k in o) {
  248. if(new RegExp(`(${k})`).test(fmt)) {
  249. let str = o[k] + '';
  250. fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : ('00' + str).substr(str.length));
  251. }
  252. }
  253. return fmt;
  254. },
  255. getImgUrl: function(value) {
  256. var url = httpRequest.getImgUrl(value);
  257. return url;
  258. }
  259. }
  260. })
  261. $("body").on('click','img',function(){
  262. var _this = $(this);//将当前的img元素作为_this传入函数
  263. imgShow("#outerdiv", "#innerdiv", "#bigimg", _this);
  264. });
  265. function imgShow(outerdiv, innerdiv, bigimg, _this){
  266. var src = _this.attr("src");//获取当前点击的pimg元素中的src属性
  267. $(bigimg).attr("src", src);//设置#bigimg元素的src属性
  268. /*获取当前点击图片的真实大小,并显示弹出层及大图*/
  269. $("<img/>").attr("src", src).load(function(){
  270. var windowW = $(window).width();//获取当前窗口宽度
  271. var windowH = $(window).height();//获取当前窗口高度
  272. var realWidth = this.width;//获取图片真实宽度
  273. var realHeight = this.height;//获取图片真实高度
  274. var imgWidth, imgHeight;
  275. var scale = 0.8;//缩放尺寸,当图片真实宽度和高度大于窗口宽度和高度时进行缩放
  276. if(realHeight>windowH*scale) {//判断图片高度
  277. imgHeight = windowH*scale;//如大于窗口高度,图片高度进行缩放
  278. imgWidth = imgHeight/realHeight*realWidth;//等比例缩放宽度
  279. if(imgWidth>windowW*scale) {//如宽度扔大于窗口宽度
  280. imgWidth = windowW*scale;//再对宽度进行缩放
  281. }
  282. } else if(realWidth>windowW*scale) {//如图片高度合适,判断图片宽度
  283. imgWidth = windowW*scale;//如大于窗口宽度,图片宽度进行缩放
  284. imgHeight = imgWidth/realWidth*realHeight;//等比例缩放高度
  285. } else {//如果图片真实高度和宽度都符合要求,高宽不变
  286. imgWidth = realWidth;
  287. imgHeight = realHeight;
  288. }
  289. $(bigimg).css("width",imgWidth);//以最终的宽度对图片缩放
  290. var w = (windowW-imgWidth)/2;//计算图片与窗口左边距
  291. var h = (windowH-imgHeight)/2;//计算图片与窗口上边距
  292. $(innerdiv).css({"top":h, "left":w});//设置#innerdiv的top和left属性
  293. $(outerdiv).fadeIn("fast");//淡入显示#outerdiv及.pimg
  294. });
  295. $(outerdiv).click(function(){//再次点击淡出消失弹出层
  296. $(this).fadeOut("fast");
  297. });
  298. }
  299. }();