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

Tutte le categorie
Indietro

Come Deeplink ha fornito 50.000 connettori per stampaggio in acciaio inossidabile 304 ad alta precisione al mese per un produttore tedesco di attrezzature per il confezionamento alimentare

Contesto del progetto e sfida

Un importante produttore tedesco di attrezzature automatizzate per il confezionamento alimentare ha contattato Deeplink con un’urgente esigenza di approvvigionamento. L’azienda necessitava di un fornitore cinese affidabile in grado di produrre connettori stampati in acciaio inossidabile 304 — componenti critici utilizzati nelle loro macchine ad alta velocità per la sigillatura e il riempimento di alimenti.

Il progetto prevedeva tre requisiti imprescindibili:

  • Volume elevato: 50.000 pezzi al mese con qualità costante da lotto a lotto.
  • Tolleranza Stretta: tolleranza di ±0,05 mm su tutte le superfici di accoppiamento per garantire un montaggio perfetto con i moduli della linea automatizzata di confezionamento.
  • Conformità agli standard per contatto con alimenti: Tutti i componenti devono essere realizzati in acciaio inossidabile certificato SUS304, privo di contaminanti superficiali e bave, adatto per ambienti a contatto indiretto con alimenti.

L’acquirente tedesco aveva già effettuato prove con altri due fornitori. Uno non era riuscito a mantenere le tolleranze dopo i primi 3.000 pezzi; l’altro presentava finiture superficiali irregolari che avevano sollevato preoccupazioni di micro-contaminazione durante gli audit dei clienti.

«Avevamo bisogno di un partner che considerasse la tolleranza di ±0,05 mm non come un obiettivo, ma come un valore di base. Deeplink ha compreso questo fin dal primo giorno.» — Responsabile del progetto, produttore tedesco di impianti per il confezionamento alimentare

metal stamping parts1.png

Soluzione personalizzata Deeplink per stampaggio metallico

Presso Deeplink, abbiamo affrontato questo progetto non come un semplice ordine di stampaggio, ma come un problema di produzione di precisione su catena completa . Il nostro team di ingegneria ha condotto un’analisi DFM (Design for Manufacturability) completa prima della realizzazione del primo utensile, identificando tre punti critici di controllo che avrebbero determinato il successo.

Fase 1: Progettazione dello stampo progressivo e selezione del materiale

La geometria del connettore prevedeva molteplici piegature, forature e due fori di posizionamento con tolleranze molto strette. I nostri ingegneri per gli utensili hanno progettato uno stampo progressivo a 9 stazioni ottimizzato per le caratteristiche di indurimento per deformazione dell’acciaio inossidabile 304:

  • Materiale: Nastro in acciaio inossidabile JIS G4304 SUS304, spessore 1,2 mm, proveniente da un laminatoio certificato Baosteel, con certificati completi di tracciabilità del materiale.
  • Il materiale: Acciaio per utensili SKD11 con rivestimento TiCN per estendere la durata dello stampo oltre i 2 milioni di colpi su acciaio inossidabile.
  • Compensazione del rimbalzo elastico: Angoli di piegatura eccessiva calcolati mediante simulazione FEA, riducendo la deviazione da rimbalzo a meno di 0,02 mm — ben all’interno della tolleranza di ±0,05 mm.

Fase 2: Produzione di stampaggio di precisione

La produzione è stata eseguita sul nostro pressa progressiva ad alta velocità (capacità di 200 tonnellate, regolabile da 60 a 120 spm) con i seguenti controlli di processo:

Punto di Controllo Metodo Specifiche
Precisione Dimensionale Micrometro laser in linea Monitoraggio in tempo reale, risoluzione ±0,02 mm
Controllo del bavetto Gioco dello stampo rettificato con precisione (6% dello spessore del materiale) Altezza del bordo di taglio ≤ 0,03 mm
Qualità della superficie Sistema di lubrificazione a circuito chiuso Nessun grippaggio, finitura uniforme
Tracciabilità del lotto Codici lotto marcati al laser su ciascun componente Tracciabilità completa dal materiale alla spedizione

Lo stampo progressivo a 9 stazioni combinato taglio → perforazione → formatura → coniazione → rifilatura in un singolo ciclo di corsa della pressa, raggiungendo una produzione netta di 45–55 pezzi al minuto. Con 50.000 pezzi/mese, ciò rappresentava solo circa il 20% della capacità della pressa, lasciando ampio spazio per l’aumento del volume produttivo

metal stamping2.jpgFase 3: Ispezione qualità in-process

DeepLink's sistema di ispezione qualità a 39 punti è stato implementato in tre fasi:

  1. Ispezione del primo articolo (FAI): Relazione dimensionale completa rispetto al disegno 2D, compresa la verifica con macchina di misura a coordinate (CMM) di tutte le dimensioni critiche per il funzionamento. Qualsiasi dimensione che superi il 60% della tolleranza attiva un aggiustamento automatico dell’utensile.
  2. Campionamento in corso d'opera: Ogni 500 pezzi, vengono prelevati 10 campioni per controlli con calibri a passa/non passa e misurazione della rugosità superficiale (valore Ra ≤ 0,8 μm richiesto; valore ottenuto Ra 0,4–0,6 μm).
  3. Verifica finale prima dell’imballaggio: AQL 1,0, livello II di campionamento secondo ISO 2859-1, che copre le dimensioni, l’ispezione delle bave con ingrandimento 10× e il controllo visivo della qualità superficiale.

Fase 4: Pulizia e imballaggio conformi agli standard per il settore alimentare

Tenendo conto dell’utilizzo finale nell’equipaggiamento per il confezionamento alimentare, Deeplink ha implementato protocolli aggiuntivi post-stampaggio, oltre a quelli standard per l’imballaggio industriale:

  • Sgrassaggio ad ultrasuoni: Rimuove i residui di olio da stampaggio per raggiungere gli standard di pulizia richiesti dal settore alimentare.
  • Trattamento di Passivazione: Migliora la naturale resistenza alla corrosione dell’acciaio inossidabile 304, fondamentale negli ambienti soggetti a lavaggi intensi negli stabilimenti alimentari.
  • Imballaggio anti-contaminazione: I componenti sono imballati in sacchetti di polietilene sigillati con essiccante, quindi inseriti in scatole per l'esportazione rinforzate. Ogni scatola riporta un codice QR univoco che collega alla relazione digitale di ispezione.

Risultati del progetto

Metrica Obiettivo Ottenuto
Produzione mensile 50,000 pz 50.000–55.000 pezzi
Tolleranza dimensionale ±0,05mm Cpk = 1,67 (≥99,99% entro le specifiche)
Resa al Primo Passaggio ≥ 98% 99.2%
Consegna tempestiva 100% 100% (6 mesi consecutivi)
Risultato dell'audit del cliente Superato Superato senza alcuna non conformità

Dopo sei mesi di produzione continua, il cliente tedesco ha ampliato il proprio ordine includendo due ulteriori varianti di connettore, portando il volume mensile complessivo a 120.000 pezzi su tre referenze (SKU).

stamping metal4.jpg

Perché i produttori OEM globali di attrezzature per l'industria alimentare scelgono Deeplink per i componenti in lamiera metallica

Questo progetto illustra la proposta di valore fondamentale di Deeplink per stampaggio ad alta precisione in acciaio inossidabile in settori regolamentati:

  • Certificato ISO 9001:2015 produzione con tracciabilità completa del processo.
  • Progettazione e fabbricazione interna di stampi progressivi — nessun appalto esterno per gli utensili, tempi di consegna più rapidi, maggiore controllo.
  • tasso di automazione dell’80% su 6 linee di produzione garantisce coerenza su larga scala.
  • Collaborazione DFM fin dal primo giorno: i nostri ingegneri parlano la vostra lingua e ottimizzano i progetti per la producibilità ancor prima dell’avvio della produzione.
  • Consapevolezza del settore alimentare: comprendiamo i requisiti specifici dei componenti metallici per uso alimentare — dalla certificazione dei materiali all’imballaggio privo di contaminazioni.

Richiedi un preventivo per il tuo progetto personalizzato di stampaggio metallico

Che tu abbia bisogno connettori in acciaio inossidabile 304 ,componenti stampati per uso alimentare , o parti metalliche ad alta precisione per qualsiasi settore, Deeplink dispone dell'esperienza e della capacità necessarie per garantire consegne puntuali.

Contatta oggi stesso il nostro team di ingegneria →

  • Email: [email protected]
  • Telefono/WhatsApp: +86-18617745678
  • Sede: Cangzhou, Hebei, Cina — serviamo produttori OEM globali con spedizioni internazionali rapide.

Informazioni su Cangzhou Deeplink International Supply Chain: Deeplink è un produttore OEM con sede in Cina specializzato nella fabbricazione personalizzata di lamiere, nello stampaggio metallico di precisione, nel taglio laser, nella lavorazione CNC, nello stampaggio a profondità elevata (deep drawing) e nella saldatura e rivettatura. Con oltre 10 anni di esperienza e una superficie produttiva di oltre 5.000 mq, forniamo parti metalliche rapide, precise e affidabili ai principali settori manifatturieri globali, tra cui automotive, aerospaziale, attrezzature per il settore alimentare, nuove energie e automazione industriale.

Precedente

Ottimizzazione della produzione di componenti per batterie EV: uno studio di caso sulla stampatura di precisione

TUTTE

Pratica DEEPLINK di lavorazione personalizzata dei metalli: superare le sfide della formatura di precisione per calici in acciaio inossidabile di forma speciale

Successivo
Prodotti consigliati