/// <summary>
        /// Initializes a new instance of the <see cref="WF.Player.Android.CartridgesAdapter"/> class.
        /// </summary>
        /// <param name="context">Context.</param>
        /// <param name="carts">List of cartridges.</param>
        public CartridgesAdapter(Activity context, Cartridges carts) : base()
        {
            this.context = context;
            this.carts   = carts;

            carts.CollectionChanged += OnCartridgesChanged;
        }
Пример #2
0
 /// <summary>
 /// Добавляет новый картридж в общий список.
 /// </summary>
 /// <param name="newCartridge">Новый картридж</param>
 public void AddNewCartridge(CartridgeDTO newCartridge)
 {
     if (newCartridge != null)
     {
         Cartridges.Add(newCartridge);
     }
 }
        private void KeyUp(System.Windows.Input.KeyEventArgs e)
        {
            try
            {
                switch (e.Key)
                {
                case System.Windows.Input.Key.Delete:
                    string            lmsg     = "Delete the selected cartridge?";
                    string            lcaption = "Delete Cartridge Data";
                    MessageBoxButtons lbtns    = MessageBoxButtons.YesNo;
                    DialogResult      lrst     = MessageBox.Show(lmsg, lcaption, lbtns, MessageBoxIcon.Warning);
                    if (lrst == DialogResult.Yes)
                    {
                        foreach (Cartridge lc in Cartridges)
                        {
                            if (SelectedCartridge.ID == lc.ID)
                            {
                                Cartridges.Remove(lc);
                                SelectedCartridge = null;
                                break;
                            }
                        }
                    }
                    break;

                case System.Windows.Input.Key.OemPlus:
                    AddCartridge();
                    break;
                }
            }
            catch
            {
            }
        }
Пример #4
0
        async void LoadCartridges()
        {
            await Task <bool> .Run(() =>
            {
                // Create Vernacular catalog for translation
                Catalog.Implementation = new Vernacular.AndroidCatalog(Resources, typeof(Resource.String));

                //
                // TODO: Show MainActivity instead of local file list
                //
                Cartridges carts       = new Cartridges();
                List <string> fileList = new List <string>();
                FileInfo[] files       = null;
                try {
                    // Read all GWC, GWZ, WFC and WFZ from default directory
                    files = new DirectoryInfo(global::Android.OS.Environment.ExternalStorageDirectory.AbsolutePath + Java.IO.File.Separator + "WF.Player").GetFiles("*");
                }
                catch (Exception e) {
                    AlertDialog.Builder builder = new AlertDialog.Builder(this);
                    builder.SetTitle(GetString(Resource.String.main_error));
                    builder.SetMessage(e.Message);
                    builder.SetCancelable(true);
                    builder.SetNeutralButton(Resource.String.ok, (obj, arg) => {
                    });
                    builder.Show();
                    return;
                }
                foreach (FileInfo fi in files)
                {
                    string ext = Path.GetExtension(fi.Name).ToUpper();
                    if (ext.Equals(".GWC") || ext.Equals(".GWZ") || ext.Equals("WFC") || ext.Equals("WFZ"))
                    {
                        fileList.Add(fi.FullName);
                    }
                }
                if (fileList.Count == 0)
                {
                    AlertDialog.Builder builder = new AlertDialog.Builder(this);
                    builder.SetTitle(GetString(Resource.String.main_error));
                    builder.SetMessage(String.Format(GetString(Resource.String.main_error_no_cartridges), Main.Path));
                    builder.SetCancelable(true);
                    builder.SetNeutralButton(Resource.String.ok, (obj, arg) => {
                    });
                    builder.Show();
                }

                // Create CartridgesList
                carts.GetByFileList(fileList);
                MainApp.Cartridges = carts;

                // Show splash screen
                StartActivity(typeof(CartridgesActivity));
            });
        }
        public Gun spawnGun(Cartridges cart, int magSize)
        {
            Gun                     gun      = new Gun();
            MagazineSize            _magSize = new MagazineSize();
            var                     type     = Type.GetType(cart as Cartridges);
            Magazine <typeof(cart)> gunMag   = new Magazine <cart> .Magazine(magSize);

            _magSize.magSize  = magSize;
            gun.GunCartridges = cart;
            gun.GunMagSize    = _magSize;
            return(new Gun());
        }
Пример #6
0
        public void buttonSearchWGCodeClick(object sender, EventArgs args)
        {
            // TODO: Insert token for user in constructor
            Cartridges carts = new Cartridges();

            carts.BeginGetByName(FindViewById <EditText> (Resource.Id.editWGCode).Text);

            MainApp.Cartridges = carts;

            Intent intent = new Intent(this, typeof(CartridgesActivity));

            StartActivity(intent);
        }
Пример #7
0
        public void buttonOfflineClick(object sender, EventArgs args)
        {
            Cartridges    carts    = new Cartridges();
            List <string> fileList = new List <string> ();

            FileInfo[] files = null;

            string path = Main.Path;

            try {
                // Read all GWC, GWZ, WFC and WFZ from default directory
                files = new DirectoryInfo(global::Android.OS.Environment.ExternalStorageDirectory.AbsolutePath + Java.IO.File.Separator + "WF.Player").GetFiles("*");
            }
            catch (Exception e) {
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.SetTitle(GetString(Resource.String.main_error));
                builder.SetMessage(e.Message);
                builder.SetCancelable(true);
                builder.SetNeutralButton(Resource.String.ok, (obj, arg) => { });
                builder.Show();
                return;
            }

            foreach (FileInfo fi in files)
            {
                string ext = Path.GetExtension(fi.Name).ToUpper();
                if (ext.Equals(".GWC") || ext.Equals(".GWZ") || ext.Equals("WFC") || ext.Equals("WFZ"))
                {
                    fileList.Add(fi.FullName);
                }
            }

            if (fileList.Count == 0)
            {
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.SetTitle(GetString(Resource.String.main_error));
                builder.SetMessage(String.Format(GetString(Resource.String.main_error_no_cartridges), path));
                builder.SetCancelable(true);
                builder.SetNeutralButton(Resource.String.ok, (obj, arg) => { });
                builder.Show();
            }

            // Create CartridgesList
            carts.GetByFileList(fileList);

            MainApp.Cartridges = carts;

            Intent intent = new Intent(this, typeof(CartridgesActivity));

            StartActivity(intent);
        }
Пример #8
0
        /// <summary>
        /// Обновляет один картридж.
        /// </summary>
        /// <param name="editedCartridge">Отредактированный картридж</param>
        public void UpdateCartridge(CartridgeDTO editedCartridge)
        {
            // Найти картридж, равный редактированному, в текущем списке всех картриджей.
            CartridgeDTO cartridge = Cartridges.FirstOrDefault(x => x.Id == editedCartridge.Id);
            // Найти баланс картриджа, равный редактированному, в текущем списке баланса ОСП.
            BalanceDTO balance = Balance.FirstOrDefault(x => x.Cartridge.Id == editedCartridge.Id);
            // Найти все списания пользователя ОСП, в которых списан изменяемый картридж.
            IEnumerable <ExpenseDTO> userExpenses = UserExpenses.Where(x => x.Cartridge.Id == editedCartridge.Id);
            // Найти все списания ОСП, в которых списан изменяемый картридж.
            IEnumerable <ExpenseDTO> expenses = Expenses.Where(x => x.Cartridge.Id == editedCartridge.Id);
            // Найти все поступления ОСП, в которых добавлен изменяемый картридж.
            IEnumerable <ReceiptDTO> receipts = Receipts.Where(x => x.Cartridges.Where(c => c.Cartridge.Id == cartridge.Id).Any());

            // Если картридж найден.
            if (cartridge != null)
            {
                // Присвоить значения свойств отредактированного картриджа текущему.
                foreach (var prop in cartridge.GetType().GetProperties())
                {
                    prop.SetValue(cartridge, prop.GetValue(editedCartridge));
                }
                // Обновить картридж в объектах списаний, поступлений и баланса.
                if (balance != null)
                {
                    balance.Cartridge = cartridge;
                }
                if (expenses != null)
                {
                    foreach (var expense in expenses)
                    {
                        expense.Cartridge = cartridge;
                    }
                }
                if (userExpenses != null)
                {
                    foreach (var userExpense in userExpenses)
                    {
                        userExpense.Cartridge = cartridge;
                    }
                }
                if (receipts != null)
                {
                    foreach (var receipt in receipts)
                    {
                        ReceiptCartridgeDTO receiptCartridge = receipt.Cartridges.FirstOrDefault(x => x.Cartridge.Id == cartridge.Id);
                        receiptCartridge.Cartridge = cartridge;
                    }
                }
            }
        }
Пример #9
0
 /// <summary>
 /// Обновляет все картриджи в словаре.
 /// </summary>
 /// <param name="allCartridges">Новый список картриджей</param>
 public void UpdateCartridges(IEnumerable <CartridgeDTO> allCartridges)
 {
     // Если список не пустой обновить состояние каждого объекта.
     if (allCartridges.Any())
     {
         foreach (var cartridge in allCartridges)
         {
             UpdateCartridge(cartridge);
         }
     }
     // Иначе очистить текущий список.
     else
     {
         Cartridges.Clear();
     }
 }
        private void SaveCartridge()
        {
            Cartridge lSC;

            foreach (Cartridge lItr in Cartridges)
            {
                if (lItr.ID == _SelectdedCartridge.ID)
                {
                    _frmCartridge.Close();
                    RaisePropertyChanged(nameof(Cartridges));
                    RaisePropertyChanged(nameof(SelectedCartridge));
                    return;
                }
            }
            Cartridges.Add(_SelectdedCartridge);
            _frmCartridge.Close();
            RaisePropertyChanged(nameof(Cartridges));
            RaisePropertyChanged(nameof(SelectedCartridge));
        }
Пример #11
0
        public OspDataDTO GetOspData(int userId, int ospId)
        {
            // Период получения документов в ОСА (30 дней).
            DateTime startPeriod = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day).AddDays(-30);
            DateTime endPeriod   = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
            // Получить общие списки.
            ICollection <AccessDTO>    allAccesses = Accesses.GetAll();
            ICollection <UserDTO>      allUsers    = Users.GetAll();
            ICollection <CartridgeDTO> allCarts    = Cartridges.GetAll();
            ICollection <PrinterDTO>   allPrints   = Printers.GetAll();
            ICollection <OspDTO>       allOsps     = Osps.GetAll();
            // Получить данные по ОСП.
            ICollection <BalanceDTO>  balances     = Balance.Find(x => x.Osp.Id == ospId);
            ICollection <EmailDTO>    emails       = Emails.Find(x => x.Osp.Id == ospId);
            ICollection <ProviderDTO> providers    = Providers.Find(x => x.Osp.Id == ospId);
            ICollection <ReceiptDTO>  receipts     = Receipts.Find(u => u.Osp.Id == ospId && u.Date >= startPeriod && u.Date <= endPeriod);
            ICollection <ExpenseDTO>  expenses     = Expenses.Find(u => u.Osp.Id == ospId && u.Date >= startPeriod && u.Date <= endPeriod);
            ICollection <ExpenseDTO>  userExpenses = Expenses.Find(u => u.User.Id == userId && u.Osp.Id == ospId && u.Date >= startPeriod && u.Date <= endPeriod);
            // Создать объект данных для пользователя.
            var userDataDTO = new OspDataDTO()
            {
                Accesses     = new ObservableCollection <AccessDTO>(allAccesses),
                Osps         = new ObservableCollection <OspDTO>(allOsps),
                Cartridges   = new ObservableCollection <CartridgeDTO>(allCarts),
                Printers     = new ObservableCollection <PrinterDTO>(allPrints),
                Balance      = new ObservableCollection <BalanceDTO>(balances),
                Expenses     = new ObservableCollection <ExpenseDTO>(expenses),
                UserExpenses = new ObservableCollection <ExpenseDTO>(userExpenses),
                Providers    = new ObservableCollection <ProviderDTO>(providers),
                Receipts     = new ObservableCollection <ReceiptDTO>(receipts),
                Emails       = new ObservableCollection <EmailDTO>(emails),
                Users        = new ObservableCollection <UserDTO>(allUsers)
            };

            return(userDataDTO);
        }
		/// <summary>
		/// Initializes a new instance of the <see cref="WF.Player.Android.CartridgesAdapter"/> class.
		/// </summary>
		/// <param name="context">Context.</param>
		/// <param name="carts">List of cartridges.</param>
		public CartridgesAdapter(Activity context, Cartridges carts) : base()
		{
			this.context = context;
			this.carts = carts;
			
			carts.CollectionChanged += OnCartridgesChanged;
		}
Пример #13
0
		async void LoadCartridges()
		{
			await Task<bool>.Run(() => 
				{
					// Create Vernacular catalog for translation
					Catalog.Implementation = new Vernacular.AndroidCatalog (Resources, typeof (Resource.String));

					//
					// TODO: Show MainActivity instead of local file list
					//
					Cartridges carts = new Cartridges();
					List<string> fileList = new List<string>();
					FileInfo[] files = null;
					try {
						// Read all GWC, GWZ, WFC and WFZ from default directory
						files = new DirectoryInfo(global::Android.OS.Environment.ExternalStorageDirectory.AbsolutePath + Java.IO.File.Separator + "WF.Player").GetFiles("*");
					}
					catch(Exception e) {
						AlertDialog.Builder builder = new AlertDialog.Builder(this);
						builder.SetTitle(GetString(Resource.String.main_error));
						builder.SetMessage(e.Message);
						builder.SetCancelable(true);
						builder.SetNeutralButton(Resource.String.ok, (obj, arg) =>  {
						});
						builder.Show();
						return;
					}
					foreach(FileInfo fi in files) {
						string ext = Path.GetExtension(fi.Name).ToUpper();
						if(ext.Equals(".GWC") || ext.Equals(".GWZ") || ext.Equals("WFC") || ext.Equals("WFZ"))
							fileList.Add(fi.FullName);
					}
					if(fileList.Count == 0) {
						AlertDialog.Builder builder = new AlertDialog.Builder(this);
						builder.SetTitle(GetString(Resource.String.main_error));
						builder.SetMessage(String.Format(GetString(Resource.String.main_error_no_cartridges), Main.Path));
						builder.SetCancelable(true);
						builder.SetNeutralButton(Resource.String.ok, (obj, arg) =>  {
						});
						builder.Show();
					}

					// Create CartridgesList
					carts.GetByFileList(fileList);
					MainApp.Cartridges = carts;

					// Show splash screen
					StartActivity(typeof(CartridgesActivity));
				});
		}
Пример #14
0
		public CartridgeListSource() 
		{  
			cartList = new Cartridges();
			GetCartridgeList();
		}  
Пример #15
0
 public CartridgeListSource()
 {
     cartList = new Cartridges();
     GetCartridgeList();
 }
Пример #16
0
		public void buttonOfflineClick(object sender, EventArgs args)
		{ 
			Cartridges carts = new Cartridges();
			List<string> fileList = new List<string> ();
			FileInfo[] files = null;

			string path = Main.Path;

			try {
				// Read all GWC, GWZ, WFC and WFZ from default directory
				files = new DirectoryInfo(global::Android.OS.Environment.ExternalStorageDirectory.AbsolutePath + Java.IO.File.Separator + "WF.Player").GetFiles("*");
			}
			catch(Exception e) {
				AlertDialog.Builder builder = new AlertDialog.Builder (this);
				builder.SetTitle (GetString (Resource.String.main_error));
				builder.SetMessage(e.Message);
				builder.SetCancelable (true);
				builder.SetNeutralButton(Resource.String.ok,(obj,arg) => { });
				builder.Show ();
				return;
			}

			foreach (FileInfo fi in files)
			{
				string ext = Path.GetExtension (fi.Name).ToUpper ();
				if (ext.Equals (".GWC") || ext.Equals (".GWZ") || ext.Equals ("WFC") || ext.Equals ("WFZ"))
					fileList.Add (fi.FullName);
			}

			if (fileList.Count == 0)
			{
				AlertDialog.Builder builder = new AlertDialog.Builder (this);
				builder.SetTitle (GetString (Resource.String.main_error));
				builder.SetMessage(String.Format(GetString(Resource.String.main_error_no_cartridges),path));
				builder.SetCancelable (true);
				builder.SetNeutralButton(Resource.String.ok,(obj,arg) => { });
				builder.Show ();
			}

			// Create CartridgesList
			carts.GetByFileList (fileList);

			MainApp.Cartridges = carts;

			Intent intent = new Intent (this, typeof(CartridgesActivity));
			StartActivity (intent);
		}
Пример #17
0
		public void buttonSearchWGCodeClick(object sender, EventArgs args)
		{ 
			// TODO: Insert token for user in constructor
			Cartridges carts = new Cartridges ();

			carts.BeginGetByName (FindViewById<EditText> (Resource.Id.editWGCode).Text);

			MainApp.Cartridges = carts;

			Intent intent = new Intent (this, typeof(CartridgesActivity));
			StartActivity (intent);
		}