using ProductionSystem_Log;
using ProductionSystem_Model.DbModel;
using ProductionSystem_Model.Enum;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
namespace ProductionSystem_Service
{
public class ProductStepService : DbContext
{
///
/// 新增产品步骤内容
///
///
///
public int AddProductStep(T_Product_Step t_Product_Step)
{
try
{
return db.Insertable(t_Product_Step).ExecuteCommand();
}catch (Exception ex)
{
LogHelper.Error(ex, "执行ProductStepService下AddProductStep时异常");
return -1;
}
}
///
/// 查询最新一条记录
///
///
///
///
///
public T_Product_Step QueryLatestStep(string stepName,string equipmentName,string productType,string productCode)
{
return db.Queryable().
Where(m => m.StepName == stepName
&& m.EquipmentName == equipmentName
&& m.ProductType == productType && m.ProductBarcode==productCode)
.OrderByDescending(x=>x.CreateTime)
.First();
}
///
/// 插入其他step
///
///
///
///
public void InsertOther(string producctType,string equipment, string productCode,string toStepName)
{
var other = QueryLatestStep(ModeTypeEnum.BZ1_DB.ToString(), equipment, producctType,productCode);
if(other != null)
{
other.Id = Guid.NewGuid().ToString("N");
other.StepName = toStepName;
db.Insertable(other).ExecuteCommand();
}
}
///
/// 更新水泵速度
///
///
///
///
///
///
///
public void UpdateSBSpeed(string producctType,string productCode, string stepName,string equipment,string writeVal,string returnVal)
{
var entity = QueryLatestStep(stepName, equipment, producctType, productCode);
if(entity != null)
{
entity.WriteValue = writeVal;
entity.ReturnValue = returnVal;
db.Updateable(entity).ExecuteCommand();
}
}
}
}