CoreTestDataSeedContributor.cs 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. 
  2. using Business.Core.Utilities;
  3. using Bussiness.Model.MES.IC;
  4. using Bussiness.Model.Production;
  5. using Bussiness.Model.Sale;
  6. using Bussiness.Model.SRM;
  7. using Bussiness.Model.Tech;
  8. using Microsoft.Extensions.Hosting;
  9. using System;
  10. using System.Collections.Generic;
  11. using System.Linq;
  12. using System.Text;
  13. using System.Threading.Tasks;
  14. using Volo.Abp.Data;
  15. using Volo.Abp.DependencyInjection;
  16. using Volo.Abp.Domain.Repositories;
  17. using Volo.Abp.MultiTenancy;
  18. namespace Buissness.TestBase
  19. {
  20. public class CoreTestDataSeedContributor : IDataSeedContributor, ITransientDependency
  21. {
  22. private readonly IRepository<ic_item, long> _mysql_ic_item;
  23. private readonly IRepository<ic_bom, long> _mysql_ic_bom;
  24. private readonly IRepository<ic_bom_child, long> _mysql_ic_bom_child;
  25. private readonly IRepository<mes_technique, long> _mysql_mes_technique;
  26. private readonly IRepository<crm_seorder, long> _mysql_crm_seorder;
  27. private readonly IRepository<crm_seorderentry, long> _mysql_crm_seorderentry;
  28. private readonly IRepository<ic_item_stock, long> _mysql_ic_item_stock;
  29. private readonly IRepository<ic_factory_details, long> _mysql_ic_factory_details;
  30. private readonly IRepository<mes_oorder, long> _mysql_mes_oorder;
  31. private readonly IRepository<srm_pr_main, long> _mysql_srm_pr_main;
  32. private readonly IRepository<mes_mooccupy, long> _mysql_mes_mooccupy;
  33. private readonly IRepository<mes_morder, long> _mysql_mes_morder;
  34. private readonly IRepository<mes_moentry, long> _mysql_mes_moentry;
  35. private readonly IRepository<mes_process, long> _mysql_mes_process;
  36. private readonly IRepository<mes_tech_process, long> _mysql_mes_tech_process;
  37. private readonly IRepository<srm_po_main, long> _mysql_srm_po_main;
  38. private readonly IRepository<srm_po_list, long> _mysql_srm_po_list;
  39. private readonly IRepository<srm_po_occupy, long> _mysql_srm_po_occupy;
  40. private readonly IRepository<srm_purchase, long> _mysql_srm_purchase;
  41. private readonly IRepository<ic_plan, long> _mysql_ic_plan;
  42. private readonly ICurrentTenant _currentTenant;
  43. public CoreTestDataSeedContributor(
  44. IRepository<ic_item, long> mysql_ic_item,
  45. IRepository<ic_bom, long> mysql_ic_bom,
  46. IRepository<ic_bom_child, long> mysql_ic_bom_child,
  47. IRepository<mes_technique, long> mysql_mes_technique,
  48. IRepository<crm_seorder, long> mysql_crm_seorder,
  49. IRepository<crm_seorderentry, long> mysql_crm_seorderentry,
  50. IRepository<ic_item_stock, long> mysql_ic_item_stock,
  51. IRepository<ic_factory_details, long> mysql_ic_factory_details,
  52. IRepository<mes_oorder, long> mysql_mes_oorder,
  53. IRepository<srm_pr_main, long> mysql_srm_pr_main,
  54. IRepository<mes_mooccupy, long> mysql_mes_mooccupy,
  55. IRepository<mes_morder, long> mysql_mes_morder,
  56. IRepository<mes_moentry, long> mysql_mes_moentry,
  57. IRepository<mes_process, long> mysql_mes_process,
  58. IRepository<mes_tech_process, long> mysql_mes_tech_process,
  59. IRepository<srm_po_main, long> mysql_srm_po_main,
  60. IRepository<srm_po_list, long> mysql_srm_po_list,
  61. IRepository<srm_po_occupy, long> mysql_srm_po_occupy,
  62. IRepository<srm_purchase, long> mysql_srm_purchase,
  63. IRepository<ic_plan, long> mysql_ic_plan,
  64. ICurrentTenant currentTenant)
  65. {
  66. _mysql_ic_item = mysql_ic_item;
  67. _mysql_ic_bom = mysql_ic_bom;
  68. _mysql_ic_bom_child = mysql_ic_bom_child;
  69. _mysql_mes_technique= mysql_mes_technique;
  70. _mysql_crm_seorder = mysql_crm_seorder;
  71. _mysql_crm_seorderentry = mysql_crm_seorderentry;
  72. _mysql_ic_item_stock = mysql_ic_item_stock;
  73. _mysql_ic_factory_details = mysql_ic_factory_details;
  74. _mysql_mes_oorder = mysql_mes_oorder;
  75. _mysql_srm_pr_main = mysql_srm_pr_main;
  76. _mysql_mes_mooccupy = mysql_mes_mooccupy;
  77. _mysql_mes_morder = mysql_mes_morder;
  78. _mysql_mes_moentry = mysql_mes_moentry;
  79. _mysql_mes_process= mysql_mes_process;
  80. _mysql_mes_tech_process= mysql_mes_tech_process;
  81. _mysql_srm_po_main = mysql_srm_po_main;
  82. _mysql_srm_po_list = mysql_srm_po_list;
  83. _mysql_srm_po_occupy = mysql_srm_po_occupy;
  84. _mysql_srm_purchase = mysql_srm_purchase;
  85. _mysql_ic_plan = mysql_ic_plan;
  86. _currentTenant = currentTenant;
  87. }
  88. public async Task SeedAsync(DataSeedContext context)
  89. {
  90. /* Seed additional test data... */
  91. using (_currentTenant.Change(context?.TenantId))
  92. {
  93. await Seedic_itemAsync();
  94. await Seedic_bomAsync();
  95. await Seedic_bom_childAsync();
  96. await Seedmes_techniqueAsync();
  97. }
  98. }
  99. private async Task Seedic_itemAsync()
  100. {
  101. await _mysql_ic_item.InsertAsync(new ic_item(new SnowFlake().NextId()) { factory_id=102, allowout=1});
  102. }
  103. private async Task Seedic_bomAsync()
  104. {
  105. await _mysql_ic_bom.InsertAsync(new ic_bom { factory_id=102,use_status=1});
  106. }
  107. public async Task Seedic_bom_childAsync()
  108. {
  109. await _mysql_ic_bom_child.InsertAsync(new ic_bom_child { factory_id=102, begin_day=DateTime.Now});
  110. }
  111. public async Task Seedmes_techniqueAsync()
  112. {
  113. await _mysql_mes_technique.InsertAsync(new mes_technique { factory_id=102, bom="1000"});
  114. }
  115. }
  116. }