/// <summary> /// Delete an entity. /// </summary> /// <param name="model"></param> public void Delete(AssetInventoryViewModel model) { var entity = model.ToEntity(); this._AssetInventorysRepository.Delete(entity); #region Commit Changes this._unitOfWork.Commit(); #endregion }
public ActionResult Submit(AssetInventoryViewModel model) { string action = Request["Submit"]; if (action == "close") { if (model.InventoryId > 0) { this.AssetInventoryService.UpdateAssetInventoryStatus(model.InventoryId, AssetInventoryStatus.Closed); } } else if (action == "open") { if (model.InventoryId > 0) { this.AssetInventoryService.UpdateAssetInventoryStatus(model.InventoryId, AssetInventoryStatus.Open); } } else if (action == "exportNoScanInfo") { //导出某次盘点未扫描的资产信息 try { var assetInventory = this.AssetInventoryService.GetAssetInventory(model.InventoryId); var scanedAssetIds = new List <int>(); if (assetInventory != null && assetInventory.AssetInventoryRecords != null) { scanedAssetIds = assetInventory.AssetInventoryRecords.Where(it => it.AssetId.HasValue).Select(it => it.AssetId.Value).Distinct().ToList(); } var workbook = new Aspose.Cells.Workbook(); var descriptor = new ExportExcel <AssetModel>(); AssetSearchModel search = new AssetSearchModel() { BarCode = null, TypeId = null, BuyDate = null, UserName = null }; var assets = this.AssetService.List(search).Where(it => !scanedAssetIds.Contains(it.Id)).ToList(); descriptor.FillAssetData(assets, workbook, 0); var ms = new MemoryStream(); string fileName = assetInventory.Title + "(暂未扫描的资产信息)-" + DateTime.Now.ToString("yyyy-MM-dd") + ".xlsx"; workbook.Save(ms, Aspose.Cells.SaveFormat.Xlsx); return(File(ms.ToArray(), "application/vnd.ms-excel", fileName)); } catch (Exception ex) { ViewBag.Message = ex.Message; } } return(RedirectToAction("Index")); }
/// <summary> /// Throw an exception if name is exist. /// </summary> /// <param name="model">AssetInventory view model</param> public void ThrowExceptionIfExist(AssetInventoryViewModel model) { //ConditionFilter<AssetInventory, long> condition = new ConditionFilter<AssetInventory, long> //{ // Query = (entity => // entity.Name == model.Name && // entity.Id != model.Id) //}; //var existEntity = this._AssetInventorysRepository.Get(condition).FirstOrDefault(); //if (existEntity != null) // throw new ItemAlreadyExistException(); }
/// <summary> /// Update an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public AssetInventoryViewModel Update(AssetInventoryViewModel model) { this.ThrowExceptionIfExist(model); var entity = model.ToEntity(); entity = this._AssetInventorysRepository.Update(entity); #region Commit Changes this._unitOfWork.Commit(); #endregion model = entity.ToModel(); return(model); }
/// <summary> /// Add an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public AssetInventoryViewModel Add(AssetInventoryViewModel model) { this.ThrowExceptionIfExist(model); var entity = model.ToEntity(); entity = this._AssetInventorysRepository.Add(entity); var entityEn = new AssetInventory { Language = Language.English, Description = model.DescriptionEn, }; entity.ChildTranslatedAssetInventorys.Add(entityEn); this._AssetInventorysRepository.Add(entityEn); var entityAr = new AssetInventory { Language = Language.Arabic, Description = model.DescriptionAr }; entity.ChildTranslatedAssetInventorys.Add(entityAr); this._AssetInventorysRepository.Add(entityAr); var details = entity.AssetInventoryDetails; this._AssetInventoryDetailsRepository.Add(details); #region Commit Changes this._unitOfWork.Commit(); #endregion model = entity.ToModel(); return(model); }