예제 #1
0
 private void RefreshData(object data)
 {
     if (data is KhachHang)
     {
         FormBehavior.RefreshGrid(gridViewCongNo, (KhachHang)data);
     }
 }
예제 #2
0
        private void btnAddPNK_Click(object sender, EventArgs e)
        {
            ObserverControl.Regist(this.Name, "DefaultForm", Define.ActionTypeEnum.Close, RefreshData);
            var title = _loaiDonHang == Define.LoaiDonHangEnum.NhapKho ? "Nhập Kho" : "Xuất Kho";

            FormBehavior.GenerateForm(new UcDonHang(_loaiDonHang), title, this.ParentForm, this.Name);
        }
예제 #3
0
        private void rbMainBeh_CheckedChanged(object sender, EventArgs e)
        {
            RadioButton rb = (RadioButton)sender;
            int         v  = Convert.ToInt32(rb.Name.Substring(rb.Name.Length - 1));

            MainBehavior = (FormBehavior)v;
        }
예제 #4
0
        private void frmOptions_Load(object sender, EventArgs e)
        {
            AutostartInfo();
            txtSettingsPath.Text = cConfig.ConfigPath + cConfig.ConfigFileName;

            //установка чекбоксов
            chkAskExit.Checked = Convert.ToBoolean(
                cConfig.GetParameter("Global.AskExit", "true"));
            chkAskMainBeh.Checked = Convert.ToBoolean(
                cConfig.GetParameter("Global.AskMainBehavior", "true"));
            chkOverdueNotif.Checked = Convert.ToBoolean(
                cConfig.GetParameter("Global.OverdueNotify", "true"));
            chkOverdueNewTime.Checked = Convert.ToBoolean(
                cConfig.GetParameter("Global.OverdueNewTime", "false"));
            chkOverdueRun.Checked = Convert.ToBoolean(
                cConfig.GetParameter("Global.OverdueRun", "false"));

            //загрузка остальных параметров
            MainBehavior = (FormBehavior)Convert.ToInt32(
                cConfig.GetParameter("Global.MainBehavior", "0"));
            Notification = (NotificationType)Convert.ToInt32(
                cConfig.GetParameter("Global.Notification", "0"));
            oldNotification = Notification;

            //установка Radiobutton'ов
            int    tmpNum  = (int)MainBehavior;
            string tmpName = "rbMainBeh" + tmpNum.ToString();

            CheckRadioButton(tmpName, groupMainBeh);
            tmpNum  = (int)Notification;
            tmpName = "rbNotification" + tmpNum.ToString();
            CheckRadioButton(tmpName, groupNotification);
        }
예제 #5
0
        private void btnAddNhaCungCap_Click(object sender, EventArgs e)
        {
            ObserverControl.Regist(this.Name, "DefaultForm", Define.ActionTypeEnum.Close, RefreshData);
            var title = _loaiKhachHang == Define.LoaiKhachHangEnum.NhaCungCap ? "Nhà Cung Cấp" : "Khách Hàng";

            FormBehavior.GenerateForm(new UcKhachHang(_loaiKhachHang), title, this.ParentForm, this.Name);
        }
예제 #6
0
        private void btnAddHangHoa_Click(object sender, EventArgs e)
        {
            var defaultSelected = 0l;

            if (selectedLoaiHang != null)
            {
                defaultSelected = selectedLoaiHang.Id;
            }
            FormBehavior.GenerateForm(new UcKhoHang(defaultSelected), "Kho Hàng", this.ParentForm, this.Name);
        }
예제 #7
0
        public UcThuChiList()
        {
            InitializeComponent();
            InitAuthorize();
            ReloadData();
            ObserverControl.Regist(this.Name, "DefaultForm", Define.ActionTypeEnum.Close, RefreshData);

            FormBehavior.GenerateFormatRuleByValue(gridViewThuChi, colLoai, "Chi", FormatCondition.Equal, Color.Wheat, Color.Red);
            FormBehavior.GenerateFormatRuleByValue(gridViewThuChi, colLoai, "Thu", FormatCondition.Equal, Color.Honeydew, Color.Green);
        }
예제 #8
0
        private void gridViewChiTiet_DoubleClick(object sender, EventArgs e)
        {
            var chitiet = gridViewChiTiet.GetRow(gridViewChiTiet.FocusedRowHandle) as ChiTietDonHang;

            if (chitiet != null)
            {
                var hangHoa = CRUD.DbContext.KhoHangs.Find(chitiet.HangHoaId);
                FormBehavior.GeneratePopupForm(new UcChiTietHangHoa(hangHoa.TenHang, chitiet, UpdateTongTien), "Chi Tiết IMEI", this.ParentForm);
            }
        }
예제 #9
0
 private void RefreshData(object data)
 {
     if (data is KhoHang)
     {
         FormBehavior.RefreshGrid(gridViewHangHoa, (KhoHang)data);
     }
     if (data is DanhMuc)
     {
         FormBehavior.RefreshGrid(gridViewLoaiHang, (DanhMuc)data);
     }
 }
예제 #10
0
 private void RefreshData(object data)
 {
     if (data is DanhMuc)
     {
         FormBehavior.RefreshGrid(gridViewLoaiThuChi, (DanhMuc)data);
     }
     if (data is ThuChi)
     {
         FormBehavior.RefreshGrid(gridViewThuChi, (ThuChi)data);
     }
 }
예제 #11
0
 private void RefreshData(object data)
 {
     if (data is DonHang)
     {
         FormBehavior.RefreshGrid(gridViewNhapKho, (DonHang)data);
     }
     if (data is KhachHang)
     {
         FormBehavior.RefreshGrid(gridViewKhachHang, (KhachHang)data);
     }
 }
예제 #12
0
 private void gridViewNhapKho_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         dynamic data = gridViewXuatKho.GetRow(gridViewXuatKho.FocusedRowHandle);
         if (data != null && data.Id != null)
         {
             var info = CRUD.DbContext.DonHangs.Find(data.Id);
             FormBehavior.GenerateForm(new UcDonHang(Define.LoaiDonHangEnum.XuatKho, info), "Xuất Kho", this.ParentForm, this.Name);
         }
     });
 }
예제 #13
0
 private void gridViewLoaiHang_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         var data = (DanhMuc)gridViewLoaiHang.GetRow(gridViewLoaiHang.FocusedRowHandle);
         if (data != null)
         {
             data = CRUD.DbContext.DanhMucs.Find(data.Id);
             FormBehavior.GenerateForm(new UcNhomHang(Define.LoaiDanhMucEnum.DienThoai, data), "Nhóm Hàng", this.ParentForm, this.Name);
         }
     });
 }
예제 #14
0
 private void gridViewHangHoa_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         dynamic data = gridViewHangHoa.GetRow(gridViewHangHoa.FocusedRowHandle);
         if (data != null && data.Id != null)
         {
             var info = CRUD.DbContext.KhoHangs.Find(data.Id);
             FormBehavior.GenerateForm(new UcKhoHang(info), "Kho Hàng", this.ParentForm);
         }
     });
 }
예제 #15
0
 private void gridViewThuChi_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         dynamic data = gridViewThuChi.GetRow(gridViewThuChi.FocusedRowHandle);
         if (data != null && data.Id != null)
         {
             var info = CRUD.DbContext.ThuChis.Find(data.Id);
             FormBehavior.GenerateForm(new UcThuChi(_selectedNoiDungId, info), "Thu Chi", this.ParentForm, this.Name);
         }
     });
 }
예제 #16
0
        public UcThongKe()
        {
            InitializeComponent();

            var currentDate = TimeHelper.CurentDateTime();

            EndDate.Value   = currentDate;
            StartDate.Value = currentDate.AddYears(-1);

            FormBehavior.GenerateFormatRuleByValue(gridViewHangHoa, colLoiNhuan, 0, FormatCondition.LessOrEqual, Color.Wheat, Color.Red);
            FormBehavior.GenerateFormatRuleByValue(gridViewHangHoa, colLoiNhuan, 0, FormatCondition.Greater, Color.Honeydew, Color.Green);
        }
예제 #17
0
 private void gridViewKhachHang_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         dynamic data = gridViewKhachHang.GetRow(gridViewKhachHang.FocusedRowHandle);
         if (data != null && data.Id != null)
         {
             var info = CRUD.DbContext.KhachHangs.Find(data.Id);
             FormBehavior.GenerateForm(new UcKhachHang(Define.LoaiKhachHangEnum.KhachSi, info), "Khách Hàng", this.ParentForm, this.Name);
         }
     });
 }
예제 #18
0
 private void gridViewUser_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         dynamic data = gridViewUser.GetRow(gridViewUser.FocusedRowHandle);
         if (data != null && data.Id != null)
         {
             var info = CRUD.DbContext.UserAccounts.Find(data.Id);
             FormBehavior.GenerateForm(new UcUserAccount(info), "Thông Tin Người Dùng", this.ParentForm);
         }
     });
 }
예제 #19
0
 private void gridViewLoaiThuChi_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         dynamic data = gridViewLoaiThuChi.GetRow(gridViewLoaiThuChi.FocusedRowHandle);
         if (data != null && data.Id != null)
         {
             var info = CRUD.DbContext.DanhMucs.Find(data.Id);
             FormBehavior.GenerateForm(new UcNhomHang(Define.LoaiDanhMucEnum.ThuChi, info), "Loại Thu Chi", this.ParentForm, this.Name);
         }
     });
 }
예제 #20
0
        private void frmMainBeh_Load(object sender, EventArgs e)
        {
            MainBehavior = (FormBehavior)Convert.ToInt32(cConfig.GetParameter("Global.MainBehavior", "0"));

            if (MainBehavior == FormBehavior.Hide)
            {
                rbMainBeh0.Checked = true;
            }
            else
            {
                rbMainBeh1.Checked = true;
            }
        }
예제 #21
0
 private void gridViewHangHoa_DoubleClick(object sender, System.EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         dynamic data = gridViewHangHoa.GetRow(gridViewHangHoa.FocusedRowHandle);
         if (data != null && data.Id != null)
         {
             var info        = CRUD.DbContext.DonHangs.Find(data.DonHangId);
             var loaiDonHang = PrimitiveConvert.StringToEnum <Define.LoaiDonHangEnum>(info.LoaiDonHang);
             FormBehavior.GenerateForm(new UcDonHang(loaiDonHang, info), data.LoaiPhieu, this.ParentForm, this.Name);
         }
     });
 }
예제 #22
0
 private void gridViewHangHoa_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         var data = (KhoHang)gridViewHangHoa.GetRow(gridViewHangHoa.FocusedRowHandle);
         if (data != null)
         {
             data = CRUD.DbContext.KhoHangs.Find(data.Id);
             _khoHangs[gridViewHangHoa.GetFocusedDataSourceRowIndex()] = data;
             FormBehavior.GenerateForm(new UcKhoHang(data.LoaiHangId, data), "Kho Hàng", this.ParentForm, this.Name);
         }
     });
 }
예제 #23
0
 private void gridViewKhachHang_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         var data = _khachHangs[gridViewKhachHang.GetFocusedDataSourceRowIndex()];
         if (data != null)
         {
             ObserverControl.Regist(this.Name, "DefaultForm", Define.ActionTypeEnum.Close, RefreshData);
             var title = _loaiKhachHang == Define.LoaiKhachHangEnum.NhaCungCap ? "Nhà Cung Cấp" : "Khách Hàng";
             data      = CRUD.DbContext.KhachHangs.Find(data.Id);
             FormBehavior.GenerateForm(new UcKhachHang(_loaiKhachHang, data), title, this.ParentForm, this.Name);
         }
     });
 }
예제 #24
0
 private void gridViewNhapKho_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         ObserverControl.Regist(this.Name, "DefaultForm", Define.ActionTypeEnum.Close, RefreshData);
         var data = (DonHang)gridViewNhapKho.GetRow(gridViewNhapKho.FocusedRowHandle);
         if (data != null)
         {
             var title = _loaiDonHang == Define.LoaiDonHangEnum.NhapKho ? "Nhập Kho" : "Xuất Kho";
             CRUD.DisposeDb();
             data = CRUD.DbContext.DonHangs.Find(data.Id);
             FormBehavior.GenerateForm(new UcDonHang(_loaiDonHang, data), title, this.ParentForm, this.Name);
         }
     });
 }
예제 #25
0
 private void gridViewCongNo_DoubleClick(object sender, EventArgs e)
 {
     ThreadHelper.LoadForm(() =>
     {
         var data = (KhachHang)gridViewCongNo.GetRow(gridViewCongNo.FocusedRowHandle);
         if (data != null)
         {
             ObserverControl.Regist(this.Name, "DefaultForm", Define.ActionTypeEnum.Close, RefreshData);
             data = CRUD.DbContext.KhachHangs.Find(data.Id);
             FormBehavior.GenerateForm(new UcCongNo(_loaiDonHang, _loaiTienTe, data), "Công Nợ",
                                       this.ParentForm,
                                       this.Name);
         }
     });
 }
예제 #26
0
        public UcUserAccount(UserAccount data = null)
        {
            InitializeComponent();
            Init(data);
            if (data != null)
            {
                phanQuyenNguoiDungs = new BindingList <PhanQuyenNguoiDung>(data.PhanQuyenNguoiDungs.ToList());
                UserAccount_TenNguoiDung.Enabled = false;
                if (!(bool)data.IsActived)
                {
                    btnLock.Text = "Mở Khóa";
                }
            }
            else
            {
                phanQuyenNguoiDungs = new BindingList <PhanQuyenNguoiDung>(InitPhanQuyen());
                btnLock.Visible     = false;
                btnReset.Visible    = false;
            }
            FormBehavior.DecoreateLookEdit(listPermission, Define.PermissionDict, "Value", "Key");
            gridControlPermission.DataSource = phanQuyenNguoiDungs;

            _domainData = data;
        }
예제 #27
0
        private void frmMain_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (!ExitFromMenu) //пользователь закрыл форму крестиком, а не вышел из меню
            {
                if (Convert.ToBoolean(cConfig.GetParameter("Global.AskMainBehavior", "true")))
                {
                    //спросить о поведении формы
                    frmMainBeh   fMainBeh = new frmMainBeh();
                    DialogResult Ask      = fMainBeh.ShowDialog();
                    if (Ask == DialogResult.No)
                    {
                        e.Cancel = true;
                        return;
                    }
                }

                //проверить что делать
                FormBehavior MainBehavior = (FormBehavior)Convert.ToInt32(
                    cConfig.GetParameter("Global.MainBehavior", "0"));

                if (MainBehavior == FormBehavior.Hide) //скрыть форму
                {
                    this.Hide();
                    e.Cancel = true;
                }
            }

            bool Maximized = false;

            //если форма минимизирована перед закрытием
            //не сохранять параметры окна
            if (this.WindowState == FormWindowState.Minimized)
            {
                return;
            }

            if (this.WindowState == FormWindowState.Maximized)
            {
                Maximized = true;
            }

            cConfig.SetParameter("Main.Maximized", Maximized.ToString());
            cConfig.SetParameter("Main.Width", this.Width.ToString());
            cConfig.SetParameter("Main.Height", this.Height.ToString());

            //закрытие не отменено - останавливаем задачи
            if (!e.Cancel)
            {
                WorkerErrorLevel wol = Worker.StopAutoRefresh();
                if (wol != WorkerErrorLevel.OK)
                {
                    CommonFunctions.ErrMessage(Worker.TaskErrMessage);
                }
                //LockedRecIDs.Clear();
                //LockedRecIDs = null;
            }

            if (!cConfig.SaveConfig())
            {
                CommonFunctions.ErrMessage(cConfig.ConfigErrMessage);
            }
        }
예제 #28
0
        public UcDonHang(Define.LoaiDonHangEnum loaiDonHang, DonHang data = null)
        {
            InitializeComponent();

            DonHang_KhachHangId.DisplayMember = "Ten";
            DonHang_KhachHangId.ValueMember   = "Id";
            var lstKhachHang = new List <KhachHang>();

            if (loaiDonHang == Define.LoaiDonHangEnum.XuatKho)
            {
                lstKhachHang        = CRUD.DbContext.KhachHangs.Where(s => s.LoaiKhachHang != Define.LoaiKhachHangEnum.NhaCungCap.ToString()).ToList();
                lblKhachHangId.Text = "Khách Hàng";
            }
            else
            {
                lstKhachHang = CRUD.DbContext.KhachHangs.Where(s => s.LoaiKhachHang == Define.LoaiKhachHangEnum.NhaCungCap.ToString()).ToList();
            }
            DonHang_KhachHangId.DataSource = new BindingSource((lstKhachHang), null);

            DonHang_LoaiTienTe.DisplayMember = "Value";
            DonHang_LoaiTienTe.ValueMember   = "Key";
            DonHang_LoaiTienTe.DataSource    = new BindingSource(Define.LoaiTienTeDict, null);

            _loaiDonHang = loaiDonHang;
            _domainData  = data;
            if (_domainData == null)
            {
                _domainData             = new DonHang();
                _domainData.NgayLap     = TimeHelper.CurentDateTime();
                _domainData.LoaiDonHang = loaiDonHang.ToString();
                _domainData.TrangThai   = Define.TrangThaiDonHang.Moi.ToString();
                _domainData.LoaiTienTe  = Define.LoaiTienTeEnum.VND.ToString();
                _domainData.TyGia       = 1;

                btnDelete.Visible = false;
                btnIn.Visible     = false;
                GenerateMaDH();
            }
            else
            {
                _chiTietDonhang = new BindingList <ChiTietDonHang>(_domainData.ChiTietDonHangs.ToList());
                if (_domainData.KhachHangId == Define.KhachLeId)
                {
                    var khachLe = lstKhachHang.FirstOrDefault(s => s.Id == Define.KhachLeId);
                    if (khachLe != null)
                    {
                        khachLe.Ten = _domainData.Ten;
                    }
                }
                btnDelete.Visible = true;

                _chiTietDonhang.ForEach(s => s.ListChiTietHangHoa = s.ChiTietHangHoas.ToList());

                if (_domainData.TrangThai == Define.TrangThaiDonHang.ThanhToan.ToString())
                {
                    btnSave.Enabled        = false;
                    btnDelete.Visible      = false;
                    _domainData.ThanhToan += _domainData.CongNoes.Where(l => l.IsActived).Sum(l => l.ThanhToan);
                }
            }

            Init(_domainData);

            // Get list hang hoa
            var dataSource = CRUD.DbContext.KhoHangs
                             .Where(s => s.IsActived &&
                                    (loaiDonHang == Define.LoaiDonHangEnum.NhapKho || s.SoLuong > 0))
                             .Select(s => new { s.TenHang, s.Id })
                             .Union(CRUD.DbContext.ChiTietDonHangs
                                    .Where(s => _domainData.Id == s.DonHangId)
                                    .Join(CRUD.DbContext.KhoHangs, ctdh => ctdh.HangHoaId, kh => kh.Id,
                                          (ctdh, kh) => new { kh.TenHang, kh.Id })).ToList();

            FormBehavior.DecoreateLookEdit(listHangHoa, dataSource, "TenHang");
            listHangHoa.EditValueChanged += listHangHoa_EditValueChanged;

            gridControlChiTiet.DataSource      = _chiTietDonhang;
            gridViewChiTiet.ActiveFilterString = string.Format("[IsActived] = '{0}'", true);

            CheckDonHangUSD();

            btnDeleteRow.ButtonClick += btnDeleteRow_ButtonClick;

            UpdateTongTien();
            UpdateNo();
        }
예제 #29
0
 private void PopupForm_FormClosing(object sender, FormClosingEventArgs e)
 {
     FormBehavior.Close(this);
 }
예제 #30
0
 private void btnAddCongNo_Click(object sender, EventArgs e)
 {
     ObserverControl.Regist(this.Name, "DefaultForm", Define.ActionTypeEnum.Close, RefreshData);
     FormBehavior.GenerateForm(new UcCongNoCu(_loaiDonHang, _loaiTienTe), "Công Nợ", this.ParentForm, this.Name);
 }