Skip to content

Commit 46c90b6

Browse files
committed
fix: address gemini review feedback for draw handler and import constants
1 parent c933b42 commit 46c90b6

2 files changed

Lines changed: 16 additions & 6 deletions

File tree

spp_gis/static/src/js/widgets/gis_edit_map/field_gis_edit_map.esm.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -175,10 +175,18 @@ export class FieldGisEditMap extends Component {
175175

176176
this._drawHandlers = {
177177
update(e) {
178-
var data = self.draw.getAll();
179-
if (data.features.length > 0) {
178+
const eventFeature = e?.features?.[0];
179+
if (eventFeature?.geometry) {
180180
self.props.record.update({
181-
[self.props.name]: JSON.stringify(data.features[0].geometry),
181+
[self.props.name]: JSON.stringify(eventFeature.geometry),
182+
});
183+
return;
184+
}
185+
186+
const allFeatures = self.draw.getAll()?.features || [];
187+
if (allFeatures.length > 0 && allFeatures[0].geometry) {
188+
self.props.record.update({
189+
[self.props.name]: JSON.stringify(allFeatures[0].geometry),
182190
});
183191
}
184192
},

spp_program_geofence/models/eligibility_manager.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ class GeofenceMembershipManager(models.Model):
3838
_name = "spp.program.membership.manager.geofence"
3939
_inherit = ["spp.program.membership.manager", "spp.manager.source.mixin"]
4040
_description = "Geofence Eligibility Manager"
41+
ASYNC_IMPORT_THRESHOLD = 1000
42+
IMPORT_CHUNK_SIZE = 10000
4143

4244
include_area_fallback = fields.Boolean(
4345
default=True,
@@ -187,7 +189,7 @@ def import_eligible_registrants(self, state="draft"):
187189
new_beneficiaries = new_beneficiaries.filtered(lambda r: r.id not in existing_partner_ids)
188190

189191
ben_count = len(new_beneficiaries)
190-
if ben_count < 1000:
192+
if ben_count < self.ASYNC_IMPORT_THRESHOLD:
191193
self._import_registrants(new_beneficiaries, state=state, do_count=True)
192194
else:
193195
self._import_registrants_async(new_beneficiaries, state=state)
@@ -200,10 +202,10 @@ def _import_registrants_async(self, new_beneficiaries, state="draft"):
200202
program.write({"is_locked": True, "locked_reason": "Importing beneficiaries"})
201203

202204
jobs = []
203-
for i in range(0, len(new_beneficiaries), 10000):
205+
for i in range(0, len(new_beneficiaries), self.IMPORT_CHUNK_SIZE):
204206
jobs.append(
205207
self.delayable(channel="root_program.eligibility_manager")._import_registrants(
206-
new_beneficiaries[i : i + 10000], state
208+
new_beneficiaries[i : i + self.IMPORT_CHUNK_SIZE], state
207209
)
208210
)
209211
main_job = group(*jobs)

0 commit comments

Comments
 (0)