Add PCM carrier-route postcard pick-and-send (#15)
CI / test (pull_request) Successful in 24s
CI / test (pull_request) Successful in 24s
## Summary Closes #15. - Let compose target mailing-list contacts or 1–2 USPS carrier routes, with household count and estimated cost shown before save. - Place selected routes through PCM list-count orders instead of importing occupant addresses into Contacts.
This commit is contained in:
1 parent
a867a57750
commit
f7e3c05c59
17 files changed
+1211
-28
No files matched your search
@@ -0,0 +1,41 @@
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("messaging", "0006_storedfile_social_kinds"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="campaign",
|
||||
name="route_targeting",
|
||||
field=models.JSONField(blank=True, default=dict),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="campaign",
|
||||
name="audience",
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
("email_opt_in", "Mailing list · email opt-in"),
|
||||
("sms_opt_in", "Mailing list · SMS opt-in"),
|
||||
("postcard_opt_in", "Mailing list · postcard opt-in"),
|
||||
("carrier_route", "USPS carrier routes"),
|
||||
],
|
||||
default="",
|
||||
max_length=32,
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="message",
|
||||
name="contact",
|
||||
field=models.ForeignKey(
|
||||
blank=True,
|
||||
null=True,
|
||||
on_delete=models.CASCADE,
|
||||
related_name="messages",
|
||||
to="contacts.contact",
|
||||
),
|
||||
),
|
||||
]
|
||||
Reference in new issue
Block a user