입고관리 발주금액 표시 오류 수정
This commit is contained in:
@@ -86,7 +86,8 @@ $(document).ready(function(){
|
|||||||
var columns = [
|
var columns = [
|
||||||
// 요구사항: 품의서 No, 발주서 No, 프로젝트번호, 품번, 품명, 공급업체, 발주수량, 입고수량, 미입고수량, 검사성적서, 입고결과
|
// 요구사항: 품의서 No, 발주서 No, 프로젝트번호, 품번, 품명, 공급업체, 발주수량, 입고수량, 미입고수량, 검사성적서, 입고결과
|
||||||
{title:'TOTAL_SUPPLY_PRICE' ,field:'TOTAL_SUPPLY_PRICE' ,visible:false, frozen:true},
|
{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',
|
{headerHozAlign : 'center', hozAlign : 'center', minWidth : 130, widthGrow : 1, title : '품의서 No', field : 'PROPOSAL_NO',
|
||||||
formatter: fnc_createGridAnchorTag,
|
formatter: fnc_createGridAnchorTag,
|
||||||
cellClick : function(e, cell) {
|
cellClick : function(e, cell) {
|
||||||
@@ -179,17 +180,18 @@ function fn_calculateTotalAmount(){
|
|||||||
|
|
||||||
// 현재 그리드에 표시된 데이터 가져오기
|
// 현재 그리드에 표시된 데이터 가져오기
|
||||||
var data = _tabulGrid.getData();
|
var data = _tabulGrid.getData();
|
||||||
var totalOrderAmount = 0; // 총 발주금액
|
var totalOrderAmount = 0; // 총 발주금액
|
||||||
var totalDeliveredAmount = 0; // 입고금액
|
var totalDeliveredAmount = 0; // 입고금액
|
||||||
var totalNotDeliveredAmount = 0; // 미입고금액
|
var totalNotDeliveredAmount = 0; // 미입고금액
|
||||||
|
|
||||||
if(data.length > 0) {
|
if(data.length > 0) {
|
||||||
data.forEach(function(row) {
|
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 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;
|
totalDeliveredAmount += rowDeliveredPrice;
|
||||||
totalNotDeliveredAmount += rowNotDeliveredPrice;
|
totalNotDeliveredAmount += rowNotDeliveredPrice;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -4293,7 +4293,8 @@ SELECT POM.OBJID
|
|||||||
,POM.TOTAL_PRICE
|
,POM.TOTAL_PRICE
|
||||||
,POM.DISCOUNT_PRICE
|
,POM.DISCOUNT_PRICE
|
||||||
,POM.TOTAL_SUPPLY_UNIT_PRICE
|
,POM.TOTAL_SUPPLY_UNIT_PRICE
|
||||||
,POM.TOTAL_SUPPLY_PRICE
|
-- ,POM.TOTAL_SUPPLY_PRICE
|
||||||
|
,S1.TOTAL_SUPPLY_PRICE
|
||||||
,POM.NEGO_RATE
|
,POM.NEGO_RATE
|
||||||
,POM.MULTI_MASTER_YN
|
,POM.MULTI_MASTER_YN
|
||||||
,POM.MULTI_YN
|
,POM.MULTI_YN
|
||||||
@@ -4304,6 +4305,7 @@ SELECT POM.OBJID
|
|||||||
,S1.CUR_DELIVERY_DATE
|
,S1.CUR_DELIVERY_DATE
|
||||||
,S1.TOTAL_DELIVERY_QTY
|
,S1.TOTAL_DELIVERY_QTY
|
||||||
,S1.TOTAL_DELIVERY_PRICE
|
,S1.TOTAL_DELIVERY_PRICE
|
||||||
|
,S1.TOTAL_NOT_DELIVERY_PRICE
|
||||||
<!-- ,(S1.TOTAL_PO_QTY - S1.TOTAL_DELIVERY_QTY - S1.TOTAL_DEFECT_QTY) AS NON_DELIVERY_QTY -->
|
<!-- ,(S1.TOTAL_PO_QTY - S1.TOTAL_DELIVERY_QTY - S1.TOTAL_DEFECT_QTY) AS NON_DELIVERY_QTY -->
|
||||||
,((SELECT SUM(ORDER_QTY::NUMERIC) FROM PURCHASE_ORDER_PART AS O WHERE POM.OBJID::VARCHAR = O.PURCHASE_ORDER_MASTER_OBJID) - (S1.TOTAL_DELIVERY_QTY <!-- - S1.TOTAL_DEFECT_QTY --> )) AS NON_DELIVERY_QTY
|
,((SELECT SUM(ORDER_QTY::NUMERIC) FROM PURCHASE_ORDER_PART AS O WHERE POM.OBJID::VARCHAR = O.PURCHASE_ORDER_MASTER_OBJID) - (S1.TOTAL_DELIVERY_QTY <!-- - S1.TOTAL_DEFECT_QTY --> )) AS NON_DELIVERY_QTY
|
||||||
<!-- ,S1.TOTAL_DEFECT_QTY -->
|
<!-- ,S1.TOTAL_DEFECT_QTY -->
|
||||||
@@ -4355,19 +4357,23 @@ SELECT POM.OBJID
|
|||||||
LEFT OUTER JOIN(
|
LEFT OUTER JOIN(
|
||||||
SELECT POP.PURCHASE_ORDER_MASTER_OBJID
|
SELECT POP.PURCHASE_ORDER_MASTER_OBJID
|
||||||
,SUM(POP.ORDER_QTY::NUMERIC) AS TOTAL_PO_QTY
|
,SUM(POP.ORDER_QTY::NUMERIC) AS TOTAL_PO_QTY
|
||||||
,MAX(DH.RECEIPT_DATE) AS CUR_DELIVERY_DATE
|
,MAX(AP_AGG.MAX_RECEIPT_DATE) AS CUR_DELIVERY_DATE
|
||||||
,SUM(DH.RECEIPT_QTY::NUMERIC) AS TOTAL_DELIVERY_QTY
|
,SUM(COALESCE(AP_AGG.SUM_RECEIPT_QTY, 0)) AS TOTAL_DELIVERY_QTY
|
||||||
,SUM(pop.partner_price::NUMERIC * DH.RECEIPT_QTY::NUMERIC) AS TOTAL_DELIVERY_PRICE
|
-- 발주금액 = 단가 × 발주수량
|
||||||
|
,SUM(COALESCE(POP.PARTNER_PRICE::NUMERIC, 0) * COALESCE(POP.ORDER_QTY::NUMERIC, 0)) AS TOTAL_SUPPLY_PRICE
|
||||||
<!-- ,SUM(DH.ERROR_QTY::NUMERIC) AS TOTAL_DEFECT_QTY -->
|
-- 입고금액 = 단가 × 입고수량
|
||||||
<!-- ,MAX(DH.DELIVERY_DATE) AS CUR_DELIVERY_DATE
|
,SUM(COALESCE(POP.PARTNER_PRICE::NUMERIC, 0) * COALESCE(AP_AGG.SUM_RECEIPT_QTY, 0)) AS TOTAL_DELIVERY_PRICE
|
||||||
,SUM(DH.DELIVERY_QTY::NUMERIC) AS TOTAL_DELIVERY_QTY
|
-- 미입고금액 = 단가 × (발주수량 - 입고수량)
|
||||||
,SUM(DH.DEFECT_QTY::NUMERIC) AS TOTAL_DEFECT_QTY -->
|
,SUM(COALESCE(POP.PARTNER_PRICE::NUMERIC, 0) * (COALESCE(POP.ORDER_QTY::NUMERIC, 0) - COALESCE(AP_AGG.SUM_RECEIPT_QTY, 0))) AS TOTAL_NOT_DELIVERY_PRICE
|
||||||
FROM PURCHASE_ORDER_PART POP
|
FROM PURCHASE_ORDER_PART POP
|
||||||
LEFT OUTER JOIN ARRIVAL_PLAN DH
|
LEFT OUTER JOIN (
|
||||||
ON POP.OBJID = DH.ORDER_PART_OBJID
|
-- ARRIVAL_PLAN을 ORDER_PART_OBJID별로 먼저 집계
|
||||||
<!-- LEFT OUTER JOIN DELIVERY_HISTORY DH -->
|
SELECT ORDER_PART_OBJID
|
||||||
<!-- ON POP.PART_OBJID = DH.PART_OBJID -->
|
,SUM(RECEIPT_QTY::NUMERIC) AS SUM_RECEIPT_QTY
|
||||||
|
,MAX(RECEIPT_DATE) AS MAX_RECEIPT_DATE
|
||||||
|
FROM ARRIVAL_PLAN
|
||||||
|
GROUP BY ORDER_PART_OBJID
|
||||||
|
) AP_AGG ON POP.OBJID = AP_AGG.ORDER_PART_OBJID
|
||||||
GROUP BY POP.PURCHASE_ORDER_MASTER_OBJID
|
GROUP BY POP.PURCHASE_ORDER_MASTER_OBJID
|
||||||
) AS S1 ON POM.OBJID::VARCHAR = S1.PURCHASE_ORDER_MASTER_OBJID
|
) AS S1 ON POM.OBJID::VARCHAR = S1.PURCHASE_ORDER_MASTER_OBJID
|
||||||
LEFT OUTER JOIN PROJECT_MGMT AS CM
|
LEFT OUTER JOIN PROJECT_MGMT AS CM
|
||||||
|
|||||||
Reference in New Issue
Block a user