2023-11-16 15:28 월별 강사 배정시간 목록 작업
This commit is contained in:
parent
f65fe4ca05
commit
511331f929
@ -21,6 +21,7 @@ import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduExcelVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduSatisfactionExcelVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeAcmdtVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEAutoAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
@ -366,6 +367,15 @@ public class EgovCryptoUtil {
|
||||
return p_vELctrDetailVO;
|
||||
}
|
||||
|
||||
//VEAutoAsgnmVO - 복호화
|
||||
public VEAutoAsgnmVO decryptVEAutoAsgnmVOInfo(VEAutoAsgnmVO p_vEAutoAsgnmVO){
|
||||
|
||||
if (!"".equals(p_vEAutoAsgnmVO.getInstrNm())) p_vEAutoAsgnmVO.setInstrNm(this.decrypt(p_vEAutoAsgnmVO.getInstrNm()));
|
||||
|
||||
return p_vEAutoAsgnmVO;
|
||||
}
|
||||
|
||||
|
||||
//VEEduAplctVOList - 복호화
|
||||
public List<VELctrDetailVO> decryptVELctrDetailVOList(List<VELctrDetailVO> p_vELctrDetailVO){
|
||||
|
||||
@ -377,6 +387,18 @@ public class EgovCryptoUtil {
|
||||
return p_vELctrDetailVO;
|
||||
}
|
||||
|
||||
//VEAutoAsgnmVOList - 복호화
|
||||
public List<VEAutoAsgnmVO> decryptVEAutoAsgnmVOList(List<VEAutoAsgnmVO> p_vEAutoAsgnmVO){
|
||||
|
||||
for (int i=0;i<p_vEAutoAsgnmVO.size();i++) {
|
||||
VEAutoAsgnmVO vEAutoAsgnmVO = this.decryptVEAutoAsgnmVOInfo(p_vEAutoAsgnmVO.get(i));
|
||||
p_vEAutoAsgnmVO.set(i, vEAutoAsgnmVO);
|
||||
}
|
||||
|
||||
return p_vEAutoAsgnmVO;
|
||||
}
|
||||
|
||||
|
||||
//UserManageVO - 암호화
|
||||
public UserManageVO encryptUserManageVO(UserManageVO p_userManageVO){
|
||||
|
||||
|
||||
@ -73,6 +73,10 @@ public class VEAutoAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String mIscSum; //받은 시간
|
||||
|
||||
private String instrNm; //강사명
|
||||
|
||||
private String achvmRt; //달성율
|
||||
|
||||
private String pnltyQuery; //배정을 위한 패널티 쿼리
|
||||
private String rsdncQuery; //배정을 위한 거주지 우선 쿼리
|
||||
private String cntnsQuery; //배정을 위한 연강 쿼리
|
||||
@ -502,6 +506,22 @@ public class VEAutoAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
public void setmIscSum(String mIscSum) {
|
||||
this.mIscSum = mIscSum;
|
||||
}
|
||||
|
||||
public String getInstrNm() {
|
||||
return instrNm;
|
||||
}
|
||||
|
||||
public void setInstrNm(String instrNm) {
|
||||
this.instrNm = instrNm;
|
||||
}
|
||||
|
||||
public String getAchvmRt() {
|
||||
return achvmRt;
|
||||
}
|
||||
|
||||
public void setAchvmRt(String achvmRt) {
|
||||
this.achvmRt = achvmRt;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -226,6 +226,7 @@ public class OprtnInstrTngrPrflContoller {
|
||||
@Resource(name="instrHstryOrdGnrService")
|
||||
private EgovIdGnrService instrHstryOrdGnrService;
|
||||
|
||||
//배정 관리
|
||||
@Resource(name = "vEAutoAsgnmMIXService")
|
||||
private VEAutoAsgnmMIXService vEAutoAsgnmMIXService;
|
||||
|
||||
|
||||
@ -40,6 +40,8 @@ import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduPnltyService;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeAcmdtVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEAutoAsgnmMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEAutoAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctUnqIsuesService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
@ -176,6 +178,10 @@ public class EduAsgnmCnfrmMngTngrController {
|
||||
@Resource(name = "vEPagingUtil")
|
||||
private VEPagingUtil vEPagingUtil;
|
||||
|
||||
//배정 관리
|
||||
@Resource(name = "vEAutoAsgnmMIXService")
|
||||
private VEAutoAsgnmMIXService vEAutoAsgnmMIXService;
|
||||
|
||||
/**
|
||||
* 교육배정확정관리 목록 화면
|
||||
*/
|
||||
@ -979,7 +985,45 @@ public class EduAsgnmCnfrmMngTngrController {
|
||||
List<VELctrDetailVO> selectStngYrList = vELctrMIXService.selectStngYrList(vELctrDetailVO);
|
||||
model.addAttribute("selectStngYrList", selectStngYrList);
|
||||
|
||||
/*
|
||||
System.out.println(vEEduAplctVO.getSearchKeyword());
|
||||
System.out.println(vEEduAplctVO.getSearchKeyword());
|
||||
System.out.println(vEEduAplctVO.getSearchKeyword());
|
||||
|
||||
System.out.println(vEEduAplctVO.getMngNmbrYr());
|
||||
System.out.println(vEEduAplctVO.getMngNmbrYr());
|
||||
|
||||
if (vEEduAplctVO.getMngNmbrYr() == null) {
|
||||
System.out.println("null");
|
||||
}else {
|
||||
System.out.println("oo null");
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
VEAutoAsgnmVO vEAutoAsgnmVO = new VEAutoAsgnmVO();
|
||||
vEAutoAsgnmVO.setYr(vEEduAplctVO.getMngNmbrYr());
|
||||
List<VEAutoAsgnmVO> vEInstrAssiEduAplctVOList = null;
|
||||
|
||||
if (vEEduAplctVO.getMngNmbrYr() != null) {
|
||||
|
||||
if (vEEduAplctVO.getSearchKeyword() != null) {
|
||||
vEAutoAsgnmVO.setInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchKeyword()));
|
||||
}
|
||||
|
||||
vEInstrAssiEduAplctVOList = vEAutoAsgnmMIXService.selectAsgnmInfoList(vEAutoAsgnmVO);
|
||||
|
||||
//복호화
|
||||
vEInstrAssiEduAplctVOList = egovCryptoUtil.decryptVEAutoAsgnmVOList(vEInstrAssiEduAplctVOList);
|
||||
model.addAttribute("vEInstrAssiEduAplctVOList",vEInstrAssiEduAplctVOList);
|
||||
model.addAttribute("vEInstrAssiEduAplctVOListCnt",vEInstrAssiEduAplctVOList.size());
|
||||
}else {
|
||||
model.addAttribute("vEInstrAssiEduAplctVOList",null);
|
||||
model.addAttribute("vEInstrAssiEduAplctVOListCnt",0);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
//1.pageing step1
|
||||
//vEInstrDetailVODetail.setPageUnit(10);
|
||||
System.out.println(vELctrDetailVO.getPageUnit());
|
||||
@ -1004,8 +1048,6 @@ public class EduAsgnmCnfrmMngTngrController {
|
||||
|
||||
//복호화
|
||||
selectAsgnmInfoT2List = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List);
|
||||
|
||||
|
||||
model.addAttribute("list",selectAsgnmInfoT2List);
|
||||
|
||||
|
||||
@ -1013,6 +1055,8 @@ public class EduAsgnmCnfrmMngTngrController {
|
||||
paginationInfo = vEPagingUtil.setPagingStep3_VELctrDetailVO(selectAsgnmInfoT2List, paginationInfo);
|
||||
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
*/
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
@ -1039,6 +1083,7 @@ public class EduAsgnmCnfrmMngTngrController {
|
||||
|
||||
try {
|
||||
|
||||
/*
|
||||
//1.pageing step1
|
||||
//vEInstrDetailVODetail.setPageUnit(10);
|
||||
PaginationInfo paginationInfo = new PaginationInfo();
|
||||
@ -1068,53 +1113,120 @@ public class EduAsgnmCnfrmMngTngrController {
|
||||
}
|
||||
|
||||
System.out.println("out-list-2");
|
||||
*/
|
||||
|
||||
VEAutoAsgnmVO vEAutoAsgnmVO = new VEAutoAsgnmVO();
|
||||
vEAutoAsgnmVO.setYr(vEEduAplctVO.getMngNmbrYr());
|
||||
List<VEAutoAsgnmVO> vEInstrAssiEduAplctVOList = null;
|
||||
|
||||
if (vEEduAplctVO.getMngNmbrYr() != null) {
|
||||
|
||||
/*
|
||||
* excel 다운로드에 강사명 검색은 제외
|
||||
if (vEEduAplctVO.getSearchKeyword() != null) {
|
||||
vEAutoAsgnmVO.setInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchKeyword()));
|
||||
}
|
||||
*/
|
||||
|
||||
vEInstrAssiEduAplctVOList = vEAutoAsgnmMIXService.selectAsgnmInfoList(vEAutoAsgnmVO);
|
||||
|
||||
//복호화
|
||||
vEInstrAssiEduAplctVOList = egovCryptoUtil.decryptVEAutoAsgnmVOList(vEInstrAssiEduAplctVOList);
|
||||
//model.addAttribute("vEInstrAssiEduAplctVOList",vEInstrAssiEduAplctVOList);
|
||||
//model.addAttribute("vEInstrAssiEduAplctVOListCnt",vEInstrAssiEduAplctVOList.size());
|
||||
}else {
|
||||
//model.addAttribute("vEInstrAssiEduAplctVOList",null);
|
||||
//model.addAttribute("vEInstrAssiEduAplctVOListCnt",0);
|
||||
}
|
||||
|
||||
List<Object> excelData = new ArrayList<>();
|
||||
excelData.addAll(selectAsgnmInfoT2List);
|
||||
excelData.addAll(vEInstrAssiEduAplctVOList);
|
||||
|
||||
|
||||
// 세팅값
|
||||
String title = "월별 강사 배정시간 목록";
|
||||
int[] width = {
|
||||
|
||||
/*
|
||||
4000, 4000
|
||||
, 4000
|
||||
, 4000, 4000
|
||||
//, 4000
|
||||
, 4000
|
||||
, 4000, 4000
|
||||
*/
|
||||
4000
|
||||
|
||||
, 4000, 4000, 4000, 4000, 4000
|
||||
, 4000, 4000, 4000, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
, 4000, 4000
|
||||
|
||||
, 4000, 4000
|
||||
|
||||
, 4000
|
||||
}; // 너비
|
||||
|
||||
//33개 항목
|
||||
String[] header = {
|
||||
|
||||
/*
|
||||
"NO", "기수"
|
||||
, "이름"
|
||||
, "지역1", "거주지"
|
||||
*/
|
||||
//, "요일"
|
||||
, "배정시간"
|
||||
, "1월", "2월"
|
||||
, "3월", "4월", "5월", "6월", "7월"
|
||||
, "8월", "9월", "10월", "11월", "12월"
|
||||
, "누계", "달성율(%)"
|
||||
"이름"
|
||||
|
||||
, "1월실제배정차시", "1월최대배정가능차시"
|
||||
, "2월실제배정차시", "2월최대배정가능차시"
|
||||
, "3월실제배정차시", "3월최대배정가능차시"
|
||||
, "4월실제배정차시", "4월최대배정가능차시"
|
||||
, "5월실제배정차시", "5월최대배정가능차시"
|
||||
, "6월실제배정차시", "6월최대배정가능차시"
|
||||
, "7월실제배정차시", "7월최대배정가능차시"
|
||||
, "8월실제배정차시", "8월최대배정가능차시"
|
||||
, "9월실제배정차시", "9월최대배정가능차시"
|
||||
, "10월실제배정차시", "10월최대배정가능차시"
|
||||
, "11월실제배정차시", "11월최대배정가능차시"
|
||||
, "12월실제배정차시", "12월최대배정가능차시"
|
||||
|
||||
, "누계(실제배정차시)", "누계(최대배정가능차시)"
|
||||
|
||||
, "달성율(%)"
|
||||
};
|
||||
|
||||
String[] order = {
|
||||
|
||||
/*
|
||||
"RqstId", "ApptDiv"
|
||||
, "InstrNm"
|
||||
, "LctrAreaNm", "Rsdne"
|
||||
//, "wCnt"
|
||||
, "YrMxmmAsgnmTm"
|
||||
, "AsgnmTm1", "AsgnmTm2"
|
||||
, "AsgnmTm3", "AsgnmTm4", "AsgnmTm5", "AsgnmTm6", "AsgnmTm7"
|
||||
, "AsgnmTm8", "AsgnmTm9", "AsgnmTm10", "AsgnmTm11", "AsgnmTm12"
|
||||
, "MntSum", "AchvPer"
|
||||
*
|
||||
*/
|
||||
"InstrNm"
|
||||
|
||||
, "M01Isc", "M01Tm"
|
||||
, "M02Isc", "M02Tm"
|
||||
, "M03Isc", "M03Tm"
|
||||
, "M04Isc", "M04Tm"
|
||||
, "M05Isc", "M05Tm"
|
||||
, "M06Isc", "M06Tm"
|
||||
, "M07Isc", "M07Tm"
|
||||
, "M08Isc", "M08Tm"
|
||||
, "M09Isc", "M09Tm"
|
||||
, "M10Isc", "M10Tm"
|
||||
, "M11Isc", "M11Tm"
|
||||
, "M12Isc", "M12Tm"
|
||||
|
||||
, "MIscSum", "MTmSum"
|
||||
|
||||
, "AchvmRt"
|
||||
};
|
||||
|
||||
// 호출
|
||||
|
||||
@ -701,6 +701,8 @@
|
||||
|
||||
SELECT aa.yr
|
||||
, aa.user_id AS userId
|
||||
|
||||
, MAX(cc.instr_nm) AS instrNm
|
||||
|
||||
|
||||
, NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='01' THEN bb.instrSumChasi END),0) AS m01Isc
|
||||
@ -754,7 +756,36 @@
|
||||
+ NVL(aa.m09_tm,0)
|
||||
+ NVL(aa.m10_tm,0)
|
||||
+ NVL(aa.m11_tm,0)
|
||||
+ NVL(aa.m12_tm,0) AS mTmSum
|
||||
+ NVL(aa.m12_tm,0) AS mTmSum
|
||||
|
||||
, CEIL((NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='01' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='02' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='03' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='04' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='05' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='06' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='07' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='08' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='09' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='10' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='11' THEN bb.instrSumChasi END),0)
|
||||
+ NVL(SUM(CASE WHEN substring(bb.yrmnt,6,7)='12' THEN bb.instrSumChasi END),0))*100
|
||||
/
|
||||
( NVL(aa.m01_tm,0)
|
||||
+ NVL(aa.m02_tm,0)
|
||||
+ NVL(aa.m03_tm,0)
|
||||
+ NVL(aa.m04_tm,0)
|
||||
+ NVL(aa.m05_tm,0)
|
||||
+ NVL(aa.m06_tm,0)
|
||||
+ NVL(aa.m07_tm,0)
|
||||
+ NVL(aa.m08_tm,0)
|
||||
+ NVL(aa.m09_tm,0)
|
||||
+ NVL(aa.m10_tm,0)
|
||||
+ NVL(aa.m11_tm,0)
|
||||
+ NVL(aa.m12_tm,0)
|
||||
))
|
||||
AS achvmRt
|
||||
|
||||
FROM vea_instr_indvd_mnt_tm aa
|
||||
LEFT OUTER JOIN (
|
||||
|
||||
@ -783,7 +814,23 @@
|
||||
aa.user_id=bb.user_id
|
||||
AND aa.yr=substring(bb.yrMnt,0,4)
|
||||
)
|
||||
WHERE aa.user_id=#userId#
|
||||
, ve_instr_detail cc
|
||||
WHERE 1=1
|
||||
AND aa.user_id=cc.user_id
|
||||
AND cc.use_yn='Y'
|
||||
<isNotEmpty property="userId">
|
||||
AND aa.user_id=#userId#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="yr">
|
||||
AND aa.yr=#yr#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="instrNm">
|
||||
AND cc.instr_nm=#instrNm#
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
|
||||
GROUP BY aa.yr
|
||||
, aa.user_id
|
||||
@ -800,6 +847,7 @@
|
||||
, aa.m11_tm
|
||||
, aa.m12_tm
|
||||
|
||||
ORDER BY aa.yr
|
||||
ORDER BY aa.yr
|
||||
, aa.user_id
|
||||
</select>
|
||||
</sqlMap>
|
||||
|
||||
@ -151,98 +151,115 @@
|
||||
</div>
|
||||
<!-- //list_top -->
|
||||
|
||||
<!-- list util -->
|
||||
|
||||
|
||||
<div class="list_util">
|
||||
<p class="list_util_p">총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
|
||||
<p class="list_util_p">총 건수 : <span><c:out value="${vEInstrAssiEduAplctVOListCnt}" /></span>건</p>
|
||||
<div>
|
||||
*교육신청과 강사배정이 모두 확정된 데이터 기준
|
||||
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px">
|
||||
<option value='10' <c:if test="${vEEduAplctVO.pageUnit == '10' or vEEduAplctVO.pageUnit == ''}">selected</c:if>>10줄</option>
|
||||
<option value='20' <c:if test="${vEEduAplctVO.pageUnit == '20'}">selected</c:if>>20줄</option>
|
||||
<option value='30' <c:if test="${vEEduAplctVO.pageUnit == '30'}">selected</c:if>>30줄</option>
|
||||
<option value='100' <c:if test="${vEEduAplctVO.pageUnit == '100'}">selected</c:if>>100줄</option>
|
||||
</select>
|
||||
<!-- <select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px"> -->
|
||||
<%-- <option value='10' <c:if test="${vEEduAplctVO.pageUnit == '10' or vEEduAplctVO.pageUnit == ''}">selected</c:if>>10줄</option> --%>
|
||||
<%-- <option value='20' <c:if test="${vEEduAplctVO.pageUnit == '20'}">selected</c:if>>20줄</option> --%>
|
||||
<%-- <option value='30' <c:if test="${vEEduAplctVO.pageUnit == '30'}">selected</c:if>>30줄</option> --%>
|
||||
<%-- <option value='100' <c:if test="${vEEduAplctVO.pageUnit == '100'}">selected</c:if>>100줄</option> --%>
|
||||
<!-- </select> -->
|
||||
<button type="button" class="btn_down_excel" onclick="excelDownLoad();">엑셀 다운로드</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_type01 list2">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 10.0%;">
|
||||
<col style="width: 12.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: 6.0%;">
|
||||
<col style="width: auto;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">이름</th>
|
||||
<th scope="col">1월(실제배정차시/최대가능배정차시)</th>
|
||||
<th scope="col">2월</th>
|
||||
<th scope="col">3월</th>
|
||||
<th scope="col">4월</th>
|
||||
<th scope="col">5월</th>
|
||||
<th scope="col">6월</th>
|
||||
<th scope="col">7월</th>
|
||||
<th scope="col">8월</th>
|
||||
<th scope="col">9월</th>
|
||||
<th scope="col">10월</th>
|
||||
<th scope="col">11월</th>
|
||||
<th scope="col">12월</th>
|
||||
<th scope="col">누계(달성율)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
|
||||
<c:forEach var="asgnmInfoT2" items="${vEInstrAssiEduAplctVOList}" varStatus="status">
|
||||
<tr>
|
||||
<td><c:out value="${asgnmInfoT2.yr}" />
|
||||
<c:out value="${asgnmInfoT2.instrNm}"/>
|
||||
<c:if test="${asgnmInfoT2.instrNm ne null}">
|
||||
<br/>(${fn:split(asgnmInfoT2.userId,'_')[1]*1})
|
||||
</c:if>
|
||||
</td>
|
||||
<td><c:out value="${asgnmInfoT2.m01Isc}" /> / <c:out value="${asgnmInfoT2.m01Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m02Isc}" /> / <c:out value="${asgnmInfoT2.m02Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m03Isc}" /> / <c:out value="${asgnmInfoT2.m03Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m04Isc}" /> / <c:out value="${asgnmInfoT2.m04Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m05Isc}" /> / <c:out value="${asgnmInfoT2.m05Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m06Isc}" /> / <c:out value="${asgnmInfoT2.m06Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m07Isc}" /> / <c:out value="${asgnmInfoT2.m07Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m08Isc}" /> / <c:out value="${asgnmInfoT2.m08Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m09Isc}" /> / <c:out value="${asgnmInfoT2.m09Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m10Isc}" /> / <c:out value="${asgnmInfoT2.m10Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m11Isc}" /> / <c:out value="${asgnmInfoT2.m11Tm}" /></td>
|
||||
<td><c:out value="${asgnmInfoT2.m12Isc}" /> / <c:out value="${asgnmInfoT2.m12Tm}" /></td>
|
||||
|
||||
<td><c:out value="${asgnmInfoT2.mIscSum}" /> / <c:out value="${asgnmInfoT2.mTmSum}" />
|
||||
<br/>(<c:out value="${asgnmInfoT2.achvmRt}" /> %)
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
|
||||
<c:if test="${empty vEInstrAssiEduAplctVOList}">
|
||||
<tr>
|
||||
|
||||
<!-- list -->
|
||||
<div class="tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 8%">
|
||||
<col style="width: 9%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: auto;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>이름<br/>(배정시간)</th>
|
||||
<th>1월(일수/지역)</th>
|
||||
<th>2월</th>
|
||||
<th>3월</th>
|
||||
<th>4월</th>
|
||||
<th>5월</th>
|
||||
<th>6월</th>
|
||||
<th>7월</th>
|
||||
<th>8월</th>
|
||||
<th>9월</th>
|
||||
<th>10월</th>
|
||||
<th>11월</th>
|
||||
<th>12월</th>
|
||||
<th>누계<br/>(달성율)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr>
|
||||
<td>
|
||||
<c:out value="${list.instrNm}"/>
|
||||
<c:if test="${list.instrNm ne null}">
|
||||
<br/>(${fn:split(list.userId,'_')[1]*1})
|
||||
</c:if>
|
||||
<br/>(<c:out value="${list.yrMxmmAsgnmTm}"/>시간)
|
||||
</td>
|
||||
<td><c:out value="${list.asgnmTm1}"/></td>
|
||||
<td><c:out value="${list.asgnmTm2}"/></td>
|
||||
<td><c:out value="${list.asgnmTm3}"/></td>
|
||||
<td><c:out value="${list.asgnmTm4}"/></td>
|
||||
<td><c:out value="${list.asgnmTm5}"/></td>
|
||||
<td><c:out value="${list.asgnmTm6}"/></td>
|
||||
<td><c:out value="${list.asgnmTm7}"/></td>
|
||||
<td><c:out value="${list.asgnmTm8}"/></td>
|
||||
<td><c:out value="${list.asgnmTm9}"/></td>
|
||||
<td><c:out value="${list.asgnmTm10}"/></td>
|
||||
<td><c:out value="${list.asgnmTm11}"/></td>
|
||||
<td><c:out value="${list.asgnmTm12}"/></td>
|
||||
<td><c:out value="${list.mntSum}"/>
|
||||
<br/>(<c:out value="${list.achvPer}"/>%)
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="14"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- //list -->
|
||||
<td colspan="14">데이터가 없습니다.</td>
|
||||
|
||||
<!-- page -->
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
<!-- //page -->
|
||||
</tr>
|
||||
</c:if>
|
||||
|
||||
<!-- <tr>
|
||||
<td><input type="text" name="asgnmTm1" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm1}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm2" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm2}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm3" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm3}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm4" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm4}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm5" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm5}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm6" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm6}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm7" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm7}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm8" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm8}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm9" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm9}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm10" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm10}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm11" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm11}' />" size="2" /></td>
|
||||
<td><input type="text" name="asgnmTm12" onchange="asgnmOnchange();return false;" class="asgnm" value="<c:out value='${lctrStngInfo.asgnmTm12}' />" size="2" /></td>
|
||||
<td><span id="totCnt"></span></td>
|
||||
</tr> -->
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user