eru mikilvæg hluti af því að tryggja öryggi...">
,需要通过父级DOM结构来判断
*/
var trackActionPhone = function (node) {
var nodeInnerText = node.innerText || '';
if (!limitRegLength(nodeInnerText)) return;
var nodeText = trimText(nodeInnerText);
if (nodeText.length < 5 || nodeText.length > 20) return false;
var type =
arguments.length > 1 && arguments[1] !== undefined
? arguments[1]
: 'click';
var str = trimText(node.href || node.innerHTML || '');
if (phoneReg.test(str) && numUseReg.test(str)) {
_paq.push(['trackEvent', type, 'phone', nodeText]);
return true;
}
/** 排查父级嵌套非标签场景,并且对dom的正则校验做一个性能兜底,通过控制innerText的长度,来确保正则的性能 */
var fatherText = trimText(node.parentNode.innerText || '');
if (fatherText.length < 5 || fatherText.length > 20) return false;
var fatherDom = trimText(node.parentNode.innerHTML || '');
if (phoneReg.test(fatherDom) && numUseReg.test(fatherDom)) {
_paq.push(['trackEvent', type, 'phone', nodeText]);
return true;
}
return false;
};
window.addEventListener('click', function (e) {
var node = e.target;
/** 社媒点击 */
var appName = '';
var getAppAriaLabel =
node.ariaLabel || node.parentNode.ariaLabel || '';
if (mediaList.includes(getAppAriaLabel.toLowerCase())) {
appName = getAppAriaLabel;
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'a'
) {
appName = getMediaName(node.href) || getMediaName(node.alt);
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'img'
) {
appName = getMediaName(node.alt) || getMediaName(node.src);
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'i'
) {
appName = getMediaName(node.className);
}
if (appName) {
_paq.push(['trackEvent', 'click', 'contactApp', appName]);
return;
}
/** 联系方式点击 */
if (trackActionPhone(node, 'click')) return;
if (node.nodeName && node.nodeName.toLowerCase() === 'a') {
var val = node.href;
if (!limitRegLength(val)) return;
if (emailReg.test(val)) {
_paq.push(['trackEvent', 'click', 'email', val]);
return;
}
}
if (node.nodeName && node.nodeName.toLowerCase() === 'i') {
var val = node.className;
var content = node.parentNode.href || '';
if (val.includes('email')) {
_paq.push(['trackEvent', 'click', 'email', content]);
return;
}
}
var nodeChildList = node.childNodes;
for (var i = 0; i < nodeChildList.length; i++) {
if (nodeChildList[i].nodeType !== 3) continue;
var val = nodeChildList[i].textContent.replace(/\s?:?/g, '');
if (!limitRegLength(val)) continue;
if (emailReg.test(val)) {
_paq.push(['trackEvent', 'click', 'email', val]);
return;
}
}
trackNumberData(node);
});
window.addEventListener('copy', function (e) {
if (trackActionPhone(e.target, 'copy')) return;
var text = e.target.textContent;
if (!text) return;
var val = text.replace(/\s:?/g, '');
if (!limitRegLength(val)) return;
if (emailReg.test(val)) {
_paq.push(['trackEvent', 'copy', 'email', val]);
return;
}
trackNumberData(e.target);
});
}
trackContactInit();
/**
* 基于custom_inquiry_form.js 以及 form.js 对于询盘表单提交的实现,来反推询盘表单的input标签触发,用来收集意向客户
* 1. 缓存的KEY:TRACK_INPUT_ID_MTM_00;
* 2. 缓存策略 - lockTrackInput:单个页面内,10分钟内,不重复上报
*/
function trackActionInput() {
const CACHE_KEY = 'TRACK_INPUT_ID_MTM_00';
const pathName = window.location.hostname + window.location.pathname;
var lockTrackInput = function () {
try {
const lastCacheData = localStorage.getItem(CACHE_KEY);
if (!lastCacheData) return false;
const cacheData = JSON.parse(lastCacheData);
const cacheTime = cacheData[pathName];
if (!cacheTime) return false;
return Date.now() - cacheTime < 1000 * 60 * 10; // 10分钟内,不重复上报
} catch (error) {
console.error('lockTrackInput Error', error);
return false;
}
};
var setInputTrackId = function () {
try {
const curCacheData = localStorage.getItem(CACHE_KEY);
if (curCacheData) {
const cacheData = JSON.parse(curCacheData);
cacheData[pathName] = Date.now();
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
return;
}
const cacheData = {
[pathName]: Date.now(),
};
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
} catch (error) {
console.error('setInputTrackId Error', error);
}
};
var getInputDom = function (initDom) {
var ele = initDom;
while (ele) {
/**
* isWebSiteForm 是站点的表单
* isChatWindowForm 是聊天窗口的表单
*/
/** 旧模板表单 */
var isWebSiteForm = !!(
/crm-form/i.test(ele.className) && ele.querySelector('form')
);
/** 1:新模板自定义表单、2:Get a Quote 弹框表单 */
var isWebSiteFormNew = !!(
/inquiry/i.test(ele.className) && ele.querySelector('form')
);
if (isWebSiteForm || isWebSiteFormNew) {
_paq.push(['trackEvent', 'formInquiry', 'formInput', 'page']);
setInputTrackId();
return;
}
/** Mkt会话触达-聊天弹框的表单输入: MKT由于是iframe嵌入,所以MKT的上报,会单独写到MKT-form代码上 */
var isInquiryChatForm = !!(
/comp-form/i.test(ele.className) && ele.querySelector('form')
);
if (isInquiryChatForm) {
_paq.push(['trackEvent', 'formInquiry', 'formInput', 'chat']);
setInputTrackId();
return;
}
/** 向上查找父节点 */
ele = ele.parentNode;
}
};
function initInputListener() {
var inputUseDebounce = function (fn, delay) {
var timer = null;
var that = this;
return function () {
var args = Array.prototype.slice.call(arguments);
if (timer) clearTimeout(timer);
timer = setTimeout(function () {
fn.apply(that, args);
}, delay);
};
};
var optimizeGetInputDom = inputUseDebounce(getInputDom, 300);
window.addEventListener('input', function (e) {
/** 如果已经上报过,则不再上报 */
if (lockTrackInput()) return;
optimizeGetInputDom(e.target);
});
}
try {
initInputListener();
} catch (error) {
console.log('initInputListener Error', error);
}
}
trackActionInput();
}
/** 第三方消息上报:目前主要是针对全点托管会话;在msgCollect/index.js中调试,访问test.html */
function thirdMsgCollect() {
/** 先检测是否是stayReal托管:如果stayReal脚本都没有,那么说明当前站点未开启stayReal会话托管 */
const scriptList = Array.prototype.slice.call(
document.querySelectorAll('script'),
);
const checkStayReal = () =>
!!scriptList.find((s) => s.src.includes('stayreal.xiaoman.cn'));
if (!checkStayReal()) return;
/** 缓存当前消息队列的最后一条消息id */
const CACHE_KEY = 'CACHE_KEY_MONITOR';
const setCache = (msgIndex) => {
/** 对缓存KEY进行base64转码处理 */
const cacheMsgIndex = btoa(msgIndex);
localStorage.setItem(CACHE_KEY, cacheMsgIndex);
};
const getCache = () => {
const cacheMsgIndex = localStorage.getItem(CACHE_KEY);
if (cacheMsgIndex) return Number(atob(cacheMsgIndex));
return -1;
};
/** 拉取最新msg列表 */
const pullMsgList = () => {
const msgEleList = Array.prototype.slice.call(
document.querySelectorAll('#chat-list li'),
);
const msgIds = [];
const msgMap = msgEleList.reduce((acc, item) => {
const sendTime = item
.querySelector('.message-data-time')
.textContent.trim();
const sendContent = item.querySelector('.message').textContent.trim();
/** msg带有class:other-message的是访客消息,my-message的是客服消息 */
const isOtherMessage = item
.querySelector('.message')
.classList.contains('other-message');
const msgId = item.querySelector('.message').getAttribute('id');
const msgItemData = {
msgId,
user: isOtherMessage ? 'visitor' : 'official',
time: sendTime,
content: sendContent,
};
msgIds.push(msgId);
acc[msgId] = msgItemData;
return acc;
}, {});
return {
ids: msgIds,
dataMap: msgMap,
};
};
/** 加密并上传消息数据 */
let ENCRYPT_KEY = 'de29f1aab63ab033';
let ENCRYPT_IV = 'b8d2badf875e76ac';
const baseUrl = 'https://cms.xiaoman.cn';
// var getEncryptConfig = function () {
// const url = baseUrl + '/shop-api/innerApi/getKeyIv'
// $.get(
// url,
// function (result) {
// console.log('result', result)
// if (Number(result.code) === 0 && result.data.key && result.data.iv) {
// ENCRYPT_KEY = result.data.key
// ENCRYPT_IV = result.data.iv
// uploadMsgData()
// } else {
// /** 如果获取失败,则重试 */
// setTimeout(() => {
// getEncryptConfig()
// }, 1000)
// }
// },
// 'json'
// )
// }
// getEncryptConfig()
const encryptMsg = function (msgData) {
const enc = new TextEncoder();
// 转字节
const keyBytes = enc.encode(ENCRYPT_KEY);
const ivBytes = enc.encode(ENCRYPT_IV);
const plainBytes = enc.encode(msgData);
// 导入密钥并加密
return crypto.subtle
.importKey('raw', keyBytes, { name: 'AES-CBC' }, false, ['encrypt'])
.then(function (cryptoKey) {
return crypto.subtle.encrypt(
{ name: 'AES-CBC', iv: ivBytes },
cryptoKey,
plainBytes,
);
})
.then(function (encryptedBuffer) {
// 转 base64 返回
return btoa(
String.fromCharCode(...new Uint8Array(encryptedBuffer)),
);
})
.catch((err) => {
return Promise.reject(err);
});
};
let uploadFlag = false;
const uploadMsgData = function () {
if (uploadFlag) return;
uploadFlag = true;
const { ids, dataMap } = pullMsgList();
let cacheMsgIndex = getCache();
const msgLen = ids.length;
if (!msgLen) {
// 消息DOM未挂载 || 消息DOM已挂载,但是消息列表为空
uploadFlag = false;
return;
}
if (msgLen - 1 < cacheMsgIndex) {
/** 针对站点挂后台一段时间,消息列表会自动塞入重复消息,导致消息有重复,刷新后又重置回正常消息列表,所以这里需要更新锚点下标 */
cacheMsgIndex = msgLen - 1;
setCache(cacheMsgIndex);
uploadFlag = false;
return;
}
if (msgLen - 1 === cacheMsgIndex) {
// 缓存的最后一次发送的消息ID是最后一条(说明当前消息均已经上报),则不跳过本地上报
uploadFlag = false;
return;
}
const currentMsgIds = ids.slice(cacheMsgIndex + 1, msgLen);
const currentMsgData = currentMsgIds.map((id) => dataMap[id]);
const mtmId = window.matomo_site_id_cookie_key || ''; // 获取mtm会话id
const msgBody = {
mtmId,
curl: window.location.href,
msgList: currentMsgData,
};
const msgBodyStr = JSON.stringify(msgBody);
encryptMsg(msgBodyStr)
.then(function (encryptedMsg) {
console.log('encryptedMsg:', encryptedMsg, msgBodyStr);
const url = baseUrl + '/shop-api/External/ListenSiteActiveStatus';
$.ajax({
type: 'POST',
url,
data: JSON.stringify({ d_v: encryptedMsg }),
contentType: 'application/json',
success: function (result) {
if (Number(result.code) === 0) {
// 更新消息队列
setCache(msgLen - 1);
}
uploadFlag = false;
},
error: function (err) {
console.error(err, '请求异常');
uploadFlag = false;
},
});
})
.catch((err) => {
console.error(err, '数据加密失败');
uploadFlag = false;
});
};
/** 监控chat-list的DOM变更 */
const initChatListObserver = () => {
// 需要监听的 DOM 节点
const target = document.getElementById('chat-list');
if (!target) return;
// 回调函数
const callback = function (mutationsList, observer) {
for (const mutation of mutationsList) {
console.log('mutation', mutation);
if (mutation.type === 'childList') {
uploadMsgData();
}
}
};
// 配置
const config = {
childList: true, // 监听子节点的增删
subtree: true, // 是否也监听后代节点
};
// 创建 observer
const observer = new MutationObserver(callback);
// 开始监听
observer.observe(target, config);
};
let testCount = 30;
let itv = null;
const checkChatDom = () => !!document.querySelector('#vc-model');
const initTalkCheck = () => {
itv = setTimeout(() => {
console.log('checkChatDom', checkChatDom(), testCount);
if (!checkChatDom() && testCount > 0) {
testCount--;
initTalkCheck();
return;
}
clearTimeout(itv);
uploadMsgData();
initChatListObserver();
}, 1500);
};
initTalkCheck();
}
try {
gtmTrack();
thirdMsgCollect();
console.log('inserted gtm code');
} catch (error) {
console.error('gtmTrack Error', error);
}
});
})();
Læknavörur af hárri gæðum hæðarþræðir eru mikilvægur hluti af tryggingu öryggis og umhyggju fyrir hvaða sjúkling sem er á sjúkrahúsi eða í neyðarumhverfi. Þessi berrýmin eru úrborin með nýjasta tækni til að veita sjúklingum hágæða viðhald og þjónustu við flutning. Léttvæg og sterkt gerðin hjálpa starfsfólki heilbrigðisþjónustu að flytja þau auðveldlega og sérsniðnar útgáfur geta uppfyllt fjölbreyttar læknisfræðilegar kröfur. Ábyrg, gæðavörulag berrýmiskynsla fyrir grunnverslara á háum gæðastigi. Það ríkuberi er hannað til að tryggja viðeigandi þjónustu og öryggi fyrir sjúklinga við flutning hjá XIEHE MEDICAL. Ráðstöfunin felur í sér sofðar yfirborð, stillanlega ryggstuðla og hliðarreipi til að halda sjúklingum í öruggri og viðhöldnum stöðu. Öryggisbelti og læsingar bæta einnig á stöðugleika rússunnar við flutning, sem getur koma í veg fyrir slysa eða meiðsli. Markmiðið er að bjóða bæði sjúklingum og starfsfólki sjúkrabitarinnar örugga og viðhaldnaupplifun í gegnum alla flutningsferlið. Þessi ákall um átök og öryggi gerir okkur að ólíkum, og gerir okkur tillitsverðan samstarfsaðila í heilbrigðisflutningum. Heilbrigðisumhverfi Heilbrigðisstofnanir þurfa fjölhæf flutningslausnir sem eru álagafærar í eigu og auðveldar í notkun. XIEHE MEDICAL getur veitt létt en sterkt hæðarþræðir uppfylla aðeins ofangreind kröfur. Búin til úr gæðamiklum efnum, eru þessar báru ótrúlega léttvægar en samt sterkar nóg til að standast stöðugan notkun. Léttvægar og fyrir hreyfingar til að flytja þær með minni álagi til og innan sjúkrabila. Með léttvægum og gæðaháum viðskiptavænum bárur frá XIEHE MEDICAL er flutningur í heilbrigðiseinstaklingum eða endurhæknunarrými auðvelt og öruggt, sem er ideal til að hjálpa við flutning sjúklinga frá rúmi til vagns eða rúm til x-geislavél. XIEHE MEDICAL veit að mismunandi læknaver hafa þörf fyrir mismunandi flutningstæki. Þess vegna býður XIEHE MEDICAL upp á stillanleg ríkuberi lausnir sem henta ýmsum klínískum þörfum. Hvort sem er um að breyta hæð, lengd eða breidd rússu, bæta við aukahlöðum eins og dropastaurum eða súrefnishaldarum, eða nota sérstaklega fáan efni fyrir sjúklinga með einstaka þarfir, getur XIEHE MEDICAL sérsniðið réttar rússulausnir fyrir heilbrigðisþjónustufyrirtæki. Með því að bjóða upp á stillanlegar rússulausnir tryggir XIEHE MEDICAL að sjúkrahús geti nýtt sér flutningslausnir sem algerlega hafa umsjón með þörfum viðtakenda hjá alvarlegum og venjulegum heilbrigðisþjónustufyrirtækjum. Þessi áhersla á sérsníðning og fjölnota getur flutning sjúklinga í sjúkrahúsum gert skilvirkara. Það eru kostnaðsvenjuleg og trúverðug flutningsleiðir fyrir bari fyrir veitingaklentar í gegnum XIEHE MEDICAL. XIEHE MEDICAL býður upp á samkeppnishæft verð fyrir bari sín með sömu trúverðuga gæði. Veitingaflutningsmöguleikar fyrir bari geta sparað kostnað við stórvörukaup hjá XIEHE MEDICAL á trúverðugum og fljótt svaraðum flutningslausnum fyrir sjúkrahús þitt. Takmarkið af XIEHE MEDICAL við gæði á álaganlegu verði gerir kleift fyrir veitingaklentur að treysta á að þessi bari séu bestu valkostirnir fyrir þarfir sjúkrahússins, allt á verði sem fellur innan fjármunaverðs. Með langtímaáherslu á verð, gæði og þjónustu hefir XIEHE MEDICAL orðið leiðandi í boði og þjónustu á veitingamarkaði fyrir bari. Hehe Medical Equipment leggur áherslu á ánægju viðskiptavina og bregst til þess að uppfylla kröfur viðskiptavina í lyfjafræðilegum flutningsskálum með framúrskarandi gæðum og áreiðanleika. Ástríðusamir starfsfólk okkar og samstarfsbyggt tækni leyfa okkur að veita náið og athyglisvert þjónustu við viðskiptavini, þannig að kröfur þeirra séu ávallt fullnægðar. Við stefnum að langtíma- og staðbundinni samvinnu við viðskiptavina okkar og veitum þeim háþróaðar vörur og þjónustu með samstarfi og tæknihjálp. Xiehe Medical Apparatus Instruments er framskiptaraðili í framleiðslu háþekktra læknisviðmiða. Þeir bjóða einnig á sérstöku þjónustu. Halda strikkt við ISO13485 gæðakontrolkerfi og öll vöru eru vottorð með TUV, CE, FDA o.s.frv. Með fyrirbundinni lið sem starfar á læknisferðum geta þeir svarað flugtlega á beiðni viðskiptavinanna og birt út trúa- og langvaranlega vöru og þjónustu. Því miður hverju að sé um klappferðir, sjúkrasalaeftir, eða dauðafé, getur Xiehe Medical Equipment birt viðskiptavini sínum fullnægri lausnir. Xiehe Medical Apparatus Instruments hefur ósveigjanlega þátttöku í nýsköpun og rannsóknum og þróun, ásamt því að framleiða vörur með keppnisfyrirhugu. Við eigum fjölda vegna okkar einkaleyfisréttinda, þar á meðal lyftusvæði fyrir sjúklinga, flutningssvæði, hjálparsjóður, sjúkrabúnaður, og vörur fyrir jarðarför. Vörurnar eru hannaðar til að uppfylla kröfur viðskiptavina og halda sig í samræmi við nýjustu áttirnar. Þessar vörur hafa verið vel mótteknar bæði heimastu og erlendum viðskiptavini. Xiehe Medical Apparatus Instruments hefur lagt áherslu á alþjóðlega markaðssetningu og sölu. Á síðustu 10 árum, með stuðningi frá samstarfsaðilum okkar, höfum við nú yfir 30 dreifingaraðila um allan heim. Auk þess eru vörurnar dreifðar í meira en 120 lönd. Við leggjum áherslu á lyftusvæði fyrir sjúklinga og flutningssvæði og byggjum langtíma samstarfsverkefni við dreifingaraðila og samsetjendur til að hanna og byggja framtíðina saman.Heilbrigðisfluttfærsla
Góður og aukin öryggi fyrir læknisfræðilega flutning:

Borða valkostir: Léttir og varanlegir fyrir sjúkrabörn:

Borðalausnir fyrir sérhverja spítalans þarf, tilvirkaðar eftir einstaklingskröfur,

Fyrir veitingaklentar, ódýr og venjulegur borðaflutningur sem hægt er að velja.
Why choose XIEHE MEDICAL
Heilbrigðisfluttfærsla?
Viðskiptavinakær Fast efri-verkæfaþjónusta og tæknileg stuðningur
Hátt gæði vöru og sérstaka þjónustu
Nýsköpun R og D og vöru sölu punktar
Þjónnustuverk fyrir heimmarkaðar og stöðugir samstarfsmenn
Finndu ekki það sem þú leitar að?
Biðja um tilboð núna
Hafðu samband við ráðgjafana okkar fyrir fleiri tiltækar vörur.Taktu samband