From b1fd1232a960ce44d0d817b30e5ef78784502a67 Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Mon, 2 May 2022 15:01:10 +0300
Subject: [PATCH 1/9] Pregnant women/adolescent monthly tracker

---
 cpovc_forms/forms.py                   | 212 +++++++++++
 cpovc_forms/urls.py                    |   5 +
 templates/forms/new_pregnantwomen.html | 489 +++++++++++++++++++++++++
 templates/ovc/view_child.html          |   6 +
 4 files changed, 712 insertions(+)
 create mode 100644 templates/forms/new_pregnantwomen.html

diff --git a/cpovc_forms/forms.py b/cpovc_forms/forms.py
index a15b4f35d..0497634f7 100644
--- a/cpovc_forms/forms.py
+++ b/cpovc_forms/forms.py
@@ -427,6 +427,8 @@
     ('IP', 'In Progress'),
     ('NA', 'Not Achieved')
 )
+#pregnant_women_adolescent
+ATTEND_CHOICES=(('1', 'Skilled'), ('0', 'Unskilled'))
 
 
 class OVCSchoolForm(forms.Form):
@@ -8146,3 +8148,213 @@ class DREAMS_FORM(forms.Form):
                #'data-parsley-required': "true",
                #'data-parsley-group': 'group0',
                'rows': '3'}))
+
+
+#Pregnant Women_Adolescent
+class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
+    org_units_list = get_facility_list()
+    HIV_STATUS_CHOICES=(('1', ''), ('0', 'Unskilled'))
+    PWA_WA1_01 = forms.ChoiceField(
+        choices=(('contact', '1st Contact'), ('tri', '1st Trimester'),('3rd', '3rd Trimester'),('4th', 'Labour/Delivery'),),
+        widget=forms.RadioSelect(
+            # renderer=RadioCustomRenderer,
+            attrs={
+                # 'data-parsley-errors-container': "#errorfield"
+            }))
+
+    PWA_WA1_2A = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_2A',
+                   'id': 'PWA_WA1_2A',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_2B = forms.ChoiceField(
+        choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
+        widget=forms.RadioSelect(
+            # renderer=RadioCustomRenderer,
+            attrs={
+                # 'data-parsley-required': 'true',
+                # 'data-parsley-errors-container': "#errorfield"
+            }))
+
+    PWA_WA1_3A = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_3A',
+                   'id': 'PWA_WA1_3A',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_3B = forms.ChoiceField(
+        choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
+        widget=forms.RadioSelect(
+            # renderer=RadioCustomRenderer,
+            attrs={
+                # 'data-parsley-required': 'true',
+                # 'data-parsley-errors-container': "#errorfield"
+            }))
+
+    PWA_WA1_4A = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_4A',
+                   'id': 'PWA_WA1_4A',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_4B = forms.ChoiceField(
+        choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
+        widget=forms.RadioSelect(
+            # renderer=RadioCustomRenderer,
+            attrs={
+                # 'data-parsley-required': 'true',
+                # 'data-parsley-errors-container': "#errorfield"
+            }))
+
+    PWA_WA1_5A = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_5A',
+                   'id': 'PWA_WA1_5A',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_5B = forms.ChoiceField(
+        choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
+        widget=forms.RadioSelect(
+            # renderer=RadioCustomRenderer,
+            attrs={
+                # 'data-parsley-required': 'true',
+                # 'data-parsley-errors-container': "#errorfield"
+            }))
+
+    PWA_WA1_6 = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_6',
+                   'id': 'PWA_WA1_6',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_7 = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_7',
+                   'id': 'PWA_WA1_7',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_8 = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_8',
+                   'id': 'PWA_WA1_8',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_9 = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_9',
+                   'id': 'PWA_WA1_9',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_10 = forms.ChoiceField(
+        choices=ATTEND_CHOICES,
+        widget=forms.RadioSelect(
+            # renderer=RadioCustomRenderer,
+            attrs={
+                # 'data-parsley-errors-container': "#errorfield"
+            }))
+
+    PWA_WA1_11 = forms.CharField(widget=forms.TextInput(
+        attrs={'placeholder': _('Facility Name'),
+               'class': 'form-control',
+               'id': 'PWA_WA1_21',
+               #    'data-parsley-group': 'group0'
+               }))
+
+    PWA_WA1_12 = forms.CharField(widget=forms.TextInput(
+        attrs={'placeholder': _('CCC NO'),
+               'class': 'form-control',
+               #    'data-parsley-required': "False",
+               'data-parsley-type': "number",
+               #    'data-parsley-required': "False"
+               }))
+
+    PWA_WA1_13 = forms.CharField(widget=forms.TextInput(
+        attrs={'placeholder': _('VL result'),
+               'class': 'form-control',
+               #    'data-parsley-required': "False",
+               'data-parsley-type': "number",
+               #    'data-parsley-required': "False"
+               }))
+
+    PWA_WA1_14 = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_14',
+                   'id': 'PWA_WA1_14',
+                   'autocomplete': "off",
+                   #    'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+    PWA_WA1_15 = forms.ChoiceField(
+        choices=YESNO_CHOICES,
+        widget=forms.RadioSelect(
+            # renderer=RadioCustomRenderer,
+            attrs={
+                # 'data-parsley-errors-container': "#errorfield"
+            }))
+
+    PWA_WA1_1 = forms.DateField(
+        widget=forms.widgets.DateInput(
+            format="%m/%d/%Y",
+            attrs={'placeholder': _('Date'),
+                   'class': 'form-control',
+                   'name': 'PWA_WA1_1',
+                   'id': 'PWA_WA1_1',
+                   'autocomplete': "off",
+                      # 'data-parsley-required': "true",
+                   #    'data-parsley-group': 'group0'
+                   }))
+
+
diff --git a/cpovc_forms/urls.py b/cpovc_forms/urls.py
index e56cd0940..a044bcccd 100644
--- a/cpovc_forms/urls.py
+++ b/cpovc_forms/urls.py
@@ -174,4 +174,9 @@
     # Dreams SerivceUptake Form
     re_path('dreamsform/new/(?P<id>\d+)/', views.new_dreamsform, name='new_dreamsform'),
 
+    #Pregnant Women Adolescent
+    path('pregnantwomen/new/(?P<id>\d+)/', views.new_pregnantwomen, name='new_pregnantwomen'),
+
+    #Edit Pregant women/adolescent form
+
 ]
diff --git a/templates/forms/new_pregnantwomen.html b/templates/forms/new_pregnantwomen.html
new file mode 100644
index 000000000..fdbc6495b
--- /dev/null
+++ b/templates/forms/new_pregnantwomen.html
@@ -0,0 +1,489 @@
+{% extends 'base.html' %}
+{% load app_filters %}
+{% load static %}
+{% block page_title %} Household Vulnerability Assessment {% endblock %}
+{% block style_code %}
+<link href="{% static 'plugins/parsley/src/parsley.css' %}" rel="stylesheet" />
+<link href="{% static 'plugins/bootstrap-datepicker/css/datepicker3.css' %}" rel="stylesheet" />
+<link href="{% static 'plugins/bootstrap-wizard/css/bwizard.min.css' %}" rel="stylesheet" />
+<link href="{% static 'plugins/bootstrap-multiselect/dist/css/bootstrap-multiselect.css' %}" rel="stylesheet">
+<link href="{% static 'css/jquery.tagit.css' %}" rel="stylesheet">
+<link href="{% static 'css/bootstrap-table.min.css' %}" rel="stylesheet" />
+<style type="text/css">
+.dialog_paragraph {
+  color: #f00;
+}
+
+.table_data {
+  display: none;
+}
+
+.container {
+    width: 100%;
+    overflow-x: auto;
+}
+
+.td_style {
+  /*color: #000000;*/
+  color: #0057e7;
+}
+</style>
+{% endblock %}
+
+{% block javascript_code%}
+{% endblock javascript_code%}
+
+{% block primary %}
+
+<!-- begin breadcrumb -->
+<ol class="breadcrumb pull-right">
+	<li><a href="#">Home</a></li>
+	<li class="active">Forms</li>
+</ol>
+<!-- end breadcrumb -->
+
+<!-- begin page-header -->
+
+{% for data in init_data %}
+
+	<h1 class="page-header">Forms <small>Pregnant Women/Adolescent Monthly Tracker  <b>{{ data.first_name }} {{ data.surname }} | {{ data.sex_id|gen_value:vals }} | {% if data.date_of_birth|gen_age == 0 %}
+                            UNDER 1 YEAR
+                        {% else %}
+                            {{ data.date_of_birth|gen_age }} YRS 
+                        {% endif %}</b></small></h1>
+
+{% endfor %}
+<!-- end page-header -->
+
+<div id="messages" class="alert alert-danger fade in" style="display: none;" tabindex="1">
+    <span class="close" data-dismiss="alert">×</span>
+    <i class="fa fa-info fa-2x pull-left"></i>
+    <span class="invalid-form-message" id="invalid-form-message"></span>
+</div>
+
+<!-- begin row -->
+<div id='case_details' class="row">
+	<!-- begin col-12 -->
+    <div class="col-md-12">
+    	<!-- begin panel -->
+        <div class="panel panel-inverse">
+            <div class="panel-heading">
+                <div class="panel-heading-btn">
+                    <a href="#" class="btn btn-xs btn-icon btn-circle btn-warning" data-click="panel-expand"><i class="fa fa-minus"></i></a>
+                    <a href="#" class="btn btn-xs btn-icon btn-circle btn-default" data-click="panel-collapse"><i class="fa fa-times"></i></a>
+                </div>
+                <h4 class="panel-title"> Pregnant Women/Adolescent Monthly Tracker </h4>
+			</div>
+			<div style="overflow-x: auto; min-height: 300px;">
+		  		<div class="panel-body">
+            		<form class="form-horizontal form-bordered" action="." method="POST" data-parsley-validate="true"
+              		  name="form-wizard-hhva" id="new_hhva">
+                	{% csrf_token %}
+					<div id="wizard-hhva">
+						<ol>
+							<li>
+							    Pregnant Woman Details
+							</li>
+							<li>
+							    Clinic Attendance & mode of delivery
+							</li>
+
+							<li>
+							    HIV Pos Pregnant Women/Adolescents
+							</li>
+						</ol>
+						
+
+						{{ form.person }}
+						{{ form.household_id }}
+						
+
+						<!-- begin wizard step-1 -->
+						<div class="wizard-step-1">
+							<div class="panel-body">
+
+							    <!-- add labels like HA1, HA2 .. -->
+							    <div class="form-group">
+                        <label class="control-label col-md-4 col-sm-4" for="csi_qs">Date of 1st Contact : <span class="asteriskField">* </label>
+						<div class="col-md-2 col-sm-4">
+							{{ form.PWA_WA1_1 }}
+						</div>
+                    </div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA1: </b>HIV status and test done : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-2">
+										{{ form.PWA_WA1_01 }}
+
+									</div>
+								</div>
+
+                                <div id="01">
+								<div class="form-group" id="test">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA2A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PWA_WA1_2A }}
+										<h6><span id="sel_hhva_ha22"></span></h6>
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA2B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_2B }}
+									</div>
+								</div>
+                            </div>
+                                <div id="1">
+
+								<div class="form-group" >
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PWA_WA1_3A }}
+										<h6><span id="sel_hhva_ha22"></span></h6>
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_3B }}
+									</div>
+								</div>
+                                </div>
+                                <div id="2">
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PWA_WA1_4A }}
+										<h6><span id="sel_hhva_ha22"></span></h6>
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_4B }}
+									</div>
+								</div>
+                                </div>
+                                <div id="3">
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PWA_WA1_5A }}
+										<h6><span id="sel_hhva_ha22"></span></h6>
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_5B }}
+									</div>
+								</div>
+                                </div>
+
+							</div>
+						</div>
+						<!-- end wizard step-1 -->  
+
+						<!-- begin wizard step-2 -->
+						<div class="wizard-step-2">
+							<div class="panel-body">
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA6: </b>Date attended 1st ANC visit : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_6 }}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA7: </b>Date Attended 2nd ANC visit? : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_7 }}
+										<br>
+										<h6><span id="sel_hhva_ha6"></span></h6>
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA8: </b>Date Attended 3rd ANC visit? : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_8 }}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA9: </b>Date Attended 4th ANC visit? : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_9 }}
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA10: </b>Mode of delivery : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_10 }}
+									</div>
+								</div>
+
+							</div> 							
+						</div> 
+						<!-- end wizard step-2 -->
+
+						<!-- begin wizard step-7 -->
+						<div class="wizard-step-7">
+							<div class="panel-body"> 
+								<div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA11: </b>Name of Health Facility linked : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+                                        <!-- {{ form.PWA_WA1_11 }} -->
+                                        <input type="text" class="form-control" name="facility_field" id="facility_field" placeholder="Search for facility here">
+                                        <input type="hidden" name="PWA_WA1_21" id="PWA_WA1_21">
+									</div>
+
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA12: </b>CCC Number : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_12 }}
+										<h6><span id="sel_hhva_ha28"></span></h6>
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA13: </b>Latest VL results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_13 }}
+										<h6><span id="sel_hhva_ha28"></span></h6>
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA14: </b>VL test date : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_14 }}
+										<h6><span id="sel_hhva_ha28"></span></h6>
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA15: </b>Disclosure done to family member : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PWA_WA1_15 }}
+										<h6><span id="sel_hhva_ha28"></span></h6>
+									</div>
+								</div>
+							</div>
+						</div> 
+
+					</div>
+				</div>
+                <div class="panel-body panel-form" id="submit_section" >
+                        <div class="form-group">
+                            <label class="control-label col-md-4 col-sm-4"></label>
+                            <div class="col-md-6 col-sm-6">
+                                <button id="mysubmit-hivscreeningtool" type="submit"
+                                    class="btn btn-primary">Submit</button>
+                                <a href="javascript:history.go(-1)" class="btn btn-white">Cancel</a>
+                            </div>
+                        </div>
+                    </div>
+            <div class="badge pull-right m-4">Revised: 1st July 2019</div>
+
+				</form>
+            </div>
+        </div>
+        <!-- end panel -->
+
+    </div>
+    <!-- end col-12 -->
+
+</div>
+<div class="row">
+    <!-- begin col-12 -->
+    <div class="col-md-12">
+        <!-- begin panel -->
+        <div class="panel panel-info">
+            <div class="panel-heading">
+                <div class="panel-heading-btn">
+                    <a href="javascript:;" class="btn btn-xs btn-icon btn-circle btn-default" data-click="panel-expand"><i class="fa fa-expand"></i></a>
+                    <a href="javascript:;" class="btn btn-xs btn-icon btn-circle btn-warning" data-click="panel-collapse"><i class="fa fa-minus"></i></a>
+                </div>
+                <h4 class="panel-title"><b>Evaluation Events List </b></h4>
+            </div>
+
+            <div class="panel-body">
+                <div  class="panel panel-inverse">
+                    <div id="case-events"  class="table-responsive">
+                        <table class="table" border="1" id="past-hst">
+                            <thead>
+                            <tr>
+                            <th colspan="9">Pregnant Woman Details</th>
+                            <th colspan="5">Clinic Attendance & mode of delivery</th>
+                            <th colspan="5">HIV Pos Pregnant Women/Adolescents</th>
+
+                            </tr>
+
+                                  <tr>
+                                        <th>Q 1</th>
+                                        <th>Q 2A</th>
+                                        <th>Q 2B</th>
+                                        <th>Q 3A</th>
+                                        <th>Q 3B</th>
+                                        <th>Q 4A</th>
+                                        <th>Q 4B</th>
+                                        <th>Q 5A</th>
+                                        <th>Q 5B</th>
+                                        <th>Q 1</th>
+                                        <th>Q 2</th>
+                                        <th>Q 3</th>
+                                        <th>Q 4</th>
+                                        <th>Q 5</th>
+                                        <th>Q 1</th>
+                                        <th>Q 2</th>
+                                        <th>Q 3</th>
+                                        <th>Q 4</th>
+                                        <th>Q 5</th>
+                                      <th> ACTIONS</th>
+
+                                  </tr>
+                                </thead>
+                    {% if hiv_screen %}
+
+                    {% for one_screening_data in hiv_screen %}
+
+
+                        <tr>
+                          <!-- <td>{{one_screening_data.date_of_event}}</td> -->
+                          <td>{{one_screening_data.caregiver_know_status | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.caregiver_knowledge_yes | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.parent_PLWH | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.child_sick_malnourished | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.child_sexual_abuse | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.adol_sick | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.adol_sexual_abuse | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.sex | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.sti | yesno:"Yes, No"}}</td>
+                          <td>{{one_screening_data.hiv_test_required  | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.parent_consent_testing | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.referral_made | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.referral_completed  | yesno:"Yes, No, N/A"}}</td>
+                          <!-- <td>{{one_screening_data.not_completed}}</td> -->
+                          <!-- <td>{{one_screening_data.test_result | yesno:"Yes, No, Null"}}</td> -->
+                          <td>{{one_screening_data.art_referral | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.art_referral_completed  | yesno:"Yes, No, N/A"}}</td>
+                          <td>{{one_screening_data.date_of_event}}</td>
+                        </tr>
+                    {% endfor %}
+                    {% else %}
+                    <div>
+                        <h3>No data available</h3>
+                    </div>
+                    {% endif %}
+                </table>
+                    </div>
+                    <br><br>
+                </div>
+            </div>
+
+        </div>
+        <!-- end panel -->
+    </div>
+    <!-- end col-12 -->
+</div>
+<!-- end row -->
+{#    end row#}
+
+{% endblock %}
+
+{% block lazy_javascript_code %}
+<script src="{% static 'plugins/parsley/dist/parsley.js' %}"></script>
+<script src="{% static 'plugins/bootstrap-wizard/js/bwizard.js' %}"></script>	
+<script src="{% static 'plugins/bootstrap-multiselect/dist/js/bootstrap-multiselect.js' %}"></script>
+<script src="{% static 'js/apps.js' %}"></script>
+<script src="{% static 'js/form-wizards.js' %}"></script>
+<script src="{% static 'js/tag-it.js' %}"></script>
+<script src="{% static 'js/bootstrap-table.min.js' %}"></script>
+<script src="{% static 'js/bootstrap-table-locale-all.min.js' %}"></script>
+<script>
+jQuery(document).ready(function()
+{
+	//multi selects
+    $('#hhva_ha6, #hhva_ha21, #hhva_ha22, #hhva_ha28, #hhva_ha29, #hhva_ha30, #hhva_ha31').multiselect({
+        selectAllValue: 'multiselect-all',
+        includeSelectAllOption: true,
+        enableCaseInsensitiveFiltering: true,
+        numberDisplayed: 1,
+        maxHeight: 300,
+        buttonWidth: '100%',
+		buttonClass: 'btn btn-white',
+		nonSelectedText: 'Please Select'
+    });
+
+	$('html,body').scrollTop(0);
+	FormWizardValidation.init();
+});
+</script>
+
+<script>
+$("#PWA_WA1_6, #PWA_WA1_7, #PWA_WA1_8, #PWA_WA1_9, #PWA_WA1_14, #PWA_WA1_1 ").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_2A").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_3A").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_4A").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_5A").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_1").datepicker({ format: 'yyyy-mm-dd' }).val();
+{#$("#PWA_WA1_17").datepicker()#}
+{#$("#PWA_WA1_19").datepicker()#}
+{#$("#PWA_WA1_24").datepicker()#}
+{#$("#PWA_WA1_26").datepicker()#}
+$( "#facility_field" ).autocomplete({
+    source: function( request, response ) {
+    $.ajax({
+        url: "{% url 'ovc_search' %}",
+        dataType: "json",
+        data: {q: request.term, id: 1},
+        success: function( data ) {
+            response( data );
+        }
+        });
+    },
+    minLength: 4,
+    select: function( event, ui ) {
+        $('#facility_field').val(ui.item.name);
+        $('#PWA_WA1_21').val(ui.item.id);
+    },
+    open: function() {
+        $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );
+    },
+    close: function() {
+        $( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" );
+    }
+});
+
+$("#01, #1, #2, #3").hide()
+$(function(){
+   $("input[name='PWA_WA1_01']").on('change', function () {
+          var ival = $("input[name='PWA_WA1_01']:checked").val();
+          if (ival == 'contact') {
+               $("#01").show()
+               $("#1, #2, #3").hide()
+          }else if(ival == 'tri'){
+               $("#1").show()
+               $("#01, #2, #3").hide()
+          }else if(ival == '3rd'){
+               $("#2").show()
+               $("#01, #1, #3").hide()
+          }else if(ival == '4th'){
+               $("#3").show()
+               $("#01, #1, #2").hide()
+          }
+
+      });
+})
+
+</script>
+{% endblock %}
\ No newline at end of file
diff --git a/templates/ovc/view_child.html b/templates/ovc/view_child.html
index 51bb4b294..f8a625dca 100644
--- a/templates/ovc/view_child.html
+++ b/templates/ovc/view_child.html
@@ -342,6 +342,12 @@ <h4 class="panel-title">Registration details &nbsp; </h4>
                                 <button type="button" class="btn btn-primary"> <i class="fa .fa-th-list"></i> DREAMS Service Uptake Form</button>
                         </a>
 
+
+                        <a href="{% url 'new_pregnantwomen' id=creg.person_id%}">
+                                <button type="button" class="btn btn-primary"> <i class="fa .fa-th-list"></i> PWA TRACKER</button>
+                        </a>
+
+
                         {% endif %}
                     <p></p>
                     </center>

From 1c558b60f7fce5e35a427f624736c53a52e61ce2 Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Mon, 2 May 2022 23:54:10 +0300
Subject: [PATCH 2/9] Add save,edit $ delete functions

---
 cpovc_access/migrations/0001_initial.py       |  116 --
 cpovc_access/migrations/0002_initial.py       |   38 -
 cpovc_access/migrations/__init__.py           |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 180 -> 0 bytes
 cpovc_auth/migrations/0001_initial.py         |   90 --
 cpovc_auth/migrations/0002_initial.py         |   55 -
 cpovc_auth/migrations/__init__.py             |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 178 -> 0 bytes
 cpovc_dashboard/migrations/__init__.py        |    0
 cpovc_forms/migrations/0001_initial.py        | 1186 -----------------
 cpovc_forms/migrations/0002_initial.py        |  642 ---------
 cpovc_forms/migrations/__init__.py            |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 179 -> 0 bytes
 cpovc_forms/urls.py                           |    4 +
 cpovc_forms/views.py                          |  220 ++-
 cpovc_help/migrations/0001_initial.py         |   51 -
 cpovc_help/migrations/0002_initial.py         |   22 -
 cpovc_help/migrations/__init__.py             |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 178 -> 0 bytes
 cpovc_main/migrations/0001_initial.py         |  456 -------
 cpovc_main/migrations/0002_initial.py         |   71 -
 cpovc_main/migrations/__init__.py             |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 178 -> 0 bytes
 cpovc_manage/migrations/0001_initial.py       |   73 -
 cpovc_manage/migrations/__init__.py           |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 180 -> 0 bytes
 cpovc_offline_mode/migrations/__init__.py     |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 186 -> 0 bytes
 cpovc_ovc/migrations/0001_initial.py          |  273 ----
 cpovc_ovc/migrations/__init__.py              |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 177 -> 0 bytes
 cpovc_registry/migrations/0001_initial.py     |  345 -----
 cpovc_registry/migrations/__init__.py         |    0
 .../__pycache__/__init__.cpython-310.pyc      |  Bin 182 -> 0 bytes
 templates/forms/new_pregnantwomen.html        |   74 +-
 35 files changed, 261 insertions(+), 3455 deletions(-)
 delete mode 100644 cpovc_access/migrations/0001_initial.py
 delete mode 100644 cpovc_access/migrations/0002_initial.py
 delete mode 100644 cpovc_access/migrations/__init__.py
 delete mode 100644 cpovc_access/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_auth/migrations/0001_initial.py
 delete mode 100644 cpovc_auth/migrations/0002_initial.py
 delete mode 100644 cpovc_auth/migrations/__init__.py
 delete mode 100644 cpovc_auth/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_dashboard/migrations/__init__.py
 delete mode 100644 cpovc_forms/migrations/0001_initial.py
 delete mode 100644 cpovc_forms/migrations/0002_initial.py
 delete mode 100644 cpovc_forms/migrations/__init__.py
 delete mode 100644 cpovc_forms/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_help/migrations/0001_initial.py
 delete mode 100644 cpovc_help/migrations/0002_initial.py
 delete mode 100644 cpovc_help/migrations/__init__.py
 delete mode 100644 cpovc_help/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_main/migrations/0001_initial.py
 delete mode 100644 cpovc_main/migrations/0002_initial.py
 delete mode 100644 cpovc_main/migrations/__init__.py
 delete mode 100644 cpovc_main/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_manage/migrations/0001_initial.py
 delete mode 100644 cpovc_manage/migrations/__init__.py
 delete mode 100644 cpovc_manage/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_offline_mode/migrations/__init__.py
 delete mode 100644 cpovc_offline_mode/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_ovc/migrations/0001_initial.py
 delete mode 100644 cpovc_ovc/migrations/__init__.py
 delete mode 100644 cpovc_ovc/migrations/__pycache__/__init__.cpython-310.pyc
 delete mode 100644 cpovc_registry/migrations/0001_initial.py
 delete mode 100644 cpovc_registry/migrations/__init__.py
 delete mode 100644 cpovc_registry/migrations/__pycache__/__init__.cpython-310.pyc

diff --git a/cpovc_access/migrations/0001_initial.py b/cpovc_access/migrations/0001_initial.py
deleted file mode 100644
index 3352433ce..000000000
--- a/cpovc_access/migrations/0001_initial.py
+++ /dev/null
@@ -1,116 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='AccessAttempt',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('user_agent', models.CharField(max_length=255)),
-                ('ip_address', models.GenericIPAddressField(null=True, verbose_name='IP Address')),
-                ('username', models.CharField(max_length=255, null=True)),
-                ('trusted', models.BooleanField(default=False)),
-                ('http_accept', models.CharField(max_length=1025, verbose_name='HTTP Accept')),
-                ('path_info', models.CharField(max_length=255, verbose_name='Path')),
-                ('attempt_time', models.DateTimeField(auto_now_add=True)),
-                ('get_data', models.TextField(verbose_name='GET Data')),
-                ('post_data', models.TextField(verbose_name='POST Data')),
-                ('failures_since_start', models.PositiveIntegerField(verbose_name='Failed Logins')),
-            ],
-            options={
-                'db_table': 'auth_login_attempt',
-            },
-        ),
-        migrations.CreateModel(
-            name='AccessLog',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('user_agent', models.CharField(max_length=255)),
-                ('ip_address', models.GenericIPAddressField(null=True, verbose_name='IP Address')),
-                ('username', models.CharField(max_length=255, null=True)),
-                ('trusted', models.BooleanField(default=False)),
-                ('http_accept', models.CharField(max_length=1025, verbose_name='HTTP Accept')),
-                ('path_info', models.CharField(max_length=255, verbose_name='Path')),
-                ('attempt_time', models.DateTimeField(auto_now_add=True)),
-                ('logout_time', models.DateTimeField(blank=True, null=True)),
-            ],
-            options={
-                'db_table': 'auth_login_accesslog',
-            },
-        ),
-        migrations.CreateModel(
-            name='AccessRequest',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('names', models.CharField(max_length=100)),
-                ('email_address', models.EmailField(max_length=100, unique=True)),
-                ('phone_number', models.CharField(max_length=20, unique=True)),
-                ('ip_address', models.GenericIPAddressField()),
-                ('timestamp_requested', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'auth_login_request',
-            },
-        ),
-        migrations.CreateModel(
-            name='LoginAttempt',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('username', models.CharField(db_index=True, max_length=100, verbose_name='username')),
-                ('source_address', models.GenericIPAddressField(db_index=True, verbose_name='source address')),
-                ('hostname', models.CharField(max_length=100, verbose_name='hostname')),
-                ('successful', models.BooleanField(default=False, verbose_name='successful')),
-                ('timestamp', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='timestamp')),
-                ('user_repr', models.CharField(blank=True, max_length=200, verbose_name='user')),
-                ('lockout', models.BooleanField(default=True, help_text='Counts towards lockout count', verbose_name='lockout')),
-            ],
-            options={
-                'verbose_name': 'login attempt',
-                'verbose_name_plural': 'login attempts',
-                'db_table': 'auth_login_policy',
-                'ordering': ('-id',),
-                'permissions': (('unlock', 'Unlock by username or IP address'),),
-            },
-        ),
-        migrations.CreateModel(
-            name='PasswordChange',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('user_repr', models.CharField(max_length=200, verbose_name='user')),
-                ('timestamp', models.DateTimeField(auto_now_add=True, verbose_name='timestamp')),
-                ('successful', models.BooleanField(default=False, verbose_name='successful')),
-                ('is_temporary', models.BooleanField(default=False, verbose_name='is temporary')),
-                ('password', models.CharField(default='', editable=False, max_length=128, verbose_name='password')),
-            ],
-            options={
-                'verbose_name': 'password change',
-                'verbose_name_plural': 'password changes',
-                'db_table': 'auth_password_history',
-                'ordering': ('-id',),
-            },
-        ),
-        migrations.CreateModel(
-            name='UserChange',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('user_repr', models.CharField(max_length=200, verbose_name='user')),
-                ('timestamp', models.DateTimeField(auto_now_add=True, verbose_name='timestamp')),
-                ('by_user_repr', models.CharField(max_length=200, verbose_name='by user')),
-            ],
-            options={
-                'verbose_name': 'user change',
-                'verbose_name_plural': 'user changes',
-                'db_table': 'auth_user_history',
-                'ordering': ('-id',),
-            },
-        ),
-    ]
diff --git a/cpovc_access/migrations/0002_initial.py b/cpovc_access/migrations/0002_initial.py
deleted file mode 100644
index 348a4863b..000000000
--- a/cpovc_access/migrations/0002_initial.py
+++ /dev/null
@@ -1,38 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.conf import settings
-from django.db import migrations, models
-import django.db.models.deletion
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('cpovc_access', '0001_initial'),
-        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name='userchange',
-            name='by_user',
-            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='changed_users', to=settings.AUTH_USER_MODEL, verbose_name='by user'),
-        ),
-        migrations.AddField(
-            model_name='userchange',
-            name='user',
-            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='user'),
-        ),
-        migrations.AddField(
-            model_name='passwordchange',
-            name='user',
-            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='user'),
-        ),
-        migrations.AddField(
-            model_name='loginattempt',
-            name='user',
-            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='user'),
-        ),
-    ]
diff --git a/cpovc_access/migrations/__init__.py b/cpovc_access/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_access/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_access/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index ff434e7d489130e621879313177a2a35704430da..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 180
zcmd1j<>g`kf-ePWNg(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10eKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3^1lao`6
ti}iCefyzoU^Ye=J<Kr{)GE3s)^$IF)aoFVMr<CTT+JP)AW&#o{3;;fDEgt{?

diff --git a/cpovc_auth/migrations/0001_initial.py b/cpovc_auth/migrations/0001_initial.py
deleted file mode 100644
index f5326c657..000000000
--- a/cpovc_auth/migrations/0001_initial.py
+++ /dev/null
@@ -1,90 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-import django.contrib.auth.models
-from django.db import migrations, models
-import django.db.models.deletion
-import django.utils.timezone
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('auth', '0012_alter_user_first_name_max_length'),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='AppUser',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('password', models.CharField(max_length=128, verbose_name='password')),
-                ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
-                ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
-                ('role', models.CharField(default='Public', max_length=20)),
-                ('username', models.CharField(max_length=20, unique=True)),
-                ('is_staff', models.BooleanField(default=False)),
-                ('is_active', models.BooleanField(default=True)),
-                ('timestamp_created', models.DateTimeField(auto_now_add=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-                ('password_changed_timestamp', models.DateTimeField(null=True)),
-            ],
-            options={
-                'verbose_name': 'user',
-                'verbose_name_plural': 'users',
-                'db_table': 'auth_user',
-            },
-        ),
-        migrations.CreateModel(
-            name='CPOVCPermission',
-            fields=[
-                ('permission_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='auth.permission')),
-                ('permission_description', models.CharField(max_length=255)),
-                ('permission_set', models.CharField(max_length=100)),
-                ('permission_type', models.CharField(blank=True, max_length=50)),
-                ('restricted_to_self', models.BooleanField(blank=True, default=False)),
-                ('restricted_to_org_unit', models.BooleanField(blank=True, default=False)),
-                ('restricted_to_geo', models.BooleanField(blank=True, default=False)),
-                ('timestamp_modified', models.DateTimeField(default=django.utils.timezone.now)),
-            ],
-            options={
-                'db_table': 'auth_permission_detail',
-            },
-            bases=('auth.permission',),
-            managers=[
-                ('objects', django.contrib.auth.models.PermissionManager()),
-            ],
-        ),
-        migrations.CreateModel(
-            name='CPOVCRole',
-            fields=[
-                ('group_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='auth.group')),
-                ('group_id', models.CharField(max_length=5)),
-                ('group_name', models.CharField(max_length=100)),
-                ('group_description', models.CharField(max_length=255)),
-                ('restricted_to_org_unit', models.BooleanField(blank=True, default=False)),
-                ('restricted_to_geo', models.BooleanField(blank=True, default=False)),
-                ('automatic', models.BooleanField(default=False)),
-                ('timestamp_modified', models.DateTimeField(default=django.utils.timezone.now)),
-            ],
-            options={
-                'db_table': 'auth_group_detail',
-            },
-            bases=('auth.group',),
-            managers=[
-                ('objects', django.contrib.auth.models.GroupManager()),
-            ],
-        ),
-        migrations.CreateModel(
-            name='CPOVCUserRoleGeoOrg',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('timestamp_modified', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'auth_user_groups_geo_org',
-            },
-        ),
-    ]
diff --git a/cpovc_auth/migrations/0002_initial.py b/cpovc_auth/migrations/0002_initial.py
deleted file mode 100644
index 1a69a392e..000000000
--- a/cpovc_auth/migrations/0002_initial.py
+++ /dev/null
@@ -1,55 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.conf import settings
-from django.db import migrations, models
-import django.db.models.deletion
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('cpovc_main', '0002_initial'),
-        ('auth', '0012_alter_user_first_name_max_length'),
-        ('cpovc_auth', '0001_initial'),
-        ('cpovc_registry', '0001_initial'),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name='cpovcuserrolegeoorg',
-            name='area',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='cpovcuserrolegeoorg',
-            name='group',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_auth.cpovcrole'),
-        ),
-        migrations.AddField(
-            model_name='cpovcuserrolegeoorg',
-            name='org_unit',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit'),
-        ),
-        migrations.AddField(
-            model_name='cpovcuserrolegeoorg',
-            name='user',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
-        ),
-        migrations.AddField(
-            model_name='appuser',
-            name='groups',
-            field=models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups'),
-        ),
-        migrations.AddField(
-            model_name='appuser',
-            name='reg_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='appuser',
-            name='user_permissions',
-            field=models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions'),
-        ),
-    ]
diff --git a/cpovc_auth/migrations/__init__.py b/cpovc_auth/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_auth/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_auth/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 468dc31a14f365f245eb7d28ce542f1b2cfeadb1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 178
zcmd1j<>g`kf-ePWNg(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10WKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3^1OG`5J
rb2EX8N;32FiuL2;GxIV_;^XxSDsOSv<mRW8=A_zztSe>$5-bb=-IOd{

diff --git a/cpovc_dashboard/migrations/__init__.py b/cpovc_dashboard/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_forms/migrations/0001_initial.py b/cpovc_forms/migrations/0001_initial.py
deleted file mode 100644
index 8e8f7589a..000000000
--- a/cpovc_forms/migrations/0001_initial.py
+++ /dev/null
@@ -1,1186 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-import datetime
-from django.db import migrations, models
-import django.utils.timezone
-import uuid
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='FormsAuditTrail',
-            fields=[
-                ('transaction_id', models.AutoField(primary_key=True, serialize=False)),
-                ('form_id', models.UUIDField(null=True)),
-                ('form_type_id', models.CharField(max_length=250)),
-                ('transaction_type_id', models.CharField(db_index=True, max_length=4, null=True)),
-                ('interface_id', models.CharField(db_index=True, max_length=4, null=True)),
-                ('timestamp_modified', models.DateTimeField(auto_now=True)),
-                ('ip_address', models.GenericIPAddressField()),
-                ('meta_data', models.TextField(null=True)),
-            ],
-            options={
-                'db_table': 'forms_audit_trail',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormsLog',
-            fields=[
-                ('form_log_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('form_type_id', models.CharField(max_length=250)),
-                ('form_id', models.CharField(default='XXXX', max_length=50)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('timestamp_modified', models.DateTimeField(auto_now=True)),
-                ('app_user', models.IntegerField(default=404, null=True)),
-            ],
-            options={
-                'db_table': 'forms_log',
-            },
-        ),
-        migrations.CreateModel(
-            name='ListBanks',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('bank_name', models.CharField(max_length=150)),
-                ('bank_code', models.CharField(max_length=10)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Bank',
-                'verbose_name_plural': 'Banks',
-                'db_table': 'list_bank',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCAdverseEventsFollowUp',
-            fields=[
-                ('adverse_condition_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('adverse_condition_description', models.CharField(max_length=20)),
-                ('attendance_type', models.CharField(max_length=4, null=True)),
-                ('referral_type', models.CharField(max_length=4, null=True)),
-                ('adverse_event_date', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_adverseevents_followup',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCAdverseEventsOtherFollowUp',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('adverse_condition', models.CharField(max_length=20)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_adverseevents_other_followup',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCBasicCategory',
-            fields=[
-                ('category_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('case_category', models.CharField(max_length=5)),
-                ('case_sub_category', models.CharField(max_length=5, null=True)),
-                ('case_date_event', models.DateField(default=django.utils.timezone.now)),
-                ('case_nature', models.CharField(max_length=5)),
-                ('case_place_of_event', models.CharField(max_length=5)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Basic Category',
-                'verbose_name_plural': 'Basic Category',
-                'db_table': 'ovc_basic_category',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCBasicCRS',
-            fields=[
-                ('case_id', models.UUIDField(default=uuid.uuid1, primary_key=True, serialize=False)),
-                ('case_serial', models.CharField(default='XXXX', max_length=50)),
-                ('case_reporter', models.CharField(max_length=5)),
-                ('reporter_telephone', models.CharField(max_length=15, null=True)),
-                ('reporter_county', models.CharField(max_length=3, null=True)),
-                ('reporter_sub_county', models.CharField(max_length=3, null=True)),
-                ('reporter_ward', models.CharField(max_length=100, null=True)),
-                ('reporter_village', models.CharField(max_length=100, null=True)),
-                ('case_date', models.DateField(default=django.utils.timezone.now)),
-                ('perpetrator', models.CharField(max_length=5, null=True)),
-                ('county', models.CharField(max_length=3)),
-                ('constituency', models.CharField(max_length=3)),
-                ('organization_unit', models.CharField(max_length=100)),
-                ('case_landmark', models.CharField(max_length=50, null=True)),
-                ('hh_economic_status', models.CharField(max_length=5)),
-                ('family_status', models.CharField(max_length=5)),
-                ('mental_condition', models.CharField(max_length=5)),
-                ('physical_condition', models.CharField(max_length=5)),
-                ('other_condition', models.CharField(max_length=5)),
-                ('risk_level', models.CharField(max_length=5)),
-                ('referral', models.CharField(default='ANNO', max_length=5)),
-                ('referral_detail', models.CharField(max_length=200, null=True)),
-                ('summon', models.CharField(default='ANNO', max_length=5)),
-                ('case_narration', models.TextField(null=True)),
-                ('longitude', models.DecimalField(decimal_places=7, max_digits=10, null=True)),
-                ('latitude', models.DecimalField(decimal_places=7, max_digits=10, null=True)),
-                ('case_params', models.TextField(null=True)),
-                ('status', models.IntegerField(default=0)),
-                ('case_comments', models.TextField(null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Basic Case Record',
-                'verbose_name_plural': 'Basic Case Records',
-                'db_table': 'ovc_basic_case_record',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCBasicPerson',
-            fields=[
-                ('person_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('relationship', models.CharField(max_length=5, null=True)),
-                ('person_type', models.CharField(choices=[('PTRD', 'Reporter'), ('PTPD', 'Perpetrator'), ('PTCH', 'Child'), ('PTCG', 'Guardian')], max_length=5)),
-                ('first_name', models.CharField(max_length=50)),
-                ('surname', models.CharField(max_length=50)),
-                ('other_names', models.CharField(max_length=50, null=True)),
-                ('dob', models.DateField(null=True)),
-                ('sex', models.CharField(max_length=5, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Basic Person',
-                'verbose_name_plural': 'Basic Persons',
-                'db_table': 'ovc_basic_person',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCBursary',
-            fields=[
-                ('bursary_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('bursary_type', models.CharField(max_length=4, null=True)),
-                ('disbursement_date', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('amount', models.CharField(max_length=20, null=True)),
-                ('year', models.CharField(max_length=20, null=True)),
-                ('term', models.CharField(max_length=20, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('is_active', models.BooleanField(default=True)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-            ],
-            options={
-                'db_table': 'ovc_bursaryinfo',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareAssessment',
-            fields=[
-                ('assessment_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('domain', models.CharField(max_length=4)),
-                ('service', models.CharField(max_length=4)),
-                ('service_status', models.CharField(max_length=7)),
-                ('service_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_care_assessment',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareBenchmarkScore',
-            fields=[
-                ('bench_mark_score_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('bench_mark_1', models.IntegerField(default=0)),
-                ('bench_mark_2', models.IntegerField(default=0)),
-                ('bench_mark_3', models.IntegerField(default=0)),
-                ('bench_mark_4', models.IntegerField(default=0)),
-                ('bench_mark_5', models.IntegerField(default=0)),
-                ('bench_mark_6', models.IntegerField(default=0)),
-                ('bench_mark_7', models.IntegerField(default=0)),
-                ('bench_mark_8', models.IntegerField(default=0)),
-                ('bench_mark_9', models.IntegerField(default=0)),
-                ('bench_mark_10', models.IntegerField(default=0)),
-                ('bench_mark_11', models.IntegerField(default=0)),
-                ('bench_mark_12', models.IntegerField(default=0)),
-                ('bench_mark_13', models.IntegerField(default=0)),
-                ('bench_mark_14', models.IntegerField(default=0)),
-                ('bench_mark_15', models.IntegerField(default=0)),
-                ('bench_mark_16', models.IntegerField(default=0)),
-                ('bench_mark_17', models.IntegerField(default=0)),
-                ('score', models.IntegerField(default=0)),
-                ('is_void', models.BooleanField(default=False)),
-                ('date_of_event', models.DateField(default=django.utils.timezone.now)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_care_benchmark_score',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareCasePlan',
-            fields=[
-                ('case_plan_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('domain', models.CharField(max_length=50)),
-                ('goal', models.CharField(max_length=255)),
-                ('need', models.CharField(max_length=255)),
-                ('priority', models.CharField(max_length=255)),
-                ('cp_service', models.CharField(max_length=10)),
-                ('responsible', models.CharField(max_length=50)),
-                ('completion_date', models.DateField(default=django.utils.timezone.now)),
-                ('actual_completion_date', models.DateField(default=django.utils.timezone.now)),
-                ('results', models.CharField(max_length=300)),
-                ('reasons', models.CharField(max_length=300)),
-                ('date_of_event', models.DateField()),
-                ('date_of_previous_event', models.DateField(blank=True, null=True)),
-                ('case_plan_status', models.CharField(max_length=5)),
-                ('initial_caseplan', models.BooleanField(default=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_care_case_plan',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareCpara',
-            fields=[
-                ('cpara_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('question_code', models.CharField(blank=True, max_length=10)),
-                ('answer', models.CharField(max_length=15)),
-                ('question_type', models.CharField(max_length=50)),
-                ('domain', models.CharField(max_length=50)),
-                ('date_of_event', models.DateField()),
-                ('date_of_previous_event', models.DateField(blank=True, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_care_cpara',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareEAV',
-            fields=[
-                ('eav_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('entity', models.CharField(max_length=5)),
-                ('attribute', models.CharField(max_length=5)),
-                ('value', models.CharField(max_length=25)),
-                ('value_for', models.CharField(max_length=10, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_care_eav',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareEvents',
-            fields=[
-                ('event', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('event_type_id', models.CharField(max_length=10)),
-                ('event_counter', models.IntegerField(default=0)),
-                ('event_score', models.IntegerField(default=0, null=True)),
-                ('date_of_event', models.DateField(default=django.utils.timezone.now)),
-                ('date_of_previous_event', models.DateTimeField(null=True)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_care_events',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareF1B',
-            fields=[
-                ('form_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('domain', models.CharField(max_length=5)),
-                ('entity', models.CharField(max_length=5)),
-                ('value', models.SmallIntegerField(default=1)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'ovc_care_f1b',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareForms',
-            fields=[
-                ('form_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('name', models.CharField(max_length=50)),
-                ('description', models.CharField(max_length=255)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_care_forms',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCarePriority',
-            fields=[
-                ('priority_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('domain', models.CharField(max_length=4)),
-                ('service', models.CharField(max_length=4)),
-                ('service_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_care_priority',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareQuestions',
-            fields=[
-                ('question_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('code', models.CharField(max_length=5)),
-                ('question', models.CharField(max_length=55)),
-                ('domain', models.CharField(max_length=10)),
-                ('question_text', models.CharField(max_length=255)),
-                ('question_type', models.CharField(max_length=20)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_created', models.DateTimeField(auto_now_add=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_care_questions',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareServices',
-            fields=[
-                ('service_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('service_provided', models.CharField(max_length=250)),
-                ('service_provider', models.CharField(max_length=250, null=True)),
-                ('domain', models.CharField(max_length=4, null=True)),
-                ('place_of_service', models.CharField(max_length=250, null=True)),
-                ('date_of_encounter_event', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('service_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_care_services',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCareWellbeing',
-            fields=[
-                ('well_being_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('question_code', models.CharField(blank=True, max_length=10)),
-                ('answer', models.CharField(max_length=250)),
-                ('question_type', models.CharField(max_length=5)),
-                ('domain', models.CharField(max_length=100)),
-                ('is_void', models.BooleanField(default=False)),
-                ('date_of_event', models.DateField()),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_care_well_being',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseCategory',
-            fields=[
-                ('case_category_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('case_category', models.CharField(max_length=4)),
-                ('case_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('date_of_event', models.DateField(default=django.utils.timezone.now)),
-                ('place_of_event', models.CharField(max_length=4)),
-                ('case_nature', models.CharField(max_length=4)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_category',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseEventClosure',
-            fields=[
-                ('closure_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('case_outcome', models.CharField(max_length=4)),
-                ('date_of_case_closure', models.DateField(default=django.utils.timezone.now)),
-                ('case_closure_notes', models.CharField(max_length=1000)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('is_active', models.BooleanField(default=True)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_event_closure',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseEventCourt',
-            fields=[
-                ('court_session_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('court_order', models.CharField(max_length=250, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_event_court',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseEvents',
-            fields=[
-                ('case_event_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('case_event_type_id', models.CharField(max_length=20)),
-                ('date_of_event', models.DateField(default=django.utils.timezone.now)),
-                ('case_event_details', models.CharField(max_length=100)),
-                ('case_event_notes', models.CharField(blank=True, max_length=1000)),
-                ('case_event_outcome', models.CharField(max_length=250, null=True)),
-                ('next_hearing_date', models.DateField(null=True)),
-                ('next_mention_date', models.DateField(null=True)),
-                ('plea_taken', models.CharField(max_length=4, null=True)),
-                ('application_outcome', models.CharField(max_length=4, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_events',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseEventServices',
-            fields=[
-                ('service_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('service_provided', models.CharField(max_length=250)),
-                ('service_provider', models.CharField(max_length=250, null=True)),
-                ('place_of_service', models.CharField(max_length=250, null=True)),
-                ('date_of_encounter_event', models.DateField(default=django.utils.timezone.now)),
-                ('service_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_event_encounters',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseEventSummon',
-            fields=[
-                ('summon_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('honoured', models.BooleanField(default=False)),
-                ('honoured_date', models.DateField(null=True)),
-                ('summon_date', models.DateField(null=True)),
-                ('summon_note', models.CharField(max_length=250, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_event_summon',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseGeo',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('report_ward', models.CharField(max_length=100, null=True)),
-                ('report_village', models.CharField(max_length=100, null=True)),
-                ('occurence_ward', models.CharField(blank=True, max_length=100)),
-                ('occurence_village', models.CharField(blank=True, max_length=100)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_geo',
-            },
-        ),
-        migrations.CreateModel(
-            name='OvcCaseInformation',
-            fields=[
-                ('info_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('info_type', models.CharField(default='INFO', max_length=5)),
-                ('info_item', models.CharField(max_length=6, null=True)),
-                ('info_detail', models.TextField(null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Case Information',
-                'verbose_name_plural': 'Case Information',
-                'db_table': 'ovc_case_info',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseLocation',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Case Area Location',
-                'verbose_name_plural': 'Case Area Locations',
-                'db_table': 'ovc_case_location',
-            },
-        ),
-        migrations.CreateModel(
-            name='OvcCasePersons',
-            fields=[
-                ('pid', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('person_relation', models.CharField(max_length=5, null=True)),
-                ('person_first_name', models.CharField(max_length=100, null=True)),
-                ('person_other_names', models.CharField(max_length=100, null=True)),
-                ('person_surname', models.CharField(max_length=100, null=True)),
-                ('person_type', models.CharField(default='PERP', max_length=5)),
-                ('person_identifier', models.CharField(max_length=15, null=True)),
-                ('person_dob', models.DateField(null=True)),
-                ('person_sex', models.CharField(choices=[('SMAL', 'Male'), ('SFEM', 'Female')], max_length=4, null=True)),
-            ],
-            options={
-                'verbose_name': 'Case Other Person',
-                'verbose_name_plural': 'Case Other Persons',
-                'db_table': 'ovc_case_other_person',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseRecord',
-            fields=[
-                ('case_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('case_serial', models.CharField(default='XXXX', max_length=50)),
-                ('perpetrator_status', models.CharField(default='PKNW', max_length=20)),
-                ('perpetrator_first_name', models.CharField(max_length=50, null=True)),
-                ('perpetrator_other_names', models.CharField(max_length=50, null=True)),
-                ('perpetrator_surname', models.CharField(max_length=50, null=True)),
-                ('perpetrator_relationship_type', models.CharField(max_length=50, null=True)),
-                ('risk_level', models.CharField(max_length=50)),
-                ('date_case_opened', models.DateField(default=datetime.date.today)),
-                ('case_reporter_first_name', models.CharField(max_length=50, null=True)),
-                ('case_reporter_other_names', models.CharField(max_length=50, null=True)),
-                ('case_reporter_surname', models.CharField(max_length=50, null=True)),
-                ('case_reporter_contacts', models.CharField(max_length=20, null=True)),
-                ('case_reporter', models.CharField(blank=True, max_length=20)),
-                ('court_name', models.CharField(max_length=200, null=True)),
-                ('court_number', models.CharField(max_length=50, null=True)),
-                ('police_station', models.CharField(max_length=200, null=True)),
-                ('ob_number', models.CharField(max_length=50, null=True)),
-                ('case_status', models.CharField(default='ACTIVE', max_length=50)),
-                ('referral_present', models.CharField(default='AYES', max_length=10)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('parent_case_id', models.UUIDField(null=True)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('case_remarks', models.CharField(max_length=1000, null=True)),
-                ('date_of_summon', models.DateField(null=True)),
-                ('summon_status', models.BooleanField(default=None, null=True)),
-                ('case_stage', models.IntegerField(default=0)),
-            ],
-            options={
-                'db_table': 'ovc_case_record',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCaseSubCategory',
-            fields=[
-                ('case_sub_category_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('case_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('sub_category_id', models.CharField(max_length=4)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_case_sub_category',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCDischargeFollowUp',
-            fields=[
-                ('discharge_followup_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('type_of_discharge', models.CharField(max_length=20)),
-                ('date_of_discharge', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('discharge_destination', models.CharField(max_length=20, null=True)),
-                ('reason_of_discharge', models.CharField(blank=True, max_length=1000)),
-                ('expected_return_date', models.DateField(null=True)),
-                ('actual_return_date', models.DateField(null=True)),
-                ('discharge_comments', models.CharField(blank=True, max_length=1000)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_discharge_followup',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCDocuments',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('document_type', models.CharField(max_length=100)),
-                ('document_description', models.CharField(max_length=200)),
-                ('document_name', models.CharField(blank=True, max_length=100)),
-                ('document_dir', models.CharField(blank=True, max_length=1000)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_documents',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCDreams',
-            fields=[
-                ('dreams_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('service_provided', models.CharField(max_length=250)),
-                ('service_provider', models.CharField(max_length=250, null=True)),
-                ('domain', models.CharField(max_length=10, null=True)),
-                ('place_of_service', models.CharField(max_length=250, null=True)),
-                ('date_of_encounter_event', models.DateField(default=django.utils.timezone.now)),
-                ('service_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_dreams',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCEconomicStatus',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('household_economic_status', models.CharField(max_length=100)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_economic_status',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCEducationFollowUp',
-            fields=[
-                ('education_followup_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('admitted_to_school', models.CharField(max_length=10)),
-                ('admission_to_school_date', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('education_comments', models.CharField(max_length=1000, null=True)),
-                ('not_in_school_reason', models.CharField(max_length=4, null=True)),
-                ('school_admission_type', models.CharField(max_length=4, null=True)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_education_followup',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCEducationLevelFollowUp',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('admission_level', models.CharField(max_length=20, null=True)),
-                ('admission_sublevel', models.CharField(max_length=20, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_education_level_followup',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCExplanations',
-            fields=[
-                ('explanation_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('comment', models.CharField(max_length=255)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_explanations',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCFamilyCare',
-            fields=[
-                ('familycare_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('type_of_care', models.CharField(max_length=4)),
-                ('certificate_number', models.CharField(max_length=20, null=True)),
-                ('date_of_certificate_expiry', models.DateField(null=True)),
-                ('type_of_adoption', models.CharField(max_length=4, null=True)),
-                ('adoption_country', models.CharField(max_length=20, null=True)),
-                ('date_of_adoption', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('court_name', models.CharField(max_length=100, null=True)),
-                ('court_file_number', models.CharField(max_length=20, null=True)),
-                ('parental_status', models.CharField(max_length=4, null=True)),
-                ('contact_person', models.CharField(max_length=20, null=True)),
-                ('adopting_mother_firstname', models.CharField(max_length=20, null=True)),
-                ('adopting_mother_surname', models.CharField(max_length=20, null=True)),
-                ('adopting_mother_othernames', models.CharField(max_length=20, null=True)),
-                ('adopting_mother_idnumber', models.CharField(max_length=20, null=True)),
-                ('adopting_mother_contacts', models.CharField(max_length=20, null=True)),
-                ('adopting_father_firstname', models.CharField(max_length=20, null=True)),
-                ('adopting_father_surname', models.CharField(max_length=20, null=True)),
-                ('adopting_father_othernames', models.CharField(max_length=20, null=True)),
-                ('adopting_father_idnumber', models.CharField(max_length=20, null=True)),
-                ('adopting_father_contacts', models.CharField(max_length=20, null=True)),
-                ('adopting_agency', models.CharField(max_length=20, null=True)),
-                ('adoption_remarks', models.CharField(max_length=1000, null=True)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_family_care',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCFamilyStatus',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('family_status', models.CharField(max_length=100)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_family_status',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCFriends',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('friend_firstname', models.CharField(max_length=50)),
-                ('friend_other_names', models.CharField(max_length=50)),
-                ('friend_surname', models.CharField(max_length=50)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_friends',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCGoals',
-            fields=[
-                ('goal_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('goal', models.CharField(max_length=255)),
-                ('action', models.CharField(max_length=255)),
-                ('is_void', models.BooleanField(default=False)),
-                ('date_of_event', models.DateField()),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_goals',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCGokBursary',
-            fields=[
-                ('application_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('sub_county', models.CharField(max_length=100, null=True)),
-                ('location', models.CharField(max_length=100, null=True)),
-                ('sub_location', models.CharField(max_length=100, null=True)),
-                ('village', models.CharField(max_length=100)),
-                ('nearest_school', models.CharField(max_length=100, null=True)),
-                ('nearest_worship', models.CharField(max_length=100, null=True)),
-                ('in_school', models.BooleanField(default=True)),
-                ('school_class', models.CharField(max_length=50)),
-                ('primary_school', models.CharField(max_length=150)),
-                ('school_marks', models.IntegerField()),
-                ('father_names', models.CharField(max_length=100)),
-                ('father_alive', models.BooleanField(default=True)),
-                ('father_telephone', models.CharField(max_length=20, null=True)),
-                ('mother_names', models.CharField(max_length=100)),
-                ('mother_alive', models.BooleanField(default=True)),
-                ('mother_telephone', models.CharField(max_length=20, null=True)),
-                ('guardian_names', models.CharField(max_length=100, null=True)),
-                ('guardian_telephone', models.CharField(max_length=20, null=True)),
-                ('guardian_relation', models.CharField(max_length=20, null=True)),
-                ('same_household', models.BooleanField(default=True)),
-                ('father_chronic_ill', models.BooleanField(default=True)),
-                ('father_chronic_illness', models.CharField(max_length=100, null=True)),
-                ('father_disabled', models.BooleanField(default=True)),
-                ('father_disability', models.CharField(max_length=100, null=True)),
-                ('father_pension', models.BooleanField(default=True)),
-                ('father_occupation', models.CharField(max_length=100, null=True)),
-                ('mother_chronic_ill', models.BooleanField(default=True)),
-                ('mother_chronic_illness', models.CharField(max_length=100, null=True)),
-                ('mother_disabled', models.BooleanField(default=True)),
-                ('mother_disability', models.CharField(max_length=100, null=True)),
-                ('mother_pension', models.BooleanField(default=True)),
-                ('mother_occupation', models.CharField(max_length=100, null=True)),
-                ('fees_amount', models.IntegerField()),
-                ('fees_balance', models.IntegerField()),
-                ('school_secondary', models.CharField(max_length=150)),
-                ('school_principal', models.CharField(max_length=150)),
-                ('school_sub_county', models.CharField(max_length=100, null=True)),
-                ('school_location', models.CharField(max_length=100, null=True)),
-                ('school_sub_location', models.CharField(max_length=100, null=True)),
-                ('school_village', models.CharField(max_length=100, null=True)),
-                ('school_telephone', models.CharField(max_length=20, null=True)),
-                ('school_email', models.CharField(max_length=100, null=True)),
-                ('school_type', models.CharField(max_length=5)),
-                ('school_category', models.CharField(max_length=5)),
-                ('school_enrolled', models.CharField(max_length=5)),
-                ('school_bank_branch', models.CharField(max_length=100)),
-                ('school_bank_account', models.CharField(max_length=50)),
-                ('school_recommend_by', models.CharField(max_length=5)),
-                ('school_recommend_date', models.DateField()),
-                ('chief_recommend_by', models.CharField(max_length=5)),
-                ('chief_recommend_date', models.DateField()),
-                ('chief_telephone', models.CharField(max_length=5)),
-                ('csac_approved', models.BooleanField(default=True)),
-                ('approved_amount', models.IntegerField()),
-                ('ssco_name', models.CharField(max_length=100)),
-                ('scco_signed', models.BooleanField(default=True)),
-                ('scco_sign_date', models.DateField()),
-                ('csac_chair_name', models.CharField(max_length=100)),
-                ('csac_signed', models.BooleanField(default=True)),
-                ('csac_sign_date', models.DateField()),
-                ('application_date', models.DateField()),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'GoK Bursary',
-                'verbose_name_plural': 'GoK Bursaries',
-                'db_table': 'bursary_application',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHIVManagement',
-            fields=[
-                ('adherence_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('hiv_confirmed_date', models.DateTimeField()),
-                ('treatment_initiated_date', models.DateTimeField()),
-                ('baseline_hei', models.CharField(max_length=100)),
-                ('firstline_start_date', models.DateTimeField()),
-                ('substitution_firstline_arv', models.BooleanField(default=False)),
-                ('substitution_firstline_date', models.DateTimeField(default=django.utils.timezone.now)),
-                ('switch_secondline_arv', models.BooleanField(default=False)),
-                ('switch_secondline_date', models.DateTimeField(null=True)),
-                ('switch_thirdline_arv', models.BooleanField(default=False)),
-                ('switch_thirdline_date', models.DateTimeField(null=True)),
-                ('visit_date', models.DateTimeField()),
-                ('duration_art', models.CharField(max_length=3, null=True)),
-                ('height', models.CharField(max_length=3, null=True)),
-                ('muac', models.CharField(max_length=20, null=True)),
-                ('adherence', models.CharField(max_length=20)),
-                ('adherence_drugs_duration', models.CharField(max_length=3, null=True)),
-                ('adherence_counselling', models.CharField(max_length=20, null=True)),
-                ('treatment_suppoter', models.CharField(max_length=100, null=True)),
-                ('treatment_supporter_relationship', models.CharField(max_length=20, null=True)),
-                ('treatment_supporter_gender', models.CharField(max_length=11, null=True)),
-                ('treatment_supporter_age', models.CharField(max_length=11, null=True)),
-                ('treament_supporter_hiv', models.CharField(max_length=100, null=True)),
-                ('viral_load_results', models.CharField(max_length=7, null=True)),
-                ('viral_load_date', models.DateTimeField()),
-                ('detectable_viralload_interventions', models.CharField(max_length=50, null=True)),
-                ('disclosure', models.CharField(max_length=20, null=True)),
-                ('muac_score', models.CharField(max_length=20, null=True)),
-                ('bmi', models.CharField(max_length=20, null=True)),
-                ('nutritional_support', models.CharField(max_length=50, null=True)),
-                ('support_group_status', models.CharField(max_length=11, null=True)),
-                ('nhif_enrollment', models.BooleanField(default=False)),
-                ('support_group_enrollment', models.BooleanField(default=False)),
-                ('nhif_status', models.CharField(max_length=11, null=True)),
-                ('referral_services', models.CharField(max_length=100, null=True)),
-                ('nextappointment_date', models.DateField(null=True)),
-                ('peer_educator_name', models.CharField(max_length=100, null=True)),
-                ('peer_educator_contact', models.CharField(max_length=20, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('date_of_event', models.DateField()),
-                ('timestamp_created', models.DateTimeField(auto_now_add=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_hiv_management',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHIVRiskScreening',
-            fields=[
-                ('risk_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('test_done_when', models.BooleanField(null=True)),
-                ('test_donewhen_result', models.BooleanField(null=True)),
-                ('caregiver_know_status', models.BooleanField(null=True)),
-                ('caregiver_knowledge_yes', models.CharField(max_length=50, null=True)),
-                ('parent_PLWH', models.BooleanField(null=True)),
-                ('child_sick_malnourished', models.BooleanField(null=True)),
-                ('child_sexual_abuse', models.BooleanField(null=True)),
-                ('adol_sick', models.BooleanField(null=True)),
-                ('adol_sexual_abuse', models.BooleanField(null=True)),
-                ('sex', models.BooleanField(null=True)),
-                ('sti', models.BooleanField(null=True)),
-                ('hiv_test_required', models.BooleanField(null=True)),
-                ('parent_consent_testing', models.BooleanField(null=True)),
-                ('parent_consent_date', models.DateTimeField(default=django.utils.timezone.now, null=True)),
-                ('referral_made', models.BooleanField(null=True)),
-                ('referral_made_date', models.DateTimeField(default=django.utils.timezone.now, null=True)),
-                ('referral_completed', models.BooleanField(null=True)),
-                ('referral_completed_date', models.DateTimeField(default=django.utils.timezone.now, null=True)),
-                ('not_completed', models.CharField(max_length=50)),
-                ('test_result', models.CharField(max_length=20, null=True)),
-                ('art_referral', models.BooleanField(null=True)),
-                ('art_referral_date', models.DateTimeField(default=django.utils.timezone.now, null=True)),
-                ('art_referral_completed', models.BooleanField(null=True)),
-                ('art_referral_completed_date', models.DateTimeField(default=django.utils.timezone.now, null=True)),
-                ('facility_code', models.CharField(max_length=10, null=True)),
-                ('is_void', models.BooleanField(null=True)),
-                ('date_of_event', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('timestamp_created', models.DateTimeField(auto_now_add=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_risk_screening',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHivStatus',
-            fields=[
-                ('hiv_status_id', models.AutoField(primary_key=True, serialize=False)),
-                ('hiv_status', models.CharField(max_length=10)),
-                ('is_void', models.BooleanField(default=False)),
-                ('date_of_event', models.DateField()),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_hiv_status',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHobbies',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('hobby', models.CharField(max_length=200)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_hobbies',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHouseholdDemographics',
-            fields=[
-                ('household_demographics_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('key', models.CharField(max_length=15)),
-                ('male', models.IntegerField(default=0)),
-                ('female', models.IntegerField(default=0)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_household_demographics',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCMedical',
-            fields=[
-                ('medical_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('mental_condition', models.CharField(max_length=50)),
-                ('physical_condition', models.CharField(max_length=50)),
-                ('other_condition', models.CharField(max_length=50)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_medical',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCMedicalSubconditions',
-            fields=[
-                ('medicalsubcond_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('medical_condition', models.CharField(max_length=50)),
-                ('medical_subcondition', models.CharField(max_length=50)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_medical_subconditions',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCMonitoring',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('hiv_status_knowledge', models.CharField(max_length=5)),
-                ('viral_suppression', models.CharField(max_length=5)),
-                ('hiv_prevention', models.CharField(max_length=5)),
-                ('undernourished', models.CharField(max_length=5)),
-                ('access_money', models.CharField(max_length=5)),
-                ('violence', models.CharField(max_length=5)),
-                ('caregiver', models.CharField(max_length=5)),
-                ('school_attendance', models.CharField(max_length=5)),
-                ('school_progression', models.CharField(max_length=5)),
-                ('cp_achievement', models.CharField(max_length=5)),
-                ('case_closure', models.CharField(max_length=5)),
-                ('case_closure_checked', models.CharField(max_length=5)),
-                ('quarter', models.CharField(blank=True, max_length=10, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('event_date', models.DateField()),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_monitoring',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCNeeds',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('need_description', models.CharField(max_length=250)),
-                ('need_type', models.CharField(max_length=250)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_needs',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCPlacement',
-            fields=[
-                ('placement_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('residential_institution_name', models.CharField(blank=True, max_length=100)),
-                ('admission_date', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('admission_type', models.CharField(blank=True, max_length=4)),
-                ('transfer_from', models.CharField(max_length=100, null=True)),
-                ('admission_reason', models.CharField(blank=True, max_length=100)),
-                ('holding_period', models.IntegerField(null=True)),
-                ('committing_period_units', models.CharField(max_length=4, null=True)),
-                ('committing_period', models.IntegerField(null=True)),
-                ('current_residential_status', models.CharField(max_length=4)),
-                ('has_court_committal_order', models.CharField(max_length=4)),
-                ('free_for_adoption', models.CharField(max_length=4, null=True)),
-                ('court_order_number', models.CharField(max_length=20, null=True)),
-                ('court_order_issue_date', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('committing_court', models.CharField(max_length=100, null=True)),
-                ('placement_notes', models.CharField(max_length=1000, null=True)),
-                ('ob_number', models.CharField(max_length=20, null=True)),
-                ('placement_type', models.CharField(default='Normal', max_length=10)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('is_active', models.BooleanField(default=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_placement',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCPlacementFollowUp',
-            fields=[
-                ('placememt_followup_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('followup_type', models.CharField(max_length=100)),
-                ('followup_date', models.DateField(default=django.utils.timezone.now)),
-                ('followup_details', models.CharField(blank=True, max_length=1000)),
-                ('followup_outcome', models.CharField(blank=True, max_length=1000)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_placement_followup',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCReferral',
-            fields=[
-                ('refferal_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('refferal_actor_type', models.CharField(max_length=4)),
-                ('refferal_actor_specify', models.CharField(max_length=50)),
-                ('refferal_to', models.CharField(max_length=4)),
-                ('refferal_status', models.CharField(default='PENDING', max_length=20)),
-                ('refferal_startdate', models.DateField(default=datetime.date.today)),
-                ('refferal_enddate', models.DateField(null=True)),
-                ('referral_grouping_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_referrals',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCReferrals',
-            fields=[
-                ('referral_id', models.AutoField(primary_key=True, serialize=False)),
-                ('referral_date', models.DateField(default=django.utils.timezone.now)),
-                ('service', models.CharField(max_length=20)),
-                ('institution', models.CharField(max_length=50)),
-                ('contact_person', models.CharField(max_length=50)),
-                ('completed', models.BooleanField(default=False)),
-                ('outcome', models.CharField(max_length=255)),
-                ('is_void', models.BooleanField(default=False)),
-                ('date_of_event', models.DateField()),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True)),
-            ],
-            options={
-                'db_table': 'ovc_cp_referrals',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCReminders',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('reminder_date', models.DateField(default=django.utils.timezone.now)),
-                ('reminder_type', models.CharField(max_length=100)),
-                ('reminder_description', models.CharField(max_length=1000)),
-                ('reminder_status', models.CharField(max_length=10)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sync_id', models.UUIDField(default=uuid.uuid1, editable=False)),
-            ],
-            options={
-                'db_table': 'ovc_reminders',
-            },
-        ),
-    ]
diff --git a/cpovc_forms/migrations/0002_initial.py b/cpovc_forms/migrations/0002_initial.py
deleted file mode 100644
index 04cc65a00..000000000
--- a/cpovc_forms/migrations/0002_initial.py
+++ /dev/null
@@ -1,642 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.conf import settings
-from django.db import migrations, models
-import django.db.models.deletion
-import uuid
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('cpovc_main', '0002_initial'),
-        ('cpovc_registry', '0001_initial'),
-        ('cpovc_forms', '0001_initial'),
-        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
-        ('cpovc_ovc', '0001_initial'),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name='ovcreminders',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcreferrals',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovcreferrals',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcreferral',
-            name='case_category',
-            field=models.ForeignKey(default=uuid.uuid1, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccasecategory'),
-        ),
-        migrations.AddField(
-            model_name='ovcreferral',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovcreferral',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcplacementfollowup',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcplacementfollowup',
-            name='placement_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcplacement'),
-        ),
-        migrations.AddField(
-            model_name='ovcplacement',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcneeds',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovcneeds',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcmonitoring',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovcmonitoring',
-            name='household',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold'),
-        ),
-        migrations.AddField(
-            model_name='ovcmedicalsubconditions',
-            name='medical_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcmedical'),
-        ),
-        migrations.AddField(
-            model_name='ovcmedicalsubconditions',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcmedical',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovcmedical',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovchouseholddemographics',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovchouseholddemographics',
-            name='household',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold'),
-        ),
-        migrations.AddField(
-            model_name='ovchobbies',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovchobbies',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovchivstatus',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovchivstatus',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovchivriskscreening',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovchivriskscreening',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovchivmanagement',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovchivmanagement',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcgokbursary',
-            name='app_user',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
-        ),
-        migrations.AddField(
-            model_name='ovcgokbursary',
-            name='constituency',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='child_constituency', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovcgokbursary',
-            name='county',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='child_county', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovcgokbursary',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcgokbursary',
-            name='school_bank',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.listbanks'),
-        ),
-        migrations.AddField(
-            model_name='ovcgokbursary',
-            name='school_constituency',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='school_constituency', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovcgokbursary',
-            name='school_county',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='school_county', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovcgoals',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovcgoals',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcfriends',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovcfriends',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcfamilystatus',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovcfamilystatus',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcfamilycare',
-            name='adoption_subcounty',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='adoption_subcounty_fk', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovcfamilycare',
-            name='children_office',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='children_office_fk', to='cpovc_registry.regorgunit'),
-        ),
-        migrations.AddField(
-            model_name='ovcfamilycare',
-            name='fostered_from',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fostered_from_fk', to='cpovc_registry.regorgunit'),
-        ),
-        migrations.AddField(
-            model_name='ovcfamilycare',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcfamilycare',
-            name='residential_institution_name',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='residential_institution_name_fk', to='cpovc_registry.regorgunit'),
-        ),
-        migrations.AddField(
-            model_name='ovcexplanations',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovcexplanations',
-            name='form',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareforms'),
-        ),
-        migrations.AddField(
-            model_name='ovcexplanations',
-            name='question',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccarequestions'),
-        ),
-        migrations.AddField(
-            model_name='ovceducationlevelfollowup',
-            name='education_followup_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovceducationfollowup'),
-        ),
-        migrations.AddField(
-            model_name='ovceducationfollowup',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovceducationfollowup',
-            name='placement_id',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcplacement'),
-        ),
-        migrations.AddField(
-            model_name='ovceducationfollowup',
-            name='school_id',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.schoollist'),
-        ),
-        migrations.AddField(
-            model_name='ovceconomicstatus',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovceconomicstatus',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcdreams',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovcdreams',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcdocuments',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcdischargefollowup',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcdischargefollowup',
-            name='placement_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcplacement'),
-        ),
-        migrations.AddField(
-            model_name='ovccasesubcategory',
-            name='case_category',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccasecategory'),
-        ),
-        migrations.AddField(
-            model_name='ovccasesubcategory',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccaserecord',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccasepersons',
-            name='case',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovccasepersons',
-            name='person',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccaselocation',
-            name='case',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovccaselocation',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccaselocation',
-            name='report_location',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sub_location', to='cpovc_main.setuplocation'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseinformation',
-            name='case',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseinformation',
-            name='person',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccasegeo',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovccasegeo',
-            name='occurence_county',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='occurence_county_fk', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovccasegeo',
-            name='occurence_subcounty',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='occurence_subcounty_fk', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovccasegeo',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccasegeo',
-            name='report_orgunit',
-            field=models.ForeignKey(max_length=10, null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit'),
-        ),
-        migrations.AddField(
-            model_name='ovccasegeo',
-            name='report_subcounty',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='report_subcounty_fk', to='cpovc_main.setupgeography'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventsummon',
-            name='case_category',
-            field=models.ForeignKey(default=uuid.uuid1, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccasecategory'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventsummon',
-            name='case_event_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaseevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventservices',
-            name='case_category',
-            field=models.ForeignKey(blank=True, default=uuid.uuid1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccasecategory'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventservices',
-            name='case_event_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaseevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseevents',
-            name='app_user',
-            field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
-        ),
-        migrations.AddField(
-            model_name='ovccaseevents',
-            name='case_id',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseevents',
-            name='placement_id',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcplacement'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventcourt',
-            name='case_category',
-            field=models.ForeignKey(blank=True, default=uuid.uuid1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccasecategory'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventcourt',
-            name='case_event_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaseevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventclosure',
-            name='case_event_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaseevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccaseeventclosure',
-            name='transfer_to',
-            field=models.ForeignKey(max_length=10, null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit'),
-        ),
-        migrations.AddField(
-            model_name='ovccasecategory',
-            name='case_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovccasecategory',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccarewellbeing',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccarewellbeing',
-            name='household',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold'),
-        ),
-        migrations.AddField(
-            model_name='ovccarewellbeing',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccarewellbeing',
-            name='question',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccarequestions'),
-        ),
-        migrations.AddField(
-            model_name='ovccareservices',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccarequestions',
-            name='form',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareforms'),
-        ),
-        migrations.AddField(
-            model_name='ovccarepriority',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccaref1b',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccareevents',
-            name='house_hold',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold'),
-        ),
-        migrations.AddField(
-            model_name='ovccareevents',
-            name='person',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccareeav',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecpara',
-            name='caregiver',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='cpara_caregiver', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecpara',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecpara',
-            name='household',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecpara',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecpara',
-            name='question',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccarequestions'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecaseplan',
-            name='caregiver',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='caseplan_caregiver', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecaseplan',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecaseplan',
-            name='form',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareforms'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecaseplan',
-            name='household',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold'),
-        ),
-        migrations.AddField(
-            model_name='ovccarecaseplan',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccarebenchmarkscore',
-            name='care_giver',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovccarebenchmarkscore',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovccarebenchmarkscore',
-            name='household',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold'),
-        ),
-        migrations.AddField(
-            model_name='ovccareassessment',
-            name='event',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccareevents'),
-        ),
-        migrations.AddField(
-            model_name='ovcbursary',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcbasicperson',
-            name='case',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcbasiccrs'),
-        ),
-        migrations.AddField(
-            model_name='ovcbasiccrs',
-            name='account',
-            field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
-        ),
-        migrations.AddField(
-            model_name='ovcbasiccrs',
-            name='case_org_unit',
-            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit'),
-        ),
-        migrations.AddField(
-            model_name='ovcbasiccrs',
-            name='case_record',
-            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccaserecord'),
-        ),
-        migrations.AddField(
-            model_name='ovcbasiccategory',
-            name='case',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcbasiccrs'),
-        ),
-        migrations.AddField(
-            model_name='ovcadverseeventsotherfollowup',
-            name='adverse_condition_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcadverseeventsfollowup'),
-        ),
-        migrations.AddField(
-            model_name='ovcadverseeventsfollowup',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='ovcadverseeventsfollowup',
-            name='placement_id',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovcplacement'),
-        ),
-        migrations.AddField(
-            model_name='formslog',
-            name='person',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='formsaudittrail',
-            name='app_user',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
-        ),
-    ]
diff --git a/cpovc_forms/migrations/__init__.py b/cpovc_forms/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_forms/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_forms/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 7a0a4ca4d0ad4f527cb986f56800dcdc6574cf66..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 179
zcmd1j<>g`kf-ePWNg(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10OKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3`N@{4kd
s^>Z_Us!B5R^NRK3<1_OzOXB183My}L*yQG?l;)(`f$S@00un3?01?70(*OVf

diff --git a/cpovc_forms/urls.py b/cpovc_forms/urls.py
index a044bcccd..a883acb0b 100644
--- a/cpovc_forms/urls.py
+++ b/cpovc_forms/urls.py
@@ -178,5 +178,9 @@
     path('pregnantwomen/new/(?P<id>\d+)/', views.new_pregnantwomen, name='new_pregnantwomen'),
 
     #Edit Pregant women/adolescent form
+    path('pregnantwomen/edit/(?P<id>\W+)/', views.edit_pregnantwomen, name='pregnantwomen'),
+
+    # Delete hivscreening tool
+    path('delete_pregnantwomen/(?P<id>)/', views.delete_pregnantwomen, name='delete_pregnantwomen'),
 
 ]
diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index 6226caac9..b22dd393d 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -23,7 +23,7 @@
     OVC_CaseEventForm, DocumentsManager, OVCSchoolForm, OVCBursaryForm,
     BackgroundDetailsForm, OVC_FTFCForm, OVCCsiForm, OVCF1AForm, OVCHHVAForm, Wellbeing,
     GOKBursaryForm, CparaAssessment, CparaMonitoring, CasePlanTemplate, WellbeingAdolescentForm, HIV_SCREENING_FORM,
-    HIV_MANAGEMENT_ARV_THERAPY_FORM, HIV_MANAGEMENT_VISITATION_FORM, DREAMS_FORM)
+    HIV_MANAGEMENT_ARV_THERAPY_FORM, HIV_MANAGEMENT_VISITATION_FORM, DREAMS_FORM,PREGNANT_WOMEN_ADOLESCENT)
 
 from .models import (
     OVCEconomicStatus, OVCFamilyStatus, OVCReferral, OVCHobbies, OVCFriends,
@@ -36,7 +36,7 @@
     OVCFamilyCare, OVCCaseEventSummon, OVCCareEvents, OVCCarePriority,
     OVCCareServices, OVCCareEAV, OVCCareAssessment, OVCGokBursary, OVCCareWellbeing, OVCCareCpara, OVCCareQuestions,
     OVCCareForms, OVCExplanations, OVCCareF1B,
-    OVCCareBenchmarkScore, OVCMonitoring, OVCHouseholdDemographics, OVCHivStatus, OVCHIVManagement, OVCHIVRiskScreening)
+    OVCCareBenchmarkScore, OVCMonitoring, OVCHouseholdDemographics, OVCHivStatus, OVCHIVManagement, OVCHIVRiskScreening, OVCPregnantWomen)
 from cpovc_ovc.models import OVCRegistration, OVCHHMembers, OVCHealth, OVCHouseHold, OVCFacility
 from cpovc_main.functions import (
     get_list_of_org_units, get_dict, get_vgeo_list, get_vorg_list,
@@ -9997,3 +9997,219 @@ def new_dreamsform(request, id):
                   'forms/new_dreamsform.html',
                   {'form': form, 'init_data': init_data,
                    'vals': vals})
+
+#pregnant_women_adolescent
+def new_pregnantwomen(request, id):
+    try:
+        if request.method == 'POST':
+            import pdb
+
+
+            form = PREGNANT_WOMEN_ADOLESCENT(request.POST, initial={'person': id})
+            if True:
+                person = RegPerson.objects.get(pk=int(id))
+                child = RegPerson.objects.get(id=id)
+                house_hold = OVCHouseHold.objects.get(id=OVCHHMembers.objects.get(person=child).house_hold_id)
+                event_type_id = 'HRST'
+
+
+                """ Save hiv_screening-event """
+                # get event counter
+                event_counter = OVCCareEvents.objects.filter(
+                    event_type_id=event_type_id, person=id, is_void=False).count()
+                # save event
+                ovccareevent = OVCCareEvents.objects.create(
+                    event_type_id=event_type_id,
+                    event_counter=event_counter,
+                    event_score=0,
+                    created_by=request.user.id,
+                    person=RegPerson.objects.get(pk=int(id)),
+                    house_hold=house_hold
+                )
+
+                q1 = request.POST.get("PWA_WA1_1")
+                q2 = request.POST.get("PWA_WA1_2A")
+                q3 = request.POST.get("PWA_WA1_2B")
+                # q4 = request.POST.get("PWA_WA1_3A")
+                q5 = request.POST.get("PWA_WA1_3B")
+                # q6= request.POST.get("PWA_WA1_4A")
+                q7 = request.POST.get("PWA_WA1_4B")
+                # q8 = request.POST.get("PWA_WA1_5A")
+                q9 = request.POST.get("PWA_WA1_5B")
+                q10 = request.POST.get("PWA_WA1_6")
+                q11 = request.POST.get("PWA_WA1_7")
+                q12 = request.POST.get("PWA_WA1_8")
+                q13 = request.POST.get("PWA_WA1_9")
+                q14 = request.POST.get("PWA_WA1_10")
+                q15 = request.POST.get("PWA_WA1_11")
+                q16 = request.POST.get("PWA_WA1_12")
+                q17 = request.POST.get("PWA_WA1_13")
+                q18 = request.POST.get("PWA_WA1_14")
+                # q19 = request.POST.get("PWA_WA1_15")
+
+                # Saving track
+                # pdb.set_trace()
+
+                ovc_preg = OVCPregnantWomen.objects.create(
+                    person=person,
+                    date_of_contact=q1,
+                    date_test_done2a=q2,
+                    test_result2b=q3,
+                    # date_test_done3a=q4,
+                    test_result3b=q5,
+                    # date_test_done4a=q6,
+                    test_result4b=q7,
+                    # date_test_done5a=q8,
+                    test_result5b=q9,
+                    anc_date1=q10,
+                    anc_date2=q11,
+                    anc_date3=q12,
+                    anc_date4=q13,
+                    mode_of_delivery=q14,
+                    facility_code=q15,
+                    ccc_no=q16,
+                    vl_result=q17,
+                    vl_test_date=q18,
+                    # disclosure_done=q19,
+                    event=ovccareevent,
+                )
+                # pdb.set_trace()
+
+                msg = 'form PWA tracker saved successful'
+                messages.add_message(request, messages.INFO, msg)
+                url = reverse('ovc_view', kwargs={'id': id})
+                return HttpResponseRedirect(url)
+            # url = reverse('ovc_view', kwargs={'id': id})
+            # # return HttpResponseRedirect(reverse(forms_registry))
+            # return HttpResponseRedirect(url)
+    except Exception as e:
+        msg = 'form PWA tracker save error : (%s)' % (str(e))
+        messages.add_message(request, messages.ERROR, msg)
+        print('Error saving form PWA tracker : %s' % str(e))
+        return HttpResponseRedirect(reverse(forms_home))
+
+    # get household members/ caretaker/ household_id
+    household_id = None
+
+    try:
+        ovcreg = get_object_or_404(OVCRegistration, person_id=id, is_void=False)
+        caretaker_id = ovcreg.caretaker_id if ovcreg else None
+        ovchh = get_object_or_404(OVCHouseHold, head_person=caretaker_id, is_void=False)
+        household_id = ovchh.id if ovchh else None
+    except Exception as e:
+        print(str(e))
+        msg = 'Error getting household identifier: (%s)' % (str(e))
+        messages.add_message(request, messages.ERROR, msg)
+        return HttpResponseRedirect(reverse(forms_registry))
+    # get child data
+    init_data = RegPerson.objects.filter(pk=id)
+    check_fields = ['sex_id', 'relationship_type_id']
+    vals = get_dict(field_name=check_fields)
+    ovc_id = int(id)
+    child = RegPerson.objects.get(is_void=False, id=ovc_id)
+    # if date_of_event:
+    #     date_of_event = convert_date(date_of_event)
+
+
+
+    form = PREGNANT_WOMEN_ADOLESCENT(initial={'person': id})
+    event = OVCPregnantWomen.objects.filter(person_id=id).values_list('event')
+    pwa_women = OVCPregnantWomen.objects.filter(event_id__in=event).order_by('date_of_event')
+    care_giver = RegPerson.objects.get(id=OVCRegistration.objects.get(person=child).caretaker_id)
+    return render(request,
+                  'forms/new_pregnantwomen.html',{'form': form, 'init_data': init_data, 'vals': vals, 'person': id, 'care_giver': care_giver, 'pwa_women': pwa_women})
+
+#Edit pregnant women tracker form
+
+def edit_pregnantwomen(request, id):
+    """Some default page for Server Errors."""
+
+    try:
+        hdata = OVCPregnantWomen.objects.get(preg_id=id)
+        if request.method == 'POST':
+            q1 = request.POST.get("PWA_WA1_1")
+            q2 = request.POST.get("PWA_WA1_2A")
+            q3 = request.POST.get("PWA_WA1_2B")
+            # q4 = request.POST.get("PWA_WA1_3A")
+            q5 = request.POST.get("PWA_WA1_3B")
+            # q6 = request.POST.get("PWA_WA1_4A")
+            q7 = request.POST.get("PWA_WA1_4B")
+            # q8 = request.POST.get("PWA_WA1_5A")
+            q9 = request.POST.get("PWA_WA1_5B")
+            q10 = request.POST.get("PWA_WA1_6")
+            q11 = request.POST.get("PWA_WA1_7")
+            q12 = request.POST.get("PWA_WA1_8")
+            q13 = request.POST.get("PWA_WA1_9")
+            q14 = request.POST.get("PWA_WA1_10")
+            q15 = request.POST.get("PWA_WA1_11")
+            q16 = request.POST.get("PWA_WA1_12")
+            q17 = request.POST.get("PWA_WA1_13")
+            q18 = request.POST.get("PWA_WA1_14")
+            # q19 = request.POST.get("PWA_WA1_15")
+
+            # household_id = request.POST.get('household_id')
+            # hse_uuid = uuid.UUID(household_id)
+            # house_holds = OVCHouseHold.objects.get(pk=hse_uuid)
+
+            # Save all details from the Bursary form
+            OVCPregnantWomen.objects.filter(preg_id=id).update(
+                date_of_contact=q1,
+                date_test_done2a=q2,
+                test_result2b=q3,
+                # date_test_done3a=q4,
+                test_result3b=q5,
+                # date_test_done4a=q6,
+                test_result4b=q7,
+                # date_test_done5a=q8,
+                test_result5b=q9,
+                anc_date1=q10,
+                anc_date2=q11,
+                anc_date3=q12,
+                anc_date4=q13,
+                mode_of_delivery=q14,
+                facility_code=q15,
+                ccc_no=q16,
+                vl_result=q17,
+                vl_test_date=q18,
+                # disclosure_done=q19,
+                )
+
+            return redirect('new_pregnantwomen', id=hdata.person_id)
+
+        # hdata = OVCPregnantWomen.objects.get(preg_id=id)
+        track = {
+            'PWA_WA1_1': hdata.date_of_contact,
+            'PWA_WA1_2A': hdata.date_test_done2a,
+            'PWA_WA1_2B': hdata.test_result2b,
+            # 'PWA_WA1_3A': hdata.date_test_done3a,
+            'PWA_WA1_3B': hdata.test_result3b,
+            # 'PWA_WA1_4A': hdata.date_test_done4a,
+            'PWA_WA1_4B': hdata.test_result4b,
+            # 'PWA_WA1_5A': hdata.date_test_done5a,
+            'PWA_WA1_5B': hdata.test_result5b,
+            'PWA_WA1_6': hdata.anc_date1,
+            'PWA_WA1_7': hdata.anc_date2,
+            'PWA_WA1_8': hdata.anc_date3,
+            'PWA_WA1_9': hdata.anc_date4,
+            'PWA_WA1_10': hdata.mode_of_delivery,
+            'PWA_WA1_11': hdata.facility_code,
+            'PWA_WA1_12': hdata.ccc_no,
+            'PWA_WA1_13': hdata.vl_result,
+            'PWA_WA1_14': hdata.vl_test_date,
+            # 'PWA_WA1_15': hdata.disclosure_done,
+        }
+        form = OVCPregnantWomen(data=track)
+
+    except Exception as e:
+        print("error with OVC viewing - %s" % (str(e)))
+        # raise e
+        msg = "Error occured during ovc edit"
+        messages.error(request, msg)
+
+    return render(request, 'forms/edit_pregnantwomen.html', {'form': form, 'hdata': hdata, 'status': 200})
+
+
+def delete_pregnantwomen(request, id):
+    new_tracker = OVCPregnantWomen.objects.get(preg_id=id)
+    new_tracker.delete()
+    return redirect('new_pregnantwomen', id=new_tracker.person_id)
\ No newline at end of file
diff --git a/cpovc_help/migrations/0001_initial.py b/cpovc_help/migrations/0001_initial.py
deleted file mode 100644
index 402dfde51..000000000
--- a/cpovc_help/migrations/0001_initial.py
+++ /dev/null
@@ -1,51 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='OVCDownloads',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('doc_type', models.IntegerField()),
-                ('name', models.CharField(max_length=255)),
-                ('version', models.DecimalField(decimal_places=2, max_digits=5)),
-                ('doc_date', models.DateField()),
-                ('doc_details', models.TextField()),
-                ('downloads', models.BigIntegerField(default=0)),
-                ('doc_tags', models.CharField(max_length=255)),
-                ('document', models.FileField(upload_to='documents')),
-                ('is_public', models.BooleanField(default=False)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'DCS / OVC Document',
-                'verbose_name_plural': 'DCS / OVC Documents',
-                'db_table': 'ovc_downloads',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCFAQ',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('faq_order', models.IntegerField(default=1)),
-                ('faq_title', models.CharField(max_length=255)),
-                ('faq_details', models.TextField()),
-                ('faq_timestamp', models.DateTimeField()),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'FAQ Detail',
-                'verbose_name_plural': 'FAQ Details',
-                'db_table': 'ovc_faq',
-            },
-        ),
-    ]
diff --git a/cpovc_help/migrations/0002_initial.py b/cpovc_help/migrations/0002_initial.py
deleted file mode 100644
index 844ddd0a6..000000000
--- a/cpovc_help/migrations/0002_initial.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.db import migrations, models
-import django.db.models.deletion
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('cpovc_registry', '0001_initial'),
-        ('cpovc_help', '0001_initial'),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name='ovcdownloads',
-            name='person',
-            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-    ]
diff --git a/cpovc_help/migrations/__init__.py b/cpovc_help/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_help/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_help/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index b32f9586747d7266c0fb52f59c974f8f08f34d59..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 178
zcmd1j<>g`kf-ePWNg(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10WKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3^XQgaIQ
rb2EX8N;32FiuL2;GxIV_;^XxSDsOSv<mRW8=A_zztSe>$5-bb=+w3e<

diff --git a/cpovc_main/migrations/0001_initial.py b/cpovc_main/migrations/0001_initial.py
deleted file mode 100644
index 042bf31da..000000000
--- a/cpovc_main/migrations/0001_initial.py
+++ /dev/null
@@ -1,456 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.db import migrations, models
-import django.db.models.deletion
-import django.utils.timezone
-import uuid
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='AdminCaptureSites',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('org_unit_id', models.IntegerField(null=True)),
-                ('capture_site_name', models.CharField(blank=True, max_length=255, null=True)),
-                ('date_installed', models.DateField(blank=True, null=True)),
-                ('approved', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'admin_capture_sites',
-            },
-        ),
-        migrations.CreateModel(
-            name='AdminDownload',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('capture_site_id', models.IntegerField(blank=True, null=True)),
-                ('section_id', models.CharField(max_length=4, null=True)),
-                ('timestamp_started', models.DateTimeField(null=True)),
-                ('timestamp_completed', models.DateTimeField(null=True)),
-                ('number_records', models.IntegerField(null=True)),
-                ('request_id', models.CharField(max_length=64, null=True)),
-                ('success', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'admin_download',
-            },
-        ),
-        migrations.CreateModel(
-            name='AdminPreferences',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('preference_id', models.CharField(max_length=4)),
-            ],
-            options={
-                'db_table': 'admin_preferences',
-            },
-        ),
-        migrations.CreateModel(
-            name='AdminUploadForms',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('timestamp_uploaded', models.DateTimeField(null=True)),
-            ],
-            options={
-                'db_table': 'admin_upload_forms',
-            },
-        ),
-        migrations.CreateModel(
-            name='CaptureTaskTracker',
-            fields=[
-                ('id', models.AutoField(primary_key=True, serialize=False)),
-                ('task_id', models.CharField(max_length=64, null=True)),
-                ('operation', models.CharField(max_length=8, null=True)),
-                ('timestamp_started', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_completed', models.DateTimeField(null=True)),
-                ('completed', models.BooleanField(default=False)),
-                ('cancelled', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'admin_task_tracker',
-            },
-        ),
-        migrations.CreateModel(
-            name='CoreAdverseConditions',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('adverse_condition_id', models.CharField(max_length=4)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sms_id', models.IntegerField(null=True)),
-                ('form_id', models.IntegerField(null=True)),
-            ],
-            options={
-                'db_table': 'core_adverse_conditions',
-            },
-        ),
-        migrations.CreateModel(
-            name='CoreEncounters',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('encounter_date', models.DateField()),
-                ('org_unit_id', models.IntegerField()),
-                ('area_id', models.IntegerField()),
-                ('encounter_type_id', models.CharField(max_length=4)),
-                ('sms_id', models.IntegerField(null=True)),
-                ('form_id', models.IntegerField(null=True)),
-                ('timestamp_created', models.DateTimeField(null=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-            ],
-            options={
-                'db_table': 'core_encounters',
-            },
-        ),
-        migrations.CreateModel(
-            name='CoreEncountersNotes',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('form_id', models.IntegerField()),
-                ('encounter_date', models.DateField()),
-                ('note_type_id', models.CharField(max_length=4)),
-                ('note', models.CharField(max_length=255)),
-            ],
-            options={
-                'db_table': 'form_encounters_notes',
-            },
-        ),
-        migrations.CreateModel(
-            name='CoreServices',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('encounter_date', models.DateField()),
-                ('core_item_id', models.CharField(max_length=4)),
-                ('sms_id', models.IntegerField(null=True)),
-                ('form_id', models.IntegerField(null=True)),
-                ('timestamp_created', models.DateTimeField(null=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-            ],
-            options={
-                'db_table': 'core_services',
-            },
-        ),
-        migrations.CreateModel(
-            name='FacilityList',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('facility_code', models.IntegerField()),
-                ('facility_name', models.CharField(max_length=255)),
-                ('county_id', models.IntegerField()),
-                ('county_name', models.CharField(max_length=255)),
-                ('subcounty_id', models.IntegerField()),
-                ('subcounty_name', models.CharField(max_length=255)),
-                ('latitude', models.DecimalField(decimal_places=5, max_digits=10)),
-                ('longitude', models.DecimalField(decimal_places=5, max_digits=10)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'facility_list',
-            },
-        ),
-        migrations.CreateModel(
-            name='Forms',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('form_guid', models.CharField(max_length=64)),
-                ('form_title', models.CharField(max_length=255, null=True)),
-                ('form_type_id', models.CharField(max_length=4, null=True)),
-                ('form_subject_id', models.IntegerField(null=True)),
-                ('form_area_id', models.IntegerField(null=True)),
-                ('date_began', models.DateField(null=True)),
-                ('date_ended', models.DateField(null=True)),
-                ('date_filled_paper', models.DateField(null=True)),
-                ('person_id_filled_paper', models.IntegerField(null=True)),
-                ('org_unit_id_filled_paper', models.IntegerField(null=True)),
-                ('capture_site_id', models.IntegerField(blank=True, null=True)),
-                ('user_id_created', models.CharField(max_length=9, null=True)),
-                ('timestamp_created', models.DateTimeField(null=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-                ('user_id_updated', models.CharField(max_length=9, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'forms',
-            },
-        ),
-        migrations.CreateModel(
-            name='ListAnswers',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('answer_set_id', models.IntegerField(db_index=True, null=True)),
-                ('answer_code', models.CharField(blank=True, db_index=True, max_length=6, null=True)),
-                ('answer', models.CharField(blank=True, max_length=255, null=True)),
-                ('the_order', models.IntegerField(db_index=True, null=True)),
-                ('timestamp_created', models.DateTimeField(null=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'list_answers',
-            },
-        ),
-        migrations.CreateModel(
-            name='ListQuestions',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('question_text', models.CharField(blank=True, max_length=255, null=True)),
-                ('question_code', models.CharField(max_length=50)),
-                ('form_type_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('answer_type_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('answer_set_id', models.IntegerField(db_index=True, null=True)),
-                ('the_order', models.IntegerField(db_index=True, null=True)),
-                ('timestamp_created', models.DateTimeField(null=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'list_questions',
-            },
-        ),
-        migrations.CreateModel(
-            name='ListReports',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('report_code', models.CharField(blank=True, max_length=100, null=True)),
-                ('report_title_short', models.CharField(max_length=255, null=True)),
-                ('report_title_long', models.CharField(max_length=255, null=True)),
-            ],
-            options={
-                'db_table': 'list_reports',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegTemp',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('user_id', models.IntegerField()),
-                ('page_id', models.CharField(max_length=100)),
-                ('created_at', models.DateTimeField()),
-                ('_data', models.TextField(blank=True, db_column='page_data')),
-            ],
-            options={
-                'db_table': 'reg_temp_data',
-            },
-        ),
-        migrations.CreateModel(
-            name='ReportsSets',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('set_name', models.CharField(max_length=70)),
-                ('set_type_id', models.CharField(default='SORG', max_length=4)),
-                ('user_id_created', models.IntegerField()),
-            ],
-            options={
-                'db_table': 'reports_sets',
-            },
-        ),
-        migrations.CreateModel(
-            name='SetupGeography',
-            fields=[
-                ('area_id', models.IntegerField(primary_key=True, serialize=False)),
-                ('area_type_id', models.CharField(max_length=50)),
-                ('area_name', models.CharField(max_length=100)),
-                ('area_code', models.CharField(max_length=10, null=True)),
-                ('parent_area_id', models.IntegerField(null=True)),
-                ('area_name_abbr', models.CharField(max_length=5, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Setup Geography',
-                'verbose_name_plural': 'Setup Geographies',
-                'db_table': 'list_geo',
-            },
-        ),
-        migrations.CreateModel(
-            name='SetupList',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('item_id', models.CharField(max_length=7)),
-                ('item_description', models.CharField(max_length=255)),
-                ('item_description_short', models.CharField(max_length=100, null=True)),
-                ('item_category', models.CharField(blank=True, max_length=255, null=True)),
-                ('item_sub_category', models.CharField(blank=True, max_length=255, null=True)),
-                ('the_order', models.IntegerField(null=True)),
-                ('user_configurable', models.BooleanField(default=False)),
-                ('sms_keyword', models.BooleanField(default=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('field_name', models.CharField(blank=True, max_length=200, null=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-            ],
-            options={
-                'db_table': 'list_general',
-            },
-        ),
-        migrations.CreateModel(
-            name='SetupLocation',
-            fields=[
-                ('area_id', models.IntegerField(primary_key=True, serialize=False)),
-                ('area_name', models.CharField(max_length=100)),
-                ('area_type_id', models.CharField(max_length=50)),
-                ('area_code', models.CharField(max_length=10, null=True)),
-                ('parent_area_id', models.IntegerField(null=True)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'db_table': 'list_location',
-            },
-        ),
-        migrations.CreateModel(
-            name='SchoolList',
-            fields=[
-                ('school_id', models.UUIDField(default=uuid.uuid1, editable=False, primary_key=True, serialize=False)),
-                ('school_name', models.CharField(max_length=255)),
-                ('type_of_school', models.CharField(max_length=26, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('created_by', models.IntegerField(default=404, null=True)),
-                ('school_subcounty', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='school_subcounty_fk', to='cpovc_main.setupgeography')),
-                ('school_ward', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='school_ward_fk', to='cpovc_main.setupgeography')),
-            ],
-            options={
-                'db_table': 'school_list',
-            },
-        ),
-        migrations.CreateModel(
-            name='ReportsSetsOrgUnits',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('org_unit_id', models.IntegerField()),
-                ('set', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.reportssets')),
-            ],
-            options={
-                'db_table': 'reports_sets_org_unit',
-            },
-        ),
-        migrations.CreateModel(
-            name='ListReportsParameters',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('parameter', models.CharField(blank=True, max_length=50, null=True)),
-                ('filter', models.CharField(blank=True, max_length=50, null=True)),
-                ('initially_visible', models.BooleanField(default=False)),
-                ('label', models.CharField(blank=True, max_length=100, null=True)),
-                ('tip', models.CharField(blank=True, max_length=255, null=True)),
-                ('required', models.BooleanField(default=False)),
-                ('report', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.listreports')),
-            ],
-            options={
-                'db_table': 'list_reports_parameter',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormResWorkforce',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('workforce_id', models.IntegerField(blank=True, null=True)),
-                ('institution_id', models.IntegerField(blank=True, null=True)),
-                ('position_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('full_part_time_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-            ],
-            options={
-                'db_table': 'form_res_workforce',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormResChildren',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('child_person_id', models.IntegerField(blank=True, null=True)),
-                ('institution_id', models.IntegerField(blank=True, null=True)),
-                ('residential_status_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('court_committal_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('family_status_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('date_admitted', models.DateField(blank=True, null=True)),
-                ('date_left', models.DateField(blank=True, null=True)),
-                ('sms_id', models.IntegerField(blank=True, null=True)),
-                ('form', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-            ],
-            options={
-                'db_table': 'form_res_children',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormPersonParticipation',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('workforce_or_beneficiary_id', models.CharField(max_length=15)),
-                ('participation_level_id', models.CharField(blank=True, max_length=4, null=True)),
-                ('form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-            ],
-            options={
-                'db_table': 'form_person_participation',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormOrgUnitContributions',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('org_unit_id', models.CharField(max_length=7)),
-                ('contribution_id', models.CharField(max_length=4)),
-                ('form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-            ],
-            options={
-                'db_table': 'form_org_unit_contribution',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormGenText',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('answer_text', models.CharField(blank=True, max_length=255, null=True)),
-                ('form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-                ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.listquestions')),
-            ],
-            options={
-                'db_table': 'form_gen_text',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormGenNumeric',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('answer', models.DecimalField(decimal_places=1, max_digits=10, null=True)),
-                ('form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-                ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.listquestions')),
-            ],
-            options={
-                'db_table': 'form_gen_numeric',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormGenDates',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('answer_date', models.DateField()),
-                ('form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-                ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.listquestions')),
-            ],
-            options={
-                'db_table': 'form_gen_dates',
-            },
-        ),
-        migrations.CreateModel(
-            name='FormGenAnswers',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('answer', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.listanswers')),
-                ('form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms')),
-                ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.listquestions')),
-            ],
-            options={
-                'db_table': 'form_gen_answers',
-            },
-        ),
-    ]
diff --git a/cpovc_main/migrations/0002_initial.py b/cpovc_main/migrations/0002_initial.py
deleted file mode 100644
index b622f185f..000000000
--- a/cpovc_main/migrations/0002_initial.py
+++ /dev/null
@@ -1,71 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.db import migrations, models
-import django.db.models.deletion
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('cpovc_registry', '0001_initial'),
-        ('cpovc_main', '0001_initial'),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name='coreservices',
-            name='beneficiary_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='service_beneficiary', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='coreservices',
-            name='workforce_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='service_workforce', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='coreencountersnotes',
-            name='beneficiary_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='encounter_n_beneficiary', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='coreencountersnotes',
-            name='encounter',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.coreencounters'),
-        ),
-        migrations.AddField(
-            model_name='coreencountersnotes',
-            name='workforce_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='encounter_n_workforce', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='coreencounters',
-            name='beneficiary_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='encounter_beneficiary', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='coreencounters',
-            name='workforce_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='encounter_workforce', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='coreadverseconditions',
-            name='beneficiary_person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='adverse_beneficiary', to='cpovc_registry.regperson'),
-        ),
-        migrations.AddField(
-            model_name='adminuploadforms',
-            name='form',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.forms'),
-        ),
-        migrations.AddField(
-            model_name='adminpreferences',
-            name='person',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson'),
-        ),
-        migrations.AlterUniqueTogether(
-            name='reportssetsorgunits',
-            unique_together={('set', 'org_unit_id')},
-        ),
-    ]
diff --git a/cpovc_main/migrations/__init__.py b/cpovc_main/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_main/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_main/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 37fd8c4d76279708c310fa5236523a69e764c5a6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 178
zcmd1j<>g`kg0BT>Ng(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10WKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3_C6EpMl
rb2EX8N;32FiuL2;GxIV_;^XxSDsOSv<mRW8=A_zztSe>$5-bb=+vY4$

diff --git a/cpovc_manage/migrations/0001_initial.py b/cpovc_manage/migrations/0001_initial.py
deleted file mode 100644
index 32be9a379..000000000
--- a/cpovc_manage/migrations/0001_initial.py
+++ /dev/null
@@ -1,73 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.db import migrations, models
-import django.db.models.deletion
-import django.utils.timezone
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('cpovc_registry', '0001_initial'),
-        ('cpovc_forms', '0001_initial'),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='NOTTTravel',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('institution_name', models.CharField(max_length=255)),
-                ('country_name', models.CharField(max_length=150)),
-                ('travel_date', models.DateField()),
-                ('return_date', models.DateField(blank=True, null=True)),
-                ('no_applied', models.IntegerField(default=0)),
-                ('no_cleared', models.IntegerField(default=0)),
-                ('no_returned', models.IntegerField(blank=True, default=0, null=True)),
-                ('contacts', models.CharField(blank=True, max_length=150, null=True)),
-                ('reason', models.CharField(max_length=150)),
-                ('sponsor', models.CharField(max_length=100)),
-                ('comments', models.TextField(blank=True, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('status', models.IntegerField(default=0)),
-                ('is_void', models.BooleanField(default=False)),
-            ],
-            options={
-                'verbose_name': 'Non Objection to Travel - Travel',
-                'verbose_name_plural': 'Non Objection to Travel - Travels',
-                'db_table': 'nott_travel',
-            },
-        ),
-        migrations.CreateModel(
-            name='NOTTChild',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('returned', models.BooleanField(default=False)),
-                ('cleared', models.BooleanField(default=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-                ('travel', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_manage.notttravel')),
-            ],
-            options={
-                'verbose_name': 'Non Objection to Travel - Child',
-                'verbose_name_plural': 'Non Objection to Travel - Children',
-                'db_table': 'nott_child',
-            },
-        ),
-        migrations.CreateModel(
-            name='NOTTChaperon',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('is_void', models.BooleanField(default=False)),
-                ('other_person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_forms.ovccasepersons')),
-                ('travel', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_manage.notttravel')),
-            ],
-            options={
-                'verbose_name': 'Non Objection to Travel - Chaperon',
-                'verbose_name_plural': 'Non Objection to Travel - Chaperons',
-                'db_table': 'nott_chaperon',
-            },
-        ),
-    ]
diff --git a/cpovc_manage/migrations/__init__.py b/cpovc_manage/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_manage/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_manage/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index b33d560c4a2b4fb3fa6a1d64e08f07ee3848a0bc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 180
zcmd1j<>g`kg0BT>Ng(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10eKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3_C6Y~<&
tQ}uH*fyzoU^Ye=J<Kr{)GE3s)^$IF)aoFVMr<CTT+JP)AW&#o{3;;dFEf)X)

diff --git a/cpovc_offline_mode/migrations/__init__.py b/cpovc_offline_mode/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_offline_mode/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_offline_mode/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 0f11edefcfc0e8b0b98f9321faf3c54d19a8d8ef..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 186
zcmd1j<>g`kg0BT>Ng(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10YKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3`t)6#M>
x^HSq;^MQ(TGl7arGV}9__2c6+^D;}~<Mj$EZ*kZFWlM8X?LgKRGXV(}1^{+kFPi`W

diff --git a/cpovc_ovc/migrations/0001_initial.py b/cpovc_ovc/migrations/0001_initial.py
deleted file mode 100644
index 794a408ee..000000000
--- a/cpovc_ovc/migrations/0001_initial.py
+++ /dev/null
@@ -1,273 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.conf import settings
-from django.db import migrations, models
-import django.db.models.deletion
-import django.utils.timezone
-import uuid
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ('cpovc_main', '0002_initial'),
-        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
-        ('cpovc_registry', '0001_initial'),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='OVCAggregate',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('indicator_name', models.CharField(max_length=100)),
-                ('project_year', models.IntegerField()),
-                ('reporting_period', models.CharField(max_length=50)),
-                ('cbo', models.CharField(max_length=255)),
-                ('subcounty', models.CharField(max_length=100)),
-                ('county', models.CharField(max_length=100)),
-                ('ward', models.CharField(max_length=100)),
-                ('implementing_partnerid', models.IntegerField()),
-                ('implementing_partner', models.CharField(max_length=200)),
-                ('indicator_count', models.IntegerField()),
-                ('age', models.IntegerField()),
-                ('gender', models.CharField(max_length=50)),
-                ('county_active', models.IntegerField()),
-                ('subcounty_active', models.IntegerField()),
-                ('ward_active', models.IntegerField()),
-                ('timestamp_created', models.DateTimeField(null=True)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-            ],
-            options={
-                'verbose_name': 'OVC aggregate data',
-                'verbose_name_plural': 'OVC aggregate data',
-                'db_table': 'ovc_aggregate',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCluster',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('cluster_name', models.CharField(max_length=150)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('created_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
-            ],
-            options={
-                'verbose_name': 'OVC Cluster',
-                'verbose_name_plural': 'OVC Clusters',
-                'db_table': 'ovc_cluster',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCFacility',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('facility_code', models.CharField(max_length=10, null=True)),
-                ('facility_name', models.CharField(max_length=200)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sub_county', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.setupgeography')),
-            ],
-            options={
-                'verbose_name': 'OVC Facility',
-                'verbose_name_plural': 'OVC Facilities',
-                'db_table': 'ovc_facility',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCUpload',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('implementing_partnerid', models.IntegerField()),
-                ('project_year', models.IntegerField()),
-                ('reporting_period', models.CharField(max_length=50)),
-                ('ovc_filename', models.CharField(max_length=255)),
-                ('created_at', models.DateField(default=django.utils.timezone.now, null=True)),
-            ],
-            options={
-                'verbose_name': 'OVC upload data',
-                'verbose_name_plural': 'OVC upload data',
-                'db_table': 'ovc_upload',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCViralload',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('viral_load', models.IntegerField(null=True)),
-                ('viral_date', models.DateField(null=True)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'OVC Viral Load',
-                'verbose_name_plural': 'OVC Viral Loads',
-                'db_table': 'ovc_viral_load',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCSchool',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('school_level', models.CharField(choices=[('SLEC', 'ECD'), ('SLPR', 'Primary'), ('SLSE', 'Secondary'), ('SLUN', 'University'), ('SLTV', 'Tertiary / Vocational')], default='1', max_length=5)),
-                ('school_name', models.CharField(max_length=200)),
-                ('is_void', models.BooleanField(default=False)),
-                ('sub_county', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.setupgeography')),
-            ],
-            options={
-                'verbose_name': 'OVC school',
-                'verbose_name_plural': 'OVC Schools',
-                'db_table': 'ovc_school',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCRegistration',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('registration_date', models.DateField(default=django.utils.timezone.now)),
-                ('has_bcert', models.BooleanField(default=False)),
-                ('is_disabled', models.BooleanField(default=False)),
-                ('hiv_status', models.CharField(max_length=4, null=True)),
-                ('art_status', models.CharField(max_length=4, null=True)),
-                ('school_level', models.CharField(max_length=4, null=True)),
-                ('immunization_status', models.CharField(max_length=4, null=True)),
-                ('org_unique_id', models.CharField(max_length=15, null=True)),
-                ('exit_reason', models.CharField(max_length=4, null=True)),
-                ('exit_date', models.DateField(default=django.utils.timezone.now, null=True)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_active', models.BooleanField(default=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('caretaker', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='ctaker', to='cpovc_registry.regperson')),
-                ('child_cbo', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-                ('child_chv', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='chv', to='cpovc_registry.regperson')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'OVC Registration',
-                'verbose_name_plural': 'OVC Registration',
-                'db_table': 'ovc_registration',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHouseHold',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('head_identifier', models.CharField(max_length=255)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('head_person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'OVC Registration',
-                'verbose_name_plural': 'OVC Registration',
-                'db_table': 'ovc_household',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHHMembers',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('hh_head', models.BooleanField(default=False)),
-                ('member_type', models.CharField(max_length=4)),
-                ('member_alive', models.CharField(default='AYES', max_length=4)),
-                ('death_cause', models.CharField(max_length=4, null=True)),
-                ('hiv_status', models.CharField(max_length=4, null=True)),
-                ('date_linked', models.DateField(default=django.utils.timezone.now)),
-                ('date_delinked', models.DateField(null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('house_hold', models.ForeignKey(default=uuid.uuid4, on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovchousehold')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'OVC Registration',
-                'verbose_name_plural': 'OVC Registration',
-                'db_table': 'ovc_household_members',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHealth',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('art_status', models.CharField(max_length=4)),
-                ('date_linked', models.DateField()),
-                ('ccc_number', models.CharField(max_length=20)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(auto_now=True, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('facility', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovcfacility')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'OVC Care Health',
-                'verbose_name_plural': 'OVC Care Health',
-                'db_table': 'ovc_care_health',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCExit',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('org_unit_name', models.CharField(max_length=150, null=True)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('org_unit', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'OVC Exit Org Unit',
-                'verbose_name_plural': 'OVC Exit Org Units',
-                'db_table': 'ovc_exit_organization',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCEligibility',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('criteria', models.CharField(max_length=5)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'OVC Eligibility',
-                'verbose_name_plural': 'OVC Eligibility',
-                'db_table': 'ovc_eligibility',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCEducation',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('school_level', models.CharField(max_length=4)),
-                ('school_class', models.CharField(max_length=4)),
-                ('admission_type', models.CharField(max_length=4)),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-                ('school', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovcschool')),
-            ],
-            options={
-                'verbose_name': 'OVC Care Education',
-                'verbose_name_plural': 'OVC Care Education',
-                'db_table': 'ovc_care_education',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCClusterCBO',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('added_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('cbo', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-                ('cluster', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_ovc.ovccluster')),
-            ],
-            options={
-                'verbose_name': 'OVC Cluster CBO',
-                'verbose_name_plural': 'OVC Cluster CBOs',
-                'db_table': 'ovc_cluster_cbo',
-            },
-        ),
-    ]
diff --git a/cpovc_ovc/migrations/__init__.py b/cpovc_ovc/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_ovc/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_ovc/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 2205dc2c7d7b3bc202c6df1954d27b63353e2f89..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 177
zcmd1j<>g`kg0BT>Ng(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10GKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3_QSU)!t
psHP+{Kd)FnK0Y%qvm`!Vub}c4hfQvNN@-529muv~CLqDW0069)EAs#V

diff --git a/cpovc_registry/migrations/0001_initial.py b/cpovc_registry/migrations/0001_initial.py
deleted file mode 100644
index a86a7ccd1..000000000
--- a/cpovc_registry/migrations/0001_initial.py
+++ /dev/null
@@ -1,345 +0,0 @@
-# Generated by Django 4.0.2 on 2022-04-25 12:11
-
-from django.conf import settings
-from django.db import migrations, models
-import django.db.models.deletion
-import django.utils.timezone
-import uuid
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
-        ('cpovc_main', '0001_initial'),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name='RegOrgUnit',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('org_unit_id_vis', models.CharField(max_length=12)),
-                ('org_unit_name', models.CharField(max_length=255)),
-                ('org_unit_type_id', models.CharField(max_length=4)),
-                ('date_operational', models.DateField(blank=True, null=True)),
-                ('date_closed', models.DateField(blank=True, null=True)),
-                ('handle_ovc', models.BooleanField(default=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('parent_org_unit_id', models.IntegerField(blank=True, null=True)),
-                ('created_at', models.DateField(default=django.utils.timezone.now)),
-                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
-            ],
-            options={
-                'verbose_name': 'Organisational Units Registry',
-                'verbose_name_plural': 'Organisational Units Registries',
-                'db_table': 'reg_org_unit',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPerson',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('designation', models.CharField(max_length=25, null=True)),
-                ('first_name', models.CharField(max_length=255)),
-                ('other_names', models.CharField(max_length=255, null=True)),
-                ('surname', models.CharField(default=None, max_length=255)),
-                ('email', models.EmailField(blank=True, max_length=254, null=True)),
-                ('des_phone_number', models.IntegerField(blank=True, default=None, null=True)),
-                ('date_of_birth', models.DateField(null=True)),
-                ('date_of_death', models.DateField(blank=True, default=None, null=True)),
-                ('sex_id', models.CharField(choices=[('SMAL', 'Male'), ('SFEM', 'Female')], max_length=4)),
-                ('is_void', models.BooleanField(default=False)),
-                ('created_at', models.DateField(default=django.utils.timezone.now)),
-                ('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
-            ],
-            options={
-                'verbose_name': 'Persons Registry',
-                'verbose_name_plural': 'Persons Registries',
-                'db_table': 'reg_person',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsWorkforceIds',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('workforce_id', models.CharField(max_length=8, null=True)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_workforce_ids',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsTypes',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('person_type_id', models.CharField(max_length=4)),
-                ('date_began', models.DateField(null=True)),
-                ('date_ended', models.DateField(default=None, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'Person Type Registry',
-                'verbose_name_plural': 'Person Types Registries',
-                'db_table': 'reg_persons_types',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsSiblings',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('date_linked', models.DateField(null=True)),
-                ('date_delinked', models.DateField(null=True)),
-                ('remarks', models.TextField(null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('child_person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='child_sibling', to='cpovc_registry.regperson')),
-                ('sibling_person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sibling_person', to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_siblings',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsOrgUnits',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('date_linked', models.DateField(null=True)),
-                ('date_delinked', models.DateField(null=True)),
-                ('primary_unit', models.BooleanField(default=False)),
-                ('reg_assistant', models.BooleanField(default=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('org_unit', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_org_units',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsGuardians',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('relationship', models.CharField(max_length=5)),
-                ('date_linked', models.DateField(null=True)),
-                ('date_delinked', models.DateField(null=True)),
-                ('child_headed', models.BooleanField(default=False)),
-                ('is_void', models.BooleanField(default=False)),
-                ('child_person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='child_person', to='cpovc_registry.regperson')),
-                ('guardian_person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='guardian_person', to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_guardians',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsGeo',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('area_type', models.CharField(max_length=4)),
-                ('date_linked', models.DateField(null=True)),
-                ('date_delinked', models.DateField(null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('area', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.setupgeography')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_geo',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsExternalIds',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('identifier_type_id', models.CharField(max_length=4)),
-                ('identifier', models.CharField(max_length=255)),
-                ('is_void', models.BooleanField(default=False)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_external_ids',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsContact',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('contact_detail_type_id', models.CharField(max_length=4)),
-                ('contact_detail', models.CharField(max_length=255)),
-                ('is_void', models.BooleanField(default=False)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_contact',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsBeneficiaryIds',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('beneficiary_id', models.CharField(max_length=10, null=True)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_persons_beneficiary_ids',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegPersonsAuditTrail',
-            fields=[
-                ('transaction_id', models.AutoField(primary_key=True, serialize=False)),
-                ('transaction_type_id', models.CharField(db_index=True, max_length=4, null=True)),
-                ('interface_id', models.CharField(db_index=True, max_length=4, null=True)),
-                ('date_recorded_paper', models.DateField(null=True)),
-                ('timestamp_modified', models.DateTimeField(auto_now=True)),
-                ('ip_address', models.GenericIPAddressField()),
-                ('meta_data', models.TextField(null=True)),
-                ('app_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-                ('person_recorded_paper', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='person_recorded_paper', to='cpovc_registry.regperson')),
-            ],
-            options={
-                'verbose_name': 'Persons Audit Trail',
-                'verbose_name_plural': 'Persons Audit Trails',
-                'db_table': 'reg_persons_audit_trail',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegOrgUnitsAuditTrail',
-            fields=[
-                ('transaction_id', models.AutoField(primary_key=True, serialize=False)),
-                ('transaction_type_id', models.CharField(db_index=True, max_length=4, null=True)),
-                ('interface_id', models.CharField(db_index=True, max_length=4, null=True)),
-                ('timestamp_modified', models.DateTimeField(auto_now=True)),
-                ('ip_address', models.GenericIPAddressField()),
-                ('meta_data', models.TextField(null=True)),
-                ('app_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
-                ('org_unit', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-            ],
-            options={
-                'verbose_name': 'Org Units Audit Trail',
-                'verbose_name_plural': 'Org Units Audit Trails',
-                'db_table': 'reg_org_units_audit_trail',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegOrgUnitGeography',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('date_linked', models.DateField(null=True)),
-                ('date_delinked', models.DateField(null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('area', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_main.setupgeography')),
-                ('org_unit', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-            ],
-            options={
-                'db_table': 'reg_org_units_geo',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegOrgUnitExternalID',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('identifier_type_id', models.CharField(max_length=4)),
-                ('identifier_value', models.CharField(max_length=255, null=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('org_unit', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-            ],
-            options={
-                'db_table': 'reg_org_units_external_ids',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegOrgUnitContact',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('contact_detail_type_id', models.CharField(max_length=20)),
-                ('contact_detail', models.CharField(max_length=255)),
-                ('is_void', models.BooleanField(default=False)),
-                ('org_unit', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-            ],
-            options={
-                'db_table': 'reg_org_units_contact',
-            },
-        ),
-        migrations.CreateModel(
-            name='RegBiometric',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('left_iris', models.BinaryField()),
-                ('right_iris', models.BinaryField()),
-                ('created_at', models.DateTimeField(default=django.utils.timezone.now)),
-                ('account', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
-            ],
-            options={
-                'verbose_name': 'Persons Biometric',
-                'verbose_name_plural': 'Persons Biometrics',
-                'db_table': 'reg_biometric',
-            },
-        ),
-        migrations.CreateModel(
-            name='PersonsMaster',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('person_type', models.CharField(max_length=5, null=True)),
-                ('system_id', models.CharField(max_length=100, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('person', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_person_master',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCSibling',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('first_name', models.CharField(max_length=50)),
-                ('other_names', models.CharField(default=None, max_length=50)),
-                ('surname', models.CharField(max_length=50)),
-                ('date_of_birth', models.DateField()),
-                ('sex_id', models.CharField(max_length=4)),
-                ('class_level', models.CharField(max_length=4, null=True)),
-                ('remarks', models.CharField(max_length=250, null=True)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('timestamp_updated', models.DateTimeField(default=django.utils.timezone.now)),
-                ('is_void', models.BooleanField(default=False)),
-                ('cpims', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='ovc_cpims', to='cpovc_registry.regperson')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ovc_sibling', to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'ovc_sibling',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCHouseHold',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('members', models.CharField(max_length=200)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('index_child', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='index_child', to='cpovc_registry.regperson')),
-            ],
-            options={
-                'db_table': 'reg_household',
-            },
-        ),
-        migrations.CreateModel(
-            name='OVCCheckin',
-            fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
-                ('is_ovc', models.BooleanField(default=True)),
-                ('is_void', models.BooleanField(default=False)),
-                ('timestamp_created', models.DateTimeField(default=django.utils.timezone.now)),
-                ('org_unit', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regorgunit')),
-                ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cpovc_registry.regperson')),
-                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
-            ],
-            options={
-                'db_table': 'ovc_checkin',
-            },
-        ),
-    ]
diff --git a/cpovc_registry/migrations/__init__.py b/cpovc_registry/migrations/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/cpovc_registry/migrations/__pycache__/__init__.cpython-310.pyc b/cpovc_registry/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index cf61644758d1a392c94377c61a1abd99e7594d23..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 182
zcmd1j<>g`kg0BT>Ng(<$h(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10UKO;XkRX;Dc
zG(E90Q9qz4KPxr4q*y<|SU<ENy(lpyRo}6oKtH)4Gq+ebzbskTSkC~+1G3_aQqwbw
vONuJ>b2EVoOEUBGiuL2;GxIV_;^XxSDsOSv<mRW8=A_zztSn{%5-bb=uMsXO

diff --git a/templates/forms/new_pregnantwomen.html b/templates/forms/new_pregnantwomen.html
index fdbc6495b..c84b3bed5 100644
--- a/templates/forms/new_pregnantwomen.html
+++ b/templates/forms/new_pregnantwomen.html
@@ -140,7 +140,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3A: </b>HIV test done: <span class="asteriskField">* </label>
 									<div class="col-md-2 col-sm-4">
 										{{ form.PWA_WA1_3A }}
-										<h6><span id="sel_hhva_ha22"></span></h6>
+{#										<h6><span id="sel_hhva_ha22"></span></h6>#}
 									</div>
 								</div>
 
@@ -156,7 +156,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4A: </b>HIV test done: <span class="asteriskField">* </label>
 									<div class="col-md-2 col-sm-4">
 										{{ form.PWA_WA1_4A }}
-										<h6><span id="sel_hhva_ha22"></span></h6>
+{#										<h6><span id="sel_hhva_ha22"></span></h6>#}
 									</div>
 								</div>
 
@@ -172,7 +172,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5A: </b>HIV test done: <span class="asteriskField">* </label>
 									<div class="col-md-2 col-sm-4">
 										{{ form.PWA_WA1_5A }}
-										<h6><span id="sel_hhva_ha22"></span></h6>
+{#										<h6><span id="sel_hhva_ha22"></span></h6>#}
 									</div>
 								</div>
 
@@ -204,7 +204,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 									<div class="col-md-4 col-sm-4">
 										{{ form.PWA_WA1_7 }}
 										<br>
-										<h6><span id="sel_hhva_ha6"></span></h6>
+{#										<h6><span id="sel_hhva_ha6"></span></h6>#}
 									</div>
 								</div>
 
@@ -250,7 +250,7 @@ <h6><span id="sel_hhva_ha6"></span></h6>
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA12: </b>CCC Number : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
 										{{ form.PWA_WA1_12 }}
-										<h6><span id="sel_hhva_ha28"></span></h6>
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
 
@@ -258,7 +258,7 @@ <h6><span id="sel_hhva_ha28"></span></h6>
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA13: </b>Latest VL results : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
 										{{ form.PWA_WA1_13 }}
-										<h6><span id="sel_hhva_ha28"></span></h6>
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
 
@@ -266,7 +266,7 @@ <h6><span id="sel_hhva_ha28"></span></h6>
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA14: </b>VL test date : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
 										{{ form.PWA_WA1_14 }}
-										<h6><span id="sel_hhva_ha28"></span></h6>
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
 
@@ -274,7 +274,7 @@ <h6><span id="sel_hhva_ha28"></span></h6>
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA15: </b>Disclosure done to family member : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
 										{{ form.PWA_WA1_15 }}
-										<h6><span id="sel_hhva_ha28"></span></h6>
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
 							</div>
@@ -352,31 +352,34 @@ <h4 class="panel-title"><b>Evaluation Events List </b></h4>
 
                                   </tr>
                                 </thead>
-                    {% if hiv_screen %}
-
-                    {% for one_screening_data in hiv_screen %}
+                    {% if pwa_women  %}
 
+                    {% for one_screening_data in pwa_women  %}
 
                         <tr>
-                          <!-- <td>{{one_screening_data.date_of_event}}</td> -->
-                          <td>{{one_screening_data.caregiver_know_status | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.caregiver_knowledge_yes | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.parent_PLWH | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.child_sick_malnourished | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.child_sexual_abuse | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.adol_sick | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.adol_sexual_abuse | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.sex | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.sti | yesno:"Yes, No"}}</td>
-                          <td>{{one_screening_data.hiv_test_required  | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.parent_consent_testing | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.referral_made | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.referral_completed  | yesno:"Yes, No, N/A"}}</td>
-                          <!-- <td>{{one_screening_data.not_completed}}</td> -->
-                          <!-- <td>{{one_screening_data.test_result | yesno:"Yes, No, Null"}}</td> -->
-                          <td>{{one_screening_data.art_referral | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.art_referral_completed  | yesno:"Yes, No, N/A"}}</td>
-                          <td>{{one_screening_data.date_of_event}}</td>
+                          <td>{{one_screening_data.date_of_contact}}</td>
+                          <td>{{one_screening_data.date_test_done2a}}</td>
+                          <td>{{one_screening_data.test_result2b}}</td>
+                          <td>{{one_screening_data.date_test_done3a}}</td>
+                          <td>{{one_screening_data.test_result3b}}</td>
+                          <td>{{one_screening_data.date_test_done4a}}</td>
+                          <td>{{one_screening_data.test_result4b}}</td>
+                          <td>{{one_screening_data.date_test_done5a}}</td>
+                          <td>{{one_screening_data.test_result5b}}</td>
+                          <td>{{one_screening_data.anc_date1}}</td>
+                          <td>{{one_screening_data.anc_date2}}</td>
+                          <td>{{one_screening_data.anc_date3}}</td>
+                          <td>{{one_screening_data.anc_date4}}</td>
+                          <td>{{one_screening_data.mode_of_delivery}}</td>
+                          <td>{{one_screening_data.facility_code}}</td>
+                          <td>{{one_screening_data.ccc_no}}</td>
+                          <td>{{one_screening_data.vl_result}}</td>
+                          <td>{{one_screening_data.vl_test_date}}</td>
+                          <td>{{one_screening_data.disclosure_done}}</td>
+                            <td>
+                                 <a href="{% url 'pregnantwomen' one_screening_data.preg_id%}"><button type="button" class="btn btn-sm btn-primary m-r-5"><i class="fa fa-pencil"></i>&nbsp;Edit</button></a>
+                              <a href="{% url 'delete_pregnantwomen' one_screening_data.preg_id%}"><button type="button" class="btn btn-sm btn-danger m-r-5"><i class="fa fa-trash"></i>&nbsp;Delete</button></a>
+                            </td>
                         </tr>
                     {% endfor %}
                     {% else %}
@@ -430,16 +433,17 @@ <h3>No data available</h3>
 </script>
 
 <script>
-$("#PWA_WA1_6, #PWA_WA1_7, #PWA_WA1_8, #PWA_WA1_9, #PWA_WA1_14, #PWA_WA1_1 ").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_1 ").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_2A").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_3A").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_4A").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_5A").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_1").datepicker({ format: 'yyyy-mm-dd' }).val();
-{#$("#PWA_WA1_17").datepicker()#}
-{#$("#PWA_WA1_19").datepicker()#}
-{#$("#PWA_WA1_24").datepicker()#}
-{#$("#PWA_WA1_26").datepicker()#}
+$("#PWA_WA1_6").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_7").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_8").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_9").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_14").datepicker({ format: 'yyyy-mm-dd' }).val();
 $( "#facility_field" ).autocomplete({
     source: function( request, response ) {
     $.ajax({

From 32dcbf0ce0adf6f7046301a3aca4957a23b4be86 Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Tue, 3 May 2022 13:08:11 +0300
Subject: [PATCH 3/9] fix edit function

---
 cpovc_forms/views.py | 94 ++++++++++++++++++++++++--------------------
 1 file changed, 52 insertions(+), 42 deletions(-)

diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index b22dd393d..c37918c9b 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -10002,9 +10002,6 @@ def new_dreamsform(request, id):
 def new_pregnantwomen(request, id):
     try:
         if request.method == 'POST':
-            import pdb
-
-
             form = PREGNANT_WOMEN_ADOLESCENT(request.POST, initial={'person': id})
             if True:
                 person = RegPerson.objects.get(pk=int(id))
@@ -10120,38 +10117,44 @@ def new_pregnantwomen(request, id):
                   'forms/new_pregnantwomen.html',{'form': form, 'init_data': init_data, 'vals': vals, 'person': id, 'care_giver': care_giver, 'pwa_women': pwa_women})
 
 #Edit pregnant women tracker form
-
 def edit_pregnantwomen(request, id):
-    """Some default page for Server Errors."""
-
     try:
         hdata = OVCPregnantWomen.objects.get(preg_id=id)
         if request.method == 'POST':
-            q1 = request.POST.get("PWA_WA1_1")
-            q2 = request.POST.get("PWA_WA1_2A")
-            q3 = request.POST.get("PWA_WA1_2B")
-            # q4 = request.POST.get("PWA_WA1_3A")
-            q5 = request.POST.get("PWA_WA1_3B")
-            # q6 = request.POST.get("PWA_WA1_4A")
-            q7 = request.POST.get("PWA_WA1_4B")
-            # q8 = request.POST.get("PWA_WA1_5A")
-            q9 = request.POST.get("PWA_WA1_5B")
-            q10 = request.POST.get("PWA_WA1_6")
-            q11 = request.POST.get("PWA_WA1_7")
-            q12 = request.POST.get("PWA_WA1_8")
-            q13 = request.POST.get("PWA_WA1_9")
-            q14 = request.POST.get("PWA_WA1_10")
-            q15 = request.POST.get("PWA_WA1_11")
-            q16 = request.POST.get("PWA_WA1_12")
-            q17 = request.POST.get("PWA_WA1_13")
-            q18 = request.POST.get("PWA_WA1_14")
-            # q19 = request.POST.get("PWA_WA1_15")
-
-            # household_id = request.POST.get('household_id')
-            # hse_uuid = uuid.UUID(household_id)
-            # house_holds = OVCHouseHold.objects.get(pk=hse_uuid)
-
-            # Save all details from the Bursary form
+            boolean_fields = [
+                'PWA_WA1_15',
+            ]
+
+            data_to_save = {}
+
+            for key, value in request.POST.items():
+                if key in boolean_fields:
+                    data_to_save.update({
+                        key: True if value == "AYES" else False
+                    })
+                else:
+                    data_to_save.update({key: value})
+
+            q1 = data_to_save.get("PWA_WA1_1")
+            q2 = data_to_save.get("PWA_WA1_2A")
+            q3 = data_to_save.get("PWA_WA1_2B")
+            # q4 = data_to_save.get("PWA_WA1_3A")
+            q5 = data_to_save.get("PWA_WA1_3B")
+            # q6 = data_to_save.get("PWA_WA1_4A")
+            q7 = data_to_save.get("PWA_WA1_4B")
+            # q8 = data_to_save.get("PWA_WA1_5A")
+            q9 = data_to_save.get("PWA_WA1_5B")
+            q10 = data_to_save.get("PWA_WA1_6")
+            q11 = data_to_save.get("PWA_WA1_7")
+            q12 = data_to_save.get("PWA_WA1_8")
+            q13 = data_to_save.get("PWA_WA1_9")
+            q14 = data_to_save.get("PWA_WA1_10")
+            q15 = data_to_save.get("PWA_WA1_11")
+            q16 = data_to_save.get("PWA_WA1_12")
+            q17 = data_to_save.get("PWA_WA1_13")
+            q18 = data_to_save.get("PWA_WA1_14")
+            # q19 = data_to_save.get("PWA_WA1_15")
+
             OVCPregnantWomen.objects.filter(preg_id=id).update(
                 date_of_contact=q1,
                 date_test_done2a=q2,
@@ -10172,11 +10175,8 @@ def edit_pregnantwomen(request, id):
                 vl_result=q17,
                 vl_test_date=q18,
                 # disclosure_done=q19,
-                )
-
-            return redirect('new_pregnantwomen', id=hdata.person_id)
+            )
 
-        # hdata = OVCPregnantWomen.objects.get(preg_id=id)
         track = {
             'PWA_WA1_1': hdata.date_of_contact,
             'PWA_WA1_2A': hdata.date_test_done2a,
@@ -10197,19 +10197,29 @@ def edit_pregnantwomen(request, id):
             'PWA_WA1_13': hdata.vl_result,
             'PWA_WA1_14': hdata.vl_test_date,
             # 'PWA_WA1_15': hdata.disclosure_done,
+
         }
-        form = OVCPregnantWomen(data=track)
+        form = PREGNANT_WOMEN_ADOLESCENT(data=track)
+        return render(request, 'forms/edit_pregnantwomen.html', {'form': form, 'status': 200})
+
+        # Save all details from the Bursary form
+        # pdb.set_trace()
+
 
     except Exception as e:
-        print("error with OVC viewing - %s" % (str(e)))
-        # raise e
-        msg = "Error occured during ovc edit"
-        messages.error(request, msg)
+        msg = 'error'
+        messages.add_message(request, messages.INFO, msg)
+        url = reverse('new_hivscreeningtool', kwargs={'id': 60})
+        return HttpResponseRedirect(url)
+
 
-    return render(request, 'forms/edit_pregnantwomen.html', {'form': form, 'hdata': hdata, 'status': 200})
 
 
 def delete_pregnantwomen(request, id):
     new_tracker = OVCPregnantWomen.objects.get(preg_id=id)
     new_tracker.delete()
-    return redirect('new_pregnantwomen', id=new_tracker.person_id)
\ No newline at end of file
+    return redirect('new_pregnantwomen', id=new_tracker.person_id)
+
+
+
+#testedit pregnant women

From fe200afa4dcaf9d29a5cb719bcc944490bdd8ccb Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Tue, 3 May 2022 20:24:50 +0300
Subject: [PATCH 4/9] fix delete function

---
 cpovc_forms/views.py | 66 +++++++++++++++++++++++---------------------
 1 file changed, 34 insertions(+), 32 deletions(-)

diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index c37918c9b..dd50eaff8 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -10015,6 +10015,7 @@ def new_pregnantwomen(request, id):
                 event_counter = OVCCareEvents.objects.filter(
                     event_type_id=event_type_id, person=id, is_void=False).count()
                 # save event
+
                 ovccareevent = OVCCareEvents.objects.create(
                     event_type_id=event_type_id,
                     event_counter=event_counter,
@@ -10028,11 +10029,11 @@ def new_pregnantwomen(request, id):
                 q2 = request.POST.get("PWA_WA1_2A")
                 q3 = request.POST.get("PWA_WA1_2B")
                 # q4 = request.POST.get("PWA_WA1_3A")
-                q5 = request.POST.get("PWA_WA1_3B")
+                # q5 = request.POST.get("PWA_WA1_3B")
                 # q6= request.POST.get("PWA_WA1_4A")
-                q7 = request.POST.get("PWA_WA1_4B")
+                # q7 = request.POST.get("PWA_WA1_4B")
                 # q8 = request.POST.get("PWA_WA1_5A")
-                q9 = request.POST.get("PWA_WA1_5B")
+                # q9 = request.POST.get("PWA_WA1_5B")
                 q10 = request.POST.get("PWA_WA1_6")
                 q11 = request.POST.get("PWA_WA1_7")
                 q12 = request.POST.get("PWA_WA1_8")
@@ -10042,7 +10043,7 @@ def new_pregnantwomen(request, id):
                 q16 = request.POST.get("PWA_WA1_12")
                 q17 = request.POST.get("PWA_WA1_13")
                 q18 = request.POST.get("PWA_WA1_14")
-                # q19 = request.POST.get("PWA_WA1_15")
+                q19 = request.POST.get("PWA_WA1_15")
 
                 # Saving track
                 # pdb.set_trace()
@@ -10053,11 +10054,11 @@ def new_pregnantwomen(request, id):
                     date_test_done2a=q2,
                     test_result2b=q3,
                     # date_test_done3a=q4,
-                    test_result3b=q5,
+                    # test_result3b=q5,
                     # date_test_done4a=q6,
-                    test_result4b=q7,
+                    # test_result4b=q7,
                     # date_test_done5a=q8,
-                    test_result5b=q9,
+                    # test_result5b=q9,
                     anc_date1=q10,
                     anc_date2=q11,
                     anc_date3=q12,
@@ -10067,7 +10068,7 @@ def new_pregnantwomen(request, id):
                     ccc_no=q16,
                     vl_result=q17,
                     vl_test_date=q18,
-                    # disclosure_done=q19,
+                    disclosure_done=q19,
                     event=ovccareevent,
                 )
                 # pdb.set_trace()
@@ -10108,15 +10109,15 @@ def new_pregnantwomen(request, id):
     #     date_of_event = convert_date(date_of_event)
 
 
-
     form = PREGNANT_WOMEN_ADOLESCENT(initial={'person': id})
     event = OVCPregnantWomen.objects.filter(person_id=id).values_list('event')
-    pwa_women = OVCPregnantWomen.objects.filter(event_id__in=event).order_by('date_of_event')
+    pwa_women = OVCPregnantWomen.objects.filter(event_id__in=event, is_void=True).order_by('date_of_event')
     care_giver = RegPerson.objects.get(id=OVCRegistration.objects.get(person=child).caretaker_id)
     return render(request,
                   'forms/new_pregnantwomen.html',{'form': form, 'init_data': init_data, 'vals': vals, 'person': id, 'care_giver': care_giver, 'pwa_women': pwa_women})
 
 #Edit pregnant women tracker form
+
 def edit_pregnantwomen(request, id):
     try:
         hdata = OVCPregnantWomen.objects.get(preg_id=id)
@@ -10139,42 +10140,48 @@ def edit_pregnantwomen(request, id):
             q2 = data_to_save.get("PWA_WA1_2A")
             q3 = data_to_save.get("PWA_WA1_2B")
             # q4 = data_to_save.get("PWA_WA1_3A")
-            q5 = data_to_save.get("PWA_WA1_3B")
+            # q5 = data_to_save.get("PWA_WA1_3B")
             # q6 = data_to_save.get("PWA_WA1_4A")
-            q7 = data_to_save.get("PWA_WA1_4B")
+            # q7 = data_to_save.get("PWA_WA1_4B")
             # q8 = data_to_save.get("PWA_WA1_5A")
-            q9 = data_to_save.get("PWA_WA1_5B")
+            # q9 = data_to_save.get("PWA_WA1_5B")
             q10 = data_to_save.get("PWA_WA1_6")
             q11 = data_to_save.get("PWA_WA1_7")
             q12 = data_to_save.get("PWA_WA1_8")
             q13 = data_to_save.get("PWA_WA1_9")
             q14 = data_to_save.get("PWA_WA1_10")
             q15 = data_to_save.get("PWA_WA1_11")
+
+            if q15:
+                facility_res = OVCFacility.objects.get(id=q15).facility_code
+            else:
+                facility_res = None
+
             q16 = data_to_save.get("PWA_WA1_12")
             q17 = data_to_save.get("PWA_WA1_13")
             q18 = data_to_save.get("PWA_WA1_14")
-            # q19 = data_to_save.get("PWA_WA1_15")
+            q19 = data_to_save.get("PWA_WA1_15")
 
             OVCPregnantWomen.objects.filter(preg_id=id).update(
                 date_of_contact=q1,
                 date_test_done2a=q2,
                 test_result2b=q3,
                 # date_test_done3a=q4,
-                test_result3b=q5,
+                # test_result3b=q5,
                 # date_test_done4a=q6,
-                test_result4b=q7,
+                # test_result4b=q7,
                 # date_test_done5a=q8,
-                test_result5b=q9,
+                # test_result5b=q9,
                 anc_date1=q10,
                 anc_date2=q11,
                 anc_date3=q12,
                 anc_date4=q13,
                 mode_of_delivery=q14,
-                facility_code=q15,
+                facility_code=facility_res,
                 ccc_no=q16,
                 vl_result=q17,
                 vl_test_date=q18,
-                # disclosure_done=q19,
+                disclosure_done=q19,
             )
 
         track = {
@@ -10182,11 +10189,11 @@ def edit_pregnantwomen(request, id):
             'PWA_WA1_2A': hdata.date_test_done2a,
             'PWA_WA1_2B': hdata.test_result2b,
             # 'PWA_WA1_3A': hdata.date_test_done3a,
-            'PWA_WA1_3B': hdata.test_result3b,
+            # 'PWA_WA1_3B': hdata.test_result3b,
             # 'PWA_WA1_4A': hdata.date_test_done4a,
-            'PWA_WA1_4B': hdata.test_result4b,
+            # 'PWA_WA1_4B': hdata.test_result4b,
             # 'PWA_WA1_5A': hdata.date_test_done5a,
-            'PWA_WA1_5B': hdata.test_result5b,
+            # 'PWA_WA1_5B': hdata.test_result5b,
             'PWA_WA1_6': hdata.anc_date1,
             'PWA_WA1_7': hdata.anc_date2,
             'PWA_WA1_8': hdata.anc_date3,
@@ -10209,17 +10216,12 @@ def edit_pregnantwomen(request, id):
     except Exception as e:
         msg = 'error'
         messages.add_message(request, messages.INFO, msg)
-        url = reverse('new_hivscreeningtool', kwargs={'id': 60})
+        url = reverse('ovc_view', kwargs={'id': id})
         return HttpResponseRedirect(url)
 
 
-
-
 def delete_pregnantwomen(request, id):
-    new_tracker = OVCPregnantWomen.objects.get(preg_id=id)
-    new_tracker.delete()
-    return redirect('new_pregnantwomen', id=new_tracker.person_id)
-
-
-
-#testedit pregnant women
+    new_tracker = OVCPregnantWomen.objects.filter(preg_id=id)
+    new_tracker1 = OVCPregnantWomen.objects.get(preg_id=id)
+    new_tracker.update(is_void=True)
+    return redirect('new_pregnantwomen', id=new_tracker1.person_id)

From d2163abcae086692824e0c656357780395a7be9a Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Wed, 4 May 2022 16:03:41 +0300
Subject: [PATCH 5/9] Fix status details

---
 cpovc_forms/views.py | 68 ++++++++++++++++++++++++++------------------
 1 file changed, 40 insertions(+), 28 deletions(-)

diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index dd50eaff8..46c34a489 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -23,7 +23,7 @@
     OVC_CaseEventForm, DocumentsManager, OVCSchoolForm, OVCBursaryForm,
     BackgroundDetailsForm, OVC_FTFCForm, OVCCsiForm, OVCF1AForm, OVCHHVAForm, Wellbeing,
     GOKBursaryForm, CparaAssessment, CparaMonitoring, CasePlanTemplate, WellbeingAdolescentForm, HIV_SCREENING_FORM,
-    HIV_MANAGEMENT_ARV_THERAPY_FORM, HIV_MANAGEMENT_VISITATION_FORM, DREAMS_FORM,PREGNANT_WOMEN_ADOLESCENT)
+    HIV_MANAGEMENT_ARV_THERAPY_FORM, HIV_MANAGEMENT_VISITATION_FORM, DREAMS_FORM, PREGNANT_WOMEN_ADOLESCENT)
 
 from .models import (
     OVCEconomicStatus, OVCFamilyStatus, OVCReferral, OVCHobbies, OVCFriends,
@@ -36,7 +36,8 @@
     OVCFamilyCare, OVCCaseEventSummon, OVCCareEvents, OVCCarePriority,
     OVCCareServices, OVCCareEAV, OVCCareAssessment, OVCGokBursary, OVCCareWellbeing, OVCCareCpara, OVCCareQuestions,
     OVCCareForms, OVCExplanations, OVCCareF1B,
-    OVCCareBenchmarkScore, OVCMonitoring, OVCHouseholdDemographics, OVCHivStatus, OVCHIVManagement, OVCHIVRiskScreening, OVCPregnantWomen)
+    OVCCareBenchmarkScore, OVCMonitoring, OVCHouseholdDemographics, OVCHivStatus, OVCHIVManagement, OVCHIVRiskScreening,
+    OVCPregnantWomen, PMTCTEvents, OVCPreventiveEvents)
 from cpovc_ovc.models import OVCRegistration, OVCHHMembers, OVCHealth, OVCHouseHold, OVCFacility
 from cpovc_main.functions import (
     get_list_of_org_units, get_dict, get_vgeo_list, get_vorg_list,
@@ -9403,12 +9404,12 @@ def new_wellbeing(request, id):
         for key in request.POST:
             if (str(key) != "safeanswer" and str(key) != "schooledanswer" and "WB_SCH_39" not in str(
                     key) and "WB_SCH_40" not in str(key) and "WB_SCH_41" not in str(key) and "WB_SCH_42" not in str(
-                    key) and "WB_SAF_31_1" not in str(key) and "WB_SCH_43" not in str(key) and "WB_SCH_44" not in str(
-                    key) and "WB_SCH_45" not in str(key) and "WB_SAF_37" not in str(key) and "WB_SAF_38" not in str(
-                    key) and "WB_SAF_39" not in str(key) and "WB_SAF_40" not in str(key) and "WB_HEL_17_2" not in str(
-                    key) and "WB_GEN_11" not in str(key) and "WB_GEN_13" not in str(key) and "WB_GEN_15" not in str(
-                    key) and "WB_GEN_14" not in str(key) and "WB_GEN_16" not in str(key) and "caretaker_id" not in str(
-                    key)):
+                key) and "WB_SAF_31_1" not in str(key) and "WB_SCH_43" not in str(key) and "WB_SCH_44" not in str(
+                key) and "WB_SCH_45" not in str(key) and "WB_SAF_37" not in str(key) and "WB_SAF_38" not in str(
+                key) and "WB_SAF_39" not in str(key) and "WB_SAF_40" not in str(key) and "WB_HEL_17_2" not in str(
+                key) and "WB_GEN_11" not in str(key) and "WB_GEN_13" not in str(key) and "WB_GEN_15" not in str(
+                key) and "WB_GEN_14" not in str(key) and "WB_GEN_16" not in str(key) and "caretaker_id" not in str(
+                key)):
 
                 if (key in ignore_request_values):
                     continue
@@ -9998,8 +9999,12 @@ def new_dreamsform(request, id):
                   {'form': form, 'init_data': init_data,
                    'vals': vals})
 
-#pregnant_women_adolescent
+
+# pregnant_women_adolescent
 def new_pregnantwomen(request, id):
+    q3 = q5 = q7 = q9 = ''
+    q2 = q4 = q6 = q8 = '1900-01-01'
+    import pdb
     try:
         if request.method == 'POST':
             form = PREGNANT_WOMEN_ADOLESCENT(request.POST, initial={'person': id})
@@ -10009,7 +10014,6 @@ def new_pregnantwomen(request, id):
                 house_hold = OVCHouseHold.objects.get(id=OVCHHMembers.objects.get(person=child).house_hold_id)
                 event_type_id = 'HRST'
 
-
                 """ Save hiv_screening-event """
                 # get event counter
                 event_counter = OVCCareEvents.objects.filter(
@@ -10026,14 +10030,20 @@ def new_pregnantwomen(request, id):
                 )
 
                 q1 = request.POST.get("PWA_WA1_1")
-                q2 = request.POST.get("PWA_WA1_2A")
-                q3 = request.POST.get("PWA_WA1_2B")
-                # q4 = request.POST.get("PWA_WA1_3A")
-                # q5 = request.POST.get("PWA_WA1_3B")
-                # q6= request.POST.get("PWA_WA1_4A")
-                # q7 = request.POST.get("PWA_WA1_4B")
-                # q8 = request.POST.get("PWA_WA1_5A")
-                # q9 = request.POST.get("PWA_WA1_5B")
+                test = request.POST.get("PWA_WA1_01")
+
+                if test == 'contact':
+                    q2 = request.POST.get("PWA_WA1_2A")
+                    q3 = request.POST.get("PWA_WA1_2B")
+                if test == 'tri':
+                    q4 = request.POST.get("PWA_WA1_2A")
+                    q5 = request.POST.get("PWA_WA1_2B")
+                if test == '3rd':
+                    q6= request.POST.get("PWA_WA1_2A")
+                    q7 = request.POST.get("PWA_WA1_2B")
+                if test == '4th':
+                    q8 = request.POST.get("PWA_WA1_2A")
+                    q9 = request.POST.get("PWA_WA1_2B")
                 q10 = request.POST.get("PWA_WA1_6")
                 q11 = request.POST.get("PWA_WA1_7")
                 q12 = request.POST.get("PWA_WA1_8")
@@ -10053,12 +10063,12 @@ def new_pregnantwomen(request, id):
                     date_of_contact=q1,
                     date_test_done2a=q2,
                     test_result2b=q3,
-                    # date_test_done3a=q4,
-                    # test_result3b=q5,
-                    # date_test_done4a=q6,
-                    # test_result4b=q7,
-                    # date_test_done5a=q8,
-                    # test_result5b=q9,
+                    date_test_done3a=q4,
+                    test_result3b=q5,
+                    date_test_done4a=q6,
+                    test_result4b=q7,
+                    date_test_done5a=q8,
+                    test_result5b=q9,
                     anc_date1=q10,
                     anc_date2=q11,
                     anc_date3=q12,
@@ -10108,15 +10118,17 @@ def new_pregnantwomen(request, id):
     # if date_of_event:
     #     date_of_event = convert_date(date_of_event)
 
-
     form = PREGNANT_WOMEN_ADOLESCENT(initial={'person': id})
     event = OVCPregnantWomen.objects.filter(person_id=id).values_list('event')
-    pwa_women = OVCPregnantWomen.objects.filter(event_id__in=event, is_void=True).order_by('date_of_event')
+    pwa_women = OVCPregnantWomen.objects.filter(event_id__in=event, is_void=False).order_by('date_of_event')
     care_giver = RegPerson.objects.get(id=OVCRegistration.objects.get(person=child).caretaker_id)
     return render(request,
-                  'forms/new_pregnantwomen.html',{'form': form, 'init_data': init_data, 'vals': vals, 'person': id, 'care_giver': care_giver, 'pwa_women': pwa_women})
+                  'forms/new_pregnantwomen.html',
+                  {'form': form, 'init_data': init_data, 'vals': vals, 'person': id, 'care_giver': care_giver,
+                   'pwa_women': pwa_women})
+
 
-#Edit pregnant women tracker form
+# Edit pregnant women tracker form
 
 def edit_pregnantwomen(request, id):
     try:

From c6173278f67d113133f0903b4be608366999e1e0 Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Wed, 4 May 2022 18:37:27 +0300
Subject: [PATCH 6/9] fix edit test date $ result

---
 cpovc_forms/views.py | 40 ++++++++++++++++++++--------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index 46c34a489..1997cae82 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -10151,12 +10151,12 @@ def edit_pregnantwomen(request, id):
             q1 = data_to_save.get("PWA_WA1_1")
             q2 = data_to_save.get("PWA_WA1_2A")
             q3 = data_to_save.get("PWA_WA1_2B")
-            # q4 = data_to_save.get("PWA_WA1_3A")
-            # q5 = data_to_save.get("PWA_WA1_3B")
-            # q6 = data_to_save.get("PWA_WA1_4A")
-            # q7 = data_to_save.get("PWA_WA1_4B")
-            # q8 = data_to_save.get("PWA_WA1_5A")
-            # q9 = data_to_save.get("PWA_WA1_5B")
+            q4 = data_to_save.get("PWA_WA1_3A")
+            q5 = data_to_save.get("PWA_WA1_3B")
+            q6 = data_to_save.get("PWA_WA1_4A")
+            q7 = data_to_save.get("PWA_WA1_4B")
+            q8 = data_to_save.get("PWA_WA1_5A")
+            q9 = data_to_save.get("PWA_WA1_5B")
             q10 = data_to_save.get("PWA_WA1_6")
             q11 = data_to_save.get("PWA_WA1_7")
             q12 = data_to_save.get("PWA_WA1_8")
@@ -10178,12 +10178,12 @@ def edit_pregnantwomen(request, id):
                 date_of_contact=q1,
                 date_test_done2a=q2,
                 test_result2b=q3,
-                # date_test_done3a=q4,
-                # test_result3b=q5,
-                # date_test_done4a=q6,
-                # test_result4b=q7,
-                # date_test_done5a=q8,
-                # test_result5b=q9,
+                date_test_done3a=q4,
+                test_result3b=q5,
+                date_test_done4a=q6,
+                test_result4b=q7,
+                date_test_done5a=q8,
+                test_result5b=q9,
                 anc_date1=q10,
                 anc_date2=q11,
                 anc_date3=q12,
@@ -10200,12 +10200,12 @@ def edit_pregnantwomen(request, id):
             'PWA_WA1_1': hdata.date_of_contact,
             'PWA_WA1_2A': hdata.date_test_done2a,
             'PWA_WA1_2B': hdata.test_result2b,
-            # 'PWA_WA1_3A': hdata.date_test_done3a,
-            # 'PWA_WA1_3B': hdata.test_result3b,
-            # 'PWA_WA1_4A': hdata.date_test_done4a,
-            # 'PWA_WA1_4B': hdata.test_result4b,
-            # 'PWA_WA1_5A': hdata.date_test_done5a,
-            # 'PWA_WA1_5B': hdata.test_result5b,
+            'PWA_WA1_3A': hdata.date_test_done3a,
+            'PWA_WA1_3B': hdata.test_result3b,
+            'PWA_WA1_4A': hdata.date_test_done4a,
+            'PWA_WA1_4B': hdata.test_result4b,
+            'PWA_WA1_5A': hdata.date_test_done5a,
+            'PWA_WA1_5B': hdata.test_result5b,
             'PWA_WA1_6': hdata.anc_date1,
             'PWA_WA1_7': hdata.anc_date2,
             'PWA_WA1_8': hdata.anc_date3,
@@ -10215,7 +10215,7 @@ def edit_pregnantwomen(request, id):
             'PWA_WA1_12': hdata.ccc_no,
             'PWA_WA1_13': hdata.vl_result,
             'PWA_WA1_14': hdata.vl_test_date,
-            # 'PWA_WA1_15': hdata.disclosure_done,
+            'PWA_WA1_15': hdata.disclosure_done,
 
         }
         form = PREGNANT_WOMEN_ADOLESCENT(data=track)
@@ -10227,7 +10227,7 @@ def edit_pregnantwomen(request, id):
 
     except Exception as e:
         msg = 'error'
-        messages.add_message(request, messages.INFO, msg)
+        messages.error(request, msg)
         url = reverse('ovc_view', kwargs={'id': id})
         return HttpResponseRedirect(url)
 

From e6bc48b4ede59e8f417888c0e7da33d63cc3d517 Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Thu, 5 May 2022 23:37:38 +0300
Subject: [PATCH 7/9] Fix changes on PMTCT-pregnant womwn/adolescent tracker

---
 cpovc_forms/forms.py                    | 124 +++---
 cpovc_forms/views.py                    | 337 ++++++----------
 templates/forms/edit_pregnantwomen.html | 494 ++++++++++++++++++++++++
 templates/forms/new_pregnantwomen.html  | 233 +++++------
 4 files changed, 809 insertions(+), 379 deletions(-)
 create mode 100644 templates/forms/edit_pregnantwomen.html

diff --git a/cpovc_forms/forms.py b/cpovc_forms/forms.py
index 0497634f7..f417e9cfe 100644
--- a/cpovc_forms/forms.py
+++ b/cpovc_forms/forms.py
@@ -427,8 +427,6 @@
     ('IP', 'In Progress'),
     ('NA', 'Not Achieved')
 )
-#pregnant_women_adolescent
-ATTEND_CHOICES=(('1', 'Skilled'), ('0', 'Unskilled'))
 
 
 class OVCSchoolForm(forms.Form):
@@ -8153,7 +8151,7 @@ class DREAMS_FORM(forms.Form):
 #Pregnant Women_Adolescent
 class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
     org_units_list = get_facility_list()
-    HIV_STATUS_CHOICES=(('1', ''), ('0', 'Unskilled'))
+    # HIV_STATUS_CHOICES=(('1', 'Skilled'), ('0', 'Unskilled'))
     PWA_WA1_01 = forms.ChoiceField(
         choices=(('contact', '1st Contact'), ('tri', '1st Trimester'),('3rd', '3rd Trimester'),('4th', 'Labour/Delivery'),),
         widget=forms.RadioSelect(
@@ -8162,19 +8160,21 @@ class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
                 # 'data-parsley-errors-container': "#errorfield"
             }))
 
-    PWA_WA1_2A = forms.DateField(
+    PMTCT_PWA6q = forms.DateField(
+        required=False,
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%m/%d/%Y",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_2A',
-                   'id': 'PWA_WA1_2A',
+                   'name': 'PMTCT_PWA6q',
+                   'id': 'PMTCT_PWA6q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_2B = forms.ChoiceField(
+    PMTCT_PWA7q = forms.ChoiceField(
+        required=False,
         choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
         widget=forms.RadioSelect(
             # renderer=RadioCustomRenderer,
@@ -8183,19 +8183,21 @@ class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
                 # 'data-parsley-errors-container': "#errorfield"
             }))
 
-    PWA_WA1_3A = forms.DateField(
+    PMTCT_PWA8q = forms.DateField(
+        required=False,
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_3A',
-                   'id': 'PWA_WA1_3A',
+                   'name': 'PMTCT_PWA8q',
+                   'id': 'PMTCT_PWA8q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_3B = forms.ChoiceField(
+    PMTCT_PWA9q = forms.ChoiceField(
+        required=False,
         choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
         widget=forms.RadioSelect(
             # renderer=RadioCustomRenderer,
@@ -8204,19 +8206,21 @@ class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
                 # 'data-parsley-errors-container': "#errorfield"
             }))
 
-    PWA_WA1_4A = forms.DateField(
+    PMTCT_PWA10q = forms.DateField(
+        required=False,
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_4A',
-                   'id': 'PWA_WA1_4A',
+                   'name': 'PMTCT_PWA10q',
+                   'id': 'PMTCT_PWA10q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_4B = forms.ChoiceField(
+    PMTCT_PWA11q = forms.ChoiceField(
+        required=False,
         choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
         widget=forms.RadioSelect(
             # renderer=RadioCustomRenderer,
@@ -8225,19 +8229,21 @@ class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
                 # 'data-parsley-errors-container': "#errorfield"
             }))
 
-    PWA_WA1_5A = forms.DateField(
+    PMTCT_PWA12q = forms.DateField(
+        required=False,
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_5A',
-                   'id': 'PWA_WA1_5A',
+                   'name': 'PMTCT_PWA12q',
+                   'id': 'PMTCT_PWA12q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_5B = forms.ChoiceField(
+    PMTCT_PWA13q = forms.ChoiceField(
+        required=False,
         choices=(('1', 'HIV_Positive'), ('0', 'HIV_Negative'),),
         widget=forms.RadioSelect(
             # renderer=RadioCustomRenderer,
@@ -8246,70 +8252,71 @@ class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
                 # 'data-parsley-errors-container': "#errorfield"
             }))
 
-    PWA_WA1_6 = forms.DateField(
+    PMTCT_PWA1q = forms.DateField(
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_6',
-                   'id': 'PWA_WA1_6',
+                   'name': 'PMTCT_PWA1q',
+                   'id': 'PMTCT_PWA1q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_7 = forms.DateField(
+    PMTCT_PWA2q = forms.DateField(
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_7',
-                   'id': 'PWA_WA1_7',
+                   'name': 'PMTCT_PWA2q',
+                   'id': 'PMTCT_PWA2q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_8 = forms.DateField(
+    PMTCT_PWA3q = forms.DateField(
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_8',
-                   'id': 'PWA_WA1_8',
+                   'name': 'PMTCT_PWA3q',
+                   'id': 'PMTCT_PWA3q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_9 = forms.DateField(
+    PMTCT_PWA4q = forms.DateField(
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_9',
-                   'id': 'PWA_WA1_9',
+                   'name': 'PMTCT_PWA4q',
+                   'id': 'PMTCT_PWA4q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_10 = forms.ChoiceField(
-        choices=ATTEND_CHOICES,
+    PMTCT_PWA5q = forms.ChoiceField(
+        choices=(('1', 'Skilled'), ('0', 'Unskilled'),),
         widget=forms.RadioSelect(
             # renderer=RadioCustomRenderer,
             attrs={
                 # 'data-parsley-errors-container': "#errorfield"
             }))
 
-    PWA_WA1_11 = forms.CharField(widget=forms.TextInput(
+    PMTCT_PWA14q = forms.CharField(widget=forms.TextInput(
         attrs={'placeholder': _('Facility Name'),
                'class': 'form-control',
-               'id': 'PWA_WA1_21',
+               'id': 'PMTCT_PWA14q',
+               'readonly':'True',
                #    'data-parsley-group': 'group0'
                }))
 
-    PWA_WA1_12 = forms.CharField(widget=forms.TextInput(
+    PMTCT_PWA15q = forms.CharField(widget=forms.TextInput(
         attrs={'placeholder': _('CCC NO'),
                'class': 'form-control',
                #    'data-parsley-required': "False",
@@ -8317,7 +8324,7 @@ class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
                #    'data-parsley-required': "False"
                }))
 
-    PWA_WA1_13 = forms.CharField(widget=forms.TextInput(
+    PMTCT_PWA16q = forms.CharField(widget=forms.TextInput(
         attrs={'placeholder': _('VL result'),
                'class': 'form-control',
                #    'data-parsley-required': "False",
@@ -8325,33 +8332,40 @@ class PREGNANT_WOMEN_ADOLESCENT(forms.Form):
                #    'data-parsley-required': "False"
                }))
 
-    PWA_WA1_14 = forms.DateField(
+    PMTCT_PWA17q = forms.DateField(
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
+            # format="%Y/%m/%d",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_14',
-                   'id': 'PWA_WA1_14',
+                   'name': 'PMTCT_PWA17q',
+                   'id': 'PMTCT_PWA17q',
                    'autocomplete': "off",
                    #    'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
                    }))
 
-    PWA_WA1_15 = forms.ChoiceField(
-        choices=YESNO_CHOICES,
+    # PWA_WA1_15 = forms.ChoiceField(
+    #     choices=YESNO_CHOICES,
+    #     widget=forms.RadioSelect(
+    #         # renderer=RadioCustomRenderer,
+    #         attrs={
+    #             # 'data-parsley-errors-container': "#errorfield"
+    #         }))
+    PMTCT_PWA18q = forms.ChoiceField(
+        choices=(('1', 'YES'), ('0', 'NO')),
         widget=forms.RadioSelect(
             # renderer=RadioCustomRenderer,
             attrs={
+                # 'data-parsley-required': 'true',
                 # 'data-parsley-errors-container': "#errorfield"
             }))
 
-    PWA_WA1_1 = forms.DateField(
+    PMTCT_PWA19q = forms.DateField(
         widget=forms.widgets.DateInput(
-            format="%m/%d/%Y",
             attrs={'placeholder': _('Date'),
                    'class': 'form-control',
-                   'name': 'PWA_WA1_1',
-                   'id': 'PWA_WA1_1',
+                   'name': 'PMTCT_PWA19q',
+                   'id': 'PMTCT_PWA19q',
                    'autocomplete': "off",
                       # 'data-parsley-required': "true",
                    #    'data-parsley-group': 'group0'
diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index 1997cae82..c63e7ebd9 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -34,10 +34,9 @@
     OVCAdverseEventsFollowUp, OVCAdverseEventsOtherFollowUp,
     OVCCaseEventClosure, OVCCaseGeo, OVCMedicalSubconditions, OVCBursary,
     OVCFamilyCare, OVCCaseEventSummon, OVCCareEvents, OVCCarePriority,
-    OVCCareServices, OVCCareEAV, OVCCareAssessment, OVCGokBursary, OVCCareWellbeing, OVCCareCpara, OVCCareQuestions,
-    OVCCareForms, OVCExplanations, OVCCareF1B,
+    OVCCareServices, OVCCareEAV, OVCCareAssessment, OVCGokBursary, OVCCareWellbeing, OVCCareCpara, OVCCareQuestions, OVCExplanations, OVCCareF1B,
     OVCCareBenchmarkScore, OVCMonitoring, OVCHouseholdDemographics, OVCHivStatus, OVCHIVManagement, OVCHIVRiskScreening,
-    OVCPregnantWomen, PMTCTEvents, OVCPreventiveEvents)
+    OVCPregnantWomen, PMTCTEvents, OVCPreventiveEvents,PMTCTPregnantWA, pmtct_registration, PMTCTQuestions)
 from cpovc_ovc.models import OVCRegistration, OVCHHMembers, OVCHealth, OVCHouseHold, OVCFacility
 from cpovc_main.functions import (
     get_list_of_org_units, get_dict, get_vgeo_list, get_vorg_list,
@@ -10000,105 +9999,63 @@ def new_dreamsform(request, id):
                    'vals': vals})
 
 
-# pregnant_women_adolescent
 def new_pregnantwomen(request, id):
-    q3 = q5 = q7 = q9 = ''
-    q2 = q4 = q6 = q8 = '1900-01-01'
-    import pdb
-    try:
-        if request.method == 'POST':
-            form = PREGNANT_WOMEN_ADOLESCENT(request.POST, initial={'person': id})
-            if True:
-                person = RegPerson.objects.get(pk=int(id))
-                child = RegPerson.objects.get(id=id)
-                house_hold = OVCHouseHold.objects.get(id=OVCHHMembers.objects.get(person=child).house_hold_id)
-                event_type_id = 'HRST'
+    if request.method == 'POST':
+        data = request.POST
+        import pdb
+        person = RegPerson.objects.get(pk=int(id))
+        appuser = request.user.id
+        event_type_id = 'WBGA'
+        date_of_event = timezone.now()
 
-                """ Save hiv_screening-event """
-                # get event counter
-                event_counter = OVCCareEvents.objects.filter(
-                    event_type_id=event_type_id, person=id, is_void=False).count()
-                # save event
+        """ Save Wellbeing-event """
 
-                ovccareevent = OVCCareEvents.objects.create(
-                    event_type_id=event_type_id,
-                    event_counter=event_counter,
-                    event_score=0,
-                    created_by=request.user.id,
-                    person=RegPerson.objects.get(pk=int(id)),
-                    house_hold=house_hold
-                )
+        # get event counter
+        event_counter = PMTCTEvents.objects.filter(
+            event_type_id=event_type_id, person=id, is_void=False).count()
+        # save event
+        # try:
+        pmtctevent = PMTCTEvents.objects.create(
+            event_type_id=event_type_id,
+            event_counter=event_counter,
+            event_score=0,
+            date_of_event=date_of_event,
+            created_by=appuser,
+            person=person,
+            # house_hold=house_holds
+        )
+            # except Exception as e:
+            #     error_message = f'Pmtct Events failed: {e}'
 
-                q1 = request.POST.get("PWA_WA1_1")
-                test = request.POST.get("PWA_WA1_01")
-
-                if test == 'contact':
-                    q2 = request.POST.get("PWA_WA1_2A")
-                    q3 = request.POST.get("PWA_WA1_2B")
-                if test == 'tri':
-                    q4 = request.POST.get("PWA_WA1_2A")
-                    q5 = request.POST.get("PWA_WA1_2B")
-                if test == '3rd':
-                    q6= request.POST.get("PWA_WA1_2A")
-                    q7 = request.POST.get("PWA_WA1_2B")
-                if test == '4th':
-                    q8 = request.POST.get("PWA_WA1_2A")
-                    q9 = request.POST.get("PWA_WA1_2B")
-                q10 = request.POST.get("PWA_WA1_6")
-                q11 = request.POST.get("PWA_WA1_7")
-                q12 = request.POST.get("PWA_WA1_8")
-                q13 = request.POST.get("PWA_WA1_9")
-                q14 = request.POST.get("PWA_WA1_10")
-                q15 = request.POST.get("PWA_WA1_11")
-                q16 = request.POST.get("PWA_WA1_12")
-                q17 = request.POST.get("PWA_WA1_13")
-                q18 = request.POST.get("PWA_WA1_14")
-                q19 = request.POST.get("PWA_WA1_15")
-
-                # Saving track
-                # pdb.set_trace()
-
-                ovc_preg = OVCPregnantWomen.objects.create(
-                    person=person,
-                    date_of_contact=q1,
-                    date_test_done2a=q2,
-                    test_result2b=q3,
-                    date_test_done3a=q4,
-                    test_result3b=q5,
-                    date_test_done4a=q6,
-                    test_result4b=q7,
-                    date_test_done5a=q8,
-                    test_result5b=q9,
-                    anc_date1=q10,
-                    anc_date2=q11,
-                    anc_date3=q12,
-                    anc_date4=q13,
-                    mode_of_delivery=q14,
-                    facility_code=q15,
-                    ccc_no=q16,
-                    vl_result=q17,
-                    vl_test_date=q18,
-                    disclosure_done=q19,
-                    event=ovccareevent,
+        # get questions for adolescent
+        questions = PMTCTQuestions.objects.filter(code__startswith='PWA', is_void=False)
+        care_giver = RegPerson.objects.get(id=OVCRegistration.objects.get(person=person).caretaker_id)
+        for question in questions:
+            question_code_q=question.code
+            question_ansr_a=data.get(question.question)
+            if question_ansr_a is None:
+                question_ansr_a = 'No'
+            try:
+                PMTCTPregnantWA.objects.create(
+                    person=RegPerson.objects.get(pk=int(id)),
+                    caregiver=care_giver,
+                    question=question,
+                    question_code=question_code_q,
+                    answer=question_ansr_a,
+                    timestamp_created=date_of_event,
+                    event=pmtctevent,
                 )
-                # pdb.set_trace()
-
-                msg = 'form PWA tracker saved successful'
-                messages.add_message(request, messages.INFO, msg)
-                url = reverse('ovc_view', kwargs={'id': id})
-                return HttpResponseRedirect(url)
-            # url = reverse('ovc_view', kwargs={'id': id})
-            # # return HttpResponseRedirect(reverse(forms_registry))
-            # return HttpResponseRedirect(url)
-    except Exception as e:
-        msg = 'form PWA tracker save error : (%s)' % (str(e))
-        messages.add_message(request, messages.ERROR, msg)
-        print('Error saving form PWA tracker : %s' % str(e))
-        return HttpResponseRedirect(reverse(forms_home))
+            except Exception as e:
+                error_message = f'PMTCT Pregnant table failed: {e}'
+                print(error_message)
 
-    # get household members/ caretaker/ household_id
-    household_id = None
+        msg = ' saved successful'
+        messages.add_message(request, messages.INFO, msg)
+        url = reverse('ovc_view', kwargs={'id': id})
+        return HttpResponseRedirect(url)
 
+    # Get request Method
+    import pdb
     try:
         ovcreg = get_object_or_404(OVCRegistration, person_id=id, is_void=False)
         caretaker_id = ovcreg.caretaker_id if ovcreg else None
@@ -10114,126 +10071,88 @@ def new_pregnantwomen(request, id):
     check_fields = ['sex_id', 'relationship_type_id']
     vals = get_dict(field_name=check_fields)
     ovc_id = int(id)
-    child = RegPerson.objects.get(is_void=False, id=ovc_id)
-    # if date_of_event:
-    #     date_of_event = convert_date(date_of_event)
-
-    form = PREGNANT_WOMEN_ADOLESCENT(initial={'person': id})
-    event = OVCPregnantWomen.objects.filter(person_id=id).values_list('event')
-    pwa_women = OVCPregnantWomen.objects.filter(event_id__in=event, is_void=False).order_by('date_of_event')
-    care_giver = RegPerson.objects.get(id=OVCRegistration.objects.get(person=child).caretaker_id)
-    return render(request,
-                  'forms/new_pregnantwomen.html',
-                  {'form': form, 'init_data': init_data, 'vals': vals, 'person': id, 'care_giver': care_giver,
-                   'pwa_women': pwa_women})
-
-
-# Edit pregnant women tracker form
+    # Past Data
+    past_data = PMTCTPregnantWA.objects.filter(person=id, is_void=False).values()
+    questions = PMTCTQuestions.objects.filter(code__startswith='PWA', is_void=False).values()
+    code_question = {}
+    for question in questions:
+        code_question[question['code']]=question['question']
+    data_get = {}
+    for one_past_data in past_data:
+        one_past_data_q=one_past_data['question_code']
+        one_past_data_a = one_past_data['answer']
+
+        data_get[code_question[one_past_data_q]]=one_past_data_a
+
+    # pdb.set_trace()
+    print(data_get)
+    form = PREGNANT_WOMEN_ADOLESCENT()
+    # care_giver = RegPerson.objects.get(id=pmtct_registration.objects.get(person=child).caretaker_id)
+    context = {
+              'form': form,
+              'init_data': init_data,
+              'vals': vals,
+              'person': id,
+              'data_get':data_get
+                }
+    return render(request, 'forms/new_pregnantwomen.html', context)
 
 def edit_pregnantwomen(request, id):
-    try:
-        hdata = OVCPregnantWomen.objects.get(preg_id=id)
-        if request.method == 'POST':
-            boolean_fields = [
-                'PWA_WA1_15',
-            ]
-
-            data_to_save = {}
-
-            for key, value in request.POST.items():
-                if key in boolean_fields:
-                    data_to_save.update({
-                        key: True if value == "AYES" else False
-                    })
-                else:
-                    data_to_save.update({key: value})
-
-            q1 = data_to_save.get("PWA_WA1_1")
-            q2 = data_to_save.get("PWA_WA1_2A")
-            q3 = data_to_save.get("PWA_WA1_2B")
-            q4 = data_to_save.get("PWA_WA1_3A")
-            q5 = data_to_save.get("PWA_WA1_3B")
-            q6 = data_to_save.get("PWA_WA1_4A")
-            q7 = data_to_save.get("PWA_WA1_4B")
-            q8 = data_to_save.get("PWA_WA1_5A")
-            q9 = data_to_save.get("PWA_WA1_5B")
-            q10 = data_to_save.get("PWA_WA1_6")
-            q11 = data_to_save.get("PWA_WA1_7")
-            q12 = data_to_save.get("PWA_WA1_8")
-            q13 = data_to_save.get("PWA_WA1_9")
-            q14 = data_to_save.get("PWA_WA1_10")
-            q15 = data_to_save.get("PWA_WA1_11")
-
-            if q15:
-                facility_res = OVCFacility.objects.get(id=q15).facility_code
-            else:
-                facility_res = None
-
-            q16 = data_to_save.get("PWA_WA1_12")
-            q17 = data_to_save.get("PWA_WA1_13")
-            q18 = data_to_save.get("PWA_WA1_14")
-            q19 = data_to_save.get("PWA_WA1_15")
-
-            OVCPregnantWomen.objects.filter(preg_id=id).update(
-                date_of_contact=q1,
-                date_test_done2a=q2,
-                test_result2b=q3,
-                date_test_done3a=q4,
-                test_result3b=q5,
-                date_test_done4a=q6,
-                test_result4b=q7,
-                date_test_done5a=q8,
-                test_result5b=q9,
-                anc_date1=q10,
-                anc_date2=q11,
-                anc_date3=q12,
-                anc_date4=q13,
-                mode_of_delivery=q14,
-                facility_code=facility_res,
-                ccc_no=q16,
-                vl_result=q17,
-                vl_test_date=q18,
-                disclosure_done=q19,
-            )
-
-        track = {
-            'PWA_WA1_1': hdata.date_of_contact,
-            'PWA_WA1_2A': hdata.date_test_done2a,
-            'PWA_WA1_2B': hdata.test_result2b,
-            'PWA_WA1_3A': hdata.date_test_done3a,
-            'PWA_WA1_3B': hdata.test_result3b,
-            'PWA_WA1_4A': hdata.date_test_done4a,
-            'PWA_WA1_4B': hdata.test_result4b,
-            'PWA_WA1_5A': hdata.date_test_done5a,
-            'PWA_WA1_5B': hdata.test_result5b,
-            'PWA_WA1_6': hdata.anc_date1,
-            'PWA_WA1_7': hdata.anc_date2,
-            'PWA_WA1_8': hdata.anc_date3,
-            'PWA_WA1_9': hdata.anc_date4,
-            'PWA_WA1_10': hdata.mode_of_delivery,
-            'PWA_WA1_11': hdata.facility_code,
-            'PWA_WA1_12': hdata.ccc_no,
-            'PWA_WA1_13': hdata.vl_result,
-            'PWA_WA1_14': hdata.vl_test_date,
-            'PWA_WA1_15': hdata.disclosure_done,
-
-        }
-        form = PREGNANT_WOMEN_ADOLESCENT(data=track)
-        return render(request, 'forms/edit_pregnantwomen.html', {'form': form, 'status': 200})
+    if request.method == 'POST':
+        data = request.POST
 
-        # Save all details from the Bursary form
-        # pdb.set_trace()
+        date_of_event = timezone.now()
 
+        PMTCTEvents.objects.filter(event=id).update(
+                timestamp_updated=date_of_event,
+                event=id
+        )
+        # get questions for adolescent
+        data_saved = PMTCTPregnantWA.objects.filter(event=id)
+        for question in questions:
+            question_code_q=question.code
+            question_ansr_a=data.get(question.question)
+            if question_ansr_a is None:
+                question_ansr_a = 'No'
+            try:
+                PMTCTPregnantWA.objects.create(
+                    person=RegPerson.objects.get(pk=int(id)),
+                    caregiver=care_giver,
+                    question=question,
+                    question_code=question_code_q,
+                    answer=question_ansr_a,
+                    timestamp_created=date_of_event,
+                    event=pmtctevent,
+                )
+            except Exception as e:
+                error_message = f'PMTCT Pregnant table failed: {e}'
+                print(error_message)
 
-    except Exception as e:
-        msg = 'error'
-        messages.error(request, msg)
+        msg = ' saved successful'
+        messages.add_message(request, messages.INFO, msg)
         url = reverse('ovc_view', kwargs={'id': id})
         return HttpResponseRedirect(url)
 
+    # Get request Method
+    import pdb
+    data_saved = PMTCTPregnantWA.objects.filter(event=id)
+    pdb.set_trace()
+    messages.add_message(request, messages.ERROR, msg)
+    return HttpResponseRedirect(reverse(forms_registry))
+    # get child data
+    init_data = RegPerson.objects.filter(pk=id)
+    check_fields = ['sex_id', 'relationship_type_id']
+    vals = get_dict(field_name=check_fields)
+    ovc_id = int(id)
+    child = RegPerson.objects.get(is_void=False, id=ovc_id)
+
+    form = PREGNANT_WOMEN_ADOLESCENT(initial={'household_id': household_id})
+    # care_giver = RegPerson.objects.get(id=pmtct_registration.objects.get(person=child).caretaker_id)
+    context = {
+              'form': form,
+              'init_data': init_data,
+              'vals': vals,
+              'person': id
+                }
+    return render(request, 'forms/new_pregnantwomen.html', context)
 
-def delete_pregnantwomen(request, id):
-    new_tracker = OVCPregnantWomen.objects.filter(preg_id=id)
-    new_tracker1 = OVCPregnantWomen.objects.get(preg_id=id)
-    new_tracker.update(is_void=True)
-    return redirect('new_pregnantwomen', id=new_tracker1.person_id)
diff --git a/templates/forms/edit_pregnantwomen.html b/templates/forms/edit_pregnantwomen.html
new file mode 100644
index 000000000..aa159ca49
--- /dev/null
+++ b/templates/forms/edit_pregnantwomen.html
@@ -0,0 +1,494 @@
+{% extends 'base.html' %}
+{% load app_filters %}
+{% load static %}
+{% block page_title %} Household Vulnerability Assessment {% endblock %}
+{% block style_code %}
+<link href="{% static 'plugins/parsley/src/parsley.css' %}" rel="stylesheet" />
+<link href="{% static 'plugins/bootstrap-datepicker/css/datepicker3.css' %}" rel="stylesheet" />
+<link href="{% static 'plugins/bootstrap-wizard/css/bwizard.min.css' %}" rel="stylesheet" />
+<link href="{% static 'plugins/bootstrap-multiselect/dist/css/bootstrap-multiselect.css' %}" rel="stylesheet">
+<link href="{% static 'css/jquery.tagit.css' %}" rel="stylesheet">
+<link href="{% static 'css/bootstrap-table.min.css' %}" rel="stylesheet" />
+<style type="text/css">
+.dialog_paragraph {
+  color: #f00;
+}
+
+.table_data {
+  display: none;
+}
+
+.container {
+    width: 100%;
+    overflow-x: auto;
+}
+
+.td_style {
+  /*color: #000000;*/
+  color: #0057e7;
+}
+</style>
+{% endblock %}
+
+{% block javascript_code%}
+{% endblock javascript_code%}
+
+{% block primary %}
+
+<!-- begin breadcrumb -->
+<ol class="breadcrumb pull-right">
+	<li><a href="#">Home</a></li>
+	<li class="active">Forms</li>
+</ol>
+<!-- end breadcrumb -->
+
+<!-- begin page-header -->
+
+{% for data in init_data %}
+
+	<h1 class="page-header">Forms <small>Pregnant Women/Adolescent Monthly Tracker  <b>{{ data.first_name }} {{ data.surname }} | {{ data.sex_id|gen_value:vals }} | {% if data.date_of_birth|gen_age == 0 %}
+                            UNDER 1 YEAR
+                        {% else %}
+                            {{ data.date_of_birth|gen_age }} YRS 
+                        {% endif %}</b></small></h1>
+
+{% endfor %}
+<!-- end page-header -->
+
+<div id="messages" class="alert alert-danger fade in" style="display: none;" tabindex="1">
+    <span class="close" data-dismiss="alert">×</span>
+    <i class="fa fa-info fa-2x pull-left"></i>
+    <span class="invalid-form-message" id="invalid-form-message"></span>
+</div>
+
+<!-- begin row -->
+<div id='case_details' class="row">
+	<!-- begin col-12 -->
+    <div class="col-md-12">
+    	<!-- begin panel -->
+        <div class="panel panel-inverse">
+            <div class="panel-heading">
+                <div class="panel-heading-btn">
+                    <a href="#" class="btn btn-xs btn-icon btn-circle btn-warning" data-click="panel-expand"><i class="fa fa-minus"></i></a>
+                    <a href="#" class="btn btn-xs btn-icon btn-circle btn-default" data-click="panel-collapse"><i class="fa fa-times"></i></a>
+                </div>
+                <h4 class="panel-title"> Pregnant Women/Adolescent Monthly Tracker </h4>
+			</div>
+			<div style="overflow-x: auto; min-height: 300px;">
+		  		<div class="panel-body">
+            		<form class="form-horizontal form-bordered" action="." method="POST" data-parsley-validate="true"
+              		  name="form-wizard-hhva" id="new_hhva">
+                	{% csrf_token %}
+					<div id="wizard-hhva">
+						<ol>
+							<li>
+							    Pregnant Woman Details
+							</li>
+							<li>
+							    Clinic Attendance & mode of delivery
+							</li>
+
+							<li>
+							    HIV Pos Pregnant Women/Adolescents
+							</li>
+						</ol>
+						
+
+						{{ form.person }}
+						{{ form.household_id }}
+						
+
+						<!-- begin wizard step-1 -->
+						<div class="wizard-step-1">
+							<div class="panel-body">
+
+							    <!-- add labels like HA1, HA2 .. -->
+							    <div class="form-group">
+                        <label class="control-label col-md-4 col-sm-4" for="csi_qs">Date of 1st Contact : <span class="asteriskField">* </label>
+						<div class="col-md-2 col-sm-4">
+							{{ form.PMTCT_PWA19q }}
+						</div>
+                    </div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA1: </b>HIV status and test done : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-2">
+										{{ form.PWA_WA1_01 }}
+
+									</div>
+								</div>
+
+                                <div id="01">
+								<div class="form-group" id="test">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA2A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PMTCT_PWA6q }}
+										<h6><span id="sel_hhva_ha22"></span></h6>
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA2B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA7q }}
+									</div>
+								</div>
+                            </div>
+                                <div id="1">
+
+								<div class="form-group" >
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PMTCT_PWA8q }}
+{#										<h6><span id="sel_hhva_ha22"></span></h6>#}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA9q }}
+									</div>
+								</div>
+                                </div>
+                                <div id="2">
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PMTCT_PWA10q }}
+{#										<h6><span id="sel_hhva_ha22"></span></h6>#}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA11q }}
+									</div>
+								</div>
+                                </div>
+                                <div id="3">
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5A: </b>HIV test done: <span class="asteriskField">* </label>
+									<div class="col-md-2 col-sm-4">
+										{{ form.PMTCT_PWA12q }}
+{#										<h6><span id="sel_hhva_ha22"></span></h6>#}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5B: </b>HIV test results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA13q }}
+									</div>
+								</div>
+                                </div>
+
+							</div>
+						</div>
+						<!-- end wizard step-1 -->  
+
+						<!-- begin wizard step-2 -->
+						<div class="wizard-step-2">
+							<div class="panel-body">
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA6: </b>Date attended 1st ANC visit : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA1q }}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA7: </b>Date Attended 2nd ANC visit? : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA2q }}
+										<br>
+{#										<h6><span id="sel_hhva_ha6"></span></h6>#}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA8: </b>Date Attended 3rd ANC visit? : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA3q }}
+									</div>
+								</div>
+
+								<div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA9: </b>Date Attended 4th ANC visit? : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA4q }}
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA10: </b>Mode of delivery : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA5q }}
+									</div>
+								</div>
+
+							</div> 							
+						</div> 
+						<!-- end wizard step-2 -->
+
+						<!-- begin wizard step-7 -->
+						<div class="wizard-step-7">
+							<div class="panel-body"> 
+								<div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA11: </b>Name of Health Facility linked : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+                                         {{ form.PMTCT_PWA14q }}
+{#                                        <input type="text" class="form-control" name="facility_field" id="facility_field" placeholder="Search for facility here">#}
+{#                                        <input type="hidden" name="PWA_WA1_11" id="PWA_WA1_11">#}
+									</div>
+
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA12: </b>CCC Number : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA15q }}
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA13: </b>Latest VL results : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA16q }}
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA14: </b>VL test date : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA17q }}
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
+									</div>
+								</div>
+
+                                <div class="form-group">
+									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA15: </b>Disclosure done to family member : <span class="asteriskField">* </label>
+									<div class="col-md-4 col-sm-4">
+										{{ form.PMTCT_PWA18q }}
+{#										<h6><span id="sel_hhva_ha28"></span></h6>#}
+									</div>
+								</div>
+							</div>
+						</div> 
+
+					</div>
+				</div>
+                <div class="panel-body panel-form" id="submit_section" >
+                        <div class="form-group">
+                            <label class="control-label col-md-4 col-sm-4"></label>
+                            <div class="col-md-6 col-sm-6">
+                                <button id="mysubmit-hivscreeningtool" type="submit"
+                                    class="btn btn-primary">Submit</button>
+                                <a href="javascript:history.go(-1)" class="btn btn-white">Cancel</a>
+                            </div>
+                        </div>
+                    </div>
+            <div class="badge pull-right m-4">Revised: 1st July 2019</div>
+
+				</form>
+            </div>
+        </div>
+        <!-- end panel -->
+
+    </div>
+    <!-- end col-12 -->
+
+</div>
+<div class="row">
+    <!-- begin col-12 -->
+    <div class="col-md-12">
+        <!-- begin panel -->
+        <div class="panel panel-info">
+            <div class="panel-heading">
+                <div class="panel-heading-btn">
+                    <a href="javascript:;" class="btn btn-xs btn-icon btn-circle btn-default" data-click="panel-expand"><i class="fa fa-expand"></i></a>
+                    <a href="javascript:;" class="btn btn-xs btn-icon btn-circle btn-warning" data-click="panel-collapse"><i class="fa fa-minus"></i></a>
+                </div>
+                <h4 class="panel-title"><b>Evaluation Events List </b></h4>
+            </div>
+
+            <div class="panel-body">
+                <div  class="panel panel-inverse">
+                    <div id="case-events"  class="table-responsive">
+                        <table class="table" border="1" id="past-hst">
+                            <thead>
+                            <tr>
+                            <th colspan="9">Pregnant Woman Details</th>
+                            <th colspan="5">Clinic Attendance & mode of delivery</th>
+                            <th colspan="5">HIV Pos Pregnant Women/Adolescents</th>
+
+                            </tr>
+
+                                  <tr>
+                                        <th>Q 1</th>
+                                        <th>Q 2A</th>
+                                        <th>Q 2B</th>
+                                        <th>Q 3A</th>
+                                        <th>Q 3B</th>
+                                        <th>Q 4A</th>
+                                        <th>Q 4B</th>
+                                        <th>Q 5A</th>
+                                        <th>Q 5B</th>
+                                        <th>Q 1</th>
+                                        <th>Q 2</th>
+                                        <th>Q 3</th>
+                                        <th>Q 4</th>
+                                        <th>Q 5</th>
+                                        <th>Q 1</th>
+                                        <th>Q 2</th>
+                                        <th>Q 3</th>
+                                        <th>Q 4</th>
+                                        <th>Q 5</th>
+                                      <th> ACTIONS</th>
+
+                                  </tr>
+                                </thead>
+                    {% if pwa_women  %}
+
+                    {% for one_screening_data in pwa_women  %}
+
+                        <tr>
+                          <td>{{one_screening_data.date_of_contact}}</td>
+                          <td>{{one_screening_data.date_test_done2a}}</td>
+                          <td>{{one_screening_data.test_result2b}}</td>
+                          <td>{{one_screening_data.date_test_done3a}}</td>
+                          <td>{{one_screening_data.test_result3b}}</td>
+                          <td>{{one_screening_data.date_test_done4a}}</td>
+                          <td>{{one_screening_data.test_result4b}}</td>
+                          <td>{{one_screening_data.date_test_done5a}}</td>
+                          <td>{{one_screening_data.test_result5b}}</td>
+                          <td>{{one_screening_data.anc_date1}}</td>
+                          <td>{{one_screening_data.anc_date2}}</td>
+                          <td>{{one_screening_data.anc_date3}}</td>
+                          <td>{{one_screening_data.anc_date4}}</td>
+                          <td>{{one_screening_data.mode_of_delivery}}</td>
+                          <td>{{one_screening_data.facility_code}}</td>
+                          <td>{{one_screening_data.ccc_no}}</td>
+                          <td>{{one_screening_data.vl_result}}</td>
+                          <td>{{one_screening_data.vl_test_date}}</td>
+                          <td>{{one_screening_data.disclosure_done}}</td>
+{#                            <td>#}
+{#                                 <a href="{% url 'pregnantwomen' one_screening_data.preg_id%}"><button type="button" class="btn btn-sm btn-primary m-r-5"><i class="fa fa-pencil"></i>&nbsp;Edit</button></a>#}
+{#                              <a href="{% url 'delete_pregnantwomen' one_screening_data.preg_id%}"><button type="button" class="btn btn-sm btn-danger m-r-5"><i class="fa fa-trash"></i>&nbsp;Delete</button></a>#}
+{#                            </td>#}
+                        </tr>
+                    {% endfor %}
+                    {% else %}
+                    <div>
+                        <h3>No data available</h3>
+                    </div>
+                    {% endif %}
+                </table>
+                    </div>
+                    <br><br>
+                </div>
+            </div>
+
+        </div>
+        <!-- end panel -->
+    </div>
+    <!-- end col-12 -->
+</div>
+<!-- end row -->
+{#    end row#}
+
+{% endblock %}
+
+{% block lazy_javascript_code %}
+<script src="{% static 'plugins/parsley/dist/parsley.js' %}"></script>
+<script src="{% static 'plugins/bootstrap-wizard/js/bwizard.js' %}"></script>	
+<script src="{% static 'plugins/bootstrap-multiselect/dist/js/bootstrap-multiselect.js' %}"></script>
+<script src="{% static 'js/apps.js' %}"></script>
+<script src="{% static 'js/form-wizards.js' %}"></script>
+<script src="{% static 'js/tag-it.js' %}"></script>
+<script src="{% static 'js/bootstrap-table.min.js' %}"></script>
+<script src="{% static 'js/bootstrap-table-locale-all.min.js' %}"></script>
+<script>
+jQuery(document).ready(function()
+{
+	//multi selects
+    $('#hhva_ha6, #hhva_ha21, #hhva_ha22, #hhva_ha28, #hhva_ha29, #hhva_ha30, #hhva_ha31').multiselect({
+        selectAllValue: 'multiselect-all',
+        includeSelectAllOption: true,
+        enableCaseInsensitiveFiltering: true,
+        numberDisplayed: 1,
+        maxHeight: 300,
+        buttonWidth: '100%',
+		buttonClass: 'btn btn-white',
+		nonSelectedText: 'Please Select'
+    });
+
+	$('html,body').scrollTop(0);
+	FormWizardValidation.init();
+});
+</script>
+
+<script>
+$("#PMTCT_PWA19q ").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA6q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA8q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA10q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA12q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PWA_WA1_1").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA1q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA2q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA3q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA4q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA17q").datepicker({ format: 'yyyy-mm-dd' }).val();
+{#$( "#facility_field" ).autocomplete({#}
+{#    source: function( request, response ) {#}
+{#    $.ajax({#}
+{#        url: "{% url 'ovc_search' %}",#}
+{#        dataType: "json",#}
+{#        data: {q: request.term, id: 1},#}
+{#        success: function( data ) {#}
+{#            response( data );#}
+{#        }#}
+{#        });#}
+{#    },#}
+{#    minLength: 4,#}
+{##}
+{#    select: function( event, ui ) {#}
+{#        $('#facility_field').val(ui.item.name);#}
+{#        $('#PWA_WA1_11').val(ui.item.id);#}
+{#    },#}
+{#    open: function() {#}
+{#        $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );#}
+{#    },#}
+{#    close: function() {#}
+{#        $( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" );#}
+{#    }#}
+{#});#}
+
+$("#01, #1, #2, #3").hide()
+$(function(){
+   $("input[name='PWA_WA1_01']").on('change', function () {
+          var ival = $("input[name='PWA_WA1_01']:checked").val();
+          if (ival == 'contact') {
+               $("#01").show()
+               $("#1, #2, #3").hide()
+          }else if(ival == 'tri'){
+               $("#1").show()
+               $("#01, #2, #3").hide()
+          }else if(ival == '3rd'){
+               $("#2").show()
+               $("#01, #1, #3").hide()
+          }else if(ival == '4th'){
+               $("#3").show()
+               $("#01, #1, #2").hide()
+          }
+
+      });
+})
+
+</script>
+{% endblock %}
\ No newline at end of file
diff --git a/templates/forms/new_pregnantwomen.html b/templates/forms/new_pregnantwomen.html
index c84b3bed5..069b6d879 100644
--- a/templates/forms/new_pregnantwomen.html
+++ b/templates/forms/new_pregnantwomen.html
@@ -1,7 +1,7 @@
 {% extends 'base.html' %}
 {% load app_filters %}
 {% load static %}
-{% block page_title %} Household Vulnerability Assessment {% endblock %}
+{% block page_title %} Pregnant Women/Adolescent Monthly Tracker {% endblock %}
 {% block style_code %}
 <link href="{% static 'plugins/parsley/src/parsley.css' %}" rel="stylesheet" />
 <link href="{% static 'plugins/bootstrap-datepicker/css/datepicker3.css' %}" rel="stylesheet" />
@@ -106,7 +106,7 @@ <h4 class="panel-title"> Pregnant Women/Adolescent Monthly Tracker </h4>
 							    <div class="form-group">
                         <label class="control-label col-md-4 col-sm-4" for="csi_qs">Date of 1st Contact : <span class="asteriskField">* </label>
 						<div class="col-md-2 col-sm-4">
-							{{ form.PWA_WA1_1 }}
+							{{ form.PMTCT_PWA19q }}
 						</div>
                     </div>
 
@@ -122,7 +122,7 @@ <h4 class="panel-title"> Pregnant Women/Adolescent Monthly Tracker </h4>
 								<div class="form-group" id="test">
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA2A: </b>HIV test done: <span class="asteriskField">* </label>
 									<div class="col-md-2 col-sm-4">
-										{{ form.PWA_WA1_2A }}
+										{{ form.PMTCT_PWA6q }}
 										<h6><span id="sel_hhva_ha22"></span></h6>
 									</div>
 								</div>
@@ -130,59 +130,59 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 								<div class="form-group">
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA2B: </b>HIV test results : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_2B }}
+										{{ form.PMTCT_PWA7q }}
 									</div>
 								</div>
                             </div>
-                                <div id="1">
-
-								<div class="form-group" >
-									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3A: </b>HIV test done: <span class="asteriskField">* </label>
-									<div class="col-md-2 col-sm-4">
-										{{ form.PWA_WA1_3A }}
+{#                                <div id="1">#}
+{##}
+{#								<div class="form-group" >#}
+{#									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3A: </b>HIV test done: <span class="asteriskField">* </label>#}
+{#									<div class="col-md-2 col-sm-4">#}
+{#										{{ form.PWA_WA1_3A }}#}
 {#										<h6><span id="sel_hhva_ha22"></span></h6>#}
-									</div>
-								</div>
-
-								<div class="form-group">
-									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3B: </b>HIV test results : <span class="asteriskField">* </label>
-									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_3B }}
-									</div>
-								</div>
-                                </div>
-                                <div id="2">
-                                <div class="form-group">
-									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4A: </b>HIV test done: <span class="asteriskField">* </label>
-									<div class="col-md-2 col-sm-4">
-										{{ form.PWA_WA1_4A }}
+{#									</div>#}
+{#								</div>#}
+{##}
+{#								<div class="form-group">#}
+{#									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA3B: </b>HIV test results : <span class="asteriskField">* </label>#}
+{#									<div class="col-md-4 col-sm-4">#}
+{#										{{ form.PWA_WA1_3B }}#}
+{#									</div>#}
+{#								</div>#}
+{#                                </div>#}
+{#                                <div id="2">#}
+{#                                <div class="form-group">#}
+{#									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4A: </b>HIV test done: <span class="asteriskField">* </label>#}
+{#									<div class="col-md-2 col-sm-4">#}
+{#										{{ form.PWA_WA1_4A }}#}
 {#										<h6><span id="sel_hhva_ha22"></span></h6>#}
-									</div>
-								</div>
-
-								<div class="form-group">
-									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4B: </b>HIV test results : <span class="asteriskField">* </label>
-									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_4B }}
-									</div>
-								</div>
-                                </div>
-                                <div id="3">
-                                <div class="form-group">
-									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5A: </b>HIV test done: <span class="asteriskField">* </label>
-									<div class="col-md-2 col-sm-4">
-										{{ form.PWA_WA1_5A }}
+{#									</div>#}
+{#								</div>#}
+{##}
+{#								<div class="form-group">#}
+{#									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA4B: </b>HIV test results : <span class="asteriskField">* </label>#}
+{#									<div class="col-md-4 col-sm-4">#}
+{#										{{ form.PWA_WA1_4B }}#}
+{#									</div>#}
+{#								</div>#}
+{#                                </div>#}
+{#                                <div id="3">#}
+{#                                <div class="form-group">#}
+{#									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5A: </b>HIV test done: <span class="asteriskField">* </label>#}
+{#									<div class="col-md-2 col-sm-4">#}
+{#										{{ form.PWA_WA1_5A }}#}
 {#										<h6><span id="sel_hhva_ha22"></span></h6>#}
-									</div>
-								</div>
-
-								<div class="form-group">
-									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5B: </b>HIV test results : <span class="asteriskField">* </label>
-									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_5B }}
-									</div>
-								</div>
-                                </div>
+{#									</div>#}
+{#								</div>#}
+{##}
+{#								<div class="form-group">#}
+{#									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA5B: </b>HIV test results : <span class="asteriskField">* </label>#}
+{#									<div class="col-md-4 col-sm-4">#}
+{#										{{ form.PWA_WA1_5B }}#}
+{#									</div>#}
+{#								</div>#}
+{#                                </div>#}
 
 							</div>
 						</div>
@@ -195,14 +195,14 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 								<div class="form-group">
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA6: </b>Date attended 1st ANC visit : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_6 }}
+										{{ form.PMTCT_PWA1q }}
 									</div>
 								</div>
 
 								<div class="form-group">
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA7: </b>Date Attended 2nd ANC visit? : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_7 }}
+										{{ form.PMTCT_PWA2q }}
 										<br>
 {#										<h6><span id="sel_hhva_ha6"></span></h6>#}
 									</div>
@@ -211,21 +211,21 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 								<div class="form-group">
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA8: </b>Date Attended 3rd ANC visit? : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_8 }}
+										{{ form.PMTCT_PWA3q }}
 									</div>
 								</div>
 
 								<div class="form-group">
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA9: </b>Date Attended 4th ANC visit? : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_9 }}
+										{{ form.PMTCT_PWA4q }}
 									</div>
 								</div>
 
                                 <div class="form-group">
 									<label class="control-label col-md-4 col-sm-4" for="hhva_qs"><b>WA10: </b>Mode of delivery : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_10 }}
+										{{ form.PMTCT_PWA5q }}
 									</div>
 								</div>
 
@@ -239,9 +239,9 @@ <h6><span id="sel_hhva_ha22"></span></h6>
 								<div class="form-group">
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA11: </b>Name of Health Facility linked : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-                                        <!-- {{ form.PWA_WA1_11 }} -->
+{#                                        {{ form.PWA_WA1_11 }} #}
                                         <input type="text" class="form-control" name="facility_field" id="facility_field" placeholder="Search for facility here">
-                                        <input type="hidden" name="PWA_WA1_21" id="PWA_WA1_21">
+                                        <input type="hidden" name="PMTCT_PWA14q" id="PMTCT_PWA14q">
 									</div>
 
 								</div>
@@ -249,7 +249,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
                                 <div class="form-group">
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA12: </b>CCC Number : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_12 }}
+										{{ form.PMTCT_PWA15q }}
 {#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
@@ -257,7 +257,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
                                 <div class="form-group">
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA13: </b>Latest VL results : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_13 }}
+										{{ form.PMTCT_PWA16q }}
 {#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
@@ -265,7 +265,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
                                 <div class="form-group">
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA14: </b>VL test date : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_14 }}
+										{{ form.PMTCT_PWA17q }}
 {#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
@@ -273,7 +273,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
                                 <div class="form-group">
 									<label class="control-label col-md-3 col-sm-3" for="hhva_qs"><b>WA15: </b>Disclosure done to family member : <span class="asteriskField">* </label>
 									<div class="col-md-4 col-sm-4">
-										{{ form.PWA_WA1_15 }}
+										{{ form.PMTCT_PWA18q }}
 {#										<h6><span id="sel_hhva_ha28"></span></h6>#}
 									</div>
 								</div>
@@ -313,7 +313,7 @@ <h6><span id="sel_hhva_ha22"></span></h6>
                     <a href="javascript:;" class="btn btn-xs btn-icon btn-circle btn-default" data-click="panel-expand"><i class="fa fa-expand"></i></a>
                     <a href="javascript:;" class="btn btn-xs btn-icon btn-circle btn-warning" data-click="panel-collapse"><i class="fa fa-minus"></i></a>
                 </div>
-                <h4 class="panel-title"><b>Evaluation Events List </b></h4>
+                <h4 class="panel-title"><b>Pregnant Women/Adolescent Tracker </b></h4>
             </div>
 
             <div class="panel-body">
@@ -352,36 +352,39 @@ <h4 class="panel-title"><b>Evaluation Events List </b></h4>
 
                                   </tr>
                                 </thead>
-                    {% if pwa_women  %}
+                    {% if data_get  %}
+
 
-                    {% for one_screening_data in pwa_women  %}
 
                         <tr>
-                          <td>{{one_screening_data.date_of_contact}}</td>
-                          <td>{{one_screening_data.date_test_done2a}}</td>
-                          <td>{{one_screening_data.test_result2b}}</td>
-                          <td>{{one_screening_data.date_test_done3a}}</td>
-                          <td>{{one_screening_data.test_result3b}}</td>
-                          <td>{{one_screening_data.date_test_done4a}}</td>
-                          <td>{{one_screening_data.test_result4b}}</td>
-                          <td>{{one_screening_data.date_test_done5a}}</td>
-                          <td>{{one_screening_data.test_result5b}}</td>
-                          <td>{{one_screening_data.anc_date1}}</td>
-                          <td>{{one_screening_data.anc_date2}}</td>
-                          <td>{{one_screening_data.anc_date3}}</td>
-                          <td>{{one_screening_data.anc_date4}}</td>
-                          <td>{{one_screening_data.mode_of_delivery}}</td>
-                          <td>{{one_screening_data.facility_code}}</td>
-                          <td>{{one_screening_data.ccc_no}}</td>
-                          <td>{{one_screening_data.vl_result}}</td>
-                          <td>{{one_screening_data.vl_test_date}}</td>
-                          <td>{{one_screening_data.disclosure_done}}</td>
-                            <td>
-                                 <a href="{% url 'pregnantwomen' one_screening_data.preg_id%}"><button type="button" class="btn btn-sm btn-primary m-r-5"><i class="fa fa-pencil"></i>&nbsp;Edit</button></a>
-                              <a href="{% url 'delete_pregnantwomen' one_screening_data.preg_id%}"><button type="button" class="btn btn-sm btn-danger m-r-5"><i class="fa fa-trash"></i>&nbsp;Delete</button></a>
+                             {% for k, v in data_get.items  %}
+                                    <td>{{ v }}</td>
+            {#                          <td>{{ one_screening_data['PMTCT_PWA2q'] }}</td>#}
+            {#                          <td>{{one_screening_data['PMTCT_PWA3q']}}</td>#}
+            {#                          <td>{{one_screening_data.date_test_done3a}}</td>#}
+            {#                          <td>{{one_screening_data.test_result3b}}</td>#}
+            {#                          <td>{{one_screening_data.date_test_done4a}}</td>#}
+            {#                          <td>{{one_screening_data.test_result4b}}</td>#}
+            {#                          <td>{{one_screening_data.date_test_done5a}}</td>#}
+            {#                          <td>{{one_screening_data.test_result5b}}</td>#}
+            {#                          <td>{{one_screening_data.anc_date1}}</td>#}
+            {#                          <td>{{one_screening_data.anc_date2}}</td>#}
+            {#                          <td>{{one_screening_data.anc_date3}}</td>#}
+            {#                          <td>{{one_screening_data.anc_date4}}</td>#}
+            {#                          <td>{{one_screening_data.mode_of_delivery}}</td>#}
+            {#                          <td>{{one_screening_data.facility_code}}</td>#}
+            {#                          <td>{{one_screening_data.ccc_no}}</td>#}
+            {#                          <td>{{one_screening_data.vl_result}}</td>#}
+            {#                          <td>{{one_screening_data.vl_test_date}}</td>#}
+            {#                          <td>{{one_screening_data.disclosure_done}}</td>#}
+
+
+                    {% endfor %}
+                                  <td>
+                                 <a href="#"><button type="button" class="btn btn-sm btn-primary m-r-5"><i class="fa fa-pencil"></i>&nbsp;Edit</button></a>
+                              <a href="#"><button type="button" class="btn btn-sm btn-danger m-r-5"><i class="fa fa-trash"></i>&nbsp;Delete</button></a>
                             </td>
                         </tr>
-                    {% endfor %}
                     {% else %}
                     <div>
                         <h3>No data available</h3>
@@ -433,17 +436,17 @@ <h3>No data available</h3>
 </script>
 
 <script>
-$("#PWA_WA1_1 ").datepicker({ format: 'yyyy-mm-dd' }).val();
-$("#PWA_WA1_2A").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA19q ").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA6q").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_3A").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_4A").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_5A").datepicker({ format: 'yyyy-mm-dd' }).val();
 $("#PWA_WA1_1").datepicker({ format: 'yyyy-mm-dd' }).val();
-$("#PWA_WA1_6").datepicker({ format: 'yyyy-mm-dd' }).val();
-$("#PWA_WA1_7").datepicker({ format: 'yyyy-mm-dd' }).val();
-$("#PWA_WA1_8").datepicker({ format: 'yyyy-mm-dd' }).val();
-$("#PWA_WA1_9").datepicker({ format: 'yyyy-mm-dd' }).val();
-$("#PWA_WA1_14").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA1q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA2q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA3q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA4q").datepicker({ format: 'yyyy-mm-dd' }).val();
+$("#PMTCT_PWA17q").datepicker({ format: 'yyyy-mm-dd' }).val();
 $( "#facility_field" ).autocomplete({
     source: function( request, response ) {
     $.ajax({
@@ -458,7 +461,7 @@ <h3>No data available</h3>
     minLength: 4,
     select: function( event, ui ) {
         $('#facility_field').val(ui.item.name);
-        $('#PWA_WA1_21').val(ui.item.id);
+        $('#PMTCT_PWA14q').val(ui.item.id);
     },
     open: function() {
         $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );
@@ -468,26 +471,26 @@ <h3>No data available</h3>
     }
 });
 
-$("#01, #1, #2, #3").hide()
-$(function(){
-   $("input[name='PWA_WA1_01']").on('change', function () {
-          var ival = $("input[name='PWA_WA1_01']:checked").val();
-          if (ival == 'contact') {
-               $("#01").show()
-               $("#1, #2, #3").hide()
-          }else if(ival == 'tri'){
-               $("#1").show()
-               $("#01, #2, #3").hide()
-          }else if(ival == '3rd'){
-               $("#2").show()
-               $("#01, #1, #3").hide()
-          }else if(ival == '4th'){
-               $("#3").show()
-               $("#01, #1, #2").hide()
-          }
-
-      });
-})
+{#$("#01, #1, #2, #3").hide()#}
+{#$(function(){#}
+{#   $("input[name='PWA_WA1_01']").on('change', function () {#}
+{#          var ival = $("input[name='PWA_WA1_01']:checked").val();#}
+{#          if (ival == 'contact') {#}
+{#               $("#01").show()#}
+{#               $("#1, #2, #3").hide()#}
+{#          }else if(ival == 'tri'){#}
+{#               $("#1").show()#}
+{#               $("#01, #2, #3").hide()#}
+{#          }else if(ival == '3rd'){#}
+{#               $("#2").show()#}
+{#               $("#01, #1, #3").hide()#}
+{#          }else if(ival == '4th'){#}
+{#               $("#3").show()#}
+{#               $("#01, #1, #2").hide()#}
+{#          }#}
+{##}
+{#      });#}
+{#})#}
 
 </script>
 {% endblock %}
\ No newline at end of file

From 5b3cd74273c6c2dfa41d89d21a06f10b11623bcf Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Sat, 7 May 2022 10:09:11 +0300
Subject: [PATCH 8/9] fix on save

---
 cpovc_forms/views.py | 91 +++++++-------------------------------------
 1 file changed, 14 insertions(+), 77 deletions(-)

diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index c63e7ebd9..f23e43600 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -10055,7 +10055,6 @@ def new_pregnantwomen(request, id):
         return HttpResponseRedirect(url)
 
     # Get request Method
-    import pdb
     try:
         ovcreg = get_object_or_404(OVCRegistration, person_id=id, is_void=False)
         caretaker_id = ovcreg.caretaker_id if ovcreg else None
@@ -10071,88 +10070,26 @@ def new_pregnantwomen(request, id):
     check_fields = ['sex_id', 'relationship_type_id']
     vals = get_dict(field_name=check_fields)
     ovc_id = int(id)
-    # Past Data
-    past_data = PMTCTPregnantWA.objects.filter(person=id, is_void=False).values()
-    questions = PMTCTQuestions.objects.filter(code__startswith='PWA', is_void=False).values()
-    code_question = {}
-    for question in questions:
-        code_question[question['code']]=question['question']
-    data_get = {}
-    for one_past_data in past_data:
-        one_past_data_q=one_past_data['question_code']
-        one_past_data_a = one_past_data['answer']
-
-        data_get[code_question[one_past_data_q]]=one_past_data_a
-
-    # pdb.set_trace()
-    print(data_get)
-    form = PREGNANT_WOMEN_ADOLESCENT()
-    # care_giver = RegPerson.objects.get(id=pmtct_registration.objects.get(person=child).caretaker_id)
-    context = {
-              'form': form,
-              'init_data': init_data,
-              'vals': vals,
-              'person': id,
-              'data_get':data_get
-                }
-    return render(request, 'forms/new_pregnantwomen.html', context)
 
-def edit_pregnantwomen(request, id):
-    if request.method == 'POST':
-        data = request.POST
+    event=PMTCTEvents.objects.filter(person_id=id).values_list('event')
+    data_test = PMTCTPregnantWA.objects.filter(event_id__in=event, is_void=False).values('event_id').distinct()
+    data_get = []
+    data_dict=[]
+    for b in range(len(data_test)):
+        data_get.append([])
+        for n in range(len(data_test)):
+            data_array = PMTCTPregnantWA.objects.filter(event_id__in=event, is_void=False, event_id=data_test[b]['event_id'])
+            for one_pwa in data_array:
+                data_get[b].append((one_pwa.question_code, one_pwa.answer))
+        data_dict.append(dict(data_get[b]))
 
-        date_of_event = timezone.now()
 
-        PMTCTEvents.objects.filter(event=id).update(
-                timestamp_updated=date_of_event,
-                event=id
-        )
-        # get questions for adolescent
-        data_saved = PMTCTPregnantWA.objects.filter(event=id)
-        for question in questions:
-            question_code_q=question.code
-            question_ansr_a=data.get(question.question)
-            if question_ansr_a is None:
-                question_ansr_a = 'No'
-            try:
-                PMTCTPregnantWA.objects.create(
-                    person=RegPerson.objects.get(pk=int(id)),
-                    caregiver=care_giver,
-                    question=question,
-                    question_code=question_code_q,
-                    answer=question_ansr_a,
-                    timestamp_created=date_of_event,
-                    event=pmtctevent,
-                )
-            except Exception as e:
-                error_message = f'PMTCT Pregnant table failed: {e}'
-                print(error_message)
-
-        msg = ' saved successful'
-        messages.add_message(request, messages.INFO, msg)
-        url = reverse('ovc_view', kwargs={'id': id})
-        return HttpResponseRedirect(url)
-
-    # Get request Method
-    import pdb
-    data_saved = PMTCTPregnantWA.objects.filter(event=id)
-    pdb.set_trace()
-    messages.add_message(request, messages.ERROR, msg)
-    return HttpResponseRedirect(reverse(forms_registry))
-    # get child data
-    init_data = RegPerson.objects.filter(pk=id)
-    check_fields = ['sex_id', 'relationship_type_id']
-    vals = get_dict(field_name=check_fields)
-    ovc_id = int(id)
-    child = RegPerson.objects.get(is_void=False, id=ovc_id)
-
-    form = PREGNANT_WOMEN_ADOLESCENT(initial={'household_id': household_id})
-    # care_giver = RegPerson.objects.get(id=pmtct_registration.objects.get(person=child).caretaker_id)
+    form = PREGNANT_WOMEN_ADOLESCENT()
     context = {
               'form': form,
               'init_data': init_data,
               'vals': vals,
-              'person': id
+              'person': id,
+              'data_get':data_dict
                 }
     return render(request, 'forms/new_pregnantwomen.html', context)
-

From 4fa1b4cc233b48e31732eddebaa5e62c6c7e0791 Mon Sep 17 00:00:00 2001
From: faithchep <faithchepkoech40@gmail.com>
Date: Sat, 7 May 2022 15:47:55 +0300
Subject: [PATCH 9/9] fix changes in pregnantwomen

---
 cpovc_forms/models.py                  | 162 +++++++++++++++++++++++--
 cpovc_forms/views.py                   | 136 ++++++++++++++++++++-
 templates/forms/new_pregnantwomen.html |  70 ++++-------
 3 files changed, 314 insertions(+), 54 deletions(-)

diff --git a/cpovc_forms/models.py b/cpovc_forms/models.py
index 1a0fc314b..915b4dcf5 100644
--- a/cpovc_forms/models.py
+++ b/cpovc_forms/models.py
@@ -1334,13 +1334,13 @@ def __unicode__(self):
 class OvcCasePersons(models.Model):
     pid = models.UUIDField(
         primary_key=True, default=uuid.uuid1, editable=False)
-    # person_category = models.CharField(max_length=5, default='PERP')
+    person_category = models.CharField(max_length=5, default='PERP')
     person_relation = models.CharField(max_length=5, null=True)
     person_first_name = models.CharField(max_length=100, null=True)
     person_other_names = models.CharField(max_length=100, null=True)
     person_surname = models.CharField(max_length=100, null=True)
     person_type = models.CharField(max_length=5, default='PERP')
-    person_identifier = models.CharField(max_length=15, null=True)
+    # person_identifier = models.CharField(max_length=15, null=True)
     person_dob = models.DateField(null=True)
     person_sex = models.CharField(
         max_length=4, null=True,
@@ -1351,12 +1351,12 @@ class OvcCasePersons(models.Model):
 
     class Meta:
         db_table = 'ovc_case_other_person'
-        verbose_name = 'Case Other Person'
-        verbose_name_plural = 'Case Other Persons'
-
-    def __unicode__(self):
-        """To be returned by admin actions."""
-        return '%s %s' % (self.person_first_name, self.person_surname)
+    #     verbose_name = 'Case Other Person'
+    #     verbose_name_plural = 'Case Other Persons'
+    #
+    # def __unicode__(self):
+    #     """To be returned by admin actions."""
+    #     return '%s %s' % (self.person_first_name, self.person_surname)
 
 
 class OvcCaseInformation(models.Model):
@@ -1400,3 +1400,149 @@ class Meta:
     def __unicode__(self):
         """To be returned by admin actions."""
         return '%s' % (str(self.case))
+
+#Pregnant Women/Adolesctent Monthly Tracker
+
+class OVCPregnantWomen(models.Model):
+    preg_id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
+    person = models.ForeignKey(RegPerson, on_delete=models.CASCADE)
+    date_of_contact = models.DateField(default=timezone.now, blank=True, null=True)
+    date_test_done2a = models.DateField(blank=True, null=True)
+    test_result2b=models.BooleanField(null=True)
+    date_test_done3a = models.DateField(blank=True, null=True)
+    test_result3b=models.BooleanField(null=True)
+    date_test_done4a = models.DateField(blank=True, null=True)
+    test_result4b=models.BooleanField(null=True)
+    date_test_done5a = models.DateField(blank=True, null=True)
+    test_result5b=models.BooleanField(null=True)
+    anc_date1 = models.DateField(default=timezone.now, blank=True, null=True)
+    anc_date2 = models.DateField(default=timezone.now, blank=True, null=True)
+    anc_date3 = models.DateField(default=timezone.now, blank=True, null=True)
+    anc_date4 = models.DateField(default=timezone.now, blank=True, null=True)
+    mode_of_delivery= models.BooleanField(null=True)
+    facility_code = models.CharField(max_length=10, null=True)
+    ccc_no= models.IntegerField(null=True)
+    vl_result= models.IntegerField(null=True)
+    vl_test_date=models.DateField(default=timezone.now, blank=True, null=True) ###date new 1
+    disclosure_done= models.BooleanField(null=True)
+    event = models.ForeignKey(OVCCareEvents, on_delete=models.CASCADE)
+    is_void = models.BooleanField(default=False)
+    date_of_event = models.DateField(default=timezone.now, blank=True, null=True)### date
+    timestamp_created = models.DateTimeField(auto_now_add=True)
+    timestamp_updated = models.DateTimeField(auto_now=True)
+
+    class Meta:
+        db_table = 'ovc_pregnant_women'
+    def __unicode__(self):
+        return str(self.tracker_id)
+
+#PMTCT EVENTS
+class PMTCTEvents(models.Model):
+    event = models.UUIDField(primary_key=True, default=uuid.uuid1, editable=False)
+    event_type_id = models.CharField(max_length=10)
+    event_counter = models.IntegerField(default=0)
+    event_score = models.IntegerField(null=True, default=0)
+    date_of_event = models.DateField(default=timezone.now)
+    created_by = models.IntegerField(null=True, default=404)
+    timestamp_created = models.DateTimeField(default=timezone.now)
+    is_void = models.BooleanField(default=False)
+    sync_id = models.UUIDField(default=uuid.uuid1, editable=False)
+    app_user = models.ForeignKey(AppUser, default=1, on_delete=models.CASCADE)
+    person = models.ForeignKey(RegPerson, null=True, on_delete=models.CASCADE)
+
+    class Meta:
+        db_table = 'pmtct_events'
+
+
+class OVCPreventiveEvents(models.Model):
+   event = models.UUIDField(primary_key=True, default=uuid.uuid1, editable=False)
+   event_type_id = models.CharField(max_length=10)
+   event_counter = models.IntegerField(default=0)
+   event_score = models.IntegerField(null=True, default=0)
+   date_of_event = models.DateField(default=timezone.now)
+   date_of_previous_event = models.DateTimeField(null=True)
+   created_by = models.IntegerField(null=True, default=404)
+   timestamp_created = models.DateTimeField(default=timezone.now)
+   is_void = models.BooleanField(default=False)
+   sync_id = models.UUIDField(default=uuid.uuid1, editable=False)
+   app_user = models.ForeignKey(AppUser, default=1, on_delete=models.CASCADE)
+   person = models.ForeignKey(RegPerson, null=True, on_delete=models.CASCADE)
+   house_hold = models.ForeignKey(OVCHouseHold, null=True, on_delete=models.CASCADE)
+
+   class Meta:
+       db_table = 'ovc_preventive_events'
+
+# PMTCTQuestions
+class PMTCTQuestions(models.Model):
+    question_id = models.UUIDField(primary_key=True, default=uuid.uuid1, editable=False)
+    code = models.CharField(max_length=20)
+    question = models.CharField(max_length=55)
+    domain = models.CharField(max_length=10)
+    question_text = models.CharField(max_length=255)
+    question_type = models.CharField(max_length=20, null=False)
+    form = models.ForeignKey(OVCCareForms, on_delete=models.CASCADE)
+    is_void = models.BooleanField(default=False)
+    timestamp_created = models.DateTimeField(auto_now_add=True)
+    timestamp_updated = models.DateTimeField(auto_now=True)
+
+    # def __unicode__(self):
+    #     return self.code
+
+    class Meta:
+        db_table = 'pmtct_questions'
+
+
+class PMTCTPregnantWA(models.Model):
+    pmtct_id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
+    person = models.ForeignKey(RegPerson, on_delete=models.CASCADE)
+    caregiver = models.ForeignKey(RegPerson, on_delete=models.CASCADE, related_name='pmtct_caregiver')
+    question_code = models.CharField(max_length=10, null=False, blank=True)
+    question = models.ForeignKey(PMTCTQuestions, on_delete=models.CASCADE)
+    answer = models.CharField(max_length=15)
+    event = models.ForeignKey(PMTCTEvents, on_delete=models.CASCADE)
+
+    timestamp_created = models.DateTimeField(default=timezone.now)
+    is_void = models.BooleanField(default=False)
+    timestamp_updated = models.DateTimeField(auto_now=True)
+
+    def __unicode__(self):
+        return self.answer
+
+    def save(self, force_insert=False, force_update=False, using=None, update_fields=None):
+        self.question_code = self.question.code
+        super(PMTCTPregnantWA, self).save(force_insert, force_update, using, update_fields)
+
+    class Meta:
+        db_table = 'pmtct_pregnant_Women_Adolescents'
+
+    def __unicode__(self):
+        return str(self.pmtct_id)
+
+
+class pmtct_registration(models.Model):
+    pmtct_id = models.UUIDField(primary_key=True, default=uuid.uuid1, editable=False)
+    person = models.ForeignKey(RegPerson, on_delete=models.CASCADE)
+    school_id = models.ForeignKey(SchoolList, on_delete=models.CASCADE)
+    child_cbo = models.ForeignKey(RegOrgUnit, on_delete=models.CASCADE)
+    caretaker = models.ForeignKey(RegPerson, null=True, related_name='caretaker', on_delete=models.CASCADE)
+    caretaker_contact = models.CharField(max_length=15)
+    facility = models.CharField(max_length=15)
+    ccc_no = models.CharField(max_length=15)
+    chv = models.ForeignKey(RegPerson, related_name='pmtct_chv', null=True, on_delete=models.CASCADE)
+    registration_date = models.DateField(default=timezone.now, null=True)
+    is_active = models.BooleanField(default=True)
+    exit_reason = models.CharField(max_length=4, null=True)
+    exit_date = models.DateField(default=timezone.now, null=True)
+    event = models.ForeignKey(OVCPreventiveEvents, on_delete=models.CASCADE)
+    pmtct_grouping_id = models.UUIDField(default=uuid.uuid1, editable=False)
+    timestamp_created = models.DateTimeField(default=timezone.now)
+    timestamp_updated = models.DateTimeField(default=timezone.now)
+    is_void = models.BooleanField(default=False)
+    sync_id = models.UUIDField(default=uuid.uuid1, editable=False)
+
+
+    class Meta:
+        db_table = 'pmtct_registration'
+
+        def __unicode__(self):
+            return str(self.pmtct_id)
diff --git a/cpovc_forms/views.py b/cpovc_forms/views.py
index f23e43600..392fdf1ad 100644
--- a/cpovc_forms/views.py
+++ b/cpovc_forms/views.py
@@ -10070,6 +10070,7 @@ def new_pregnantwomen(request, id):
     check_fields = ['sex_id', 'relationship_type_id']
     vals = get_dict(field_name=check_fields)
     ovc_id = int(id)
+    import pdb
 
     event=PMTCTEvents.objects.filter(person_id=id).values_list('event')
     data_test = PMTCTPregnantWA.objects.filter(event_id__in=event, is_void=False).values('event_id').distinct()
@@ -10082,7 +10083,33 @@ def new_pregnantwomen(request, id):
             for one_pwa in data_array:
                 data_get[b].append((one_pwa.question_code, one_pwa.answer))
         data_dict.append(dict(data_get[b]))
-
+        # pdb.set_trace()
+    #
+    # all_events = PMTCTEvents.objects.filter(person_id=id, is_void=False, event_type_id='WBGA')
+    # all_pmt = PMTCTPregnantWA.objects.filter(person_id=id)
+    #
+    # counter = 0
+    # all_events_len = len(all_events) - 1
+    # data_get = []
+    # event_get = []
+    #
+    # while counter < all_events_len:
+    #
+    #     # print(f'{counter} >>>>{all_events[counter]}')
+    #     count = 0
+    #     for one_all_pmt in all_events:
+    #         if one_all_pmt.event.pk == all_events[counter].event:
+    #             event_get.append(one_all_pmt)
+    #             # event_get[count] = one_all_pmt
+    #             count += 1
+    #             print(count)
+    #
+    #     # data_get[counter] = event_get
+    #     print(counter)
+    #     data_get.append(event_get)
+    #     counter += 1
+    #     print(data_get)
+    # pdb.set_trace()
 
     form = PREGNANT_WOMEN_ADOLESCENT()
     context = {
@@ -10090,6 +10117,111 @@ def new_pregnantwomen(request, id):
               'init_data': init_data,
               'vals': vals,
               'person': id,
-              'data_get':data_dict
+            # 'data_get':data_get
+              'data_get':data_dict,
+                # 'event_id':event
                 }
     return render(request, 'forms/new_pregnantwomen.html', context)
+
+def edit_pregnantwomen(request, id):
+
+    if request.method == 'POST':
+        import pdb
+        data = request.POST
+
+        update_time = timezone.now()
+        ovc_event = PMTCTEvents.objects.filter(event=id)
+        pmtct_saved = PMTCTPregnantWA.objects.filter(event=id)
+
+
+        # Update pmtct Table
+        try:
+            for question in pmtct_saved:
+                answer = data.get(question.question_code)
+                if answer is None:
+                    answer = 'No'
+                elif answer == 'AYES':
+                    answer = True
+                elif answer == 'ANNO':
+                    answer = False
+                else:
+                    answer = 'No'
+                PMTCTPregnantWA.objects.filter(event_id=id).update(
+                    question=question,
+                    answer=answer,
+                    # date_of_event=convert_date(date_of_event, fmt='%Y-%m-%d'),
+                    timestamp_updated=update_time,
+                    event=id
+                )
+                form = PREGNANT_WOMEN_ADOLESCENT()
+                return render(request, 'forms/edit_pregnantwomen.html',
+                              {
+                                  'form': form,
+                                  # 'init_data': init_data,
+                                  # 'vals': vals,
+                                  # 'resultsets': resultsets,
+                                  # 'resultsets2': resultsets2
+                              })
+        except Exception as e:
+            print(f'The table pmtct didnt update: {e} ')
+
+def delete_pregnantwomen(request, id, btn_event_pk):
+    import uuid
+    new_tracker = PMTCTPregnantWA.objects.filter(event_id__in=uuid.UUID("id").hex)
+    new_tracker1 = PMTCTPregnantWA.objects.filter(event_id=uuid.UUID(btn_event_pk).hex)
+    new_tracker.update(is_void=True)
+    return redirect('new_pregnantwomen', id=new_tracker1.person_id)
+# def delete_pregnantwomen(request, id, btn_event_pk):
+#     jsonCPARAData = []
+#     msg = ''
+#     try:
+#         event_id = uuid.UUID(btn_event_pk)
+#         d_event = PMTCTEvents.objects.filter(pk=event_id)[0].timestamp_created
+#         delta = get_days_difference(d_event)
+#         if delta < 90:
+#             event = PMTCTEvents.objects.filter(pk=event_id)
+#             if event:
+#                 # delete cpara
+#                 ovcpara = PMTCTPregnantWA.objects.filter(event=event)
+#                 if ovcpara:
+#                     ovcpara.delete()
+#                     msg = "Deleted successfully"
+#                 # delete event
+#                 event.delete()
+#                 msg = "Deleted successfully"
+#         else:
+#             msg = "Can't delete after 90 days"
+#     except Exception as e:
+#         msg = 'An error occured : %s' % str(e)
+#         print(str(e))
+#     jsonCPARAData.append({'msg': msg})
+#     return JsonResponse(jsonCPARAData,
+#                         content_type='application/json',
+#                         safe=False)
+# def delete_cpara(request, id, btn_event_pk):
+#     jsonPMTCTData = []
+#     msg = ''
+#     try:
+#         event_id = uuid.UUID(btn_event_pk)
+#         d_event = OVCCareEvents.objects.filter(pk=event_id)[0].timestamp_created
+#         delta = get_days_difference(d_event)
+#         if delta < 90:
+#             event = OVCCareEvents.objects.filter(pk=event_id)
+#             if event:
+#                 # delete cpara
+#                 pmtct = PMTCTPregnantWA.objects.filter(event=event)
+#                 if pmtct:
+#                     pmtct.delete()
+#                     msg = "Deleted successfully"
+#                 # delete event
+#                 event.delete()
+#                 msg = "Deleted successfully"
+#         else:
+#             msg = "Can't delete after 90 days"
+#     except Exception as e:
+#         msg = 'An error occured : %s' % str(e)
+#         print(str(e))
+#     jsonPMTCTData.append({'msg': msg})
+#     return JsonResponse(jsonCPARAData,
+#                         content_type='application/json',
+#                         safe=False)
\ No newline at end of file
diff --git a/templates/forms/new_pregnantwomen.html b/templates/forms/new_pregnantwomen.html
index 069b6d879..1da91e30f 100644
--- a/templates/forms/new_pregnantwomen.html
+++ b/templates/forms/new_pregnantwomen.html
@@ -322,13 +322,18 @@ <h4 class="panel-title"><b>Pregnant Women/Adolescent Tracker </b></h4>
                         <table class="table" border="1" id="past-hst">
                             <thead>
                             <tr>
-                            <th colspan="9">Pregnant Woman Details</th>
                             <th colspan="5">Clinic Attendance & mode of delivery</th>
+                            <th colspan="9">Pregnant Woman Details</th>
                             <th colspan="5">HIV Pos Pregnant Women/Adolescents</th>
 
                             </tr>
 
                                   <tr>
+                                        <th>Q 1</th>
+                                        <th>Q 2</th>
+                                        <th>Q 3</th>
+                                        <th>Q 4</th>
+                                        <th>Q 5</th>
                                         <th>Q 1</th>
                                         <th>Q 2A</th>
                                         <th>Q 2B</th>
@@ -343,53 +348,30 @@ <h4 class="panel-title"><b>Pregnant Women/Adolescent Tracker </b></h4>
                                         <th>Q 3</th>
                                         <th>Q 4</th>
                                         <th>Q 5</th>
-                                        <th>Q 1</th>
-                                        <th>Q 2</th>
-                                        <th>Q 3</th>
-                                        <th>Q 4</th>
-                                        <th>Q 5</th>
                                       <th> ACTIONS</th>
 
                                   </tr>
                                 </thead>
-                    {% if data_get  %}
-
-
-
-                        <tr>
-                             {% for k, v in data_get.items  %}
-                                    <td>{{ v }}</td>
-            {#                          <td>{{ one_screening_data['PMTCT_PWA2q'] }}</td>#}
-            {#                          <td>{{one_screening_data['PMTCT_PWA3q']}}</td>#}
-            {#                          <td>{{one_screening_data.date_test_done3a}}</td>#}
-            {#                          <td>{{one_screening_data.test_result3b}}</td>#}
-            {#                          <td>{{one_screening_data.date_test_done4a}}</td>#}
-            {#                          <td>{{one_screening_data.test_result4b}}</td>#}
-            {#                          <td>{{one_screening_data.date_test_done5a}}</td>#}
-            {#                          <td>{{one_screening_data.test_result5b}}</td>#}
-            {#                          <td>{{one_screening_data.anc_date1}}</td>#}
-            {#                          <td>{{one_screening_data.anc_date2}}</td>#}
-            {#                          <td>{{one_screening_data.anc_date3}}</td>#}
-            {#                          <td>{{one_screening_data.anc_date4}}</td>#}
-            {#                          <td>{{one_screening_data.mode_of_delivery}}</td>#}
-            {#                          <td>{{one_screening_data.facility_code}}</td>#}
-            {#                          <td>{{one_screening_data.ccc_no}}</td>#}
-            {#                          <td>{{one_screening_data.vl_result}}</td>#}
-            {#                          <td>{{one_screening_data.vl_test_date}}</td>#}
-            {#                          <td>{{one_screening_data.disclosure_done}}</td>#}
-
-
-                    {% endfor %}
-                                  <td>
-                                 <a href="#"><button type="button" class="btn btn-sm btn-primary m-r-5"><i class="fa fa-pencil"></i>&nbsp;Edit</button></a>
-                              <a href="#"><button type="button" class="btn btn-sm btn-danger m-r-5"><i class="fa fa-trash"></i>&nbsp;Delete</button></a>
-                            </td>
-                        </tr>
-                    {% else %}
-                    <div>
-                        <h3>No data available</h3>
-                    </div>
-                    {% endif %}
+                            <tbody>
+                                {% if data_get %}
+                                    {% for data in data_get %}
+                                      <tr>
+                                         {% for k, v in data.items %}
+                                            <td>{{ v }}</td>
+                                         {% endfor %}
+
+                                                 <td>
+                                                      <a href="#"><button type="button" class="btn btn-sm btn-primary m-r-5"><i class="fa fa-pencil"></i>&nbsp;Edit</button></a>
+                                                     <a href="#"><button type="button" class="btn btn-sm btn-danger m-r-5"><i class="fa fa-trash"></i>&nbsp;Delete</button></a>
+                           </td>
+
+
+                                      </tr>
+                                    {% endfor %}
+                                {% endif %}
+
+                            </tbody>
+
                 </table>
                     </div>
                     <br><br>