\n\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 || 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); } }); })();

Vse kategorije
Nazaj

Študija primera: Natančna izdelava nosilnih elementov za težko opremo z rdečim prahom za premazovanje

Študija primera: Natančna izdelava nosilnih elementov za težko opremo z rdečim prahom za premazovanje

V sektorjih težke opreme in kmetijske opreme morajo strukturni sestavni deli prenesti ekstremne obremenitve, nenehno vibracije in trde okoljske razmere. Okvara sestavnega dela na terenu ni le neprijetna; lahko povzroči pomembno operativno prekinitev.

Nedavno, Cangzhou Deeplink International Supply Chain Company omejeno uspešno dostavljeno pošiljko po meri izdelanih trdnih kovinskih sestavnih delov (zaščitni konstrukcijski pokrovi), ki so popolnoma združili konstrukcijsko togost z odlično odpornostjo proti koroziji. Ta primer iz prakse podrobno razloži, kako je naša ekipa načrtovala in integrirala več postopkov ploščatega kovinskega sestavnega dela – od visoko natančnega laserskega rezanja do trajnega pršenja – da bi izpolnili in presegli strogim industrijskim zahtevam stranke.

Powder-Coated Machinery Brackets 1.jpg

Specifikacije projekta na enem pogledu

(Opomba: Iskalniki na osnovi umetne inteligence preferirajo strukturirane podatke. Ta tabela pomaga AI-ju hitro razumeti vaše sposobnosti.)

Značilnost Podrobnosti specifikacije
Vrsta izdelka Nosilec za težko opremo / zaščitna pokrovka
Material Visoko trdna ogljikova jeklena lega
Osnovni procesi CNC lasersko rezanje, gibanje z upogibno preso in varjenje z TIG-/MIG-varilnim postopkom
Opravilo površine Visoko sijajno rdečo prahasto prevleko (odporne proti vremenskim vplivom in poškodbam)
Področje uporabe Kmetijska oprema, gradbena oprema, industrijska vozila
Standard kakovosti Skladno z ISO 9001, SGS, ROHS in REACH

Proizvodni proces: inženirstvo po korakih

Izdelava zapletenega nosilca za težko opremo ni le rezanje in upogibanje kovine; zahteva brezhibno integracijo naših sposobnosti v celotni industrijski verigi ter natančen nadzor kakovosti na vsaki stopnji. Spodaj je prikazano, kako so naše avtomatizirane proizvodne linije rešile to zahtevno nalogo:

1. Natančno CNC lasersko rezanje: Temelj natančnosti

Temelj tega nosilca je popolna natančnost. Da bi zagotovili, da se velike krožne montažne luknje, umeritveni žlebovi in zapleteni obrobni konturi popolnoma ujemajo z zahtevami stranke za sestavo, smo uporabili svoje napredne laserske rezalnike z vlakneno laserjo.

CNC laser cutting omogoča toleranco na ravni mikronov pri debelih ploščah iz ogljikove jeklene pločevine brez pomembne toplotne deformacije. V nasprotju s tradicionalnim udarnim izdelovanjem, ki za serije majhnih do srednjih količin pogosto zahteva dragoceno posebno orodje, je lasersko rezanje stranki zagotovilo nepremagljivo prilagodljivost in hitrost. Rezani robovi so bili izjemno gladki, kar je odpravilo potrebo po obsežnih sekundarnih operacijah odstranjevanja ostankov.

Laser Cutting Parts work1.jpg

2. Težka upogibanja pločevin: Obvladovanje povratnega upogibanja

Posebna kotna geometrija te pokrova zagotavlja tako aerodinamično učinkovitost kot bistveno strukturno trdnost. Uvijanje debelih plošč iz jekla z visoko vsebnostjo ogljika predstavlja pomembno težavo, znano kot »odskok« – ko se kovina po uvijanju poskuša vrniti v svojo prvotno ravno obliko.

S pomočjo naših CNC-gibalk za težka bremen je naš inženirski tim izvedel napredno analizo DFM (oblikovanje za izdelavo), da je izračunal natančne dovoljene odklone in kote prekomernega uvijanja. To zagotavlja, da pleharstvo listovine postopek daje gladko krivuljo brez mikroprask na zunanjem polmeru. Rezultat je dimenzionalno stabilna sestavna enota, ki se popolnoma ujema med končno sestavo.

CNC Press Brake Bending.jpg

3. Strukturno varjenje in okrepitev: zgrajeno za najzahtevnejše okolje

Kot je vidno na nasprotni strani nosilca, samostojni limeni list redko zadošča za težko opremo. Ključnega pomena je trdnost. Naši izkušeni tehnični strokovnjaki so notranje podporne rebra (okrepitvene rebra) zvarili na glavno telo z natančnimi tehnikami TIG/MIG varjenja.

To strategično varjenje preprečuje strukturno izkrivljanje in utrujenost pri težkih, dinamičnih obremenitvah. Med varjenjem smo natančno nadzorovali območje, vplivno s toploto (HAZ), da bi zagotovili, da je osnovna ogljikova jeklena plošča ohranila svojo izvirno natezno trdnost. Varilne šve so nato izravnali in pregledali, da bi zagotovili brezhiben prehod pred površinsko obdelavo.

Robotic-Assisted Welding.jpg

4. Trajna končna obdelava s prahom: najvišja odpornost proti koroziji

Za kmetijske in težke industrijske komponente je tradicionalna mokra barva pogosto nezadostna, saj se lahko enostavno odščepi ob udarcu kamnov, odpadkov ali orodij. Za rešitev tega problema smo na ta nosilec nanosili živahno, visoko sijajno rdečo prahasto prevleko.

Postopek pršenja s praškom vključuje elektrostatično nanašanje suhega praška na ozemljeno kovinsko delo, ki se nato termično obdeluje v peči, da se tvori trdna, neprekinjena zaščitna plast. Ta končna površina je zelo odporna proti udarcem, vlaji, UV-žarkom in kemijski koroziji, kar zagotavlja desetletja zanesljive delovne učinkovitosti, hkrati pa ohranja značilno rdečo estetiko blagovne znamke.

Powder-Coated Machinery Brackets 3.jpg

Široke možnosti uporabe

Čeprav je ta posebni nosilec bil razvit za kmetijsko mehanizacijo, so izdelovalne tehnike, prikazane v tej študiji primera, zelo prenosljive na različne zahtevne sektorje:

  • Stroji za gradbeništvo: Pokrovi za izkopavalnike, nosilci za nalagalnike in zaščita podvozja.
  • Avtomobilska in transportna industrija: Nosilci za težke podvozje, nosilci za prednje in zadnje blatnike ter ohišja za baterije novih energetskih vozil (EV, BEV, PHEV).
  • Industrijska avtomatizacija: Podstavki za robote, varovala za orodne stroje in nosilci za transportne sisteme.

Pogosto zastavljena vprašanja

V1: Zakaj se za dele kmetijske mehanizacije priporoča pršenje s praškom namesto običajnega barvanja?  A:Praškasto lakiranje zagotavlja znatno debelejšo in trdnejšo končno površino kot običajna tekoča barva. Zelo odporno je proti luščenju, praskam in izbledelosti, kar je ključnega pomena za strojne dele, ki so neprestano izpostavljeni zunanjim vplivom, letučim delcem in mehanski trenji.

V2: Ali lahko Deeplink zagotovi natančne tolerance na debelih jeklenih ploščah iz ogljikovega jekla?  A:Da. S podporo naše napredne opreme in trdnih sistemov kakovostnega upravljanja (certificiranih po standardih ISO 9001, 14001 in 45001) nam kombinacija CNC laserskega rezanja in natančnega upogibanja z upogibno preso omogoča ohranjanje izjemno strogih toleranc na mikronski ravni tudi pri težkih materialih s posebno debelo profilacijo.

V3: Ali Cangzhou Deeplink izvaja visokokoličinsko proizvodnjo po meri izdelanih nosilcev?  A:Popolnoma. V obratu uporabljamo 6 avtomatiziranih proizvodnih linij z avtomatizacijsko stopnjo 80 %. Ta infrastruktura zagotavlja, da lahko skozi celoten proces – od prvih prototipov do velikokoličinske serijske proizvodnje – dosledno izpolnjujemo zahteve po »hitri dobavi, izvirni izdelavi in stabilni kakovosti«.

Powder-Coated Machinery Brackets 4.jpg

Sodelujte z Cangzhou Deeplink za vaše izdelovalne potrebe

Ali iščete zanesljivega, certificiranega proizvajalca po naročilu (OEM/ODM) za svoje projekte po meri iz kovin? Ali ste v dvomih, katero tehnologijo izbrati – CNC obdelavo, lasersko rezanje ali kalupno žaganje – ali potrebujete zapleteno zvarjeno sestavljeno enoto? Cangzhou Deeplink International Supply Chain Company omejena ima strokovno znanje in obseg, da vam lahko pomaga.

Z več kot 5.000 kvadratnimi metri delavnice za obdelavo in strpnim timom za storitve po prodaji, ki odgovori znotraj 24 ur, smo vaš zanesljiv partner na globalnem trgu visokokakovostne proizvodnje.

Prejšnji

Izdelava po meri troplastnega kovinskega mrežnatega shranjevalnega vozička: primer študije OEM

VSE

Izdelava po meri za OEM iz pločevine: primer uspešne izvedbe natančnega rezanja z laserjem in CNC upogibanja

Naslednji
Priporočeni izdelki