public HistoryScan BindItem(PackingManifestDetail _PackingManifestDetail, string ObjectScan, string OperationType, int CurrentUserID, string Notes) { HistoryScan _HistoryScan = new HistoryScan(); _HistoryScan.ID = Guid.NewGuid().ToString(); _HistoryScan.PackingManifestDetailID = _PackingManifestDetail.ID; _HistoryScan.ObjectScan = ObjectScan; _HistoryScan.OperationType = OperationType; _HistoryScan.CreatorID = CurrentUserID; _HistoryScan.CreateDate = DateTime.Now; _HistoryScan.PackingManifestID = _PackingManifestDetail.PackingManifest.ID; _HistoryScan.SerialNo = _PackingManifestDetail.SerialNo; _HistoryScan.TEMP3 = Notes; return(_HistoryScan); }
public PackingManifestDetail UpdateScanBarcode(string UserGroup, string OperationType, int CurrentUserID, string Notes, int isReturn, string ID, out int Result) { using (TransactionScope scope = new TransactionScope()) { try { PackingManifestDetail item = db.PackingManifestDetails.Where(i => (i.ID == ID) && (i.STATUS != 0 && i.PackingManifest.STATUS == 1) && (i.PackingManifest.isConfirm == 1) //&& (i.WHExportOrderDetails.Where(a=>a.WHExportOrder.Status != (int)FEA_BusinessLogic.WarehouseArea.WHExportOrderManager.OrderStatus.DELETED).Count() == 0?true:false) ).SingleOrDefault(); if (item != null) { item.isReturns = isReturn; if (isReturn == 1) { // trong trường hợp trả về nếu thùng hàng đã xuất kho thì ko cho trả var flag = (item.WHExportOrderDetails.Where(a => a.WHExportOrder.Status != (int)WHExportOrderManager.OrderStatus.DELETED && a.IsExported == 1).Count() == 0 ? true : false); if (!flag) { Result = 2; // Hang da xuat, khong the tra ve return(null); } } switch (UserGroup) { case "Packing": item.isCOnfirm = item.isCOnfirm == 0 ? 1 : 0; break; case "Warehouse": item.isStockin = item.isStockin == 0 ? 1 : 0; //if (item.isStockin == 0) //{ // WHImportOrderDetail whItem = db.WHImportOrderDetails.Where(i => i.WHImportOrder.Status != 0 && i.PackingManifestDetailID == item.ID && i.Status != 3).; // if (whItem != null) // { // whItem.Status = 3; // } //} break; default: break; } db.HistoryScans.Add(new HistoryScanManager().BindItem(item, UserGroup, OperationType, CurrentUserID, Notes)); PackingManifestDetail ItemOut = CheckBarCodeAvailable(ID); db.SaveChanges(); scope.Complete(); Result = 1; return(ItemOut); } } catch (Exception) { scope.Dispose(); } } Result = 0; return(null); }