protected override void ExecuteCommand()
        {
            tblWarehouseImport import = MWIPViewModel.ImportInfo;

            import.ImportDescription = MWIPViewModel.NoteString.Trim();
            import.TotalPrice        = MWIPViewModel.TotalPrice;
            import.PurchasePrice     = MWIPViewModel.PurchasedPrice;

            List <tblWarehouseImportDetail> details = new List <tblWarehouseImportDetail>();

            foreach (var item in MWIPViewModel.LstWarehouseImportDetail)
            {
                tblWarehouseImportDetail detail = new tblWarehouseImportDetail();
                detail.IsActive   = true;
                detail.MedicineID = item.MedicineID;
                detail.Price      = item.UnitPrice;
                detail.Quantity   = item.Quantity;
                details.Add(detail);
            }

            _sqlCmdObserver = new SQLQueryCustodian(SQLQueryCallback);
            DbManager.Instance.ExecuteQueryAsync(SQLCommandKey.MODIFY_WAREHOUSE_IMPORT_CMD_KEY,
                                                 PharmacyDefinitions.MODIFY_WAREHOUSE_IMPORT_DELAY_TIME,
                                                 _sqlCmdObserver,
                                                 import,
                                                 details,
                                                 MWIPViewModel.InvoiceImageURL);

            return;
        }
Пример #2
0
        private SQLQueryResult AddNewWarehouseImport(PharmacyDBContext appDBContext, object[] paramaters)
        {
            tblWarehouseImport import      = paramaters[0] as tblWarehouseImport;
            string             imageFolder = paramaters[1] as string;

            SQLQueryResult result = new SQLQueryResult(null, MessageQueryResult.Non);

            try
            {
                appDBContext.tblWarehouseImports.Add(import);
                appDBContext.SaveChanges();
                if (imageFolder.Length > 0 && !SaveImageToFile(import.ImportID.ToString(), imageFolder, ImageType.WarehouseImport))
                {
                    result = new SQLQueryResult(null, MessageQueryResult.Aborted);
                    return(result);
                }
                result = new SQLQueryResult(null, MessageQueryResult.Done);
                return(result);
            }
            catch (Exception e)
            {
                App.Current.ShowApplicationMessageBox(e.Message);
                result = new SQLQueryResult(null, MessageQueryResult.Aborted);
            }
            return(result);
        }
        private SQLQueryResult ModifyWarehouseImport(PharmacyDBContext appDBContext, object[] paramaters)
        {
            tblWarehouseImport import = paramaters[0] as tblWarehouseImport;
            List <tblWarehouseImportDetail> details = paramaters[1] as List <tblWarehouseImportDetail>;
            string imageFolder = paramaters[2] as string;

            SQLQueryResult result = new SQLQueryResult(null, MessageQueryResult.Non);

            try
            {
                tblWarehouseImport importInfo = appDBContext.tblWarehouseImports.Where(o => o.ImportID == import.ImportID).FirstOrDefault();
                importInfo.IsActive          = true;
                importInfo.ImportDescription = import.ImportDescription;
                importInfo.TotalPrice        = import.TotalPrice;
                importInfo.PurchasePrice     = import.PurchasePrice;

                //Add or Modify active import details
                foreach (var item in details)
                {
                    tblWarehouseImportDetail detail = importInfo.tblWarehouseImportDetails.Where(o => o.MedicineID == item.MedicineID).FirstOrDefault();
                    if (detail != null)
                    {
                        detail.IsActive = true;
                        detail.Price    = item.Price;
                        detail.Quantity = item.Quantity;
                    }
                    else
                    {
                        importInfo.tblWarehouseImportDetails.Add(item);
                    }
                }

                //Deactive import details
                foreach (var item in import.tblWarehouseImportDetails.Where(o => !o.IsActive))
                {
                    tblWarehouseImportDetail detail = importInfo.tblWarehouseImportDetails.Where(o => o.MedicineID == item.MedicineID).FirstOrDefault();
                    if (detail != null)
                    {
                        detail.IsActive = false;
                    }
                }

                appDBContext.SaveChanges();
                if (imageFolder.Length > 0 && !SaveImageToFile(import.ImportID.ToString(), imageFolder, ImageType.WarehouseImport))
                {
                    result = new SQLQueryResult(null, MessageQueryResult.Aborted);
                    return(result);
                }
                result = new SQLQueryResult(null, MessageQueryResult.Done);
                return(result);
            }
            catch (Exception e)
            {
                App.Current.ShowApplicationMessageBox(e.Message);
                result = new SQLQueryResult(null, MessageQueryResult.Aborted);
            }
            return(result);
        }