FxEntryOrderCore.cs 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. using SqlSugar;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using WMS.Info;
  8. using WMS.Util;
  9. namespace WMS.Core.ServiceCore
  10. {
  11. public class FxEntryOrderCore
  12. {
  13. /// <summary>
  14. /// 获取分页数据
  15. /// <summary>
  16. /// <returns></returns>
  17. public IEnumerable<dynamic> GetEntryOrderPageList(Pagination pagination, string queryJson)
  18. {
  19. SqlSugarClient client = null;
  20. try
  21. {
  22. client = SysDbCore.GetDbCtx();
  23. int count = 0;
  24. var queryParam = queryJson.ToJObject();
  25. var db = client.Queryable<BILL_ENTRYORDER>();
  26. //单据日期
  27. if (!queryParam["Btime"].IsEmpty() && !queryParam["Etime"].IsEmpty())
  28. {
  29. db.Where(ord => ord.F_addTime >= queryParam["Btime"].ToDate() && ord.F_addTime <= queryParam["Etime"].ToDate());
  30. }
  31. if (!queryParam["keyword"].IsEmpty())
  32. {
  33. string kw = queryParam["keyword"].ToString();
  34. db.Where(ord => ord.F_no.Contains(kw) ||ord.F_relatedOrderNo.Contains(kw));
  35. }
  36. if (pagination.sord.ToUpper() != "ASC")
  37. {
  38. pagination.sidx = pagination.sidx + " DESC";
  39. }
  40. var list = db.OrderBy(pagination.sidx).Select<BILL_ENTRYORDER>(@"
  41. [F_no],
  42. [F_warehouseNo],
  43. [F_relatedOrderNo],
  44. [F_totalOrderLines],
  45. [F_orderType],
  46. [F_orderStatus],
  47. [F_memo],
  48. [F_addTime],
  49. [F_addUserNo],
  50. [F_editTime],
  51. [F_editUserNo],
  52. [F_isDelete],
  53. [F_isBonded],
  54. [F_fullPlate],
  55. [F_trayNo],
  56. [F_locationNo],
  57. [F_matHeight]").ToPageList(pagination.page, pagination.rows, ref count);
  58. pagination.records = count;
  59. return list;
  60. }
  61. catch (Exception ex)
  62. {
  63. throw ex;
  64. }
  65. finally
  66. {
  67. client.Dispose();
  68. }
  69. }
  70. /// <summary>
  71. /// 获取单据数据
  72. /// <summary>
  73. /// <returns></returns>
  74. public IEnumerable<dynamic> GeEntrytOrderItem(string OrderNo)
  75. {
  76. try
  77. {
  78. var lst = SysDbCore.GetDbCtx().Queryable<BILL_ENTRYORDERLINEDETAIL>().Where(it => it.F_pNo == OrderNo);
  79. var list = lst.Select<dynamic>(@"[F_rowNo],
  80. [F_pNo],
  81. [F_trayNo],
  82. [F_boxNo],
  83. [F_quantity],
  84. [F_addUserNo],
  85. [F_addTime],
  86. [F_matNo],
  87. [F_editUserNo],
  88. [F_editTime],
  89. [F_memo],
  90. [F_batchNo],
  91. [F_matName],
  92. [F_matType]").ToList();
  93. return list;
  94. }
  95. catch (Exception ex)
  96. {
  97. throw ex;
  98. }
  99. }
  100. /// <summary>
  101. /// 作废
  102. /// </summary>
  103. /// <param name="keyValue">主键</param>
  104. public void CanelEntity(LoginUserInfo loginUserInfo, string _F_No)
  105. {
  106. SqlSugarClient client = null;
  107. try
  108. {
  109. client = SysDbCore.GetDbCtx();
  110. var db = client.Queryable<BILL_ENTRYORDER>().Where(it => it.F_no == _F_No).First();
  111. if (db == null)
  112. throw new Exception("入库单不存在");
  113. if (db.F_orderStatus > 1)
  114. throw new Exception("单据已经执行中,不可删除");
  115. //db.F_canceledUserNo = loginUserInfo.UserNo;
  116. //db.F_canceledTime = DateTime.Now;
  117. //db.F_orderStatus = 6;
  118. //SysDbCore.GetDbCtx().Updateable(db).UpdateColumns(it => new { it.F_canceledUserNo, it.F_canceledTime, it.F_orderStatus }).ExecuteCommand();
  119. }
  120. catch (Exception ex)
  121. {
  122. throw ex;
  123. }
  124. }
  125. }
  126. }