na may kalidad para sa gilid ng kama sa ospital ay mahahalagang mga piraso ng kasangkapan na nagpapadali ng...">
,需要通过父级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);
}
});
})();
De-kalidad na hospital bedside mga lockers ay mahahalagang muwebles na nagpapadali sa mga medikal na kawani na imbak ang mahahalagang suplay at kagamitan sa malapit na kalapitan ng kama ng pasyente. Kinikilala ng XIEHE MEDICAL na kailangan ng mga ospital ang matibay at epektibong bedside mga lockers upang matiyak ang mabilis at epektibong proseso sa pag-aalaga. Ang aming matibay na bedside mga lockers ay gawa sa matibay na mga materyales upang manatiling tumagal sa pang-araw-araw na paggamit sa isang ospital. Presyo ng wholesaler para sa hospital na nasa tabi mga lockers Ang mga presyo ng locker sa tabi ng kama sa ospital ay isang mahalagang isyu din na tinutugunan ng XIEHE MEDICAL upang matulungan ang lahat ng ospital sa iba't ibang lugar na gamitin ang kanilang badyet. Pinagsasama namin ang mga muwebles na may pinakamataas na kalidad kasama ang mga presyo ng wholesaler na diretso sa inyong pintuan upang maiaalok sa mga hotel at pasilidad sa pangangalagang pangkalusugan sa Ireland ng mga opsyon na produktong ekonomiko at matibay, functional, at malakas na mga locker sa tabi ng kama. Ang aming mga presyo sa wholesaler ay nagbibigay-daan sa mga ospital na mapunan ang maraming kuwarto ng mga locker sa tabi ng kama nang hindi lumalabag sa kanilang badyet. Bilang karagdagan, nag-aalok kami ng hospital bedside mga lockers sa presyong may diskwento upang maibigay ang pinakamataas na kalidad na produkto nang masaganang dami habang iniimpokan ang pera ng aming mga customer sa kabuuang gastos para sa epektibong solusyon ng side table sa kuwarto na siyang matalinong pamumuhunan para sa mga ospital na may pangangailangan ng mga bagong silid na pupunan. Ang XIEHE MEDICAL ay nakatuon sa pagbibigay ng pinakamahusay na halaga para sa inyong produkto sa kamay ng aming mga kawani sa ospital at mga pasyente sa pamamagitan ng komprehensibong mga wholesale bedside cabinet, na layunin na suportahan ang mga ospital sa pamamagitan ng kalidad ng pag-aalaga at pamamahala ng badyet. Piliin ang XIEHE MEDICAL para sa kalidad at halagang bedside mga lockers na angkop sa mga pangangailangan ng makabagong industriya ng pangangalagang pangkalusugan. May ilang mga salik na dapat isaalang-alang sa pagpili ng bedside locker para sa paggamit sa ospital. Ang unang dapat isaalang-alang ay ang laki ng locker at kung paano ito maiiwan sa loob ng kuwarto ng ospital. Dapat sapat ang sukat ng locker upang mapagkasya ang lahat ng kailangang gamit, kabilang ang personal na bagay at gamot, ngunit hindi dapat masyadong makapal (hindi naman kailangang agawin nito ang masyadong maraming espasyo). Mahalaga rin ang pagkakagawa ng locker kaugnay ng tibay at paglilinis. Ang pagpili ng matibay at madaling disinfect na materyales tulad ng stainless steel o plastik na de-kalidad ay nakatutulong din sa kalinisan sa kuwarto ng ospital. Panghuli, dapat isipin ang disenyo at mga tungkulin ng locker na may pag-unawa sa ginhawa at kaginhawahan ng pasyente at mga tauhan ng ospital. Ang pagiging functional at Kadalian sa Paggamit na mga opsyon tulad ng adjustable shelves, lock sa drawers, at maayos na gliders ay makatutulong upang lubos mong magamit ang iyong bedside locker . Sa paglipas ng mga taon, may ilang bagong disenyo na ang lumabas para sa hospital bedside mga lockers naging popular sa mga modernong ospital. MODULAR NA BEDSIDE LOCKER Ang isang uso ay patungo sa modular na bedside mga lockers na maaaring i-angkop at i-adjust para sa partikular na pangangailangan. Ang mga modular na storage na ito mga lockers ay fleksible sa sukat, disenyo, at tungkulin upang magbigay ng natatanging solusyon sa imbakan para sa bawat pasyente sa loob ng ospital. Ang bagong moda sa disenyo ay ang mga bedside mga lockers na may mga tampok na teknolohikal, tulad ng mga charging port at digital na kandado. Ang mga tampok na ito ay hindi lamang nagpapadali sa operasyon ng locker kundi nag-aambag din sa pagpapabuti ng ginhawa ng pasyente sa kuwarto ng ospital. Mayroon ding patuloy na pagtaas ng demand para sa berdeng bedside mga lockers , na ginawa mula sa mga napapanatiling materyales habang ang mga serbisyong pangkalusugan ay higit na binibigyang-pansin ang pagpapanatili sa kalikasan. Bagaman marami ang mga benepisyo ng hospital bedside mga lockers ay may ilang karaniwang di-kanais-nais na aspeto na maaaring maranasan ng mga ospital sa mga mahahalagang opsyon sa imbakan na ito. Sa kabuuan, lahat ng mga lockers ay medyo matibay upang tumagal sa mahabang panahon ngunit kung hindi maayos na pinapanatili, ang mga locker ay tiyak na mag-de-degrade sa kalidad sa paglipas ng panahon. Kailangan ang regular na paglilinis at pagpapanatili para sa mga locker maaari talagang gawin upang maiwasan ang pagsusuot at pagkasira na magpapahaba sa kanyang habambuhay. Ang isang karagdagang isyu ay ang locker hindi maaring malinis nang tama at may panganib ng pagkalat ng impeksyon mula rito kung ang mga materyales na ginamit sa paggawa nito ay nagdadala ng bakterya. Ang pagpili ng isang locker na gawa sa antimikrobyal na materyales ay maaari ring makatulong sa pagbawas ng panganib na ito at panatilihing hygienic ang espasyo ng pasyente. Sa huli, kung ang bedside mga lockers ay hindi angkop na idisenyo, maaaring mahirapan ang ilang ospital sa pag-iimbak at pag-organisa ng mga bagay. Dapat isaalang-alang ng mga ospital na mamuhunan sa de-kalidad, functional mga lockers upang mapakinabangan ang espasyo para sa imbakan at mapataas ang kahusayan sa paggamot sa pasyente. Sa Hehe Medical Equipment, kinakailangang makamit ang kapag-anakan ng mga kliyente habang sinusubaybayan ang kanilang mga pangangailangan sa pamamagitan ng katamtaman at tiwala. Maaring magbigay kami ng personal at tiyak na serbisyo dahil sa pahintulot ng aming mga opisyal, pati na rin ang teknolohiya na ginagamit namin. Ang aming layunin ay itatayo ang isang matagal na relasyon, maaaring mabilis at may benepisyo para sa aming mga kliyente at ipapakita sa kanila ang taas-na-buhay na produkto at serbisyo. Ang Xiehe Medical Apparatus Instruments ay patuloy na nakikilahok sa nangungunang pananaliksik at pag-unlad (R&D) at dedikado sa pag-aalok ng kompetitibong mga punto ng pagbebenta ng produkto. Ang mga patent at karapatan sa intelektuwal na ari-arian ay protektado para sa mga stretcher na medikal, mga produkto sa unang tulong, at iba pang kasangkapan tulad nito sa mga ospital, gayundin ang mga produkto para sa libing. Ang mga produkto ay ginagawa upang manatiling kaukulang kasangkapan sa gilid ng kama sa ospital at tugunan ang mga pangangailangan ng aming mga customer. Sila ay lubos na pinahahalagahan ng mga dayuhang at lokal na kliyente. Ang Xiehe Medical Apparatus Instruments ay nakatuon sa globalisadong estratehiya sa pagsasapalig sa merkado at benta. Mayroon na silang higit sa 30 mga distributor na nagsisilbi sa higit sa 120 bansa, na sumusunod sa higit sa 10 taon ng suporta mula sa aming mga katuwang. Binibigyang-pansin nila ang pagtatatag ng matagalang ugnayan sa mga distributor at integrator upang magkasama tayong umunlad sa hinaharap para sa bedside locker for hospital. Bilang propesyonal na tagagawa ng kagamitang pang-medikal, ang Xiehe Medical Apparatus Instruments ay nagbibigay ng mga de-kalidad na produkto at espesyalisadong serbisyo. Mahigpit na isinasagawa ang ISO13485 quality control system, at lahat ng aming mga produkto ay sertipikado ng TUV, CE, FDA, at marami pa. Mayroon kaming bedside locker para sa hospital team na maaaring mabilis na tumugon sa mga kailangan ng mga customer at mag-supply ng mataas na kalidad at stable na mga produkto. Kapag kailangan mo ng ambulance stretcher o folding stretcher furniture para sa mga ospital o mga gamit sa libing, ang Xiehe Medical Equipment ang solusyon.locker sa tabi ng kama para sa ospital
Mga locker sa gilid ng kama na may mataas na kalidad para sa mga ospital

Mga presyo para sa buong bilihan ng locker sa gilid ng kama sa ospital

Ano ang dapat isaalang-alang kapag bumibili ng locker sa gilid ng kama sa ospital

Mga uso na disenyo para sa bedside lockers sa ospital
Why choose XIEHE MEDICAL
locker sa tabi ng kama para sa ospital?
Nakatuon sa Mga Kliyente na Bilis na serbisyo pagkatapos ng benta at suporta sa teknikal
Mapanuring R at D at Produkong Benta ng Points
Global na network ng marketing at matatag na mga partner
Mataas na kalidad ng mga produkto at espesyal na mga serbisyo
Mga kaugnay na kategorya ng produkto
Hindi makahanap ng hinahanap?
Humiling ng Quote Ngayon
Makipag-ugnay sa aming mga konsultant para sa iba pang mga produkto.Makipag-ugnayan