2023-10-27 17:11 청소년 강사 배정 작업
This commit is contained in:
parent
fdcb89d7c7
commit
234ddb5d74
@ -46,7 +46,16 @@ public interface VEAStngMixService {
|
||||
//vea_lctr_psbl_prd_stng - 해당 회차의 신청 가능한 기간일지 체크
|
||||
String selectEduGetStngYrToStr(VEAStngVO vEAStngVO) throws Exception;
|
||||
|
||||
|
||||
//VEA_INSTR_ASGNM_CNDTN - 강사배정조건
|
||||
//강의가능기간 일정 데이터 - 강의가능기간 세부 선택 데이터
|
||||
List<VEAStngVO> selectList_VEAIAC_1(VEAStngVO paramVO) throws Exception; // LIST
|
||||
|
||||
//VEA_INSTR_RSDNC_RATIO - 강사주거지비율
|
||||
List<VEAStngVO> selectList_VEAIRR_1(VEAStngVO paramVO) throws Exception; // LIST
|
||||
|
||||
//VEA_INSTR_MNT_TM - 강사월별시수
|
||||
List<VEAStngVO> selectList_VEAIMT_1(VEAStngVO paramVO) throws Exception; // LIST
|
||||
|
||||
//VEA_INSTR_MNT_TM - 강사월별시수
|
||||
int selectList_VEAIMT_2(VEAStngVO paramVO) throws Exception; // LIST
|
||||
}
|
||||
|
||||
@ -89,6 +89,10 @@ public class VEAStngVO extends ComDefaultVO implements Serializable {
|
||||
private String instrEa1; //해당월 1일강사수
|
||||
private String instrTm1; //해당월 1일강사인당시간
|
||||
private String asgnmChasi1; //해당월 1일강사배정총차시
|
||||
|
||||
private String instrEa0; //해당월 0일강사수
|
||||
private String instrTm0; //해당월 0일강사인당시간
|
||||
private String asgnmChasi0; //해당월 0일강사배정총차시
|
||||
|
||||
//etc
|
||||
private String code; //설정 년도
|
||||
@ -573,5 +577,23 @@ public class VEAStngVO extends ComDefaultVO implements Serializable {
|
||||
public void setAsgnmNm(String asgnmNm) {
|
||||
this.asgnmNm = asgnmNm;
|
||||
}
|
||||
public String getInstrEa0() {
|
||||
return instrEa0;
|
||||
}
|
||||
public void setInstrEa0(String instrEa0) {
|
||||
this.instrEa0 = instrEa0;
|
||||
}
|
||||
public String getInstrTm0() {
|
||||
return instrTm0;
|
||||
}
|
||||
public void setInstrTm0(String instrTm0) {
|
||||
this.instrTm0 = instrTm0;
|
||||
}
|
||||
public String getAsgnmChasi0() {
|
||||
return asgnmChasi0;
|
||||
}
|
||||
public void setAsgnmChasi0(String asgnmChasi0) {
|
||||
this.asgnmChasi0 = asgnmChasi0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -78,5 +78,20 @@ public class VEAStngMixDAO extends EgovAbstractDAO {
|
||||
List<VEAStngVO> tlist = (List<VEAStngVO>) list("VEAAsgnmStngMixDAO.selectList_VEAIAC_1", paramVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
|
||||
//L
|
||||
public List<VEAStngVO> selectList_VEAIRR_1(VEAStngVO paramVO) throws Exception {
|
||||
List<VEAStngVO> tlist = (List<VEAStngVO>) list("VEAAsgnmStngMixDAO.selectList_VEAIRR_1", paramVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
//L
|
||||
public List<VEAStngVO> selectList_VEAIMT_1(VEAStngVO paramVO) throws Exception {
|
||||
List<VEAStngVO> tlist = (List<VEAStngVO>) list("VEAAsgnmStngMixDAO.selectList_VEAIMT_1", paramVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public int selectList_VEAIMT_2(VEAStngVO paramVO) throws Exception {
|
||||
return (int) select("VEAAsgnmStngMixDAO.selectList_VEAIMT_2", paramVO);
|
||||
}
|
||||
}
|
||||
|
||||
@ -290,4 +290,16 @@ public class VEAStngMixServiceImpl implements VEAStngMixService {
|
||||
public List<VEAStngVO> selectList_VEAIAC_1(VEAStngVO paramVO) throws Exception{
|
||||
return vEAStngMixDAO.selectList_VEAIAC_1(paramVO);
|
||||
}
|
||||
|
||||
public List<VEAStngVO> selectList_VEAIRR_1(VEAStngVO paramVO) throws Exception{
|
||||
return vEAStngMixDAO.selectList_VEAIRR_1(paramVO);
|
||||
}
|
||||
|
||||
public List<VEAStngVO> selectList_VEAIMT_1(VEAStngVO paramVO) throws Exception{
|
||||
return vEAStngMixDAO.selectList_VEAIMT_1(paramVO);
|
||||
}
|
||||
|
||||
public int selectList_VEAIMT_2(VEAStngVO paramVO) throws Exception{
|
||||
return vEAStngMixDAO.selectList_VEAIMT_2(paramVO);
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,6 +24,8 @@ public interface VEEduMIXService {
|
||||
|
||||
List<VEEduAplctVO> selectTngrRsltPagingList(VEEduAplctVO paramVO) throws Exception;
|
||||
|
||||
List<VEEduAplctVO> selectTngrRsltList(VEEduAplctVO paramVO) throws Exception;
|
||||
|
||||
List<VEEduAplctVO> selectTngrFeePagingList(VEEduAplctVO paramVO) throws Exception;
|
||||
|
||||
List<VEEduAplctVO> selectTngrRsltPagingList4Excel(VEEduAplctVO paramVO) throws Exception;
|
||||
|
||||
@ -62,6 +62,12 @@ public class VEEduMIXDAO extends EgovAbstractDAO {
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VEEduAplctVO> selectTngrRsltList(VEEduAplctVO paramVO) {
|
||||
@SuppressWarnings("unchecked")
|
||||
List<VEEduAplctVO> tlist = (List<VEEduAplctVO>) list("VEEduMIXDAO.selectTngrRsltList", paramVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VEEduAplctVO> selectTngrFeePagingList(VEEduAplctVO paramVO) {
|
||||
@SuppressWarnings("unchecked")
|
||||
List<VEEduAplctVO> tlist = (List<VEEduAplctVO>) list("VEEduMIXDAO.selectTngrFeePagingList", paramVO);
|
||||
|
||||
@ -55,6 +55,11 @@ public class VEEduMIXServiceImpl implements VEEduMIXService {
|
||||
return vEEduMIXDAO.selectTngrRsltPagingList(paramVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<VEEduAplctVO> selectTngrRsltList(VEEduAplctVO paramVO) throws Exception{
|
||||
return vEEduMIXDAO.selectTngrRsltList(paramVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<VEEduAplctVO> selectTngrFeePagingList(VEEduAplctVO paramVO) throws Exception{
|
||||
return vEEduMIXDAO.selectTngrFeePagingList(paramVO);
|
||||
|
||||
@ -162,6 +162,13 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String sigMemo; // 특이사항 메모
|
||||
|
||||
private String day5cnt;
|
||||
private String day4cnt;
|
||||
private String day3cnt;
|
||||
private String day2cnt;
|
||||
private String day1cnt;
|
||||
private String day0cnt;
|
||||
|
||||
public String getLrnTmSum() {
|
||||
return lrnTmSum;
|
||||
}
|
||||
@ -810,5 +817,41 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setRprtScore(String rprtScore) {
|
||||
this.rprtScore = rprtScore;
|
||||
}
|
||||
public String getDay5cnt() {
|
||||
return day5cnt;
|
||||
}
|
||||
public void setDay5cnt(String day5cnt) {
|
||||
this.day5cnt = day5cnt;
|
||||
}
|
||||
public String getDay4cnt() {
|
||||
return day4cnt;
|
||||
}
|
||||
public void setDay4cnt(String day4cnt) {
|
||||
this.day4cnt = day4cnt;
|
||||
}
|
||||
public String getDay3cnt() {
|
||||
return day3cnt;
|
||||
}
|
||||
public void setDay3cnt(String day3cnt) {
|
||||
this.day3cnt = day3cnt;
|
||||
}
|
||||
public String getDay2cnt() {
|
||||
return day2cnt;
|
||||
}
|
||||
public void setDay2cnt(String day2cnt) {
|
||||
this.day2cnt = day2cnt;
|
||||
}
|
||||
public String getDay1cnt() {
|
||||
return day1cnt;
|
||||
}
|
||||
public void setDay1cnt(String day1cnt) {
|
||||
this.day1cnt = day1cnt;
|
||||
}
|
||||
public String getDay0cnt() {
|
||||
return day0cnt;
|
||||
}
|
||||
public void setDay0cnt(String day0cnt) {
|
||||
this.day0cnt = day0cnt;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -37,6 +37,12 @@ public interface VEInstrMixService {
|
||||
|
||||
//L page (강사디테일 믹스)
|
||||
List<VEInstrDetailVO> selectPagingDetailList(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//L page (강사디테일 믹스)
|
||||
List<VEInstrDetailVO> selectPagingDetailList4Asgnm(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//L (특정강사배정용리스트)
|
||||
List<VEInstrDetailVO> selectDetailList(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//R (강사 디테일 수정요청)
|
||||
VEInstrDetailVO selectMdfyRqstDetail(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
@ -85,6 +85,16 @@ public class VEInstrMixDAO extends EgovAbstractDAO {
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VEInstrDetailVO> selectPagingDetailList4Asgnm(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VEInstrDetailVO> tlist = (List<VEInstrDetailVO>) list("VEInstrMixDAO.selectPagingDetailList4Asgnm", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VEInstrDetailVO> selectDetailList(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VEInstrDetailVO> tlist = (List<VEInstrDetailVO>) list("VEInstrMixDAO.selectDetailList", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
/**
|
||||
* 상세보기 - R
|
||||
* @param VEInstrDetailVO
|
||||
|
||||
@ -66,7 +66,17 @@ public class VEInstrMixServiceImpl implements VEInstrMixService {
|
||||
public List<VEInstrDetailVO> selectPagingDetailList(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectPagingDetailList(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
//paging List
|
||||
public List<VEInstrDetailVO> selectPagingDetailList4Asgnm(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectPagingDetailList4Asgnm(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
//List
|
||||
public List<VEInstrDetailVO> selectDetailList(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectDetailList(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
//R
|
||||
public VEInstrDetailVO selectMdfyRqstDetail(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
return vEInstrMixDAO.selectMdfyRqstDetail(vEInstrDetailVO);
|
||||
|
||||
@ -745,6 +745,72 @@ public class EduCnfrmMngTngrController {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사배정 등록 처리
|
||||
*/
|
||||
@RequestMapping("popup/instrAsgnmForceAjax.do")
|
||||
public ModelAndView instrAsgnmAjaxinstrAsgnmForceAjax(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
, ModelMap model
|
||||
//, RedirectAttributes redirectAttributes
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "loginFail");
|
||||
return modelAndView;
|
||||
}
|
||||
//로그인 처리====================================
|
||||
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
|
||||
// 강사배정 테이블에 강사료 정보 update
|
||||
try {
|
||||
if("".equals(vEInstrAsgnmVO.getAsgnmAprvlCd()) || "10".equals(vEInstrAsgnmVO.getAsgnmAprvlCd())) {
|
||||
//현재 상태값 없이 강사 최초 배치이거나, 상태가 요청대기인 경우는 요청대기 상태로 set
|
||||
vEInstrAsgnmVO.setAsgnmAprvlCd("10");
|
||||
} else if ("50".equals(vEInstrAsgnmVO.getAsgnmAprvlCd()) || "60".equals(vEInstrAsgnmVO.getAsgnmAprvlCd())) {
|
||||
//추가신청 강사 선정 시, 내역테이블의 해당 강사 선정확정, 나머지 강사 선정 제외 상태로 set
|
||||
if("50".equals(vEInstrAsgnmVO.getAsgnmAprvlCd())) {
|
||||
vEEduChasiInstrAsgnmService.updateAsgnmY(vEInstrAsgnmVO);
|
||||
vEEduChasiInstrAsgnmService.updateAsgnmN(vEInstrAsgnmVO);
|
||||
}
|
||||
//현재 상태값이 추가신청이거나, 변경요청 상태인 경우SMS 교육확정 상태로 set
|
||||
vEInstrAsgnmVO.setAsgnmAprvlCd("30");
|
||||
}
|
||||
|
||||
//선택한 강사 데이터 등록 처리
|
||||
vEInstrAsgnmVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
|
||||
//// 데이터 있으면 update, 없으면 insert 처리(MERGE)
|
||||
|
||||
String[] a_aplct_chasi = vEInstrAsgnmVO.getEduAplctOrd().split("__");
|
||||
|
||||
for (int i=0;i<a_aplct_chasi.length;i++) {
|
||||
String[] a_str = a_aplct_chasi[i].split("@");
|
||||
|
||||
if (a_str.length==2) {
|
||||
vEInstrAsgnmVO.setEduAplctOrd(a_str[0]);
|
||||
vEInstrAsgnmVO.setEduChasiOrd(a_str[1]);
|
||||
vEEduChasiInstrAsgnmService.insert(vEInstrAsgnmVO);
|
||||
}
|
||||
}
|
||||
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사배정 등록 처리 - 이전에 동일 학교 여부 체크
|
||||
*/
|
||||
|
||||
@ -17,11 +17,14 @@ import org.springframework.web.servlet.ModelAndView;
|
||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||
import kcc.com.cmm.ComDefaultVO;
|
||||
import kcc.com.cmm.LoginVO;
|
||||
import kcc.com.cmm.service.CmmnDetailCode;
|
||||
import kcc.com.cmm.service.EgovCmmUseService;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.com.cmm.util.StringUtil;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO;
|
||||
import kcc.let.sym.ccm.cde.service.EgovCcmCmmnDetailCodeManageService;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||
import kcc.let.utl.fcc.service.VEPagingUtil;
|
||||
import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService;
|
||||
@ -153,7 +156,8 @@ public class NewEduCnfrmMngTngrController {
|
||||
@Resource(name = "vEAStngMixService")
|
||||
private VEAStngMixService vEAStngMixService;
|
||||
|
||||
|
||||
@Resource(name = "CmmnDetailCodeManageService")
|
||||
private EgovCcmCmmnDetailCodeManageService cmmnDetailCodeManageService;
|
||||
|
||||
|
||||
/**
|
||||
@ -169,6 +173,9 @@ public class NewEduCnfrmMngTngrController {
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
System.out.println("vEEduAplctVO.getEduAplctOrd()");
|
||||
System.out.println(vEEduAplctVO.getEduAplctOrd());
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
@ -183,11 +190,11 @@ public class NewEduCnfrmMngTngrController {
|
||||
//System.out.println(vEEduAplctVO.getEduSlctCd()); //10-온라인, 20-오프라인
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEInstrDetailVO);
|
||||
//PaginationInfo paginationInfo = this.setPagingStep1(vEInstrDetailVO);
|
||||
|
||||
|
||||
//2. pageing step2
|
||||
vEInstrDetailVO = this.setPagingStep2(vEInstrDetailVO, paginationInfo);
|
||||
//vEInstrDetailVO = this.setPagingStep2(vEInstrDetailVO, paginationInfo);
|
||||
|
||||
//3. SelectPagingListQuery set 할 조건 설정
|
||||
String selectCondition = new String();
|
||||
@ -222,25 +229,24 @@ public class NewEduCnfrmMngTngrController {
|
||||
vEInstrDetailVO.setInstrDiv("10");
|
||||
vEInstrDetailVO.setSelectPagingListQuery(selectCondition);
|
||||
|
||||
List<VEInstrDetailVO> vEInstrDetailVOList = vEInstrMixService.selectPagingDetailList(vEInstrDetailVO);
|
||||
vEInstrDetailVO.setInstrNm(egovCryptoUtil.encrypt(vEInstrDetailVO.getInstrNm()));
|
||||
|
||||
List<VEInstrDetailVO> vEInstrDetailVOList = vEInstrMixService.selectDetailList(vEInstrDetailVO);
|
||||
|
||||
vEInstrDetailVOList = egovCryptoUtil.decryptVEInstrDetailVOList(vEInstrDetailVOList);
|
||||
|
||||
//4.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEInstrDetailVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("resultList", vEInstrDetailVOList);
|
||||
|
||||
|
||||
|
||||
//배치 목록
|
||||
//교육 목록
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo1 = this.setPagingStep_1(vEEduAplctVO);
|
||||
//PaginationInfo paginationInfo1 = this.setPagingStep_1(vEEduAplctVO);
|
||||
|
||||
//2. pageing step2
|
||||
vEEduAplctVO = this.setPagingStep_2(vEEduAplctVO, paginationInfo1);
|
||||
//vEEduAplctVO = this.setPagingStep_2(vEEduAplctVO, paginationInfo1);
|
||||
|
||||
vEEduAplctVO.setInstrDiv("10"); //청소년
|
||||
vEEduAplctVO.setLctrDivCd("10"); //청소년강의
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
@ -251,7 +257,7 @@ public class NewEduCnfrmMngTngrController {
|
||||
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
|
||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectTngrRsltList(vEEduAplctVO);
|
||||
VEEduAplctVO vo = new VEEduAplctVO();
|
||||
for(int i=0; i < vEEduAplctVOList.size(); i++) {
|
||||
vo = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVOList.get(i));
|
||||
@ -260,9 +266,9 @@ public class NewEduCnfrmMngTngrController {
|
||||
}
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo1 = this.setPagingStep_3(vEEduAplctVOList, paginationInfo1);
|
||||
//paginationInfo1 = this.setPagingStep_3(vEEduAplctVOList, paginationInfo1);
|
||||
|
||||
model.addAttribute("paginationInfo1", paginationInfo1);
|
||||
//model.addAttribute("paginationInfo1", paginationInfo1);
|
||||
model.addAttribute("cryptoUtil", egovCryptoUtil);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
@ -299,7 +305,7 @@ public class NewEduCnfrmMngTngrController {
|
||||
//vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||
//System.out.println(vEEduAplctVO.getEduSlctCd()); //10-온라인, 20-오프라인
|
||||
|
||||
//a
|
||||
//강사배정조건대상 가져오기
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
vEAStngVO.setCode("VEA007");
|
||||
vEAStngVO.setUseYn("Y");
|
||||
@ -336,56 +342,36 @@ public class NewEduCnfrmMngTngrController {
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
System.out.println("request.getParameter(10)");
|
||||
System.out.println(request.getParameter("10"));
|
||||
System.out.println(request.getParameter("20"));
|
||||
System.out.println(request.getParameter("30"));
|
||||
String s_ret = "";
|
||||
|
||||
//기존에 강사 배정이 안된 차시에 대해서만 자동 배정 조건에 따라서 강사 배정을 한다.
|
||||
|
||||
|
||||
//step0.소속 차시 정보 가져오기
|
||||
//step1.온오프라인 여부 확인
|
||||
//step2.대상 리스트 가져오기
|
||||
//step3.없으면 저장하고, 있으면 skip
|
||||
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
vEAStngVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
|
||||
//code-10
|
||||
vEAStngVO.setAsgnmCd("10");
|
||||
vEAStngVO.setUseYn(request.getParameter("10"));
|
||||
int i_ret = vEAStngService.update_VEAIAC(vEAStngVO);
|
||||
//작성자 정보
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
vEAStngVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
|
||||
//강사배정조건 대상 코드 가져오기
|
||||
CmmnDetailCodeVO searchVO = new CmmnDetailCodeVO();
|
||||
searchVO.setCodeId("VEA007");
|
||||
searchVO.setOrderByQuery(" CODE_NM ASC ");
|
||||
List<CmmnDetailCode> rList = (List<CmmnDetailCode>)cmmnDetailCodeManageService.selectCmmnDetailCodeDetailListWithCode(searchVO);
|
||||
|
||||
//강사배정조건 대상 코드 저장하기
|
||||
for (int i=0;i<rList.size();i++) {
|
||||
CmmnDetailCode tDetailCode = rList.get(i);
|
||||
|
||||
String s_code = tDetailCode.getCode();
|
||||
|
||||
//code-10
|
||||
vEAStngVO.setAsgnmCd(s_code);
|
||||
vEAStngVO.setUseYn(request.getParameter(s_code));
|
||||
int i_ret = vEAStngService.update_VEAIAC(vEAStngVO);
|
||||
|
||||
if (i_ret<=0) {
|
||||
s_ret = "fail";
|
||||
}
|
||||
}
|
||||
|
||||
if (i_ret<=0) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
|
||||
//code-20
|
||||
vEAStngVO.setAsgnmCd("20");
|
||||
vEAStngVO.setUseYn(request.getParameter("20"));
|
||||
i_ret = vEAStngService.update_VEAIAC(vEAStngVO);
|
||||
|
||||
if (i_ret<=0) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
|
||||
//code-30
|
||||
vEAStngVO.setAsgnmCd("30");
|
||||
vEAStngVO.setUseYn(request.getParameter("30"));
|
||||
i_ret = vEAStngService.update_VEAIAC(vEAStngVO);
|
||||
|
||||
if (i_ret<=0) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
return modelAndView;
|
||||
}
|
||||
//modelAndView.addObject("rsCnt", rs);
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
@ -404,108 +390,237 @@ public class NewEduCnfrmMngTngrController {
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
|
||||
//기준년도가 없으면 최종 신청년도가 속한 회차의 년도를 기본값으로 가져온다. // 없으면 올해가 기본
|
||||
{
|
||||
if ("".equals(vEEduAplctVO.getStngYr()) || vEEduAplctVO.getStngYr()==null) {
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
String s_stngYr = vEAStngMixService.selectEduGetStngYrToStr(vEAStngVO);
|
||||
vEEduAplctVO.setStngYr(s_stngYr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//강사 월별 시수 계산 가져오기
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
vEAStngVO.setYr(vEEduAplctVO.getStngYr()); //기준년도
|
||||
|
||||
List<VEAStngVO> asgnmStngVOList = vEAStngMixService.selectList_VEAIMT_1(vEAStngVO);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("asgnmStngVOList", asgnmStngVOList);
|
||||
|
||||
|
||||
return "oprtn/tngrVisitEdu/popup/instrMntTmMngPopup";
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사 월별 시수계산
|
||||
* fncSpcfcInstrAsgnmInfo
|
||||
*/
|
||||
|
||||
@RequestMapping("popup/instrMntTmMngPopupAjax.do")
|
||||
public ModelAndView instrMntTmMngPopupAjax(ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
//로그인 정보 가져오기
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
||||
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
||||
//로그인 처리====================================
|
||||
|
||||
//로그인 처리====================================
|
||||
//0.pageing step0
|
||||
//온라인 오프라인 여부 확인
|
||||
//배치대상신청정보
|
||||
//vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||
//System.out.println(vEEduAplctVO.getEduSlctCd()); //10-온라인, 20-오프라인
|
||||
//step1.현재 일별 강사수 확인#1
|
||||
//step2.총합 계산
|
||||
//step3.1일당 비율 계산
|
||||
//step4.일별 차시 확인#3
|
||||
//step5.일별 총합 차시 계산#2
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEInstrDetailVO);
|
||||
|
||||
|
||||
//2. pageing step2
|
||||
vEInstrDetailVO = this.setPagingStep2(vEInstrDetailVO, paginationInfo);
|
||||
|
||||
//3. SelectPagingListQuery set 할 조건 설정
|
||||
String selectCondition = new String();
|
||||
//3.1 제출 완료 후 사용중인 데이터 조회
|
||||
selectCondition += "AND a0.sbmt_yn='Y' AND a0.use_yn = 'Y'";
|
||||
//3.2 강사 테이블 성인강사여부 Y인것만 조회
|
||||
//selectCondition += "AND (b0.tngr_instr_yn ='Y' OR a0.qlfct_end_yn = 'Y') ";
|
||||
//3.3 이름 검색 시
|
||||
if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchKeyword())){
|
||||
//이름 암호화 - comDefaultVO 검색단어 공통 암호화
|
||||
ComDefaultVO comDefaultVO = new ComDefaultVO();
|
||||
comDefaultVO.setSearchKeyword(vEInstrDetailVO.getSearchKeyword());
|
||||
comDefaultVO = egovCryptoUtil.encryptComDefaultVO(comDefaultVO);
|
||||
vEInstrDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
//selectCondition += "AND a.instr_nm LIKE CONCAT ('%', '" +vEInstrDetailVO.getSearchKeyword() + "', '%')";
|
||||
selectCondition += "AND a0.instr_nm LIKE '%'||'" +vEInstrDetailVO.getSearchKeyword() + "'||'%'";
|
||||
comDefaultVO = egovCryptoUtil.decryptComDefaultVO(comDefaultVO);
|
||||
vEInstrDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
}
|
||||
//3.4 요청일 시작일 검색 시
|
||||
/*if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchStartDt())){
|
||||
selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') >= REPLACE('"+vEInstrDetailVO.getSearchStartDt()+"', '.', '')";
|
||||
}
|
||||
//3.5 요청일 종료일 검색 시
|
||||
if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchEndDt())){
|
||||
selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') <= REPLACE('"+vEInstrDetailVO.getSearchEndDt()+"', '.', '')";
|
||||
}*/
|
||||
|
||||
String s_yrMnt = request.getParameter("yrMnt");
|
||||
String s_stngYr = request.getParameter("stngYr");
|
||||
|
||||
//#1
|
||||
VEInstrDetailVO vEInstrDetailVO4 = null; //일별강사수 정보 - #1
|
||||
int i_rate_ttl = 0; //비율 총합
|
||||
int i_chasiCnfrmCnt = 0; //교육확정차시
|
||||
int i_rate_day = 0; //일당 차시수
|
||||
|
||||
//#2일별 총 차시
|
||||
int i_tm5Ttl = 0;
|
||||
int i_tm4Ttl = 0;
|
||||
int i_tm3Ttl = 0;
|
||||
int i_tm2Ttl = 0;
|
||||
int i_tm1Ttl = 0;
|
||||
int i_tm0Ttl = 0;
|
||||
|
||||
//#3일별 강사 시간
|
||||
int i_tm5 = 0;
|
||||
int i_tm4 = 0;
|
||||
int i_tm3 = 0;
|
||||
int i_tm2 = 0;
|
||||
int i_tm1 = 0;
|
||||
int i_tm0 = 0;
|
||||
|
||||
//step1.현재 일별 강사수 확인#1
|
||||
//정보변경 요청사항 있는 강사부터 조회
|
||||
VEInstrDetailVO vEInstrDetailVO = new VEInstrDetailVO();
|
||||
|
||||
//3. SelectPagingListQuery set 할 조건 설정
|
||||
String selectCondition = new String();
|
||||
//3.1 제출 완료 후 사용중인 데이터 조회
|
||||
selectCondition += "AND a0.sbmt_yn='Y' AND a0.use_yn = 'Y'";
|
||||
|
||||
vEInstrDetailVO.setOrderByQuery(" rqstCnt DESC ");
|
||||
|
||||
vEInstrDetailVO.setInstrDiv("10");
|
||||
vEInstrDetailVO.setSelectPagingListQuery(selectCondition);
|
||||
vEInstrDetailVO.setSearchQlfctEndYn("N");
|
||||
|
||||
List<VEInstrDetailVO> vEInstrDetailVOList = vEInstrMixService.selectPagingDetailList(vEInstrDetailVO);
|
||||
|
||||
vEInstrDetailVOList = egovCryptoUtil.decryptVEInstrDetailVOList(vEInstrDetailVOList);
|
||||
|
||||
//4.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEInstrDetailVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("resultList", vEInstrDetailVOList);
|
||||
|
||||
List<VEInstrDetailVO> vEInstrDetailVOList = vEInstrMixService.selectPagingDetailList4Asgnm(vEInstrDetailVO);
|
||||
|
||||
|
||||
//배치 목록
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo1 = this.setPagingStep_1(vEEduAplctVO);
|
||||
|
||||
//2. pageing step2
|
||||
vEEduAplctVO = this.setPagingStep_2(vEEduAplctVO, paginationInfo1);
|
||||
vEEduAplctVO.setInstrDiv("10"); //청소년
|
||||
vEEduAplctVO.setLctrDivCd("10"); //청소년강의
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
|
||||
if(!"".equals(vEEduAplctVO.getSearchInstrNm())) {
|
||||
vEEduAplctVO.setSearchInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchInstrNm()));
|
||||
}
|
||||
//step2.총합 계산
|
||||
if (vEInstrDetailVOList.size()>0) {
|
||||
vEInstrDetailVO4 = vEInstrDetailVOList.get(0);
|
||||
|
||||
|
||||
i_rate_ttl = 5*Integer.parseInt(vEInstrDetailVO4.getDay5cnt())
|
||||
+ 4*Integer.parseInt(vEInstrDetailVO4.getDay4cnt())
|
||||
+ 3*Integer.parseInt(vEInstrDetailVO4.getDay3cnt())
|
||||
+ 2*Integer.parseInt(vEInstrDetailVO4.getDay2cnt())
|
||||
+ 1*Integer.parseInt(vEInstrDetailVO4.getDay1cnt());
|
||||
|
||||
}
|
||||
|
||||
|
||||
//step3.1일당 비율 계산
|
||||
//강사 월별 시수 계산 가져오기
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
|
||||
vEAStngVO.setYr(s_stngYr); //기준년도
|
||||
vEAStngVO.setMnt(s_yrMnt); //기준년월
|
||||
try {
|
||||
i_chasiCnfrmCnt = vEAStngMixService.selectList_VEAIMT_2(vEAStngVO);
|
||||
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
||||
VEEduAplctVO vo = new VEEduAplctVO();
|
||||
for(int i=0; i < vEEduAplctVOList.size(); i++) {
|
||||
vo = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVOList.get(i));
|
||||
vEEduAplctVOList.get(i).setUserId(vo.getUserId());
|
||||
vEEduAplctVOList.get(i).setChrgNm(vo.getChrgNm());
|
||||
|
||||
|
||||
//일당 차시수
|
||||
i_rate_day = (int) Math.ceil((double)i_chasiCnfrmCnt / i_rate_ttl);
|
||||
|
||||
System.out.println("i_chasiCnfrmCnt");
|
||||
System.out.println(i_chasiCnfrmCnt);
|
||||
System.out.println(i_rate_ttl);
|
||||
System.out.println(i_rate_day);
|
||||
|
||||
//#3
|
||||
i_tm5 = i_rate_day*5;
|
||||
i_tm4 = i_rate_day*4;
|
||||
i_tm3 = i_rate_day*3;
|
||||
i_tm2 = i_rate_day*2;
|
||||
i_tm1 = i_rate_day*1;
|
||||
i_tm0 = i_rate_day*0;
|
||||
|
||||
|
||||
//#2
|
||||
i_tm5Ttl = i_tm5 * Integer.parseInt(vEInstrDetailVO4.getDay5cnt());
|
||||
i_tm4Ttl = i_tm4 * Integer.parseInt(vEInstrDetailVO4.getDay4cnt());
|
||||
i_tm3Ttl = i_tm3 * Integer.parseInt(vEInstrDetailVO4.getDay3cnt());
|
||||
i_tm2Ttl = i_tm2 * Integer.parseInt(vEInstrDetailVO4.getDay2cnt());
|
||||
i_tm1Ttl = i_tm1 * Integer.parseInt(vEInstrDetailVO4.getDay1cnt());
|
||||
i_tm0Ttl = i_tm0 * Integer.parseInt(vEInstrDetailVO4.getDay0cnt());
|
||||
|
||||
vEAStngVO.setMnt(s_yrMnt.split("[.]")[1]);
|
||||
vEAStngVO.setAplctChasi(Integer.toString(i_chasiCnfrmCnt));
|
||||
|
||||
vEAStngVO.setInstrEa5(vEInstrDetailVO4.getDay5cnt());
|
||||
vEAStngVO.setInstrTm5(Integer.toString(i_tm5));
|
||||
vEAStngVO.setAsgnmChasi5(Integer.toString(i_tm5Ttl));
|
||||
|
||||
vEAStngVO.setInstrEa4(vEInstrDetailVO4.getDay4cnt());
|
||||
vEAStngVO.setInstrTm4(Integer.toString(i_tm4));
|
||||
vEAStngVO.setAsgnmChasi4(Integer.toString(i_tm4Ttl));
|
||||
|
||||
vEAStngVO.setInstrEa3(vEInstrDetailVO4.getDay3cnt());
|
||||
vEAStngVO.setInstrTm3(Integer.toString(i_tm3));
|
||||
vEAStngVO.setAsgnmChasi3(Integer.toString(i_tm3Ttl));
|
||||
|
||||
vEAStngVO.setInstrEa2(vEInstrDetailVO4.getDay2cnt());
|
||||
vEAStngVO.setInstrTm2(Integer.toString(i_tm2));
|
||||
vEAStngVO.setAsgnmChasi2(Integer.toString(i_tm2Ttl));
|
||||
|
||||
vEAStngVO.setInstrEa1(vEInstrDetailVO4.getDay1cnt());
|
||||
vEAStngVO.setInstrTm1(Integer.toString(i_tm1));
|
||||
vEAStngVO.setAsgnmChasi1(Integer.toString(i_tm1Ttl));
|
||||
|
||||
vEAStngVO.setInstrEa0(vEInstrDetailVO4.getDay0cnt());
|
||||
vEAStngVO.setInstrTm0(Integer.toString(i_tm0));
|
||||
vEAStngVO.setAsgnmChasi0(Integer.toString(i_tm0Ttl));
|
||||
|
||||
|
||||
int i_ret = vEAStngService.update_VEAIMT(vEAStngVO);
|
||||
|
||||
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사 월별 시수계산-초기화
|
||||
* fncSpcfcInstrAsgnmInfo
|
||||
*/
|
||||
|
||||
@RequestMapping("popup/instrMntTmInitMngPopupAjax.do")
|
||||
public ModelAndView instrMntTmInitMngPopupAjax(ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo1 = this.setPagingStep_3(vEEduAplctVOList, paginationInfo1);
|
||||
//로그인 처리====================================
|
||||
|
||||
model.addAttribute("paginationInfo1", paginationInfo1);
|
||||
model.addAttribute("cryptoUtil", egovCryptoUtil);
|
||||
//step1.현재 일별 강사수 확인#1
|
||||
//step2.총합 계산
|
||||
//step3.1일당 비율 계산
|
||||
//step4.일별 차시 확인#3
|
||||
//step5.일별 총합 차시 계산#2
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEEduAplctVOList);
|
||||
|
||||
|
||||
|
||||
return "oprtn/tngrVisitEdu/popup/instrMntTmMngPopup";
|
||||
String s_yrMnt = request.getParameter("yrMnt");
|
||||
|
||||
//step3.1일당 비율 계산
|
||||
//강사 월별 시수 계산 가져오기
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
|
||||
vEAStngVO.setYr(s_yrMnt.substring(0,4)); //기준년
|
||||
vEAStngVO.setMnt(s_yrMnt.substring(5,7)); //기준월
|
||||
|
||||
int i_ret = vEAStngService.delete_VEAIMT(vEAStngVO);
|
||||
|
||||
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -534,98 +649,83 @@ public class NewEduCnfrmMngTngrController {
|
||||
//vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||
//System.out.println(vEEduAplctVO.getEduSlctCd()); //10-온라인, 20-오프라인
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEInstrDetailVO);
|
||||
|
||||
|
||||
//2. pageing step2
|
||||
vEInstrDetailVO = this.setPagingStep2(vEInstrDetailVO, paginationInfo);
|
||||
|
||||
//3. SelectPagingListQuery set 할 조건 설정
|
||||
String selectCondition = new String();
|
||||
//3.1 제출 완료 후 사용중인 데이터 조회
|
||||
selectCondition += "AND a0.sbmt_yn='Y' AND a0.use_yn = 'Y'";
|
||||
//3.2 강사 테이블 성인강사여부 Y인것만 조회
|
||||
//selectCondition += "AND (b0.tngr_instr_yn ='Y' OR a0.qlfct_end_yn = 'Y') ";
|
||||
//3.3 이름 검색 시
|
||||
if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchKeyword())){
|
||||
//이름 암호화 - comDefaultVO 검색단어 공통 암호화
|
||||
ComDefaultVO comDefaultVO = new ComDefaultVO();
|
||||
comDefaultVO.setSearchKeyword(vEInstrDetailVO.getSearchKeyword());
|
||||
comDefaultVO = egovCryptoUtil.encryptComDefaultVO(comDefaultVO);
|
||||
vEInstrDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
//selectCondition += "AND a.instr_nm LIKE CONCAT ('%', '" +vEInstrDetailVO.getSearchKeyword() + "', '%')";
|
||||
selectCondition += "AND a0.instr_nm LIKE '%'||'" +vEInstrDetailVO.getSearchKeyword() + "'||'%'";
|
||||
comDefaultVO = egovCryptoUtil.decryptComDefaultVO(comDefaultVO);
|
||||
vEInstrDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
}
|
||||
//3.4 요청일 시작일 검색 시
|
||||
/*if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchStartDt())){
|
||||
selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') >= REPLACE('"+vEInstrDetailVO.getSearchStartDt()+"', '.', '')";
|
||||
}
|
||||
//3.5 요청일 종료일 검색 시
|
||||
if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchEndDt())){
|
||||
selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') <= REPLACE('"+vEInstrDetailVO.getSearchEndDt()+"', '.', '')";
|
||||
}*/
|
||||
|
||||
//정보변경 요청사항 있는 강사부터 조회
|
||||
vEInstrDetailVO.setOrderByQuery(" rqstCnt DESC ");
|
||||
|
||||
vEInstrDetailVO.setInstrDiv("10");
|
||||
vEInstrDetailVO.setSelectPagingListQuery(selectCondition);
|
||||
|
||||
List<VEInstrDetailVO> vEInstrDetailVOList = vEInstrMixService.selectPagingDetailList(vEInstrDetailVO);
|
||||
|
||||
vEInstrDetailVOList = egovCryptoUtil.decryptVEInstrDetailVOList(vEInstrDetailVOList);
|
||||
|
||||
//4.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEInstrDetailVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
//강사배정조건대상 가져오기
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
vEAStngVO.setCode("VE0008");
|
||||
vEAStngVO.setUseYn("Y");
|
||||
|
||||
List<VEAStngVO> asgnmStngVOList = vEAStngMixService.selectList_VEAIRR_1(vEAStngVO);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("resultList", vEInstrDetailVOList);
|
||||
|
||||
|
||||
|
||||
//배치 목록
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo1 = this.setPagingStep_1(vEEduAplctVO);
|
||||
|
||||
//2. pageing step2
|
||||
vEEduAplctVO = this.setPagingStep_2(vEEduAplctVO, paginationInfo1);
|
||||
vEEduAplctVO.setInstrDiv("10"); //청소년
|
||||
vEEduAplctVO.setLctrDivCd("10"); //청소년강의
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
|
||||
if(!"".equals(vEEduAplctVO.getSearchInstrNm())) {
|
||||
vEEduAplctVO.setSearchInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchInstrNm()));
|
||||
}
|
||||
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
|
||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
||||
VEEduAplctVO vo = new VEEduAplctVO();
|
||||
for(int i=0; i < vEEduAplctVOList.size(); i++) {
|
||||
vo = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVOList.get(i));
|
||||
vEEduAplctVOList.get(i).setUserId(vo.getUserId());
|
||||
vEEduAplctVOList.get(i).setChrgNm(vo.getChrgNm());
|
||||
}
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo1 = this.setPagingStep_3(vEEduAplctVOList, paginationInfo1);
|
||||
|
||||
model.addAttribute("paginationInfo1", paginationInfo1);
|
||||
model.addAttribute("cryptoUtil", egovCryptoUtil);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEEduAplctVOList);
|
||||
|
||||
|
||||
model.addAttribute("asgnmStngVOList", asgnmStngVOList);
|
||||
|
||||
return "oprtn/tngrVisitEdu/popup/instrRsdncMngPopup";
|
||||
//instrRsdncMng
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사 배정 조건 관리 팝업
|
||||
* fncSpcfcInstrAsgnmInfo
|
||||
*/
|
||||
|
||||
@RequestMapping("popup/instrRsdncMngPopupAjax.do")
|
||||
public ModelAndView instrRsdncMngPopupAjax(ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
String s_ret = "";
|
||||
|
||||
VEAStngVO vEAStngVO = new VEAStngVO();
|
||||
|
||||
//작성자 정보
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
vEAStngVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
|
||||
//강사배정조건 대상 코드 가져오기
|
||||
CmmnDetailCodeVO searchVO = new CmmnDetailCodeVO();
|
||||
searchVO.setCodeId("VE0008");
|
||||
searchVO.setOrderByQuery(" CODE_NM ASC ");
|
||||
List<CmmnDetailCode> rList = (List<CmmnDetailCode>)cmmnDetailCodeManageService.selectCmmnDetailCodeDetailListWithCode(searchVO);
|
||||
|
||||
//강사배정조건 대상 코드 저장하기
|
||||
for (int i=0;i<rList.size();i++) {
|
||||
CmmnDetailCode tDetailCode = rList.get(i);
|
||||
|
||||
String s_code = tDetailCode.getCode();
|
||||
|
||||
//code-10
|
||||
vEAStngVO.setAreaCd(s_code);
|
||||
vEAStngVO.setRatio5(request.getParameter("ratio5_"+s_code));
|
||||
vEAStngVO.setRatio4(request.getParameter("ratio4_"+s_code));
|
||||
vEAStngVO.setRatio3(request.getParameter("ratio3_"+s_code));
|
||||
vEAStngVO.setRatio2(request.getParameter("ratio2_"+s_code));
|
||||
vEAStngVO.setRatio1(request.getParameter("ratio1_"+s_code));
|
||||
|
||||
int i_ret = vEAStngService.update_VEAIRR(vEAStngVO);
|
||||
/*
|
||||
if (i_ret<=0) {
|
||||
s_ret = "fail";
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
//
|
||||
|
||||
@ -214,7 +214,7 @@
|
||||
AND A.CODE = #code#
|
||||
</isNotEmpty>
|
||||
|
||||
ORDER BY 1=1
|
||||
ORDER BY 1
|
||||
|
||||
<isNotEmpty property="orderByQuery">
|
||||
, $orderByQuery$
|
||||
|
||||
@ -1673,6 +1673,287 @@
|
||||
</isNotEqual>
|
||||
</select>
|
||||
|
||||
<!-- 청소년 교육 결과 L page -->
|
||||
<select id="VEEduMIXDAO.selectTngrRsltList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO" remapResults="true">
|
||||
/* VEEduMIXDAO.selectTngrRsltList */
|
||||
SELECT
|
||||
AA.*,
|
||||
2 ,
|
||||
COUNT(1) OVER() AS totCnt
|
||||
FROM (
|
||||
SELECT
|
||||
a.edu_aplct_ord AS eduAplctOrd ,
|
||||
TO_CHAR(a.aprvl_pnttm,'YYYY-MM-DD') AS aprvlPnttm ,
|
||||
a.edu_slct_cd AS eduSlctCd ,
|
||||
a.edu_slct_area_cd AS eduSlctAreaCd ,
|
||||
a.schol_instt_nm AS scholInsttNm ,
|
||||
a.instt_div_cd AS insttDivCd ,
|
||||
a.instt_nm AS insttNm ,
|
||||
a.addr AS addr ,
|
||||
a.strt_oprtn_dt AS strtOprtnDt ,
|
||||
a.end_oprtn_dt AS endOprtnDt ,
|
||||
a.chrg_nm AS chrgNm ,
|
||||
a.schol_div_cd AS scholDivCd ,
|
||||
a.stndrd_schol_cd AS stndrdScholCd ,
|
||||
a.clphone AS clphone ,
|
||||
a.email AS email ,
|
||||
b.edu_chasi_ord AS eduChasiOrd ,
|
||||
b.lrn_tm AS lrnTm ,
|
||||
b.edu_hope_dt AS eduHopeDt ,
|
||||
b.instr_cnfrm_cd AS instrCnfrmCd ,
|
||||
b.strt_tm AS strtTm ,
|
||||
b.end_tm AS endTm ,
|
||||
b.trgt AS trgt ,
|
||||
b.prsnl AS eduPrsnl ,
|
||||
b.div_cd AS lctrDivCd ,
|
||||
NVL(b.chasi, 0) AS chasi,
|
||||
c.sbmt_yn AS sbmtYn ,
|
||||
d.user_id AS userId ,
|
||||
d.asgnm_aprvl_cd AS asgnmAprvlCd,
|
||||
e.instr_nm AS instrNm,
|
||||
g.atch_file_id AS atchFileId,
|
||||
g.APRVL_CD AS acmdtAprvlCd,
|
||||
d.rmrks AS rmrks,
|
||||
c.atch_file_id AS rprtAtchFileId,
|
||||
(select
|
||||
count(1)
|
||||
from
|
||||
ve_edu_rslt_rprt
|
||||
where 1=1
|
||||
AND edu_aplct_ord = a.edu_aplct_ord
|
||||
AND edu_chasi_ord = b.edu_chasi_ord
|
||||
AND frst_register_id = d.user_id
|
||||
AND sbmt_yn = 'Y') as cnt
|
||||
<isEqual property="asgnmAprvlCd" compareValue="30">
|
||||
,
|
||||
f.sbmt_yn AS feeSbmtYn,
|
||||
f.aprvl_cd AS feeAprvlCd,
|
||||
|
||||
NVL(TO_NUMBER(IF(f.instr_fee='',0,f.instr_fee)),0)
|
||||
+ NVL(TO_NUMBER(IF(f.bsns_trip_fee='',0,f.bsns_trip_fee)),0)
|
||||
+ NVL(TO_NUMBER(IF(f.spare_fee='',0,f.spare_fee)),0)
|
||||
+ NVL(TO_NUMBER(IF(f.special_work_allow='',0,f.special_work_allow)),0)
|
||||
+ NVL(TO_NUMBER(IF(f.distance_allow='',0,f.distance_allow)),0)
|
||||
+ NVL(TO_NUMBER(IF(f.traffic_fee='',0,f.traffic_fee)),0)
|
||||
- NVL(TO_NUMBER(IF(f.income_tax='',0,f.income_tax)),0)
|
||||
- NVL(TO_NUMBER(IF(f.local_income_tax='',0,f.local_income_tax)),0)
|
||||
AS totFee
|
||||
</isEqual>
|
||||
, (
|
||||
SELECT COUNT(1)
|
||||
FROM ve_new_noti e
|
||||
WHERE (b.edu_aplct_ord = e.tbl_uniq_ord OR b.edu_chasi_ord = e.tbl_uniq_ord)
|
||||
AND e.menu_no = #menuNo#
|
||||
AND e.frst_register_id = #notiUserId#
|
||||
)
|
||||
AS notiCnt
|
||||
, h.oneway_dstnc AS onewayDstnc
|
||||
,NVL((
|
||||
SELECT
|
||||
COUNT(1)
|
||||
FROM
|
||||
ve_instr a
|
||||
INNER JOIN ve_instr_detail e
|
||||
ON (
|
||||
a.user_id = e.user_id
|
||||
AND e.use_yn = 'Y'
|
||||
AND e.instr_div = '10'
|
||||
)
|
||||
INNER JOIN ve_edu_chasi_instr_asgnm_hstry i
|
||||
ON(
|
||||
/* 추가 강사 인원은 선정완료(20), 선정제외(30), 강의신청(50) 모두 나와야 한다. */
|
||||
e.user_id = i.user_id
|
||||
|
||||
AND i.hstry_cd in ('20', '30', '50')
|
||||
/*
|
||||
AND i.hstry_cd in ('50')
|
||||
*/
|
||||
)
|
||||
WHERE 1=1
|
||||
AND e.instr_div ='10'
|
||||
AND b.edu_aplct_ord = i.edu_aplct_ord
|
||||
AND b.edu_chasi_ord = i.edu_chasi_ord
|
||||
GROUP BY i.edu_aplct_ord , i.edu_chasi_ord
|
||||
),0) AS rowNo
|
||||
|
||||
FROM ve_edu_aplct a
|
||||
, ve_edu_chasi b
|
||||
|
||||
LEFT OUTER JOIN ve_edu_rslt_rprt c
|
||||
ON( b.edu_aplct_ord=c.edu_aplct_ord
|
||||
AND b.edu_chasi_ord=c.edu_chasi_ord)
|
||||
|
||||
LEFT OUTER JOIN ve_edu_chasi_instr_asgnm d
|
||||
ON( b.edu_aplct_ord=d.edu_aplct_ord
|
||||
AND b.edu_chasi_ord=d.edu_chasi_ord)
|
||||
<isNotEmpty property="searchTableJoin">
|
||||
<isEqual property="searchTableJoin" compareValue="tngrResult">
|
||||
INNER JOIN ve_instr_detail e
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
<isEmpty property="searchTableJoin">
|
||||
LEFT OUTER JOIN ve_instr_detail e
|
||||
</isEmpty>
|
||||
ON( d.user_id=e.user_id
|
||||
AND e.instr_div=#instrDiv#
|
||||
AND e.use_yn='Y'
|
||||
)
|
||||
<isEqual property="asgnmAprvlCd" compareValue="30">
|
||||
LEFT OUTER JOIN ve_instr_fee f
|
||||
ON( b.edu_aplct_ord = f.edu_aplct_ord
|
||||
AND b.edu_chasi_ord = f.edu_chasi_ord
|
||||
)
|
||||
</isEqual>
|
||||
/*
|
||||
LEFT OUTER JOIN ve_acmdt_aplct g
|
||||
*/
|
||||
|
||||
LEFT OUTER JOIN (
|
||||
SELECT B00.*
|
||||
FROM (
|
||||
SELECT edu_aplct_ord, edu_chasi_ord, MAX(acmdt_aplct_ord) acmdt_aplct_ord
|
||||
FROM ve_acmdt_aplct
|
||||
GROUP BY edu_aplct_ord, edu_chasi_ord
|
||||
)A00
|
||||
, ve_acmdt_aplct B00
|
||||
WHERE a00.edu_aplct_ord=b00.edu_aplct_ord
|
||||
AND a00.edu_chasi_ord=b00.edu_chasi_ord
|
||||
AND a00.acmdt_aplct_ord=b00.acmdt_aplct_ord
|
||||
) g
|
||||
|
||||
ON ( b.edu_aplct_ord=g.edu_aplct_ord
|
||||
AND b.edu_chasi_ord=g.edu_chasi_ord
|
||||
)
|
||||
LEFT OUTER JOIN ve_edu_instr_dstnc h
|
||||
ON b.edu_aplct_ord = h.edu_aplct_ord AND d.user_id = h.user_id
|
||||
WHERE 1=1
|
||||
AND a.edu_aplct_ord=b.edu_aplct_ord
|
||||
AND NVL(A.USE_YN, 'Y') <![CDATA[ <> ]]> 'N'
|
||||
<isNotEmpty property="lctrDivCd">
|
||||
AND a.LCTR_DIV_CD = #lctrDivCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="aprvlCd">
|
||||
AND a.aprvl_cd = #aprvlCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="instrCnfrmCd">
|
||||
AND b.instr_cnfrm_cd = #instrCnfrmCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchInsttDivCd">
|
||||
AND a.instt_div_cd = #searchInsttDivCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchEduSlctCd">
|
||||
AND a.edu_slct_cd = #searchEduSlctCd#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="feeSbmtYn">
|
||||
AND f.sbmt_yn = #feeSbmtYn#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="selectPagingListQuery">
|
||||
$selectPagingListQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchAsgnmAprvlCd">
|
||||
<isEqual property="searchAsgnmAprvlCd" compareValue="90">
|
||||
AND d.asgnm_aprvl_cd is null
|
||||
</isEqual>
|
||||
<isNotEqual property="searchAsgnmAprvlCd" compareValue="90">
|
||||
AND d.asgnm_aprvl_cd = #searchAsgnmAprvlCd#
|
||||
</isNotEqual>
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchStartDt">
|
||||
AND b.EDU_HOPE_DT <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchEndDt">
|
||||
AND b.EDU_HOPE_DT <![CDATA[ <= ]]> REPLACE(#searchEndDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
|
||||
<isEmpty property="searchStartDt">
|
||||
<isEmpty property="searchEndDt">
|
||||
AND 1=1
|
||||
</isEmpty>
|
||||
</isEmpty>
|
||||
) AA
|
||||
|
||||
WHERE 1=1
|
||||
|
||||
AND #eduAplctOrd# like '%'||AA.eduAplctOrd||'%'
|
||||
AND #eduAplctOrd# like '%'||AA.eduChasiOrd||'%'
|
||||
|
||||
|
||||
<isNotEmpty property="checkListQuery">
|
||||
$checkListQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
<isEqual property="searchSubmitYn" compareValue="Y">
|
||||
AND AA.CNT <![CDATA[ >= ]]> 1
|
||||
</isEqual>
|
||||
<isEqual property="searchSubmitYn" compareValue="N">
|
||||
AND AA.CNT = 0
|
||||
</isEqual>
|
||||
<isNotEmpty property="searchScholDivCd">
|
||||
AND AA.scholDivCd = #searchScholDivCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchEduSlctAreaCd">
|
||||
AND (
|
||||
(
|
||||
AA.eduSlctAreaCd = #searchEduSlctAreaCd#
|
||||
AND AA.eduSlctCd = '20'
|
||||
)
|
||||
OR
|
||||
(
|
||||
'400' = #searchEduSlctAreaCd#
|
||||
AND AA.eduSlctCd = '10'
|
||||
)
|
||||
)
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchScholNm">
|
||||
AND AA.scholInsttNm LIKE '%' || #searchScholNm# || '%'
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchInsttNm">
|
||||
AND AA.insttNm LIKE '%' || #searchInsttNm# || '%'
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchInstrNm">
|
||||
AND AA.instrNm LIKE '%' || #searchInstrNm# || '%'
|
||||
</isNotEmpty>
|
||||
<isEmpty property="searchCondition">
|
||||
<isNotEmpty property="searchKeyword">
|
||||
AND (
|
||||
A.SCHOL_INSTT_NM LIKE '%' || #searchKeyword# || '%' OR
|
||||
A.INSTT_NM LIKE '%' || #searchKeyword# || '%'
|
||||
)
|
||||
</isNotEmpty>
|
||||
</isEmpty>
|
||||
<isNotEmpty property="searchKeyword">
|
||||
<isEqual property="searchCondition" compareValue="0">
|
||||
AND (AA.scholInsttNm LIKE '%' || #searchKeyword# || '%' OR AA.instrNm LIKE '%' || #instrNm# || '%')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="1">
|
||||
AND AA.scholInsttNm LIKE '%' || #searchKeyword# || '%'
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="2">
|
||||
AND AA.instrNm LIKE '%' || #instrNm# || '%'
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="3">
|
||||
AND (AA.insttNm LIKE '%' || #searchKeyword# || '%' OR AA.instrNm LIKE '%' || #searchKeyword# || '%')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="4">
|
||||
AND AA.insttNm LIKE '%' || #searchKeyword# || '%'
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
ORDER BY 1
|
||||
|
||||
<isEmpty property="orderByQuery">
|
||||
, eduAplctOrd desc, eduChasiOrd
|
||||
</isEmpty>
|
||||
<isNotEmpty property="orderByQuery">
|
||||
, $orderByQuery$
|
||||
</isNotEmpty>
|
||||
</select>
|
||||
|
||||
<!-- 강사료 확정 처리 목록 L page -->
|
||||
<select id="VEEduMIXDAO.selectTngrFeePagingList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO" remapResults="true">
|
||||
/* VEEduMIXDAO.selectTngrFeePagingList */
|
||||
|
||||
@ -763,6 +763,285 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 강사 디테일 정보 L page -->
|
||||
<select id="VEInstrMixDAO.selectPagingDetailList4Asgnm" parameterClass="VEInstrDetailVO" resultClass="VEInstrDetailVO">
|
||||
/* VEInstrMixDAO.selectPagingDetailList4Asgnm */
|
||||
SELECT totCnt
|
||||
, sum(decode(workWeekCnt,5,1,0)) AS day5cnt
|
||||
, sum(decode(workWeekCnt,4,1,0)) AS day4cnt
|
||||
, sum(decode(workWeekCnt,3,1,0)) AS day3cnt
|
||||
, sum(decode(workWeekCnt,2,1,0)) AS day2cnt
|
||||
, sum(decode(workWeekCnt,1,1,0)) AS day1cnt
|
||||
, sum(decode(workWeekCnt,0,1,0)) AS day0cnt
|
||||
FROM (
|
||||
SELECT
|
||||
COUNT(1) OVER() AS totCnt
|
||||
|
||||
, CASE
|
||||
WHEN d.mon_lctr_yn = 'Y'
|
||||
THEN 1
|
||||
ELSE 0
|
||||
END
|
||||
+
|
||||
CASE
|
||||
WHEN d.tue_lctr_yn = 'Y'
|
||||
THEN 1
|
||||
ELSE 0
|
||||
END
|
||||
+
|
||||
CASE
|
||||
WHEN d.wed_lctr_yn = 'Y'
|
||||
THEN 1
|
||||
ELSE 0
|
||||
END
|
||||
+
|
||||
CASE
|
||||
WHEN d.thu_lctr_yn = 'Y'
|
||||
THEN 1
|
||||
ELSE 0
|
||||
END
|
||||
+
|
||||
CASE
|
||||
WHEN d.fri_lctr_yn = 'Y'
|
||||
THEN 1
|
||||
ELSE 0
|
||||
END AS workWeekCnt
|
||||
|
||||
, CASE WHEN d.mon_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS monLctrYn
|
||||
, CASE WHEN d.tue_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS tueLctrYn
|
||||
, CASE WHEN d.wed_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS wedLctrYn
|
||||
, CASE WHEN d.thu_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS thuLctrYn
|
||||
, CASE WHEN d.fri_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS friLctrYn
|
||||
, (SELECT g.sbmt_pnttm
|
||||
FROM ve_instr_detail g
|
||||
WHERE g.user_id = a.user_id
|
||||
AND g.instr_detail_ord = '1'
|
||||
AND g.instr_div = a.instr_div
|
||||
)AS regSbmtPnttm
|
||||
|
||||
FROM ( SELECT COUNT(1) OVER() AS totCnt ,
|
||||
a0.instr_div AS instrDiv ,
|
||||
a0.user_id AS userId ,
|
||||
a0.instr_detail_ord AS instrDetailOrd
|
||||
FROM ve_instr b0 ,
|
||||
ve_instr_detail a0
|
||||
WHERE 1 =1
|
||||
|
||||
<isNotEmpty property="selectPagingListQuery">
|
||||
$selectPagingListQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
GROUP BY a0.instr_div ,
|
||||
a0.user_id ,
|
||||
a0.instr_detail_ord
|
||||
) a00
|
||||
, <include refid="VEInstrMixDAO.detail_table_name"/> a
|
||||
LEFT OUTER JOIN ve_lctr_stng d
|
||||
ON (d.instr_div = a.instr_div
|
||||
AND d.user_id = a.user_id
|
||||
AND d.use_yn='Y'
|
||||
)
|
||||
WHERE 1=1
|
||||
AND a00.instrDiv =a.instr_div
|
||||
AND a00.userId =a.user_id
|
||||
AND a00.instrDetailOrd=a.instr_detail_ord
|
||||
|
||||
|
||||
<isNotEmpty property="searchQlfctEndYn">
|
||||
<isEqual property="searchQlfctEndYn" compareValue="Y">
|
||||
AND a.qlfct_end_yn = #searchQlfctEndYn#
|
||||
</isEqual>
|
||||
<isEqual property="searchQlfctEndYn" compareValue="N">
|
||||
AND (a.qlfct_end_yn = #searchQlfctEndYn# OR a.qlfct_end_yn IS NULL)
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searcDivCd">
|
||||
AND a.div_cd = #searcDivCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchEduSlctAreaCd">
|
||||
AND a.rsdne LIKE CONCAT('%',#rsdne#,'%')
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="instrDiv">
|
||||
AND a.instr_div=#instrDiv#
|
||||
</isNotEmpty>
|
||||
|
||||
)aa
|
||||
GROUP BY totcnt
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 특정 강사 배정용 리스트 L -->
|
||||
<select id="VEInstrMixDAO.selectDetailList" parameterClass="VEInstrDetailVO" resultClass="VEInstrDetailVO">
|
||||
/* VEInstrMixDAO.selectDetailList */
|
||||
SELECT
|
||||
COUNT(1) OVER() AS totCnt ,
|
||||
<include refid="VEInstrMixDAO.select_detail_column_name"/>,
|
||||
<!-- useYN이 N인 수정요청 조회-->
|
||||
(SELECT COUNT(1)
|
||||
FROM ve_lctr_stng vls
|
||||
WHERE a.instr_div = vls.instr_div
|
||||
AND a.user_id = vls.user_id
|
||||
AND vls.aprvl_cd = '10'
|
||||
AND vls.use_yn = 'N'
|
||||
) AS stngCnt,
|
||||
(SELECT COUNT(1)
|
||||
FROM <include refid="VEInstrMixDAO.detail_table_name"/> cc
|
||||
WHERE a.instr_div = cc.instr_div
|
||||
AND a.user_id = cc.user_id
|
||||
AND cc.aprvl_cd = '10'
|
||||
AND cc.use_yn = 'N'
|
||||
AND cc.instr_detail_ord > a.instr_detail_ord
|
||||
) AS rqstCnt
|
||||
|
||||
, (SELECT
|
||||
MAX(cc.instr_detail_ord)
|
||||
|
||||
FROM <include refid="VEInstrMixDAO.detail_table_name"/> cc
|
||||
WHERE a.instr_div = cc.instr_div
|
||||
AND a.user_id = cc.user_id
|
||||
AND cc.aprvl_cd = '10'
|
||||
AND cc.use_yn = 'N'
|
||||
AND cc.instr_detail_ord >a.instr_detail_ord
|
||||
) AS instrMdfyOrd
|
||||
|
||||
/*
|
||||
, (SELECT f.one_depth_nm
|
||||
FROM ve_rsdnc f
|
||||
WHERE f.post_id = MAX(e.area_cd)
|
||||
GROUP BY f.one_depth_nm
|
||||
) AS lctrAreaNm
|
||||
|
||||
, COUNT(e.area_cd) AS lctrAreaCnt
|
||||
*/
|
||||
|
||||
, ( SELECT f.one_depth_nm
|
||||
FROM ve_rsdnc f
|
||||
WHERE f.post_id = (
|
||||
SELECT MAX(ee.area_cd)
|
||||
FROM ve_lctr_area ee
|
||||
WHERE ee.instr_div = d.instr_div
|
||||
AND ee.user_id = d.user_id
|
||||
AND ee.lctr_stng_ord=d.lctr_stng_ord
|
||||
)
|
||||
GROUP BY f.one_depth_nm
|
||||
) AS lctrAreaNm
|
||||
|
||||
, (
|
||||
SELECT count(1)
|
||||
FROM ve_lctr_area ee
|
||||
WHERE ee.instr_div = d.instr_div
|
||||
AND ee.user_id = d.user_id
|
||||
AND ee.lctr_stng_ord=d.lctr_stng_ord
|
||||
) AS lctrAreaCnt
|
||||
|
||||
|
||||
, CASE WHEN d.mon_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS monLctrYn
|
||||
, CASE WHEN d.tue_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS tueLctrYn
|
||||
, CASE WHEN d.wed_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS wedLctrYn
|
||||
, CASE WHEN d.thu_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS thuLctrYn
|
||||
, CASE WHEN d.fri_lctr_yn = 'Y' THEN 1
|
||||
ELSE 0
|
||||
END AS friLctrYn
|
||||
, (SELECT g.sbmt_pnttm
|
||||
FROM ve_instr_detail g
|
||||
WHERE g.user_id = a.user_id
|
||||
AND g.instr_detail_ord = '1'
|
||||
AND g.instr_div = a.instr_div
|
||||
)AS regSbmtPnttm
|
||||
|
||||
FROM ( SELECT COUNT(1) OVER() AS totCnt ,
|
||||
a0.instr_div AS instrDiv ,
|
||||
a0.user_id AS userId ,
|
||||
a0.instr_detail_ord AS instrDetailOrd
|
||||
FROM ve_instr b0 ,
|
||||
ve_instr_detail a0
|
||||
WHERE 1 =1
|
||||
/*
|
||||
AND a0.user_id=b0.user_id
|
||||
AND a0.sbmt_yn='Y'
|
||||
AND a0.use_yn = 'Y'
|
||||
AND
|
||||
(
|
||||
b0.tngr_instr_yn ='Y' OR a0.qlfct_end_yn = 'Y'
|
||||
)
|
||||
AND a0.instr_div='10'
|
||||
*/
|
||||
|
||||
<isNotEmpty property="selectPagingListQuery">
|
||||
$selectPagingListQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
GROUP BY a0.instr_div ,
|
||||
a0.user_id ,
|
||||
a0.instr_detail_ord
|
||||
) a00
|
||||
, <include refid="VEInstrMixDAO.detail_table_name"/> a
|
||||
LEFT OUTER JOIN ve_lctr_stng d
|
||||
ON (d.instr_div = a.instr_div
|
||||
AND d.user_id = a.user_id
|
||||
AND d.use_yn='Y'
|
||||
)
|
||||
WHERE 1=1
|
||||
AND a00.instrDiv =a.instr_div
|
||||
AND a00.userId =a.user_id
|
||||
AND a00.instrDetailOrd=a.instr_detail_ord
|
||||
|
||||
|
||||
<isNotEmpty property="searchQlfctEndYn">
|
||||
<isEqual property="searchQlfctEndYn" compareValue="Y">
|
||||
AND a.qlfct_end_yn = #searchQlfctEndYn#
|
||||
</isEqual>
|
||||
<isEqual property="searchQlfctEndYn" compareValue="N">
|
||||
AND (a.qlfct_end_yn = #searchQlfctEndYn# OR a.qlfct_end_yn IS NULL)
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searcDivCd">
|
||||
AND a.div_cd = #searcDivCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchEduSlctAreaCd">
|
||||
AND a.rsdne LIKE CONCAT('%',#rsdne#,'%')
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="instrDiv">
|
||||
AND a.instr_div=#instrDiv#
|
||||
</isNotEmpty>
|
||||
|
||||
AND a.instr_nm=#instrNm#
|
||||
|
||||
<isNotEmpty property="searchStartDt">
|
||||
<isNotEmpty property="searchEndDt">
|
||||
HAVING TO_CHAR(regSbmtPnttm, 'YYYYMMDD') >= REPLACE(#searchStartDt#, '.', '')
|
||||
<![CDATA[ AND TO_CHAR(regSbmtPnttm, 'YYYYMMDD') <= REPLACE(#searchEndDt#, '.', '') ]]>
|
||||
</isNotEmpty>
|
||||
</isNotEmpty>
|
||||
ORDER BY 1
|
||||
|
||||
<isEmpty property="orderByQuery">
|
||||
, a.user_id desc
|
||||
</isEmpty>
|
||||
<isNotEmpty property="orderByQuery">
|
||||
, $orderByQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 강사 수정 요청 디테일 R -->
|
||||
<select id="VEInstrMixDAO.selectMdfyRqstDetail" parameterClass="VEInstrDetailVO" resultClass="VEInstrDetailVO">
|
||||
/* VEInstrMixDAO.selectMdfyRqstDetail */
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
<sqlMap namespace="VEAAsgnmStngMix">
|
||||
<typeAlias alias="VEAStngVO" type="kcc.ve.adv.tngr.stngInfo.service.VEAStngVO"/>
|
||||
|
||||
<!-- 강의가능기간 달력 용 데이터 -->
|
||||
<!-- 강사 배정 조건 용 데이터 -->
|
||||
<select id="VEAAsgnmStngMixDAO.selectList_VEAIAC_1" parameterClass="VEAStngVO" resultClass="VEAStngVO">
|
||||
/* VEAAsgnmStngMixDAO.selectList_VEAIAC_1 */
|
||||
|
||||
@ -19,5 +19,122 @@
|
||||
AND use_at=#useYn#
|
||||
ORDER BY a.code ASC
|
||||
|
||||
</select>
|
||||
</select>
|
||||
|
||||
<!-- 강사 거주지별 배정 비율 관리 데이터 -->
|
||||
<select id="VEAAsgnmStngMixDAO.selectList_VEAIRR_1" parameterClass="VEAStngVO" resultClass="VEAStngVO">
|
||||
/* VEAAsgnmStngMixDAO.selectList_VEAIRR_1 */
|
||||
|
||||
SELECT
|
||||
a.code_nm AS asgnmNm
|
||||
, NVL(b.area_cd, a.code) AS areaCd
|
||||
, b.ratio_5 AS ratio5
|
||||
, b.ratio_4 AS ratio4
|
||||
, b.ratio_3 AS ratio3
|
||||
, b.ratio_2 AS ratio2
|
||||
, b.ratio_1 AS ratio1
|
||||
FROM lettccmmndetailcode a
|
||||
LEFT OUTER JOIN vea_instr_rsdnc_ratio b
|
||||
on(a.code=b.area_cd)
|
||||
WHERE code_id=#code#
|
||||
AND use_at=#useYn#
|
||||
ORDER BY a.code_nm ASC
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 강사 월별 시수 관리 데이터 -->
|
||||
<select id="VEAAsgnmStngMixDAO.selectList_VEAIMT_1" parameterClass="VEAStngVO" resultClass="VEAStngVO">
|
||||
/* VEAAsgnmStngMixDAO.selectList_VEAIMT_1 */
|
||||
|
||||
SELECT a.yrmnt AS yr
|
||||
, max(b.eduhopedt)
|
||||
|
||||
, sum(NVL(c.aplct_chasi, b.chasi)) AS aplctChasi
|
||||
|
||||
|
||||
, max(c.instr_ea_5) AS instrEa5
|
||||
, max(c.instr_tm_5) AS instrTm5
|
||||
, max(c.ASGNM_CHASI_5) AS asgnmChasi5
|
||||
|
||||
, max(c.instr_ea_4) AS instrEa4
|
||||
, max(c.instr_tm_4) AS instrTm4
|
||||
, max(c.ASGNM_CHASI_4) AS asgnmChasi4
|
||||
|
||||
, max(c.instr_ea_3) AS instrEa3
|
||||
, max(c.instr_tm_3) AS instrTm3
|
||||
, max(c.ASGNM_CHASI_3) AS asgnmChasi3
|
||||
|
||||
, max(c.instr_ea_2) AS instrEa2
|
||||
, max(c.instr_tm_2) AS instrTm2
|
||||
, max(c.ASGNM_CHASI_2) AS asgnmChasi2
|
||||
|
||||
, max(c.instr_ea_1) AS instrEa1
|
||||
, max(c.instr_tm_1) AS instrTm1
|
||||
, max(c.ASGNM_CHASI_1) AS asgnmChasi1
|
||||
|
||||
, max(c.instr_ea_0) AS instrEa0
|
||||
, max(c.instr_tm_0) AS instrTm0
|
||||
, max(c.ASGNM_CHASI_0) AS asgnmChasi0
|
||||
FROM (
|
||||
SELECT #yr#||'.01' yrMnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.02' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.03' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.04' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.05' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.06' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.07' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.08' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.09' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.10' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.11' mnt FROM dual
|
||||
UNION ALL SELECT #yr#||'.12' mnt FROM dual
|
||||
)a
|
||||
LEFT OUTER JOIN (
|
||||
SELECT
|
||||
substring(b.edu_hope_dt,1,7) AS eduHopeDt
|
||||
, sum(b.chasi) AS chasi
|
||||
|
||||
FROM vea_lctr_rnds_stng z
|
||||
, ve_edu_aplct a
|
||||
, ve_edu_chasi b
|
||||
WHERE z.yr=#yr#
|
||||
AND a.edu_aplct_ord =b.edu_aplct_ord
|
||||
AND NVL(a.USE_YN, 'Y') <![CDATA[ <> ]]> 'N'
|
||||
AND a.LCTR_DIV_CD = '10'
|
||||
AND a.aprvl_cd = '60'
|
||||
AND z.rnds_ord=a.rnds_ord
|
||||
GROUP BY substring(b.edu_hope_dt,1,7)
|
||||
)b
|
||||
on(a.yrMnt=b.eduhopedt)
|
||||
LEFT OUTER JOIN vea_instr_mnt_tm c
|
||||
on(
|
||||
a.yrMnt=c.yr||'.'||c.mnt
|
||||
)
|
||||
GROUP BY rollup(a.yrmnt)
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 강사 월별 시수 관리 데이터 -->
|
||||
<select id="VEAAsgnmStngMixDAO.selectList_VEAIMT_2" parameterClass="VEAStngVO" resultClass="int">
|
||||
/* VEAAsgnmStngMixDAO.selectList_VEAIMT_2 */
|
||||
|
||||
SELECT
|
||||
/*
|
||||
substring(b.edu_hope_dt,1,7) AS eduHopeDt
|
||||
*/
|
||||
sum(b.chasi) AS chasi
|
||||
|
||||
FROM vea_lctr_rnds_stng z
|
||||
, ve_edu_aplct a
|
||||
, ve_edu_chasi b
|
||||
WHERE z.yr=#yr#
|
||||
AND a.edu_aplct_ord =b.edu_aplct_ord
|
||||
AND NVL(a.USE_YN, 'Y') <![CDATA[ <> ]]> 'N'
|
||||
AND a.LCTR_DIV_CD = '10'
|
||||
AND a.aprvl_cd = '60'
|
||||
AND z.rnds_ord=a.rnds_ord
|
||||
AND substring(b.edu_hope_dt,1,7)=#mnt#
|
||||
GROUP BY substring(b.edu_hope_dt,1,7)
|
||||
|
||||
</select>
|
||||
</sqlMap>
|
||||
|
||||
@ -36,7 +36,11 @@
|
||||
instr_ea_1,
|
||||
instr_tm_1,
|
||||
asgnm_chasi_1,
|
||||
|
||||
|
||||
instr_ea_0,
|
||||
instr_tm_0,
|
||||
asgnm_chasi_0,
|
||||
|
||||
frst_regist_pnttm,
|
||||
frst_register_id,
|
||||
last_updt_pnttm,
|
||||
@ -71,7 +75,11 @@
|
||||
instr_ea_1 AS instrEa1,
|
||||
instr_tm_1 AS instrTm1,
|
||||
asgnm_chasi_1 AS asgnmChasi1,
|
||||
|
||||
|
||||
instr_ea_0 AS instrEa0,
|
||||
instr_tm_0 AS instrTm0,
|
||||
asgnm_chasi_0 AS asgnmChasi0,
|
||||
|
||||
TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm,
|
||||
a.frst_register_id AS frstRegisterId,
|
||||
TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS lastUpdtPnttm,
|
||||
@ -115,7 +123,11 @@
|
||||
|
||||
#instrEa1#,
|
||||
#instrTm1#,
|
||||
#asgnmChasi1#,
|
||||
#asgnmChasi1#,
|
||||
|
||||
#instrEa0#,
|
||||
#instrTm0#,
|
||||
#asgnmChasi0#,
|
||||
|
||||
SYSDATE,
|
||||
#frstRegisterId#,
|
||||
@ -178,7 +190,17 @@
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi1">
|
||||
AND asgnm_chasi_1=#asgnmChasi1#
|
||||
|
||||
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrEa0">
|
||||
AND instr_ea_0=#instrEa0#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrTm0">
|
||||
AND instr_tm_0=#instrTm0#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi0">
|
||||
AND asgnm_chasi_0=#asgnmChasi0#
|
||||
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
@ -233,7 +255,11 @@
|
||||
#instrEa1#,
|
||||
#instrTm1#,
|
||||
#asgnmChasi1#,
|
||||
|
||||
|
||||
#instrEa0#,
|
||||
#instrTm0#,
|
||||
#asgnmChasi0#,
|
||||
|
||||
SYSDATE,
|
||||
#frstRegisterId#,
|
||||
NULL,
|
||||
@ -245,57 +271,67 @@
|
||||
, last_updt_pnttm = SYSDATE
|
||||
|
||||
<isNotEmpty property="aplctChasi">
|
||||
AND aplct_chasi=#aplctChasi#
|
||||
, aplct_chasi=#aplctChasi#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrEa5">
|
||||
AND instr_ea_5=#instrEa5#
|
||||
, instr_ea_5=#instrEa5#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrTm5">
|
||||
AND instr_tm_5=#instrTm5#
|
||||
, instr_tm_5=#instrTm5#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi5">
|
||||
AND asgnm_chasi_5=#asgnmChasi5#
|
||||
, asgnm_chasi_5=#asgnmChasi5#
|
||||
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrEa4">
|
||||
AND instr_ea_4=#instrEa4#
|
||||
, instr_ea_4=#instrEa4#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrTm4">
|
||||
AND instr_tm_4=#instrTm4#
|
||||
, instr_tm_4=#instrTm4#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi4">
|
||||
AND asgnm_chasi_4=#asgnmChasi4#
|
||||
, asgnm_chasi_4=#asgnmChasi4#
|
||||
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrEa3">
|
||||
AND instr_ea_3=#instrEa3#
|
||||
, instr_ea_3=#instrEa3#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrTm3">
|
||||
AND instr_tm_3=#instrTm3#
|
||||
, instr_tm_3=#instrTm3#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi3">
|
||||
AND asgnm_chasi_3=#asgnmChasi3#
|
||||
, asgnm_chasi_3=#asgnmChasi3#
|
||||
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrEa2">
|
||||
AND instr_ea_2=#instrEa2#
|
||||
, instr_ea_2=#instrEa2#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrTm2">
|
||||
AND instr_tm_2=#instrTm2#
|
||||
, instr_tm_2=#instrTm2#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi2">
|
||||
AND asgnm_chasi_2=#asgnmChasi2#
|
||||
, asgnm_chasi_2=#asgnmChasi2#
|
||||
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrEa1">
|
||||
AND instr_ea_1=#instrEa1#
|
||||
, instr_ea_1=#instrEa1#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrTm1">
|
||||
AND instr_tm_1=#instrTm1#
|
||||
, instr_tm_1=#instrTm1#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi1">
|
||||
AND asgnm_chasi_1=#asgnmChasi1#
|
||||
|
||||
, asgnm_chasi_1=#asgnmChasi1#
|
||||
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrEa0">
|
||||
, instr_ea_0=#instrEa0#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="instrTm0">
|
||||
, instr_tm_0=#instrTm0#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="asgnmChasi0">
|
||||
, asgnm_chasi_0=#asgnmChasi0#
|
||||
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
|
||||
@ -77,19 +77,19 @@
|
||||
, last_updt_pnttm = SYSDATE
|
||||
|
||||
<isNotEmpty property="ratio5">
|
||||
AND ratio_5=#ratio5#
|
||||
, ratio_5=#ratio5#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio4">
|
||||
AND ratio_4=#ratio4#
|
||||
, ratio_4=#ratio4#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio3">
|
||||
AND ratio_3=#ratio3#
|
||||
, ratio_3=#ratio3#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio2">
|
||||
AND ratio_2=#ratio2#
|
||||
, ratio_2=#ratio2#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio1">
|
||||
AND ratio_1=#ratio1#
|
||||
, ratio_1=#ratio1#
|
||||
|
||||
</isNotEmpty>
|
||||
|
||||
@ -139,21 +139,21 @@
|
||||
, last_updt_pnttm = SYSDATE
|
||||
|
||||
<isNotEmpty property="ratio5">
|
||||
AND ratio_5=#ratio5#
|
||||
, ratio_5=#ratio5#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio4">
|
||||
AND ratio_4=#ratio4#
|
||||
, ratio_4=#ratio4#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio3">
|
||||
AND ratio_3=#ratio3#
|
||||
, ratio_3=#ratio3#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio2">
|
||||
AND ratio_2=#ratio2#
|
||||
, ratio_2=#ratio2#
|
||||
|
||||
</isNotEmpty><isNotEmpty property="ratio1">
|
||||
AND ratio_1=#ratio1#
|
||||
, ratio_1=#ratio1#
|
||||
|
||||
</isNotEmpty>
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
</update>
|
||||
|
||||
@ -683,8 +683,31 @@
|
||||
return;
|
||||
}
|
||||
|
||||
var fnExit = false;
|
||||
|
||||
chkStatCd = "30";
|
||||
msg = "특정강사배정(교육확정 건)";
|
||||
|
||||
var varEduAplctOrd = '';
|
||||
|
||||
$('input:checkbox[name="chk"]:checked').each(function() {
|
||||
if(!fnExit){
|
||||
varEduAplctOrd = varEduAplctOrd + $(this).val() + "__";
|
||||
if($(this).attr("class") == chkStatCd) {
|
||||
alert("선택한 목록 중 " + msg + "이 불가능한 건이 있습니다.");
|
||||
fnExit = true;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
//체크한 리스트 중 해당 상태에 실행 불가능한 건이 있는지 체크 후, 존재 시 함수 종료
|
||||
if(fnExit) return false;
|
||||
|
||||
|
||||
var form = document.listForm;
|
||||
var form = document.popForm;
|
||||
|
||||
form.eduAplctOrd.value = varEduAplctOrd;
|
||||
|
||||
form.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/popup/spcfcInstrAsgnmPopup.do'/>";
|
||||
|
||||
@ -811,11 +834,8 @@
|
||||
</div>
|
||||
<div class="right_box">
|
||||
<button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">강사배정조건관리</button>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMntTmMng(); return false;">강사월별시수계산X</button>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrRsdncMng(); return false;">강사거주지별배정비율설정X</button>
|
||||
|
||||
|
||||
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMntTmMng(); return false;">강사월별시수계산</button>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrRsdncMng(); return false;">강사거주지별배정비율설정</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -830,10 +850,10 @@
|
||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
||||
<div class="btn_wrap btn_layout01" style="width:100%;">
|
||||
<div class="btn_right" style="width:100%;margin-bottom:40px;">
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnm(); return false;">강사배정(전체)</button>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnmEA(); return false;">강사배정(개별)</button>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnm(); return false;">강사배정(전체)X</button>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnmEA(); return false;">강사배정(개별)X</button>
|
||||
|
||||
<button type="button" style="width:200px;" class="btn_type06" onclick="fncSpcfcInstrAsgnmInfo(); return false;">특정강사배정X</button>
|
||||
<button type="button" style="width:200px;" class="btn_type06" onclick="fncSpcfcInstrAsgnmInfo(); return false;">특정강사배정</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -178,7 +178,7 @@
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tbody>
|
||||
|
||||
<c:forEach var="row" items="${asgnmStngVOList}" varStatus="status">
|
||||
<tr>
|
||||
@ -194,10 +194,6 @@
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
@ -74,21 +74,15 @@
|
||||
*/
|
||||
}
|
||||
|
||||
function fncInstrAsgnm(id, p_rank) {
|
||||
$("#userId").val(id);
|
||||
|
||||
if (p_rank=='-'){
|
||||
$("#rmrks").val(p_rank);
|
||||
}else{
|
||||
$("#rmrks").val("배정기준"+p_rank+"순위");
|
||||
}
|
||||
|
||||
function fncInstrAsgnmCndtnMng(p_yrMnt) {
|
||||
|
||||
$("#yrMnt").val(p_yrMnt);
|
||||
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrAsgnmAjax.do",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrMntTmMngPopupAjax.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
@ -98,8 +92,9 @@
|
||||
success:function(returnData){
|
||||
if(returnData.result == 'success'){
|
||||
alert("저장 되었습니다.");
|
||||
opener.location.reload();
|
||||
fncPopClose();
|
||||
//opener.location.reload();
|
||||
//fncPopClose();
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
@ -109,6 +104,37 @@
|
||||
|
||||
|
||||
}
|
||||
|
||||
function fncInstrAsgnmCndtnInitMng(p_yrMnt) {
|
||||
|
||||
$("#yrMnt").val(p_yrMnt);
|
||||
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrMntTmInitMngPopupAjax.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == 'success'){
|
||||
alert("저장 되었습니다.");
|
||||
//opener.location.reload();
|
||||
//fncPopClose();
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
//동일 학교 여부 체크
|
||||
function fncInstrAsgnm_bef(id, p_rank) {
|
||||
@ -148,7 +174,23 @@
|
||||
function reloadPage(){
|
||||
location.reload();
|
||||
}
|
||||
|
||||
function fncGoListReset(){
|
||||
$("#rndsOrd").val('');
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.createForm ;
|
||||
//listForm.searchCondition.value = $('#searchCondition').val();
|
||||
//listForm.searchKeyword.value = $('#searchKeyword').val();
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/popup/instrMntTmMngPopup.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@ -163,229 +205,249 @@
|
||||
<input type="hidden" name="userId" id="userId" />
|
||||
<input type="hidden" name="rmrks" id="rmrks" />
|
||||
<input type="hidden" name="asgnmAprvlCd" value="${vEEduAplctVO.asgnmAprvlCd}"/>
|
||||
</form:form>
|
||||
<form:form id="listForm" name="listForm" method="post" onsubmit="return false;">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" value="<c:out value="${vEEduAplctVO.eduAplctOrd}" />" />
|
||||
<input type="hidden" name="eduChasiOrd" value="<c:out value="${vEEduAplctVO.eduChasiOrd}" />" />
|
||||
<input type="hidden" name="instrDiv" value="<c:out value="${vEEduAplctVO.instrDiv}" />" /><!-- 성인 -->
|
||||
|
||||
<input type="hidden" name="yrMnt" id="yrMnt" />
|
||||
|
||||
|
||||
<div class="area_popup">
|
||||
<div class="cont_popup">
|
||||
|
||||
<div class="cont_popup">
|
||||
|
||||
<div class="pop_tb_tit01">
|
||||
<p>강사 월별 시수 계산</p>
|
||||
</div>
|
||||
|
||||
<!-- list_top -->
|
||||
<div class="list_top">
|
||||
<div class="list_top_1">
|
||||
<div class="util_left">
|
||||
<p>구분1</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
|
||||
<p> 년도 </p>
|
||||
<ve:select codeId="VE0029" name="stngYr" id="stngYr" css="class='sel_type1'"
|
||||
selectedValue="${vEEduAplctVO.stngYr}"
|
||||
onChange="fncGoListReset(); return false;"
|
||||
/>
|
||||
|
||||
<!--
|
||||
<p> 지역 </p>
|
||||
<ve:select codeId="VE0008" name="areaCd" id="areaCd" css="class='sel_type1'"
|
||||
selectedValue="${vELctrDetailVO.areaCd}" defaultValue=''
|
||||
defaultText='전체'
|
||||
/>
|
||||
-->
|
||||
<!-- <button class="btn_type08" onclick="fncGoList(); return false;">검색</button> -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
|
||||
<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;"> --%>
|
||||
<col style="width: 7%;">
|
||||
<col style="width: 7%;">
|
||||
|
||||
<col style="width: 7%;">
|
||||
<col style="width: 9%;">
|
||||
|
||||
<!--
|
||||
<col style="width: 4%;">
|
||||
<col style="width: 4%;">
|
||||
<col style="width: 4%;">
|
||||
-->
|
||||
|
||||
<col style="width: 3%;">
|
||||
<col style="width: 4%;">
|
||||
<col style="width: 3%;">
|
||||
|
||||
<col style="width: 3%;">
|
||||
<col style="width: 4%;">
|
||||
<col style="width: 3%;">
|
||||
|
||||
<col style="width: 3%;">
|
||||
<col style="width: 4%;">
|
||||
<col style="width: 3%;">
|
||||
|
||||
<col style="width: 3%;">
|
||||
<col style="width: 4%;">
|
||||
<col style="width: 3%;">
|
||||
|
||||
<col style="width: 3%;">
|
||||
<col style="width: 4%;">
|
||||
<col style="width: 3%;">
|
||||
|
||||
<col style="width: 3%;">
|
||||
<col style="width: 3%;">
|
||||
<col style="width: 3%;">
|
||||
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col"></th>
|
||||
<th scope="col"><button type="button" class="btn_type04" onclick="fncInstrAsgnmCndtnMng(); return false;">초기화</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col"><button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng(); return false;">계산</button></th>
|
||||
<th scope="col">계</th>
|
||||
<th scope="col" colspan="2" rowspan="2">교육일정(월)</th>
|
||||
|
||||
<th scope="col" rowspan="2">교육확정차시</th>
|
||||
<!-- <th scope="col" colspan="3">구분</th> -->
|
||||
|
||||
<th scope="col" colspan="3">5일</th>
|
||||
<th scope="col" colspan="3">4일</th>
|
||||
<th scope="col" colspan="3">3일</th>
|
||||
<th scope="col" colspan="3">2일</th>
|
||||
<th scope="col" colspan="3">1일</th>
|
||||
<th scope="col" colspan="3">0일</th>
|
||||
</tr>
|
||||
<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>
|
||||
<th scope="col">강사</th>
|
||||
<th scope="col">차시</th>
|
||||
<th scope="col">시간</th>
|
||||
|
||||
<th scope="col">강사</th>
|
||||
<th scope="col">차시</th>
|
||||
<th scope="col">시간</th>
|
||||
|
||||
<th scope="col">강사</th>
|
||||
<th scope="col">차시</th>
|
||||
<th scope="col">시간</th>
|
||||
|
||||
<th scope="col">강사</th>
|
||||
<th scope="col">차시</th>
|
||||
<th scope="col">시간</th>
|
||||
|
||||
<th scope="col">강사</th>
|
||||
<th scope="col">차시</th>
|
||||
<th scope="col">시간</th>
|
||||
|
||||
<th scope="col">강사</th>
|
||||
<th scope="col">차시</th>
|
||||
<th scope="col">시간</th>
|
||||
</tr>
|
||||
<!--
|
||||
<tr>
|
||||
<th scope="col" colspan="2">거주지별비율</th>
|
||||
|
||||
<th scope="col">5일</th>
|
||||
<th scope="col">4일</th>
|
||||
<th scope="col">3일</th>
|
||||
<th scope="col">2일</th>
|
||||
<th scope="col">1일</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col"></th>
|
||||
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
</tr>
|
||||
-->
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
<c:forEach var="row" items="${asgnmStngVOList}" varStatus="status">
|
||||
<tr>
|
||||
<td scope="col">교육접수차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">100차시</td>
|
||||
<td scope="col">1200차시</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">구분</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
<td scope="col">강사|차시|시간(인)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">5일</td>
|
||||
<td scope="col">40|800|20</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">40|800|20</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">4일</td>
|
||||
<td scope="col">30|480|16</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">30|480|16</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">3일</td>
|
||||
<td scope="col">20|240|12</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">20|240|12</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">2일</td>
|
||||
<td scope="col">10|80|8</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">10|80|8</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">1일</td>
|
||||
<td scope="col">5|20|4</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">5|20|4</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">0일</td>
|
||||
<td scope="col">5|0|0</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">5|0|0</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">계</td>
|
||||
<td scope="col">110|1620|</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">||</td>
|
||||
<td scope="col">110|1620|</td>
|
||||
<td>
|
||||
<c:choose>
|
||||
<c:when test="${row.instrEa5 eq null}">
|
||||
<button type="button" class="btn_type06" onclick="fncInstrAsgnmCndtnMng('${row.yr}'); return false;">계산</button>
|
||||
</c:when>
|
||||
<c:when test="${row.yr eq null}">
|
||||
총계
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<button type="button" class="btn_type04" onclick="fncInstrAsgnmCndtnInitMng('${row.yr}'); return false;">초기화</button>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
<td>
|
||||
<p><c:out value='${row.yr}'/></p>
|
||||
</td>
|
||||
<td>
|
||||
<p><c:out value='${row.aplctChasi}' default='0'/>차시</p>
|
||||
</td>
|
||||
<c:choose>
|
||||
<c:when test="${row.yr eq null}">
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<td><p><c:out value='${row.instrEa5}'/></p></td>
|
||||
<td><p><c:out value='${row.asgnmChasi5}'/></p></td>
|
||||
<td><p><c:out value='${row.instrTm5}'/></p></td>
|
||||
|
||||
<td><p><c:out value='${row.instrEa4}'/></p></td>
|
||||
<td><p><c:out value='${row.asgnmChasi4}'/></p></td>
|
||||
<td><p><c:out value='${row.instrTm4}'/></p></td>
|
||||
|
||||
<td><p><c:out value='${row.instrEa3}'/></p></td>
|
||||
<td><p><c:out value='${row.asgnmChasi3}'/></p></td>
|
||||
<td><p><c:out value='${row.instrTm3}'/></p></td>
|
||||
|
||||
<td><p><c:out value='${row.instrEa2}'/></p></td>
|
||||
<td><p><c:out value='${row.asgnmChasi2}'/></p></td>
|
||||
<td><p><c:out value='${row.instrTm2}'/></p></td>
|
||||
|
||||
<td><p><c:out value='${row.instrEa1}'/></p></td>
|
||||
<td><p><c:out value='${row.asgnmChasi1}'/></p></td>
|
||||
<td><p><c:out value='${row.instrTm1}'/></p></td>
|
||||
|
||||
<td><p><c:out value='${row.instrEa0}'/></p></td>
|
||||
<td><p><c:out value='${row.asgnmChasi0}'/></p></td>
|
||||
<td><p><c:out value='${row.instrTm0}'/></p></td>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
|
||||
|
||||
</tr>
|
||||
</c:forEach>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!--
|
||||
<div class="btn_wrap_pop btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
@ -395,7 +457,8 @@
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -75,20 +75,11 @@
|
||||
}
|
||||
|
||||
function fncInstrAsgnm(id, p_rank) {
|
||||
$("#userId").val(id);
|
||||
|
||||
if (p_rank=='-'){
|
||||
$("#rmrks").val(p_rank);
|
||||
}else{
|
||||
$("#rmrks").val("배정기준"+p_rank+"순위");
|
||||
}
|
||||
|
||||
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrAsgnmAjax.do",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrRsdncMngPopupAjax.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
@ -98,16 +89,13 @@
|
||||
success:function(returnData){
|
||||
if(returnData.result == 'success'){
|
||||
alert("저장 되었습니다.");
|
||||
opener.location.reload();
|
||||
fncPopClose();
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
//동일 학교 여부 체크
|
||||
@ -148,7 +136,25 @@
|
||||
function reloadPage(){
|
||||
location.reload();
|
||||
}
|
||||
|
||||
|
||||
//체크박스 전체 선택
|
||||
function chkAll(thisObj){
|
||||
$("input[name=chk]").prop("checked" , $(thisObj).is(":checked"));
|
||||
}
|
||||
|
||||
function fncInstrMassAsgnm(){
|
||||
var varEduAplctOrd = '';
|
||||
$('input:checkbox[name="chk"]:checked').each(function() {
|
||||
//alert($(this).val());
|
||||
|
||||
$("#ratio5_"+$(this).val()).val($("#ratio5_default").val());
|
||||
$("#ratio4_"+$(this).val()).val($("#ratio4_default").val());
|
||||
$("#ratio3_"+$(this).val()).val($("#ratio3_default").val());
|
||||
$("#ratio2_"+$(this).val()).val($("#ratio2_default").val());
|
||||
$("#ratio1_"+$(this).val()).val($("#ratio1_default").val());
|
||||
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@ -163,74 +169,110 @@
|
||||
<input type="hidden" name="userId" id="userId" />
|
||||
<input type="hidden" name="rmrks" id="rmrks" />
|
||||
<input type="hidden" name="asgnmAprvlCd" value="${vEEduAplctVO.asgnmAprvlCd}"/>
|
||||
</form:form>
|
||||
<form:form id="listForm" name="listForm" method="post" onsubmit="return false;">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" value="<c:out value="${vEEduAplctVO.eduAplctOrd}" />" />
|
||||
<input type="hidden" name="eduChasiOrd" value="<c:out value="${vEEduAplctVO.eduChasiOrd}" />" />
|
||||
<input type="hidden" name="instrDiv" value="<c:out value="${vEEduAplctVO.instrDiv}" />" /><!-- 성인 -->
|
||||
|
||||
|
||||
|
||||
<div class="area_popup">
|
||||
<div class="cont_popup">
|
||||
|
||||
<div class="pop_tb_tit01">
|
||||
<p>강사 배정 조건 관리</p>
|
||||
<p>강사 거주지별 배정 비율 관리</p>
|
||||
</div>
|
||||
|
||||
<!-- list_top -->
|
||||
<div class="list_top">
|
||||
<div class="list_top_1">
|
||||
<div class="util_left">
|
||||
<p>구분1</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
|
||||
<td>
|
||||
5일<input type="text" id="ratio5_default" name="ratio5_default"
|
||||
style="width:45px;" class="search_input" value="0"
|
||||
maxLength="3"
|
||||
/>
|
||||
</td>
|
||||
<td>
|
||||
4일<input type="text" id="ratio4_default" name="ratio4_default"
|
||||
style="width:45px;" class="search_input" value="0"
|
||||
maxLength="3"
|
||||
/>
|
||||
</td>
|
||||
<td>
|
||||
3일<input type="text" id="ratio3_default" name="ratio3_default"
|
||||
style="width:45px;" class="search_input" value="0"
|
||||
maxLength="3"
|
||||
/>
|
||||
</td>
|
||||
<td>
|
||||
2일<input type="text" id="ratio2_default" name="ratio2_default"
|
||||
style="width:45px;" class="search_input" value="0"
|
||||
maxLength="3"
|
||||
/>
|
||||
</td>
|
||||
<td>
|
||||
1일<input type="text" id="ratio1_default" name="ratio1_default"
|
||||
style="width:45px;" class="search_input" value="0"
|
||||
maxLength="3"
|
||||
/>
|
||||
</td>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnm(); return false;">선택지역일괄적용</button>
|
||||
|
||||
<!--
|
||||
<p> 지역 </p>
|
||||
<ve:select codeId="VE0008" name="areaCd" id="areaCd" css="class='sel_type1'"
|
||||
selectedValue="${vELctrDetailVO.areaCd}" defaultValue=''
|
||||
defaultText='전체'
|
||||
/>
|
||||
-->
|
||||
<!-- <button class="btn_type08" onclick="fncGoList(); return false;">검색</button> -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 7%;">
|
||||
<col style="width: auto;">
|
||||
<col style="width: 7%;">
|
||||
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<col style="width: 5%;">
|
||||
<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%;">
|
||||
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">거주지별비율</th>
|
||||
<th scope="col" colspan="3">
|
||||
<input type="checkbox" name="checkAll" id="checkAll" onclick="chkAll(this);" /><label for="checkAll"></label>
|
||||
거주지별비율
|
||||
</th>
|
||||
|
||||
<th scope="col">강원도</th>
|
||||
<th scope="col">경기도</th>
|
||||
<th scope="col">경상남도</th>
|
||||
<th scope="col">경상북도</th>
|
||||
<th scope="col">광주광역시</th>
|
||||
<th scope="col">대구광역시</th>
|
||||
<th scope="col">대전광역시</th>
|
||||
<th scope="col">부산광역시</th>
|
||||
<th scope="col">서울특별시</th>
|
||||
<th scope="col">온라인</th>
|
||||
<th scope="col" colspan="2">5일</th>
|
||||
<th scope="col" colspan="2">4일</th>
|
||||
<th scope="col" colspan="2">3일</th>
|
||||
<th scope="col" colspan="2">2일</th>
|
||||
<th scope="col" colspan="2">1일</th>
|
||||
</tr>
|
||||
<!--
|
||||
<tr>
|
||||
<th scope="col" colspan="2">거주지별비율</th>
|
||||
|
||||
<th scope="col">울산광역시</th>
|
||||
<th scope="col">인천광역시</th>
|
||||
<th scope="col">제외한국학교교육청</th>
|
||||
<th scope="col">전라남도</th>
|
||||
<th scope="col">전라북도</th>
|
||||
<th scope="col">제주특별자치도</th>
|
||||
<th scope="col">충청남도</th>
|
||||
<th scope="col">충청북도</th>
|
||||
</tr>
|
||||
<th scope="col">5일</th>
|
||||
<th scope="col">4일</th>
|
||||
<th scope="col">3일</th>
|
||||
<th scope="col">2일</th>
|
||||
<th scope="col">1일</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col"></th>
|
||||
|
||||
@ -253,316 +295,77 @@
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
<th scope="col">비율|차시</th>
|
||||
</tr>
|
||||
</tr>
|
||||
-->
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td scope="col">5일</td>
|
||||
<td scope="col">
|
||||
<input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value="50"
|
||||
maxLength="2"
|
||||
/>10</td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
<c:forEach var="row" items="${asgnmStngVOList}" varStatus="status">
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
<p><input name="chk" class="${row.areaCd}" value="<c:out value='${row.areaCd}' />"
|
||||
title="Check" type="checkbox"/></p>
|
||||
</td>
|
||||
<td>
|
||||
|
||||
<p><c:out value='${row.asgnmNm}' default='1' /></p>
|
||||
</td>
|
||||
<td>비율</td>
|
||||
<td colspan="2">
|
||||
<input type="text" id="ratio5_${row.areaCd}" name="ratio5_${row.areaCd}"
|
||||
style="width:55px;" class="search_input" value="<c:out value='${row.ratio5}' default='0' />"
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
/>
|
||||
</td>
|
||||
<%-- <td><c:out value='${row.ratio5}' default='0' /></td> --%>
|
||||
|
||||
<td colspan="2">
|
||||
<input type="text" id="ratio4_${row.areaCd}" name="ratio4_${row.areaCd}"
|
||||
style="width:55px;" class="search_input" value="<c:out value='${row.ratio4}' default='0' />"
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
/>
|
||||
</td>
|
||||
<%-- <td><c:out value='${row.ratio4}' default='0' /></td> --%>
|
||||
|
||||
<td colspan="2">
|
||||
<input type="text" id="ratio3_${row.areaCd}" name="ratio3_${row.areaCd}"
|
||||
style="width:55px;" class="search_input" value="<c:out value='${row.ratio3}' default='0' />"
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
/>
|
||||
</td>
|
||||
<%-- <td><c:out value='${row.ratio3}' default='0' /></td> --%>
|
||||
|
||||
<td colspan="2">
|
||||
<input type="text" id="ratio2_${row.areaCd}" name="ratio2_${row.areaCd}"
|
||||
style="width:55px;" class="search_input" value="<c:out value='${row.ratio2}' default='0' />"
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
/>
|
||||
</td>
|
||||
<%-- <td><c:out value='${row.ratio2}' default='0' /></td> --%>
|
||||
|
||||
<td colspan="2">
|
||||
<input type="text" id="ratio1_${row.areaCd}" name="ratio1_${row.areaCd}"
|
||||
style="width:55px;" class="search_input" value="<c:out value='${row.ratio1}' default='0' />"
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
/>
|
||||
</td>
|
||||
<%-- <td><c:out value='${row.ratio1}' default='0' /></td> --%>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">4일</td>
|
||||
<td scope="col">
|
||||
<input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value="50"
|
||||
maxLength="2"
|
||||
/>8</td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">3일</td>
|
||||
<td scope="col">
|
||||
<input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value="50"
|
||||
maxLength="2"
|
||||
/>6</td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">2일</td>
|
||||
<td scope="col">
|
||||
<input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value="50"
|
||||
maxLength="2"
|
||||
/>4</td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td scope="col">1일</td>
|
||||
<td scope="col">
|
||||
<input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value="50"
|
||||
maxLength="2"
|
||||
/>2</td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
<td scope="col"><input type="text" id="searchScholNm" name="searchScholNm" style="width:35px;" class="search_input" value=""
|
||||
maxLength="2"
|
||||
/></td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="btn_wrap_pop btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btn_type06" onclick="self.close();">저장</button>
|
||||
<button type="button" class="btn_type06" onclick="fncInstrAsgnm();return false;">저장</button>
|
||||
<button type="button" class="btn_type04" onclick="self.close();">닫기</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
|
||||
@ -73,22 +73,55 @@
|
||||
listForm.submit();
|
||||
*/
|
||||
}
|
||||
|
||||
function fncInstrAsgnm(id, p_rank) {
|
||||
$("#userId").val(id);
|
||||
|
||||
if (p_rank=='-'){
|
||||
$("#rmrks").val(p_rank);
|
||||
}else{
|
||||
$("#rmrks").val("배정기준"+p_rank+"순위");
|
||||
}
|
||||
|
||||
|
||||
|
||||
//특정강사배정
|
||||
function fncInstrAsgnm(id) {
|
||||
$("#userId").val(id);
|
||||
$("#rmrks").val("특정강사배정");
|
||||
|
||||
|
||||
var chkLen = $(listForm).find("input[name=chk]:checked").length;
|
||||
|
||||
if(chkLen == 0){
|
||||
alert("선택된 항목이 없습니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
//var fnExit = false;
|
||||
//chkStatCd = "30";
|
||||
//msg = "특정강사배정(교육확정 건)";
|
||||
|
||||
var varEduAplctOrd = '';
|
||||
|
||||
$('input:checkbox[name="chk"]:checked').each(function() {
|
||||
|
||||
varEduAplctOrd = varEduAplctOrd + $(this).val() + "__";
|
||||
|
||||
/*
|
||||
if(!fnExit){
|
||||
varEduAplctOrd = varEduAplctOrd + $(this).val() + "__";
|
||||
if($(this).attr("class") == chkStatCd) {
|
||||
alert("선택한 목록 중 " + msg + "이 불가능한 건이 있습니다.");
|
||||
fnExit = true;
|
||||
}
|
||||
}
|
||||
*/
|
||||
});
|
||||
|
||||
|
||||
//체크한 리스트 중 해당 상태에 실행 불가능한 건이 있는지 체크 후, 존재 시 함수 종료
|
||||
//if(fnExit) return false;
|
||||
|
||||
var tForm = document.createForm ;
|
||||
tForm.eduAplctOrd.value = varEduAplctOrd ;
|
||||
tForm.asgnmAprvlCd.value = "10" ;
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrAsgnmAjax.do",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrAsgnmForceAjax.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
@ -111,6 +144,7 @@
|
||||
}
|
||||
|
||||
//동일 학교 여부 체크
|
||||
/*
|
||||
function fncInstrAsgnm_bef(id, p_rank) {
|
||||
$("#userId").val(id);
|
||||
$("#rmrks").val("배정기준"+p_rank+"순위");
|
||||
@ -144,10 +178,16 @@
|
||||
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
function reloadPage(){
|
||||
location.reload();
|
||||
}
|
||||
|
||||
//체크박스 전체 선택
|
||||
function chkAll(thisObj){
|
||||
$("input[name=chk]").prop("checked" , $(thisObj).is(":checked"));
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
@ -190,13 +230,15 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left"></div>
|
||||
<div class="btn_center"></div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btn_type03" onclick="reloadPage();" id="btnDstnc" style="display:none;">이동거리확인</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
|
||||
<div class="pop_tb_tit01">
|
||||
<p>강사 목록</p>
|
||||
@ -268,19 +310,8 @@
|
||||
<%-- <td><c:out value='${list.cntnsLctrPsblYn}'/></td> --%>
|
||||
<td><c:out value='${list.pnltyCnt}'/></td>
|
||||
<td>
|
||||
<c:if test='${empty list.chrgNm}'>
|
||||
|
||||
<c:choose>
|
||||
<c:when test="${empty vEEduAplctVO.instrNm}">
|
||||
<button class="btn_type06" onclick="fncInstrAsgnm_bef('<c:out value="${list.userId}" />', '<c:out value="${instrRank}"/>'); return false;">선택</button>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<button class="btn_type06" onclick="fncInstrAsgnm_bef('<c:out value="${list.userId}" />', '-'); return false;">선택</button>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
|
||||
</c:if>
|
||||
<%-- <button class="btn_type06" onclick="fncInstrAsgnm_bef('<c:out value="${list.userId}" />', '<c:out value="${instrRank}"/>'); return false;">선택</button> --%>
|
||||
<button class="btn_type06" onclick="fncInstrAsgnm('<c:out value="${list.userId}" />'); return false;">선택</button>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
@ -291,16 +322,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- page -->
|
||||
<!--
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
-->
|
||||
<!-- //page -->
|
||||
|
||||
|
||||
|
||||
<div class="btn_wrap_pop btn_layout01">
|
||||
@ -421,7 +443,7 @@
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btn_type04" onclick="self.close();">확인</button>
|
||||
<button type="button" class="btn_type04" onclick="self.close();">닫기</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user