59 lines
2.0 KiB
C#
59 lines
2.0 KiB
C#
using Infrastructure.Attribute;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using SqlSugar;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using ZR.Model.mes.md;
|
|
using ZR.Model.mes.pro;
|
|
using ZR.Service.mes.pro.IService;
|
|
using ZR.Service.MES.md.IService;
|
|
|
|
namespace ZR.Service.mes.pro
|
|
{
|
|
|
|
[AppService(ServiceType = typeof(IProWorkplanService), ServiceLifetime = LifeTime.Transient)]
|
|
public class ProWorkplanService : BaseService<ProWorkplan>, IProWorkplanService
|
|
{
|
|
|
|
public (List<ProWorkplan>, int) GetAllData(int pageNum, int pageSize, int year, int week, string partNumber, string color)
|
|
{
|
|
var predicate = Expressionable.Create<ProWorkplan>()
|
|
.AndIF(year > 0, it => it.Year == year)
|
|
.AndIF(week > 0, it => it.Week == week)
|
|
.AndIF(!string.IsNullOrEmpty(partNumber), it => it.Partnumber.Contains( partNumber))
|
|
.AndIF(!string.IsNullOrEmpty(color), it => it.Color.Contains(color))
|
|
.ToExpression();
|
|
int totalCount = 0;
|
|
List<ProWorkplan> proWorkplanList = Context.Queryable<ProWorkplan>().Where(predicate).ToPageList(pageNum, pageSize, ref totalCount);
|
|
return (proWorkplanList, totalCount);
|
|
}
|
|
|
|
|
|
public int AddWorkPlan(ProWorkplan proWorkplan)
|
|
{
|
|
|
|
proWorkplan.Id = DateTime.Now.ToString("yyyyMMddHHmmss");
|
|
return Context.Insertable(proWorkplan).ExecuteCommand();
|
|
}
|
|
|
|
public int UpdateWorkPlan(ProWorkplan proWorkplan)
|
|
{
|
|
return Context.Updateable(proWorkplan).ExecuteCommand();
|
|
}
|
|
|
|
public int DeleteWorkPlan(string id)
|
|
{
|
|
return Context.Deleteable<ProWorkplan>().In(id).ExecuteCommand();
|
|
}
|
|
|
|
public List<ProWorkorder> GetWorkorderList(string id)
|
|
{
|
|
return Context.Queryable<ProWorkorder>().Where(it => it.FkProPlanId == id).ToList();
|
|
}
|
|
}
|
|
}
|