Properly insert nuisance and water public reports

This commit is contained in:
Eli Ribble 2026-05-11 21:24:32 +00:00
parent e9127466f0
commit 93510e4b2e
No known key found for this signature in database
4 changed files with 21 additions and 8 deletions

View file

@ -15,7 +15,7 @@ func CommunicationInsert(ctx context.Context, txn db.Tx, m model.Communication)
statement := table.Communication.INSERT(table.Communication.MutableColumns). statement := table.Communication.INSERT(table.Communication.MutableColumns).
MODEL(m). MODEL(m).
RETURNING(table.Communication.AllColumns) RETURNING(table.Communication.AllColumns)
return db.ExecuteOne[model.Communication](ctx, statement) return db.ExecuteOneTx[model.Communication](ctx, txn, statement)
} }
func CommunicationFromID(ctx context.Context, comm_id int64) (model.Communication, error) { func CommunicationFromID(ctx context.Context, comm_id int64) (model.Communication, error) {
statement := table.Communication.SELECT( statement := table.Communication.SELECT(

View file

@ -11,7 +11,7 @@ import (
) )
func NuisanceInsert(ctx context.Context, txn db.Ex, m model.Nuisance) (model.Nuisance, error) { func NuisanceInsert(ctx context.Context, txn db.Ex, m model.Nuisance) (model.Nuisance, error) {
statement := table.Nuisance.INSERT(table.Nuisance.MutableColumns). statement := table.Nuisance.INSERT(table.Nuisance.AllColumns).
MODEL(m). MODEL(m).
RETURNING(table.Nuisance.AllColumns) RETURNING(table.Nuisance.AllColumns)
return db.ExecuteOneTx[model.Nuisance](ctx, txn, statement) return db.ExecuteOneTx[model.Nuisance](ctx, txn, statement)

View file

@ -11,7 +11,7 @@ import (
) )
func WaterInsert(ctx context.Context, txn db.Ex, m model.Water) (model.Water, error) { func WaterInsert(ctx context.Context, txn db.Ex, m model.Water) (model.Water, error) {
statement := table.Water.INSERT(table.Water.MutableColumns). statement := table.Water.INSERT(table.Water.AllColumns).
MODEL(m). MODEL(m).
RETURNING(table.Water.AllColumns) RETURNING(table.Water.AllColumns)
return db.ExecuteOneTx[model.Water](ctx, txn, statement) return db.ExecuteOneTx[model.Water](ctx, txn, statement)

View file

@ -155,7 +155,7 @@ func PublicReportUpdateCompliance(ctx context.Context, public_id string, report_
return fmt.Errorf("create txn: %w", err) return fmt.Errorf("create txn: %w", err)
} }
defer lint.LogOnErrRollback(txn.Rollback, ctx, "rollback") defer lint.LogOnErrRollback(txn.Rollback, ctx, "rollback")
report, err := querypublicreport.ReportFromPublicID(ctx, db.PGInstance.PGXPool, public_id) report, err := querypublicreport.ReportFromPublicID(ctx, txn, public_id)
if err != nil { if err != nil {
return fmt.Errorf("query report existence: %w", err) return fmt.Errorf("query report existence: %w", err)
} }
@ -170,8 +170,14 @@ func PublicReportUpdateCompliance(ctx context.Context, public_id string, report_
compliance_updates.Unset(tablepublicreport.Compliance.Submitted) compliance_updates.Unset(tablepublicreport.Compliance.Submitted)
} else { } else {
comm := model.Communication{ comm := model.Communication{
Created: time.Now(),
OrganizationID: report.OrganizationID, OrganizationID: report.OrganizationID,
ResponseEmailLogID: nil,
ResponseTextLogID: nil,
SourceEmailLogID: nil,
SourceReportID: &report.ID, SourceReportID: &report.ID,
SourceTextLogID: nil,
Status: model.Communicationstatus_New,
} }
comm, err = querypublic.CommunicationInsert(ctx, txn, comm) comm, err = querypublic.CommunicationInsert(ctx, txn, comm)
if err != nil { if err != nil {
@ -404,8 +410,15 @@ func publicReportCreate(ctx context.Context, setter_report modelpublicreport.Rep
report_type := setter_report.ReportType report_type := setter_report.ReportType
if report_type != modelpublicreport.Reporttype_Compliance { if report_type != modelpublicreport.Reporttype_Compliance {
comm := model.Communication{ comm := model.Communication{
Created: time.Now(),
OrganizationID: result.OrganizationID, OrganizationID: result.OrganizationID,
ResponseEmailLogID: nil,
ResponseTextLogID: nil,
SourceEmailLogID: nil,
SourceReportID: &result.ID, SourceReportID: &result.ID,
SourceTextLogID: nil,
Status: model.Communicationstatus_New,
} }
comm, err = querypublic.CommunicationInsert(ctx, txn, comm) comm, err = querypublic.CommunicationInsert(ctx, txn, comm)
if err != nil { if err != nil {