* DocumentModel の CLAIM 送信を行う。
*/
public void send(DocumentModel sendModel) {
// ヘルパークラスを生成しVelocityが使用するためのパラメータを設定する
ClaimHelper helper = new ClaimHelper();
DocInfoModel docInfo = sendModel.getDocInfo();
Collection<ModuleModel> modules = sendModel.getModules();
String confirmedStr = ModelUtils.getDateTimeAsString(docInfo.getConfirmDate());
helper.setConfirmDate(confirmedStr);
String deptName = docInfo.getDepartmentName();
String deptCode = docInfo.getDepartmentCode();
String doctorName = docInfo.getAssignedDoctorName();
if (doctorName == null) {
doctorName = Project.getUserModel().getCommonName();
}
String doctorId = docInfo.getAssignedDoctorId();
if (doctorId == null) {
doctorId = Project.getUserModel().getUserId();
}
String jamriCode = docInfo.getJMARICode();
if (jamriCode == null) {
jamriCode = Project.getJMARICode();
}
helper.setCreatorDeptDesc(deptName);
helper.setCreatorDept(deptCode);
helper.setCreatorName(doctorName);
helper.setCreatorId(doctorId);
helper.setCreatorLicense(Project.getUserModel().getLicenseModel().getLicense());
helper.setJmariCode(jamriCode);
helper.setFacilityName(Project.getUserModel().getFacilityModel().getFacilityName());
helper.setPatientId(sendModel.getKarte().getPatient().getPatientId());
helper.setGenerationPurpose(docInfo.getPurpose());
helper.setDocId(docInfo.getDocId());
helper.setHealthInsuranceGUID(docInfo.getHealthInsuranceGUID());
helper.setHealthInsuranceClassCode(docInfo.getHealthInsurance());
helper.setHealthInsuranceDesc(docInfo.getHealthInsuranceDesc());
// 保存する KarteModel の全モジュールをチェックし
// それが ClaimBundle ならヘルパーへ追加する
for (ModuleModel module : modules) {
IInfoModel m = module.getModel();
if (m instanceof ClaimBundle) {
helper.addClaimBundle((ClaimBundle) m);
}
}
MessageBuilder mb = new MessageBuilder();
String claimMessage = mb.build(helper);