fixed save new person with partner list

This commit is contained in:
2026-03-26 23:03:08 +11:00
parent ef6f4152cc
commit 40515d0e3a
2 changed files with 24 additions and 14 deletions
@@ -560,6 +560,14 @@ public partial class PersonRepository : IPerson
_context.Persons.Add(model); _context.Persons.Add(model);
var successid = await _context.SaveChangesAsync(); var successid = await _context.SaveChangesAsync();
result = model.Id; result = model.Id;
if (item.RelationShips != null)
{
for (int m = 0; m < item.RelationShips.Count; m++)
{
item.RelationShips[m].PersonId = result;
}
}
if (!string.IsNullOrEmpty(container.FileName)) if (!string.IsNullOrEmpty(container.FileName))
{ {
+16 -14
View File
@@ -423,12 +423,13 @@ assignValue(item:Person): void {
relatePersonId: vitem.relatePersonId relatePersonId: vitem.relatePersonId
}; };
rlist.push(item); rlist.push(item);
console.log("get partner for save delete list ", vitem); //console.log("get partner for save delete list ", vitem);
} }
console.log("get partner for save before loop this.partners ", i); console.log("get partner for save before loop this.partners ", i);
for (i = 0; i < this.partners().length; i++) const partnerl = this.partners();
for (let k = 0; k < partnerl.length; k++)
{ {
vitem = this.partners()[i]; vitem = partnerl[k];
if (vitem.state == mState.New || vitem.state == mState.Modified) if (vitem.state == mState.New || vitem.state == mState.Modified)
{ {
item = { item = {
@@ -483,12 +484,12 @@ assignValue(item:Person): void {
{ {
container.formData = await Utils.toBase64(this.profileFile); container.formData = await Utils.toBase64(this.profileFile);
container.fileName = this.profileFile.name; container.fileName = this.profileFile.name;
console.log('image as base64 ', container); //console.log('image as base64 ', container);
} }
container.person.relationShips = this.getPartnerForSave(); container.person.relationShips = this.getPartnerForSave();
this.subscription.add ( const savePerson$ = this.personService.savePerson(container);
this.personService.savePerson(container).subscribe({ this.subscription.add (savePerson$.subscribe({
next: x => { next: x => {
if (x.statusCode >= 1) if (x.statusCode >= 1)
{ {
item.id = x.data; item.id = x.data;
@@ -505,7 +506,7 @@ assignValue(item:Person): void {
} }
else else
{ {
this.messageService.add({severity:'error', summary: 'Error', detail: x.message }); this.messageService.add({severity:'error', summary: 'Error', detail: x.message });
} }
}, },
error: e => { error: e => {
@@ -575,12 +576,13 @@ addPartner(): void {
pfirstName: sfamily.firstName, pfirstName: sfamily.firstName,
plastName: sfamily.lastName, plastName: sfamily.lastName,
sex: sfamily.sex, sex: sfamily.sex,
}; };
const fm = this.partners(); const fm = this.partners();
fm.push(item); fm.push(item);
this.partners.set(fm); this.partners.set(fm);
this.subChanged$.next(false); this.subChanged$.next(false);
console.log("after put in partners list", this.partners()); console.log("after put in partners list", this.partners());
this.cdr.markForCheck();
}); });
} }