fix SimilarProduct behaviour
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
* solves similar product uniqueness issues * solves issue with checkboxes for similar products not showing as selected fixes #15 fixes #16
This commit is contained in:
parent
4c6efbc830
commit
0fbf239593
|
@ -74,7 +74,7 @@ namespace pwt_0x01_ng.Areas.Admin.Controllers
|
|||
}
|
||||
foreach (var s_item in s)
|
||||
{
|
||||
var prodpls = await dbctx.Product.Where(p_item => p_item.id == s_item.prod_id).FirstOrDefaultAsync();
|
||||
var prodpls = await dbctx.Product.Where(p_item => p_item.id == s_item.similar_prod_id).FirstOrDefaultAsync();
|
||||
if(prodpls != null){
|
||||
for (int i = 0; i < similar.Count; i++)
|
||||
{
|
||||
|
@ -124,13 +124,15 @@ namespace pwt_0x01_ng.Areas.Admin.Controllers
|
|||
if(similar.Count > 0){
|
||||
foreach (var prod in similar)
|
||||
{
|
||||
Similar s = dbctx.Similar.Where(p_item => p_item.prod_id == item.id && p_item.similar_prod_id == prod.id).FirstOrDefault();
|
||||
if(prod.Selected){
|
||||
Similar s = new Similar();
|
||||
s.prod_id = item.id;
|
||||
s.similar_prod_id = prod.id;
|
||||
var res = dbctx.Similar.Add(s);
|
||||
if (s == null) {
|
||||
s = new Similar();
|
||||
s.prod_id = item.id;
|
||||
s.similar_prod_id = prod.id;
|
||||
dbctx.Similar.Add(s);
|
||||
}
|
||||
} else {
|
||||
Similar s = dbctx.Similar.Where(p_item => p_item.prod_id == item.id && p_item.similar_prod_id != prod.id).FirstOrDefault();
|
||||
if (s != null) {
|
||||
dbctx.Similar.Remove(s);
|
||||
}
|
||||
|
|
|
@ -60,6 +60,9 @@
|
|||
<input asp-for="@Model.Similar[i].Selected" type="checkbox">
|
||||
<input asp-for="@Model.Similar[i].id" type="hidden">
|
||||
}
|
||||
} else {
|
||||
<input asp-for="@Model.Similar[i].Selected" type="checkbox" hidden>
|
||||
<input asp-for="@Model.Similar[i].id" type="hidden">
|
||||
}
|
||||
}
|
||||
</div>
|
||||
|
|
Reference in New Issue