安卓reportActivity上报不良事件之器械事件上报中更多信息的添加
选择器械不良事件
器械不良事件上报
public void InstructionReportPost(View view){
Date date2 = new Date(instruction_use_time.getYear()-1900 ,instruction_use_time.getMonth() , instruction_use_time.getDayOfMonth() );
String timeStamp2 = Date2TimeStamp(date2);
Date date3 = new Date(product_date_picker.getYear()-1900 , product_date_picker.getMonth() ,product_date_picker.getDayOfMonth() );
String timeStamp3 = Date2TimeStamp(date3);
Date date4 = new Date(warranty_date_picker.getYear()-1900 , warranty_date_picker.getMonth() , warranty_date_picker.getDayOfMonth());
String timeStamp4 = Date2TimeStamp(date4);
if (using_description.getText().toString().isEmpty() ||
instruction_crush.getText().toString().isEmpty() ||
instruction_aim_at.getText().toString().isEmpty()||
register_person_name.getText().toString().isEmpty()||
specification.getText().toString().isEmpty()||
batch_number.getText().toString().isEmpty()||
product_number.getText().toString().isEmpty()||
name_instruciton.getText().toString().isEmpty()||
register_number.getText().toString().isEmpty()||
UDI.getText().toString().isEmpty()||
instructionUseProcess.getText().toString().isEmpty()
) {
Toast.makeText(getApplicationContext(), "请填写事件信息", Toast.LENGTH_SHORT).show();
} else {
InstructionReport instructionReport = new InstructionReport();
nameList = nameList2.toArray(new String[nameList2.size()]);
if(nameList!=null){
instructionReport.setNewNameList(nameList);}
else{
instructionReport.setNewNameList(null);
}
instructionReport.setCombinationTherapySituation(using_description.getText().toString());
instructionReport.setDeviceFailurePerformance(instruction_crush.getText().toString());
instructionReport.setDeviceUseDate(timeStamp2);
instructionReport.setEffect(instruction_aim_at.getText().toString());
instructionReport.setMarketingAuthorizationHolderName(register_person_name.getText().toString());
instructionReport.setModelSpecification(specification.getText().toString());
instructionReport.setProductBatchNum(batch_number.getText().toString());
instructionReport.setProductNum(product_number.getText().toString());
instructionReport.setProductName(name_instruciton.getText().toString());
instructionReport.setProductionDate(timeStamp3);
instructionReport.setRegistrationNum(register_number.getText().toString());
instructionReport.setUdi(UDI.getText().toString());
if (checkText.contentEquals("医疗机构")) {
instructionReport.setUsePlace(1);
} else if (checkText.contentEquals("家庭")) {
instructionReport.setUsePlace(2);
} else {
instructionReport.setUsePlace(3);
}
key_selection = key_edit.getText().toString();
instructionReport.setUseProcess(instructionUseProcess.getText().toString());
instructionReport.setValidityPeriodUntil(timeStamp4);
instructionReport.setCategory(selected_second_type_id);
instructionReport.setCategoryPrimary(selected_primary_type_id);
instructionReport.setOccurExactLocation(event_occur_exact_place_report);
if (method_selection == 0) {
instructionReport.setInpatientNum(key_selection);
} else if (method_selection == 1) {
instructionReport.setOutpatientNum(key_selection);
} else if (method_selection == 2) {
instructionReport.setMedicalCardNum(key_selection);
}
instructionReport.setIsAnonymous(0);
instructionReport.setDescription(event_description_report);
instructionReport.setLevel(selected_event_rank);
instructionReport.setIncidentOccurLocation(selected_occur_place_id);
instructionReport.setOccurTime(timeStamp);
Integer[] patientStates = new Integer[set.size()];
set.toArray(patientStates);
instructionReport.setPatientStateBeforeIncident(patientStates);
Gson gson = new Gson();
//使用Gson将对象转换为json字符串
String json = gson.toJson(instructionReport);
OkHttpClient mOkHttpClient = new OkHttpClient();
RequestBody body = RequestBody.create(MediaType.parse("application/json"), json);
Log.i("requestbody", json);
Request request = new Request.Builder()
.header("token", name2)
.url("http://43.138.24.19/adverseEventReport/device/submit").post(body).build();
//3,创建call对象并将请求对象添加到调度中
Log.i("request", request.toString());
mOkHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
Log.e("测试", e + "");
}
@Override
public void onResponse(Call call, Response response) throws IOException {
Log.e("测试", response.code() + "");
Log.e("测试", response.code() + "");
if (response.isSuccessful()) {
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(getApplicationContext(), "实名上报成功", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(ReportActivity.this,SlideActivity.class);
finish();
}
});
}
}
});
}
}