public static string PeekCompanyCode(DSModel db, string prefix)
        {
            if (db == null)
                throw new ArgumentNullException("db");

            return db.ExecuteScalar<string>("SELECT PeekCompanyCode(@Prefix)", new MySqlParameter("Prefix", prefix));
        }
        private static void SaveDriverLicensePermits(DSModel db, KeyBinder key, DriversLicense poco, DriverLicenseModel model)
        {
            db.ExecuteNonQuery("DELETE FROM drivers_licenses_permits WHERE DriverLicenseID = @DriverLicenseID;",
                new MySqlParameter("DriverLicenseID", poco.DriverLicenseID));

            string sql = @"
                INSERT INTO drivers_licenses_permits (DriverLicenseID, PermitID) VALUES (@DriverLicenseID, @PermitID);
                SELECT LAST_INSERT_ID();";
            foreach (var per in model.Permits)
            {
                per.DriverLicenseID = poco.DriverLicenseID;
                per.DriverLicensePermitID = (uint)db.ExecuteScalar<ulong>(sql,
                    new MySqlParameter("DriverLicenseID", per.DriverLicenseID),
                    new MySqlParameter("PermitID", per.PermitID));
            }
        }
 public static string NextNumber(DSModel db, InvoiceModel model)
 {
     return db.ExecuteScalar<string>("SELECT NextInvoiceNumber(@CompID,@LocID,@InvYear);",
         new MySqlParameter("CompID", model.CompanyID),
         new MySqlParameter("LocID", model.LocationID),
         new MySqlParameter("InvYear", model.InvoiceIssueDate.Year));
 }
        private static void SaveDriverLicenseReminders(DSModel db, KeyBinder key, DriversLicense poco, DriverLicenseModel model)
        {
            db.ExecuteNonQuery("delete from drivers_licenses_reminders where DriverLicenseID = @DriverLicenseID;",
                new MySqlParameter("DriverLicenseID", poco.DriverLicenseID));

            string sql = @"
                INSERT INTO drivers_licenses_reminders 
                  (DriverLicenseID, ReminderID, ReminderType, ShouldRemind) 
                  VALUES 
                  (@DriverLicenseID, @ReminderID, @ReminderType, @ShouldRemind);
                SELECT LAST_INSERT_ID();";

            foreach (var rem in model.Reminders)
            {
                rem.DriverLicenseID = poco.DriverLicenseID;
                rem.DriverLicenseReminderID = (uint)db.ExecuteScalar<ulong>(sql,
                    new MySqlParameter("DriverLicenseID", rem.DriverLicenseID),
                    new MySqlParameter("ReminderID", rem.ReminderID),
                    new MySqlParameter("ReminderType", rem.ReminderType),
                    new MySqlParameter("ShouldRemind", rem.ShouldRemind));
            }
        }