public void exportNhData(HttpServletRequest request, HttpServletResponse response) {
String hospid = request.getParameter("hospid");
String nhcode = request.getParameter("nhcode");
String forgid = GetCookie.getForgId(request);
String fileName = "";
StringBuffer write = new StringBuffer();
String enter = "\r\n";
String splitNh = ";";
String charsetName = "GB2312";
BufferedOutputStream buff = null;
ServletOutputStream outSTr = null;
Map map = null;
try {
outSTr = response.getOutputStream(); // 建立
buff = new BufferedOutputStream(outSTr);
if(Nulls.isEmpty(hospid)){
throw new RuntimeException("住院ID不能为空!");
}
PatinfoCy patiinfo1 = getPatiinfo().getPatinfoCyByHospid(Convert.toLong(hospid));
String indate = Convert.dataFormat(patiinfo1.getIndate(), "yyyy-MM-dd");
String outdate = Convert.dataFormat(patiinfo1.getOutdate(), "yyyy-MM-dd");
write.append("0" + splitNh);
write.append(indate + splitNh);
write.append(outdate + splitNh);
write.append(patiinfo1.getHospcode() + splitNh);
write.append(enter);
List list = getPatiinfo().queryNhData(hospid, forgid);
for (int i = 0; i < list.size(); i++) {
map = (Map)list.get(i);
write.append(map.get("MEDINAME") + splitNh);
write.append(map.get("MEDICODE") + splitNh);
write.append(map.get("USER_NUM") + splitNh);
write.append(map.get("UNITPRICE") + splitNh);
write.append(outdate + splitNh);
write.append(enter);
}
buff.write(write.toString().getBytes(charsetName));
try {
fileName = URLEncoder.encode(nhcode.trim().toUpperCase() + "_" + patiinfo1.getName(), "UTF-8");
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
response.setCharacterEncoding("UTF-8");
response.setContentType("text");
//response.setContentType("application/x-msdownload;charset=UTF-8");
//response.setHeader("Content-Disposition", "attachment;filename=data.xml");
response.setHeader("Content-Disposition", "attachment;filename=" + fileName + "z.txt");
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
buff.flush();
buff.close();
outSTr.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}