package incheon.res.rdm.oe.reqorg.service.impl;

import incheon.res.rdm.oe.reqorg.mapper.RdmOeReqorgMapper;
import incheon.res.rdm.oe.reqorg.service.RdmOeReqorgService;
import incheon.res.rdm.oe.reqorg.vo.RdmOeReqorg;
import incheon.res.rdm.oe.reqorg.vo.RdmOeReqorgVO;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;


@Service
public class RdmOeReqorgServiceImpl implements RdmOeReqorgService {

	protected Log log = LogFactory.getLog(this.getClass());
	
	@Resource
    private RdmOeReqorgMapper rdmOeReqorgMapper;
	

	/**
	 * @MethodDESC : 내부협의기관 목록 (검색)
	 */
	public List selectReqorgList(RdmOeReqorgVO vo) throws Exception{
		return rdmOeReqorgMapper.selectReqorgList(vo);
	}    

	/**
	 * @MethodDESC : 내부협의기관 상세조회
	 */
	public RdmOeReqorg selectReqorg(RdmOeReqorgVO vo) throws Exception{
		return rdmOeReqorgMapper.selectReqorg(vo);
	} 

	/**
	 * @MethodDESC : 내부협의기관 count
	 */
	public int countReqorg(RdmOeReqorgVO vo) throws Exception {
		return rdmOeReqorgMapper.countReqorg(vo);
	}

	/**
	 * @MethodDESC : 필수협의기관 등록(one)
	 */
	public void approveReqorg(RdmOeReqorgVO vo) throws Exception{
		rdmOeReqorgMapper.insertEscoCt(vo);
		rdmOeReqorgMapper.insertEscuLt(vo);
	}
	
	/**
	 * @MethodDESC : 필수협의기관등록(list)
	 */
	public void approveReqorgList(RdmOeReqorgVO vo) throws Exception {
		String comIdnStr = vo.getComIdnChk();
		String [] comIdn =comIdnStr.split(",");

		for(int i = 0; i < comIdn.length; i++ ){
			RdmOeReqorgVO roqVO = new RdmOeReqorgVO();
			roqVO.setBzentyInstMngNo(comIdn[i]);
			roqVO.setMngInstCd(vo.getMngInstCd());
			roqVO.setRgtrId(vo.getRgtrId());

			rdmOeReqorgMapper.cancleEscoCt(roqVO);
			rdmOeReqorgMapper.cancleEscuLt(roqVO);
			rdmOeReqorgMapper.insertEscoCt(roqVO);
			rdmOeReqorgMapper.insertEscuLt(roqVO);
		}
	}
	
	/**
	 * @MethodDESC : 필수협의기관 해제(one)
	 */
	public void rejectReqorg(RdmOeReqorgVO vo) throws Exception{
		rdmOeReqorgMapper.cancleEscoCt(vo);
		rdmOeReqorgMapper.cancleEscuLt(vo);
	}
	
	/**
	 * @MethodDESC : 필수협의기관 해제(list)
	 */
	public void rejectReqorgList(RdmOeReqorgVO vo) throws Exception {
		String comIdnStr = vo.getComIdnChk();
		String [] comIdn =comIdnStr.split(",");

		for(int i = 0; i < comIdn.length; i++ ){
			RdmOeReqorgVO roqVO = new RdmOeReqorgVO();
			roqVO.setBzentyInstMngNo(comIdn[i]);
			roqVO.setMngInstCd(vo.getMngInstCd());

			rdmOeReqorgMapper.cancleEscoCt(roqVO);
			rdmOeReqorgMapper.cancleEscuLt(roqVO);
		}
	}
	
}