견적요청서 입고요청일 컬럼 추가, 견적 수신 후 단가, 입고요청일 입력시 mbom_detail 에 업데이트(품의서에 따라가도록 하기 위해)

This commit is contained in:
2026-02-09 18:08:44 +09:00
parent 091e7723d4
commit 8eb82bd0ee
4 changed files with 26 additions and 7 deletions

View File

@@ -306,6 +306,17 @@ function fn_initGrid() {
}
});
// 입고요청일 (수정가능 - 달력 선택)
columns.push({
headerHozAlign: 'center',
hozAlign: 'center',
width: 130,
title: '<span style="background-color: #FFFF00; padding: 2px 5px;">입고요청일</span>',
field: 'DELIVERY_REQUEST_DATE',
editor: 'date',
editable: true
});
// // 총단가 (자동계산) - 주석처리
// columns.push({
// headerHozAlign: 'center',

View File

@@ -175,7 +175,7 @@
function fn_openSaleRegPopup(orderNo, saleNo){
var popup_width = 850;
var popup_height = 550;
var popup_height = 400;
// 한글 프로젝트 번호 인코딩 처리
var url = "/salesMgmt/salesRegForm.do?orderNo=" + encodeURIComponent(orderNo) + "&saleNo=" + (saleNo ? encodeURIComponent(saleNo) : "");
fn_centerPopup(popup_width, popup_height, url);
@@ -187,7 +187,7 @@
console.log("rowData:", rowData);
var popup_width = 850;
var popup_height = 550;
var popup_height = 420;
// 신규 판매등록: orderNo와 잔량 전달 (saleNo 없음)
var params = "orderNo=" + encodeURIComponent(rowData.PROJECT_NO);
@@ -649,8 +649,8 @@ function fn_splitShipment(){
}
// 분할출하 팝업 열기
var popup_width = 800;
var popup_height = 600;
var popup_width = 900;
var popup_height = 450;
var url = "/salesMgmt/splitShipmentForm.do?projectNo=" + encodeURIComponent(projectNo);
fn_centerPopup(popup_width, popup_height, url);
}

View File

@@ -5076,6 +5076,7 @@ ORDER BY V.PATH2
QRD.UNIT_PRICE,
QRD.REMARK,
QRD.REG_DATE,
QRD.DELIVERY_REQUEST_DATE,
-- 마스터 정보
QRM.VENDOR_TYPE,
QRM.VENDOR_OBJID,
@@ -5160,11 +5161,12 @@ ORDER BY V.PATH2
)
</insert>
<!-- 견적요청서 상세 단가 업데이트 -->
<!-- 견적요청서 상세 단가/입고요청일 업데이트 -->
<update id="updateQuotationRequestDetailPrice" parameterType="map">
UPDATE QUOTATION_REQUEST_DETAIL SET
UNIT_PRICE = #{UNIT_PRICE}::NUMERIC,
TOTAL_PRICE = #{QTY}::NUMERIC * #{UNIT_PRICE}::NUMERIC,
DELIVERY_REQUEST_DATE = CASE WHEN #{DELIVERY_REQUEST_DATE} IS NOT NULL AND #{DELIVERY_REQUEST_DATE} != '' THEN #{DELIVERY_REQUEST_DATE} ELSE NULL END,
EDIT_DATE = NOW()
WHERE OBJID = #{OBJID}::NUMERIC
</update>
@@ -5191,6 +5193,9 @@ ORDER BY V.PATH2
<if test="VENDOR_TYPE == 'PROCESSING'">
PROCESSING_UNIT_PRICE = #{UNIT_PRICE}::NUMERIC
</if>
<if test="DELIVERY_REQUEST_DATE != null and DELIVERY_REQUEST_DATE != ''">
, DELIVERY_REQUEST_DATE = #{DELIVERY_REQUEST_DATE}
</if>
, EDIT_DATE = NOW()
WHERE OBJID IN (
SELECT MD2.OBJID

View File

@@ -2458,19 +2458,22 @@ public class SalesMngService {
String salesRequestPartObjid = CommonUtils.checkNull(detail.get("SALES_REQUEST_PART_OBJID"));
String unitPrice = CommonUtils.checkNull(detail.get("UNIT_PRICE"));
String qty = CommonUtils.checkNull(detail.get("QTY"));
String deliveryRequestDate = CommonUtils.checkNull(detail.get("DELIVERY_REQUEST_DATE"));
// 1. 견적요청서 상세 단가 업데이트
// 1. 견적요청서 상세 단가/입고요청일 업데이트
Map updateParam = new HashMap();
updateParam.put("OBJID", detailObjid);
updateParam.put("UNIT_PRICE", unitPrice);
updateParam.put("QTY", qty);
updateParam.put("DELIVERY_REQUEST_DATE", deliveryRequestDate);
sqlSession.update("salesMng.updateQuotationRequestDetailPrice", updateParam);
// 2. 구매리스트 단가 업데이트
// 2. 구매리스트 단가/입고요청일 업데이트
Map purchaseUpdateParam = new HashMap();
purchaseUpdateParam.put("SALES_REQUEST_PART_OBJID", salesRequestPartObjid);
purchaseUpdateParam.put("UNIT_PRICE", unitPrice);
purchaseUpdateParam.put("VENDOR_TYPE", vendorType);
purchaseUpdateParam.put("DELIVERY_REQUEST_DATE", deliveryRequestDate);
sqlSession.update("salesMng.updatePurchaseListPriceFromQuotation", purchaseUpdateParam);
}