zhuangpei-mesbackend/DOAN.Service/MES/process/ProcessmodelRoutingService.cs
2025-11-06 11:32:49 +08:00

110 lines
3.9 KiB
C#

using System;
using SqlSugar;
using Infrastructure.Attribute;
using Infrastructure.Extensions;
using DOAN.Model;
using DOAN.Model.Dto;
using DOAN.Repository;
using DOAN.Service.Business.IBusinessService;
using System.Linq;
using DOAN.Service.MES.process.IService;
using DOAN.Model.MES.process;
using DOAN.Model.MES.process.Dto;
using Microsoft.AspNetCore.Http;
using DOAN.Model.Business;
namespace DOAN.Service.Business
{
/// <summary>
/// 工艺路线表Service业务层处理
/// </summary>
[AppService(ServiceType = typeof(IProcessmodelRoutingService), ServiceLifetime = LifeTime.Transient)]
public class ProcessmodelRoutingService : BaseService<ProcessmodelRouting>, IProcessmodelRoutingService
{
/// <summary>
/// 查询工艺路线表列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public PagedInfo<ProcessmodelRoutingDto> GetList(ProcessmodelRoutingQueryDto parm)
{
var predicate = Expressionable.Create<ProcessmodelRouting>()
.AndIF(!string.IsNullOrEmpty(parm.ProductCode), p => p.ProductCode.Contains(parm.ProductCode))
.AndIF(!string.IsNullOrEmpty(parm.RoutingCode), p => p.RoutingCode.Contains(parm.RoutingCode))
.AndIF(!string.IsNullOrEmpty(parm.RoutingName), p => p.RoutingName.Contains(parm.RoutingName))
.AndIF(!string.IsNullOrEmpty(parm.Version), p => p.Version.Contains(parm.Version));
var response = Context.Queryable<ProcessmodelRouting>()
.Where(predicate.ToExpression())
.ToPage<ProcessmodelRouting, ProcessmodelRoutingDto>(parm);
return response;
}
/// <summary>
/// 获取详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public ProcessmodelRouting GetInfo(long Id)
{
var response = Queryable()
.Where(x => x.Id == Id)
.First();
return response;
}
/// <summary>
/// 添加工艺路线表
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public ProcessmodelRouting AddProcessmodelRouting(ProcessmodelRouting model)
{
return Context.Insertable(model).ExecuteReturnEntity();
}
/// <summary>
/// 修改工艺路线表
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public int UpdateProcessmodelRouting(ProcessmodelRouting model)
{
var response = Update(w => w.Id == model.Id, it => new ProcessmodelRouting()
{
RoutingCode = model.RoutingCode,
RoutingName = model.RoutingName,
ProductCode = model.ProductCode,
Description = model.Description,
Version = model.Version,
UpdateTime = model.UpdateTime,
IsActive = model.IsActive,
});
return response;
}
public int ImportExcel(IFormFile formFile, string username)
{
throw new NotImplementedException();
}
/// <summary>
/// 获取项目列表
/// </summary>
public List<ProjectListDto> GetModelProjectList()
{
var response = Context.Queryable<ProcessmodelProject>()
.Select(p => new ProjectListDto
{
ProjectCode = p.ProjectCode,
ProjectName = p.ProjectName,
})
.ToList();
return response;
}
}
}