diff --git a/WebContent/WEB-INF/view/productionplanning/rawMaterialRequirementList.jsp b/WebContent/WEB-INF/view/productionplanning/rawMaterialRequirementList.jsp
index f99f6c6..9aa3ab4 100644
--- a/WebContent/WEB-INF/view/productionplanning/rawMaterialRequirementList.jsp
+++ b/WebContent/WEB-INF/view/productionplanning/rawMaterialRequirementList.jsp
@@ -46,8 +46,10 @@ var resultGrid;
var grid;
// 입력 행 번호
var rowSeq = 0;
-// M-BOM 옵션 데이터
+// M-BOM 옵션 데이터 (셀렉트박스용)
var mbomOptionsData = {};
+// M-BOM 품명 데이터 (OBJID -> PART_NAME 매핑)
+var mbomPartNameData = {};
$(document).ready(function(){
$('.select2').select2();
@@ -87,7 +89,14 @@ function fn_initMbomOptions() {
mbomOptionsData[val] = text;
}
});
+
+ // M-BOM 품명 데이터 초기화 (서버에서 전달받은 데이터)
+
+ mbomPartNameData["${item.OBJID}"] = "${item.PART_NAME}";
+
+
console.log("M-BOM 옵션:", mbomOptionsData);
+ console.log("M-BOM 품명:", mbomPartNameData);
}
// 입력 그리드 초기화
@@ -136,12 +145,12 @@ function fn_initInputGrid() {
return mbomOptionsData[value] || "";
},
cellEdited: function(cell) {
- // M-BOM 선택 시 품명 자동 입력
+ // M-BOM 선택 시 품명 자동 입력 (MBOM_HEADER.PART_NAME 사용)
var mbomObjid = cell.getValue();
var row = cell.getRow();
if(mbomObjid) {
- var mbomName = mbomOptionsData[mbomObjid] || "";
- row.update({PART_NAME: mbomName});
+ var partName = mbomPartNameData[mbomObjid] || "";
+ row.update({PART_NAME: partName});
} else {
row.update({PART_NAME: ""});
}
diff --git a/WebContent/WEB-INF/view/productionplanning/semiProductRequirementList.jsp b/WebContent/WEB-INF/view/productionplanning/semiProductRequirementList.jsp
index 1b36795..53c0beb 100644
--- a/WebContent/WEB-INF/view/productionplanning/semiProductRequirementList.jsp
+++ b/WebContent/WEB-INF/view/productionplanning/semiProductRequirementList.jsp
@@ -46,8 +46,10 @@ var resultGrid;
var grid;
// 입력 행 번호
var rowSeq = 0;
-// M-BOM 옵션 데이터
+// M-BOM 옵션 데이터 (셀렉트박스용)
var mbomOptionsData = {};
+// M-BOM 품명 데이터 (OBJID -> PART_NAME 매핑)
+var mbomPartNameData = {};
$(document).ready(function(){
$('.select2').select2();
@@ -87,7 +89,14 @@ function fn_initMbomOptions() {
mbomOptionsData[val] = text;
}
});
+
+ // M-BOM 품명 데이터 초기화 (서버에서 전달받은 데이터)
+
+ mbomPartNameData["${item.OBJID}"] = "${item.PART_NAME}";
+
+
console.log("M-BOM 옵션:", mbomOptionsData);
+ console.log("M-BOM 품명:", mbomPartNameData);
}
// 입력 그리드 초기화
@@ -136,12 +145,12 @@ function fn_initInputGrid() {
return mbomOptionsData[value] || "";
},
cellEdited: function(cell) {
- // M-BOM 선택 시 품명 자동 입력
+ // M-BOM 선택 시 품명 자동 입력 (MBOM_HEADER.PART_NAME 사용)
var mbomObjid = cell.getValue();
var row = cell.getRow();
if(mbomObjid) {
- var mbomName = mbomOptionsData[mbomObjid] || "";
- row.update({PART_NAME: mbomName});
+ var partName = mbomPartNameData[mbomObjid] || "";
+ row.update({PART_NAME: partName});
} else {
row.update({PART_NAME: ""});
}
diff --git a/WebContent/WEB-INF/view/purchaseOrder/deliveryMngAcceptanceList.jsp b/WebContent/WEB-INF/view/purchaseOrder/deliveryMngAcceptanceList.jsp
index 1983352..da96cd2 100644
--- a/WebContent/WEB-INF/view/purchaseOrder/deliveryMngAcceptanceList.jsp
+++ b/WebContent/WEB-INF/view/purchaseOrder/deliveryMngAcceptanceList.jsp
@@ -86,7 +86,8 @@ $(document).ready(function(){
var columns = [
// 요구사항: 품의서 No, 발주서 No, 프로젝트번호, 품번, 품명, 공급업체, 발주수량, 입고수량, 미입고수량, 검사성적서, 입고결과
{title:'TOTAL_SUPPLY_PRICE' ,field:'TOTAL_SUPPLY_PRICE' ,visible:false, frozen:true},
- {title:'TOTAL_DELIVERY_PRICE' ,field:'TOTAL_DELIVERY_PRICE' ,visible:false, frozen:true},
+ {title:'TOTAL_DELIVERY_PRICE' ,field:'TOTAL_DELIVERY_PRICE' ,visible:false, frozen:true},
+ {title:'TOTAL_NOT_DELIVERY_PRICE',field:'TOTAL_NOT_DELIVERY_PRICE',visible:false, frozen:true},
{headerHozAlign : 'center', hozAlign : 'center', minWidth : 130, widthGrow : 1, title : '품의서 No', field : 'PROPOSAL_NO',
formatter: fnc_createGridAnchorTag,
cellClick : function(e, cell) {
@@ -179,17 +180,18 @@ function fn_calculateTotalAmount(){
// 현재 그리드에 표시된 데이터 가져오기
var data = _tabulGrid.getData();
- var totalOrderAmount = 0; // 총 발주금액
+ var totalOrderAmount = 0; // 총 발주금액
var totalDeliveredAmount = 0; // 입고금액
var totalNotDeliveredAmount = 0; // 미입고금액
if(data.length > 0) {
data.forEach(function(row) {
- var rowTotalPrice = parseFloat(row.TOTAL_SUPPLY_PRICE || 0);
+ // SQL에서 계산된 값 사용
+ var rowSupplyPrice = parseFloat(row.TOTAL_SUPPLY_PRICE || 0);
var rowDeliveredPrice = parseFloat(row.TOTAL_DELIVERY_PRICE || 0);
- var rowNotDeliveredPrice = rowTotalPrice - rowDeliveredPrice;
+ var rowNotDeliveredPrice = parseFloat(row.TOTAL_NOT_DELIVERY_PRICE || 0);
- totalOrderAmount += rowTotalPrice;
+ totalOrderAmount += rowSupplyPrice;
totalDeliveredAmount += rowDeliveredPrice;
totalNotDeliveredAmount += rowNotDeliveredPrice;
});
diff --git a/src/com/pms/controller/ProductionPlanningController.java b/src/com/pms/controller/ProductionPlanningController.java
index 4298ba0..4b67033 100644
--- a/src/com/pms/controller/ProductionPlanningController.java
+++ b/src/com/pms/controller/ProductionPlanningController.java
@@ -1863,6 +1863,10 @@ public class ProductionPlanningController extends BaseService {
// M-BOM 목록 (셀렉트박스용)
code_map.put("mbom_list", commonService.bizMakeOptionList("", "", "productionplanning.getMbomListForSelect2"));
+ // M-BOM 목록 (품명 포함) - 품명 자동 입력용
+ List