등록된 파일이 없습니다.
");
+ }
+ }
+ });
+ }
+
+ // 사업자등록증 파일 보기
+ function viewBusRegFile(fileObjId){
+ window.open("/common/downloadFile.do?objId="+fileObjId, "_blank");
+ }
+
+ // 사업자등록증 파일 삭제
+ function deleteBusRegFile(fileObjId){
+ if(!confirm("파일을 삭제하시겠습니까?")){
+ return;
+ }
+
+ $.ajax({
+ url: "/common/deleteFile.do",
+ type: "POST",
+ data: {objId: fileObjId},
+ dataType: "json",
+ success: function(data){
+ Swal.fire("삭제되었습니다.");
+ loadBusRegFile();
+ },
+ error: function(){
+ Swal.fire("삭제 중 오류가 발생했습니다.");
+ }
+ });
+ }
function saveOEMInfo(){
if(fnc_valitate("oemForm")){
@@ -36,22 +294,25 @@
// 만약 Promise리턴을 받으면,
if (result.isConfirmed) { // 만약 모달창에서 confirm 버튼을 눌렀다면
- $.ajax({
- url:"/contractMgmt/saveSupMgmtInfo.do",
- type:"POST",
- data:$("#oemForm").serialize(),
- dataType:"json",
- async:true,
- success:function(data){
- if(data.result!=''){
- alert('저장되었습니다');
- }
- opener.fn_search();
- self.close();
- },
- error: function(jqxhr, status, error){
- }
- });
+ // 먼저 사업자등록증 파일 업로드 후 저장
+ uploadBusRegFile(function(){
+ $.ajax({
+ url:"/contractMgmt/saveSupMgmtInfo.do",
+ type:"POST",
+ data:$("#oemForm").serialize(),
+ dataType:"json",
+ async:true,
+ success:function(data){
+ if(data.result!=''){
+ alert('저장되었습니다');
+ }
+ opener.fn_search();
+ self.close();
+ },
+ error: function(jqxhr, status, error){
+ }
+ });
+ });
}
});
@@ -148,40 +409,18 @@
|
diff --git a/compile_only.sh b/compile_only.sh
index fba2da3..46c789a 100755
--- a/compile_only.sh
+++ b/compile_only.sh
@@ -53,7 +53,10 @@ echo "DEBUG: Effective classpath for javac: $EFFECTIVE_CLASSPATH"
# src 폴더 내의 모든 .java 파일 컴파일
echo "Compiling Java files for development..."
-find src -name "*.java" -print0 | xargs -0 javac -encoding UTF-8 -source 1.7 -target 1.7 -d WebContent/WEB-INF/classes -cp "$EFFECTIVE_CLASSPATH"
+# Java 7 호환 바이트코드 생성을 위한 추가 옵션
+# -source 1.7 -target 1.7: Java 7 문법 및 바이트코드 버전 사용
+# -Xlint:-options: 경고 메시지 억제
+find src -name "*.java" -print0 | xargs -0 javac -encoding UTF-8 -source 1.7 -target 1.7 -Xlint:-options -d WebContent/WEB-INF/classes -cp "$EFFECTIVE_CLASSPATH"
if [ $? -ne 0 ]; then
echo "Java compilation failed. Exiting script."
exit 1
diff --git a/database/add_manager_columns_to_supply_mng.sql b/database/add_manager_columns_to_supply_mng.sql
new file mode 100644
index 0000000..5f3ec65
--- /dev/null
+++ b/database/add_manager_columns_to_supply_mng.sql
@@ -0,0 +1,24 @@
+-- 공급업체 관리 테이블에 담당자 5명 정보 컬럼 추가
+
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER1_NAME VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER1_EMAIL VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER2_NAME VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER2_EMAIL VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER3_NAME VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER3_EMAIL VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER4_NAME VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER4_EMAIL VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER5_NAME VARCHAR(100);
+ALTER TABLE SUPPLY_MNG ADD COLUMN IF NOT EXISTS MANAGER5_EMAIL VARCHAR(100);
+
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER1_NAME IS '담당자1 이름';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER1_EMAIL IS '담당자1 이메일';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER2_NAME IS '담당자2 이름';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER2_EMAIL IS '담당자2 이메일';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER3_NAME IS '담당자3 이름';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER3_EMAIL IS '담당자3 이메일';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER4_NAME IS '담당자4 이름';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER4_EMAIL IS '담당자4 이메일';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER5_NAME IS '담당자5 이름';
+COMMENT ON COLUMN SUPPLY_MNG.MANAGER5_EMAIL IS '담당자5 이메일';
+
diff --git a/src/com/pms/common/FileRenameClass.java b/src/com/pms/common/FileRenameClass.java
index bff7207..400c903 100644
--- a/src/com/pms/common/FileRenameClass.java
+++ b/src/com/pms/common/FileRenameClass.java
@@ -52,21 +52,21 @@ public class FileRenameClass implements FileRenamePolicy {
int counter = 0;
boolean fExist = true;
- long currentTime = System.currentTimeMillis();
-
- String fullFileName = parentDir + "\\" + fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
- String savedFileName = fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
-
- while (fExist) {
- if (new File(fullFileName).exists()) {
- counter = counter + 1;
-// fullFileName = parentDir + "\\" + fname + "(" + counter + ")"+ fileExt;
- fullFileName = parentDir + "\\" + fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
- savedFileName = fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
- } else {
- fExist = false;
- }
+ long currentTime = System.currentTimeMillis();
+
+ String fullFileName = parentDir + File.separator + fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
+ String savedFileName = fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
+
+ while (fExist) {
+ if (new File(fullFileName).exists()) {
+ counter = counter + 1;
+// fullFileName = parentDir + File.separator + fname + "(" + counter + ")"+ fileExt;
+ fullFileName = parentDir + File.separator + fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
+ savedFileName = fname.replaceAll(" ", "") + "_" +currentTime+""+ fileExt;
+ } else {
+ fExist = false;
}
+ }
Map fileMap = new HashMap();
fileMap.put("realFileName", fname+fileExt);
fileMap.put("savedFileName", savedFileName);
diff --git a/src/com/pms/salesmgmt/controller/ContractMgmtController.java b/src/com/pms/salesmgmt/controller/ContractMgmtController.java
index 0026744..3232df4 100644
--- a/src/com/pms/salesmgmt/controller/ContractMgmtController.java
+++ b/src/com/pms/salesmgmt/controller/ContractMgmtController.java
@@ -2218,12 +2218,17 @@ public class ContractMgmtController {
// 환종 코드
code_map.put("contract_currency", commonService.bizMakeOptionList("0001533", CommonUtils.nullToEmpty((String)info.get("CONTRACT_CURRENCY")), "common.getCodeselect"));
+ // 결재상태 확인 (결재완료 시 견적서 템플릿 사용)
+ String apprStatus = CommonUtils.nullToEmpty((String)info.get("APPR_STATUS"));
+ boolean useEstimateTemplate = "결재완료".equals(apprStatus);
+
request.setAttribute("code_map", code_map);
request.setAttribute("info", info);
request.setAttribute("contractInfo", contractInfo);
request.setAttribute("contractObjId", objId);
request.setAttribute("objId", objId);
request.setAttribute("actionType", actionType);
+ request.setAttribute("useEstimateTemplate", useEstimateTemplate ? "Y" : "N");
} catch(Exception e) {
e.printStackTrace();
@@ -2262,7 +2267,18 @@ public class ContractMgmtController {
Map resultMap = new HashMap();
try {
- List |