TaskAssignmentRepository.cs 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. using AutoMapper;
  2. using MySqlX.XDevAPI.Relational;
  3. using OASystem.Domain;
  4. using OASystem.Domain.Dtos.Groups;
  5. using OASystem.Domain.Entities.Groups;
  6. using OASystem.Domain.Entities.Resource;
  7. using OASystem.Domain.ViewModels.Groups;
  8. using Org.BouncyCastle.Utilities.Collections;
  9. using System;
  10. using System.Collections.Generic;
  11. using System.Linq;
  12. using System.Text;
  13. using System.Threading.Tasks;
  14. namespace OASystem.Infrastructure.Repositories.Groups
  15. {
  16. public class TaskAssignmentRepository : BaseRepository<Grp_GroupsTaskAssignment, Grp_GroupsTaskAssignment>
  17. {
  18. private readonly IMapper _mapper;
  19. public TaskAssignmentRepository(SqlSugarClient sqlSugar, IMapper mapper) :
  20. base(sqlSugar)
  21. {
  22. this._mapper = mapper;
  23. }
  24. public async Task<Result> GetTaskAssignmen()
  25. {
  26. Result result = new Result() { Code = -2, Msg = "未知错误" };
  27. try
  28. {
  29. //团组下拉框
  30. List<dynamic> _DelegationInfos = new List<dynamic>();
  31. List<Grp_DelegationInfo> grp_DelegationInfos=_sqlSugar.Queryable<Grp_DelegationInfo>().Where(a=>a.IsDel == 0 && a.TourCode !="" && a.IsState == 0).ToList();
  32. foreach (var Item in grp_DelegationInfos)
  33. {
  34. var data = new
  35. {
  36. Id = Item.Id,
  37. Name = Item.TeamName
  38. };
  39. _DelegationInfos.Add(data);
  40. }
  41. //任务下拉框
  42. List<dynamic> _SetData = new List<dynamic>();
  43. List<Sys_SetData> sys_SetData = _sqlSugar.Queryable<Sys_SetData>().Where(a => a.IsDel == 0 && a.Name != "其他款项" && a.STid ==16).ToList();
  44. foreach (var Item in sys_SetData)
  45. {
  46. var data = new
  47. {
  48. Id = Item.Id,
  49. Name = Item.Name
  50. };
  51. _SetData.Add(data);
  52. }
  53. //人员安排列表
  54. List<dynamic> _User = new List<dynamic>();
  55. List<Sys_Users> sys_User = _sqlSugar.Queryable<Sys_Users>().Where(a => a.IsDel == 0 &&a.Id!=4).ToList();
  56. foreach (var Item in sys_User)
  57. {
  58. var data = new
  59. {
  60. Id = Item.Id,
  61. Name = Item.CnName
  62. };
  63. _User.Add(data);
  64. }
  65. var dataList = new
  66. {
  67. DelegationInfos=_DelegationInfos,
  68. SetData= _SetData,
  69. User= _User
  70. };
  71. result=new Result(){ Code = 0, Msg = "成功", Data = dataList };
  72. }
  73. catch (Exception)
  74. {
  75. result = new Result() { Code = -2, Msg = "未知错误" };
  76. }
  77. return result;
  78. }
  79. public async Task<Result> GetTaskAssignmenOp(TaskAssignmenDto dto)
  80. {
  81. Result result = new Result() { Code = -2, Msg = "未知错误" };
  82. try
  83. {
  84. List<int> id = new List<int>();
  85. List<int> NewId = dto.UIdStr;
  86. List<Grp_GroupsTaskAssignment> _GroupsTaskAssignments = _sqlSugar.Queryable<Grp_GroupsTaskAssignment>().Where(a=>a.DIId==dto.DIId).ToList();
  87. foreach(var Group in _GroupsTaskAssignments)
  88. {
  89. id.Add(Group.Id);
  90. }
  91. //需删除的
  92. //需修改的
  93. //需添加的
  94. }
  95. catch (Exception)
  96. {
  97. result = new Result() { Code = -2, Msg = "未知错误" };
  98. }
  99. return result;
  100. }
  101. public async Task<Result> TaskAssignmenQuery(TaskAssignmenQueryDto dto)
  102. {
  103. Result result = new Result() { Code = -2, Msg = "未知错误" };
  104. try
  105. {
  106. string sqlWhere = string.Empty;
  107. if (dto.DIId!=0)
  108. {
  109. sqlWhere += string.Format(@" And DIId ={0}", dto.DIId);
  110. }
  111. else
  112. {
  113. return result = new Result() { Code = -1, Msg = "暂无数据" };
  114. }
  115. if (dto.CTId!=0)
  116. {
  117. sqlWhere += string.Format(@" And CTId ={0}", dto.CTId);
  118. }
  119. else
  120. {
  121. return result = new Result() { Code = -1, Msg = "暂无数据" };
  122. }
  123. sqlWhere += string.Format(@" And IsDel={0} ", 0);
  124. if (!string.IsNullOrEmpty(sqlWhere.Trim()))
  125. {
  126. Regex r = new Regex("And");
  127. sqlWhere = r.Replace(sqlWhere, "Where", 1);
  128. }
  129. string sql = string.Format(@"select * from Grp_GroupsTaskAssignment {0}", sqlWhere);
  130. List<Grp_GroupsTaskAssignment> GroupsTaskAssignment = await _sqlSugar.SqlQueryable<Grp_GroupsTaskAssignment>(sql).ToListAsync();
  131. Grp_DelegationInfo grp_DelegationInfo = new Grp_DelegationInfo();
  132. if (GroupsTaskAssignment.Count!=0)
  133. {
  134. List<int> UserId = new List<int>();
  135. foreach (var item in GroupsTaskAssignment)
  136. {
  137. UserId.Add(item.UId);
  138. }
  139. grp_DelegationInfo = _sqlSugar.Queryable<Grp_DelegationInfo>().First(a => a.Id == GroupsTaskAssignment[0].DIId && a.IsDel==0);
  140. var data = new
  141. {
  142. TaskAssignment = GroupsTaskAssignment[0],
  143. UserStr = UserId,
  144. DelegationInfo = grp_DelegationInfo
  145. };
  146. result = new Result()
  147. {
  148. Code = 0,
  149. Msg = "查询成功!",
  150. Data = data
  151. };
  152. }
  153. else
  154. {
  155. result = new Result() { Code = -1, Msg = "暂无数据" };
  156. }
  157. }
  158. catch (Exception)
  159. {
  160. result = new Result() { Code = -2, Msg = "未知错误" };
  161. throw;
  162. }
  163. return result;
  164. }
  165. }
  166. }