parse contract dates into datetime objects
This commit is contained in:
parent
df5f4b9d3e
commit
92243965ec
@ -2,6 +2,7 @@ import os
|
||||
import re
|
||||
import pathlib
|
||||
from configparser import ConfigParser
|
||||
from datetime import datetime
|
||||
from flask import Flask, request, g, session
|
||||
from flask_session import Session
|
||||
import redis
|
||||
@ -175,6 +176,12 @@ def map_config(config):
|
||||
# with a Beat job once a day)
|
||||
"CELERY_RESULT_EXPIRES": 0,
|
||||
"CELERY_RESULT_EXTENDED": True,
|
||||
"CONTRACT_START_DATE": datetime.strptime(
|
||||
config.get("default", "CONTRACT_START_DATE"), "%Y-%m-%d"
|
||||
).date(),
|
||||
"CONTRACT_END_DATE": datetime.strptime(
|
||||
config.get("default", "CONTRACT_END_DATE"), "%Y-%m-%d"
|
||||
).date(),
|
||||
}
|
||||
|
||||
|
||||
|
@ -9,7 +9,6 @@ from wtforms.fields import (
|
||||
from wtforms.fields.html5 import DateField
|
||||
from wtforms.validators import Required, Optional, Length, NumberRange, ValidationError
|
||||
from flask_wtf import FlaskForm
|
||||
from datetime import datetime
|
||||
from numbers import Number
|
||||
|
||||
from .data import JEDI_CLIN_TYPES
|
||||
@ -85,12 +84,8 @@ class CLINForm(FlaskForm):
|
||||
|
||||
def validate(self, *args, **kwargs):
|
||||
valid = super().validate(*args, **kwargs)
|
||||
contract_start = datetime.strptime(
|
||||
app.config.get("CONTRACT_START_DATE"), "%Y-%m-%d"
|
||||
).date()
|
||||
contract_end = datetime.strptime(
|
||||
app.config.get("CONTRACT_END_DATE"), "%Y-%m-%d"
|
||||
).date()
|
||||
contract_start = app.config.get("CONTRACT_START_DATE")
|
||||
contract_end = app.config.get("CONTRACT_END_DATE")
|
||||
|
||||
if (
|
||||
self.start_date.data
|
||||
|
@ -46,7 +46,7 @@ export default {
|
||||
this.minEndDate = this.calcMinEndDate(date)
|
||||
}
|
||||
} else if (event.name.includes(END_DATE)) {
|
||||
if (event.valid != undefined && event.valid ) {
|
||||
if (event.valid != undefined && event.valid) {
|
||||
var date = new Date(event.value)
|
||||
this.maxStartDate = this.calcMaxStartDate(date)
|
||||
}
|
||||
|
@ -128,8 +128,6 @@
|
||||
{{ 'task_orders.form.pop' | translate }}
|
||||
</div>
|
||||
</div>
|
||||
{% set contract_start_formatted = contract_start | dateFromString(formatter="%Y-%m-%d") %}
|
||||
{% set contract_end_formatted = contract_end | dateFromString(formatter="%Y-%m-%d") %}
|
||||
{% if fields %}
|
||||
{{ PopDateRange(start_field=fields.start_date, end_field=fields.end_date, watch=True, optional=False, mindate=contract_start, maxdate=contract_end) }}
|
||||
{% else %}
|
||||
|
@ -48,7 +48,7 @@
|
||||
</p>
|
||||
|
||||
<div v-if='minError' class="usa-input-error-message">
|
||||
PoP start date must be on or after {{ mindate | dateFromString(formatter="%Y-%m-%d") | formattedDate(formatter="%B %d, %Y") }}.
|
||||
PoP start date must be on or after {{ mindate | formattedDate(formatter="%B %d, %Y") }}.
|
||||
</div>
|
||||
<div v-if='maxError' class="usa-input-error-message">
|
||||
PoP start date must be before end date.
|
||||
@ -137,7 +137,7 @@
|
||||
<div class="usa-input__title">
|
||||
{{ 'task_orders.form.pop_end' | translate }}
|
||||
</div>
|
||||
{% set formatted_end_date = maxdate | dateFromString(formatter="%Y-%m-%d") | formattedDate(formatter="%B %d, %Y") %}
|
||||
{% set formatted_end_date = maxdate | formattedDate(formatter="%B %d, %Y") %}
|
||||
{{ Alert(message="task_orders.form.pop_end_alert" | translate({'end_date': formatted_end_date })) }}
|
||||
|
||||
<p class='usa-input__help'>
|
||||
@ -148,7 +148,7 @@
|
||||
PoP end date must be after start date.
|
||||
</div>
|
||||
<div v-if='maxError' class="usa-input-error-message">
|
||||
PoP end date must be on or after {{ maxdate | dateFromString(formatter="%Y-%m-%d") | formattedDate(formatter="%B %d, %Y") }}.
|
||||
PoP end date must be on or after {{ formatted_end_date }}.
|
||||
</div>
|
||||
</legend>
|
||||
|
||||
|
@ -38,12 +38,8 @@ def test_clin_form_start_date_before_end_date():
|
||||
|
||||
|
||||
def test_clin_form_pop_dates_within_contract_dates():
|
||||
CONTRACT_START_DATE = datetime.datetime.strptime(
|
||||
app.config.get("CONTRACT_START_DATE"), "%Y-%m-%d"
|
||||
).date()
|
||||
CONTRACT_END_DATE = datetime.datetime.strptime(
|
||||
app.config.get("CONTRACT_END_DATE"), "%Y-%m-%d"
|
||||
).date()
|
||||
CONTRACT_START_DATE = app.config.get("CONTRACT_START_DATE")
|
||||
CONTRACT_END_DATE = app.config.get("CONTRACT_END_DATE")
|
||||
|
||||
invalid_start = CONTRACT_START_DATE - relativedelta(months=1)
|
||||
invalid_end = CONTRACT_END_DATE + relativedelta(months=1)
|
||||
|
Loading…
x
Reference in New Issue
Block a user