/// <summary> /// 修改 /// </summary> /// <param name="barCode"></param> /// <param name="productName"></param> /// <param name="unit"></param> /// <param name="snNum"></param> /// <returns></returns> public int Update(string barCode, string productName, string unit, string snNum) { ProductEntity entity = new ProductEntity(); entity.BarCode = barCode; entity.ProductName = productName; entity.UnitNum = unit; entity.Include(a => new { a.ProductName, a.BarCode, a.UnitNum }); entity.Where(a => a.SnNum == snNum); int line = this.Product.Update(entity); if (line > 0) { CacheHelper.Remove(CacheKey.JOOSHOW_PRODUCT_CACHE); } return line; }
/// <summary> /// 删除产品信息 /// </summary> /// <param name="snNum"></param> /// <returns></returns> public int Delete(string snNum) { ProductEntity entity = new ProductEntity(); entity.IsDelete = (int)EIsDelete.Deleted; entity.Where(a => a.SnNum == snNum); entity.IncludeIsDelete(true); int line = this.Product.Update(entity); if (line > 0) { CacheHelper.Remove(CacheKey.JOOSHOW_PRODUCT_CACHE); } return line; }
/// <summary> /// 获得产品的缓存数据 /// </summary> /// <returns></returns> public List<ProductEntity> GetListByCache() { List<ProductEntity> list = CacheHelper.Get(CacheKey.JOOSHOW_PRODUCT_CACHE) as List<ProductEntity>; if (!list.IsNullOrEmpty()) { return list; } ProductEntity entity = new ProductEntity(); entity.IncludeAll(); entity.Where(a => a.IsDelete == (int)EIsDelete.NotDelete); list = this.Product.GetList(entity); if (!list.IsNullOrEmpty()) { CacheHelper.Insert(CacheKey.JOOSHOW_PRODUCT_CACHE, list); } return list; }
/// <summary> /// 修改 /// </summary> /// <param name="entity"></param> /// <returns></returns> public int Update(ProductEntity entity) { entity.InPrice = entity.AvgPrice; entity.OutPrice = entity.AvgPrice; entity.Include(a => new { a.ProductName, a.BarCode, a.MinNum, a.MaxNum, a.UnitNum, a.UnitName, a.CateNum, a.CateName, a.Size, a.InPrice, a.OutPrice, a.AvgPrice, a.GrossWeight, a.NetWeight, a.StorageNum, a.DefaultLocal, a.CusNum, a.CusName, a.Description }); entity.Where(a => a.SnNum == entity.SnNum); int line = this.Product.Update(entity); if (line > 0) { CacheHelper.Remove(CacheKey.JOOSHOW_PRODUCT_CACHE); } return line; }
/// <summary> /// 查询产品列表 /// </summary> /// <param name="entity"></param> /// <param name="pageInfo"></param> /// <returns></returns> public List<ProductEntity> GetList(ProductEntity entity, ref PageInfo pageInfo) { entity.IncludeAll(); entity.Where(a => a.IsDelete == (int)EIsDelete.NotDelete); entity.OrderBy(a => a.ID, EOrderBy.DESC); int rowCount = 0; List<ProductEntity> list = this.Product.GetList(entity, pageInfo.PageSize, pageInfo.PageIndex, out rowCount); if (!list.IsNullOrEmpty()) { List<ProductCategoryEntity> listCate = new ProductCategoryProvider().GetList(); listCate = listCate.IsNull() ? new List<ProductCategoryEntity>() : listCate; foreach (ProductEntity item in list) { if (listCate.Exists(a => a.CateNum == item.CateNum)) { item.CateName = listCate.First(a => a.CateNum == item.CateNum).CateName; } } } pageInfo.RowCount = rowCount; return list; }
/// <summary> /// 存储过程查询在线产品库存 /// </summary> /// <param name="entity"></param> /// <param name="pageInfo"></param> /// <param name="ProductName"></param> /// <param name="begin"></param> /// <param name="end"></param> /// <returns></returns> public List<ProductEntity> GetList(ProductEntity entity, ref PageInfo pageInfo, string searchKey, string begin, string end) { entity.IncludeAll(); entity.Where(a => a.IsDelete == (int)EIsDelete.NotDelete); entity.OrderBy(a => a.ID, EOrderBy.DESC); int rowCount = 0; List<ProductEntity> list = this.Product.GetList(entity, pageInfo.PageSize, pageInfo.PageIndex, out rowCount); List<ProductEntity> listResult = new List<ProductEntity>(); pageInfo.RowCount = rowCount; DateTime beginTime = ConvertHelper.ToType<DateTime>(begin, DateTime.Now.AddDays(-1)); DateTime endTime = ConvertHelper.ToType<DateTime>(end, DateTime.Now); Proc_ProductReportEntity prEntity = new Proc_ProductReportEntity(); prEntity.SearchKey = searchKey; prEntity.BeginTime = beginTime; prEntity.EndTime = endTime; if (!begin.IsEmpty() && !end.IsEmpty()) { prEntity.IsTime = 1;//加上时间条件 } else { prEntity.IsTime = 0; } if (!list.IsNullOrEmpty()) { List<ProductCategoryEntity> listCates = new ProductCategoryProvider().GetList(); listCates = listCates.IsNull() ? new List<ProductCategoryEntity>() : listCates; foreach (ProductEntity item in list) { if (item.CateName.IsEmpty()) { ProductCategoryEntity cate= listCates.FirstOrDefault(a => a.CateNum == item.CateNum); item.CateName = cate == null ? "" : cate.CateName; } prEntity.ProductNum = item.SnNum; prEntity.IsDelete = (int)EIsDelete.NotDelete; prEntity.Status = (int)EAudite.Pass; int line = this.Proc_ProductReport.ExecuteNonQuery(prEntity); item.LocalProductNum = prEntity.LocalProductNum; item.InStorageNum = prEntity.InStorageNum; item.OutStorageNum = prEntity.OutStorageNum; item.BadReportNum = prEntity.BadReportNum; item.TotalLocalProductNum = prEntity.TotalLocalProductNum; item.TotalInStorageNum = prEntity.TotalInStorageNum; item.TotalOutStorageNum = prEntity.TotalOutStorageNum; item.TotalBadReportNum = prEntity.TotalBadReportNum; if (item.InStorageNum > 0 && item.TotalInStorageNum > 0) { item.InStorageNumPCT = (item.InStorageNum * 100.00f) / item.TotalInStorageNum; } if (item.OutStorageNum > 0 && item.TotalOutStorageNum > 0) { item.OutStorageNumPCT = (item.OutStorageNum * 100.00f) / item.TotalOutStorageNum; } listResult.Add(item); } } return listResult; }
/// <summary> /// 根据产品条码获取其数量 /// </summary> /// <param name="barCode"></param> /// <returns></returns> public int GetCountByBarCode(string barCode) { ProductEntity entity = new ProductEntity(); entity.Where(a => a.BarCode == barCode); int count = this.Product.GetCount(entity); return count; }
public ActionResult ProductReportList() { string searchKey = WebUtil.GetFormValue<string>("ProductName", string.Empty); string beginTime = WebUtil.GetFormValue<string>("BeginTime", string.Empty); string endTime = WebUtil.GetFormValue<string>("EndTime", string.Empty); int pageIndex = WebUtil.GetFormValue<int>("pageIndex", 0); int pageSize = WebUtil.GetFormValue<int>("pageSize", 0); string storageNum = this.DefaultStore; ProductProvider provider = new ProductProvider(); ProductEntity entity = new ProductEntity(); entity.StorageNum = storageNum; if (!searchKey.IsEmpty()) { entity.Begin<ProductEntity>() .Where<ProductEntity>("ProductName", ECondition.Like, "%" + searchKey + "%") .Or<ProductEntity>("SnNum", ECondition.Like, "%" + searchKey + "%") .Or<ProductEntity>("BarCode", ECondition.Like, "%" + searchKey + "%") .End<ProductEntity>(); } if (!beginTime.IsEmpty() && !endTime.IsEmpty()) { entity.Where("CreateTime", ECondition.Between, ConvertHelper.ToType<DateTime>(beginTime), ConvertHelper.ToType<DateTime>(endTime)); } PageInfo pageInfo = new PageInfo() { PageIndex = pageIndex, PageSize = pageSize }; List<ProductEntity> listResult = provider.GetList(entity, ref pageInfo, searchKey, beginTime, endTime); string json = ConvertJson.ListToJson<ProductEntity>(listResult, "List"); this.ReturnJson.AddProperty("Data", new JsonObject(json)); this.ReturnJson.AddProperty("RowCount", pageInfo.RowCount); return Content(this.ReturnJson.ToString()); }
public ActionResult ToProductReportExcel() { PageInfo pageInfo = new Git.Framework.DataTypes.PageInfo() { PageIndex = 1, PageSize = Int32.MaxValue }; string searchKey = WebUtil.GetFormValue<string>("ProductName", string.Empty); string beginTime = WebUtil.GetFormValue<string>("BeginTime", string.Empty); string endTime = WebUtil.GetFormValue<string>("EndTime", string.Empty); string storageNum = this.DefaultStore; ProductProvider provider = new ProductProvider(); ProductEntity entity = new ProductEntity(); if (!searchKey.IsEmpty()) { entity.Begin<ProductEntity>() .Where<ProductEntity>("ProductName", ECondition.Like, "%" + searchKey + "%") .Or<ProductEntity>("SnNum", ECondition.Like, "%" + searchKey + "%") .Or<ProductEntity>("BarCode", ECondition.Like, "%" + searchKey + "%") .End<ProductEntity>(); } if (!beginTime.IsEmpty() && !endTime.IsEmpty()) { entity.Where("CreateTime", ECondition.Between, ConvertHelper.ToType<DateTime>(beginTime), ConvertHelper.ToType<DateTime>(endTime)); } if (storageNum.IsNotNull()) { entity.Where("StorageNum", ECondition.Eth, storageNum); } List<ProductEntity> listResult = provider.GetList(entity, ref pageInfo, searchKey, beginTime, endTime); listResult = listResult.IsNull() ? new List<ProductEntity>() : listResult; if (!listResult.IsNullOrEmpty()) { DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("序号 ")); dt.Columns.Add(new DataColumn("产品编号")); dt.Columns.Add(new DataColumn("产品条码")); dt.Columns.Add(new DataColumn("产品名称")); dt.Columns.Add(new DataColumn("类别名称")); dt.Columns.Add(new DataColumn("预警值下限")); dt.Columns.Add(new DataColumn("预警值上限")); dt.Columns.Add(new DataColumn("规格")); dt.Columns.Add(new DataColumn("价格")); dt.Columns.Add(new DataColumn("库存数")); dt.Columns.Add(new DataColumn("进货总数")); dt.Columns.Add(new DataColumn("出货总数")); dt.Columns.Add(new DataColumn("报损总数")); int count = 1; foreach (ProductEntity t in listResult) { DataRow row = dt.NewRow(); row[0] = count; row[1] = t.SnNum; row[2] = t.BarCode; row[3] = t.ProductName; row[4] = t.CateName; row[5] = t.MinNum; row[6] = t.MaxNum; row[7] = t.Size; row[8] = t.AvgPrice; row[9] = t.LocalProductNum; row[10] = t.InStorageNum; row[11] = t.OutStorageNum; row[12] = t.BadReportNum; dt.Rows.Add(row); count++; } DataRow rowTemp = dt.NewRow(); rowTemp[0] = count; rowTemp[1] = ""; rowTemp[2] = ""; rowTemp[3] = ""; rowTemp[4] = ""; rowTemp[5] = ""; rowTemp[6] = ""; rowTemp[7] = ""; rowTemp[8] = "总计"; rowTemp[9] = listResult[0].TotalLocalProductNum; rowTemp[10] = listResult[0].TotalInStorageNum; rowTemp[11] = listResult[0].TotalOutStorageNum; rowTemp[12] = listResult[0].TotalBadReportNum; dt.Rows.Add(rowTemp); string filePath = Server.MapPath("~/UploadFiles/"); if (!System.IO.Directory.Exists(filePath)) { System.IO.Directory.CreateDirectory(filePath); } string filename = string.Format("产品在线库存报表{0}.xls", DateTime.Now.ToString("yyyyMMddHHmmss")); AsposeExcel excel = new AsposeExcel(System.IO.Path.Combine(filePath, filename), ""); excel.DatatableToExcel(dt, "产品在线库存报表", "产品在线库存报表"); this.ReturnJson.AddProperty("Path", ("/UploadFiles/" + filename).Escape()); this.ReturnJson.AddProperty("Path", ("/UploadFiles/" + filename).Escape()); } else { this.ReturnJson.AddProperty("d", "无数据导出!"); } return Content(this.ReturnJson.ToString()); }
public ActionResult ToExcel() { PageInfo pageInfo = new Git.Framework.DataTypes.PageInfo() { PageIndex = 1, PageSize = Int32.MaxValue }; string ProductName = WebUtil.GetFormValue<string>("ProductName", string.Empty); int pageIndex = WebUtil.GetFormValue<int>("pageIndex", 0); int pageSize = WebUtil.GetFormValue<int>("pageSize", 0); string CateNum = WebUtil.GetFormValue<string>("CateNum", string.Empty); ProductProvider provider = new ProductProvider(); ProductEntity entity = new ProductEntity(); if (!ProductName.IsEmpty()) { entity.Where<ProductEntity>("ProductName", ECondition.Like, "%" + ProductName + "%"); } if (!CateNum.IsEmpty()) { entity.Where<ProductEntity>("CateNum", ECondition.Eth, CateNum); } List<ProductEntity> listResult = provider.GetList(entity, ref pageInfo); listResult = listResult.IsNull() ? new List<ProductEntity>() : listResult; if (listResult.IsNotNull()) { DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("序号 ")); dt.Columns.Add(new DataColumn("产品编号")); dt.Columns.Add(new DataColumn("条码编号")); dt.Columns.Add(new DataColumn("产品名称")); dt.Columns.Add(new DataColumn("类别名称")); dt.Columns.Add(new DataColumn("库存数")); dt.Columns.Add(new DataColumn("预警值下线")); dt.Columns.Add(new DataColumn("预警值上线")); dt.Columns.Add(new DataColumn("单位")); dt.Columns.Add(new DataColumn("平均价格")); dt.Columns.Add(new DataColumn("进口价格")); dt.Columns.Add(new DataColumn("出口价格")); dt.Columns.Add(new DataColumn("净重")); dt.Columns.Add(new DataColumn("毛重")); dt.Columns.Add(new DataColumn("备注")); int count = 1; foreach (ProductEntity t in listResult) { DataRow row = dt.NewRow(); row[0] = count; row[1] = t.SnNum; row[2] = t.BarCode; row[3] = t.ProductName; row[4] = t.CateName; row[5] = t.Num; row[6] = t.MinNum; row[7] = t.MaxNum; row[8] = t.UnitName; row[9] = t.AvgPrice; row[10] = t.InPrice; row[11] = t.OutPrice; row[12] = t.NetWeight.ToString(); row[13] = t.GrossWeight.ToString(); row[14] = t.Remark; dt.Rows.Add(row); count++; } string filePath = Server.MapPath("~/UploadFiles/"); if (!System.IO.Directory.Exists(filePath)) { System.IO.Directory.CreateDirectory(filePath); } string filename = string.Format("产品管理{0}.xls", DateTime.Now.ToString("yyyyMMddHHmmss")); NPOIExcel excel = new NPOIExcel("产品管理", "产品", System.IO.Path.Combine(filePath, filename)); excel.ToExcel(dt); this.ReturnJson.AddProperty("Path", ("/UploadFiles/" + filename).Escape()); } else { this.ReturnJson.AddProperty("d", "无数据导出!"); } return Content(this.ReturnJson.ToString()); }
public ActionResult GetList() { string ProductName = WebUtil.GetFormValue<string>("ProductName", string.Empty); int pageIndex = WebUtil.GetFormValue<int>("pageIndex", 0); int pageSize = WebUtil.GetFormValue<int>("pageSize", 0); string CateNum = WebUtil.GetFormValue<string>("CateNum", string.Empty); ProductProvider provider = new ProductProvider(); ProductEntity entity = new ProductEntity(); if (!ProductName.IsEmpty()) { entity.Begin<ProductEntity>() .Where<ProductEntity>("ProductName", ECondition.Like, "%" + ProductName + "%") .Or<ProductEntity>("SnNum", ECondition.Like, "%" + ProductName + "%") .Or<ProductEntity>("BarCode", ECondition.Like, "%" + ProductName + "%") .End<ProductEntity>(); } if (!CateNum.IsEmpty()) { entity.Where<ProductEntity>("CateNum", ECondition.Eth, CateNum); } PageInfo pageInfo = new PageInfo() { PageIndex = pageIndex, PageSize = pageSize }; List<ProductEntity> listResult = provider.GetList(entity, ref pageInfo); string json = ConvertJson.ListToJson<ProductEntity>(listResult, "List"); this.ReturnJson.AddProperty("Data", new JsonObject(json)); this.ReturnJson.AddProperty("RowCount", pageInfo.RowCount); return Content(this.ReturnJson.ToString()); }