automobiles de haute qualité pour un transport efficace des patients ">
,需要通过父级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);
}
});
})();
Tout sur le chargement automatique de haute qualité brancard pour un transport efficace des patients Nous sommes une entreprise spécialisée dans la fabrication de brancards automatiques de la plus haute qualité brancards hospitaliers qui permettent un transport rapide et sécurisé des patients partout. Nos brancards sont fabriqués avec grand soin et précision afin de garantir que les patients soient déplacés rapidement, efficacement et en toute sécurité en cas d'urgence. En nous concentrant sur la qualité et la fiabilité, nos brancards automatiques brancards hospitaliers sont le meilleur choix pour les professionnels de santé souhaitant simplifier les processus et améliorer la sécurité des patients. Conception innovante pour une utilisation facile en cas d'urgence Nos brancards automatiques brancards hospitaliers se caractérisent par une structure moderne qui permet une utilisation confortable et sécurisée dans des situations d'urgence à haute pression. Des hauteurs réglables au fonctionnement simple, en passant par de nombreux réglages assurant le confort du patient, tout a été conçu pour que l'utilisateur se sente en confiance et puisse se concentrer sur les meilleurs soins possibles. De plus, ils intègrent une technologie avancée garantissant un fonctionnement fluide et sans à-coups du brancard, même dans des conditions difficiles. Enfin, notre chargement automatique brancards hospitaliers offre le confort et la confiance nécessaires pour que les équipes médicales puissent transporter les patients en toute sécurité et sérénité. Des problèmes classiques résolus grâce à la technologie de chargement automatique Depuis plusieurs décennies, le personnel médical utilise des brancards traditionnels brancards hospitaliers pour transporter des patients. Il est fréquent qu'ils souffrent de plusieurs défauts empêchant le processus d'être efficace et confortable. L'un des plus évidents est la nécessité d'utiliser la force physique pour soulever ou abaisser le patient lorsque cela n'est pas médicalement viable ou possible. Avec la civière à chargement automatique fabriquée par notre entreprise, il suffit d'utiliser la commande et le chargeur automatique effectue tout le travail, ce qui minimise le risque de blessures. Un autre problème courant avec les systèmes traditionnels brancards hospitaliers est la capacité de les faire passer par des espaces réduits et des coins. Les brancards automatiques sont conçus avec des roues pivotantes afin d'aider le personnel médical à circuler sans difficulté dans des couloirs étroits et des portes. Ainsi, ces brancards permettent un transport efficace et fluide pour déplacer rapidement les patients nécessitant une attention médicale immédiate vers les établissements de santé. De même, le système de freinage permettant de fixer le brancard donne au personnel la possibilité de le stationner en cas d'urgence, évitant ainsi tout déplacement indésirable qui pourrait aggraver l'état du patient. Certains des brancards automatiques les mieux notés brancards hospitaliers disponibles sur le marché sont : les brancards automatiques de XIEHE MEDICAL brancards hospitaliers . La civière à chargement automatique de XIEHE MEDICAL est l'une des meilleures civières sur lesquelles on puisse compter en cas d'urgence médicale. XIEHE MEDICAL est une marque reconnue pour fournir des produits très appréciés aux hôpitaux et aux intervenants en situation d'urgence. La civière est conçue avec une fonction de réglage en hauteur, ce qui permet de positionner la civière au niveau garantissant le confort et la sécurité du patient. De plus, cette civière dispose d'un cadre léger mais robuste, capable de supporter des patients de différentes tailles et poids. En outre, la civière est équipée d'un matelas et de sangles de sécurité afin d'assurer le confort et la stabilité du patient tout au long du processus de transport. Ces ingénieuses civières à chargement automatique brancards hospitaliers se sont révélées être la prochaine grande avancée en matière de transport de patients de haute qualité et efficace. Xiehe Medical Apparatus Instruments s'est engagé depuis plus d'une décennie dans une stratégie de globalisation du marketing et des ventes. Nous disposons de plus de 30 distributeurs répartis dans plus de 120 pays, grâce à l'appui constant de nos partenaires. Notre brancard à chargement automatique vise à établir des partenariats à long terme avec les distributeurs et les intégrateurs afin de développer et de créer ensemble l'avenir. Hehe Medical Equipment accorde la priorité à la satisfaction client et s’efforce de répondre aux besoins de ses clients avec excellence et fiabilité. Nous sommes en mesure d’offrir à nos clients un service personnalisé et réactif, grâce à la passion de nos employés ainsi qu’aux technologies collaboratives que nous mettons en œuvre. Le brancard à chargement automatique vise à établir un partenariat coopératif durable et inaltérable avec nos clients, et à leur fournir des produits et des services de haute qualité. Xiehe Medical Apparatus Instruments est un leader de l'industrie dans la fabrication d'équipements médicaux de haute qualité. Nous proposons également des services spécifiques. Nous respectons rigoureusement le système de contrôle qualité ISO13485 et tous nos produits sont certifiés par TUV, CE, FDA, etc. Grâce à une équipe dédiée à la civière automatisée, nous sommes en mesure de répondre rapidement aux demandes des clients et de leur fournir des produits et services fiables et durables. Qu'il s'agisse de civières pliantes, de mobilier hospitalier ou de fournitures funéraires, Xiehe Medical Equipment peut offrir aux clients des solutions satisfaisantes. Xiehe Medical Apparatus Instruments continue à innover en R D et s'engage à fournir des points forts compétitifs pour les produits. Détenant de nombreuses patentes ainsi que des protections intellectuelles comme les brancards médicaux, les articles de premiers secours, le mobilier hospitalier et les produits funéraires. Les produits fabriqués répondent aux besoins des clients et suivent les tendances actuelles. Ces produits sont très appréciés, notamment la brancarde automatique, par les clients internationaux et nationaux. Avec les améliorations technologiques continues, l'avenir du transport des patients utilisant le chargement automatique brancards hospitaliers est relativement prometteur. Chez XIEHE Medical, l'organisation s'engage à concevoir et innover des systèmes de chargement automatique plus performants et sécuritaires brancards hospitaliers pour les établissements médicaux et les entreprises de réponse d'urgence. Certaines des fonctionnalités avancées probables incluent des opérations télécommandées, une surveillance intégrée et des mesures de sécurité améliorées. Porté par les innovations de XIEHE Medical, le transport des patients deviendra plus sûr et plus confortable pour les patients comme pour les conducteurs. À l'avenir, le transport des patients va s'améliorer alors que la demande de solutions de qualité continue de devenir plus ambitieuse. Grâce à des investissements dans l'innovation, XIEHE Medical est sur le point de transformer les tendances et la dynamique des modes de transport des patients, améliorant ainsi la qualité des soins de santé dans le monde entier. brancard à chargement automatique
Brancard automatique de haute qualité pour un transport efficace des patients

Conception innovante pour une utilisation facile en cas d'urgence

Problèmes courants des brancards traditionnels résolus grâce à la technologie de chargement automatique

« Meilleurs brancards automatiques du marché »
Why choose XIEHE MEDICAL
brancard à chargement automatique?
Réseau de marketing mondial et partenaires stables
Orienté client Service après-vente rapide et support technique
Produits de haute qualité et services spécialisés
Recherche et développement innovants et points forts du produit
Catégories de produits associés
l'avenir du transport des patients avec les brancards à chargement automatique
Vous ne trouvez pas ce que vous cherchez ?
Demandez un devis maintenant
Contactez nos consultants pour plus de produits disponibles.Contactez-nous