Browse Source

역량평가 생성단계 추가

SH 1 month ago
parent
commit
c355eb8d6c

+ 3 - 0
src/main/java/sgc/portal/cw/cw0621/persistence/CW06210001UMapper.java

@@ -7,6 +7,7 @@ import sgc.portal.cw.cw0621.dto.CW06210001USearch;
 import sgc.portal.cw.cw0621.model.CW06210001U;
 import sgc.portal.cw.cw0621.model.CW06210001U;
 
 
 import java.util.List;
 import java.util.List;
+import java.util.Map;
 
 
 @Mapper
 @Mapper
 public interface CW06210001UMapper {
 public interface CW06210001UMapper {
@@ -16,6 +17,8 @@ public interface CW06210001UMapper {
 
 
     int insert(CW06210001U cW06210001U);
     int insert(CW06210001U cW06210001U);
 
 
+    Map<String, Object> updateCre(CW06210001U cW06210001U);
+
     int updatePrev(CW06210001U cW06210001U);
     int updatePrev(CW06210001U cW06210001U);
 
 
     int updateNext(CW06210001U cW06210001U);
     int updateNext(CW06210001U cW06210001U);

+ 23 - 0
src/main/java/sgc/portal/cw/cw0621/service/CW06210001UService.java

@@ -46,6 +46,29 @@ public class CW06210001UService {
         return result;
         return result;
     }
     }
     
     
+    @Transactional
+    public Map<String, String> updateCre(List<CW06210001U> CW06210001U) {
+        Map<String, String> result = new HashMap<>();
+
+        for (CW06210001U cW06210001U : CW06210001U) {
+            // ... (rest of your code)
+
+            // Add error handling for PL/SQL calls
+            Map<String, Object> outParams = mapper.updateCre(cW06210001U);
+            String errCode = (String) outParams.get("errCode");
+            String errMsg = (String) outParams.get("errMsg");
+
+        	//System.out.println("=========================================== "+errCode + "  ======== " + errMsg);
+            if (!errCode.equals("X")) {
+                result.put("errCode", errCode);
+                result.put("errMsg", errMsg);
+                return result;
+            }
+        }
+
+        return result;
+    }
+    
     @Transactional
     @Transactional
     public Map<String, String> updatePrev(List<CW06210001U> CW06210001U) {
     public Map<String, String> updatePrev(List<CW06210001U> CW06210001U) {
     	
     	

+ 6 - 0
src/main/java/sgc/portal/cw/cw0621/web/CW06210001UController.java

@@ -29,6 +29,12 @@ public class CW06210001UController {
     	return service.save(CW06210001U);
     	return service.save(CW06210001U);
     }
     }
 
 
+    @PostMapping("/CW06210001U/updateCre")
+    public Map<String, String> updateCre(@RequestBody List<CW06210001U> CW06210001U) {
+    	Map<String, String> result = service.updateCre(CW06210001U);
+    	return result;
+    } 
+
     @PostMapping("/CW06210001U/updatePrev")
     @PostMapping("/CW06210001U/updatePrev")
     public Map<String, String> updatePrev(@RequestBody List<CW06210001U> CW06210001U) {
     public Map<String, String> updatePrev(@RequestBody List<CW06210001U> CW06210001U) {
     	return service.updatePrev(CW06210001U);
     	return service.updatePrev(CW06210001U);

+ 10 - 0
src/main/resources/sqlmap/mappers/cw/cw0621/CW06210001UMapper.xml

@@ -39,6 +39,16 @@
 			, SYSDATE)
 			, SYSDATE)
     </insert>
     </insert>
     
     
+    <update id="updateCre" statementType="CALLABLE" parameterType="map">
+    		call SP_CE_CREATE_BASE(
+    		#{cmpnCd, javaType=string, jdbcType=VARCHAR, mode=IN}
+    		, #{yearYy, javaType=string, jdbcType=VARCHAR, mode=IN}
+    		, #{yearHalf, javaType=string, jdbcType=VARCHAR, mode=IN}
+    		, #{wrtePr, javaType=string, jdbcType=VARCHAR, mode=IN}
+    		, #{errCode, javaType=string, jdbcType=VARCHAR, mode=OUT}
+    		, #{errMsg, javaType=string, jdbcType=VARCHAR, mode=OUT} )
+	 </update>
+    
     <update id="updatePrev" statementType="CALLABLE" parameterType="map">
     <update id="updatePrev" statementType="CALLABLE" parameterType="map">
     		call SP_PE_CANCEL(
     		call SP_PE_CANCEL(
     		#{cmpnCd, javaType=string, jdbcType=VARCHAR, mode=IN}
     		#{cmpnCd, javaType=string, jdbcType=VARCHAR, mode=IN}

+ 59 - 2
src/main/webapp/ux/cw/cw0621/CW06210001U.xml

@@ -163,6 +163,31 @@
         }
         }
     };
     };
     
     
+    /**************************************************************************
+     * Event:scwin.btnCre_onclick
+     * 기능 : 역량평가생성 버튼 클릭
+     **************************************************************************/
+    scwin.btnCre_onclick = function() {
+    
+    	scwin.checkCnt = 0;
+    	for (var i = 0; i < dcdataList1.getTotalRow(); i++) {
+    		if(dcdataList1.getCellData( i , "statusFlag" ) == "Y") {
+    			if(dcdataList1.getCellData( i , "yearHalf" ) == "20") {
+    				scwin.checkCnt++;
+    			}
+    		}
+        }
+        
+        //if(scwin.checkCnt == 0){
+        //	commLib.getAlert("생성 가능한 데이터가 없습니다.");
+        //    return;
+        //}
+        
+        dcdataList1.modifyRowStatus( dcdataList1.getRowPosition() , "U" )
+        commLib.getConfirmMsg("이미 생성된 역량평가 데이터가 있다면<br> 삭제 후 재생성 됩니다. 계속하시겠습니까?","작업처리", "scwin.fnUpdateCre");
+        
+    };
+    
     /**************************************************************************
     /**************************************************************************
      * Event:scwin.btnPrev_onclick
      * Event:scwin.btnPrev_onclick
      * 기능 : PREV버튼 클릭
      * 기능 : PREV버튼 클릭
@@ -320,6 +345,35 @@
         }
         }
     };
     };
     
     
+    /***************************************************************************
+     * 함 수 명: scwin.fnUpdateCre
+     * 기    능: 성과 진행관리 역량평가생성 처리
+     * param: 확인팝업 선택값
+     ***************************************************************************/
+	scwin.fnUpdateCre =  function(param) {
+        if(param){
+            if (JSON.parse(param).retval=="true") {
+            var mdata = strLib.serialize(dcdataList1.getModifiedJSON({DB:true}));
+                ajaxLib.ajax("cw/cw0621/CW06210001U/updateCre", {
+	                method: "POST",
+	                requestData: mdata,
+	                processMsg:"yes",
+	                callback: function(result, e) {
+	                	if(result.errCode == "X"){
+	                		alert(result.errCode);
+	                		commLib.getAlert(result.errMsg, "데이터 결과", "R");
+	                	} else if(result.result == null){
+	                		commLib.getAlert(commLib.getMessage("crud.0002"), "데이터 결과", "R");
+	                		scwin.grdSearch();
+	                	} else {
+		                		commLib.getAlert(result.result, "데이터 결과", "R");
+		                }
+                    }
+                });
+            }
+        }
+    };
+    
      /***************************************************************************
      /***************************************************************************
      * 함 수 명: scwin.fnUpdatePrev
      * 함 수 명: scwin.fnUpdatePrev
      * 기    능: 성과 진행관리 Prev 처리
      * 기    능: 성과 진행관리 Prev 처리
@@ -397,6 +451,9 @@
 						<w2:anchor class="btn_cm" outerDiv="true" style="" id="btnSave" ev:onclick="scwin.btnSave_onclick">
 						<w2:anchor class="btn_cm" outerDiv="true" style="" id="btnSave" ev:onclick="scwin.btnSave_onclick">
 							<xf:label><![CDATA[저장]]></xf:label>
 							<xf:label><![CDATA[저장]]></xf:label>
 						</w2:anchor>
 						</w2:anchor>
+						<w2:anchor class="btn_cm" outerDiv="true" style="" id="btnCre" ev:onclick="scwin.btnCre_onclick">
+							<xf:label><![CDATA[역량평가생성]]></xf:label>
+						</w2:anchor>
 						<w2:anchor class="btn_cm" outerDiv="true" style="" id="btnPrev" ev:onclick="scwin.btnPrev_onclick">
 						<w2:anchor class="btn_cm" outerDiv="true" style="" id="btnPrev" ev:onclick="scwin.btnPrev_onclick">
 							<xf:label><![CDATA[<< PREV]]></xf:label>
 							<xf:label><![CDATA[<< PREV]]></xf:label>
 						</w2:anchor>
 						</w2:anchor>
@@ -440,8 +497,8 @@
 						<header style="width:100.0%;height:-32px;" id="">
 						<header style="width:100.0%;height:-32px;" id="">
 							<br></br><b>* 성과평가진행은 아래와 같은 순서대로 진행됩니다.</b><br></br><br></br>
 							<br></br><b>* 성과평가진행은 아래와 같은 순서대로 진행됩니다.</b><br></br><br></br>
 							1. 성과평가준비 : 반기별 마스터데이터 생성<br></br><br></br>
 							1. 성과평가준비 : 반기별 마스터데이터 생성<br></br><br></br>
-							2. 성과평가생성 : 인사정보로 기초데이터 생성<br></br><br></br>
-							3. 목표설정       : 목표설정작성<br></br><br></br>
+							2. 성과평가생성 : 인사정보로 기초데이터 생성(생략)<br></br><br></br>
+							3. 목표설정       : 목표설정작성, (하반기) 역량평가작성<br></br><br></br>
 							4. 성과평가       : 성과평가작성, 평가자 평가 작성, 평가자 의견 작성<br></br><br></br>
 							4. 성과평가       : 성과평가작성, 평가자 평가 작성, 평가자 의견 작성<br></br><br></br>
 							5. 반기마감       : 해당 반기 데이터 마감<br></br><br></br>
 							5. 반기마감       : 해당 반기 데이터 마감<br></br><br></br>
 							6. 연도마감       : (하반기) 연도 점수계산, Calibration 데이터 생성<br></br><br></br>
 							6. 연도마감       : (하반기) 연도 점수계산, Calibration 데이터 생성<br></br><br></br>