/*
*所有关于dt_equipmentinfo类的业务代码应在此处编写
*可使用repository.调用常用方法,获取EF/Dapper等信息
*如果需要事务请使用repository.DbContextBeginTransaction
*也可使用DBServerProvider.手动获取数据库相关信息
*用户信息、权限、角色等使用UserContext.Current操作
*dt_equipmentinfoService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter
*/
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.Extensions.AutofacManager;
using WIDESEA_Entity.DomainModels;
using System.Linq;
using WIDESEA_Core.Utilities;
using System.Linq.Expressions;
using WIDESEA_Core.Extensions;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using WIDESEA_WCS.IRepositories;
using WIDESEA_Core.FreeDB;
using WIDESEA_Comm.LogInfo;
using WIDESEA_Core.ManageUser;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
namespace WIDESEA_WCS.Services
{
public partial class dt_equipmentinfoService
{
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly Idt_equipmentinfoRepository _repository;//访问数据库
[ActivatorUtilitiesConstructor]
public dt_equipmentinfoService(
Idt_equipmentinfoRepository dbRepository,
IHttpContextAccessor httpContextAccessor
)
: base(dbRepository)
{
_httpContextAccessor = httpContextAccessor;
_repository = dbRepository;
//多租户会用到这init代码,其他情况可以不用
//base.Init(dbRepository);
}
///
/// 修改设备状态
///
///
///
public WebResponseContent ChangEquipmentState(SaveModel model)
{
WebResponseContent content = new WebResponseContent();
List equipmentinfos = new List();
try
{
FreeDB freeDB = new FreeDB();
List keys = new List();
foreach (var item in model.DelKeys)
{
keys.Add(Guid.Parse(item.ToString()));
}
int res = freeDB.Update().Set(t => t.equipment_state == model.Extra.ToString()).Where(t => keys.Contains(t.equipment_id)).ExecuteAffrows();
equipmentinfos = freeDB.Select().Where(x => keys.Contains(x.equipment_id)).ToList();
content.OK();
//WriteLog.Write_Log("基础信息修改", "updateEqState", UserContext.Current.UserName + "修改成功," + res, model);
WriteDBLog.Success($"{(model.Extra.ToString() == "Enable" ? "启用设备" : "禁用设备")}", new { 数据 = equipmentinfos }, "PCS", UserContext.Current.UserTrueName);
}
catch (Exception ex)
{
//WriteLog.Write_Log("基础信息修改", "updateEqState", UserContext.Current.UserName + "修改异常," + ex.Message, model);
WriteDBLog.Error($"{(model.Extra.ToString() == "Enable" ? "启用设备" : "禁用设备")}", new { 数据 = equipmentinfos }, "PCS", UserContext.Current.UserTrueName);
content.Error(ex.Message);
}
return content;
}
}
}