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

모든 카테고리
뒤로

디플링크가 독일 식품 포장 장비 제조업체를 위해 월 5만 개의 고정밀 304 스테인리스강 프레스 성형 커넥터를 공급한 사례

프로젝트 배경 및 과제

자동화 식품 포장 장비를 제조하는 독일의 선도적인 기업이 긴급 조달 요구 사항을 가지고 딥링크에 접근했습니다. 이 기업은 고속 식품 밀봉 및 충진 기계에 사용되는 핵심 부품인 304 스테인리스강 스탬핑 커넥터 를 안정적으로 생산할 수 있는 신뢰할 수 있는 중국 공급업체를 필요로 했습니다.

이 프로젝트에는 세 가지 절대 타협할 수 없는 요구 사항이 있었습니다.

  • 대량 생산: 매월 5만 개의 납품량과 일관된 로트 간 품질 유지.
  • 고정밀도: 모든 맞물림 표면에 대해 ±0.05mm의 허용 오차를 보장하여 자동화 포장 라인 모듈과의 원활한 조립을 실현.
  • 식품 등급 적합성: 모든 부품은 인증된 SUS304 스테인리스강으로 제조되어야 하며, 표면 오염물질 및 버러 없이 간접 식품 접촉 환경에 적합해야 합니다.

독일 구매처는 이전에 다른 두 공급업체와 시험 거래를 진행한 바 있습니다. 한 업체는 첫 3,000개 생산 후 허용 오차를 유지하지 못했고, 다른 업체는 불일치한 표면 마감으로 인해 고객 감사 시 미세 오염 우려가 발생했습니다.

“우리는 ±0.05mm를 목표치가 아닌 기준선으로 여기는 파트너가 필요했습니다. 딥링크는 첫날부터 이를 완벽히 이해했습니다.” — 독일 식품 포장 장비 OEM 프로젝트 책임자

metal stamping parts1.png

딥링크의 맞춤형 금속 스탬핑 솔루션

딥링크에서는 이 프로젝트를 단순한 스탬핑 주문이 아니라 전체 공정에 걸친 정밀 제조 과제로 접근했습니다 . 당사 엔지니어링 팀은 첫 번째 금형 가공 전에 포괄적인 DFM(설계 적합성 분석)을 수행하여 성공을 좌우할 세 가지 핵심 관리 포인트를 도출했습니다.

단계 1: 연속 금형 설계 및 소재 선정

커넥터 형상에는 다수의 벤딩, 피어싱, 그리고 두 개의 높은 정밀도 위치 결정 구멍이 포함되어 있었습니다. 당사 금형 엔지니어는 9스테이션 연속 금형 을 설계하여 304 스테인리스강의 가공 경화 특성을 최적화했습니다.

  • 재료: JIS G4304 SUS304 스테인리스강 코일, 두께 1.2mm, 바오스틸 인증 공급업체에서 조달된 소재로, 완전한 소재 추적성 인증서를 보유합니다.
  • 재료: 스테인리스강에서 다이 수명을 200만 스토크 이상으로 연장하기 위해 TiCN 코팅을 적용한 SKD11 공구강.
  • 스프링백 보정: 유한요소해석(FEA) 시뮬레이션을 통해 계산된 오버벤드 각도로, 스프링백 편차를 0.02mm 이하로 줄여 ±0.05mm 허용오차 범위 내에 충족.

단계 2: 정밀 스탬핑 양산

당사의 고속 프로그레시브 스탬핑 프레스 (200톤 용량, 60–120 SPM 조절 가능)에서 다음 공정 제어를 적용하여 양산 진행

관리 포인트 방법 사양
치수 정확도 라인 내 레이저 마이크로미터 실시간 모니터링, ±0.02mm 해상도
버 제어 정밀 연마된 다이 간격(재료 두께의 6%) 버 고도 ≤ 0.03mm
표면 품질 폐쇄 루프 윤활 시스템 스크래치 없음, 균일한 마감 처리
배치 추적성 각 부품에 레이저로 각인된 로트 코드 원자재부터 출하까지 완전한 추적성

9스테이션 프로그레시브 다이 결합 절단 → 천공 → 성형 → 코이닝 → 트리밍 단일 프레스 스트로크 사이클 내에서 45~55개/분의 순산출량을 달성함. 월 50,000개 생산은 프레스 용량의 약 20%에 불과하여, 증산을 위한 여유 공간이 충분함

metal stamping2.jpg단계 3: 공정 중 품질 검사

DeepLink의 39항목 품질 검사 시스템 세 단계에 걸쳐 적용됨

  1. 최초 부품 검사(FAI): 기능상 중요한 치수를 포함한 2D 도면에 대한 완전한 차원 검사 보고서. CMM을 이용한 검사 결과, 허용오차의 60%를 초과하는 모든 치수는 자동으로 금형 조정을 유발함.
  2. 공정 중 샘플링: 500개마다 10개의 시료를 채취하여 통과/불통과 게이지 검사와 표면 조도 측정(Ra ≤ 0.8μm 요구, 달성된 Ra 값: 0.4–0.6μm)을 실시함.
  3. 포장 전 최종 감사 절차: AQL 1.0, ISO 2859-1에 따른 레벨 II 샘플링으로 치수, 10배 확대 관찰 하의 버어 검사, 시각적 표면 품질 검사를 수행함.

단계 4: 식품 산업 기준에 부합하는 세척 및 포장

최종 용도가 식품 포장 장비임을 인식하고, 딥링크는 일반 산업용 포장 기준을 넘어 추가적인 스탬핑 후 처리 프로토콜을 적용함:

  • 초음파 탈지 공정: 스탬핑 오일 잔여물을 제거하여 식품 산업의 청결성 기준을 충족함.
  • 패시베이션 처리: 식품 공장 내 워시다운 환경에서 필수적인 304 스테인리스강의 자연 부식 저항성을 향상시킴.
  • 오염 방지 포장: 부품은 건조제가 포함된 밀봉 PE 봉지에 포장된 후 강화된 수출용 골판지 상자에 담깁니다. 각 상자에는 디지털 검사 보고서로 연결되는 고유 QR 코드가 부착되어 있습니다.

프로젝트 결과

메트릭 목표물 달성되었습니다
월간 생산량 50,000 개 50,000–55,000개
치수 허용 오차 ±0.05mm Cpk = 1.67 (사양 범위 내 99.99% 이상)
최초 합격률 ≥ 98% 99.2%
정시 배송 100% 100% (6개월 연속)
고객 감사 결과 통과 불일치 사항 없이 합격

6개월간의 지속적인 양산 후, 독일 고객사는 주문을 확대하여 두 가지 추가 커넥터 변형 제품을 포함시켰으며, 이로 인해 세 가지 SKU에 대한 월 총 생산량이 120,000개로 증가했습니다.

stamping metal4.jpg

글로벌 식품 장비 OEM들이 금속 성형 부품 공급업체로 딥링크(Deeplink)를 선택하는 이유

이 프로젝트는 딥링크(Deeplink)의 핵심 가치 제안을 보여주는 사례입니다. 고정밀 스테인리스강 성형 규제 산업 분야에서:

  • ISO 9001:2015 인증 전 공정 추적성을 갖춘 제조.
  • 자체 내진형 다이 설계 및 제작 — 외주 도구 제작 없음, 더 빠른 납기 기간, 보다 엄격한 품질 관리.
  • 자동화율 80% 6개의 생산 라인 전반에 걸쳐 대량 생산 시에도 일관된 품질을 보장합니다.
  • 초기 단계부터의 DFM 협업: 당사 엔지니어는 고객의 언어를 이해하며, 양산 시작 전에 가공성 최적화를 위한 설계를 지원합니다.
  • 식품 산업 관련 인식: 식품 등급 금속 부품에 대한 특수 요구 사항 — 소재 인증부터 오염 방지 포장까지 — 을 충분히 이해하고 있습니다.

맞춤형 금속 스탬핑 프로젝트 견적 받기

필요하신 경우 304 스테인리스강 커넥터 ,식품 등급 스탬프 부품 , 또는 고정밀 금속 부품 모든 산업 분야에 대해 딥링크는 전문 지식과 생산 역량을 갖추고 있습니다.

오늘 바로 당사 엔지니어링 팀에 문의하세요 →

  • 이메일: [email protected]
  • 전화/위챗: +86-18617745678
  • 위치: 중국 허베이성 창저우 — 글로벌 OEM 고객에게 신속한 국제 배송 서비스 제공.

창저우 딥링크 인터내셔널 서플라이 체인 소개: 딥링크는 중국에 기반을 둔 OEM 제조업체로, 맞춤형 시트 메탈 가공, 정밀 금속 스탬핑, 레이저 절단, CNC 가공, 딥 드로잉, 용접 및 리벳팅을 전문으로 합니다. 10년 이상의 경험과 5,000㎡ 이상의 제조 공간을 바탕으로, 자동차, 항공우주, 식품 장비, 신에너지, 산업 자동화 등 글로벌 고급 제조 분야에 빠르고 정확하며 신뢰할 수 있는 금속 부품을 공급합니다.

이전

전기차 배터리 부품 생산 최적화: 정밀 스탬핑 사례 연구

전체

DEEPLINK 맞춤형 금속 가공 사례: 특수 형상 스테인리스 스틸 와인 글라스의 정밀 성형 과제 극복

다음
추천 제품