package open.dolphin.client; import java.util.ArrayList; import java.util.Date; import java.util.List; import javax.swing.JOptionPane; import open.dolphin.helper.UserDocumentHelper; import open.dolphin.infomodel.DocumentModel; import open.dolphin.letter.KartePDFMaker; import open.dolphin.project.Project; /** * * @author kazushi Minagawa */ public class KartePDFSender implements IKarteSender { private Chart context; private boolean send; private String pathToOutput; @Override public Chart getContext() { return context; } @Override public void setContext(Chart context) { this.context = context; } @Override public void prepare(DocumentModel data) { send = Project.getBoolean(Project.KARTE_PDF_SEND_AT_SAVE); if (!send) { return; } // 出力先を取得 String outputDir = Project.getString(Project.KARTE_PDF_SEND_DIRECTORY); String title = ClientContext.getMyBundle(KartePDFSender.class).getString("text.karte"); String ext = ".pdf"; String ptName = context.getPatient().getFullName(); ptName = ptName.replace(" ", "").replace(" ", ""); Date d = new Date(); pathToOutput = UserDocumentHelper.createPathToDocument(outputDir, title, ext, ptName, d); } @Override public void send(DocumentModel data) { if (send) { //s.oh^ 2013/09/05 if(pathToOutput == null) { java.util.ResourceBundle bundle = ClientContext.getMyBundle(KartePDFSender.class); String msg1 = bundle.getString("error.savePDF1"); String msg2 = bundle.getString("instraction.savePDF"); Object obj = new String[]{msg1, msg2}; JOptionPane.showMessageDialog(null, obj, ClientContext.getString("productString"), JOptionPane.ERROR_MESSAGE); }else if(send) { //s.oh$ List<DocumentModel> list = new ArrayList<>(1); list.add(data); KartePDFMaker maker = new KartePDFMaker(); maker.setContext(getContext()); maker.setDocumentList(list); maker.setAscending(true); maker.makePDF(pathToOutput); } } } }