|
@@ -423,9 +423,14 @@ namespace Hotline.KnowledgeBase
|
|
|
var knTypes = _mapper.Map<List<KnowledgeType>>(dto.KnowledgeType);
|
|
|
kn.KnowledgeTypes = knTypes;
|
|
|
}
|
|
|
+ if (dto.KnowledgeOrg.Any())
|
|
|
+ {
|
|
|
+ kn.KnowledgeOrganizes = dto.KnowledgeOrg.Select(x => new SystemOrganize { Id = x }).ToList();
|
|
|
+ }
|
|
|
|
|
|
await _knowledgeRepository.AddNav(kn)
|
|
|
.Include(d => d.KnowledgeTypes)
|
|
|
+ .Include(d => d.KnowledgeOrganizes)
|
|
|
.ExecuteCommandAsync();
|
|
|
|
|
|
return kn;
|
|
@@ -485,23 +490,42 @@ namespace Hotline.KnowledgeBase
|
|
|
knowledge.CreatorOrgLevel = _sessionContext.OrgLevel;
|
|
|
}
|
|
|
|
|
|
- if (dto.KnowledgeType.Any())
|
|
|
- {
|
|
|
- knowledge.KnowledgeTypes = dto.KnowledgeType.Select(d => new KnowledgeType
|
|
|
- {
|
|
|
- Id = d.KnowledgeTypeId,
|
|
|
- }).ToList();
|
|
|
- await _knowledgeRepository.UpdateNav(knowledge)
|
|
|
- .Include(d => d.KnowledgeTypes, new UpdateNavOptions
|
|
|
- {
|
|
|
- ManyToManyIsUpdateA = true
|
|
|
- })
|
|
|
- .ExecuteCommandAsync();
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- await _knowledgeRepository.UpdateAsync(knowledge, cancellation);
|
|
|
- }
|
|
|
+ var kobool = dto.KnowledgeOrg.Any();
|
|
|
+ var ktbool = dto.KnowledgeType.Any();
|
|
|
+
|
|
|
+ if (ktbool)
|
|
|
+ {
|
|
|
+ knowledge.KnowledgeTypes = dto.KnowledgeType.Select(x => new KnowledgeType { Id = x.KnowledgeTypeId }).ToList();
|
|
|
+ }
|
|
|
+ if (kobool)
|
|
|
+ {
|
|
|
+ knowledge.KnowledgeOrganizes = dto.KnowledgeOrg.Select(x => new SystemOrganize { Id = x }).ToList();
|
|
|
+ }
|
|
|
+
|
|
|
+ await _knowledgeRepository.UpdateNav(knowledge)
|
|
|
+ .Include(d => d.KnowledgeTypes, new UpdateNavOptions { ManyToManyIsUpdateA = ktbool })
|
|
|
+ .Include(d => d.KnowledgeOrganizes, new UpdateNavOptions{ ManyToManyIsUpdateA = kobool })
|
|
|
+ .ExecuteCommandAsync();
|
|
|
+ //if (dto.KnowledgeType.Any())
|
|
|
+ // {
|
|
|
+ // knowledge.KnowledgeTypes = dto.KnowledgeType.Select(d => new KnowledgeType
|
|
|
+ // {
|
|
|
+ // Id = d.KnowledgeTypeId,
|
|
|
+ // }).ToList();
|
|
|
+ // await _knowledgeRepository.UpdateNav(knowledge)
|
|
|
+ // .Include(d => d.KnowledgeTypes, new UpdateNavOptions
|
|
|
+ // {
|
|
|
+ // ManyToManyIsUpdateA = true
|
|
|
+ // })
|
|
|
+ // .ExecuteCommandAsync();
|
|
|
+ // }
|
|
|
+ // else
|
|
|
+ // {
|
|
|
+ // await _knowledgeRepository.UpdateAsync(knowledge, cancellation);
|
|
|
+ // }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
return knowledge;
|
|
|
}
|