package com.indiScene.artist.service; import java.io.File; import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.logging.Logger; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; import com.indiScene.artist.dao.ArtistDao; import com.indiScene.artist.dto.ArtistDto; import com.indiScene.artist.dto.ZipcodeDto; /** * @type : ArtistServiceImpl * @date : 2015. 6. 26. * @author : 오경선 * @description : 요청된 페이지에 따라 실질적인 회원 관리 기능을 수행한다. */ @Component public class ArtistServiceImpl implements ArtistService { private final Logger logger=Logger.getLogger(this.getClass().getName()); private String dir = "C:/SPB_Data/git/IndiScene/src/main/webapp/resources/"; @Autowired private ArtistDao artistDao; /* TestMethod @Override public void test(ModelAndView mav) { logger.info("-----test-----"); mav.addObject("message", "-----Test-----"); mav.setViewName("artist/testing"); } */ @Override public void registerOk(ModelAndView mav){ logger.info("-----Servlet artist registerOk-----"); Map<String,Object> map=mav.getModelMap(); ArtistDto artistDto=(ArtistDto)map.get("artistDto"); MultipartHttpServletRequest request = (MultipartHttpServletRequest) map.get("request"); MultipartFile mf = request.getFile("profileImage"); if(!mf.isEmpty()){ String timeName= artistDto.getArtist_id()+"_"+System.currentTimeMillis()+"_"+mf.getOriginalFilename(); File imageFile = new File(dir+"artistResources/",timeName); try { mf.transferTo(imageFile); artistDto.setArtist_picture(imageFile.getAbsolutePath().substring(imageFile.getAbsolutePath().indexOf("\\resources")).replace('\\','/')); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } artistDto.setArtist_level(1); int check=artistDao.insert(artistDto); logger.info("artistRegisterOk check: "+check); mav.addObject("check",check); mav.setViewName("artist/registerOk"); } @Override public void idCheck(ModelAndView mav) { logger.info("-----Servlet artist idCheck-----"); Map<String, Object> map=mav.getModelMap(); HttpServletRequest request=(HttpServletRequest)map.get("request"); String artist_id=request.getParameter("artist_id"); int check=artistDao.idCheck(artist_id); logger.info("artistIdCheck check: "+check); mav.addObject("check",check); mav.addObject("artist_id",artist_id); mav.setViewName("artist/idCheck"); } @Override public void nicknameCheck(ModelAndView mav) { logger.info("-----Servlet artist nicknameCheck-----"); Map<String, Object> map=mav.getModelMap(); HttpServletRequest request=(HttpServletRequest)map.get("request"); String artist_nickname=request.getParameter("artist_nickname"); int check=artistDao.nicknameCheck(artist_nickname); logger.info("artistNicknameCheck check: "+check); mav.addObject("check",check); mav.addObject("artist_nickname",artist_nickname); mav.setViewName("artist/nicknameCheck"); } @Override public void update(ModelAndView mav) { logger.info("-----Servlet artist update-----"); Map<String,Object> map=mav.getModelMap(); HttpServletRequest request=(HttpServletRequest)map.get("request"); String artist_id=request.getParameter("artist_id"); logger.info(artist_id); ArtistDto artist=artistDao.select(artist_id); logger.info("artistUpdate artist:"+artist); mav.addObject("artist",artist); mav.setViewName("artist/update"); } @Override public void updateOk(ModelAndView mav) { logger.info("-----Servlet artist updateOk-----"); Map<String,Object> map=mav.getModelMap(); ArtistDto artistDto=(ArtistDto)map.get("artistDto"); MultipartHttpServletRequest request = (MultipartHttpServletRequest) map.get("request"); logger.info("artist_id : "+artistDto.getArtist_id()); logger.info("artist_password : "+artistDto.getArtist_password()); logger.info("artist_nickname : "+artistDto.getArtist_nickname()); logger.info("artist_birth : "+artistDto.getArtist_birth()); logger.info("artist_level : "+artistDto.getArtist_level()); MultipartFile mf = request.getFile("artist_picture"); if(!mf.isEmpty()){ String timeName= artistDto.getArtist_id()+"_"+System.currentTimeMillis()+"_"+mf.getOriginalFilename(); File imageFile = new File(dir+"artistResources/",timeName); try { mf.transferTo(imageFile); artistDto.setArtist_picture(imageFile.getAbsolutePath().substring(imageFile.getAbsolutePath().indexOf("\\resources")).replace('\\','/')); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }else{ ArtistDto artist=artistDao.select(artistDto.getArtist_id()); artistDto.setArtist_picture(artist.getArtist_picture()); } int check=artistDao.update(artistDto); logger.info("artistUpdateOk check: "+check); mav.addObject("check",check); mav.setViewName("artist/updateOk"); } @Override public void delete(ModelAndView mav) { logger.info("-----Servlet artist delete-----"); mav.setViewName("artist/delete"); } @Override public void deleteOk(ModelAndView mav) { logger.info("-----Servlet artist deleteOk-----"); Map<String,Object> map=mav.getModelMap(); HttpServletRequest request=(HttpServletRequest)map.get("request"); String artist_id=request.getParameter("artist_id"); String artist_password=request.getParameter("artist_password"); HashMap<String,String> hMap=new HashMap<String,String>(); hMap.put("artist_id",artist_id); hMap.put("artist_password", artist_password); logger.info("artistDelete artist_id: "+artist_id+", artist_password: "+artist_password); int check=artistDao.delete(hMap); logger.info("artistDelete check: "+check); mav.addObject("check",check); mav.setViewName("artist/deleteOk"); } @Override public void loginOk(ModelAndView mav) { logger.info("-----Servlet artist loginOk-----"); Map<String,Object> map=mav.getModelMap(); HttpServletRequest request=(HttpServletRequest)map.get("request"); String artist_id=request.getParameter("artist_id"); String artist_password=request.getParameter("artist_password"); System.out.println(artist_id + "\t" + artist_password); HashMap<String,String> hMap=new HashMap<String,String>(); hMap.put("artist_id", artist_id); hMap.put("artist_password", artist_password); ArtistDto artist=artistDao.login(hMap); logger.info("-----Servlet LoginOk artist: "+artist); logger.info("-----Servlet LoginOk artist_id: "+artist_id+", artist_password : "+artist_password); if(artist!=null){ mav.addObject("artist_id",artist.getArtist_id()); mav.addObject("artist_level",artist.getArtist_level()); } mav.setViewName("artist/loginOk"); } @Override public void logout(ModelAndView mav) { logger.info("-----Servlet artist logout-----"); mav.setViewName("artist/logout"); } @Override public void findZipcode(ModelAndView mav) { logger.info("-----Servlet artist findZipcode-----"); //root+"/artist/zipcode.do"; Map<String, Object> map=mav.getModelMap(); HttpServletRequest request=(HttpServletRequest)map.get("request"); String dong=request.getParameter("dong"); logger.info("memberZipcode dong: "+dong); List<ZipcodeDto> list=null; if(dong!=null){ list=artistDao.ZipcodeList(dong); logger.info("artistZipcode list size:"+list.size()); } mav.addObject("list",list); mav.setViewName("artist/zipcode"); } @Override public void moveToMain(ModelAndView mav) { logger.info("-----Servlet artist findZipcode-----"); //root+"/artist/zipcode.do"; Map<String, Object> map=mav.getModelMap(); HttpServletRequest request=(HttpServletRequest)map.get("request"); HttpServletResponse response=(HttpServletResponse)map.get("response"); String artist_id = request.getParameter("artist_id"); // System.out.println(artist_id); ArtistDto artistDto = artistDao.select(artist_id); response.setContentType("text/html; charset=UTF-8"); try { PrintWriter pw = response.getWriter(); pw.write(artistDto.getArtist_picture()+"<cut>"+artistDto.getArtist_nickname()); } catch (IOException e) { e.printStackTrace(); } } }