WmsController.cs 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. using Microsoft.AspNetCore.Http;
  2. using Microsoft.AspNetCore.Mvc;
  3. using Newtonsoft.Json;
  4. using System.Diagnostics;
  5. using wms.dto.request;
  6. using wms.dto.request.hj;
  7. using wms.dto.response;
  8. using wms.dto.response.hj;
  9. using wms.service;
  10. using wms.service.IService;
  11. using wms.util.Ext;
  12. using wms.util.Http;
  13. namespace wms.api.Controllers
  14. {
  15. [Route("api/[controller]/[action]")]
  16. [ApiController]
  17. public class WmsController : ControllerBase
  18. {
  19. static object lockerCopperLineReceiveInstr = new object();
  20. private readonly IHJService _hJService;
  21. public WmsController(IHJService hJService)
  22. {
  23. _hJService = hJService;
  24. }
  25. /// <summary>
  26. /// 接收ESB请求统一入口
  27. /// </summary>
  28. /// <param name="reqDto"></param>
  29. /// <returns></returns>
  30. [HttpPost(Name = "WmsServiceEntrance")]
  31. public EsbRes WmsServiceEntrance(EsbReq reqDto)
  32. {
  33. var result = new EsbRes() { HTTPResponseHeader = new HeadersRes() };
  34. //var methodname = RedisHelper.Get("ESBServiceCode" + reqDto.headers.serviceCode);
  35. //if (string.IsNullOrEmpty(methodname))
  36. //{
  37. // var conf = _hJService.GetSysConfigByExpression(p => p.SContent == reqDto.headers.serviceCode);
  38. // if (conf == null)
  39. // {
  40. // throw new Exception("没有找到该编码的配置信息"+ reqDto.headers.serviceCode);
  41. // }
  42. // methodname = conf.Code;
  43. // RedisHelper.Set("ESBServiceCode" + reqDto.headers.serviceCode, methodname);
  44. //}
  45. //switch (methodname)
  46. //{
  47. // case "CopperLineReceiveInstr"://镀铜补空/取满指令接收接口(包含550工字轮)
  48. // var req = JsonConvert.DeserializeObject<CopperLineRequest>(reqDto.Body);
  49. // result.Body = ConcurrencyReqControl<CopperLineRequest>(lockerCopperLineReceiveInstr, "CopperLineReceiveInstr"+ req.WbCode, req.WbCode, req, _hJService.CopperLineReceiveInstr) .ToCamelCaseString();
  50. // break;
  51. // case "StockChange"://库存改判
  52. // result.Body = _hJService.StockChange(JsonConvert.DeserializeObject<StockChangeRequest>(reqDto.Body)).ToCamelCaseString();
  53. // break;
  54. // case "GetCurStockList"://实时库存查询接口
  55. // result.Body = _hJService.GetCurStockList(JsonConvert.DeserializeObject<GetCurStockListRequest>(reqDto.Body)).ToCamelCaseString();
  56. // break;
  57. // case "SpecialPickMaterApply"://特殊出库领料申请接口
  58. // result.Body = _hJService.SpecialPickMaterApply(JsonConvert.DeserializeObject<SpecialPickMaterApplyRequest>(reqDto.Body)).ToCamelCaseString();
  59. // break;
  60. // default:
  61. // break;
  62. //}
  63. return result;
  64. }
  65. }
  66. }