You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

104 lines
3.2 KiB

2 years ago
2 years ago
2 years ago
  1. using Shentun.Peis.Models;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using Volo.Abp;
  8. using Volo.Abp.Domain.Repositories;
  9. using Volo.Abp.Domain.Services;
  10. namespace Shentun.Peis.SampleGroupDetails
  11. {
  12. public class SampleGroupDetailManager : DomainService
  13. {
  14. private readonly IRepository<SampleGroupDetail> _repository;
  15. public SampleGroupDetailManager(
  16. IRepository<SampleGroupDetail> repository
  17. )
  18. {
  19. this._repository = repository;
  20. }
  21. /// <summary>
  22. /// 创建
  23. /// </summary>
  24. /// <param name="entity"></param>
  25. /// <returns></returns>
  26. public SampleGroupDetail CreateAsbitemAsync(SampleGroupDetail entity)
  27. {
  28. DataHelper.CheckGuidIsDefaultValue(entity.AsbitemId, "组合项目编号");
  29. DataHelper.CheckGuidIsDefaultValue(entity.SampleGroupId, "条码分组ID");
  30. return entity;
  31. }
  32. /// <summary>
  33. /// 删除条码分组明细 批量删
  34. /// </summary>
  35. /// <param name="SampleGroupId">条码分组ID</param>
  36. /// <returns></returns>
  37. /// <exception cref="UserFriendlyException"></exception>
  38. public async Task CheckAndDeleteAsync(Guid SampleGroupId)
  39. {
  40. var sampleGroupDetailList = await _repository.GetListAsync(m => m.SampleGroupId == SampleGroupId);
  41. if (sampleGroupDetailList.Any())
  42. {
  43. //删除条码分组明细 批量删
  44. await _repository.DeleteManyAsync(sampleGroupDetailList);
  45. }
  46. }
  47. /// <summary>
  48. /// 删除条码分组明细 单个
  49. /// </summary>
  50. /// <param name="SampleGroupId">条码分组ID</param>
  51. /// <param name="AsbitemId">组合项目ID</param>
  52. /// <returns></returns>
  53. /// <exception cref="UserFriendlyException"></exception>
  54. public async Task CheckAndDeleteInSampleGroupIdAndAsbitemIdAsync(Guid SampleGroupId, Guid AsbitemId)
  55. {
  56. var sampleGroupDetailList = await _repository.GetListAsync(m => m.SampleGroupId == SampleGroupId && m.AsbitemId == AsbitemId);
  57. if (sampleGroupDetailList.Any())
  58. {
  59. //删除条码分组明细
  60. await _repository.DeleteManyAsync(sampleGroupDetailList);
  61. }
  62. else
  63. {
  64. throw new UserFriendlyException("数据不存在");
  65. }
  66. }
  67. /// <summary>
  68. /// 删除组合项目相关的明细
  69. /// </summary>
  70. /// <param name="AsbitemId">组合项目ID</param>
  71. /// <returns></returns>
  72. /// <exception cref="UserFriendlyException"></exception>
  73. public async Task CheckAndDeleteInAsbitemIdAsync(Guid AsbitemId)
  74. {
  75. var medicalPackageDetailList = await _repository.GetListAsync(m => m.AsbitemId == AsbitemId);
  76. if (medicalPackageDetailList.Any())
  77. {
  78. //删除组合项目相关的明细
  79. await _repository.DeleteManyAsync(medicalPackageDetailList);
  80. }
  81. }
  82. }
  83. }