Untitled

 avatar
unknown
plain_text
9 days ago
5.6 kB
7
Indexable
SELECT HKID, COUNT(*) as DuplicateCount
FROM Elderly
GROUP BY HKID
HAVING COUNT(*) > 1;

CREATE TRIGGER ArchiveData
BEFORE DELETE ON Elderly
FOR EACH ROW
BEGIN
    -- Insert the record being deleted into ElderlyArchive
    INSERT INTO ElderlyArchive (ID, HKID, Name, Address)
    VALUES (OLD.ID, OLD.HKID, OLD.Name, OLD.Address);

    -- Insert the corresponding contact data into ContactArchive
    INSERT INTO ContactArchive (ElderlyID, Relationship, Phone, Address)
    SELECT ElderlyID, Relationship, Phone, Address
    FROM Contact
    WHERE Contact.ElderlyID = OLD.ID;

    -- Optionally delete associated records in Contact as well
    DELETE FROM Contact WHERE ElderlyID = OLD.ID;
END;

def is_palindrome(s):
    # Remove spaces and convert to lowercase
    s = s.replace(" ", "").lower()
    # Check if the string is equal to its reverse
    return s == s[::-1]


var contactInfo = dbContext.Contacts
                           .Where(contact => contact.HKID == hkId)
                           .FirstOrDefault();

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Member Cards</title>
  <style>
    body {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      margin: 0;
      padding: 0;
    }

    .card-container {
      width: 210mm; /* Width of A4 paper */
      height: 297mm; /* Height of A4 paper */
      display: grid;
      grid-template-columns: repeat(3, 85.6mm);
      grid-template-rows: repeat(3, 53.9mm);
      gap: 5mm; /* Space between cards */
      padding: 10mm;
      box-sizing: border-box;
    }

    .card {
      width: 85.6mm;
      height: 53.9mm;
      border: 1px solid #000;
      border-radius: 5px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 5mm;
      box-sizing: border-box;
      text-align: center;
      font-family: Arial, sans-serif;
      font-size: 12px;
    }

    .qr-code {
      width: 30%;
      height: auto;
      margin: 0 auto;
    }

    .member-info {
      margin-top: 5mm;
    }

    .logo {
      width: 20%;
      height: auto;
      margin: 0 auto;
    }

    @media print {
      body {
        margin: 0;
        padding: 0;
      }
      .card-container {
        page-break-inside: avoid;
      }
    }
  </style>
</head>
<body>
  <div class="card-container">
    <!-- Example cards -->
    <div class="card">
      <img src="qr-code.png" alt="QR Code" class="qr-code">
      <p class="member-info">Name: John Doe<br>ID: 12345678</p>
      <img src="logo.png" alt="Logo" class="logo">
    </div>
    <div class="card">
      <img src="qr-code.png" alt="QR Code" class="qr-code">
      <p class="member-info">Name: Jane Smith<br>ID: 87654321</p>
      <img src="logo.png" alt="Logo" class="logo">
    </div>
    <!-- Add more cards as needed -->
  </div>
</body>
</html>

function calculateSessions(minutes) {
  const sessionDuration = 50;
  const extraThreshold = 16;

  // Full sessions
  const fullSessions = Math.floor(minutes / sessionDuration);

  // Remaining minutes
  const remainingMinutes = minutes % sessionDuration;

  // Check if remaining minutes exceed the threshold for an extra session
  const extraSession = remainingMinutes >= extraThreshold ? 1 : 0;

  // Total sessions
  return fullSessions + extraSession;
}

// Test cases
console.log(calculateSessions(0));   // 0 sessions
console.log(calculateSessions(50));  // 1 session
console.log(calculateSessions(65));  // 2 sessions
console.log(calculateSessions(115)); // 3 sessions
console.log(calculateSessions(166)); // 4 sessions


<!DOCTYPE html>
<html>
  <body>
    <script>
      const contQtyPerOne = 50; // 50 minutes per session
      const contQty = 1; // 1 session
      const listOfDuration = [0, 50, 65, 66, 115, 116, 166];

      // Function to calculate the number of sessions
      function calculateSessions(duration) {
        const fullSessions = Math.floor(duration / contQtyPerOne); // Full 50-minute sessions
        const remainingMinutes = duration % contQtyPerOne; // Remaining minutes

        // Add an extra session if remaining minutes >= 16
        const extraSession = remainingMinutes >= 16 ? 1 : 0;

        // Total sessions
        return fullSessions + extraSession;
      }

      // Loop through all durations and calculate sessions
      listOfDuration.forEach((duration) => {
        console.log(
          `Duration: ${duration} minute(s) count as ${calculateSessions(
            duration
          )} session(s)`
        );
      });
    </script>
  </body>
</html>

Output:
For the values [0, 50, 65, 66, 115, 116, 166], the console will display:

Duration: 0 minute(s) count as 0 session(s)
Duration: 50 minute(s) count as 1 session(s)
Duration: 65 minute(s) count as 2 session(s)
Duration: 66 minute(s) count as 2 session(s)
Duration: 115 minute(s) count as 3 session(s)
Duration: 116 minute(s) count as 3 session(s)
Duration: 166 minute(s) count as 4 session(s)

Planning: Define project scope and feasibility.
Analysis: Gather and analyze requirements.
Design: Create system architecture and user interfaces.
Development: Build and code the system.
Testing: Validate functionality and fix issues.
Implementation: Deploy the system and train users.
Maintenance: Provide ongoing support and updates
Editor is loading...
Leave a Comment