NonInventPurchasingSystem/CPRNIMS.WebApps/Controllers/Canvass/CanvassMgmtController.cs
2026-01-20 07:44:30 +08:00

331 lines
13 KiB
C#

using CPRNIMS.Domain.UIContracts.Canvass;
using CPRNIMS.Infrastructure.Helper;
using CPRNIMS.Infrastructure.ViewModel.Canvass;
using CPRNIMS.WebApps.Controllers.Base;
using Microsoft.AspNetCore.Mvc;
namespace CPRNIMS.WebApps.Controllers.Canvass
{
public class CanvassMgmtController : BaseMethod
{
List<CanvassVM>? response;
private readonly ICanvass _canvass;
public CanvassMgmtController(TokenHelper tokenHelper, ErrorLogHelper errorMessageService,
IWebHostEnvironment webHostEnvironment
, ICanvass canvass
)
: base(tokenHelper, errorMessageService, webHostEnvironment)
{
_canvass = canvass;
}
#region POST PUT
public async Task<IActionResult> PostCanvass(CanvassVM viewModel, List<CanvassList> CanvassList)
{
if (CanvassList.Count > 0)
{
viewModel.CanvassList = new CanvassList
{
PRDetailsId = CanvassList.SelectMany(ic => ic.PRDetailsId).ToList(),
ItemNo = CanvassList.SelectMany(ic => ic.ItemNo).ToList(),
PRNo = CanvassList.SelectMany(ic => ic.PRNo).ToList(),
};
var postPutItem = await _canvass.PostCanvass(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
}
else
{
return Json(new { success = false, response = "Array Empty" });
}
return Json(new { success = false });
}
public async Task<IActionResult> PostPutSupplier(CanvassVM viewModel)
{
var postPutItem = await _canvass.PostPutSupplier(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
return Json(new { success = false, response = postPutItem.errMessage });
}
public async Task<IActionResult> PostTaggingSupplier(CanvassVM viewModel,
List<SupplierList> SupplierList)
{
var postPutItem = new CanvassVM();
try
{
if (SupplierList.Count > 0)
{
viewModel.SupplierList = new SupplierList
{
SupplierId = SupplierList.SelectMany(ic => ic.SupplierId).ToList(),
};
postPutItem = await _canvass.PostTaggingSupplier(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
}
else
{
return Json(new { success = false, response = "Array Empty" });
}
return Json(new { success = false });
}
catch (Exception ex)
{
var message = ex.InnerException?.ToString() ?? ex.Message.ToString();
await PostErrorMessage(message, "WebApps");
return Json(new { success = false, response = postPutItem.errMessage });
}
}
public async Task<IActionResult> PostPutItemTagging(CanvassVM viewModel,
List<ItemList> ItemList)
{
var postPutItem = new CanvassVM();
try
{
if (ItemList.Count > 0)
{
viewModel.ItemList = new ItemList
{
ItemNo = ItemList.SelectMany(ic => ic.ItemNo).ToList(),
};
postPutItem = await _canvass.PostPutItemTagging(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
}
else
{
return Json(new { success = false, response = "Array Empty" });
}
return Json(new { success = false });
}
catch (Exception ex)
{
var message = ex.InnerException?.ToString() ?? ex.Message.ToString();
await PostErrorMessage(message, "WebApps");
return Json(new { success = false, response = postPutItem.errMessage });
}
}
public async Task<IActionResult> PostApprovedSupp(CanvassVM viewModel)
{
var postPutItem = await _canvass.PostApprovedSupp(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
return Json(new { success = false, Response = postPutItem.errMessage });
}
public async Task<IActionResult> PostSuggestedSupp(CanvassVM viewModel)
{
var postPutItem = await _canvass.PostSuggestedSupp(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
return Json(new { success = false, Response = postPutItem.errMessage });
}
public async Task<IActionResult> PutSuppUnitPrice(CanvassVM viewModel)
{
var postPutItem = await _canvass.PutSuppUnitPrice(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
return Json(new { success = false, Response = postPutItem.errMessage });
}
public async Task<IActionResult> PutSuppBidDetails(CanvassVM viewModel)
{
var postPutItem = await _canvass.PutSuppBidDetails(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
return Json(new { success = false, Response = postPutItem.errMessage });
}
public async Task<IActionResult> PostPutMySupplier(CanvassVM viewModel)
{
var postPutItem = await _canvass.PostPutMySupplier(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
return Json(new { success = false, Response = postPutItem.errMessage });
}
public async Task<IActionResult> UnlockFormLink(CanvassVM viewModel)
{
var postPutItem = await _canvass.UnlockFormLink(await GetUser(), viewModel);
if (postPutItem.messCode != 0)
{
return Json(new { success = true });
}
return Json(new { success = false, Response = postPutItem.errMessage });
}
#endregion
#region Get
public async Task<IActionResult> GetItemSupplierWOEmail(long PRNo)
{
var viewModels = new CanvassVM();
viewModels.PRNo = PRNo;
response = await _canvass.GetItemSupplierWOEmail(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetSupplierById(CanvassVM viewModel)
{
response = await _canvass.GetSupplierById(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetSupplierItemWOEmail(long ItemNo)
{
var viewModels = new CanvassVM();
viewModels.ItemNo = ItemNo;
response = await _canvass.GetSupplierItemWOEmail(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetCanvassPerSupplier()
{
var viewModels = new CanvassVM();
response = await _canvass.GetCanvassPerSupplier(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetCanvassPerSupplierEmail(CanvassVM viewModel)
{
response = await _canvass.GetCanvassPerSupplierEmail(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetCanvassPerSupplierId(CanvassVM viewModel)
{
response = await _canvass.GetCanvassPerSupplierId(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetSupplierBid(CanvassVM viewModels)
{
response = await _canvass.GetSupplierBid(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetAlternativeOfferByPRDetailId(CanvassVM viewModels)
{
response = await _canvass.GetAlternativeOfferByPRDetailId(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetSupplierBidByItem(CanvassVM viewModel)
{
response = await _canvass.GetSupplierBidByItem(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetSupplierBidById(CanvassVM viewModel)
{
response = await _canvass.GetSupplierBidById(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetCanvassByPRNo(long PRNo)
{
var viewModels = new CanvassVM();
viewModels.PRNo = PRNo;
response = await _canvass.GetCanvassByPRNo(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetCanvassById()
{
var viewModels = new CanvassVM();
response = await _canvass.GetCanvassById(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetPRItemList()
{
var viewModels = new CanvassVM();
response = await _canvass.GetPRItemList(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetPRItem(long ItemNo)
{
var viewModels = new CanvassVM();
viewModels.ItemNo = ItemNo;
response = await _canvass.GetPRItem(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetCanvassWOResponse()
{
var viewModels = new CanvassVM();
response = await _canvass.GetCanvassWOResponse(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetWOResponseBySuppId(CanvassVM viewModels)
{
response = await _canvass.GetWOResponseBySuppId(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetForCanvassPerItem()
{
var viewModels = new CanvassVM();
response = await _canvass.GetForCanvassPerItem(await GetUser(), viewModels);
return GetResponse(response);
}
public async Task<IActionResult> GetPRListByPRNo(CanvassVM viewModel)
{
response = await _canvass.
GetPRListByPRNo(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetMySuppliers(CanvassVM viewModel)
{
response = await _canvass.
GetMySuppliers(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetMyPRWOCanvass(CanvassVM viewModel)
{
response = await _canvass.
GetMyPRWOCanvass(await GetUser(), viewModel);
return GetResponse(response);
}
public async Task<IActionResult> GetCanvassGroupByPRNo(CanvassVM viewModel)
{
response = await _canvass.
GetCanvassGroupByPRNo(await GetUser(), viewModel);
return GetResponse(response);
}
#endregion
#region Views
public async Task<IActionResult> Suppliers()
{
return await IsAuthenTicated();
}
public async Task<IActionResult> WOResponse()
{
return await IsAuthenTicated();
}
public async Task<IActionResult> Canvass()
{
return await IsAuthenTicated();
}
public async Task<IActionResult> SupplierBid()
{
return await IsAuthenTicated();
}
public async Task<IActionResult> CanvassReport()
{
return await IsAuthenTicated();
}
#endregion
}
}