/*
*所有关于Dt_materielinfo类的业务代码应在此处编写
*可使用repository.调用常用方法,获取EF/Dapper等信息
*如果需要事务请使用repository.DbContextBeginTransaction
*也可使用DBServerProvider.手动获取数据库相关信息
*用户信息、权限、角色等使用UserContext.Current操作
*Dt_materielinfoService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter
*/
using Google.Protobuf.WellKnownTypes;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.DependencyInjection;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Threading.Tasks;
using WIDESEA.Core.BaseProvider;
using WIDESEA.Core.Enums;
using WIDESEA.Core.Extensions;
using WIDESEA.Core.Extensions.AutofacManager;
using WIDESEA.Core.Filters;
using WIDESEA.Core.ManageUser;
using WIDESEA.Core.Services;
using WIDESEA.Core.Utilities;
using WIDESEA.Entity.DomainModels;
using WIDESEA.Services.IRepositories;
using WIDESEA.Services.Repositories;
using WIDESEA_Common.LogEnum;
namespace WIDESEA.Services.Services
{
public partial class Dt_EmptyPalletService
{
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly IDt_EmptyPalletRepository _repository;//访问数据库
[ActivatorUtilitiesConstructor]
public Dt_EmptyPalletService(
IDt_EmptyPalletRepository dbRepository,
IHttpContextAccessor httpContextAccessor
)
: base(dbRepository)
{
_httpContextAccessor = httpContextAccessor;
_repository = dbRepository;
//多租户会用到这init代码,其他情况可以不用
//base.Init(dbRepository);
}
// 重写一个导入的功能
/////
///// 导入表数据Excel
/////
/////
/////
//[HttpPost, Route("Import")]
////[ApiExplorerSettings(IgnoreApi = true)]
//public override WebResponseContent Import(List fileInput)
//{
// WebResponseContent content = new WebResponseContent();
// return content.OK("成功");
//}
public override WebResponseContent Add(SaveModel saveDataModel)
{
WebResponseContent content = new WebResponseContent();
try
{
saveDataModel.MainData["EmptyPallet_creator"] = UserContext.Current.UserTrueName;
saveDataModel.MainData["EmptyPallet_createtime"] = DateTime.Now;
saveDataModel.MainData["EmptyPallet_modifier"] = UserContext.Current.UserTrueName;
saveDataModel.MainData["EmptyPallet_modifiertime"] = DateTime.Now;
string materiel_pallet_code = saveDataModel.MainData["EmptyPallet_name"].ToString();
if (materiel_pallet_code.Length != 6)
{
return content.Error("托盘条码只能是六位数");
}
if (repository.Exists(x => x.EmptyPallet_name == materiel_pallet_code))
return content.Error("当前托盘条码已存在,请勿重复添加.");
content = base.Add(saveDataModel);
}
catch (Exception ex)
{
content.Error("添加车型失败:" + ex.Message);
}
finally
{
if (content.Status)
content.OK("添加托盘信息成功.");
else
content.Error("添加托盘信息失败:" + content.Message);
}
return content;
}
public override WebResponseContent Update(SaveModel saveModel)
{
WebResponseContent content = new WebResponseContent();
try
{
saveModel.MainData["EmptyPallet_modifier"] = UserContext.Current.UserTrueName;
saveModel.MainData["EmptyPallet_modifiertime"] = DateTime.Now;
content = base.Update(saveModel);
//LogRecord.WriteLog((int)LogEnum.OutBound, $"{UserContext.Current.UserTrueName}轴承选配出库:参数:{saveModel.Serialize()},返回参数:{content.Serialize()}");
}
finally
{
if (content.Status)
{
content.OK("修改托盘信息成功.");
Logger.AddLog(LoggerType.Add, saveModel, $"{DateTime.Now}修改托盘管理的信息记录-成功", content);
}
else
{
content.Error("修改托盘信息失败:" + content.Message);
Logger.AddLog(LoggerType.Add, saveModel, $"{DateTime.Now}修改托盘管理的信息记录-失败", content);
}
}
return content;
}
}
}