using MESClassLibrary.BLL.Log; using MESClassLibrary.EFModel; using MESClassLibrary.Model; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Reflection; using System.Security.Cryptography; using System.Text; using System.Threading.Tasks; using MESClassLibrary.DAL.BasicInfo; namespace MESClassLibrary.BLL.BasicInfo { public class ModelInfoBLL { BasicBLL db = new BasicBLL(); /// /// 新增信息 /// /// /// public bool AddInfo(tb_ModelInfo md) { try { var list = db.SearchInfoByKey("ModelNo", md.ModelNo);//判断是否有重复数据 if (list != null) { if (list.Where(p => p.ID != md.ID).Count() > 0) { return false; } } return db.AddInfo(md); } catch (Exception ex) { LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); return false; } } /// /// 修改信息 /// /// /// public bool UpdateInfo(tb_ModelInfo md) { try { var list = db.SearchAllInfo().Where(p => p.ModelNo == md.ModelNo && p.ID != md.ID).ToList();//判断是否有重复数据 if (list.Count > 0) { return false; } //初始化要更新的字段 string[] proNames = new string[14]; proNames[0] = "ModelName"; proNames[1] = "ModelNo"; proNames[2] = "PermanentAssetsNo"; proNames[3] = "Tonnage"; proNames[4] = "ServiceLife"; proNames[5] = "Supplier"; proNames[6] = "PartWeight"; proNames[7] = "InjectionPeriod"; proNames[8] = "LocatingRingSize"; proNames[9] = "OutForm"; proNames[10] = "ModelWeight"; proNames[11] = "RunnerForm"; proNames[12] = "ModelCavityNo"; proNames[13] = "ModelSize"; //必填字段初始化,如果不需要更新必填字段则设置为空即可,时间类型无需初始化 //如果没有初始化必填字段,更新会报错 //md.Des = ""; return db.UpdateInfo(md, proNames); } catch (Exception ex) { LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); return false; } } /// /// 删除信息 /// /// /// /// public bool DeleteInfo(tb_ModelInfo md) { try { return db.DelInfo(md); } catch (Exception ex) { LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); return false; } } /// /// 查询全部信息分页 /// /// public string SearchInfoAll(string page, string pagesize, string ModelNo) { try { string jsonStr = "[]"; int total = 0;//总行数 List list = db.SearchAllInfo(); if (!String.IsNullOrEmpty(ModelNo)) { list = list.Where(p => p.ModelNo != null && p.ModelNo.Contains(ModelNo)).ToList(); } total = list.Count; int Skipcount = (Convert.ToInt32(page) - 1) * Convert.ToInt32(pagesize); list = list.Skip(Skipcount).Take(Convert.ToInt32(pagesize)).ToList(); JsonDataModel md = new JsonDataModel(); md.total = total.ToString(); md.rows = list; return JSONTools.ScriptSerialize(md); } catch (Exception ex) { LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); return null; } } public List> SearchForExcel(string ModelNo) { try { List> list = new List>(); string jsonStr = "[]"; int total = 0;//总行数 List modelList = db.SearchAllInfo(); if (!String.IsNullOrEmpty(ModelNo)) { modelList = modelList.Where(p => p.ModelNo != null && p.ModelNo.Contains(ModelNo)).ToList(); } if (modelList != null && modelList.Count() > 0) { List title_ = new List(); title_.Add("模具编号"); title_.Add("模具名称"); title_.Add("固定资产编号"); title_.Add("注塑机吨位"); title_.Add("模具寿命"); title_.Add("供应商"); title_.Add("零件重量"); title_.Add("注塑周期"); title_.Add("定位环尺寸"); title_.Add("顶出形式"); title_.Add("模具重量"); title_.Add("流道形式"); title_.Add("型腔数"); title_.Add("模具尺寸"); list.Add(title_); foreach (var item in modelList) { List rowList = new List(); rowList.Add(item.ModelNo == null ? "" : item.ModelNo); rowList.Add(item.ModelName == null ? "" : item.ModelName); rowList.Add(item.PermanentAssetsNo == null ? "" : item.PermanentAssetsNo); rowList.Add(item.Tonnage == null ? "" : item.Tonnage); rowList.Add(item.ServiceLife == null ? "" : item.ServiceLife); rowList.Add(item.Supplier == null ? "" : item.Supplier); rowList.Add(item.PartWeight == null ? "" : item.PartWeight); rowList.Add(item.InjectionPeriod == null ? "" : item.InjectionPeriod); rowList.Add(item.LocatingRingSize == null ? "" : item.LocatingRingSize); rowList.Add(item.OutForm == null ? "" : item.OutForm); rowList.Add(item.ModelWeight == null ? "" : item.ModelWeight); rowList.Add(item.RunnerForm == null ? "" : item.RunnerForm); rowList.Add(item.ModelCavityNo == null ? "" : item.ModelCavityNo); rowList.Add(item.ModelSize == null ? "" : item.ModelSize); list.Add(rowList); } } return list; } catch (Exception ex) { LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); return null; } } /// /// 根据ID查询信息 /// /// /// public tb_ModelInfo SearchInfoByID(string id) { try { return db.SearchInfoByID(id); } catch (Exception ex) { LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); return null; } } public string GetComboboxData() { try { string jsonStr = "[]"; var list = db.SearchAllInfo().OrderBy(p => p.ModelNo).ToList();//判断是否有重复数据 List sl = new List(); foreach (var item in list) { SelectModel md = new SelectModel(); md.textField = item.ModelName; md.valueField = item.ID; sl.Add(md); } jsonStr = JSONTools.ScriptSerialize(sl); return jsonStr; } catch (Exception) { return ""; } } public string GetComboboxDataForModelNo() { try { string jsonStr = "[]"; List list = db.SearchAllInfo(); list = list.Where(p => p.ModelNo != null).OrderBy(p => p.ModelNo).ToList();//判断是否有重复数据 List sl = new List(); foreach (var item in list) { SelectModel md = new SelectModel(); md.textField = item.ModelNo; md.valueField = item.ID; sl.Add(md); } jsonStr = JSONTools.ScriptSerialize(sl); return jsonStr; } catch (Exception) { return ""; } } public DataTable SearchInfo(string ModelNo) { try { ModelInfoDAL da = new ModelInfoDAL(); return da.SearchInfo(ModelNo); } catch (Exception ex) { LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); return null; } } //public DataTable SearchAll() //{ // ColorDAL da = new ColorDAL(); // try // { // return da.SearchInfoAll(); // } // catch (Exception ex) // { // LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod()); // return null; // } //} } }