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

135 lines
5.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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
}
}