OfficeRkService.cs 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. using LeaRun.Application.Entity.DemoManage;
  2. using LeaRun.Application.IService.DemoManage;
  3. using LeaRun.Data.Repository;
  4. using LeaRun.Util.WebControl;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using LeaRun.Util;
  9. using LeaRun.Util.Extension;
  10. namespace LeaRun.Application.Service.DemoManage
  11. {
  12. /// <summary>
  13. /// 版 本 6.1
  14. /// Copyright (c) 2013-2016 上海力软信息技术有限公司
  15. /// 创 建:超级管理员
  16. /// 日 期:2016-12-06 17:29
  17. /// 描 述:OfficeRk
  18. /// </summary>
  19. public class OfficeRkService : RepositoryFactory, OfficeRkIService
  20. {
  21. #region 获取数据
  22. /// <summary>
  23. /// 获取列表
  24. /// </summary>
  25. /// <param name="pagination">分页</param>
  26. /// <param name="queryJson">查询参数</param>
  27. /// <returns>返回分页列表</returns>
  28. public IEnumerable<OfficeRkEntity> GetPageList(Pagination pagination, string queryJson)
  29. {
  30. var expression = LinqExtensions.True<OfficeRkEntity>();
  31. var queryParam = queryJson.ToJObject();
  32. //查询条件
  33. if (!queryParam["condition"].IsEmpty() && !queryParam["keyword"].IsEmpty())
  34. {
  35. string condition = queryParam["condition"].ToString();
  36. string keyword = queryParam["keyword"].ToString();
  37. switch (condition)
  38. {
  39. case "GysName": //供应商名称
  40. expression = expression.And(t => t.GysName.Contains(keyword));
  41. break;
  42. case "SellerName": //销售人员
  43. expression = expression.And(t => t.SellerName.Contains(keyword));
  44. break;
  45. default:
  46. break;
  47. }
  48. }
  49. return this.BaseRepository().FindList(expression,pagination);
  50. }
  51. /// <summary>
  52. /// 获取实体
  53. /// </summary>
  54. /// <param name="keyValue">主键值</param>
  55. /// <returns></returns>
  56. public OfficeRkEntity GetEntity(string keyValue)
  57. {
  58. return this.BaseRepository().FindEntity<OfficeRkEntity>(keyValue);
  59. }
  60. /// <summary>
  61. /// 获取子表详细信息
  62. /// </summary>
  63. /// <param name="keyValue">主键值</param>
  64. /// <returns></returns>
  65. public IEnumerable<OfficeRkEntryEntity> GetDetails(string keyValue)
  66. {
  67. return this.BaseRepository().FindList<OfficeRkEntryEntity>("select * from OfficeRkEntry where OrderId='" + keyValue + "'"); }
  68. #endregion
  69. #region 提交数据
  70. /// <summary>
  71. /// 删除数据
  72. /// </summary>
  73. /// <param name="keyValue">主键</param>
  74. public void RemoveForm(string keyValue)
  75. {
  76. IRepository db = new RepositoryFactory().BaseRepository().BeginTrans();
  77. try
  78. {
  79. db.Delete<OfficeRkEntity>(keyValue);
  80. db.Delete<OfficeRkEntryEntity>(t => t.RkEntryId.Equals(keyValue));
  81. db.Commit();
  82. }
  83. catch (Exception)
  84. {
  85. db.Rollback();
  86. throw;
  87. }
  88. }
  89. /// <summary>
  90. /// 保存表单(新增、修改)
  91. /// </summary>
  92. /// <param name="keyValue">主键值</param>
  93. /// <param name="entity">实体对象</param>
  94. /// <returns></returns>
  95. public void SaveForm(string keyValue, OfficeRkEntity entity,List<OfficeRkEntryEntity> entryList)
  96. {
  97. IRepository db = this.BaseRepository().BeginTrans();
  98. try
  99. {
  100. if (!string.IsNullOrEmpty(keyValue))
  101. {
  102. //主表
  103. entity.Modify(keyValue);
  104. db.Update(entity);
  105. //明细
  106. db.Delete<OfficeRkEntryEntity>(t => t.OrderId.Equals(keyValue));
  107. foreach (OfficeRkEntryEntity item in entryList)
  108. {
  109. item.Create();
  110. item.OrderId = entity.OrderId;
  111. db.Insert(item);
  112. }
  113. }
  114. else
  115. {
  116. //主表
  117. entity.Create();
  118. db.Insert(entity);
  119. //明细
  120. foreach (OfficeRkEntryEntity item in entryList)
  121. {
  122. item.Create();
  123. item.OrderId = entity.OrderId;
  124. db.Insert(item);
  125. }
  126. }
  127. db.Commit();
  128. }
  129. catch (Exception)
  130. {
  131. db.Rollback();
  132. throw;
  133. }
  134. }
  135. #endregion
  136. }
  137. }