009_DI-Elec/Learun.Application.Web/Areas/ZZDT_EC/Controllers/ec_WireGroupNoticeController.cs

135 lines
5.0 KiB
C#
Raw Normal View History

2025-08-13 11:14:39 +08:00
using Learun.Application.Organization;
using Learun.Application.TwoDevelopment.ZZDT_EC;
using Learun.Util;
using Learun.Util.SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using static Learun.Application.TwoDevelopment.ZZDT_EC.IO_WorkFlowService;
namespace Learun.Application.Web.Areas.ZZDT_EC.Controllers
{
/// <summary>
/// 版 本 PIT-ADMS V7.0.3 敏捷开发框架
/// Copyright (c) 2013-2018 Hexagon PPM
/// 创 建:超级管理员
/// 日 期2023-02-23 11:30
/// 描 述:信号通知表
/// </summary>
public class ec_WireGroupNoticeController : MvcControllerBase
{
#region
/// <summary>
/// 主页面
/// <summary>
/// <returns></returns>
[HttpGet]
public ActionResult Index()
{
return View();
}
#endregion
#region
/// <summary>
/// 获取列表数据
/// <summary>
/// <returns></returns>
[HttpGet]
[AjaxOnly]
public ActionResult GetList(string queryJson)
{
var queryParam = queryJson.ToJObject();
string projId = queryParam["ProjectId"]?.ToString();
var NoticeTableName = ProjectSugar.TableName<ec_wire_group_noticeEntity>(projId);
var SignalTableName = ProjectSugar.TableName<ec_Wire_GroupEntity>(projId);
//SugarRedis 需要 NET Standard 2.1不支持Framework
var users = SqlSugarHelper.Db.Queryable<UserEntity>().ToList();
#region
var _User = users.Single(x => x.F_UserId == LoginUserInfo.Get().userId);
var _Company = SqlSugarHelper.Db.Queryable<CompanyEntity>().First(x => x.F_CompanyId == _User.F_CompanyId);
var DepartmentStr = "";
Department _Department;
if (_Company != null)
{
DepartmentStr = _Company.F_FullName;
if (DepartmentStr.Contains("轮机"))
{
_Department = Department.;
}
else
{
_Department = Department.;
}
}
else
{
_Department = Department.;
}
var res = SqlSugarHelper.Db.Queryable<ec_wire_group_noticeEntity>().AS(NoticeTableName).
Where(x => !string.IsNullOrEmpty(x.WireGroupID) && !x.CheckFLG).
OrderByDescending(x => x.CreateTime).
Where(x => x.CompanyID == _Department).ToList();
//Where(x => x.CompanyID == _Department).ToList();//收到本专业的通知即可
#endregion
foreach (ec_wire_group_noticeEntity noticeEntity in res)
{
var signal = SqlSugarHelper.Db.Queryable<ec_Wire_GroupEntity>().AS(SignalTableName).First(x => x.Wire_Group_ID == noticeEntity.WireGroupID);
var user_Send = users.FirstOrDefault(x => x.F_UserId == noticeEntity?.CreateUserID);
var user_Confrim = users.FirstOrDefault(x => x.F_UserId == noticeEntity?.UpdateUserID);
if (signal != null)
{
noticeEntity.Group_Name = signal.Group_Name;
noticeEntity.Group_Desc = signal.Group_Desc;
noticeEntity.Group_Desc_EN = signal.Group_Desc_EN;
noticeEntity.IO_Type = signal.IO_Type;
noticeEntity.CreateUserName = user_Send?.F_RealName;
noticeEntity.UpdateUserName = user_Confrim?.F_RealName;
noticeEntity.Action = noticeEntity.ActionID.ToString();
}
else
{
//信号都没了
noticeEntity.WireGroupID = "-1";
}
}
return Success(res.Where(x => !string.IsNullOrEmpty(x.Group_Name) || x.WireGroupID != "-1").ToList());
}
#endregion
#region
/// <summary>
/// 已读
/// <param name="keyValue">主键</param>
/// <summary>
/// <returns></returns>
[HttpPost]
[AjaxOnly]
public ActionResult Read(string ProjectId, string keyValue)
{
var bll = new ec_Wire_GroupBLL();
List<string> NoticeIds = new List<string>();
NoticeIds.Add(keyValue);
var res = bll.ReadNotification(ProjectId, NoticeIds);
return Success("OK");
}
/// <summary>
/// 保存实体数据(新增、修改)
/// <param name="keyValue">主键</param>
/// <summary>
/// <returns></returns>
[HttpPost]
[AjaxOnly]
public ActionResult Reads(string ProjectId, List<string> NoticeIds)
{
var bll = new ec_Wire_GroupBLL();
var res = bll.ReadNotification(ProjectId, NoticeIds);
return Success("全部已阅!");
}
#endregion
}
}