InvSearchController.cs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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 System.Data;
  12. namespace Procurement.Controllers
  13. {
  14. [Produces("application/json")]
  15. [Route("api/wms/[controller]")]
  16. public class InvSearchController : AbpController
  17. {
  18. private readonly ISqlRepository _repository;
  19. public InvSearchController(ISqlRepository sqlRepository)
  20. {
  21. _repository = sqlRepository;
  22. }
  23. [HttpGet]
  24. public async Task<IActionResult> Get(string domain, string location = "", string shelf = "", string itemnum = "", int page = 1)
  25. {
  26. ResultCode code = ResultCode.Success, subCode = ResultCode.Success;
  27. string subMsg = "";
  28. dynamic items = null;
  29. try
  30. {
  31. SqlParameter[] parameters = {
  32. new SqlParameter { ParameterName = "@Domain", Value = domain,SqlDbType=SqlDbType.VarChar},
  33. new SqlParameter { ParameterName = "@Location", Value = location,SqlDbType=SqlDbType.VarChar},
  34. new SqlParameter { ParameterName = "@Shelf", Value = shelf,SqlDbType=SqlDbType.VarChar},
  35. new SqlParameter { ParameterName = "@ItemNum", Value = itemnum,SqlDbType=SqlDbType.VarChar},
  36. new SqlParameter { ParameterName = "@Page", Value = page,SqlDbType=SqlDbType.Int},
  37. };
  38. items = await _repository.GetListByProcAsync("pr_WMS_GetInvSearchList", parameters);
  39. }
  40. catch (Exception ex)
  41. {
  42. subMsg = ex.Message;
  43. code = ResultCode.Fail;
  44. subCode = ResultCode.Fail;
  45. }
  46. ResultViewModel result = ResultHelper.CreateResult(code, items, subCode, subMsg);
  47. return Ok(result);
  48. }
  49. [Route("fifo")]
  50. [HttpGet]
  51. public async Task<IActionResult> FIFO(string domain, string location = "", string itemnum = "")
  52. {
  53. ResultCode code = ResultCode.Success, subCode = ResultCode.Success;
  54. string subMsg = "";
  55. dynamic items = null;
  56. try
  57. {
  58. SqlParameter[] parameters = {
  59. new SqlParameter { ParameterName = "@Domain", Value = domain,SqlDbType=SqlDbType.VarChar},
  60. new SqlParameter { ParameterName = "@Location", Value = location,SqlDbType=SqlDbType.VarChar},
  61. new SqlParameter { ParameterName = "@ItemNum", Value = itemnum,SqlDbType=SqlDbType.VarChar},
  62. };
  63. items = await _repository.GetSingleListByProcAsync("pr_WMS_GetInvFIFOList", parameters);
  64. }
  65. catch (Exception ex)
  66. {
  67. subMsg = ex.Message;
  68. code = ResultCode.Fail;
  69. subCode = ResultCode.Fail;
  70. }
  71. ResultViewModel result = ResultHelper.CreateResult(code, items, subCode, subMsg);
  72. return Ok(result);
  73. }
  74. }
  75. }