diff --git a/MESClassLibrary/BLL/ZPPlan/ZP_MK_PlanBLL.cs b/MESClassLibrary/BLL/ZPPlan/ZP_MK_PlanBLL.cs new file mode 100644 index 0000000..a06adc2 --- /dev/null +++ b/MESClassLibrary/BLL/ZPPlan/ZP_MK_PlanBLL.cs @@ -0,0 +1,358 @@ +using MESClassLibrary.BLL.Log; +using MESClassLibrary.DAL.ZPPlan; +using MESClassLibrary.EFModel; +using MESClassLibrary.Model; +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Reflection; +using System.Text; + +namespace MESClassLibrary.BLL.BasicInfo +{ + public class ZP_MK_PlanBLL + { + readonly BasicBLL db = new BasicBLL(); + + /// + /// 新增信息 + /// + /// + /// + public bool AddInfo(tb_ZP_MK_Plan md) + { + try + { + var now = DateTime.Now; + md.ID = Guid.NewGuid().ToString(); + md.CreateTime = now; + md.OrderNo = now.ToString("yyyyMMdd"); + md.State = 0; + md.ProductCount = 0; + md.BadCount = 0; + md.Item = GetItem(md.OrderNo); + var result = db.AddInfo(md); + return result; + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return false; + } + } + + private int GetItem(string orderNo) + { + var lastItem = db.Search(q => q.OrderNo == orderNo, q => q.CreateTime).LastOrDefault(); + return lastItem == null ? 1 : (lastItem.Item.Value + 1); + } + + /// + /// 修改信息 + /// + /// + /// + public bool UpdateInfo(tb_ZP_MK_Plan md, ref string msg) + { + try + { + var data = db.SearchInfoByID(md.ID); + if (data.State == 3) + { + msg = "该计划已经完成"; + return false; + } + if (data.ProductCount.GetValueOrDefault(0).CompareTo(md.OrderCount) > 0) + { + msg = "计划数量不能小于完成数量"; + return false; + } + if (data.ProductCount.GetValueOrDefault(0) == 0) + { + //data.StationID = md.StationID; + data.PartNo = md.PartNo; + data.OrderDate = md.OrderDate; + } + + //data.IsOneMore = md.IsOneMore; + data.OrderCount = md.OrderCount; + data.OrderName = md.OrderName; + return db.UpdateInfo(data); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + msg = ex.ToString(); + return false; + } + + } + + /// + /// 删除信息 + /// + /// + /// + /// + public bool DeleteInfo(tb_ZP_MK_Plan md) + { + try + { + return db.DelInfo(md); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return false; + } + + } + + /// + /// 查询全部信息分页 + /// + /// + public string SearchInfoAll(int page, + int pagesize, + string startTime, + string endTime, + string partNo) + { + try + { + string jsonStr = "[]"; + int total = 0;//总行数 + IEnumerable list = SearchDB(startTime, endTime, partNo); + if (list.Any()) + { + List modelList = new List(); + total = list.Count(); + int Skipcount = (Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize); + list = list.Skip(Skipcount).Take(Convert.ToInt32(pagesize)); + + ProductBLL prodBll = new ProductBLL(); + var prodList = prodBll.SearchAll(); + //StationBLL stationBll = new StationBLL(); + //var stationList = stationBll.SearchAll(); + + foreach (var item in list) + { + var prodInfo = prodList.Where(q => q.PartNo == item.PartNo).FirstOrDefault(); + //var stationInfo = stationList.Where(q => q.StationID == item.StationID).FirstOrDefault(); + + ZP_MK_PlanModel zpm = Tool.Mapper(item); + //zpm.StationNo = stationInfo == null ? "" : stationInfo.StationNo; + zpm.ProductName = prodInfo == null ? "" : prodInfo.ProductName; + + modelList.Add(zpm); + } + + JsonDataModel md = new JsonDataModel + { + total = total.ToString(), + rows = modelList + }; + jsonStr = md.ToSerializer(); + } + + return jsonStr; + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return null; + } + } + + public List SearchByCreateTime(string startTime, string endTime, string partNo) + { + IEnumerable list = SearchDB(startTime, endTime, partNo); + List modelList = new List(); + if (list.Any()) + { + ProductBLL prodBll = new ProductBLL(); + var prodList = prodBll.SearchAll(); + StationBLL stationBll = new StationBLL(); + var stationList = stationBll.SearchAll(); + + foreach (var item in list) + { + var prodInfo = prodList.Where(q => q.PartNo == item.PartNo).FirstOrDefault(); + //var stationInfo = stationList.Where(q => q.StationID == item.StationID).FirstOrDefault(); + + ZP_MK_PlanModel zpm = Tool.Mapper(item); + //zpm.StationNo = stationInfo == null ? "" : stationInfo.StationNo; + zpm.ProductName = prodInfo == null ? "" : prodInfo.ProductName; + + modelList.Add(zpm); + } + } + return modelList; + } + + public IEnumerable SearchDB(string startTime, string endTime, string partNo) + { + DateTime st, et; + if (!DateTime.TryParse(startTime, out st)) st = DateTime.MinValue; + if (!DateTime.TryParse(endTime, out et)) et = DateTime.MaxValue; + + IEnumerable list; + if (string.IsNullOrEmpty(partNo)) + { + list = db.Search( + q => (q.CreateTime >= st && + q.CreateTime <= et) && + q.State != 3, + q => q.CreateTime); + } + else + { + list = db.Search(q => q.PartNo != null && q.PartNo.Contains(partNo) && q.State == 0, q => q.CreateTime); + } + return list; + } + + /// + /// 查询全部信息 + /// + /// + public List SearchAll() + { + try + { + var s_list = db.SearchAllInfo(); + return s_list; + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return null; + } + } + + /// + /// 根据ID查询信息 + /// + /// + /// + public tb_ZP_MK_Plan SearchInfoByID(string id) + { + try + { + return db.SearchInfoByID(id); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return null; + } + + } + + public DataTable GetProductingPlan(string station) + { + try + { + ZPPlanDAL dal=new ZPPlanDAL(); + + return dal.GetProductingPlan(station); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return null; + } + } + + public DataTable GetProductingPlan1(string station,string orderNo) + { + try + { + ZPPlanDAL dal = new ZPPlanDAL(); + + return dal.GetProductingPlan1(station,orderNo); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return null; + } + } + + public DataTable GetPlan(string station, int flag, string planTime) + { + try + { + ZPPlanDAL dal = new ZPPlanDAL(); + + return dal.GetPlan(station, flag,planTime); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return null; + } + } + + public bool updateQty(ZPPlanModel md) + { + try + { + ZPPlanDAL dal = new ZPPlanDAL(); + + return dal.updateQty(md); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return false; + } + } + + public bool updateBad(ZPPlanModel md) + { + try + { + ZPPlanDAL dal = new ZPPlanDAL(); + + return dal.updateBad(md); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return false; + } + } + + public DataTable SearchPlanInfo(string planID) + { + try + { + ZPPlanDAL dal = new ZPPlanDAL(); + + return dal.SearchPlanInfo(planID); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); + return null; + } + } + + public DataTable SearchOrderNo(string orderno) + { + try + { + ZPPlanDAL dal = new ZPPlanDAL(); + + return dal.SearchOrderNo(orderno); + } + catch (Exception ex) + { + LogErrBLL.AddInfo(ex.ToString(),MethodBase.GetCurrentMethod()); + return null; + } + } + } +} diff --git a/MESClassLibrary/EFModel/BBMPT.Context.cs b/MESClassLibrary/EFModel/BBMPT.Context.cs index 684f685..1fae962 100644 --- a/MESClassLibrary/EFModel/BBMPT.Context.cs +++ b/MESClassLibrary/EFModel/BBMPT.Context.cs @@ -195,5 +195,6 @@ namespace MESClassLibrary.EFModel public virtual DbSet t_XD_ProductType { get; set; } public virtual DbSet W_XD_Product_del { get; set; } public virtual DbSet t_XD_StockArea { get; set; } + public virtual DbSet tb_ZP_MK_Plan { get; set; } } } diff --git a/MESClassLibrary/EFModel/BBMPT.Designer.cs b/MESClassLibrary/EFModel/BBMPT.Designer.cs index 7c783c7..887faf7 100644 --- a/MESClassLibrary/EFModel/BBMPT.Designer.cs +++ b/MESClassLibrary/EFModel/BBMPT.Designer.cs @@ -1,4 +1,4 @@ -// 为模型“D:\Project\BBMPT1\MESClassLibrary\EFModel\BBMPT.edmx”启用了 T4 代码生成。 +// 为模型“D:\job\BBMPT1\MESClassLibrary\EFModel\BBMPT.edmx”启用了 T4 代码生成。 // 要启用旧代码生成功能,请将“代码生成策略”设计器属性的值 // 更改为“旧的 ObjectContext”。当在设计器中打开该模型时,此属性会出现在 // “属性”窗口中。 diff --git a/MESClassLibrary/EFModel/BBMPT.edmx b/MESClassLibrary/EFModel/BBMPT.edmx index 6848c2f..7c1b6ff 100644 --- a/MESClassLibrary/EFModel/BBMPT.edmx +++ b/MESClassLibrary/EFModel/BBMPT.edmx @@ -494,6 +494,8 @@ + + @@ -524,6 +526,8 @@ + + @@ -554,6 +558,8 @@ + + @@ -584,6 +590,8 @@ + + @@ -614,6 +622,8 @@ + + @@ -1038,6 +1048,7 @@ + @@ -1116,6 +1127,7 @@ + @@ -1450,6 +1462,7 @@ + @@ -2187,6 +2200,24 @@ + + + + + + + + + + + + + + + + + + @@ -2677,6 +2708,7 @@ + @@ -2787,7 +2819,9 @@ [tb_BarCode1].[Des4] AS [Des4], [tb_BarCode1].[Des5] AS [Des5], [tb_BarCode1].[Weight] AS [Weight], - [tb_BarCode1].[BatchNo] AS [BatchNo] + [tb_BarCode1].[BatchNo] AS [BatchNo], + [tb_BarCode1].[IsNew] AS [IsNew], + [tb_BarCode1].[AddMan] AS [AddMan] FROM [dbo].[tb_BarCode1] AS [tb_BarCode1] @@ -2814,7 +2848,9 @@ [tb_BarCode2].[Des4] AS [Des4], [tb_BarCode2].[Des5] AS [Des5], [tb_BarCode2].[Weight] AS [Weight], - [tb_BarCode2].[BatchNo] AS [BatchNo] + [tb_BarCode2].[BatchNo] AS [BatchNo], + [tb_BarCode2].[IsNew] AS [IsNew], + [tb_BarCode2].[AddMan] AS [AddMan] FROM [dbo].[tb_BarCode2] AS [tb_BarCode2] @@ -2841,7 +2877,9 @@ [tb_BarCode3].[Des4] AS [Des4], [tb_BarCode3].[Des5] AS [Des5], [tb_BarCode3].[Weight] AS [Weight], - [tb_BarCode3].[BatchNo] AS [BatchNo] + [tb_BarCode3].[BatchNo] AS [BatchNo], + [tb_BarCode3].[IsNew] AS [IsNew], + [tb_BarCode3].[AddMan] AS [AddMan] FROM [dbo].[tb_BarCode3] AS [tb_BarCode3] @@ -2868,7 +2906,9 @@ [tb_BarCode4].[Des4] AS [Des4], [tb_BarCode4].[Des5] AS [Des5], [tb_BarCode4].[Weight] AS [Weight], - [tb_BarCode4].[BatchNo] AS [BatchNo] + [tb_BarCode4].[BatchNo] AS [BatchNo], + [tb_BarCode4].[IsNew] AS [IsNew], + [tb_BarCode4].[AddMan] AS [AddMan] FROM [dbo].[tb_BarCode4] AS [tb_BarCode4] @@ -2895,7 +2935,9 @@ [tb_BarCode5].[Des4] AS [Des4], [tb_BarCode5].[Des5] AS [Des5], [tb_BarCode5].[Weight] AS [Weight], - [tb_BarCode5].[BatchNo] AS [BatchNo] + [tb_BarCode5].[BatchNo] AS [BatchNo], + [tb_BarCode5].[IsNew] AS [IsNew], + [tb_BarCode5].[AddMan] AS [AddMan] FROM [dbo].[tb_BarCode5] AS [tb_BarCode5] @@ -3532,6 +3574,7 @@ + @@ -4071,6 +4114,7 @@ + @@ -4149,6 +4193,7 @@ + @@ -4431,6 +4476,7 @@ + @@ -5207,6 +5253,8 @@ + + @@ -5235,6 +5283,8 @@ + + @@ -5263,6 +5313,8 @@ + + @@ -5291,6 +5343,8 @@ + + @@ -5319,6 +5373,8 @@ + + @@ -6006,6 +6062,24 @@ + + + + + + + + + + + + + + + + + + @@ -6579,6 +6653,7 @@ + @@ -6655,6 +6730,7 @@ + @@ -6971,6 +7047,7 @@ + @@ -7779,6 +7856,8 @@ + + @@ -7808,6 +7887,8 @@ + + @@ -7837,6 +7918,8 @@ + + @@ -7866,6 +7949,8 @@ + + @@ -7895,6 +7980,8 @@ + + @@ -8632,6 +8719,25 @@ + + + + + + + + + + + + + + + + + + + diff --git a/MESClassLibrary/EFModel/BBMPT.edmx.diagram b/MESClassLibrary/EFModel/BBMPT.edmx.diagram index 347100d..00876c6 100644 --- a/MESClassLibrary/EFModel/BBMPT.edmx.diagram +++ b/MESClassLibrary/EFModel/BBMPT.edmx.diagram @@ -173,6 +173,7 @@ + diff --git a/MESClassLibrary/EFModel/tb_BarCode1.cs b/MESClassLibrary/EFModel/tb_BarCode1.cs index 26c13d2..e9fb48b 100644 --- a/MESClassLibrary/EFModel/tb_BarCode1.cs +++ b/MESClassLibrary/EFModel/tb_BarCode1.cs @@ -37,5 +37,7 @@ namespace MESClassLibrary.EFModel public string Des5 { get; set; } public Nullable Weight { get; set; } public string BatchNo { get; set; } + public Nullable IsNew { get; set; } + public string AddMan { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_BarCode2.cs b/MESClassLibrary/EFModel/tb_BarCode2.cs index ffd1932..815066e 100644 --- a/MESClassLibrary/EFModel/tb_BarCode2.cs +++ b/MESClassLibrary/EFModel/tb_BarCode2.cs @@ -37,5 +37,7 @@ namespace MESClassLibrary.EFModel public string Des5 { get; set; } public Nullable Weight { get; set; } public string BatchNo { get; set; } + public Nullable IsNew { get; set; } + public string AddMan { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_BarCode3.cs b/MESClassLibrary/EFModel/tb_BarCode3.cs index e59ff9b..0488b43 100644 --- a/MESClassLibrary/EFModel/tb_BarCode3.cs +++ b/MESClassLibrary/EFModel/tb_BarCode3.cs @@ -37,5 +37,7 @@ namespace MESClassLibrary.EFModel public string Des5 { get; set; } public Nullable Weight { get; set; } public string BatchNo { get; set; } + public Nullable IsNew { get; set; } + public string AddMan { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_BarCode4.cs b/MESClassLibrary/EFModel/tb_BarCode4.cs index 669666c..0effe74 100644 --- a/MESClassLibrary/EFModel/tb_BarCode4.cs +++ b/MESClassLibrary/EFModel/tb_BarCode4.cs @@ -37,5 +37,7 @@ namespace MESClassLibrary.EFModel public string Des5 { get; set; } public Nullable Weight { get; set; } public string BatchNo { get; set; } + public Nullable IsNew { get; set; } + public string AddMan { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_BarCode5.cs b/MESClassLibrary/EFModel/tb_BarCode5.cs index bac0d75..089fbff 100644 --- a/MESClassLibrary/EFModel/tb_BarCode5.cs +++ b/MESClassLibrary/EFModel/tb_BarCode5.cs @@ -37,5 +37,7 @@ namespace MESClassLibrary.EFModel public string Des5 { get; set; } public Nullable Weight { get; set; } public string BatchNo { get; set; } + public Nullable IsNew { get; set; } + public string AddMan { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_InjectionPlan.cs b/MESClassLibrary/EFModel/tb_InjectionPlan.cs index 480517d..4ccdd68 100644 --- a/MESClassLibrary/EFModel/tb_InjectionPlan.cs +++ b/MESClassLibrary/EFModel/tb_InjectionPlan.cs @@ -34,5 +34,6 @@ namespace MESClassLibrary.EFModel public Nullable MarketCount { get; set; } public Nullable BadCount { get; set; } public Nullable Qty { get; set; } + public Nullable ActualTime { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_Injection_BoxRecord.cs b/MESClassLibrary/EFModel/tb_Injection_BoxRecord.cs index c863798..683a100 100644 --- a/MESClassLibrary/EFModel/tb_Injection_BoxRecord.cs +++ b/MESClassLibrary/EFModel/tb_Injection_BoxRecord.cs @@ -27,5 +27,6 @@ namespace MESClassLibrary.EFModel public Nullable IsPrint { get; set; } public Nullable PrintTime { get; set; } public string Remark { get; set; } + public Nullable IsHandPrint { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_Operator.cs b/MESClassLibrary/EFModel/tb_Operator.cs index 11a5c66..40bfd23 100644 --- a/MESClassLibrary/EFModel/tb_Operator.cs +++ b/MESClassLibrary/EFModel/tb_Operator.cs @@ -21,5 +21,6 @@ namespace MESClassLibrary.EFModel public string OperatorPsw { get; set; } public string Des { get; set; } public string UserID { get; set; } + public string Limit { get; set; } } } diff --git a/MESClassLibrary/EFModel/tb_ZP_MK_Plan.cs b/MESClassLibrary/EFModel/tb_ZP_MK_Plan.cs new file mode 100644 index 0000000..893f882 --- /dev/null +++ b/MESClassLibrary/EFModel/tb_ZP_MK_Plan.cs @@ -0,0 +1,31 @@ +//------------------------------------------------------------------------------ +// +// 此代码已从模板生成。 +// +// 手动更改此文件可能导致应用程序出现意外的行为。 +// 如果重新生成代码,将覆盖对此文件的手动更改。 +// +//------------------------------------------------------------------------------ + +namespace MESClassLibrary.EFModel +{ + using System; + using System.Collections.Generic; + + public partial class tb_ZP_MK_Plan + { + public string ID { get; set; } + public string OrderNo { get; set; } + public string OrderName { get; set; } + public Nullable OrderDate { get; set; } + public Nullable Item { get; set; } + public string Station { get; set; } + public string Line { get; set; } + public string PartNo { get; set; } + public Nullable OrderCount { get; set; } + public Nullable ProductCount { get; set; } + public Nullable State { get; set; } + public Nullable BadCount { get; set; } + public Nullable CreateTime { get; set; } + } +} diff --git a/MESClassLibrary/Model/ZP_MK_PlanModel.cs b/MESClassLibrary/Model/ZP_MK_PlanModel.cs new file mode 100644 index 0000000..b11965c --- /dev/null +++ b/MESClassLibrary/Model/ZP_MK_PlanModel.cs @@ -0,0 +1,20 @@ +using MESClassLibrary.EFModel; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace MESClassLibrary.Model +{ + public class ZP_MK_PlanModel : tb_ZP_MK_Plan + { + /// + /// 工位名称 + /// + public string StationNo { get; set; } + /// + /// 零件名称 + /// + public string ProductName { get; set; } + } +}