Skip to content
Snippets Groups Projects

Charging structure changes

Merged Bjarke Madsen requested to merge charging-structure-changes into develop
6 unresolved threads

Saket's charging structure changes made into a merge request, rather than direct commits on develop

Merge request reports

Approval is optional

Merged by Saket AgrahariSaket Agrahari 1 year ago (Apr 26, 2023 1:30pm UTC)

Merge details

  • Changes merged into develop with dae43cc8.
  • Deleted the source branch.

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
141 141 --bs-btn-disabled-border-color:#0d6efd
142 142 }
143 143
144 .table td {
  • 214 223 continue
    215 224
    216 225 # initialize on first use, so we don't add data for nrens with no answers
    217 data.setdefault(nren_name, {question: 0 for question in StaffQuestion})[question] = value
    226 data.setdefault(nren_name,
  • 331 348
    349 def transfer_charging_structure():
    350 with db.session_scope() as session:
    351 nren_dict = helpers.get_uppercase_nren_dict(session)
    352
    353 rows = query_question(ChargingStructure.charging_structure)
    354 for row in rows:
    355 nren_name = row[0].upper()
    356 value = row[1].replace('"', '').strip()
    357
    358 if nren_name not in nren_dict:
    359 logger.info(f'{nren_name} unknown. Skipping from charging '
    360 f'structure.')
    361 continue
    362
    363 if "do not charge" in value:
  • 51 chargingStructureDataSet.datasets.forEach(dataset => {
    52 dataset.data = dataset.data.filter((e, i) => {
    53 return filterSelection.selectedNrens.includes(chargingStructureDataSet.labels[i]);
    54 });
    55 });
    56 chargingStructureDataSet.labels = chargingStructureDataSet.labels.filter((e) => filterSelection.selectedNrens.includes(e));
    57
    58 const labelsNREN = [...new Set(chargingStructureData.map((item: ChargingStructure) => item.NREN))];
    59 const labelsYear = [...new Set(chargingStructureData.map((item: ChargingStructure) => item.YEAR))];
    60
    61 const dataLookup = new Map<string, (string | null)>();
    62 chargingStructureData.forEach((item: ChargingStructure) => {
    63 const lookupKey = `${item.NREN}/${item.YEAR}`
    64 dataLookup.set(lookupKey, item.FEE_TYPE)
    65 })
    66 console.log(dataLookup);
  • 216 37 throw error;
    217 38 }
    218 39 }
    40 interface inputProps {
    41 filterSelection: FilterSelection
    42 setFilterSelection: React.Dispatch<React.SetStateAction<FilterSelection>>
    43 }
    219 44
    220 function ChargingStructurePage (): React.ReactElement {
    221 const [chargingStructureDataSet,setDataset]= useState<ChargingStructureDataset>(EMPTY_DATASET);
    222 const [chargingStructureData, setChargingStructureData] = useState<ChargingStructure[]>([]);
    45 function ChargingStructurePage({ filterSelection, setFilterSelection }: inputProps): React.ReactElement {
    46 const [chargingStructureDataSet, setDataset] = useState<ChargingStructureDataset>(EMPTY_DATASET);
    47 const [chargingStructureData, setChargingStructureData] = useState<ChargingStructure[]>([]);
    223 48 console.log("ChargingStructurePage");
  • Saket Agrahari added 2 commits

    added 2 commits

    • 3d3d9a19 - COMP-119 review :css specific table alignment
    • d2f1072b - COMP-119 review: log clean up and pep8 120 length

    Compare with previous version

  • 96 <th>No Direct Charge</th>
    97 <th>Other</th>
    98 </tr>
    99 </thead>
    100 <tbody>
    101 {filterSelection.selectedNrens
    102 .sort((a, b) => a>b? 1 : -1)
    103 .map((nren: string) => (
    104 <tr key={nren}>
    105 <td>{nren}</td>
    106 <td >
    107 {filterSelection.selectedYears
    108 .sort((a, b) => a>b? 1 : -1)
    109 .map((year: number, index) => (
    110 <div className="d-inline-block" key={year}>{dataLookup.get(`${nren}/${year}`) === "flat_fee" ?
    111 <div className={`rounded-pill color-of-the-year-${index}`} style={{ width: "75px", height: "30px", margin: "2px" }}></div> :
  • 216 37 throw error;
    217 38 }
    218 39 }
    40 interface inputProps {
    41 filterSelection: FilterSelection
    42 setFilterSelection: React.Dispatch<React.SetStateAction<FilterSelection>>
    43 }
    44
    45 function ChargingStructurePage({ filterSelection, setFilterSelection }: inputProps): React.ReactElement {
    46 const [chargingStructureDataSet, setDataset] = useState<ChargingStructureDataset>(EMPTY_DATASET);
  • Saket Agrahari added 1 commit

    added 1 commit

    • cb7bdd2a - COMP-119 review: clean up and refactor

    Compare with previous version

  • Saket Agrahari requested review from @bjarke and @remco.tukker

    requested review from @bjarke and @remco.tukker

  • Saket Agrahari mentioned in commit dae43cc8

    mentioned in commit dae43cc8

  • merged

  • Please register or sign in to reply
    Loading