setWeighingData method

void setWeighingData()

Implementation

void setWeighingData() {
  finalTblTRLoadingWeighingTO.value = TblTRLoadingWeighingTO();
  finalTblTRLoadingWeighingTO.value.grossWeight = 0;
  finalTblTRLoadingWeighingTO.value.netWeight = 0;
  finalTblTRLoadingWeighingTO.value.tareWeight = 0;

  tblTRLoadingWeighingTO.createdBy =
      int.parse(GetIt.I<StorageUtils>().getUserId()!);
  tblTRLoadingWeighingTO.isActive = 1;
  if (tblTRLoadingWeighingTOList.isNotEmpty) {
    tblTRLoadingWeighingTO.weighingMachineId =
        tblTRLoadingWeighingTOList.last.weighingMachineId;
    if (tblTRLoadingWeighingTO.weighingMachineId != null) {
      final Weighing = weighingKataList.firstWhere(
          (item) => item.value == tblTRLoadingWeighingTO.weighingMachineId);
      if (Weighing != null) onKataChanged(Weighing, skipWeighingChange: true);
    }
    // ********************************************

    if (loadingTypeId == 1) {

      finalTblTRLoadingWeighingTO.value.grossWeight =
          tblTRLoadingWeighingTOList.last.actualWeight;
      print(tblTRLoadingWeighingTOList.last.actualWeight);

      if (tblTRLoadingTO.value?.statusId ==
          LoadingStatusInternalTransferE.rejectVehicleAfterTareWeight.value) {
        finalTblTRLoadingWeighingTO.value.netWeight =
            tblTRLoadingWeighingTOList
                .where((f) =>
                    f.weighingMeasureTypeId ==
                    WeighingMeasureTypeIdE.grossWeight.value)
                .fold(0, (acc, obj) => acc! + obj.netWeight!);
      } else {
        finalTblTRLoadingWeighingTO.value.netWeight =
            tblTRLoadingWeighingTOList
                .where((f) =>
                    f.weighingMeasureTypeId ==
                    WeighingMeasureTypeIdE.intermediateWeight.value)
                .fold(0, (acc, obj) => acc! + obj.netWeight!);

        if (finalTblTRLoadingWeighingTO.value.netWeight != 0) {
          isConfirmed.value = true;
        }
      }

      finalTblTRLoadingWeighingTO.value.tareWeight =
          (finalTblTRLoadingWeighingTO.value.grossWeight! -
              finalTblTRLoadingWeighingTO.value.netWeight!);
    } else if (loadingTypeId == 2) {
      finalTblTRLoadingWeighingTO.value.grossWeight =
          tblTRLoadingWeighingTOList
              .where((f) =>
                  f.weighingMeasureTypeId ==
                  WeighingMeasureTypeIdE.grossWeight.value)
              .fold(0, (acc, obj) => acc! + obj.grossWeight!);

      finalTblTRLoadingWeighingTO.value.netWeight = tblTRLoadingWeighingTOList
          .where((f) =>
              f.weighingMeasureTypeId ==
              WeighingMeasureTypeIdE.intermediateWeight.value)
          .fold(0, (acc, obj) => acc! + obj.netWeight!);

      finalTblTRLoadingWeighingTO.value.tareWeight =
          finalTblTRLoadingWeighingTO.value.grossWeight! -
              finalTblTRLoadingWeighingTO.value.netWeight!;
    }
  }
}