Example #1
0
 public bool AddPatientOrderItem(ref trn_patient_regi PatientRegis, string username, DateTime dateNow, EnumerableRowCollection <DataRow> PTPackage)
 {
     try
     {
         foreach (var row in PTPackage)
         {
             trn_patient_order_item patientOrderItem = PatientRegis.trn_patient_order_items
                                                       .Where(x => x.toi_key == row.Field <string>("OEORI_RowId"))
                                                       .FirstOrDefault();
             if (patientOrderItem == null)
             {
                 patientOrderItem                 = new trn_patient_order_item();
                 patientOrderItem.toi_key         = row.Field <string>("OEORI_RowId");
                 patientOrderItem.toi_create_date = dateNow;
                 patientOrderItem.toi_create_by   = username;
                 PatientRegis.trn_patient_order_items.Add(patientOrderItem);
             }
             patientOrderItem.toi_set_row_id      = row.Field <string>("ARCOS_RowId");
             patientOrderItem.toi_item_row_id     = row.Field <string>("ARCIM_RowId");
             patientOrderItem.toi_od_item_code    = row.Field <string>("ARCIM_Code");
             patientOrderItem.toi_od_item_name    = row.Field <string>("ARCIM_Desc");
             patientOrderItem.toi_patho           = row.Field <string>("OEORI_LabTestSetRow");
             patientOrderItem.toi_pac_sheet       = row.Field <string>("OEORI_AccessionNumber");
             patientOrderItem.toi_use_pac         = row.Field <string>("ARCIM_Text1") != null ? true : false;
             patientOrderItem.toi_status          = (row.Field <string>("OSTAT_Code") == "V") ? true : false;
             patientOrderItem.toi_type            = string.IsNullOrEmpty(row.Field <string>("ARCOS_RowId")) ? 'I' : 'S';
             patientOrderItem.toi_update_date     = dateNow;
             patientOrderItem.toi_update_by       = username;
             patientOrderItem.toi_trakcare_status = row.Field <string>("OSTAT_Code");
         }
         return(true);
     }
     catch (Exception ex)
     {
         Class.globalCls.MessageError("GetPTPackageCls", "AddPatientOrderItem", ex.Message);
         return(false);
     }
 }
Example #2
0
        public bool Insert(int tpr_id, List <APITrakcare.PatientOrderSet> OrderSets, string user, DateTime dateNow)
        {
            try
            {
                using (InhCheckupDataContext cdc = new InhCheckupDataContext())
                {
                    foreach (var set in OrderSets)
                    {
                        var pRegis = cdc.trn_patient_regis.Where(x => x.tpr_id == tpr_id).FirstOrDefault();
                        int?tos_id = null;
                        if (set.orderset_rowid != null)
                        {
                            var pOrderset = pRegis.trn_patient_order_sets.Where(x => x.tos_item_row_id == set.orderset_rowid).FirstOrDefault();
                            if (pOrderset == null)
                            {
                                pOrderset = new trn_patient_order_set
                                {
                                    tos_item_row_id = set.orderset_rowid,
                                    tos_create_by   = user,
                                    tos_create_date = dateNow
                                };
                                pRegis.trn_patient_order_sets.Add(pOrderset);
                            }
                            pOrderset.tos_od_set_code = set.orderset_code;
                            pOrderset.tos_od_set_name = set.orderset_name;
                            pOrderset.tos_status      = set.orderitems.All(x => x.orderitem_status == "D") ? false : true;
                            pOrderset.tos_update_by   = user;
                            pOrderset.tos_update_date = dateNow;
                            cdc.SubmitChanges();
                            tos_id = pOrderset.tos_id;
                        }

                        foreach (var item in set.orderitems)
                        {
                            var pOrderitem = pRegis.trn_patient_order_items.Where(x => x.toi_item_row_id == item.rowid).FirstOrDefault();
                            if (pOrderitem == null)
                            {
                                pOrderitem = new trn_patient_order_item
                                {
                                    toi_key         = item.rowid,
                                    toi_create_by   = user,
                                    toi_create_date = dateNow
                                };
                                pRegis.trn_patient_order_items.Add(pOrderitem);
                            }
                            pOrderitem.tos_id           = tos_id;
                            pOrderitem.toi_set_row_id   = set.orderset_rowid;
                            pOrderitem.toi_item_row_id  = item.orderitem_rowid;
                            pOrderitem.toi_od_item_code = item.orderitem_code;
                            pOrderitem.toi_od_item_name = item.orderitem_name;
                            //pOrderitem.toi_patho = item.patho;
                            //pOrderitem.toi_pac_sheet = item.use_pacsheet;
                            pOrderitem.toi_use_pac         = item.use_pacsheet;
                            pOrderitem.toi_status          = item.orderitem_status == "V" ? true : false;
                            pOrderitem.toi_type            = string.IsNullOrEmpty(set.orderset_rowid) ? 'I' : 'S';
                            pOrderitem.toi_update_by       = user;
                            pOrderitem.toi_update_date     = dateNow;
                            pOrderitem.toi_trakcare_status = item.orderitem_status;
                        }
                        cdc.SubmitChanges();
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                Class.globalCls.MessageError("InsertPackageCls", "Insert", ex.Message);
                return(false);
            }
        }