using System; using System.Collections.Generic; using System.Linq; using System.Text; using QMAPP.Entity; using QMAPP.BLL; using QMAPP.FJC.Entity.FeedInManage; using QMFrameWork.Data; using QMFrameWork.Log; using System.Data; using QMAPP.FJC.DAL.WIPManage; using QMAPP.FJC.Entity; namespace QMAPP.FJC.BLL.WIPManage { /// /// 20171023gzf /// public class WIPProductCountBLL : BaseBLL { #region 获取列表 /// /// 获取列表 /// /// 条件 /// 数据页 /// 数据页 public DataResult GetList(Epidermis condition, DataPage page) { DataResult result = new DataResult(); try { //获取信息列表 page = new WIPProductCountDAL().GetList(condition, page); #region 转换状态显示类型 //List fisOrderList = page.Result as List; ////处理字典信息 //DictManageBLL dictSCANSTATE = new DictManageBLL(DictKind.SCANSTATE); //foreach (var info in fisOrderList) //{ // info.SCANSTATE = dictSCANSTATE.GetDictValue(info.SCANSTATE); //} #endregion result.Result = page; } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Tag = ex.StackTrace, Info = "设备耗能信息逻辑层-获取列表!" }); result.IsSuccess = false; result.Msg = Resource.SystemException; throw ex; } result.IsSuccess = true; return result; } /// /// 查询注塑件数量 /// /// /// /// public DataResult GetPlasticPartCount(string materialtype, string materialcode,DataPage page) { DataResult result = new DataResult(); try { var dal=new WIPProductCountDAL(); //获取信息列表 var list = dal.GetIMSCount(materialtype, materialcode,page); var partusingcount = dal.GetPlasticPartUsingCount(materialtype, materialcode); var partscrapcount = dal.GetPlasticPartScrapCount(materialtype, materialcode); var partcounting = dal.GetPlasticPartCounting(materialtype, materialcode); var partout = dal.GetPlasticPartOut(materialtype, materialcode); foreach (var imscount in list.Result as List) { var usecount=partusingcount.FirstOrDefault(p=>p.MATERIAL_CODE==imscount.MATERIAL_CODE); if (usecount != null) { imscount.CAPACITY = imscount.CAPACITY - usecount.USINGCOUNT; } var scrapcount = partscrapcount.FirstOrDefault(p => p.MATERIAL_CODE == imscount.MATERIAL_CODE); if (scrapcount != null) { imscount.CAPACITY = imscount.CAPACITY - scrapcount.USINGCOUNT; } var counting = partcounting.FirstOrDefault(p => p.MATERIAL_CODE == imscount.MATERIAL_CODE); if (counting != null) { imscount.CAPACITY = imscount.CAPACITY + counting.USINGCOUNT; } var outcount = partout.FirstOrDefault(p => p.MATERIAL_CODE == imscount.MATERIAL_CODE); if (outcount != null) { imscount.CAPACITY = imscount.CAPACITY - outcount.USINGCOUNT; } imscount.UNUSED = (imscount.CAPACITY).ToString(); } result.Result = list; } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Tag = ex.StackTrace }); result.IsSuccess = false; result.Msg = Resource.SystemException; throw ex; } result.IsSuccess = true; return result; } #endregion #region 导出数据 /// /// 获取导出的数据 /// /// 查询条件 /// 数据 public DataResult GetExportData(Epidermis model) { DataResult result = new DataResult(); try { result.IsSuccess = true; result.Result = new WIPProductCountDAL().GetExportData(model); } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Tag = ex.StackTrace, Info = "在制品统计信息导出错误!" }); result.IsSuccess = false; result.Msg = "在制品统计信息导出错误!"; } return result; } #endregion } }