示例#1
0
        /// <summary>
        /// Возвращает ид Роли
        /// </summary>
        /// <param name="user_code"></param>
        /// <returns></returns>
        private int find_user_role_new(string password)
        {
            int rezult = 0;

            string password_Md5Hash = MainStaticClass.getMd5Hash(password).ToUpper();

            try
            {
                NpgsqlConnection conn = MainStaticClass.NpgsqlConn();
                conn.Open();
                string           query   = "SELECT rights,name,code,inn FROM users where password_m='" + password_Md5Hash.Trim() + "' or password_b='" + password_Md5Hash.Trim() + "'";
                NpgsqlCommand    command = new NpgsqlCommand(query, conn);
                NpgsqlDataReader reader  = command.ExecuteReader();
                while (reader.Read())
                {
                    rezult = Convert.ToInt32(reader.GetInt16(0));
                    if (!not_change_Cash_Operator)
                    {
                        MainStaticClass.Cash_Operator             = reader["name"].ToString().Trim();
                        MainStaticClass.Cash_Operator_Client_Code = reader["code"].ToString();
                        MainStaticClass.cash_operator_inn         = reader["inn"].ToString();
                    }
                }
                conn.Close();
            }
            catch (NpgsqlException ex)
            {
                MessageBox.Show(ex.Message);
            }

            if (MainStaticClass.Cash_Operator.Trim().ToUpper() == "К9")
            {
                //MessageBox.Show("                                                                              "+MainStaticClass.CashDeskNumber.ToString());
                //MessageBox.Show("                                                                              "+MainStaticClass.get_unloading_interval().ToString());

                if ((MainStaticClass.CashDeskNumber != 9) || (MainStaticClass.get_unloading_interval() != 0))//Это пользователь для центрального компьютера 9 касса, пользователь не может зайти если стоит период синхронизации отличный от нуля или если номер кассы не 9
                {
                    rezult = 0;
                    MainStaticClass.Cash_Operator             = "";
                    MainStaticClass.Cash_Operator_Client_Code = "";
                }
            }

            return(rezult);
        }
示例#2
0
        private void Cash_checks_Load(object sender, System.EventArgs e)
        {
            if (listView1.Columns.Count == 6)
            {
                return;
            }

            int result = MainStaticClass.get_unloading_interval();

            if (result != 0)
            {
                //timer.Interval = 60000;
                timer.Start();
                timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);
                //timer_Elapsed(null, null);
                get_status_send_document();
            }

            this.num_cash.Text     = "КАССА № " + MainStaticClass.CashDeskNumber.ToString();
            this.txtB_cashier.Text = MainStaticClass.Cash_Operator;

            //this.data_start.Text = monthCalendar1.SelectionStart.ToString();
            //this.data_finish.Text = monthCalendar1.SelectionStart.AddSeconds(86399).ToString();
            // Set the view to show details.
            listView1.View = View.Details;

            // Allow the user to rearrange columns.
            listView1.AllowColumnReorder = true;

            // Select the item and subitems when selection is made.
            listView1.FullRowSelect = true;

            // Display grid lines.
            listView1.GridLines = true;
            listView1.Columns.Clear();
            listView1.Columns.Add("Статус", 100, HorizontalAlignment.Left);
            listView1.Columns.Add("Дата", 200, HorizontalAlignment.Left);
            listView1.Columns.Add("Клиент", 200, HorizontalAlignment.Left);
            listView1.Columns.Add("Сумма", 100, HorizontalAlignment.Right);
            listView1.Columns.Add("Сдача", 100, HorizontalAlignment.Right);
            listView1.Columns.Add("Тип чека ", 100, HorizontalAlignment.Right);
            listView1.Columns.Add("Коментарий", 300, HorizontalAlignment.Right);
            listView1.Columns.Add("Номер", 300, HorizontalAlignment.Right);

            //listView1.Columns.Add("Инвентаризация", 100, HorizontalAlignment.Right);



            //this.WindowState = FormWindowState.Normal;
            this.WindowState = FormWindowState.Maximized;

            if (MainStaticClass.Code_right_of_user == 2)
            {
                label2.Enabled          = false;
                dateTimePicker1.Enabled = false;
                fill.Enabled            = false;

                //data_start.Visible = false;
                //data_finish.Visible = false;
                //button2.Visible = false;
                //button3.Visible = false;
                //button4.Visible = false;

                label2.Visible       = false;
                this.FormBorderStyle = FormBorderStyle.None;
            }

            //tovar = new Nomenklatura();
            //tovar.caller = this;
            //tovar.Visible = false;
            this.Top     = 0;
            this.Left    = 0;
            this.Size    = new System.Drawing.Size(SystemInformation.PrimaryMonitorSize.Width, SystemInformation.PrimaryMonitorSize.Height);
            this.TopMost = true;

            loaddocuments();

            if (MainStaticClass.Code_right_of_user != 1)
            {
                checkBox_show_3_last_checks.Enabled = false;
            }

            if (MainStaticClass.Code_right_of_user != 1)
            {
                this.WindowState = FormWindowState.Normal;
                this.BringToFront();
            }
        }
示例#3
0
        public void send_sales_data_Click(object sender, EventArgs e)
        {
            if (MainStaticClass.get_unloading_interval() == 0)
            {
                return;
            }

            int documents_out_of_the_range_of_dates = MainStaticClass.get_documents_out_of_the_range_of_dates();

            if (documents_out_of_the_range_of_dates > 0 || documents_out_of_the_range_of_dates < 0)
            {
                return;
            }

            if (MainStaticClass.CashDeskNumber == 9)
            {
                return;
            }

            if (!its_sent_sertificate()) //не удалось отправить данные по сертификатам, отправка основных данных прервана
            {
                return;
            }

            if (!MainStaticClass.service_is_worker())
            {
                return;
            }

            Cash8.DS.DS ds = MainStaticClass.get_ds();
            ds.Timeout = 180000;

            //Получить параметра для запроса на сервер
            nick_shop = MainStaticClass.Nick_Shop.Trim();
            if (nick_shop.Trim().Length == 0)
            {
                return;
            }
            string code_shop = MainStaticClass.Code_Shop.Trim();

            if (code_shop.Trim().Length == 0)
            {
                return;
            }
            string count_day = CryptorEngine.get_count_day();

            salesPortions         = new SalesPortions();
            salesPortions.Shop    = nick_shop;
            salesPortions.Guid    = code_shop;
            salesPortions.Version = MainStaticClass.version().Replace(".", "");
            get_data_on_salaes();
            if (were_mistakes)//Произошли какие то ошибки при выгрузке
            {
                return;
            }
            if ((salesPortions.ListSalesPortionsHeader.Count == 0) || (salesPortions.ListSalesPortionsTable.Count == 0))
            {
                return;
            }
            string key             = nick_shop.Trim() + count_day.Trim() + code_shop.Trim();
            bool   result_web_quey = false;
            string data            = JsonConvert.SerializeObject(salesPortions, Formatting.Indented, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            });
            string data_crypt = CryptorEngine.Encrypt(data, true, key);

            try
            {
                result_web_quey = ds.UploadDataOnSalesPortionJason(nick_shop, data_crypt);
            }
            catch (Exception ex)
            {
                write_error(ex.Message);
            }

            if (result_web_quey)
            {
                update_status_is_sent();
            }
        }