package incheon.ags.pss.edit.web;

import java.util.List;

import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;

import incheon.ags.pss.edit.service.SketchService;
import incheon.ags.pss.edit.vo.SketchVO;
import incheon.com.cmm.api.DefaultApiResponse;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;

/**
 * 안건지도 그리기 관리 컨트롤러
 * @author hj
 */
@Controller
@RequiredArgsConstructor
@Slf4j
@RequestMapping("/pss/edit/sketch")
public class SketchController {

    private final SketchService sketchService;

    @GetMapping("/list.do")
    public ResponseEntity<DefaultApiResponse> selectSketchList(Long bizNo) throws Exception {
    	List<SketchVO> list = sketchService.selectSketchList(bizNo);
         
         return ResponseEntity.ok(
                 DefaultApiResponse.success(list, "조회되었습니다.")
             );
    }
    
    @PostMapping("/save.do")
    public ResponseEntity<DefaultApiResponse> insertSketch(SketchVO vo) throws Exception {
         sketchService.insertSketch(vo);
         
         return ResponseEntity.ok(
                 DefaultApiResponse.success(vo.getSketchNo(), "저장되었습니다.")
             );
    }

    @PostMapping("/update.do")
    public ResponseEntity<DefaultApiResponse> updateSketch(SketchVO vo) throws Exception {
         sketchService.updateSketch(vo);
         
         return ResponseEntity.ok(
                 DefaultApiResponse.success(vo, "수정되었습니다.")
             );
    }

    @PostMapping("/delete.do")
    public ResponseEntity<DefaultApiResponse> deleteSketch(Long sketchNo) throws Exception {
    	sketchService.deleteSketch(sketchNo);
         
      	return ResponseEntity.ok(
    			DefaultApiResponse.success(null, "삭제되었습니다.")
		);
    }
}