판금 프레스 기계라고 합니다. 이는 평평한 금속을 독특한 형상의 다이를 통해 가압하는 공정을 말합니다...">
,需要通过父级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);
}
});
})();
금속의 형태가 어떻게 제조되는지 궁금해 본 적이 있나요? 그 과정은 시트 메탈 프레스 기계 라고 합니다. 이는 특수 머신을 통해 평평한 금속을 다이를 통해 다양한 형태와 크기로 눌러내는 것을 의미합니다. 이는 필요한 형태로 금속을 구부리고 단조하여 원하는 모양을 만들어냅니다. Nadun은 자동차, 항공 우주 및 건물 산업 부문에 정확한 부품을 생산하기 위한 특수 머신을 보유하고 있습니다. 평면 금속 조각으로 형태를 만드는 것은 많은 기술과 연습이 필요합니다. 금속 작업 시, 우리는 최상의 결과를 보장하기 위해 다양한 방법에 숙련된 전문가 팀을 보유하고 있습니다. 이것이 바로 나두ン에서 하는 일입니다. 우리 교육의 주요 기술 중 하나는 에어 벤딩이라고 합니다. 이 방법은 단순히 컨투어된 모양인 다이를 사용하여 금속을 다이에 눌러 구부리는 것입니다. 에어 벤딩은 설계에서 유연성을 제공하면서도 정확하고 원래 설계에 충실할 수 있도록 해줍니다. 제가 말하는 것은, 모양이 품질을 잃지 않으므로 필요시 수정할 수 있다는 것입니다. 우리가 사용하는 다른 방법은 바텀링입니다. 비교하자면, 이 방법은 금속의 더 좁은 각도나 더 촘촘한 구부림을 생성합니다. 그러나 공기 구부림에 비해 설계 변경에 있어 유연하지 않습니다. 또한 우리는 '코인링'이라는 개념도 사용합니다. 코인링은 많은 스트레스를 이용하여 금속을 변형시키는 매우 강렬한 과정으로, 원하는 형태를 확실히 보장합니다. 마지막으로, 말단을 둥글게 구부리는 '컬링'이 있습니다. 이는 종이를 말듯이 금속을 둥글게 만드는 방식입니다. 모든 방법에는 장점과 단점이 있으므로 새로운 프로젝트를 시작하기 전에 신중히 하나를 선택해야 합니다. 부품이 작동하는 방식에 약간의 차이만 있어도 정확성이 시트 메탈 프레스 성형 과정에서 중요하기 때문에 실패로 이어질 수 있습니다. Nadun에서는 모든 것이 첫날부터 완벽하도록 스마트 도구와 독특한 컴퓨터 프로그램을 사용하고 있습니다. 우리는 그것을 만들기 전에 WriteOn이라는 컴퓨터 모델에서 설계합니다. 이것은 우리가 기계를 프로그래밍하고 샘플 부품을 만들어 테스트할 수 있도록 돕기 위함입니다. 이 샘플 부품을 만든 후, 우리는 특수 도구를 사용하여 이 샘플 부품을 측정하여 그것이 올바르고 우리의 허용 오차 내에 있는지 확인합니다. 샘플이 확인되면, 우리는 각 단계에서 올바른 일을 적절히 하도록 긴밀하게 감독하면서 본격적인 생산을 시작합니다. 시트 메탈은 형태로 가공하기 위해 염두에 두어야 할 특성이 있습니다. 이는 금속이 밀리고 당길 때 어떻게 반응하는지 설명하는 속성입니다. 금속의 두께, 경도 및 연성(신축성)은 프레스 성형 과정이 어떻게 작동하는지에 영향을 미칩니다. 나둔에서는 각 금속 조각의 이러한 속성을 신중하게 점검하고 모니터링하여 원하는 결과를 얻습니다. 각 프로젝트마다 우리는 최적의 금속 성형 방법을 배우기 위해 많은 테스트와 실험을 수행합니다. 그렇게 함으로써 금속의 특성을 활용하여 기능적이며 견고하고 지속 가능한 부품을 만들 수 있습니다. 우리는 시트 메탈 압출 성형에 많은 디자인과 형태를 적용할 수 있습니다. 이는 Nadun에서 고객들이 새로운 디자인 개념을 구상하도록 돕기 위해 사용하는 프로세스입니다. 우리 다수의 정확한 공정(에어 벤딩, 바텀링, 코인링, 컬링 등)을 통해 고객들의 요구를 충족하고 만족할 수 있는 독특한 형태를 만들 수 있습니다. 또한 우리는 새로운 소프트웨어와 도구를 활용하여 과거에는 할 수 없었던 새로운 디자인 아이디어를 발견합니다. 이를 통해 우리가 할 수 있는 한계를 탐구하고 독특한 부품을 제작할 수 있는 능력을 갖추게 됩니다. 나둔 머신리의 제품은 품질, 뛰어난 성능 및 오랜 기간 지속되는 서비스로 유명합니다. 나둔 머신리는 평균 10년 이상의 연구개발 경력을 갖춘 10명 이상의 연구개발 인력을 보유하고 있습니다. 이들은 시장의 변화하는 수요에 부응하기 위해 금속판재 프레스 성형 분야에서 끊임없이 혁신하고 제품을 개발해 나가고 있습니다. 나둔 머신리는 17년 이상의 경험을 바탕으로 금속 가공 기계를 제조 및 수출하는 선도 기업입니다. 당사의 주력 제품은 금속판재 프레스 성형기 및 유압 프레스이며, 또한 절단기와 벤딩기를 제공합니다. 당사 제품은 전 세계 150여 개국에 유통되며, 제조 기계 분야에서 새로운 기준을 제시하고 있습니다. 냉각 제품 분야에서 드래곤 앤 타이거(Dragon and Tiger) 브랜드와 템플 오브 헤븐(Temple of Heaven) 브랜드는 급증하는 시장 수요를 충족시키기 위해 다양한 소비자층과 사용 환경의 요구를 만족시킬 수 있는 제품군을 엄선하였다. 브랜드 구축을 주축으로 하되, 건강 관련 제품을 핵심으로 삼고, 사용자 경험을 기반으로 삼아, 시트 메탈 프레스 포밍(Sheet Metal Press Forming)은 건강 분야에서 세계적인 기업으로 자리매김하고자 한다. 당사는 매년 400대 이상의 얇은 금속판 프레스 성형 장비에 대해 설치 및 시운전 서비스를 제공합니다. 또한 매년 500세트에서 600세트에 이르는 다양한 제품을 제조합니다. 이들 제품은 ISO, CE, SGS 인증을 획득하였습니다. 당사의 탁월함에 대한 약속은 보유한 다수의 제품 혁신 특허와 수여된 영예의 인증서들에서도 명확히 드러납니다. 저작권 © 나둔 기계 제조 회사. 모든 권리 보유
-
개인정보 보호정책
나둔 머신리 매뉴팩처 코., 래드.
시트 메탈 프레스 성형
효율적인 시트 메탈 프레스 성형 기술

시트 메탈 성형에서의 정확성 달성하기

시트 메탈의 기계적 특성을 극대화하기

디자인의 한계를 넘어서기
Why choose 나둔(Nadun)
시트 메탈 프레스 성형?
우수한 품질과 성능:
회사의 전문성과 글로벌 네트워크:
다양한 제품
신뢰성 있는 제품 품질
원하는 내용을 찾지 못하셨나요?
지금 견적 요청하기
더 많은 이용 가능한 제품은 전문가와 상담해 주세요.문의하기