提交 22a57c56 编写于 作者: xiaoping.di's avatar xiaoping.di

Merge branch 'feature/jq' into 'develop'

Feature/jq

See merge request com.pica.cloud.education.frontend/pica-admin-consultation!155
{"04094c981e19b077458ac5d414185112":"/Users/pica/workcode/pica-admin-consultation/src/assets/logo.png","1211365adaf1b4ec771bd88c833a880b":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/default.png","ce61da2f6bf1eb6459e85af50b359bc4":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/footer-icon.png","739c4ef79f68611bf4e43c7b981620b2":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/mm.jpg","8c330ac70b9272095e71ee97bf5afd4b":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/index_logoicon.png","523e94358197546c40edadc921593dfb":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/menu1.png","865c6c5fbbbf7050048aeccb3017e911":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/menu2.png","527810387384d793b6ab6eef46156ffb":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/no-content.png","209cb91fc2fd3cd3ed3ee0a8dbcf9c1d":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/no-content1.png","6599b1e484f5af49bf4cebca0e799812":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/noData.png","c854111e04d168e522281c3fbfe72df5":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/small.png","f94996a13b960effe94989c5957e4b42":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/live/close-call.png","44ccf56a79c8edb3a5ce8fef6a26a231":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/live/no-camera.png","04c83af49218fafe8d8c6089c2ea217a":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/live/voice-close.png","fe7ab70abde84f7ac1ae6313f9645b0b":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/live/voice-small.png","25a8e68f45ec649c79248db1fe31e8c9":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/live/voice.png","1faf0833ebbedfda6d17955f8e28594c":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/live/waiting-call.png","f98a82b4194f76eab457b06e3d2e7c66":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/live/warning.png","6ec04aa3b33066f2c68569ba58bc4ca6":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/Icon-calendar.png","ccce5124739cb6198824c9540d3fadef":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/Icon-search.png","8e3527f62dcd15391482e9b73bfeeba2":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/Icon-sel-no.png","a91444748c06325ea33d001995782e5e":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/check-no.png","7d962f5e778d83fdaa29996b166bfc37":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/check-yes.png","2eb4cd4f705b890049038538332dfe6b":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/down-2.png","8509ab20474be1d2b45a2307e879335a":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/down.png","69460ac3712a98af9673b0b729f722e7":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/file-text-2.png","13a22959d620da58bf617c2158fea27c":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/folder-open-2.png","9f7e069aa42684d54ce62240135e5e7a":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-comment.png","f2a3ffe7ba3ec3df2db7f14bbf7f4815":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-contacts.png","c6ddf67990cac1414a14e1a98e9722fa":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-download.png","cc58a2a3f8868ca13d567fbe117de2f1":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-exit.png","0efa6485aacd1cac491c3f1313f348ad":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-file-search.png","67c06d425d6db623e264c3ac2f08da49":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-folder-open.png","ff1499485988321abbf2657a9e18b4cf":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-fresh-2.png","17ec7d4e0499ff61d4ef9939a5e6428f":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-home.png","698d2d257867569ec399c08468ed5303":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-id-card.png","f2f90f4dcd14190d1f2bd86f54b2cf13":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-link.png","065b545d1d83e0456f0e1daa53597a83":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-minus.png","a4cc9df6601a1c5090cf2168dcc7dbde":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-no-send.png","fb3677a52cceb986a3f3343e07a3e2db":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-org.png","8b6e74338243db8bcdea35be8e5a5e38":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-pdf.png","17d834654243c38a199635a00dd7446c":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-phone-no.png","a6b6cc69354232c8d3050cc620e76198":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-plus.png","5f8600eefac5efecdcdf54826b2ef241":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-right-gray.png","89aa7e4d0f1e366395f55e9970ad3cbf":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-sel-checked.png","c645c2246f82d6d03a2fc3bc3f0784f4":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-team.png","6397dbfdf90559f8a4bd8232ae07de75":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-time-circle.png","293003bc154df60b8246a2b1a9d7c37d":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/icon-warning-circle.png","952c520ede22bc3b7acfcdadcf275616":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_close.png","b52e26837623d200333631f103d98b3d":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_close2.png","fa72624d8fc22600303284d811b2eba1":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_man1.png","1ee9e967594f2431cc2d5b488fdef1a2":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_man2.png","2cf21b4a08769bce649212cd664c7aec":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_sendfile.png","46c7f58b6ecc1b9131cdaeb16e8fdb46":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_sendvedio.png","3fc6108bdbb192a275c93c81b68df045":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_small.png","d6a21a2a70672a21e71f4f9a012017ea":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_text.png","c524f8dc61fb177e2c0ec6ba583e16cb":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_time.png","34a79d4b3e08fa1975c4d6907564228c":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/im_video.png","fa9d7d646a9a69b71fae713831df6a66":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/kf-avatar.png","bfc960810928cdee01b2ed84a7c06e2b":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/link-2.png","b980d3476ef41c82308f8c5cdad88531":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/loading-icon-new.png","32925e323462fe90f4882878e0e06557":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/loading-icon.png","d73985857b58cabaec3d78a75306b65c":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/logo-small.png","66e2b7f6f6afdb328dfe2fb0fe271fb5":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/no-search-list.png","f961abf468fe062cc8c6cb5af0a8695d":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/plus-task.png","c23e76ce2fa154090c58e27cd95e83f4":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/right-no.png","aee074558d02e3f5abea690b75337be3":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/right-yes.png","729084b7e8114c57146907d1cd1885df":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/send-no.png","cb4afae3d4197d8991c3d210ce6b86b4":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/send-yes.png","131b8e5595a9eae4b152d0aff5de1185":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/upload-2.png","4107110c540e0357837f881d536548b7":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/upload.png","ce46719d7b61c94af00a5fbe9e7d2e9f":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/voice.png","5c402aef9047604682ddf89f6800f587":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/IM/wenzhenicon.png","46138f4da71d22ea9f52b96381d2b488":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/appointment.png","700baa3be1ed6ed0d15aed0a567ffcc9":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/calling.png","2b73b262d39408258813f8a9799a1d9f":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/callout.png","529313b564b3c06e4cdcf5fda56b62b3":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/callouting.png","4f11e4aa938f3f7e6d3e5ee1c2e6ca22":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/consulting hours.png","250afe058cb804b2c1a9d14dbf5f76fd":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/doctorCallcustomer.gif","4dd8e00757b8abe9b0d82ddac09f30a8":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/no_data_wz.png","2dc933e1793141de0879ee694f7b2901":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/offline.png","203dd7fbdb3c43eb3a0fe48946321f64":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/photo.png","3cb41883c5525e3ff1e48f2636de8de8":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/video.png","cc6f11704c4393870abe9065d85f7244":"/Users/evan/Desktop/pica/pica-admin-consultation/src/assets/image/workbench/voice.png","98c7acf55e9461c81eb07e45bf3f2a20":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/appointment.png","fc598ce09986ef5f62a8fa85de983a8b":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/appremind.png","b203989c64a47cd0e458b56f0d4c3a50":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/calling.gif","fa4c423d7c6ce61c4975121178eb44b9":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/calling.png","794014f45e4a6562dcc940864bcff51d":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/callout.png","7e5d36444fff2dbe0a0a1a16527d01cd":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/callouting.png","6d575af9a66da1c3b79619a6de71045c":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/consulting hours.png","70ec78c674225960473b6d7daa8eca4c":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/maulcall.png","2b346851e90bb70ec49c19a86e210d16":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/no_data_wz.png","98972e5acf45243bb66a8bc6e7233b1a":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/photo.png","cda4965eb5590c25e18b8c6ce49f3be6":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/remindalready.png","8642cdee63ae862673db59fc3c24569a":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/video.png","f322c185a56910cd48942a7b02c0af29":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/workbench/voice.png","c51c54bf7bbb9151a725e0c808ab50b0":"/Users/pica/workcode/pica-admin-consultation/src/assets/image/question.png"}
\ No newline at end of file
因为 它太大了无法显示 源差异 。您可以改为 查看blob
...@@ -167,7 +167,20 @@ export const callDirect = async (data) => { ...@@ -167,7 +167,20 @@ export const callDirect = async (data) => {
method: 'post', method: 'post',
}); });
}; };
export const manualCall = async (data) => {
return request({
url: '/diagnose/admin/diagnose/manual/call',
data: data,
method: 'post',
});
};
// 获取申请取消备注
export const outbounNote = async () => {
return request({
url: '/diagnose/admin/diagnose/outbound/note',
method: 'post',
});
};
export const usersigTrtc = async (data) => { export const usersigTrtc = async (data) => {
return request({ return request({
url: '/coupler/usersig/trtc', url: '/coupler/usersig/trtc',
......
import request from 'mn-template/plugins/http';
export const getFirstLevelLable = async () => {
return request({
url: '/contents/admin/label/getFirstLevelLable/1',
method: 'get',
});
};
export const childLabelList = async (data) => {
return request({
url: '/contents/admin/label/childLabelList',
params: data,
method: 'get',
});
};
export const workQuery = async(data) => {
return request({
url: '/diagnose/doctor/work/workQuery',
data: data,
method: 'post',
});
};
export const switchOpen = async(data) => {
return request({
url: '/diagnose/doctor/work/switchOpen',
data: data,
method: 'post',
});
};
export const workInStep = async() => {
return request({
url: '/diagnose/doctor/work/inStep',
method: 'post',
});
};
export const getLevel = async() => {
return request({
url: '/diagnose/doctor/work/getLevel',
method: 'post',
});
};
\ No newline at end of file
src/assets/image/IM/Icon-calendar.png

262 字节 | W: | H:

src/assets/image/IM/Icon-calendar.png

240 字节 | W: | H:

src/assets/image/IM/Icon-calendar.png
src/assets/image/IM/Icon-calendar.png
src/assets/image/IM/Icon-calendar.png
src/assets/image/IM/Icon-calendar.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/Icon-search.png

470 字节 | W: | H:

src/assets/image/IM/Icon-search.png

328 字节 | W: | H:

src/assets/image/IM/Icon-search.png
src/assets/image/IM/Icon-search.png
src/assets/image/IM/Icon-search.png
src/assets/image/IM/Icon-search.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/Icon-sel-no.png

169 字节 | W: | H:

src/assets/image/IM/Icon-sel-no.png

169 字节 | W: | H:

src/assets/image/IM/Icon-sel-no.png
src/assets/image/IM/Icon-sel-no.png
src/assets/image/IM/Icon-sel-no.png
src/assets/image/IM/Icon-sel-no.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/check-no.png

401 字节 | W: | H:

src/assets/image/IM/check-no.png

337 字节 | W: | H:

src/assets/image/IM/check-no.png
src/assets/image/IM/check-no.png
src/assets/image/IM/check-no.png
src/assets/image/IM/check-no.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/check-yes.png

365 字节 | W: | H:

src/assets/image/IM/check-yes.png

324 字节 | W: | H:

src/assets/image/IM/check-yes.png
src/assets/image/IM/check-yes.png
src/assets/image/IM/check-yes.png
src/assets/image/IM/check-yes.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/down-2.png

509 字节 | W: | H:

src/assets/image/IM/down-2.png

319 字节 | W: | H:

src/assets/image/IM/down-2.png
src/assets/image/IM/down-2.png
src/assets/image/IM/down-2.png
src/assets/image/IM/down-2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/down.png

310 字节 | W: | H:

src/assets/image/IM/down.png

228 字节 | W: | H:

src/assets/image/IM/down.png
src/assets/image/IM/down.png
src/assets/image/IM/down.png
src/assets/image/IM/down.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/file-text-2.png

498 字节 | W: | H:

src/assets/image/IM/file-text-2.png

285 字节 | W: | H:

src/assets/image/IM/file-text-2.png
src/assets/image/IM/file-text-2.png
src/assets/image/IM/file-text-2.png
src/assets/image/IM/file-text-2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/folder-open-2.png

729 字节 | W: | H:

src/assets/image/IM/folder-open-2.png

368 字节 | W: | H:

src/assets/image/IM/folder-open-2.png
src/assets/image/IM/folder-open-2.png
src/assets/image/IM/folder-open-2.png
src/assets/image/IM/folder-open-2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-comment.png

1.1 KB | W: | H:

src/assets/image/IM/icon-comment.png

640 字节 | W: | H:

src/assets/image/IM/icon-comment.png
src/assets/image/IM/icon-comment.png
src/assets/image/IM/icon-comment.png
src/assets/image/IM/icon-comment.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-contacts.png

450 字节 | W: | H:

src/assets/image/IM/icon-contacts.png

329 字节 | W: | H:

src/assets/image/IM/icon-contacts.png
src/assets/image/IM/icon-contacts.png
src/assets/image/IM/icon-contacts.png
src/assets/image/IM/icon-contacts.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-download.png

588 字节 | W: | H:

src/assets/image/IM/icon-download.png

495 字节 | W: | H:

src/assets/image/IM/icon-download.png
src/assets/image/IM/icon-download.png
src/assets/image/IM/icon-download.png
src/assets/image/IM/icon-download.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-exit.png

466 字节 | W: | H:

src/assets/image/IM/icon-exit.png

329 字节 | W: | H:

src/assets/image/IM/icon-exit.png
src/assets/image/IM/icon-exit.png
src/assets/image/IM/icon-exit.png
src/assets/image/IM/icon-exit.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-file-search.png

545 字节 | W: | H:

src/assets/image/IM/icon-file-search.png

404 字节 | W: | H:

src/assets/image/IM/icon-file-search.png
src/assets/image/IM/icon-file-search.png
src/assets/image/IM/icon-file-search.png
src/assets/image/IM/icon-file-search.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-folder-open.png

641 字节 | W: | H:

src/assets/image/IM/icon-folder-open.png

402 字节 | W: | H:

src/assets/image/IM/icon-folder-open.png
src/assets/image/IM/icon-folder-open.png
src/assets/image/IM/icon-folder-open.png
src/assets/image/IM/icon-folder-open.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-fresh-2.png

1.0 KB | W: | H:

src/assets/image/IM/icon-fresh-2.png

773 字节 | W: | H:

src/assets/image/IM/icon-fresh-2.png
src/assets/image/IM/icon-fresh-2.png
src/assets/image/IM/icon-fresh-2.png
src/assets/image/IM/icon-fresh-2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-home.png

401 字节 | W: | H:

src/assets/image/IM/icon-home.png

321 字节 | W: | H:

src/assets/image/IM/icon-home.png
src/assets/image/IM/icon-home.png
src/assets/image/IM/icon-home.png
src/assets/image/IM/icon-home.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-id-card.png

499 字节 | W: | H:

src/assets/image/IM/icon-id-card.png

341 字节 | W: | H:

src/assets/image/IM/icon-id-card.png
src/assets/image/IM/icon-id-card.png
src/assets/image/IM/icon-id-card.png
src/assets/image/IM/icon-id-card.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-link.png

652 字节 | W: | H:

src/assets/image/IM/icon-link.png

430 字节 | W: | H:

src/assets/image/IM/icon-link.png
src/assets/image/IM/icon-link.png
src/assets/image/IM/icon-link.png
src/assets/image/IM/icon-link.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-minus.png

670 字节 | W: | H:

src/assets/image/IM/icon-minus.png

573 字节 | W: | H:

src/assets/image/IM/icon-minus.png
src/assets/image/IM/icon-minus.png
src/assets/image/IM/icon-minus.png
src/assets/image/IM/icon-minus.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-no-send.png

384 字节 | W: | H:

src/assets/image/IM/icon-no-send.png

328 字节 | W: | H:

src/assets/image/IM/icon-no-send.png
src/assets/image/IM/icon-no-send.png
src/assets/image/IM/icon-no-send.png
src/assets/image/IM/icon-no-send.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-org.png

285 字节 | W: | H:

src/assets/image/IM/icon-org.png

282 字节 | W: | H:

src/assets/image/IM/icon-org.png
src/assets/image/IM/icon-org.png
src/assets/image/IM/icon-org.png
src/assets/image/IM/icon-org.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-pdf.png

1.5 KB | W: | H:

src/assets/image/IM/icon-pdf.png

975 字节 | W: | H:

src/assets/image/IM/icon-pdf.png
src/assets/image/IM/icon-pdf.png
src/assets/image/IM/icon-pdf.png
src/assets/image/IM/icon-pdf.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-phone-no.png

877 字节 | W: | H:

src/assets/image/IM/icon-phone-no.png

556 字节 | W: | H:

src/assets/image/IM/icon-phone-no.png
src/assets/image/IM/icon-phone-no.png
src/assets/image/IM/icon-phone-no.png
src/assets/image/IM/icon-phone-no.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-plus.png

672 字节 | W: | H:

src/assets/image/IM/icon-plus.png

578 字节 | W: | H:

src/assets/image/IM/icon-plus.png
src/assets/image/IM/icon-plus.png
src/assets/image/IM/icon-plus.png
src/assets/image/IM/icon-plus.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-right-gray.png

340 字节 | W: | H:

src/assets/image/IM/icon-right-gray.png

273 字节 | W: | H:

src/assets/image/IM/icon-right-gray.png
src/assets/image/IM/icon-right-gray.png
src/assets/image/IM/icon-right-gray.png
src/assets/image/IM/icon-right-gray.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-sel-checked.png

407 字节 | W: | H:

src/assets/image/IM/icon-sel-checked.png

340 字节 | W: | H:

src/assets/image/IM/icon-sel-checked.png
src/assets/image/IM/icon-sel-checked.png
src/assets/image/IM/icon-sel-checked.png
src/assets/image/IM/icon-sel-checked.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-team.png

939 字节 | W: | H:

src/assets/image/IM/icon-team.png

576 字节 | W: | H:

src/assets/image/IM/icon-team.png
src/assets/image/IM/icon-team.png
src/assets/image/IM/icon-team.png
src/assets/image/IM/icon-team.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-time-circle.png

500 字节 | W: | H:

src/assets/image/IM/icon-time-circle.png

426 字节 | W: | H:

src/assets/image/IM/icon-time-circle.png
src/assets/image/IM/icon-time-circle.png
src/assets/image/IM/icon-time-circle.png
src/assets/image/IM/icon-time-circle.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/icon-warning-circle.png

433 字节 | W: | H:

src/assets/image/IM/icon-warning-circle.png

380 字节 | W: | H:

src/assets/image/IM/icon-warning-circle.png
src/assets/image/IM/icon-warning-circle.png
src/assets/image/IM/icon-warning-circle.png
src/assets/image/IM/icon-warning-circle.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_close.png

1.5 KB | W: | H:

src/assets/image/IM/im_close.png

864 字节 | W: | H:

src/assets/image/IM/im_close.png
src/assets/image/IM/im_close.png
src/assets/image/IM/im_close.png
src/assets/image/IM/im_close.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_close2.png

1.2 KB | W: | H:

src/assets/image/IM/im_close2.png

671 字节 | W: | H:

src/assets/image/IM/im_close2.png
src/assets/image/IM/im_close2.png
src/assets/image/IM/im_close2.png
src/assets/image/IM/im_close2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_man1.png

4.1 KB | W: | H:

src/assets/image/IM/im_man1.png

1.4 KB | W: | H:

src/assets/image/IM/im_man1.png
src/assets/image/IM/im_man1.png
src/assets/image/IM/im_man1.png
src/assets/image/IM/im_man1.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_man2.png

4.6 KB | W: | H:

src/assets/image/IM/im_man2.png

1.6 KB | W: | H:

src/assets/image/IM/im_man2.png
src/assets/image/IM/im_man2.png
src/assets/image/IM/im_man2.png
src/assets/image/IM/im_man2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_sendfile.png

1.0 KB | W: | H:

src/assets/image/IM/im_sendfile.png

534 字节 | W: | H:

src/assets/image/IM/im_sendfile.png
src/assets/image/IM/im_sendfile.png
src/assets/image/IM/im_sendfile.png
src/assets/image/IM/im_sendfile.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_sendvedio.png

1.6 KB | W: | H:

src/assets/image/IM/im_sendvedio.png

686 字节 | W: | H:

src/assets/image/IM/im_sendvedio.png
src/assets/image/IM/im_sendvedio.png
src/assets/image/IM/im_sendvedio.png
src/assets/image/IM/im_sendvedio.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_small.png

938 字节 | W: | H:

src/assets/image/IM/im_small.png

574 字节 | W: | H:

src/assets/image/IM/im_small.png
src/assets/image/IM/im_small.png
src/assets/image/IM/im_small.png
src/assets/image/IM/im_small.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_text.png

1017 字节 | W: | H:

src/assets/image/IM/im_text.png

489 字节 | W: | H:

src/assets/image/IM/im_text.png
src/assets/image/IM/im_text.png
src/assets/image/IM/im_text.png
src/assets/image/IM/im_text.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_time.png

1.2 KB | W: | H:

src/assets/image/IM/im_time.png

542 字节 | W: | H:

src/assets/image/IM/im_time.png
src/assets/image/IM/im_time.png
src/assets/image/IM/im_time.png
src/assets/image/IM/im_time.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/im_video.png

1.1 KB | W: | H:

src/assets/image/IM/im_video.png

474 字节 | W: | H:

src/assets/image/IM/im_video.png
src/assets/image/IM/im_video.png
src/assets/image/IM/im_video.png
src/assets/image/IM/im_video.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/kf-avatar.png

4.4 KB | W: | H:

src/assets/image/IM/kf-avatar.png

1.6 KB | W: | H:

src/assets/image/IM/kf-avatar.png
src/assets/image/IM/kf-avatar.png
src/assets/image/IM/kf-avatar.png
src/assets/image/IM/kf-avatar.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/link-2.png

986 字节 | W: | H:

src/assets/image/IM/link-2.png

383 字节 | W: | H:

src/assets/image/IM/link-2.png
src/assets/image/IM/link-2.png
src/assets/image/IM/link-2.png
src/assets/image/IM/link-2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/loading-icon-new.png

694 字节 | W: | H:

src/assets/image/IM/loading-icon-new.png

615 字节 | W: | H:

src/assets/image/IM/loading-icon-new.png
src/assets/image/IM/loading-icon-new.png
src/assets/image/IM/loading-icon-new.png
src/assets/image/IM/loading-icon-new.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/loading-icon.png

1.2 KB | W: | H:

src/assets/image/IM/loading-icon.png

772 字节 | W: | H:

src/assets/image/IM/loading-icon.png
src/assets/image/IM/loading-icon.png
src/assets/image/IM/loading-icon.png
src/assets/image/IM/loading-icon.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/plus-task.png

296 字节 | W: | H:

src/assets/image/IM/plus-task.png

279 字节 | W: | H:

src/assets/image/IM/plus-task.png
src/assets/image/IM/plus-task.png
src/assets/image/IM/plus-task.png
src/assets/image/IM/plus-task.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/right-no.png

422 字节 | W: | H:

src/assets/image/IM/right-no.png

258 字节 | W: | H:

src/assets/image/IM/right-no.png
src/assets/image/IM/right-no.png
src/assets/image/IM/right-no.png
src/assets/image/IM/right-no.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/right-yes.png

340 字节 | W: | H:

src/assets/image/IM/right-yes.png

282 字节 | W: | H:

src/assets/image/IM/right-yes.png
src/assets/image/IM/right-yes.png
src/assets/image/IM/right-yes.png
src/assets/image/IM/right-yes.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/send-no.png

803 字节 | W: | H:

src/assets/image/IM/send-no.png

474 字节 | W: | H:

src/assets/image/IM/send-no.png
src/assets/image/IM/send-no.png
src/assets/image/IM/send-no.png
src/assets/image/IM/send-no.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/send-yes.png

803 字节 | W: | H:

src/assets/image/IM/send-yes.png

495 字节 | W: | H:

src/assets/image/IM/send-yes.png
src/assets/image/IM/send-yes.png
src/assets/image/IM/send-yes.png
src/assets/image/IM/send-yes.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/upload-2.png

403 字节 | W: | H:

src/assets/image/IM/upload-2.png

285 字节 | W: | H:

src/assets/image/IM/upload-2.png
src/assets/image/IM/upload-2.png
src/assets/image/IM/upload-2.png
src/assets/image/IM/upload-2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/upload.png

255 字节 | W: | H:

src/assets/image/IM/upload.png

205 字节 | W: | H:

src/assets/image/IM/upload.png
src/assets/image/IM/upload.png
src/assets/image/IM/upload.png
src/assets/image/IM/upload.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/IM/voice.png

2.5 KB | W: | H:

src/assets/image/IM/voice.png

995 字节 | W: | H:

src/assets/image/IM/voice.png
src/assets/image/IM/voice.png
src/assets/image/IM/voice.png
src/assets/image/IM/voice.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/default.png

2.5 KB | W: | H:

src/assets/image/default.png

759 字节 | W: | H:

src/assets/image/default.png
src/assets/image/default.png
src/assets/image/default.png
src/assets/image/default.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/footer-icon.png

2.7 KB | W: | H:

src/assets/image/footer-icon.png

1.7 KB | W: | H:

src/assets/image/footer-icon.png
src/assets/image/footer-icon.png
src/assets/image/footer-icon.png
src/assets/image/footer-icon.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/img.jpg

45.8 KB | W: | H:

src/assets/image/img.jpg

31.9 KB | W: | H:

src/assets/image/img.jpg
src/assets/image/img.jpg
src/assets/image/img.jpg
src/assets/image/img.jpg
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/index_logoicon.png

44.1 KB | W: | H:

src/assets/image/index_logoicon.png

18.5 KB | W: | H:

src/assets/image/index_logoicon.png
src/assets/image/index_logoicon.png
src/assets/image/index_logoicon.png
src/assets/image/index_logoicon.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/live/voice-close.png

1.7 KB | W: | H:

src/assets/image/live/voice-close.png

1008 字节 | W: | H:

src/assets/image/live/voice-close.png
src/assets/image/live/voice-close.png
src/assets/image/live/voice-close.png
src/assets/image/live/voice-close.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/live/voice-small.png

1.1 KB | W: | H:

src/assets/image/live/voice-small.png

706 字节 | W: | H:

src/assets/image/live/voice-small.png
src/assets/image/live/voice-small.png
src/assets/image/live/voice-small.png
src/assets/image/live/voice-small.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/live/voice.png

3.4 KB | W: | H:

src/assets/image/live/voice.png

1.2 KB | W: | H:

src/assets/image/live/voice.png
src/assets/image/live/voice.png
src/assets/image/live/voice.png
src/assets/image/live/voice.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/live/warning.png

281 字节 | W: | H:

src/assets/image/live/warning.png

272 字节 | W: | H:

src/assets/image/live/warning.png
src/assets/image/live/warning.png
src/assets/image/live/warning.png
src/assets/image/live/warning.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/menu1.png

896 字节 | W: | H:

src/assets/image/menu1.png

509 字节 | W: | H:

src/assets/image/menu1.png
src/assets/image/menu1.png
src/assets/image/menu1.png
src/assets/image/menu1.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/menu2.png

554 字节 | W: | H:

src/assets/image/menu2.png

257 字节 | W: | H:

src/assets/image/menu2.png
src/assets/image/menu2.png
src/assets/image/menu2.png
src/assets/image/menu2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/mm.jpg

45.8 KB | W: | H:

src/assets/image/mm.jpg

31.9 KB | W: | H:

src/assets/image/mm.jpg
src/assets/image/mm.jpg
src/assets/image/mm.jpg
src/assets/image/mm.jpg
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/no-content.png

7.2 KB | W: | H:

src/assets/image/no-content.png

1.4 KB | W: | H:

src/assets/image/no-content.png
src/assets/image/no-content.png
src/assets/image/no-content.png
src/assets/image/no-content.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/no-content1.png

1.6 KB | W: | H:

src/assets/image/no-content1.png

1.5 KB | W: | H:

src/assets/image/no-content1.png
src/assets/image/no-content1.png
src/assets/image/no-content1.png
src/assets/image/no-content1.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/noData.png

4.3 KB | W: | H:

src/assets/image/noData.png

1.6 KB | W: | H:

src/assets/image/noData.png
src/assets/image/noData.png
src/assets/image/noData.png
src/assets/image/noData.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/small.png

3.8 KB | W: | H:

src/assets/image/small.png

1.1 KB | W: | H:

src/assets/image/small.png
src/assets/image/small.png
src/assets/image/small.png
src/assets/image/small.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/workbench/appointment.png

492 字节 | W: | H:

src/assets/image/workbench/appointment.png

247 字节 | W: | H:

src/assets/image/workbench/appointment.png
src/assets/image/workbench/appointment.png
src/assets/image/workbench/appointment.png
src/assets/image/workbench/appointment.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/workbench/calling.png

2.6 KB | W: | H:

src/assets/image/workbench/calling.png

768 字节 | W: | H:

src/assets/image/workbench/calling.png
src/assets/image/workbench/calling.png
src/assets/image/workbench/calling.png
src/assets/image/workbench/calling.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/workbench/photo.png

485 字节 | W: | H:

src/assets/image/workbench/photo.png

272 字节 | W: | H:

src/assets/image/workbench/photo.png
src/assets/image/workbench/photo.png
src/assets/image/workbench/photo.png
src/assets/image/workbench/photo.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/workbench/video.png

372 字节 | W: | H:

src/assets/image/workbench/video.png

233 字节 | W: | H:

src/assets/image/workbench/video.png
src/assets/image/workbench/video.png
src/assets/image/workbench/video.png
src/assets/image/workbench/video.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/image/workbench/voice.png

302 字节 | W: | H:

src/assets/image/workbench/voice.png

239 字节 | W: | H:

src/assets/image/workbench/voice.png
src/assets/image/workbench/voice.png
src/assets/image/workbench/voice.png
src/assets/image/workbench/voice.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/logo.png

6.7 KB | W: | H:

src/assets/logo.png

2.2 KB | W: | H:

src/assets/logo.png
src/assets/logo.png
src/assets/logo.png
src/assets/logo.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -304,7 +304,7 @@ ...@@ -304,7 +304,7 @@
.catch(() => { .catch(() => {
this.$message.error('未获取到相关信息'); this.$message.error('未获取到相关信息');
this.memberList = []; this.memberList = [];
// this.getErr(); // this.getErr();
}); });
}, },
// 获取AppId // 获取AppId
...@@ -548,8 +548,8 @@ ...@@ -548,8 +548,8 @@
this.muteLocalAudio(); this.muteLocalAudio();
this.rtc.leave(); this.rtc.leave();
this.clearSession(); this.clearSession();
window.location.href = 'about:blank'; // window.location.href = 'about:blank';
window.close(); // window.close();
}, },
// 结束会话 // 结束会话
overFn() { overFn() {
......
<template>
<div>
<el-dialog
title="申请取消/退款"
:visible.sync="dialogFormVisible"
@close="cancel"
>
<el-form
ref="setForm"
:model="form"
:rules="addRules"
>
<el-form-item
label="申请取消/退款原因:"
:label-width="formLabelWidth"
prop="region"
>
<el-select
v-model="form.region"
placeholder="请选择申请取消/退款"
style="width: 50%"
>
<el-option
v-for="(item, index) of noteList"
:key="index"
:label="item"
:value="item"
/>
</el-select>
</el-form-item>
</el-form>
<div
slot="footer"
class="dialog-footer"
>
<el-button @click="cancel">
取 消
</el-button>
<el-button
type="primary"
@click="confirm"
>
提 交
</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
// import {outbounNote} from '../../api/diagnosis';
import { updateDiagnosis } from '../../utils/diagnosis';
let vm = null;
export default {
props: {
dialogFormVisible: {
type: Boolean,
default: false,
},
diagnoseLogId: {
type: Number,
default: 0,
},
noteList: {
type: Array,
default: () => {
return [];
},
},
},
data() {
return {
form: {
region: '',
},
formLabelWidth: '200px',
addRules: {
region: [
{
required: true,
message: '请选择申请取消/退款原因',
trigger: 'blur',
},
],
},
};
},
watch: {},
created() {
vm = this;
},
mounted() {
// this.getOutboundNote();
},
methods: {
// getOutboundNote() {
// outbounNote().then(res => {
// if(res.code == '000000') {
// this.noteList = res.data || [];
// }
// });
// },
confirm() {
this.$refs.setForm.validate((valid) => {
if (valid) {
console.log(this.form.region, '22');
const req = {
id: this.diagnoseLogId,
bizType: 17,
refundRemark: this.form.region,
};
updateDiagnosis(req)
.then(function (res) {
if (res.code == '000000') {
vm.cancel();
vm.$emit('search');
} else {
vm.$message.error(res.message);
}
})
.catch(function (error) {
vm.$message.error(error.message);
});
}
});
},
cancel() {
this.form.region = '';
this.$emit('update:dialogFormVisible', false);
},
},
};
</script>
<style lang="scss" scoped></style>
...@@ -123,11 +123,18 @@ ...@@ -123,11 +123,18 @@
@click="openDiagnosisStartTimeDialog" @click="openDiagnosisStartTimeDialog"
> >
<i class="el-icon-alarm-clock" /> <i class="el-icon-alarm-clock" />
<span v-if="startTimeValue === ''">请选择问诊时间</span> <span v-if="!rangeTimeData">请选择问诊时间</span>
<span <span v-else>
v-else {{
>{{ dayFormatWithoutSecond(startTimeValue) }} -- rangeTimeData
{{ dayFormatWithoutSecond(endTimeValue) }}</span> ? rangeTimeData
: dayFormatWithoutSecond(startTimeValue)
}}
{{
dayFormatWithoutSecond(endTimeValue)
? ' -- ' + dayFormatWithoutSecond(endTimeValue)
: ''
}}</span>
</div> </div>
</el-col> </el-col>
</el-form-item> </el-form-item>
...@@ -301,6 +308,10 @@ ...@@ -301,6 +308,10 @@
type: Boolean, type: Boolean,
default: false, default: false,
}, },
rangeTimeData: {
type: String,
default: '',
},
diagnoseLogId: { diagnoseLogId: {
type: Number, type: Number,
default: 0, default: 0,
...@@ -381,6 +392,15 @@ ...@@ -381,6 +392,15 @@
}, },
}, },
created() { created() {
// this.startTimeValue = this.rangeTimeData;
console.log('``````', this.rangeTimeData);
// if (this.rangeTimeData) {
// this.timeRange = Number(20);
// this.endTimeValue = dayjs(this.rangeTimeData)
// .add(this.timeRange, 'minute')
// .format('YYYY-MM-DD HH:mm:ss');
// }
console.log('``````', this.rangeTimeData, this.endTimeValue);
vm = this; vm = this;
this.getDoctorList(); this.getDoctorList();
}, },
...@@ -456,9 +476,9 @@ ...@@ -456,9 +476,9 @@
cancel() { cancel() {
this.doctorId = ''; this.doctorId = '';
this.formData.outsideDoctor = ''; this.formData.outsideDoctor = '';
this.startTimeValue = ''; // this.startTimeValue = this.rangeTimeData;
this.endTimeValue = ''; // this.endTimeValue = '';
this.timeRange = ''; // this.timeRange = Number(20);
this.$emit('update:diagnosisDoctorVisible', false); this.$emit('update:diagnosisDoctorVisible', false);
}, },
opendialog() { opendialog() {
...@@ -512,14 +532,33 @@ ...@@ -512,14 +532,33 @@
} }
}, },
openDiagnosisStartTimeDialog() { openDiagnosisStartTimeDialog() {
this.startTimeValue = this.rangeTimeData;
if (!this.startTimeValue) {
this.timeRange = '';
this.endTimeValue = '';
}else{
this.timeRange = Number(20);
this.endTimeValue = dayjs(this.rangeTimeData)
.add(this.timeRange, 'minute')
.format('YYYY-MM-DD HH:mm:ss');
}
this.diagnosisStartTimeDialog = true; this.diagnosisStartTimeDialog = true;
}, },
startTimeConfirm(isCancle) { startTimeConfirm(isCancle) {
console.log('isCancle-', isCancle); console.log('isCancle-', isCancle);
if (isCancle == 'cancel') { if (isCancle == 'cancel') {
this.startTimeValue = ''; // this.startTimeValue = '';
this.endTimeValue = ''; this.endTimeValue = '';
this.timeRange = ''; this.timeRange = '';
// if (!this.startTimeValue) {
// this.timeRange = '';
// this.endTimeValue = '';
// }else{
// this.timeRange = Number(20);
// this.endTimeValue = dayjs(this.rangeTimeData)
// .add(this.timeRange, 'minute')
// .format('YYYY-MM-DD HH:mm:ss');
// }
} }
if (isCancle == 'submit') { if (isCancle == 'submit') {
if (String(this.startTimeValue).trim() === '' || !this.startTimeValue) { if (String(this.startTimeValue).trim() === '' || !this.startTimeValue) {
...@@ -542,6 +581,7 @@ ...@@ -542,6 +581,7 @@
.add(this.timeRange, 'minute') .add(this.timeRange, 'minute')
.format('YYYY-MM-DD HH:mm:ss'); .format('YYYY-MM-DD HH:mm:ss');
} }
this.$emit('changeStartTime', { time: this.startTimeValue });
this.diagnosisStartTimeDialog = false; this.diagnosisStartTimeDialog = false;
}, },
dayFormat(v) { dayFormat(v) {
......
...@@ -80,17 +80,25 @@ ...@@ -80,17 +80,25 @@
</div> </div>
</div> </div>
</div> </div>
<div class="manual-call-status">
<div <div class="manual-dialing">
v-if="diagnoseTypeIcon == 'voice' && doctorTrtcEntryStatus == 2" <img
class="call-status" :src="isManuacall ? manuacallIng : manuacall"
> alt=""
<img @click="manualDialing(1)"
v-if="isCall" >
:src="isDoctorChat ? callouting : callout" </div>
alt="" <div
@click="drivingCall(item.doctorId, 2)" v-if="diagnoseTypeIcon == 'voice' && doctorTrtcEntryStatus == 2"
class="call-status"
> >
<img
v-if="isCall"
:src="isDoctorChat ? callouting : callout"
alt=""
@click="drivingCall(item.doctorId, 2)"
>
</div>
</div> </div>
</div> </div>
<div class="inquiry-user-status"> <div class="inquiry-user-status">
...@@ -162,17 +170,25 @@ ...@@ -162,17 +170,25 @@
</div> </div>
</div> </div>
</div> </div>
<div class="manual-call-status">
<div <div class="manual-dialing">
v-if="diagnoseTypeIcon == 'voice' && userTrtcEntryStatus == 2" <img
class="call-status" :src="isManuacallType ? manuacallIng : manuacall"
> alt=""
<img @click="manualDialing(2)"
v-if="isCall" >
:src="isUserChat ? callouting : callout" </div>
alt="" <div
@click="drivingCall(item.userId, 1)" v-if="diagnoseTypeIcon == 'voice' && userTrtcEntryStatus == 2"
class="call-status"
> >
<img
v-if="isCall"
:src="isUserChat ? callouting : callout"
alt=""
@click="drivingCall(item.userId, 1)"
>
</div>
</div> </div>
</div> </div>
<div class="inquiry-user-status"> <div class="inquiry-user-status">
...@@ -202,7 +218,12 @@ ...@@ -202,7 +218,12 @@
</template> </template>
<script> <script>
import { teamDetail, callDirect, doctorAdviceList } from '@/api/diagnosis'; import {
teamDetail,
callDirect,
doctorAdviceList,
manualCall,
} from '@/api/diagnosis';
import { createNamespacedHelpers } from 'vuex'; import { createNamespacedHelpers } from 'vuex';
const { mapState } = createNamespacedHelpers('main'); const { mapState } = createNamespacedHelpers('main');
export default { export default {
...@@ -217,14 +238,18 @@ ...@@ -217,14 +238,18 @@
data() { data() {
return { return {
infocallImg: require('@/assets/image/workbench/calling.png'), infocallImg: require('@/assets/image/workbench/calling.png'),
callout: require('@/assets/image/workbench/callout.png'), callout: require('@/assets/image/workbench/appremind.png'),
callouting: require('@/assets/image/workbench/callouting.png'), callouting: require('@/assets/image/workbench/remindalready.png'),
offline: require('@/assets/image/workbench/offline.png'), offline: require('@/assets/image/workbench/offline.png'),
manuacall: require('@/assets/image/workbench/maulcall.png'),
manuacallIng: require('@/assets/image/workbench/calling.gif'),
timer: null, timer: null,
isChat: false, isChat: false,
isUserChat: false, isUserChat: false,
isDoctorChat: false, isDoctorChat: false,
isCall: false, isCall: false,
isManuacall: false,
isManuacallType: false,
accId: '', accId: '',
}; };
}, },
...@@ -349,6 +374,7 @@ ...@@ -349,6 +374,7 @@
}, },
watch: { watch: {
item(newVal, oldVal) { item(newVal, oldVal) {
console.log(newVal, oldVal, 'newVal, oldVal');
if (newVal !== oldVal) { if (newVal !== oldVal) {
if (newVal.doctorTrtcEntryStatus == 2) { if (newVal.doctorTrtcEntryStatus == 2) {
this.isDoctorChat = false; this.isDoctorChat = false;
...@@ -356,6 +382,12 @@ ...@@ -356,6 +382,12 @@
if (newVal.userTrtcEntryStatus == 2) { if (newVal.userTrtcEntryStatus == 2) {
this.isUserChat = false; this.isUserChat = false;
} }
if (newVal.doctorCallStatus !== oldVal.doctorCallStatus) {
this.isManuacall = false;
}
if (newVal.userCallStatus !== oldVal.userCallStatus) {
this.isManuacallType = false;
}
} }
}, },
}, },
...@@ -375,6 +407,52 @@ ...@@ -375,6 +407,52 @@
}, },
methods: { methods: {
manualDialing(type) {
this.$confirm('确认要电话通知该医生吗?', '提示', {
confirmButtonText: '电话通知',
cancelButtonText: '取消',
type: 'warning',
})
.then(() => {
let userMobilePhone = '';
let userId = '';
let doctorId = '';
let doctorMobilePhone = '';
if (type === 1) {
userMobilePhone = null;
userId = null;
doctorId = this.item.doctorId;
doctorMobilePhone = this.item.doctorMobile;
} else {
userMobilePhone = this.item.userMobile;
userId = this.item.userId;
doctorId = null;
doctorMobilePhone = null;
}
const params = {
diagnoseId: this.item.diagnoseLogId,
doctorId: doctorId,
doctorMobilePhone: doctorMobilePhone,
userId: userId,
userMobilePhone: userMobilePhone,
};
manualCall(params).then((res) => {
if (res.code === '000000') {
if (type === 1) {
this.isManuacall = true;
} else {
this.isManuacallType = true;
}
}
});
})
.catch(() => {
this.$message({
type: 'info',
message: '取消拨打电话',
});
});
},
formatDateData(time) { formatDateData(time) {
const now_data = new Date().getTime(); const now_data = new Date().getTime();
const my_time = now_data - time; const my_time = now_data - time;
...@@ -630,14 +708,24 @@ ...@@ -630,14 +708,24 @@
} }
} }
} }
.manual-call-status {
.call-status { display: flex;
width: 45px; .manual-dialing {
height: 46px; margin-right: 5px;
img {
cursor: pointer; cursor: pointer;
width: 45px; img {
height: 46px; width: 27px;
height: 48px;
}
}
.call-status {
// width: 45px;
// height: 46px;
img {
cursor: pointer;
width: 27px;
height: 48px;
}
} }
} }
} }
...@@ -746,7 +834,7 @@ ...@@ -746,7 +834,7 @@
width: 12px; width: 12px;
height: 12px; height: 12px;
display: inline-block; display: inline-block;
background: url("../../assets/image/workbench/appointment.png") no-repeat; background: url('../../assets/image/workbench/appointment.png') no-repeat;
background-size: cover; background-size: cover;
margin-right: 5px; margin-right: 5px;
} }
...@@ -754,21 +842,21 @@ ...@@ -754,21 +842,21 @@
width: 12px; width: 12px;
height: 12px; height: 12px;
display: inline-block; display: inline-block;
background: url("../../assets/image/workbench/video.png") no-repeat; background: url('../../assets/image/workbench/video.png') no-repeat;
background-size: cover; background-size: cover;
} }
.photo { .photo {
width: 12px; width: 12px;
height: 12px; height: 12px;
display: inline-block; display: inline-block;
background: url("../../assets/image/workbench/photo.png") no-repeat; background: url('../../assets/image/workbench/photo.png') no-repeat;
background-size: cover; background-size: cover;
} }
.voice { .voice {
width: 12px; width: 12px;
height: 12px; height: 12px;
display: inline-block; display: inline-block;
background: url("../../assets/image/workbench/voice.png") no-repeat; background: url('../../assets/image/workbench/voice.png') no-repeat;
background-size: cover; background-size: cover;
} }
} }
......
<template>
<div class="table-serviceSchedule">
<el-table
v-loading="loading"
class="search-table"
style="width: 100%"
:data="tableData"
@sort-change="sortfunc"
>
<el-table-column
prop="doctorId"
label="医生ID"
width="170"
align="center"
/>
<el-table-column
prop="doctorName"
label="医生姓名"
width="170"
align="center"
/>
<el-table-column
prop="serviceOpen"
label="服务开通"
width="150"
align="center"
column-key="serviceOpen"
:filter-multiple="false"
:filters="serviceOpenList"
:filter-method="getServiceOpen"
>
<template slot-scope="scope">
<span style="margin-left: 10px">{{ scope.row.serviceOpen ==='1' ? '开通': '未开通' }}</span>
</template>
</el-table-column>
<el-table-column
prop="hospital"
label="所属机构"
width="200"
align="center"
show-overflow-tooltip
/>
<el-table-column
prop="departmentName"
label="科室"
width="170"
align="center"
/>
<el-table-column
prop="level"
label="匹配优先级"
align="center"
width="150"
column-key="level"
:filter-multiple="false"
:filters="createList"
:filter-method="getLevel"
/>
<el-table-column
prop="workStatus"
label="排班状态"
width="170"
align="center"
column-key="workStatus"
:filter-multiple="false"
:filters="workStatusList"
:filter-method="getWorkStatus"
>
<template slot-scope="scope">
<span style="margin-left: 10px">{{ scope.row.workStatus ==='2' ? '未排班': '已排班' }}</span>
</template>
</el-table-column>
<el-table-column
prop="modifiedTime"
label="修改时间"
width="170"
align="center"
sortable
/>
<el-table-column
prop="mobilePhone"
label="联系电话"
width="170"
align="center"
/>
<el-table-column
property="delivery"
align="center"
label="接单开关"
>
<template slot-scope="scope">
<el-switch
v-model="scope.row.delivery"
active-color="#0D9078"
@change="changeSwitch(scope.$index,scope.row)"
/>
</template>
</el-table-column>
<el-table-column
label="操作"
fixed="right"
align="center"
min-width="200"
>
<template slot-scope="scope">
<div
class="scope-work"
style="display:flex"
>
<div
v-if=" scope.row.workStatus === '2'"
class="download-btn"
@click="addSchedule(scope.row,1)"
>
新增排班
</div>
<div
v-else
class="download-btn"
@click="addSchedule(scope.row,2)"
>
编辑排班
</div>
<div
class="download-btn"
@click="addSchedule(scope.row,2)"
>
查看
</div>
</div>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<div class="pagination">
<el-pagination
background
:current-page="pageNo"
:page-sizes="[15, 30, 50, 100, 150, 200]"
:page-size="pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="totalRows"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
/>
</div>
</div>
</template>
<script>
export default {
components: {
// NewScheduling,
},
props: {
tableData: {
type: Array,
default() {
return [];
},
},
createList: {
type: Array,
default() {
return [];
},
},
pageNo: {
type: Number,
default: 1,
},
pageSize: {
type: Number,
default: 20,
},
totalRows: {
type: Number,
default: 0,
},
loading: {
type: Boolean,
default: false,
},
},
data() {
return {
workStatusList:[
{
text: '已排班',
value: '已排班'
},
{
text: '未排班',
value: '未排班'
}
],
serviceOpenList:[
{
value: 1,
text: '开通'
},
{
value: 2,
text: '未开通'
},
],
};
},
mounted() {},
methods:{
changeSwitch(value, val) {
console.log(value, val, '123');
this.$emit('changeSwitch', value, val);
},
// handleFilterChange(value) {
// console.log(value, 'handleFilterChange');
// },
getServiceOpen(value, row) {
return row.serviceOpen === String(value);
},
getLevel(value, row) {
return row.level === String(value);
},
getWorkStatus(value, row) {
console.log(value, row);
let newValue = '';
if (value === '未排班') {
newValue = '2';
}else{
newValue = '1';
}
return row.workStatus === String(newValue);
},
showworkStatus() {
console.log(11111);
this.isworkStatus = !this.isworkStatus;
console.log(this.isworkStatus);
},
addSchedule(value, val) {
console.log(value, val, '123212321');
this.$emit('addSchedule', value, val);
},
// 分页
handleSizeChange(value) {
this.$emit('handleSizeChange', value);
},
handleCurrentChange(value) {
this.$emit('handleCurrentChange', value);
},
sortfunc(data) {
this.$emit('sortfunc', data);
},
}
};
</script>
<style lang="scss" scoped>
.table-serviceSchedule{
.el-table {
border-radius: 8px;
// 深度选择器
/deep/ .highlight{
color: #0D9078 !important;
}
.scope-work{
display: flex;
justify-content: center;
.download-btn{
color: #0D9078;
cursor: pointer;
margin-right: 10px;
}
}
}
}
</style>
\ No newline at end of file
...@@ -72,8 +72,7 @@ ...@@ -72,8 +72,7 @@
</el-button> </el-button>
<el-button <el-button
v-if=" v-if="
showBtn(scope.row, 21, 22, 23, 24, 25, 26, 3, 2) && showBtn(scope.row, 21, 22, 23, 24, 25, 26, 3, 2) && menuType == 1
menuType == 1
" "
type="primary" type="primary"
size="small" size="small"
...@@ -92,8 +91,7 @@ ...@@ -92,8 +91,7 @@
</el-button> </el-button>
<el-button <el-button
v-if=" v-if="
showBtn(scope.row, 2, 21, 22, 23, 24, 25, 26, 3) && showBtn(scope.row, 2, 21, 22, 23, 24, 25, 26, 3) && menuType == 1
menuType == 1
" "
type="primary" type="primary"
size="small" size="small"
...@@ -139,9 +137,7 @@ ...@@ -139,9 +137,7 @@
加入问诊 加入问诊
</el-button> </el-button>
<el-button <el-button
v-if=" v-if="showBtn(scope.row, 2, 3, 4, 6, 21, 22, 23, 24, 25, 26, 5, 6)"
showBtn(scope.row, 2, 3, 4, 6, 21, 22, 23, 24, 25, 26, 5, 6)
"
type="primary" type="primary"
size="small" size="small"
class="btn" class="btn"
...@@ -149,6 +145,15 @@ ...@@ -149,6 +145,15 @@
> >
编辑 编辑
</el-button> </el-button>
<el-button
v-if="showBtn(scope.row, 21)"
type="primary"
size="small"
class="btn"
@click="applyCancel(scope.row)"
>
申请取消/退款
</el-button>
<el-button <el-button
v-if="showBtn(scope.row, 23)" v-if="showBtn(scope.row, 23)"
type="primary" type="primary"
...@@ -285,11 +290,10 @@ ...@@ -285,11 +290,10 @@
return { return {
dtTableData: DIAGNOS_LIST_NEW, dtTableData: DIAGNOS_LIST_NEW,
showTableData: DIAGNOS_LIST_NEW, showTableData: DIAGNOS_LIST_NEW,
isFreash:true, isFreash: true,
}; };
}, },
watch: { watch: {},
},
mounted() { mounted() {
this.showTableData = this.saveTableData; this.showTableData = this.saveTableData;
}, },
...@@ -344,6 +348,10 @@ ...@@ -344,6 +348,10 @@
witeGo(row) { witeGo(row) {
this.$emit('witeGo', row); this.$emit('witeGo', row);
}, },
// 申请取消
applyCancel(row) {
this.$emit('applyCancel', row);
},
// 设为待匹配医生 // 设为待匹配医生
waitMatchDot(row) { waitMatchDot(row) {
this.$emit('waitMatchDot', row); this.$emit('waitMatchDot', row);
...@@ -399,7 +407,7 @@ ...@@ -399,7 +407,7 @@
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.btn { .btn {
margin-top: 5px; margin-top: 5px;
} }
</style> </style>
...@@ -62,6 +62,12 @@ const workbench = (r) => ...@@ -62,6 +62,12 @@ const workbench = (r) =>
() => r(require('@/views/IM/diagnosis-admin/workbench.vue')), () => r(require('@/views/IM/diagnosis-admin/workbench.vue')),
'workbench' 'workbench'
); );
const serviceSchedule = (r) =>
require.ensure(
[],
() => r(require('@/views/IM/diagnosis-admin/serviceSchedule.vue')),
'serviceSchedule'
);
const administrators = (r) => const administrators = (r) =>
require.ensure( require.ensure(
[], [],
...@@ -124,6 +130,10 @@ const routerConfig = [ ...@@ -124,6 +130,10 @@ const routerConfig = [
path: '/workbench', path: '/workbench',
component: workbench, component: workbench,
}, },
{
path: '/serviceSchedule',
component: serviceSchedule,
},
{ {
path: '/administrators', path: '/administrators',
component: administrators, component: administrators,
......
...@@ -21,6 +21,7 @@ const main = { ...@@ -21,6 +21,7 @@ const main = {
isSuper: false, isSuper: false,
userID: '', userID: '',
}, },
currentTabStatus: '',
}, },
mutations: { mutations: {
updateCurrentDiagList(state, obj) { updateCurrentDiagList(state, obj) {
...@@ -84,9 +85,11 @@ const main = { ...@@ -84,9 +85,11 @@ const main = {
state.noticeList = obj; state.noticeList = obj;
}, },
updateIsSuperAdmin(state, obj) { updateIsSuperAdmin(state, obj) {
console.log('obj----11111-----', obj);
state.isSuperAdmin = obj; state.isSuperAdmin = obj;
}, },
updateCurrentTabStatus(state, obj) {
state.currentTabStatus = obj;
},
}, },
actions: { actions: {
gotoInquiry({ commit }, current) { gotoInquiry({ commit }, current) {
......
...@@ -27,11 +27,31 @@ const socket = { ...@@ -27,11 +27,31 @@ const socket = {
}); });
socketClient.on('diagnose_push_event', (socket) => { socketClient.on('diagnose_push_event', (socket) => {
const { list, allSize, countRespList } = socket; const { list, allSize, countRespList } = socket;
console.log('-rootState', rootState, socket);
const { currentTabStatus } = rootState.main;
context.commit('main/updateCurrentCalList', countRespList, { context.commit('main/updateCurrentCalList', countRespList, {
root: true, root: true,
}); });
context.commit('main/updateCurrentDiagList', list, { root: true });
context.commit('main/updateAllSize', allSize, { root: true }); context.commit('main/updateAllSize', allSize, { root: true });
if (list) {
const l = list[0] || [];
if (currentTabStatus == 99) {
context.commit('main/updateCurrentDiagList', list, { root: true });
} else {
if (currentTabStatus == l.returnStatus) {
context.commit('main/updateCurrentDiagList', list, {
root: true,
});
}
if (l.length == 0) {
context.commit('main/updateCurrentDiagList', list, {
root: true,
});
}
}
} else {
context.commit('main/updateCurrentDiagList', [], { root: true });
}
}); });
socketClient.on('diagnose_call_push_event', (socket) => { socketClient.on('diagnose_call_push_event', (socket) => {
const l = window._VM.$store.state.main.noticeList; const l = window._VM.$store.state.main.noticeList;
......
...@@ -9,11 +9,21 @@ export const DIAGNOS_LIST_NEW = [ ...@@ -9,11 +9,21 @@ export const DIAGNOS_LIST_NEW = [
label: '订单ID', label: '订单ID',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'price',
label: '订单金额',
showtooltip: false,
},
{
prop: 'diagnoseTypeStr', prop: 'diagnoseTypeStr',
label: '预约类型', label: '预约类型',
showtooltip: false, showtooltip: false,
with:'200' with: '200',
},
{
prop: 'refundRemark',
label: '外呼状态',
showtooltip: false,
}, },
{ {
prop: 'statusStr', prop: 'statusStr',
...@@ -92,6 +102,11 @@ export const DIAGNOS_LIST_NEW = [ ...@@ -92,6 +102,11 @@ export const DIAGNOS_LIST_NEW = [
label: '站外医生姓名', label: '站外医生姓名',
showtooltip: false, showtooltip: false,
}, },
{
prop: 'doctorMobile',
label: '接诊电话',
showtooltip: false,
},
{ {
prop: 'receptionBeginTime', prop: 'receptionBeginTime',
label: '接诊医生意向时间', label: '接诊医生意向时间',
...@@ -152,7 +167,7 @@ export const DIAGNOS_LIST_NEW = [ ...@@ -152,7 +167,7 @@ export const DIAGNOS_LIST_NEW = [
prop: 'receptionOperatorName', prop: 'receptionOperatorName',
label: '接诊运营', label: '接诊运营',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'diagnoseAdvice', prop: 'diagnoseAdvice',
label: '诊断建议', label: '诊断建议',
...@@ -217,5 +232,5 @@ export const DIAGNOS_LIST_NEW = [ ...@@ -217,5 +232,5 @@ export const DIAGNOS_LIST_NEW = [
prop: 'remark', prop: 'remark',
label: '跟进备注', label: '跟进备注',
showtooltip: true, showtooltip: true,
} },
]; ];
// serviceSchedule-table
export const SERVICESCHEDUle_TABLE = [
{
prop: 'doctorId',
label: '医生ID',
showtooltip: false,
},
{
prop: 'doctorName',
label: '医生姓名',
showtooltip: false,
},
{
prop: 'hospital',
label: '所属机构',
showtooltip: false,
},
{
prop: 'departmentName',
label: '科室',
showtooltip: false,
},
{
prop: 'level',
label: '匹配优先级',
showtooltip: false,
},
{
prop: 'workStatus',
label: '排班状态',
showtooltip: false,
},
{
prop: 'modifiedTime',
label: '修改时间',
showtooltip: false,
},
{
prop: 'mobilePhone',
label: '联系电话',
showtooltip: false,
}
// {
// prop: 'switchStatus',
// label: '接单开关',
// showtooltip: false,
// },
];
...@@ -4,619 +4,652 @@ ...@@ -4,619 +4,652 @@
*/ */
// 预约类型list // 预约类型list
export const TYPE_LIST = [{ export const TYPE_LIST = [
label: '全部', {
value: '' label: '全部',
}, value: '',
{ },
label: '语音问诊', {
value: 1 label: '语音问诊',
}, value: 1,
{ },
label: '视频问诊', {
value: 2 label: '视频问诊',
}, value: 2,
{ },
label: '图文问诊', {
value: 3 label: '图文问诊',
} value: 3,
},
]; ];
// 支付方式 // 支付方式
export const PAY_LIST = [{ export const PAY_LIST = [
label: '代付', {
value: 1 label: '代付',
}, value: 1,
{ },
label: '扫码支付', {
value: 2 label: '扫码支付',
}, value: 2,
{ },
label: '分享支付', {
value: 3 label: '分享支付',
} value: 3,
},
]; ];
// 订单来源 // 订单来源
export const SOURCE_LIST = [{ export const SOURCE_LIST = [
label: '全部', {
value: '' label: '全部',
}, value: '',
{ },
label: '铁军反馈', {
value: 1 label: '铁军反馈',
}, value: 1,
{ },
label: '主动联系', {
value: 2 label: '主动联系',
}, value: 2,
{ },
label: '问卷收集', {
value: 3 label: '问卷收集',
}, value: 3,
{ },
label: '微信群反馈', {
value: 4 label: '微信群反馈',
}, value: 4,
{ },
label: '话题讨论与回复', {
value: 5 label: '话题讨论与回复',
} value: 5,
},
];
// 订单价格
export const ORDER_PRICE = [
{
label: '全部',
value: null,
},
{
label: '0元订单',
value: 0,
},
{
label: '付费订单',
value: 9999,
},
]; ];
// 订单状态 // 订单状态
export const STATUS_LIST = [{ export const STATUS_LIST = [
label: '初始状态(未支付)', {
value: 1 label: '初始状态(未支付)',
}, value: 1,
{ },
label: '待问诊(支付成功待完善)', {
value: 2 label: '待问诊(支付成功待完善)',
}, value: 2,
{ },
label: '问诊中(已完善)', {
value: 3 label: '问诊中(已完善)',
}, value: 3,
{ },
label: '已问诊', {
value: 4 label: '已问诊',
}, value: 4,
{ },
label: '已取消', {
value: 5 label: '已取消',
}, value: 5,
{ },
label: '已结算', {
value: 6 label: '已结算',
}, value: 6,
{ },
label: '已匹配', {
value: 21 label: '已匹配',
}, value: 21,
{ },
label: '待分诊', {
value: 22 label: '待分诊',
}, value: 22,
{ },
label: '待匹配医生', {
value: 23 label: '待匹配医生',
}, value: 23,
{ },
label: '待协调医生', {
value: 24 label: '待协调医生',
}, value: 24,
{ },
label: '待确认时间', {
value: 25 label: '待确认时间',
}, value: 25,
{ },
label: '待问诊', {
value: 26 label: '待问诊',
} value: 26,
},
]; ];
// 证件类型 // 证件类型
export const CAR_LIST = [{ export const CAR_LIST = [
label: '居民身份证', {
value: 1 label: '居民身份证',
} value: 1,
// { },
// label: '护照', // {
// value: 2 // label: '护照',
// }, // value: 2
// { // },
// label: '港澳通行证', // {
// value: 3 // label: '港澳通行证',
// } // value: 3
// }
]; ];
// 性别 // 性别
export const SEX_LIST = [{ export const SEX_LIST = [
label: '男', {
value: 1 label: '男',
}, value: 1,
{ },
label: '女', {
value: 2 label: '女',
} value: 2,
},
]; ];
// 与患者关系 // 与患者关系
export const RELATION_LIST = [{ export const RELATION_LIST = [
label: '自己', {
value: 1 label: '自己',
}, value: 1,
{ },
label: '患者', {
value: 2 label: '患者',
}, value: 2,
{ },
label: '家属', {
value: 3 label: '家属',
}, value: 3,
{ },
label: '朋友', {
value: 4 label: '朋友',
} value: 4,
},
]; ];
// 医生来源 // 医生来源
export const D_S_LIST = [{ export const D_S_LIST = [
label: '全部', {
value: '' label: '全部',
}, value: '',
{ },
label: '京东', {
value: 1 label: '京东',
}, value: 1,
{ },
label: '同事推荐', {
value: 2 label: '同事推荐',
}, value: 2,
{ },
label: '云鹊医平台', {
value: 3 label: '云鹊医平台',
} value: 3,
},
]; ];
// 是否跟进 // 是否跟进
export const IS_FLLOW = [{ export const IS_FLLOW = [
label: '全部', {
value: '' label: '全部',
}, value: '',
{ },
label: '是', {
value: 1 label: '是',
}, value: 1,
{ },
label: '否', {
value: 2 label: '否',
}, value: 2,
},
]; ];
// 创建订单方式 // 创建订单方式
export const CREATE_TYPE = [{ export const CREATE_TYPE = [
label: '全部', {
value: '' label: '全部',
}, value: '',
{ },
label: '系统创建', {
value: 1 label: '系统创建',
}, value: 1,
{ },
label: '手动创建', {
value: 2 label: '手动创建',
}, value: 2,
},
]; ];
// 是否匹配 // 是否匹配
export const OPERATE_LIST = [{ export const OPERATE_LIST = [
label: '全部', {
value: '' label: '全部',
}, value: '',
{ },
label: '已分配', {
value: 1 label: '已分配',
}, value: 1,
{ },
label: '未分配', {
value: 2 label: '未分配',
}, value: 2,
},
]; ];
// 跟进状态 // 跟进状态
export const FOLLW_LIST = [{ export const FOLLW_LIST = [
label: '待跟进', {
value: 1 label: '待跟进',
}, value: 1,
{ },
label: '跟进中(协调资源)', {
value: 2 label: '跟进中(协调资源)',
}, value: 2,
{ },
label: '已完成(跟进结束)', {
value: 3 label: '已完成(跟进结束)',
}, value: 3,
{ },
label: '长期跟进', {
value: 4 label: '长期跟进',
}, value: 4,
},
]; ];
// 0 只填写了患者信息(急速问诊才会有的状态),1 初始状态(未支付),2待问诊(支付成功待完善)3 问诊中(已完善),4、已问诊 5、取消, 6 已结算 // 0 只填写了患者信息(急速问诊才会有的状态),1 初始状态(未支付),2待问诊(支付成功待完善)3 问诊中(已完善),4、已问诊 5、取消, 6 已结算
// 21 已匹配 22 待分诊 23 待匹配接诊医生 24 待协调医生 25 待设置问诊时间 26 待问诊 // 21 已匹配 22 待分诊 23 待匹配接诊医生 24 待协调医生 25 待设置问诊时间 26 待问诊
// 预约单列表 // 预约单列表
export const ALL_TAB_LIST = [{ export const ALL_TAB_LIST = [
label: '全部', {
active: '99' label: '全部',
}, active: '99',
{ },
label: '待匹配', {
active: '2' label: '待匹配',
}, active: '2',
{ },
label: '已匹配', {
active: '102' label: '已匹配',
}, active: '102',
{ },
label: '稍后跟进', {
active: '101' label: '稍后跟进',
}, active: '101',
{ },
label: '待分诊', {
active: '22' label: '待分诊',
}, active: '22',
{ },
label: '待匹配医生', {
active: '23' label: '待匹配医生',
}, active: '23',
{ },
label: '待协调医生', {
active: '24' label: '待协调医生',
}, active: '24',
{ },
label: '待确认时间', {
active: '25' label: '待确认时间',
}, active: '25',
{ },
label: '待问诊', {
active: '26' label: '待问诊',
}, active: '26',
{ },
label: '问诊中', {
active: '3' label: '问诊中',
}, active: '3',
{ },
label: '已完成', {
active: '4' label: '已完成',
}, active: '4',
{ },
label: '已结算', {
active: '6' label: '已结算',
}, active: '6',
{ },
label: '已取消', {
active: '5' label: '已取消',
} active: '5',
},
]; ];
// 运营预约单列表 // 运营预约单列表
export const RUN_TAB_LIST = [{ export const RUN_TAB_LIST = [
label: '全部', {
active: '99' label: '全部',
}, active: '99',
// { },
// label: '待匹配', // {
// active: '2' // label: '待匹配',
// }, // active: '2'
// { // },
// label: '已匹配', // {
// active: '21' // label: '已匹配',
// }, // active: '21'
// { // },
// label: '待确认时间', // {
// active: '25' // label: '待确认时间',
// }, // active: '25'
{ // },
label: '待问诊', {
active: '26' label: '待问诊',
}, active: '26',
{ },
label: '问诊中', {
active: '3' label: '问诊中',
}, active: '3',
{ },
label: '已完成', {
active: '4' label: '已完成',
}, active: '4',
{ },
label: '已结算', {
active: '6' label: '已结算',
}, active: '6',
{ },
label: '已取消', {
active: '5' label: '已取消',
} active: '5',
},
]; ];
// 分诊列表 // 分诊列表
export const TRIAGE_TAB_LIST = [{ export const TRIAGE_TAB_LIST = [
label: '全部', {
active: '99' label: '全部',
}, active: '99',
// { },
// label: '待分诊', // {
// active: '22' // label: '待分诊',
// }, // active: '22'
{ // },
label: '待匹配', {
active: '2' label: '待匹配',
}, active: '2',
},
]; ];
// 接诊列表 // 接诊列表
export const RECEPTION_TAB_LIST = [{ export const RECEPTION_TAB_LIST = [
label: '全部', {
active: '99' label: '全部',
}, active: '99',
{ },
label: '待匹配医生', {
active: '23' label: '待匹配医生',
}, active: '23',
{ },
label: '待协调医生', {
active: '24' label: '待协调医生',
}, active: '24',
{ },
label: '待确认时间', {
active: '25' label: '待确认时间',
}, active: '25',
},
]; ];
// 外呼列表 // 外呼列表
export const MATCH_TAB_LIST = [{ export const MATCH_TAB_LIST = [
label: '全部', {
active: '99' label: '全部',
}, active: '99',
{ },
label: '已匹配', {
active: '102' label: '已匹配',
}, active: '102',
{ },
label: '稍后跟进', {
active: '101' label: '稍后跟进',
} active: '101',
},
]; ];
export const TABLE_COLUMN = [{ export const TABLE_COLUMN = [
prop: 'diagnoseLogId', {
label: 'ID', prop: 'diagnoseLogId',
showtooltip: false, label: 'ID',
}, showtooltip: false,
{ },
prop: 'orderNo', {
label: '订单ID', prop: 'orderNo',
showtooltip: false, label: '订单ID',
}, showtooltip: false,
{ },
prop: 'diagnoseTypeStr', {
label: '预约类型', prop: 'diagnoseTypeStr',
showtooltip: false, label: '预约类型',
}, showtooltip: false,
{ },
prop: 'statusStr', {
label: '状态', prop: 'statusStr',
showtooltip: false, label: '状态',
}, showtooltip: false,
{ },
prop: 'statusRemark', {
label: '状态备注', prop: 'statusRemark',
showtooltip: false, label: '状态备注',
}, showtooltip: false,
},
{ {
prop: 'toFollowReason', prop: 'toFollowReason',
label: '稍后跟进备注', label: '稍后跟进备注',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'appointBeginTime', prop: 'appointBeginTime',
label: '预约时间', label: '预约时间',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'operateUserId', prop: 'operateUserId',
label: '运营人员ID', label: '运营人员ID',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'operateUserName', prop: 'operateUserName',
label: '运营人员', label: '运营人员',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'userName', prop: 'userName',
label: '助诊医生', label: '助诊医生',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'userMobile', prop: 'userMobile',
label: '助诊电话', label: '助诊电话',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'assistantBeginTime', prop: 'assistantBeginTime',
label: '助诊医生意向时间', label: '助诊医生意向时间',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'assistantRemark', prop: 'assistantRemark',
label: '助诊备注', label: '助诊备注',
showtooltip: true, showtooltip: true,
}, },
{ {
prop: 'department', prop: 'department',
label: '预约科室', label: '预约科室',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'triageDepartment', prop: 'triageDepartment',
label: '分诊科室', label: '分诊科室',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'triageRemark', prop: 'triageRemark',
label: '分诊备注', label: '分诊备注',
showtooltip: true, showtooltip: true,
}, },
{ {
prop: 'doctorName', prop: 'doctorName',
label: '接诊医生', label: '接诊医生',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'doctorMobile', prop: 'doctorMobile',
label: '接诊电话', label: '接诊电话',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'outsideDoctor', prop: 'outsideDoctor',
label: '站外医生姓名', label: '站外医生姓名',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'receptionBeginTime', prop: 'receptionBeginTime',
label: '接诊医生意向时间', label: '接诊医生意向时间',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'patientName', prop: 'patientName',
label: '患者姓名', label: '患者姓名',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'age', prop: 'age',
label: '患者年龄', label: '患者年龄',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'patientMobilePhone', prop: 'patientMobilePhone',
label: '患者电话', label: '患者电话',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'illnessDetail', prop: 'illnessDetail',
label: '病情描述', label: '病情描述',
showtooltip: true, showtooltip: true,
}, },
{ {
prop: 'idCard', prop: 'idCard',
label: '证件号', label: '证件号',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'sexStr', prop: 'sexStr',
label: '性别', label: '性别',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'diagnoseStageStr', prop: 'diagnoseStageStr',
label: '初/复诊', label: '初/复诊',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'determineFlagStr', prop: 'determineFlagStr',
label: '是否确诊', label: '是否确诊',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'diagnoseDisease', prop: 'diagnoseDisease',
label: '确诊疾病', label: '确诊疾病',
showtooltip: true, showtooltip: true,
}, },
{ {
prop: 'triageOperatorName', prop: 'triageOperatorName',
label: '分诊运营', label: '分诊运营',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'receptionOperatorName', prop: 'receptionOperatorName',
label: '接诊运营', label: '接诊运营',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'diagnoseAdvice', prop: 'diagnoseAdvice',
label: '诊断建议', label: '诊断建议',
showtooltip: true, showtooltip: true,
}, },
{ {
prop: 'crrsName', prop: 'crrsName',
label: '招募人', label: '招募人',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'diagnoseChannelStr', prop: 'diagnoseChannelStr',
label: '问诊方式', label: '问诊方式',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'doneTime', prop: 'doneTime',
label: '完成时间', label: '完成时间',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'cancelTime', prop: 'cancelTime',
label: '退款时间', label: '退款时间',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'createdTime', prop: 'createdTime',
label: '创建时间', label: '创建时间',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'followFlagStr', prop: 'followFlagStr',
label: '是否跟进', label: '是否跟进',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'drugFollowStatusStr', prop: 'drugFollowStatusStr',
label: '药品跟进状态', label: '药品跟进状态',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'drugFollow', prop: 'drugFollow',
label: '药品跟进', label: '药品跟进',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'checkFollowStatusStr', prop: 'checkFollowStatusStr',
label: '检查跟进状态', label: '检查跟进状态',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'checkFollow', prop: 'checkFollow',
label: '检查跟进', label: '检查跟进',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'otherFollowStatusStr', prop: 'otherFollowStatusStr',
label: '其他跟进事项状态', label: '其他跟进事项状态',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'otherFollow', prop: 'otherFollow',
label: '其他跟进事项', label: '其他跟进事项',
showtooltip: false, showtooltip: false,
}, },
{ {
prop: 'remark', prop: 'remark',
label: '跟进备注', label: '跟进备注',
showtooltip: true, showtooltip: true,
}, },
]; ];
\ No newline at end of file
...@@ -68,6 +68,25 @@ ...@@ -68,6 +68,25 @@
/> />
</el-form-item> </el-form-item>
</div> </div>
<div>
<el-form-item
label="订单价格"
class="t-b"
>
<el-select
v-model="searchParam.price"
placeholder="请选择订单价格"
style="width: 220px"
>
<el-option
v-for="item of priceList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</div>
</div> </div>
<div class="form-li"> <div class="form-li">
<div> <div>
...@@ -119,6 +138,26 @@ ...@@ -119,6 +138,26 @@
/> />
</el-form-item> </el-form-item>
</div> </div>
<div>
<el-form-item
label="订单状态"
class="t-b"
>
<el-select
v-model="searchParam.refundRemark"
placeholder="请选择订单状态"
clearable
style="width: 220px"
>
<el-option
v-for="(item, index) of noteList"
:key="index"
:label="item"
:value="item"
/>
</el-select>
</el-form-item>
</div>
</div> </div>
<div class="form-li"> <div class="form-li">
<div> <div>
...@@ -206,7 +245,7 @@ ...@@ -206,7 +245,7 @@
label="基层意向时间" label="基层意向时间"
class="t-b" class="t-b"
> >
<el-date-picker <!-- <el-date-picker
v-model="assistantTime" v-model="assistantTime"
type="daterange" type="daterange"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
...@@ -215,6 +254,15 @@ ...@@ -215,6 +254,15 @@
end-placeholder="结束日期" end-placeholder="结束日期"
style="width: 220px" style="width: 220px"
:picker-options="pickerOptions1" :picker-options="pickerOptions1"
/> -->
<el-date-picker
v-model="assistantTime"
type="daterange"
value-format="yyyy-MM-dd"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 220px"
/> />
</el-form-item> </el-form-item>
</div> </div>
...@@ -310,6 +358,7 @@ ...@@ -310,6 +358,7 @@
@cancelRefund="cancelRefund" @cancelRefund="cancelRefund"
@witeGo="witeGo" @witeGo="witeGo"
@waitMatchDot="waitMatchDot" @waitMatchDot="waitMatchDot"
@applyCancel="applyCancel"
@sendMessage="sendMessage" @sendMessage="sendMessage"
@joinDiagnose="joinDiagnose" @joinDiagnose="joinDiagnose"
@matchRun="matchRun" @matchRun="matchRun"
...@@ -371,7 +420,9 @@ ...@@ -371,7 +420,9 @@
:diagnose-log-id="diagnoseLogId" :diagnose-log-id="diagnoseLogId"
:diagnose-type="diagnoseType" :diagnose-type="diagnoseType"
:doctor-id="doctorId" :doctor-id="doctorId"
:range-time-data="rangeTimeData"
@search="search" @search="search"
@changeStartTime="changeStartTime"
/> />
<appointment-time <appointment-time
:appointment-time-visible.sync="appointmentTimeVisible" :appointment-time-visible.sync="appointmentTimeVisible"
...@@ -392,6 +443,13 @@ ...@@ -392,6 +443,13 @@
:biz-type="bizType" :biz-type="bizType"
@search="search" @search="search"
/> />
<!-- 申请取消/退款 -->
<applyCancelComponent
:dialog-form-visible.sync="dialogFormVisible"
:diagnose-log-id="diagnoseLogId"
:note-list="noteList"
@search="search"
/>
</div> </div>
<a <a
ref="target" ref="target"
...@@ -404,6 +462,7 @@ ...@@ -404,6 +462,7 @@
<script> <script>
let vm = null; let vm = null;
import { updateDiagnosis } from '../../../utils/diagnosis'; import { updateDiagnosis } from '../../../utils/diagnosis';
import { outbounNote } from '../../../api/diagnosis';
import { base64decode } from '../../../utils/utils.js'; import { base64decode } from '../../../utils/utils.js';
import { DIAGNOS_LIST_NEW } from '@/utils/GeneralData/diagnosis-list-new'; import { DIAGNOS_LIST_NEW } from '@/utils/GeneralData/diagnosis-list-new';
import { import {
...@@ -415,6 +474,7 @@ ...@@ -415,6 +474,7 @@
RECEPTION_TAB_LIST, RECEPTION_TAB_LIST,
RUN_TAB_LIST, RUN_TAB_LIST,
MATCH_TAB_LIST, MATCH_TAB_LIST,
ORDER_PRICE,
} from '@/utils/constants'; } from '@/utils/constants';
import { import {
getCountQuery, getCountQuery,
...@@ -434,6 +494,7 @@ ...@@ -434,6 +494,7 @@
import DiagnosisTime from '../../../components/common/diagnosis-time'; import DiagnosisTime from '../../../components/common/diagnosis-time';
import RematchingDoctor from '../../../components/common/rematching-doctor'; import RematchingDoctor from '../../../components/common/rematching-doctor';
import TableSetComponent from '@/components/list/table-set-component'; import TableSetComponent from '@/components/list/table-set-component';
import applyCancelComponent from '../../../components/common/applyCancel';
export default { export default {
components: { components: {
TableSetComponent, TableSetComponent,
...@@ -447,6 +508,7 @@ ...@@ -447,6 +508,7 @@
AppointmentTime, AppointmentTime,
DiagnosisTime, DiagnosisTime,
RematchingDoctor, RematchingDoctor,
applyCancelComponent,
}, },
data() { data() {
return { return {
...@@ -485,11 +547,15 @@ ...@@ -485,11 +547,15 @@
pageNo: 1, pageNo: 1,
menuType: 1, // 菜单类型:1、all 2、运营 3、待分诊 4、待接诊 5、外呼 menuType: 1, // 菜单类型:1、all 2、运营 3、待分诊 4、待接诊 5、外呼
status: '', status: '',
price: '',
refundRemark: '',
}, },
noteList: [],
alltabslist: [], alltabslist: [],
tyleList: TYPE_LIST, tyleList: TYPE_LIST,
fllowList: IS_FLLOW, fllowList: IS_FLLOW,
sourceList: SOURCE_LIST, sourceList: SOURCE_LIST,
priceList: ORDER_PRICE,
tabpaneList: [], tabpaneList: [],
rematchingOptions: [], // 备注信息 rematchingOptions: [], // 备注信息
Raw_tabpaneList: [], Raw_tabpaneList: [],
...@@ -507,11 +573,13 @@ ...@@ -507,11 +573,13 @@
coordinatingVisible: false, coordinatingVisible: false,
diagnosisDoctorVisible: false, diagnosisDoctorVisible: false,
diagnoseFlag: false, diagnoseFlag: false,
rangeTimeData: '',
appointmentTimeVisible: false, appointmentTimeVisible: false,
diagnosisTimeVisible: false, diagnosisTimeVisible: false,
rematchingVisible: false, rematchingVisible: false,
multipleSelection: [], multipleSelection: [],
batchFlag: false, batchFlag: false,
dialogFormVisible: false,
bizType: 0, bizType: 0,
diagnoseType: 0, diagnoseType: 0,
doctorId: 0, doctorId: 0,
...@@ -551,11 +619,18 @@ ...@@ -551,11 +619,18 @@
}, },
mounted() { mounted() {
this.setTableHeight(); this.setTableHeight();
this.getOutboundNote();
}, },
destroyed() { destroyed() {
clearInterval(this.timer); clearInterval(this.timer);
}, },
methods: { methods: {
changeStartTime(time) {
this.rangeTimeData = time
? time.time ? new Date(time.time).format('yyyy-MM-dd hh:mm:ss') : ''
: '';
console.log(this.rangeTimeData, 'this.rangeTimeData');
},
getTableData(val) { getTableData(val) {
this.saveTableData = val || []; this.saveTableData = val || [];
}, },
...@@ -606,7 +681,13 @@ ...@@ -606,7 +681,13 @@
this.contrastData(); this.contrastData();
}, },
getOutboundNote() {
outbounNote().then((res) => {
if (res.code == '000000') {
this.noteList = res.data || [];
}
});
},
// 不同也main切换不同的tab // 不同也main切换不同的tab
setTable(data) { setTable(data) {
let tabs = ALL_TAB_LIST; let tabs = ALL_TAB_LIST;
...@@ -805,7 +886,12 @@ ...@@ -805,7 +886,12 @@
diagnoseList(this.searchParam).then((res) => { diagnoseList(this.searchParam).then((res) => {
this.loading = false; this.loading = false;
if (res.code == '000000') { if (res.code == '000000') {
this.tableData = res.data.list; this.tableData = (res.data.list || []).map((item) => {
return {
...item,
price: item.price > 0 ? item.price / 100 : 0,
};
});
this.totalRows = res.data.allSize; this.totalRows = res.data.allSize;
} }
}); });
...@@ -837,6 +923,8 @@ ...@@ -837,6 +923,8 @@
assistantVal: '', assistantVal: '',
receptionVal: '', receptionVal: '',
triageDepartmentId: '', triageDepartmentId: '',
price: '',
refundRemark: '',
diagnoseType: '', // 预约问诊类型:1、音频 2、视频 3、图文 diagnoseType: '', // 预约问诊类型:1、音频 2、视频 3、图文
createdTimeBegin: '', createdTimeBegin: '',
createdTimeEnd: '', createdTimeEnd: '',
...@@ -906,6 +994,12 @@ ...@@ -906,6 +994,12 @@
this.toFollowReason = row.toFollowReason; this.toFollowReason = row.toFollowReason;
this.diagnoseLogId = row.diagnoseLogId; this.diagnoseLogId = row.diagnoseLogId;
}, },
// 申请取消
applyCancel(row) {
this.diagnoseLogId = row.diagnoseLogId;
this.dialogFormVisible = true;
console.log(row);
},
// 设为待匹配医生 // 设为待匹配医生
waitMatchDot(row) { waitMatchDot(row) {
this.diagnoseLogId = row.diagnoseLogId; this.diagnoseLogId = row.diagnoseLogId;
...@@ -986,8 +1080,11 @@ ...@@ -986,8 +1080,11 @@
}, },
// 设为待确认时间 // 设为待确认时间
waitMatchTime(row) { waitMatchTime(row) {
console.log(row, 'row');
this.rangeTimeData = row.assistantBeginTime;
this.diagnoseFlag = true; this.diagnoseFlag = true;
this.diagnosisDoctorVisible = true; this.diagnosisDoctorVisible = true;
this.diagnoseLogId = row.diagnoseLogId; this.diagnoseLogId = row.diagnoseLogId;
this.diagnoseType = row.diagnoseType; this.diagnoseType = row.diagnoseType;
if (row.doctorId == 0) { if (row.doctorId == 0) {
...@@ -995,6 +1092,10 @@ ...@@ -995,6 +1092,10 @@
} else { } else {
this.doctorId = row.doctorId; this.doctorId = row.doctorId;
} }
// this.$nextTick(() => {
// this.diagnoseFlag = true;
// this.diagnosisDoctorVisible = true;
// });
}, },
// 重新匹配医生 // 重新匹配医生
reMatchDot(row, type) { reMatchDot(row, type) {
......
<template>
<div>新增排班</div>
</template>
<script>
export default {};
</script>
<style></style>
<template>
<div class="serviceScheduleNew">
<div
v-if="ScheduleListShow"
class="serviceSchedule"
>
<div class="header">
<el-breadcrumb separator="/">
<el-breadcrumb-item>首页</el-breadcrumb-item>
<el-breadcrumb-item>服务排班表</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="serviceSchedule-container">
<div class="serviceSchedule-containerInfo">
<el-cascader
v-model="innerform"
class="serviceSchedule-cascader"
filterable
clearable
:options="interfaceOptions"
:props="props"
placeholder="选择科室"
:show-all-levels="false"
@expand-change="handleItemChange"
@change="selectApi($event, innerform)"
/>
<el-select
v-model="searchParam.createType"
class="select-first"
placeholder="选择优先级"
clearable
>
<el-option
v-for="(item,index) of createList"
:key="index"
:label="item"
:value="item"
/>
</el-select>
<el-select
v-model="searchParam.serviceOpen"
class="select-first"
placeholder="选择开通状态"
clearable
>
<el-option
v-for="item of serviceOpenList"
:key="item.id"
:label="item.value"
:value="item.id"
/>
</el-select>
<el-select
v-model="searchParam.ScheduleStatus"
class="serviceSchedule-status"
placeholder="选择排班状态"
clearable="true"
>
<el-option
v-for="item of ScheduleStatusList"
:key="item.id"
:label="item.value"
:value="item.id"
/>
</el-select>
<el-date-picker
v-model="searchParam.createRangeTime"
class="serviceSchedule-time"
type="daterange"
value-format="yyyy-MM-dd"
range-separator="→"
size="large"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions"
/>
<el-input
v-model="searchParam.idNamePhone"
clearable
class="serviceSchedule-idNamePhone"
placeholder="输入问诊单号/医生姓名/手机号"
style="width: 280px"
/>
<el-button
type="primary"
class="submit-btn"
@click="search"
>
查询
</el-button>
<div class="synchro-btn-icon">
<el-button
class="synchro-btn"
@click="searchInStep"
>
同步信息
</el-button>
<img
class="el-icon-s-question"
src="../../../assets/image/question.png"
alt
>
</div>
</div>
<div class="serviceSchedule-table">
<TableServiceSchedule
:table-data="tableData"
:page-no="searchParam.pageNo"
:page-size="searchParam.pageSize"
:total-rows="searchParam.totalRows"
:loading="loading"
:create-list="newCreateList"
@sortfunc="sortfunc"
@getServiceOpen="getServiceOpen"
@getWorkStatus="getWorkStatus"
@changeSwitch="changeSwitch"
@handleSizeChange="handleSizeChange"
@handleCurrentChange="handleCurrentChange"
@addSchedule="addSchedule"
/>
</div>
</div>
</div>
<div
v-else
class="newScheduling"
>
<div class="header">
<el-breadcrumb separator="/">
<el-breadcrumb-item>首页</el-breadcrumb-item>
<el-breadcrumb-item>服务排班表</el-breadcrumb-item>
<el-breadcrumb-item>新增排班</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="serviceSchedule-container">
<div class="serviceSchedule-containerInfo">
<NewScheduling />
</div>
</div>
</div>
</div>
</template>
<script>
import { getFirstLevelLable, childLabelList, workQuery, switchOpen, workInStep, getLevel} from '@/api/serviceSchedule';
import { SERVICESCHEDUle_TABLE } from '@/utils/GeneralData/serviceSchedule-table';
import TableServiceSchedule from '@/components/list/table-serviceSchedule';
import NewScheduling from '../diagnosis-admin/modal/newScheduling.vue';
export default {
components: {
NewScheduling,
TableServiceSchedule,
},
data() {
return {
innerform: [],
props: {
// props定义的值根据接口返回的数据定的
label: 'name',
value: 'id',
children: 'interface',
},
searchParam: {
departmentId: '',
createType: '',
idNamePhone: '',
ScheduleStatus:'',
startRangeTime:'',
endRangeTime:'',
serviceOpen:'',
pageSize: 15,
pageNo: 1,
sort:'',
createRangeTime:[]
},
ScheduleStatusList:[
{
value:'已排班',
id:1
},
{
value:'未排班',
id:2
},
],
serviceOpenList:[
{
value:'开通',
id:1
},
{
value:'未开通',
id:2
},
],
createList:[],
interfaceOptions: [],
createRangeTime: [],
pickerOptions: {
disabledDate: (time) => {
return time.getTime() > new Date().getTime(); // 减去一天的时间代表可以选择同一天;
},
},
ScheduleListShow: true,
showTableData:SERVICESCHEDUle_TABLE,
tableData:[],
loading: false,
newCreateList:[],
// newCreateObj:{}
};
},
watch: {},
created() {
this.getFirstLevelLable();
this.getLevel();
this.search();
},
methods: {
// 通过监听expand-change事件(当展开节点发生变化时触发)获取第二层数据,组装interfaceOptions数据
handleItemChange(val) {
const value = val[0];
childLabelList({ parentId: value, publish: 1 }).then((res) => {
console.log(res);
if (res.code === '000000') {
const interfaceArr = res.data || [];
this.interfaceOptions.filter((item) => {
if (item.id === value) {
this.$set(item, 'interface', interfaceArr);
}
return;
});
}
});
},
getFirstLevelLable() {
getFirstLevelLable().then((res) => {
if (res.code === '000000') {
console.log(res);
this.interfaceOptions = res.data || [];
this.interfaceOptions.forEach((item, index) => {
// 添加属性
this.$set(this.interfaceOptions[index], 'interface', []);
console.log(this.interface);
});
} else {
this.$message({
message: res.msg,
type: 'warning',
});
}
});
},
// 获取选择的值
selectApi(e, value) {
console.log(value, 'value');
this.searchParam.departmentId = value[1];
console.log(this.searchParam);
},
search() {
this.loading = true;
const params = {
departmentId: this.searchParam.departmentId || null,
workStatus: String(this.searchParam.ScheduleStatus) || null,
startTime: this.searchParam.createRangeTime.length > 0 ? this.searchParam.createRangeTime[0] : null,
endTime: this.searchParam.createRangeTime.length > 0 ? this.searchParam.createRangeTime[1] : null,
condition: this.searchParam.idNamePhone || null,
level: this.searchParam.createType || null,
sort:this.searchParam.sort || null,
serviceOpen: String(this.searchParam.serviceOpen) || null,
pageNo: this.searchParam.pageNo,
pageSize: this.searchParam.pageSize,
};
workQuery(params).then(res => {
this.loading = false;
if (res.code === '000000') {
this.tableData = res.data.list || [];
this.searchParam.totalRows = res.data.count;
}
});
},
getServiceOpen(value) {
console.log(value, '22222');
this.searchParam.serviceOpen = value;
console.log(this.searchParam);
},
getWorkStatus(value) {
console.log(value, '22223333');
this.searchParam.ScheduleStatus = value;
console.log(this.searchParam);
},
changeSwitch(value, val) {
console.log(value, val, '12321');
switchOpen({
id:val.id,
switchOpen:val.delivery ? '1' : '2'
}).then(res => {
if (res.code === '000000') {
console.log(res);
this.search();
}
});
},
searchInStep() {
workInStep().then(res => {
if (res.code === '000000') {
this.search();
}
});
},
handleSizeChange(value) {
this.searchParam.pageSize = value;
this.search();
},
handleCurrentChange(value) {
this.searchParam.pageNo = value;
this.search();
},
getLevel() {
getLevel().then(res => {
if (res.code === '000000') {
console.log(res, 'getLevel');
this.createList = res.data || [];
this.createList.forEach(item => {
const newCreateObj = {
value:'',
text:''
};
newCreateObj.value = item;
newCreateObj.text = item;
this.newCreateList.push(newCreateObj);
});
console.log(this.newCreateList, 'this.newCreateList');
}
});
},
sortfunc(data) {
console.log(data, 'data');
if (data.prop === '"modifiedTime"' && data.order === 'descending') {
this.searchParam.sort = '1';
} else{
this.searchParam.sort = '2';
}
this.search();
},
addSchedule(value, val) {
console.log(value, val, 'value,val');
this.ScheduleListShow = false;
}
},
};
</script>
<style lang="scss" scoped>
.serviceScheduleNew {
.serviceSchedule {
height: calc(100% - 76px);
.header {
padding: 30px;
width: 100%;
}
.serviceSchedule-container {
width: 100%;
padding: 0 14px;
.serviceSchedule-containerInfo {
position: relative;
min-width: 1200px;
background: #ffffff;
height: 73px;
border-radius: 8px;
display: flex;
align-items: center;
padding: 21px 18px 20px 18px;
.serviceSchedule-cascader {
margin-right: 15px;
}
.select-first {
margin-right: 15px;
}
.serviceSchedule-status {
margin-right: 15px;
}
.serviceSchedule-time {
width: 270px;
height: 32px;
background: #ffffff;
border-radius: 16px;
border: 1px solid rgba(0, 0, 0, 0.15);
margin-right: 15px;
}
.serviceSchedule-idNamePhone {
width: 320px;
margin-right: 15px;
}
.submit-btn {
width: 70px;
height: 32px;
background: #0d9078;
border-radius: 16px;
display: flex;
align-items: center;
}
.synchro-btn-icon{
display: flex;
align-items: center;
justify-content: center;
position: absolute;
right: 20px;
.synchro-btn{
width: 110px;
height: 32px;
border-radius: 18px;
border: 1px solid #0D9078;
display: flex;
align-items: center;
justify-content: center;
background: #FFFFFF;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #0D9078;
}
.el-icon-s-question{
margin-left:10px;
width: 16px;
height: 16px;
}
}
}
.serviceSchedule-table{
min-width: 1200px;
padding-top: 15px;
}
}
}
.newScheduling {
height: calc(100% - 76px);
.header {
padding: 30px;
width: 100%;
}
.serviceSchedule-container {
height: 100%;
width: 100%;
padding: 0 14px;
.serviceSchedule-containerInfo {
background: #ffffff;
border-radius: 8px;
height: 100%;
display: flex;
align-items: center;
padding: 21px 18px 20px 18px;
}
}
}
}
</style>
<style lang="scss">
.serviceSchedule-cascader {
.el-input {
.el-input__inner {
width: 150px;
height: 32px;
background: #ffffff;
border-radius: 16px;
border: 1px solid rgba(0, 0, 0, 0.15);
}
.el-input__suffix {
display: flex;
align-items: center;
}
}
input::-webkit-input-placeholder {
color: #89888b;
}
}
.select-first {
.el-input {
.el-input__inner {
width: 150px;
height: 32px;
background: #ffffff;
border-radius: 16px;
border: 1px solid rgba(0, 0, 0, 0.15);
}
.el-input__suffix {
display: flex;
align-items: center;
}
}
input::-webkit-input-placeholder {
color: #89888b;
}
}
.serviceSchedule-status {
.el-input {
.el-input__inner {
width: 150px;
height: 32px;
background: #ffffff;
border-radius: 16px;
border: 1px solid rgba(0, 0, 0, 0.15);
}
.el-input__suffix {
display: flex;
align-items: center;
}
}
input::-webkit-input-placeholder {
color: #89888b;
}
}
.serviceSchedule-idNamePhone {
.el-input__inner {
// width: 150px;
height: 32px;
background: #ffffff;
border-radius: 16px;
border: 1px solid rgba(0, 0, 0, 0.15);
}
.el-input__suffix {
display: flex;
align-items: center;
}
input::-webkit-input-placeholder {
color: #89888b;
}
}
.serviceSchedule-time {
.el-input__icon {
display: flex;
align-items: center;
margin-left: 10px !important;
}
.el-range-input {
width: 30% !important;
}
.el-range-separator {
width: 10%;
display: flex;
align-items: center;
}
input::-webkit-input-placeholder {
color: #89888b;
}
}
</style>
...@@ -112,34 +112,6 @@ ...@@ -112,34 +112,6 @@
pageSize: 6, pageSize: 6,
pageNo: 1, pageNo: 1,
}, },
testlistdata: [
{
appointBeginTime: '2021-07-29T05:28:57.396Z',
appointEndTime: '2021-07-29T05:28:57.396Z',
department: '内科',
departmentId: 3876,
diagnoseLogId: 38,
diagnoseType: 1,
doctorCallKfStatus: 1,
doctorCallTime: '',
doctorId: 0,
doctorMobile: '16789987665',
doctorName: '孙思邈',
doctorTrtcEntryStatus: 1,
imStatus: 0,
imTeamId: '',
returnStatus: 1,
roomId: 'string',
sort: 0,
status: 0,
userCallKfStatus: 0,
userCallTime: '',
userId: 0,
userMobile: '12343123233',
userName: '孙思邈',
userTrtcEntryStatus: 0,
},
],
}; };
}, },
computed: { computed: {
...@@ -167,7 +139,9 @@ ...@@ -167,7 +139,9 @@
returnStatus: s ? s.returnStatus : 1, returnStatus: s ? s.returnStatus : 1,
}; };
this.searchParam = p; this.searchParam = p;
this.tabPosition = s ? s.returnStatus : 1; const r = s ? s.returnStatus : 1;
this.tabPosition = r;
this.$store.commit('main/updateCurrentTabStatus', r);
this.inquirySearch('clear'); this.inquirySearch('clear');
} }
}, },
...@@ -179,6 +153,7 @@ ...@@ -179,6 +153,7 @@
const s = storejs.get('soketQuest'); const s = storejs.get('soketQuest');
const t = s ? s.returnStatus : 1; const t = s ? s.returnStatus : 1;
this.tabPosition = t; this.tabPosition = t;
this.$store.commit('main/updateCurrentTabStatus', t);
const d = s ? s.dateTime : new Date().format('yyyy-MM-dd'); const d = s ? s.dateTime : new Date().format('yyyy-MM-dd');
this.searchParam.dateTime = d; this.searchParam.dateTime = d;
const id = const id =
...@@ -191,6 +166,8 @@ ...@@ -191,6 +166,8 @@
s.returnStatus = val; s.returnStatus = val;
this.searchParam = s; this.searchParam = s;
s.pageNo = 1; s.pageNo = 1;
this.$store.commit('main/updateCurrentTabStatus', val);
this.inquirySearch('tab'); this.inquirySearch('tab');
}, },
changeDatetime(val) { changeDatetime(val) {
......
...@@ -12,7 +12,7 @@ module.exports = { ...@@ -12,7 +12,7 @@ module.exports = {
dpsLimit: 5, dpsLimit: 5,
}, },
tinypng: { tinypng: {
key: '', key: 'MNf7Lv3sWXvJMl7lBtXncb6WRLfCjcYn',
}, },
}, },
// assetsDir: 'static', // assetsDir: 'static',
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册