ModuleCallbackController.cs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. using Procurement.Enums;
  2. using Microsoft.AspNetCore.Mvc;
  3. using System;
  4. using System.Threading.Tasks;
  5. using Volo.Abp.AspNetCore.Mvc;
  6. using Procurement.EntityFrameworkCore.SqlRepositories;
  7. using Procurement.ViewModel;
  8. using Procurement.Helpers;
  9. using System.Text.Json;
  10. using System.Data.SqlClient;
  11. using Procurement.Core;
  12. namespace Procurement.Controllers
  13. {
  14. [Produces("application/json")]
  15. [Route("api/[controller]")]
  16. public class ModuleCallbackController : AbpController
  17. {
  18. private readonly ISqlRepository _repository;
  19. private string logType = "ModuleCallback";
  20. public ModuleCallbackController(ISqlRepository sqlRepository)
  21. {
  22. _repository = sqlRepository;
  23. }
  24. [Route("iqcresult")]
  25. [HttpPost]
  26. public async Task<IActionResult> SaveIQCResult([FromBody] JsonElement jsonElement)
  27. {
  28. if (jsonElement.ValueKind == JsonValueKind.Undefined || jsonElement.ValueKind == JsonValueKind.Null)
  29. {
  30. return BadRequest();
  31. }
  32. string reqMethod = HttpContext.Request.Method.ToString().ToUpper();
  33. string traceId = DateTime.Now.ToString("yyyyMMddHHmmssfff");
  34. string logAction = "IQCResult";
  35. NLogHelper.Default.Info(logType, logAction, $"ÊÕµ½{reqMethod}ÇëÇó£ºRecID_{traceId}|{jsonElement.ToString()}");
  36. ResultCode code = ResultCode.Fail, subCode = ResultCode.Fail;
  37. string subMsg = "";
  38. try
  39. {
  40. string proc = "pr_WMS_SaveIQCResult";
  41. SqlParameter[] sqlParams = SqlHelper.CreateSqlParameters(jsonElement);
  42. var resultData = await _repository.GetResultByProcAsync(proc, sqlParams);
  43. subMsg = resultData.msg;
  44. if (resultData.isSuccess)
  45. {
  46. code = ResultCode.Success;
  47. subCode = ResultCode.Success;
  48. }
  49. }
  50. catch (Exception ex)
  51. {
  52. subMsg = ex.Message;
  53. code = ResultCode.Fail;
  54. subCode = ResultCode.Fail;
  55. }
  56. ResultViewModel result = ResultHelper.CreateResult(code, null, subCode, subMsg);
  57. NLogHelper.Default.Info(logType, logAction, $"´¦Àí½á¹û£ºRecID_{traceId}|{subMsg}");
  58. return Ok(result);
  59. }
  60. }
  61. }