|
@@ -1,10 +1,12 @@
|
|
|
using Aspose.Cells;
|
|
|
using FluentValidation;
|
|
|
using Microsoft.AspNetCore.SignalR;
|
|
|
+using NPOI.OpenXmlFormats.Dml.Chart;
|
|
|
using OASystem.API.OAMethodLib;
|
|
|
using OASystem.API.OAMethodLib.Hub.HubClients;
|
|
|
using OASystem.API.OAMethodLib.Hub.Hubs;
|
|
|
using OASystem.API.OAMethodLib.QiYeWeChatAPI;
|
|
|
+using OASystem.API.OAMethodLib.QiYeWeChatAPI.AppNotice;
|
|
|
using OASystem.API.OAMethodLib.Quartz.Business;
|
|
|
using OASystem.Domain.Dtos.Groups;
|
|
|
using OASystem.Domain.Dtos.PersonnelModule;
|
|
@@ -19,6 +21,7 @@ using System.Data;
|
|
|
using System.Diagnostics;
|
|
|
using System.Globalization;
|
|
|
using static OASystem.API.OAMethodLib.JWTHelper;
|
|
|
+using static OpenAI.GPT3.ObjectModels.SharedModels.IOpenAiModels;
|
|
|
|
|
|
namespace OASystem.API.Controllers
|
|
|
{
|
|
@@ -1034,6 +1037,8 @@ namespace OASystem.API.Controllers
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
+ var groupArr = dto.GroupNames.Split(',').Select(part => part.Trim()).ToArray();
|
|
|
+
|
|
|
string whereSql = "" ,currUserName = "";
|
|
|
#region 分页参数处理
|
|
|
|
|
@@ -1079,6 +1084,7 @@ From
|
|
|
Select
|
|
|
ta.Id,
|
|
|
ta.TaskName,
|
|
|
+ ta.TaskContent,
|
|
|
ta.TaskPriority,
|
|
|
d.DepName,
|
|
|
di.TeamName,
|
|
@@ -1137,7 +1143,9 @@ WHERE
|
|
|
OR [Participant] like '%{2}%' ", whereSql, currUserName, currUserName);
|
|
|
|
|
|
RefAsync<int> total = 0;
|
|
|
- var _view = await _taskAllocationRep._sqlSugar.SqlQueryable<TaskListView>(pageSql).ToPageListAsync(dto.PageIndex, dto.PageSize, total);//ToPageAsync
|
|
|
+ var _view = await _sqlSugar.SqlQueryable<TaskListView>(pageSql)
|
|
|
+ .WhereIF(groupArr.Any(), x => groupArr.Contains(x.TeamName))
|
|
|
+ .ToPageListAsync(dto.PageIndex, dto.PageSize, total);//ToPageAsync
|
|
|
|
|
|
List<int> taskIds = new List<int>();
|
|
|
taskIds = _view.Select(it => it.Id).ToList();
|
|
@@ -1148,7 +1156,7 @@ WHERE
|
|
|
Left Join Sys_Users u On tau.UserId = u.Id
|
|
|
Where tau.IsDel = 0");
|
|
|
|
|
|
- var taskerData = _taskAllocationRep._sqlSugar.SqlQueryable<TaskerDetailsView>(taskerSql).Where(it => taskIds.Contains(it.TAId)).ToList();
|
|
|
+ var taskerData = _sqlSugar.SqlQueryable<TaskerDetailsView>(taskerSql).Where(it => taskIds.Contains(it.TAId)).ToList();
|
|
|
foreach (var item in _view)
|
|
|
{
|
|
|
//任务接收者显示自己任务状态
|
|
@@ -1162,8 +1170,6 @@ WHERE
|
|
|
item.TaskerDetails = taskerData.Where(it => it.TAId == item.Id).ToList();
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
////处理任务总状态 And 任务人状态
|
|
|
//var taskerStatusData = taskerData.Where(it => it.TAId == item.Id && it.TaskCreateUserId != dto.UserId && it.UserId == dto.UserId).FirstOrDefault();
|
|
|
//if (taskerStatusData != null)
|
|
@@ -1251,6 +1257,10 @@ WHERE
|
|
|
string content = $"[{dto.TaskName}] 任务新建成功,请前往任务页面查看详情!";
|
|
|
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, dto.UserIds);
|
|
|
+
|
|
|
+ var userIds = dto.UserIds.Select(x => x.ToString()).ToList();
|
|
|
+
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(userIds, dto.DiId, title, dto.UserId);
|
|
|
}
|
|
|
|
|
|
return Ok(JsonView(true, "操作成功!"));
|
|
@@ -1304,16 +1314,19 @@ WHERE
|
|
|
string title_createUser = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string conten_createUser = $"[{UserName}] 已开始任务,请注意该工作人员任务进度!";
|
|
|
|
|
|
- await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title_createUser, conten_createUser, new List<int>() { taskData.CreateUserId }); //创建人发送消息
|
|
|
+ //创建人发送消息
|
|
|
+ List<int> createUserIds = new List<int>() { taskData.CreateUserId };
|
|
|
+ await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title_createUser, conten_createUser, createUserIds);
|
|
|
+
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(createUserIds.Select(x => x.ToString()).ToList(), taskData.DiId, conten_createUser, taskData.CreateUserId);
|
|
|
|
|
|
+ //其他人发送消息
|
|
|
string title = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string content = $"[{UserName}] 已开始任务.若需查看,请前往任务页面查看详情!";
|
|
|
|
|
|
- await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, taskUserIds); //其他人发送消息
|
|
|
-
|
|
|
-
|
|
|
- string content1 = $"任务已开始,请在规定时间完成!若需查看,请前往任务页面查看详情!";
|
|
|
- await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content1, new List<int>() { dto.UserId }); //设置任务人 发送消息
|
|
|
+ await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, taskUserIds);
|
|
|
+
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(taskUserIds.Select(x => x.ToString()).ToList(), taskData.DiId, content, dto.UserId);
|
|
|
|
|
|
}
|
|
|
|
|
@@ -1336,31 +1349,33 @@ WHERE
|
|
|
if (_view.Code == 0)
|
|
|
{
|
|
|
//发送消息
|
|
|
- var taskData = _taskAllocationRep._sqlSugar.Queryable<Pm_TaskAllocation>().Where(it => it.Id == dto.Id).First();
|
|
|
+ var taskData = _sqlSugar.Queryable<Pm_TaskAllocation>().Where(it => it.Id == dto.Id).First();
|
|
|
if (taskData != null)
|
|
|
{
|
|
|
- var taskUserIds = _taskAllocationRep._sqlSugar.Queryable<Pm_TaskRelevanceUser>().Where(it => it.TAId == dto.Id).Select(it => it.UserId).ToList();
|
|
|
- if (taskUserIds.Count > 0)
|
|
|
- {
|
|
|
- taskUserIds.Remove(dto.UserId);
|
|
|
- }
|
|
|
-
|
|
|
- var UserName = _taskAllocationRep._sqlSugar.Queryable<Sys_Users>().Where(it => it.Id == dto.UserId).Select(it => it.CnName).First();
|
|
|
+ var taskUserIds =_sqlSugar.Queryable<Pm_TaskRelevanceUser>().Where(it => it.TAId == dto.Id).Select(it => it.UserId).Distinct().ToList();
|
|
|
+ var UserName = _sqlSugar.Queryable<Sys_Users>().Where(it => it.Id == dto.UserId).Select(it => it.CnName).First();
|
|
|
|
|
|
string title_createUser = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string conten_createUser = $"[{UserName}] 已完成任务,请前往任务页面进行审核操作!";
|
|
|
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title_createUser, conten_createUser, new List<int>() { taskData.CreateUserId }); //创建人发送消息
|
|
|
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(new List<string>() { taskData.CreateUserId.ToString() }, taskData.DiId, conten_createUser, dto.UserId);
|
|
|
+
|
|
|
string title = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string content = $"[{UserName}] 已完成任务,请注意在规定时间内完成任务.若需查看,请前往任务页面查看详情!";
|
|
|
+ string yw_content = $"[{UserName}] 已完成任务,请注意在规定时间内完成任务!";
|
|
|
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, taskUserIds); //其他人发送消息
|
|
|
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(taskUserIds.Select(x => x.ToString()).ToList(), taskData.DiId, yw_content, dto.UserId);
|
|
|
|
|
|
string content1 = $"任务已完成,等待任务发布人审核!若需查看,请前往任务页面查看详情!";
|
|
|
+ string yw_content1 = $"任务已完成,等待任务发布人审核!";
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content1, new List<int>() { dto.UserId }); //设置任务人 发送消息
|
|
|
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(new List<string>() { dto.UserId.ToString() }, taskData.DiId, yw_content1, dto.UserId);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
return Ok(JsonView(true, "操作成功!"));
|
|
@@ -1394,11 +1409,17 @@ WHERE
|
|
|
|
|
|
string title = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string conten_createUser = $"[{UserName}] 已知晓任务.若需查看,请前往任务页面查看详情!";
|
|
|
+ string qw_conten_createUser = $"[{UserName}] 已知晓任务!";
|
|
|
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, conten_createUser, new List<int>() { taskData.CreateUserId }); //创建人发送消息
|
|
|
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(new List<string>() { taskData.CreateUserId.ToString() }, taskData.DiId, qw_conten_createUser, taskData.CreateUserId);
|
|
|
+
|
|
|
+
|
|
|
string content = $"请注意任务完成时间!若需查看,请前往任务页面查看详情!";
|
|
|
+ string yw_content = $"请注意任务完成时间!";
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, new List<int>() { taskUserData.UserId }); //设置任务人 发送消息
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(new List<string>() { taskUserData.UserId.ToString() }, taskData.DiId, yw_content, taskUserData.UserId);
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -1431,8 +1452,11 @@ WHERE
|
|
|
{
|
|
|
string title = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string content = $"任务已完成!若需查看,请前往任务页面查看详情!";
|
|
|
+ string yw_content = $"任务已完成!";
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, new List<int>() { taskUserData.UserId }); //设置任务人 发送消息
|
|
|
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(new List<string>() { taskUserData.UserId.ToString() }, taskData.DiId, yw_content, taskUserData.UserId);
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -1464,7 +1488,9 @@ WHERE
|
|
|
{
|
|
|
string title = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string content = $"任务未完成!若需查看,请前往任务页面查看详情!";
|
|
|
+ string yw_content = $"任务未完成!";
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, new List<int>() { taskUserData.UserId }); //设置任务人 发送消息
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(new List<string>() { taskUserData.UserId.ToString() }, taskData.DiId, yw_content, taskUserData.UserId);
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -1592,8 +1618,12 @@ WHERE
|
|
|
{
|
|
|
string title = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string content = $"任务评分已完成!若需查看,请前往任务页面查看详情!";
|
|
|
+ string yw_content = $"任务评分已完成!";
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, new List<int>() { taskUserData.UserId }); //设置任务人 发送消息
|
|
|
|
|
|
+
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(new List<string>() { taskUserData.UserId.ToString() }, taskData.DiId, yw_content, taskUserData.UserId);
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -1637,11 +1667,13 @@ WHERE
|
|
|
var taskUserIds = _taskAllocationRep._sqlSugar.Queryable<Pm_TaskRelevanceUser>().Where(it => it.Id == dto.Id).Select(it => it.UserId).ToList();
|
|
|
taskUserIds.Add(taskData.CreateUserId);
|
|
|
|
|
|
-
|
|
|
string title = $"[{taskData.TaskName}] 进度更新!";
|
|
|
string content = $"任务已终止!若需查看,请前往任务页面查看详情!";
|
|
|
+ string yw_content = $"任务已终止!";
|
|
|
await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.TaskProgressUpdate, title, content, taskUserIds); //设置任务人 发送消息
|
|
|
|
|
|
+ await AppNoticeLibrary.SendUserMsg_Task_ToUser(taskUserIds.Select(x => x.ToString()).ToList(), taskData.DiId, yw_content, taskData.CreateUserId);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
return Ok(JsonView(true, "操作成功!"));
|