Конечная цель — изменить логическое значение ShowInList на сущность CompanyActivity каждый раз, когда я использую вызов API. .
Проект:
Бэкенд = C# и SQL.
Фронтенд = Angular 17 .
Давайте пойдем шаг за шагом.
ВОЗВРАТНАЯ ЧАСТЬ:
Это вызов API:< /p>
Код: Выделить всё
[HttpPost, Route("/api/[controller]/ChangeShowInListStatus/")]
public async Task ChangeShowInListStatus([FromBody]CompanyActivity companyActivity, int FK_Company, int FK_Activity, DateTime InsertDate)
{
//List companyActivities = _activityService.GetActivitiesByCompany(companyActivityId);
//List dto = _autoMappingService.CurrentMapper.Map(companyActivities);
//var companyActivity = _activityService.GetActivitiesByCompany(companyActivityId);
_companyActivityService.UpdateCompanyActivity(companyActivity, FK_Company, FK_Activity, InsertDate);
return Ok();
}
Код: Выделить всё
public void UpdateCompanyActivity(CompanyActivity companyActivity, int FK_Company, int FK_Activity, DateTime InsertDate)
{
GetBy(a => a.FK_Activity == FK_Activity && a.FK_Company == FK_Company && a.InsertDate == InsertDate).FirstOrDefault();
companyActivity.ShowInList = !companyActivity.ShowInList;
UpdateEntityProperties(companyActivity, true, new string[] { "ShowInList" });
}
Код: Выделить всё
public virtual int UpdateEntityProperties(TEntity entity, bool saveChanges, params string[] propertiesToUpdate)
{
UpdateValidation(entity, propertiesToUpdate);
_repository.UpdateEntityProperties(entity, propertiesToUpdate);
if (saveChanges)
{
_uow.SaveChanges();
}
return entity.ID;
}
Код: Выделить всё
using iTextSharp.text;
using System;
using System.Collections.Generic;
namespace H4Pro.Web.Mappings.ModelsDTO.Productivity
{
public class CompanyActivityDTO
{
public int ID { get; set; }
public int FK_Company { get; set; }
public int FK_Activity { get; set; }
public DateTime InsertDate { get; set; }
}
}
Это функция, на которую нажимают:
Код: Выделить всё
changeShowInListStatus(FK_Company: number, FK_Activity: number) {
this.getActivitiesByCompany();
this.FK_Company = this.currentUser.FK_Company;
this.FK_Activity = this.activity.ID;
this.companyActivityService.changeShowInListStatus(FK_Company, FK_Activity).subscribe(() => {});
Код: Выделить всё
changeShowInListStatus(FK_Company: number, FK_Activity: number) {
return this.http.get(
environment.apiFullUrl + "/Activity/ChangeShowInListStatus/" + FK_Company + "/" + FK_Activity
);
Когда я пытаюсь нажать на функцию, два значения (FK_Company, FK_Activity) всегда не определены.
Я этого не делаю. понял, что я делаю не так...
Подробнее здесь: https://stackoverflow.com/questions/780 ... -this-flow
Мобильная версия