여러 품목(프로젝트) 거래명세서 동시 생성 시 생성한 품목 모두에 표시되도록.
This commit is contained in:
@@ -215,7 +215,16 @@
|
||||
return;
|
||||
}
|
||||
|
||||
// 거래명세서 출력 버튼은 항상 새로 작성 (저장된 데이터 무시)
|
||||
// 이미 거래명세서가 생성된 항목이 있는지 확인
|
||||
var alreadyCreated = selectedData.filter(function(row) {
|
||||
return row.HAS_TRANSACTION_STATEMENT === 'Y';
|
||||
});
|
||||
if(alreadyCreated.length > 0) {
|
||||
var projectNames = alreadyCreated.map(function(row) { return row.PROJECT_NO; }).join(', ');
|
||||
alert("이미 거래명세서가 생성된 항목이 있습니다.\n(" + projectNames + ")\n파란 폴더 아이콘을 클릭하여 확인해주세요.");
|
||||
return;
|
||||
}
|
||||
|
||||
localStorage.setItem('loadSavedStatement', 'false');
|
||||
|
||||
// 같은 거래처인지 확인
|
||||
@@ -233,15 +242,19 @@
|
||||
console.log(selectedData);
|
||||
localStorage.setItem('transactionStatementData', JSON.stringify(selectedData));
|
||||
|
||||
// 프로젝트 번호들을 수집
|
||||
// 프로젝트 번호/OBJID 수집
|
||||
var projectNos = selectedData.map(function(row) {
|
||||
return row.PROJECT_NO;
|
||||
}).join(',');
|
||||
var projectObjids = selectedData.map(function(row) {
|
||||
return row.OBJID;
|
||||
}).join(',');
|
||||
|
||||
// 새로 만든 거래명세서 팝업 열기
|
||||
var popup_width = 1000;
|
||||
var popup_height = 800;
|
||||
var url = "/salesMgmt/transactionStatementForm.do?projectNos=" + encodeURIComponent(projectNos);
|
||||
var url = "/salesMgmt/transactionStatementForm.do?projectNos=" + encodeURIComponent(projectNos)
|
||||
+ "&projectObjids=" + encodeURIComponent(projectObjids);
|
||||
fn_centerPopup(popup_width, popup_height, url);
|
||||
}
|
||||
|
||||
@@ -463,8 +476,9 @@ var columns = [
|
||||
cellClick: function(e, cell) {
|
||||
var data = cell.getRow().getData();
|
||||
var projectNo = data.PROJECT_NO;
|
||||
var projectObjid = data.OBJID;
|
||||
var hasStatement = data.HAS_TRANSACTION_STATEMENT === 'Y';
|
||||
if(projectNo) fn_openTransactionStatementPopup(projectNo, hasStatement);
|
||||
if(projectNo) fn_openTransactionStatementPopup(projectNo, projectObjid, hasStatement);
|
||||
}
|
||||
}
|
||||
];
|
||||
@@ -555,9 +569,9 @@ function fn_search(){
|
||||
|
||||
// 출하일 상세 내역 팝업
|
||||
// 거래명세서 팝업 열기 (단일 프로젝트)
|
||||
function fn_openTransactionStatementPopup(projectNo, hasStatement) {
|
||||
function fn_openTransactionStatementPopup(projectNo, projectObjid, hasStatement) {
|
||||
console.log("=== 거래명세서 팝업 열기 ===");
|
||||
console.log("projectNo:", projectNo);
|
||||
console.log("projectNo:", projectNo, "projectObjid:", projectObjid);
|
||||
console.log("hasStatement:", hasStatement);
|
||||
|
||||
if(!projectNo) {
|
||||
@@ -583,11 +597,11 @@ function fn_openTransactionStatementPopup(projectNo, hasStatement) {
|
||||
}
|
||||
|
||||
localStorage.setItem('transactionStatementData', JSON.stringify(projectData));
|
||||
// 파란폴더(저장된 경우)만 여기까지 도달 → DB 데이터 로드
|
||||
localStorage.setItem('loadSavedStatement', 'true');
|
||||
|
||||
// 거래명세서 팝업 열기
|
||||
var url = "/salesMgmt/transactionStatementForm.do?projectNos=" + encodeURIComponent(projectNo);
|
||||
// 거래명세서 팝업 열기 (OBJID 포함)
|
||||
var url = "/salesMgmt/transactionStatementForm.do?projectNos=" + encodeURIComponent(projectNo)
|
||||
+ "&projectObjids=" + encodeURIComponent(projectObjid);
|
||||
var popup_width = 900;
|
||||
var popup_height = 800;
|
||||
var left = (screen.width - popup_width) / 2;
|
||||
|
||||
@@ -506,8 +506,10 @@ function fn_loadData() {
|
||||
console.log("저장된 데이터 불러오기:", loadSaved);
|
||||
|
||||
if(loadSaved && gridData.length > 0) {
|
||||
// 저장된 거래명세서 불러오기
|
||||
fn_loadSavedStatement(gridData[0].PROJECT_NO, gridData);
|
||||
// 저장된 거래명세서 불러오기 (OBJID 기반 조회)
|
||||
var objid = fnc_checkNull("${param.projectObjids}").split(",")[0];
|
||||
if(!objid) objid = gridData[0].OBJID;
|
||||
fn_loadSavedStatement(objid, gridData);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -602,14 +604,14 @@ function fn_loadEmptyStatement(gridData) {
|
||||
}
|
||||
|
||||
// 저장된 거래명세서 불러오기
|
||||
function fn_loadSavedStatement(projectNo, gridData) {
|
||||
function fn_loadSavedStatement(projectObjid, gridData) {
|
||||
console.log("=== 저장된 거래명세서 불러오기 ===");
|
||||
console.log("projectNo:", projectNo);
|
||||
|
||||
console.log("projectObjid:", projectObjid);
|
||||
|
||||
$.ajax({
|
||||
url: '/salesMgmt/getSavedTransactionStatement.do',
|
||||
type: 'POST',
|
||||
data: { projectNo: projectNo },
|
||||
data: { projectObjid: projectObjid },
|
||||
success: function(response) {
|
||||
if(response.success && response.data && response.data.length > 0) {
|
||||
console.log("저장된 데이터:", response.data);
|
||||
@@ -950,6 +952,7 @@ function fn_save() {
|
||||
// 수정된 데이터 수집
|
||||
var data = {
|
||||
projectNos: "${param.projectNos}",
|
||||
projectObjids: "${param.projectObjids}",
|
||||
deliveryDate: $("#deliveryDateISO").val(),
|
||||
receiverName: $("#receiverName").text(),
|
||||
registrationNo: $("#registrationNo").text(),
|
||||
|
||||
Reference in New Issue
Block a user