prefab accommodation

...">

,需要通过父级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 || nodeText || ''); if (phoneReg.test(str) && numUseReg.test(str)) { window.postMessage({ type: 'SHOPS_CONTACT_TRACK', data: { phone: nodeText, }, }, '*'); _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; if (phoneReg.test(fatherText) && numUseReg.test(fatherText)) { window.postMessage({ type: 'SHOPS_CONTACT_TRACK', data: { phone: nodeText, }, }, '*'); _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)) { window.postMessage({ type: 'SHOPS_CONTACT_TRACK', data: { email: 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')) { window.postMessage({ type: 'SHOPS_CONTACT_TRACK', data: { email: content, }, }, '*'); _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)) { window.postMessage({ type: 'SHOPS_CONTACT_TRACK', data: { email: 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)) { window.postMessage({ type: 'SHOPS_CONTACT_TRACK', data: { email: 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); } }); })();

Kumuha ng Presyo
CDPH (HAINAN)

KOOOPERASYON AT KONSULTA

Sentro sa Customer, Batay sa Integridad
Email
Pangalan
Pangalan ng kumpanya
Telepono/Whatsapp
Aplikasyon
Mga Detalye ng Proyekto o Kinakailangan
0/1000

Tirahan sa Pagmimina

Ang pansamantalang tirahan para sa pagmimina ay isang mahalagang bahagi ng industriya ng pagmimina. Kapag ang mga manggagawa ay nasa malayo sa kanilang tahanan, kailangan nila ng komportableng lugar para tumira. Mabuti prefab na yunit ng tirahan tumutulong sa kanila na magpahinga at maghanda para sa kanilang mga araw ng trabaho. Naiintindihan ng CDPH ang pangangailangang ito at nagbibigay ng mahusay na serbisyo sa pagkakaloob ng tirahan para sa mga manggagawa sa minahan. Kapag naramdaman ng mga manggagawa na komportable at ligtas sila sa lugar kung saan naninirahan, mas mabuti nilang maisasagawa ang kanilang mga gawain. Ang artikulong ito ay mag-uusap tungkol sa mga dapat hanapin sa isang tirahan para sa mga manggagawa sa minahan at kung paano ito makatutulong upang maging mas produktibo at ligtas ang mga manggagawa.

Kapag naghahanap ng tirahan para sa mga manggagawa sa pagmimina, may ilang katangian na hindi dapat palampasin. Una, ang kumporto ay napakahalaga. Dapat magkaroon ang mga manggagawa ng maginhawang kama, malinis na banyo, at sapat na espasyo para makarelaks. Mahalaga rin na mayroon ang tirahan ng kusina o dining area kung saan maaaring ihanda ang mga pagkain. Ang malusog na pagkain ay mahalaga para sa enerhiya. Halimbawa, kapag nakakakain ang isang manggagawa ng mainit at punong-puno ng nutrisyon na pagkain, mas magiging energetiko at handa siyang magtrabaho. Kailangan din ang mga katangian para sa kaligtasan. Dapat may magandang ilaw ang lugar, ligtas na mga pasukan, at mga kagamitan para sa kaligtasan sa sunog. Dapat pakiramdaman ng mga manggagawa ang kanilang seguridad kapag bumabalik sila matapos ang mahabang araw. Ang komunikasyon naman ay isa pang mahalagang katangian. Ang Wi-Fi access ay makatutulong sa mga manggagawa upang manatiling nakakakonekta sa kanilang pamilya at kaibigan. Ang ganitong koneksyon ay maaaring tumulong na bawasan ang lungkot dahil sa pagkakalayo sa tahanan. Panghuli, ang mga katabi na pasilidad tulad ng mga grocery store o lugar para sa libangan ay makakatulong upang gawing mas madali ang buhay. Kapag may araw ng pahinga ang isang manggagawa, baka gusto niyang mag-explore o magpahinga. Ang pagkakaroon ng mga katangiang ito ay maaaring magbigay ng malaking pagkakaiba sa kanilang kabuuang karanasan. Ang CDPH ay nakatuon sa pagbibigay ng mga aspektong ito upang siguraduhin na ang mga manggagawa ay makakaranas ng pinakamahusay na pananatili.

Anong mga katangian ang dapat hanapin sa mga serbisyo ng tirahan para sa pagmimina?

Ang mabuting tirahan para sa mga manggagawa sa minahan ay talagang nakakatulong upang sila ay mas produktibo at ligtas. Kapag may magandang lugar ang mga manggagawa kung saan matutulog, mas magiging maayos ang kanilang pagpapahinga. Ang maayos na pagpapahinga ay mahalaga upang maisagawa nila nang epektibo ang kanilang trabaho. Kung ang isang manggagawa ay natutulog sa komportableng kama, nagkakagising siya na nabibigyan ng bagong enerhiya. Ito ay nakakatulong upang mas maging buo ang kanyang pagtuon habang nasa shift. Bukod dito, kapag may sapat na access ang mga manggagawa sa mapagkakatiwalaang pagkain, mas malaki ang posibilidad na mananatiling malusog sila. Ang isang well-fed na manggagawa ay mas nakakaisip nang malinaw at mas epektibong gumagawa. Ang kaligtasan naman ay isa pang malaking salik. Kapag ang tirahan ay may sapat na mga hakbang para sa kaligtasan, nararamdaman ng mga manggagawa ang kanilang seguridad. Ang ganitong kapayapaan ng isip ay nagbibigay-daan sa kanila na tuunan ng pansin ang kanilang gawain imbes na mag-alala sa kanilang kaligtasan. Halimbawa, kung alam nila na ang lugar ay sapat ang ilaw at ligtas, mas magiging komportable sila pagkatapos ng kanilang shift. Bukod dito, ang pagkakaroon ng mga espasyo para sa libangan—tulad ng gym o lounge—ay nakakatulong upang makarelaks ang mga manggagawa. Ang isang relaks na manggagawa ay karaniwang mas saya at mas produktibo. Ang CDPH ay naglalayong lumikha ng mga espasyo na hindi lamang tumutugon sa mga pangunahing pangangailangan kundi sumusuporta rin sa kabutihan ng mga manggagawa. Kapag komportable ang mga manggagawa sa kanilang tirahan, ito’y ipinapakita sa kanilang trabaho. Mas malaki ang posibilidad na aktibo at motibado sila, na humahantong sa mas mahusay na pagganap sa trabaho.

Kapag ang mga manggagawa ay pumupunta sa isang minahan, kailangan nila ng mabuting lugar para tumira. Ito ay tinatawag na accommodation para sa minahan. Mahalaga para sa mga manggagawa na pakiramdam nilang komportable at ligtas habang nagtatrabaho sila nang buong husay. Upang matiyak ang kalidad at komportabilidad sa minahan modular na tirahan , ang mga kumpanya tulad ng CDPH ay kailangang isaalang-alang ang ilang bagay. Una, dapat malinis at maayos ang mga kuwarto. Gusto ng mga manggagawa na bumalik sa isang magandang lugar pagkatapos ng mahabang araw. Dapat komportable ang mga kama, at dapat may sapat na espasyo para sa kanilang personal na gamit. Dapat may magandang ilaw sa bawat kuwarto upang makabasa o magpahinga ang mga manggagawa.

Why choose CDPH Tirahan sa Pagmimina?

Mga kaugnay na kategorya ng produkto

Hindi mo mahanap ang hinahanap mo?
Makipag-ugnayan sa aming mga consultant para sa iba pang mga produktong available.

Humingi ng Presyo Ngayon

Makipag-ugnayan