2026-01-10 09:40:54 +08:00

145 lines
5.0 KiB
C#

using Infrastructure.Attribute;
using Infrastructure.Extensions;
using Infrastructure.Model;
using RIZO.Model.YALITEST;
using RIZO.Model.YALITEST.Dto;
using RIZO.Repository;
using RIZO.Service.YALITEST.IService;
namespace RIZO.Service.YALITEST
{
/// <summary>
/// Service业务层处理
/// </summary>
[AppService(ServiceType = typeof(ITest1Service), ServiceLifetime = LifeTime.Transient)]
public class Test1Service : BaseService<Test1>, ITest1Service
{
private readonly Test2Service test2Service = new Test2Service();
/// <summary>
/// 查询列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public PagedInfo<Test1Dto> GetList(Test1QueryDto parm)
{
var predicate = QueryExp(parm);
var response = Queryable()
.Where(predicate.ToExpression())
.ToPage<Test1, Test1Dto>(parm);
return response;
}
/// <summary>
/// 获取详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public Test1 GetInfo(long Id)
{
var response = Queryable()
.Where(x => x.Id == Id)
.First();
return response;
}
/// <summary>
/// 添加
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public Test1 AddTest1(Test1 model)
{
return Insertable(model).ExecuteReturnEntity();
}
/// <summary>
/// 修改
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public int UpdateTest1(Test1 model)
{
return Update(model, true);
}
/// <summary>
/// 查询导出表达式
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
private static Expressionable<Test1> QueryExp(Test1QueryDto parm)
{
var predicate = Expressionable.Create<Test1>();
return predicate;
}
public ApiResult CreateTest1(Test1 parm)
{
try
{
if (parm != null)
{
bool isFlag = Queryable()
.Where(it => it.Partnumber == parm.Partnumber && it.Rountingcode == parm.Rountingcode && it.Operationcode == parm.Operationcode)
.Any();
if (isFlag)
{
return new ApiResult(201, "该工序已扫码");
}
parm.Status = 0;
parm.Worker = "admin";
parm.Starttime = DateTime.Now;
AddTest1(parm);
if (parm.Operationxuhao != null)
{
int xuhao = (int)parm.Operationxuhao - 1;
if (xuhao > 0)
{
bool isFlag2 = Queryable()
.Where(it => it.Partnumber == parm.Partnumber && it.Rountingcode == parm.Rountingcode && it.Operationxuhao == xuhao)
.Any();
if (!isFlag2)
{
return new ApiResult(201, "该工序前序未扫码");
}
}
}
bool isFlag3 = test2Service.Queryable()
.Where(it => it.Partnumber == parm.Partnumber && it.Rountingcode == parm.Rountingcode && it.Operationcode == parm.Operationcode)
.Any();
if (!isFlag)
{
Test2 test2New = new Test2();
test2New.Linecode = parm.Linecode;
test2New.Linename = parm.Linename;
test2New.Machinecode = parm.Machinecode;
test2New.Machinename = parm.Machinename;
test2New.Rountingcode = parm.Rountingcode;
test2New.Rountingname = parm.Rountingname;
test2New.Operationcode = parm.Operationcode;
test2New.Operationname = parm.Operationname;
test2New.Operationxuhao = parm.Operationxuhao;
test2New.Status = parm.Status;
test2New.Worker = parm.Worker;
test2New.Starttime = parm.Starttime;
test2Service.AddTest2(test2New);
}
return new ApiResult(200, "Success");
}
else
{
return new ApiResult(201, "传输参数错误");
}
}
catch (Exception ex)
{
return new ApiResult(201, ex.ToString());
}
}
}
}