60톤 유압 프레스는 금속 시트를 굽히기 위해 특별히 설계된 기계입니다. 이 정보는 2023년 10월까지의 데이터를 기반으로 학습되었습니다.">
,需要通过父级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);
}
});
})();
그 60 ton hydraulic press 은 금속 시트를 구부리는 특수 기계입니다. 2023년 10월까지 데이터를 학습했으며, 금속 가공 과정에서 매우 중요한 역할을 한다는 점을 염두에 두세요. 이 멋진 장치를 사용하면 시트 금속에 일관된 구부러짐을 추가할 수 있습니다. 즉, 다양한 프로젝트에 필요한 정확한 모양을 만들 수 있다는 의미입니다. 단순한 모양부터 복잡한 모양까지 모든 형태의 작업물을 만들기 위해 사용됩니다. 이전에는 금속 시트를 구부리는 작업이 매우 힘든 일이었습니다. 사람들은 자신의 힘과 망치와 같은 도구에만 의존할 수 있었기 때문에 금속을 구부리곤 했습니다. 이 과정은 번거로웠고 오류가 발생하기 쉬웠습니다. 그러나 현대 기술 덕분에 현대식 프레스 브레이크 머신이 등장하면서 금속 시트 구부리기가 더 쉽고 훨씬 효율적이 되었습니다. 이 새로운 장치들은 스마트하고 기술로 가득 차 있습니다. 이들은 실제 시트 메탈 조각에서 정확한 구부러짐을 생성하기 위해 내부에 맞춤형 컴퓨터 시스템이 설치되어 있습니다. 이 컴퓨터는 매우 정교해서, 실제로 구부리기 전에 구부러진 모양이 어떻게 될지 알려줄 수 있습니다. 이 말은 당신이 원하는 어떤 모양, 형태, 스타일의 것을 두려움 없이 만들 수 있다는 것을 의미합니다. 기계가 어려운 작업의 대부분을 대신 해줍니다! 모든 60 ton press 이들은 시트 금속을 다양한 각도로 구부릴 수 있도록 여러 기능을 갖추고 있어 전체 구부리는 과정을 쉽고 간단하게 만들어 줍니다. 일부 기계는 벤딩 도구의 각도와 위치를 자동으로 변환하는 독특한 기능을 가지고 있습니다. 금속을 먼저 옮기지 않고도 다양한 각도와 여러 위치에서 시트 금속을 구부릴 수 있습니다. 필요한 모양을 만드는 것이 훨씬 더 쉬워집니다. 다른 머신들은 벤딩 툴의 압력 조정을 할 수 있는 특별한 기능을 포함할 수도 있습니다. 이러한 가변성은 다른 작업도 가능하게 하며, 금속 시트에 다양한 모양을 만들 때 매우 유용합니다. 이 기능은 벤딩 과정을 더 잘 제어할 수 있게 해주고 원하는 결과를 보장합니다. 이들은 매번 정확한 굽힘을 제공하도록 설계되었습니다. 이 금속 두께 검사 게이지는 금속 시트의 변화나 편차를 감지할 수 있는 특수 센서를 사용합니다. 만약 머신이 어떤 차이를 감지한다면, 올바른 굽힘이 이루어지도록 조정할 수 있습니다. 이는 같은 형태를 반복적으로 재생산할 수 있도록 오류 없이 작동하며, 금속 작업에서 매우 중요합니다. 나둔(Nadun)은 프레스 브레이크 벤딩 머신을 제작하는 유명한 회사입니다. 그들의 기계는 다용도, 신뢰성 및 전반적인 실용성으로 잘 알려져 있습니다. 나둔: 나둔의 기계를 사용하면 강판에 원하는 어떤 형태의 절단 모양도 설계할 수 있습니다. 프로젝트의 크기가 무엇이든 상관없이 필요한 모양을 만들 수 있습니다. 소규모 작업장에서 대형 공장까지 이상적입니다. 냉각 솔루션 분야에서 드래곤(Dragon) 및 타이거(Tiger) 브랜드, 천단(Temple of Heaven) 브랜드는 시장의 다양한 수요를 충족시키기 위해 고객 유형과 사용 환경에 따라 유연하게 적용 가능한 다양한 제품군을 제공합니다. 당사가 건강 압력 브레이크 벤딩 머신(health press brake bending machine) 분야의 선도 기업이 되겠다는 비전은 브랜드 제품 라인 구축, 건강 관련 제품 개발 및 사용자 경험 향상에 기반하고 있습니다. 나둔(Nadun) 기계는 금속 가공 기계 분야의 선도적인 제조업체이자 수출업체로, 17년 이상의 풍부한 업력과 노하우를 보유하고 있습니다. 당사는 유압 프레스, 펀치 프레스, 전단기, 벤딩 기계, 수직 선반 등에 집중하고 있으며, 항공우주, 자동차 제조, 건설, 기계공학, 금속재료 공학 등 다양한 산업 분야에 서비스를 제공하고 있습니다. 당사의 제품인 프레스 브레이크 벤딩 머신(press brake bending machine)은 전 세계 150개 이상의 국가에 수출되어 금속 가공 기계 제조 분야의 새로운 기준을 수립하고 있습니다. 나둔 기계(Nadun Machinery) 제품은 품질, 뛰어난 성능 및 오랜 수명의 서비스로 유명합니다. 나둔 기계는 평균 10년 이상의 연구개발(R&D) 경력을 갖춘 10명 이상의 연구개발 인력을 보유하고 있습니다. 이들은 지속적으로 혁신을 주도하며, 시장의 변화하는 수요에 부응하는 프레스 브레이크 벤딩 머신(press brake bending machine)을 개발하고 있습니다. 회사는 매년 400여 고객사에 대해 설치 및 시운전 서비스를 제공합니다. 연간 500~600세트의 다양한 제품을 제조하며, 이 제품들은 ISO, CE, SGS 인증을 획득하였습니다. 당사는 다수의 제품 혁신 특허 및 공로 증서를 보유하고 있어, 프레스 브레이크 벤딩 머신 분야에 대한 전념을 입증하고 있습니다. 저작권 © 나둔 기계 제조 회사. 모든 권리 보유
-
개인정보 보호정책
나둔 머신리 매뉴팩처 코., 래드.
프레스 벤드링 머신
최신 프레스 브레이크 기술로 시트 메탈 가공 혁신

혁신적인 프레스 브레이크 벤딩 머신으로 벤딩 공정 간소화

최첨단 프레스 브레이크 벤딩 머신으로 일관성과 정확성 실현

다재다능하고 신뢰할 수 있는 프레스 브레이크 벤딩 머신으로 금속가공 혁명
Why choose 나둔(Nadun)
프레스 벤드링 머신?
다양한 제품
회사의 전문성과 글로벌 네트워크:
우수한 품질과 성능:
신뢰성 있는 제품 품질
원하는 내용을 찾지 못하셨나요?
지금 견적 요청하기
더 많은 이용 가능한 제품은 전문가와 상담해 주세요.문의하기