package com.ekexiu.portal.service; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.sql.Connection; import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import org.jfw.apt.annotation.Autowrie; import org.jfw.apt.web.annotation.Path; import org.jfw.apt.web.annotation.operate.Get; import org.jfw.apt.web.annotation.param.JdbcConn; import org.jfw.apt.web.annotation.param.PathVar; import org.jfw.util.StringUtil; import org.jfw.util.io.IoUtil; import com.ekexiu.portal.dao.OrgRetrieveImgDao; import com.ekexiu.portal.po.OrgRetrieveImg; @Path("/orgRetrieveImg") public class OrgRetrieveImgService { private File orgRetrieveImgPath; private File tmpPath; private String dateFormat = "yyyyMMdd"; @Autowrie private OrgRetrieveImgDao orgRetrieveImgDao; public File getOrgRetrieveImgPath() { return orgRetrieveImgPath; } public void setOrgRetrieveImgPath(File orgRetrieveImgPath) { this.orgRetrieveImgPath = orgRetrieveImgPath; } public File getTmpPath() { return tmpPath; } public void setTmpPath(File tmpPath) { this.tmpPath = tmpPath; } public String getDateFormat() { return dateFormat; } public void setDateFormat(String dateFormat) { this.dateFormat = dateFormat; } public OrgRetrieveImgDao getOrgRetrieveImgDao() { return orgRetrieveImgDao; } public void setOrgRetrieveImgDao(OrgRetrieveImgDao orgRetrieveImgDao) { this.orgRetrieveImgDao = orgRetrieveImgDao; } public void insertImg(@JdbcConn(true) Connection con, String orgRetrieveId, String fn) throws SQLException, IOException{ String id = StringUtil.buildUUID(); SimpleDateFormat df = new SimpleDateFormat(this.dateFormat); String date = df.format(new Date()); File dateFile = new File(this.orgRetrieveImgPath + "/" + date); if (!dateFile.exists()) { dateFile.mkdirs(); } InputStream in = new FileInputStream(new File(this.tmpPath, fn)); try { IoUtil.copy(in, new FileOutputStream(new File(dateFile, id + ".jpg")), false, true); } finally { in.close(); } OrgRetrieveImg orgRetrieveImg = new OrgRetrieveImg(); orgRetrieveImg.setId(id); orgRetrieveImg.setOrgRetrieveId(orgRetrieveId); orgRetrieveImg.setSrc(date + "/" + id + ".jpg"); this.orgRetrieveImgDao.insert(con, orgRetrieveImg); } @Get @Path("/byRetId/{id}") public List query(@JdbcConn Connection con,@PathVar String id)throws SQLException{ return this.orgRetrieveImgDao.query(con, id); } }