public IRecordSummary GetMedRecordSummaryRange(string regno, string start_date, string end_date)
        {
            IRecordSummary recordSum = new RecordSummary();

            using (SqlConnection conn = new SqlConnection(_connString))
            {
                SqlCommand cmd = new SqlCommand("getPatientsRecordSummaryByRange", conn)
                {
                    CommandType = CommandType.StoredProcedure
                };

                cmd.Parameters.AddWithValue("@patient_regno", regno);
                cmd.Parameters.AddWithValue("@start_date", start_date);
                cmd.Parameters.AddWithValue("@end_date", end_date);

                conn.Open();
                SqlDataReader reader = cmd.ExecuteReader();

                while (reader.Read())
                {
                    recordSum.total          = Convert.ToDecimal(reader["Total"]);
                    recordSum.end_date       = reader["end_date"].ToString() == "" ? (DateTime?)null : Convert.ToDateTime(reader["end_date"].ToString());
                    recordSum.start_date     = reader["start_date"].ToString() == "" ? (DateTime?)null : Convert.ToDateTime(reader["start_date"].ToString());
                    recordSum.count          = Convert.ToInt32(reader["count"]);
                    recordSum.patients_regno = reader["patients_regno"].ToString();
                    recordSum.last_name      = reader["last_name"].ToString();
                    recordSum.first_name     = reader["first_name"].ToString();
                }
                conn.Close();
            }
            return(recordSum);
        }
        public static void RebuildRecordSummaryIndexes()
        {
            var db = new LocalDB3().DB;

            db.DeleteAll <RecordSummary>();
            db.DropTable <RecordSummary>();
            db.CreateTable <RecordSummary>();

            var ppxKinds  = Constants.PPX_KIND_DISPLAYNAMES.Keys;
            var vmmcKinds = Constants.VMMC_KIND_DISPLAYNAMES.Keys;
            var lspKinds  = Constants.LSP_KIND_DISPLAYNAMES.Keys;
            var combined  = new List <string>();

            combined.AddRange(ppxKinds);
            combined.AddRange(vmmcKinds);
            combined.AddRange(lspKinds);

            var multiStore = new MultiTableStore()
            {
                Kinds = (from kind in combined select new KindName(kind)).ToList()
            };
            var kindRecords     = multiStore.getRecordBlobs();
            var recordSummaries = new List <RecordSummary>();

            foreach (var record in kindRecords)
            {
                var saveable = Newtonsoft.Json.JsonConvert
                               .DeserializeObject <GeneralEntityDataset>(record.Value);
                var editDateObj = saveable.GetValue(Constants.FIELD_PPX_DATEOFVISIT);
                editDateObj = editDateObj ?? saveable.GetValue(Constants.FIELD_VMMC_DATEOFVISIT);
                editDateObj = editDateObj ?? saveable.GetValue(Constants.FIELD_LSP_DATEOFVISIT);

                DateTime dateEdited;
                if (editDateObj == null || string.IsNullOrWhiteSpace(editDateObj.Value))
                {
                    dateEdited = DateTime.MinValue;
                }
                else
                {
                    if (!DateTime.TryParse(editDateObj.Value, out dateEdited))
                    {
                        dateEdited = DateTime.MinValue;
                    }
                }

                var recSummary = new RecordSummary()
                {
                    Id       = saveable.Id.Value,
                    EntityId =
                        saveable.EntityId == null ?
                        saveable.Id.Value
                    : saveable.EntityId.Value,
                    VisitDate = dateEdited,
                    KindName  = saveable.FormName
                };
                recordSummaries.Add(recSummary);
            }
            db.InsertAll(recordSummaries);
        }
 public void OnItemClick(AdapterView parent, View view, int position, long id)
 {
     //we get the selected client and return
     _selectedItem = _allItem[position].Wrapped;
 }
 public RechargeOrderReturnData()
 {
     data    = new List <RechargeOrderDate>();
     Summary = new RecordSummary();
 }