void view_OnCheckData(object sender, Views.CheckReportArgs e) { if (e.PatientData != null && e.PatientData.Rows.Count > 0) { List <DataRow> drList = new List <DataRow>(); Tools.Loading load = new Tools.Loading(); Tools.Help.NewRedBorderShowFrom(load); Application.DoEvents(); foreach (DataRow patDr in e.PatientData.Rows) { Model.AddInToTemp(patDr);//将数据插入临时表 } load.ParentForm.Close(); //foreach (DataRow patDr in e.PatientData.Rows) //{ // DataTable data = Model.GetMyPatient(patDr["P3"].ToString(), patDr["P2"].ToString()); // if (data.Rows.Count > 0) //本地库有此病人 // { // string checkState = data.Rows[0]["CHECK_STATE"].ToString(); //审核状态 // if (checkState == "1") //已通过审核 // { // drList.Add(patDr); //去除已审核通过的病人 // } // //调用此方法注意:视图中病人的字段顺序一定要和本地病人表中字段顺序一致 // //Model.AddPatient(trans.ID, patDr); //将此病人copy到本地库 // } //} DataTable data = Model.GetTempPatient(); data.DefaultView.Sort = "P3"; DataTable newData = data.DefaultView.ToTable(); newData.Columns.Remove("CHECK_STATE"); newData.Columns.Remove("REPORT_STATE"); //if (drList != null && drList.Count > 0) //{ // foreach (DataRow dr in drList) // { // e.PatientData.Rows.Remove(dr); // } //} //e.PatientData = data; DataTable resultData = CheckOut2(newData); //审核 View.ExeBindCheckResult(resultData); Model.DeleteTable(); //删除临时表数据 } }
void view_OnReportData(object sender, Views.CheckReportArgs e) { //判断审核结果数据源中有无强制类型 if (CanReport(e.CheckResultPatientData)) { if (Message.ShowQuery("确定上报数据?", Message.Button.OkCancel) == Message.Result.Ok) { using (CJia.Transaction trans = new CJia.Transaction(CJia.DefaultOleDb.DefaultAdapter)) { Tools.Loading load = new Tools.Loading(); Tools.Help.NewRedBorderShowFrom(load); Application.DoEvents(); bool isSuccess = true; foreach (DataRow dr in e.PatientData.Rows) { //将非强制类型病人copy到本地库 DataTable data = Model.GetMyPatient(dr["P3"].ToString(), dr["P2"].ToString()); if (data.Rows.Count == 0) //本地库无此病人 { Model.AddPatient(trans.ID, dr); } isSuccess = Model.ModifyPatientReportState(trans.ID, dr["P3"].ToString(), dr["P2"].ToString()); if (!isSuccess) { break; } } load.ParentForm.Close(); bool bol = View.ExeBindIsSuccessReport(isSuccess); if (bol) { trans.Complete(); Message.Show("上报数据成功!"); } else { Message.Show("上报数据失败!"); } } } } //修改病人审核状态,上报过的不能继续上报 //修改病人上报状态 //生成DBF文件 }