SGGL_HBAZ/SGGL/BLL/HJGL/MaterialManage/StockInService.cs

251 lines
10 KiB
C#
Raw Normal View History

2025-02-12 09:27:47 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
/// <summary>
/// 焊材入库录入
/// </summary>
public static class StockInService
{
/// <summary>
/// 根据主键获取焊材入库
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public static Model.Weld_StockIn GetStockInById(string id)
{
return Funs.DB.Weld_StockIn.FirstOrDefault(e => e.StockInId == id);
}
/// <summary>
/// 添加焊材入库
/// </summary>
/// <param name="stockIn"></param>
public static void AddStockIn(Model.Weld_StockIn stockIn)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = new Model.Weld_StockIn();
newStockIn.StockInId = stockIn.StockInId;
newStockIn.ProjectId = stockIn.ProjectId;
newStockIn.WeldId = stockIn.WeldId;
newStockIn.Amount = stockIn.Amount;
newStockIn.Weight = stockIn.Weight;
newStockIn.RecycleAmount = stockIn.RecycleAmount;
newStockIn.RecycleWeight = stockIn.RecycleWeight;
newStockIn.Materialman = stockIn.Materialman;
newStockIn.InStockDate = stockIn.InStockDate;
newStockIn.IsReview = stockIn.IsReview;
newStockIn.ReviewMan = stockIn.ReviewMan;
newStockIn.ReviewDate = stockIn.ReviewDate;
newStockIn.ReviewResult = stockIn.ReviewResult;
newStockIn.AttachUrl = stockIn.AttachUrl;
newStockIn.Warrantybook = stockIn.Warrantybook;
newStockIn.HeartNo = stockIn.HeartNo;
newStockIn.SupplierId = stockIn.SupplierId;
newStockIn.UnitStoreId = stockIn.UnitStoreId;
newStockIn.Flag = stockIn.Flag;
newStockIn.UsingAmount = stockIn.UsingAmount;
newStockIn.Number = stockIn.Number;
newStockIn.MaterialCertificateNumber = stockIn.MaterialCertificateNumber;
db.Weld_StockIn.InsertOnSubmit(newStockIn);
db.SubmitChanges();
}
/// <summary>
/// 修改焊材入库
/// </summary>
/// <param name="stockIn"></param>
public static void UpdateStockIn(Model.Weld_StockIn stockIn)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockIn.StockInId);
if (newStockIn != null)
{
newStockIn.WeldId = stockIn.WeldId;
newStockIn.Amount = stockIn.Amount;
newStockIn.Weight = stockIn.Weight;
newStockIn.RecycleAmount = stockIn.RecycleAmount;
newStockIn.RecycleWeight = stockIn.RecycleWeight;
//newStockIn.Materialman = stockIn.Materialman;
//newStockIn.InStockDate = stockIn.InStockDate;
newStockIn.IsReview = stockIn.IsReview;
//newStockIn.ReviewMan = stockIn.ReviewMan;
newStockIn.ReviewDate = stockIn.ReviewDate;
//newStockIn.ReviewResult = stockIn.ReviewResult;
newStockIn.AttachUrl = stockIn.AttachUrl;
//newStockIn.UsingAmount = stockIn.UsingAmount;
newStockIn.Warrantybook = stockIn.Warrantybook;
newStockIn.HeartNo = stockIn.HeartNo;
newStockIn.SupplierId = stockIn.SupplierId;
newStockIn.UnitStoreId = stockIn.UnitStoreId;
newStockIn.MaterialCertificateNumber = stockIn.MaterialCertificateNumber;
db.SubmitChanges();
}
}
public static void UpdateStockIn1(Model.Weld_StockIn stockIn)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockIn.StockInId);
if (newStockIn != null)
{
newStockIn.WeldId = stockIn.WeldId;
newStockIn.IsReview = stockIn.IsReview;
newStockIn.ReviewDate = stockIn.ReviewDate;
newStockIn.AttachUrl = stockIn.AttachUrl;
newStockIn.Warrantybook = stockIn.Warrantybook;
newStockIn.HeartNo = stockIn.HeartNo;
newStockIn.SupplierId = stockIn.SupplierId;
newStockIn.UnitStoreId = stockIn.UnitStoreId;
newStockIn.MaterialCertificateNumber = stockIn.MaterialCertificateNumber;
db.SubmitChanges();
}
}
/// <summary>
/// 更新附件
/// </summary>
/// <param name="stockInId"></param>
/// <param name="attUrl"></param>
public static void UpdateAttachFile( string stockInId,string attUrl)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockInId);
if (newStockIn != null)
{
newStockIn.AttachUrl = attUrl;
db.SubmitChanges();
}
}
/// <summary>
/// 更新焊材入库复验
/// </summary>
/// <param name="stockIn"></param>
public static void UpdateStockInCheck(Model.Weld_StockIn stockIn)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockIn.StockInId);
if (newStockIn != null)
{
newStockIn.ReviewMan = stockIn.ReviewMan;
newStockIn.ReviewDate = stockIn.ReviewDate;
newStockIn.ReviewResult = stockIn.ReviewResult;
db.SubmitChanges();
}
}
/// <summary>
/// 更新焊材库存领用数量
/// </summary>
/// <param name="stockInId"></param>
/// <param name="oneUsedAmount"></param>
/// <param name="twoAmount"></param>
public static void UpdateStockInUsingAmount(string stockInId,decimal? oneUsedAmount,decimal? twoAmount)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockInId);
if (newStockIn != null)
{
decimal? usingAmount = newStockIn.UsingAmount.HasValue ? newStockIn.UsingAmount : 0;
decimal? recycleAmount = newStockIn.RecycleAmount.HasValue ? newStockIn.RecycleAmount : 0;
newStockIn.UsingAmount = usingAmount + oneUsedAmount;
newStockIn.RecycleAmount = recycleAmount - twoAmount;
db.SubmitChanges();
}
}
/// <summary>
/// 更新库存数量(退回)
/// </summary>
/// <param name="stockInId">入库ID</param>
/// <param name="recycleAmount">退回数量</param>
public static void UpdateStockInAmount(string stockInId, decimal recycleAmount)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockInId);
if (newStockIn != null)
{
//var weld = BLL.WeldInfoService.GetWeldInfoById(newStockIn.WeldId);
//var type = BLL.WeldTypeService.GetWeldTypeById(weld.WeldTypeId);
//if (usingAmount >= recycleAmount)
//{
// newStockIn.UsingAmount = usingAmount - recycleAmount;
//}
//else
//{
// newStockIn.UsingAmount = 0;
//}
decimal? rec = newStockIn.RecycleAmount.HasValue ? newStockIn.RecycleAmount : 0;
newStockIn.RecycleAmount = rec + recycleAmount;
db.SubmitChanges();
}
}
public static void UpdateStockInAmount(string stockInId, decimal oldRecyclAmount, decimal newRecycleAmount)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn newStockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockInId);
if (newStockIn != null)
{
decimal? rec = newStockIn.RecycleAmount.HasValue ? newStockIn.RecycleAmount : 0;
newStockIn.RecycleAmount = rec - oldRecyclAmount + newRecycleAmount;
db.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除焊材入库
/// </summary>
/// <param name="stockInId"></param>
public static void DeleteStockInById(string stockInId)
{
Model.SGGLDB db = Funs.DB;
Model.Weld_StockIn stockIn = db.Weld_StockIn.FirstOrDefault(e => e.StockInId == stockInId);
if (stockIn != null)
{
db.Weld_StockIn.DeleteOnSubmit(stockIn);
db.SubmitChanges();
}
}
/// <summary>
/// 根据材料ID和流水号获取焊材信息
/// </summary>
/// <param name="weldId"></param>
/// <param name="number"></param>
/// <returns></returns>
//public static Model.Weld_StockIn GetStockInByWeldIdAndNum(string weldId, string number)
//{
// return db.Weld_StockIn.FirstOrDefault(e => e.WeldId == weldId && e.Number == number);
//}
/// <summary>
/// 根据焊材Id获取入库列表
/// </summary>
/// <param name="weldId"></param>
/// <returns></returns>
public static List<Model.Weld_StockIn> GetStockInListByWeldId(string weldId)
{
return (from x in Funs.DB.Weld_StockIn where x.WeldId == weldId select x).ToList();
}
/// <summary>
/// 根据焊材ID获取焊材入库数量
/// </summary>
/// <param name="weldId"></param>
/// <returns></returns>
public static int GetStockInByWeldId(string weldId)
{
return (from x in Funs.DB.Weld_StockIn where x.WeldId == weldId select x).Count();
}
}
}