Hệ thống pháp luật

BỘ XÂY DỰNG
-------

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
---------------

Số: 3985/BXD-KTXD
V/v xác định tổng thầu EPC

Hà Nội, ngày 05 tháng 9 năm 2023

 

Kính gửi: Công ty trách nhiệm hữu hạn KAJIMA Việt Nam

Bộ Xây dựng nhận được Văn bản số 02/DXHD-BXD ngày 11/7/2023 của Công ty trách nhiệm hữu hạn KAJIMA Việt Nam đề nghị hướng dẫn về việc xác định tổng thầu thiết kế - mua sắm vật tư, thiết bị - thi công xây dựng (EPC). Bộ Xây dựng có ý kiến như sau:

Theo quy định tại điểm g khoản 1 Điều 3 Nghị định số 37/2015/NĐ-CPĐề nghị Công ty trách nhiệm hữu hạn KAJIMA Việt Nam nghiên cứu, thực hiện theo quy định pháp luật./.

 


Nơi nhận:
- Như trên;
- TTr Bùi Hồng Minh (để b/c);
- Lưu: VT, Cục KTXD (BTB).

TL. BỘ TRƯỞNG
CỤC TRƯỞNG CỤC KINH TẾ XÂY DỰNG




Đàm Đức Biên

 



lồng nhau (bên trong) hay không function isInViewportAndTabNoiDung(element) { const rect = element.getBoundingClientRect(); const buffer = 1500; // Buffer to preload content below the viewport (approx. 50+ lines) const viewHeight = window.innerHeight || document.documentElement.clientHeight; const isInViewport = rect.top < viewHeight + buffer && rect.bottom >= 0; const isInTabNoiDung = $(element).closest('#tab_noi_dung_vb').length > 0; return isInViewport && isInTabNoiDung; } function getAddress(element) { const validTags = ['trichyeu', 'cancu', 'phan', 'chuong', 'muc', 'tieumuc', 'dieu', 'khoan', 'diem']; let parent = element.closest(validTags.join(',')); return parent ? $(parent).attr('address') : null; } function processTnplClasses($element) { const tnplKeysInLine = new Set(); // key = slug hoặc text (thường là slug) $element.find('tnpl').each(function () { const $tnpl = $(this); const tnplSlug = ($tnpl.attr('slug') || '').trim().toLowerCase(); const tnplKey = tnplSlug || $tnpl.text().trim().toLowerCase(); // Đã xử lý trong cùng dòng => bỏ if (tnplKeysInLine.has(tnplKey)) { return; } tnplKeysInLine.add(tnplKey); let tnplExists = false; // Chỉ duyệt các tnpl đã được tô màu (class on) $('tnpl.on').each(function () { const $existingTnpl = $(this); const existingSlug = ($existingTnpl.attr('slug') || '').trim().toLowerCase(); const existingKey = existingSlug || $existingTnpl.text().trim().toLowerCase(); if ( existingKey === tnplKey && isInViewportAndTabNoiDung($existingTnpl[0]) ) { tnplExists = true; return false; // break each } }); if (!tnplExists) { $tnpl.addClass('on'); } }); } function processQueue() { while (pendingRequests < maxConcurrentRequests && requestQueue.length > 0) { const task = requestQueue.shift(); pendingRequests++; task() .always(() => { pendingRequests--; processQueue(); }); } } function processVisibleParagraphs() { $('#tab_noi_dung_vb p:not([is-posted="1"])').each(function () { let $element = $(this); if (isInViewportAndTabNoiDung(this)) { $element.attr('is-posted', '1'); $element.addClass('loading-content'); let p_innerHTML = $element.html(); let address = null; if (cac_cau_hinh.loai_noi_dung.includes('docs')) { address = getAddress($element); } const isSubP = $element.parents('p').length > 0; if (isSubP && !allow_sub_p) { $element.removeClass('loading-content'); return; // Không gửi nếu không cho phép } const postData = { p_content: p_innerHTML, cac_cau_hinh, address }; if (isSubP && allow_sub_p) { postData.sub_p = 1; } requestQueue.push(() => $.ajax({ url: '//tnpl' + (Math.floor(Math.random() * 10) + 1) + '.hethongphapluat.com/tien-ich/tim.tien.ich.php', type: 'POST', data: postData, success: function(response) { $element.html(response); processTnplClasses($element); }, complete: function() { $element.removeClass('loading-content'); } }) ); processQueue(); } }); } $(window).on('scroll resize', function () { processVisibleParagraphs(); }); processVisibleParagraphs(); });