BaoKai_202508_Wms_Jingwang_.../WMS.Business/SC/BussProcess.cs
2025-08-24 21:52:42 +08:00

150 lines
5.2 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WMS.IData;
using WMS.Common;
using WMS.Model.Base;
using WMS.Model.SC;
using System.Data;
namespace WMS.Business.SC
{
public class BussProcess : IBussFactory
{
public List<ScProcessModel> GetProcess(ScProcessModel model)
{
DataTable dt = DataProvider.Instance.Process.GetProcess(model);
if (dt != null)
{
List<ScProcessModel> list = ConvertHelper<ScProcessModel>.ConvertToList(dt);
return list;
}
return null;
}
/// <summary>
/// 新增或修改
/// </summary>
/// <param name="model">实体Model</param>
/// <param name="flg">操作标志 0 新增1 修改</param>
/// <returns></returns>
public string ManageProcess(ScProcessModel model, int flg)
{
if (flg == 0)
{
DataProvider.Instance.Process.AddProcess(model);
}
else
{
DataProvider.Instance.Process.UpdateProcess(model);
}
logList.Add(DataProvider.Instance.logData);
Transaction = DataProvider.Instance.TranOracle;
TaCmtOrRak();
return ErrText;
}
/// <summary>
/// 操作加工表和加工破损表
/// </summary>
/// <param name="model">加工</param>
/// <param name="list_break">加工破损表</param>
/// <param name="flg">操作标志 0 新增 1 修改</param>
/// <returns></returns>
public string ManageProAndBreak(ScProcessModel model, List<ProBreakModel> list_break, int flg)
{
#region
// 修改计划商品中的完成数量 、完成日期-- 加上当前完成的数量记录最新的完成数量、完成日期
PlanGoodsModel goods_model = new PlanGoodsModel();
goods_model.PLAN_ID = model.TASK_ID;
goods_model.GOODS_ID = model.GOODS_ID;
DataTable dt = DataProvider.Instance.PlanGoods.GetPlanGoodsList(goods_model);
List<PlanGoodsModel> list = ConvertHelper<PlanGoodsModel>.ConvertToList(dt);
if (list.Count > 0)
{
goods_model = list[0];
}
#endregion
if (flg == 0)//新增
{
if (goods_model != null)
{
goods_model.GOODS_COMPLETENUM += model.FINISH_NUM;
goods_model.COMPLETE_DATE = model.FINISH_DATE;
DataProvider.Instance.PlanGoods.Update(goods_model);
logList.Add(DataProvider.Instance.logData);
}
DataProvider.Instance.Process.AddProcess(model);//加工详情
logList.Add(DataProvider.Instance.logData);
//DataProvider.Instance.Process.AddProcess(model);//加工完成
//logList.Add(DataProvider.Instance.logData);
foreach (ProBreakModel breakModel in list_break)
{
breakModel.RECORD_DATE = model.RecordDate;
breakModel.RECORD_PER = model.RECORD_PER;
DataProvider.Instance.ProBreak.AddProBreak(breakModel);
logList.Add(DataProvider.Instance.logData);
}
}
else
{
//if (goods_model != null)
//{
// DataTable dt_process = DataProvider.Instance.Process.GetProcess(model);
// List<ProcessGoodsModel> lis = ConvertHelper<ProcessGoodsModel>.ConvertToList(dt_process);
// if (lis.Count > 0)
// {
// if (model.FINISH_NUM - lis[0].FINISH_NUM == 0)
// {
// goods_model.GOODS_COMPLETENUM += (model.FINISH_NUM - lis[0].FINISH_NUM);
// DataProvider.Instance.PlanGoods.Update(goods_model);
// logList.Add(DataProvider.Instance.logData);
// }
// }
//}
DataProvider.Instance.Process.UpdateProcess(model);
logList.Add(DataProvider.Instance.logData);
foreach (ProBreakModel breakModel in list_break)
{
DataProvider.Instance.ProBreak.UpdateProBreak(breakModel);
logList.Add(DataProvider.Instance.logData);
}
}
Transaction = DataProvider.Instance.TranOracle;
TaCmtOrRak();
return ErrText;
}
/// <summary>
/// 删除
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public string DeleteProcess(ScProcessModel model)
{
DataProvider.Instance.Process.DeleteProcess(model);
logList.Add(DataProvider.Instance.logData);
Transaction = DataProvider.Instance.TranOracle;
TaCmtOrRak();
return ErrText;
}
}
}