ar ardchaighdeán...">
,需要通过父级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);
}
});
})();
Soláthraíonn XIEHE MEDICAL ardchaighdeán XH-7 Bainisteoir Lámha Almainn Leictreach Phríosúnach leaba fánaíochta ambúlans deartha le húsáid i gceann de na cúinsí is éagsúla do othair agus do phroifisiúnta. Nuair a bhíonn saol ar stake, is féidir leis an bhfoirgnimh láidir againne seasamh suas don úsáid dhian eisiach. De réir mar atá siad deartha le béim ar cháilíocht agus ar fheidhmiúlacht, is réiteach áisiúil agus láidir iad ár leaba fánaíochta ambúlans chun othair a ardú agus a bhogadh de réir do ordúcháin. I gcónaí tá XIEHE MEDICAL ag iarraidh “cáilíocht os cionn an tionscail, thar iontais an chustaiméara” a sholáthar. Lean ar aghaidh le níos mó a fháil amach faoin rogha againn de throlca leaba fánaíochta ambúlans agus cén fáth go bhfuil siad ina rogha idéalach do cheannaitheoirí mórphráinne a d’iarrfadh réiteach éifeachtach ach inaonártha. Seo ag XIEHE MEDICAL, táimid sásta ardoiliúin leaba ambúlans ar díol a fháil do ár gcomhluadaráin. Tá ár n-olann leaba déanta as ábhair fhiacha a dhéantar chun na dúshláin iompair mhionsonrach le haghaidh leasaithe sláinte a shealbhú. Agus maiseanna ar cháilíocht, staidhmhileacht agus oibríocht, léiríonn ár n-olann leaba an fheidhmíocht agus an oiriúnacht a bhfuil súil agat uirthi ó ár dtáirgí. Má tá tú ospidéal, ionraic shláinte nó seirbhís eisiachta, is idéalach iad ár n-olann leaba ambúlans chun oibre a shealbhú go sábhálach agus go tapa a bhfuil riachtanas acu air. Is é an aidhm chéanna a thugann solúbthacht seo chun leabaí sreangbhaire ar thóir ísle, ar ardchaighdeán a sholáthar. Tairgeann muid do cheannaitheoirí mórdhíola torthaí éifeachtaí agus éagsúla atá comhdhéanta d’riachtanais shonracha, gan triail a dhéanamh ar cháilíocht nó slándáil. Nuair a roghnaíonn tú XIEHE MEDICAL, is féidir leat dóibh sin a bheith cinnte go bhfuil tú ag fáil sreangbharaí ar thóir ar ardchaighdeán ag na prísí is féidire, agus go gcomhlíonfar gach feidhmíocht deirneach riachtanais aon ionraidh thar eochair. Roghnaigh XIEHE MEDICAL le haghaidh sreangbhara ar thóir ar ardchaighdeán, ar phraghas éagsúil, a thugann luas airgid ar feadh fada mar leaba sreangbhara ollmhórtha idealach do cheannach mórdhíolta. Féachfar ar an nuashonrú i ngach mhionsonra den laitreachán sláinte seo, ón gcomhdhúil chun cinn daonnacha go dtí dearbháil erganach a chuireann suaimhneas an othair agus éasca úsáide do thithe an othair mar phríomhaidhm. Tugaimid faoi láthair cé chomh tábhachtach atá sé bheith os cionn na cluiche sa tionscal leighis, agus táimid i gcónaí ag obair chun réitigh is cothromaí is féidir a fhorbairt do ár gclianta. Nuair a oibríonn tú le XIEHE MEDICAL, bíonn tairbhe breis againn ar ár bhfaisnéis agus ár ngníomhaireacht, tacaithe ag uirlisí leighis ardteicneolaíochta, táirgí, agus míreanna breise chun cinntiú go mbeidh gach rud atá uait agat i dhéanaíochas, lena n-áirítear ardshleamhnas YXH-5H Scáthán Stair Fheidhmeach Éifeachtach Bainistigh a fhreagraíonn ar nóscosta ar gach cineál aistriú othair nach bhfuilthar lách Ina theannta sin, tagann ár stairdeoir do dhromchlaí fóirne in ambúlans le sréagain slándála agus criospaí chun coimeádadh ar othraithe i suíomh chun aon thréidlionta nó dochar a sheachaint. Tugaimid tuiscint ar an tábhacht atá le cur ar othraithe ar dtús agus iad ag bogadh ó áit go háit, mar sin déanaimid cinnte go bhféadfadh othraithe bogadh in choisréidh, slándáil agus le dialann. Bíodh linn agat an stairdeoir dromchla fóirne ó XIEHE MEDICAL chun áit láidir, tacaí a sholáthar do phroifisiúntaí leighis i ngach eagarthóireacht, mar atá ár stairdeoir ospidéil deartha leis an n-othar i gceist. XIEHE MEDICAL: Oibrímid do gach custaiméir, bíonn cáilíocht cothrom le praghas agus molaimid táirgí ar airde an chaighdeáin amháin. Nóta: Is é ár méid caighdeánach 195x55cm/78x22 orlach. Má dhteastaíonn stíleanna nó mhéideanna eile uait, bíodh sé in iúl do sheirbhís chustaiméirí againn agus solóifimid tacaíocht ghairmiúil duit. Ón am a bheidh muid ag comhrá leat go dtí seirbhís ídiachtartha a sholáthar, tá ár bhfoireann tiomanta le déanamh cinnte go mbeidh ár gcustaiméirí féideartha ag fáil barra. Ba mhaith linn cinntiú go bhfaighidh tú leaba streitseoir otharchuir atá oiriúnach do do chriocha agus go mbeimid in ann tacú leat agus cabhrú leat le dul tríd an bpróiseas cheannach. Tá ár dtacaíocht chustaiméirí caomh agus leathan speictre ar fáil chun cabhrú le haon cheist a bhféadfadh a bheith agat a fhreagairt faoi ár ntorcadh agus treoir iomlán a thabhairt ar cén táirge a chomhlíonfaidh go hiomlán do chuid riachtanasacha áilleachta. Tá ár dtearmas caomh ann chun tú a chabhraigh tuairim is gá duit, ón bpointe a chuirfidh tú do ordú, go dtí an t-am a gheobhaidh tú do dhroichead othar agus thuas air sin. Le XIEHE MEDICAL, ní gá duit riamh imní a bheith ort go bhfuil tú ag ceannach táirge eile meánach ó chuideachta gan scrúpil a bhfuil spéis aca amháin sa líne bunúsach. Rochaill XIEHE MEDICAL ar sheirbhís shuntas chustaiméirí agus tiomantas tacú le do riachtanais os cionn agus thar a bheith thar barr. Tá Xiehe Medical Apparatus Instruments ag obair i dtreo straitéise idirnáisiúnta maidir le margú, díol agus reic. Le níos mó ná 10 bliain tacaíochta ón ngearrthana, tá níos mó ná 30 díoltóirí againn ar fud an domhain. Tá ár dtáirgí páirteach i níos mó ná 120 tír. Táimid ag díriú ar thógáil comhoibriú fadtéarmach le monaróirí leabaí ambasain agus le heagróirí chun an todhchaí a thógáil i gcomhoibriú. Is é Xiehe Medical Apparatus Instruments monarca leictreachas ar ardchaighdeán agus soláthraíonn sé seirbhísí speisialta freisin. Cuirtear an córas rialúcháin cháilíochta ISO13485 i bhfeidhm go díreach, agus tá gach táirge deontaithe ag TUV, CE, FDA, agus go leor eile. Le foireann saineolach a oibríonn ar leith ar leithéidí leaba ambainse, is féidir linn riachtanais na gcustaiméirí a shatisfá go tapa, agus cinntítear go mbeidh na táirgí sláintiúla, sábháilte agus na seirbhísí oiriúnach. An bhfuil uait leaba ambainse, leaba a chuaigh le chéile, mórchuidí do ospidéil, nó soláthair don bheanbhean, tá an freagra ag Xiehe Medical Equipment. Ag Oiliúint Leighis Hehe, tá ár dteideal ar shásamh an chustaiméara ag iarraidh leaba ambainse a streachaire a sholáthar do na hiarrachtaí sin le heagras agus le hiomlán ionadaíochta. Táimid in ann seirbhís pearsanta agus ionadaíochta a sholáthar do na custaiméirí mar gheall ar dhícheall ár n-oibrithe, chomh maith leis an teicneolaíocht comhoibriúil a úsáidimid. Is é ár sprioc caidreamh fadtéarmach, staible agus leasachánach leár gcustaiméirí agus iad a sholáthar le haghaidh táirgí agus seirbhísí ar ardchaighdeán. Tá Xiehe Medical Apparatus Instruments dírithe go dona ar nuálaíocht agus ar thionscnamh taighde agus forbartha (R&D), agus ar tháirgí a chruthú le pointí díol cothrom leis an margadh. Táimid ina saoránach orga de raon pataintí agus cearta oideachais intleachtúla, lena n-áirítear leabaidh ambainse, streachairí, míreanna cabhrach chéad éigeandála, meubail ospidéal, agus táirgí reilig. Cruthaítear na hábhair seo chun freastal ar iarrachtaí na gcustaiméirí agus chun leanúint leis na tréndanna is déanaí. Faoi bhlaiseadh maith iad na hábhair seo ag custaiméirí baile agus idirnáisiúnta.leaba soilseánach stretch
Gnéithe suaimhneacha agus praiticiúla le haghaidh iompar oibreachtóirí

Rogha cáiseáin éadomhach agus éasca a uasláidreáil

Ábhair ardchaighdeáin chun úsáide faoi dheireadh in ionaid leighis

Praghsanna bánphráinn fóirneáilte do shonracháin móra agus d’ionaid leighis
Why choose XIEHE MEDICAL
leaba soilseánach stretch?
Fógairt márkéadachta domhanda agus comhpháirtithe stailte
Pródúictí uasleibhéal agus seirbhísí speisialta
Custaiméir-Ceartaithe Téarmaíocht faoi-mhéid mhárcháid agus tacú teicniúil
Nuaálainn R agus D agus Pointe Sprioc Pródúict
An bhfuil tú ag iarraidh rud éigin nach bhfuil tú ag fáil?
Iarratas ar Shárú Anois
Déan teagmháil le haghaidh níos mó táirgí ar fáil leis na comhairlí.BÍ I LÉIGE LIOM