// Chấm công
        private void ClockInnOut()
        {
            string time;

            if (eeStatus)
            {
                time           = DateTime.Now.TimeOfDay.ToString("hh\\:mm");
                from           = TimeSpan.Parse(time);
                lblStatus.Text = "Bấm giờ vào làm việc lúc " + time;
                eeStatus       = false;
            }
            else
            {
                DialogResult q = MessageBox.Show("Xác nhận bấm giờ ra", "Xác nhận", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (q == DialogResult.Yes)
                {
                    time = DateTime.Now.TimeOfDay.ToString("hh\\:mm");
                    to   = TimeSpan.Parse(time);
                    GioCong gc = new GioCong(frmDangnhap.nv, from, to, DateTime.Now.Date);
                    lblStatus.Text = "Bấm giờ ra lúc " + time;
                    BLL_GioCong.Instance.InsertTime_BLL(gc);
                    eeStatus = true;
                }
            }
        }
Beispiel #2
0
        public async Task <List <GioCong> > GetWorkingDay(int IdNhanVien, DateTime fromDate, DateTime toDate)
        {
            try
            {
                string type     = $"{prefix}_Module_BusinessObjects_{typeof(GioCong).Name}";
                string nhanvien = $"{prefix}_Module_BusinessObjects_{typeof(NhanVien).Name}";
                var    results  = await _client
                                  .For(type)
                                  .Expand("nguoiChamCong", "ngay")
                                  .FindEntriesAsync();

                List <GioCong> gioCongs = new List <GioCong>();
                foreach (var result in results)
                {
                    if (IdNhanVien == (int)(result["nguoiChamCong"] as IDictionary <string, object>)["Id"])
                    {
                        GioCong gioCong = new GioCong
                        {
                            soGioCoBan  = (double?)result["soGioCoBanSaved"],
                            soGioTangCa = (double)result["soGioTangCa"]
                        };
                        gioCongs.Add(gioCong);
                    }
                }
                return(gioCongs);
            }
            catch (Exception exception)
            {
                throw exception;
            }
        }
        protected override void OnActivated()
        {
            base.OnActivated();
            string            condition  = CriteriaOperator.And(CriteriaOperator.Parse("[ngayDuyet] Is Null")).ToString();
            CriteriaOperator  criteria   = CriteriaOperator.Parse(condition);
            IList <LanTangCa> lanTangCas = ObjectSpace.GetObjects <LanTangCa>(criteria);

            Console.WriteLine("Cap nhat lan tang ca");
            foreach (LanTangCa lanTangCa in lanTangCas)
            {
                CriteriaOperator criteriaOperator = CriteriaOperator.And(CriteriaOperator.Parse("[nguoiChamCong] = ?", lanTangCa.nguoiTangCa), CriteriaOperator.Parse("[ngay.ngayChamCong] = ?", lanTangCa.ngayTangCa));
                GioCong          gio = ObjectSpace.FindObject <GioCong>(criteriaOperator);
                if (!Equals(gio, null))
                {
                    gio.soGioTangCa = lanTangCa.thoiGianTangCa;
                    gio.duyetTangCa = false;
                }

                lanTangCa.gioCong = gio;
            }
            ObjectSpace.CommitChanges();
            ObjectSpace.Refresh();
            View.Refresh();
            // Perform various tasks depending on the target View.
        }
Beispiel #4
0
        public bool InsertTime_DAL(GioCong t)
        {
            int    kq    = 0;
            string query = "INSERT dbo.GIOCONG (MaNV, GioVao, GioRa, NgayLamViec) VALUES ( @manv , @in , @out , @date )";

            kq = DataProvider.Instance.ExecuteNonQuery(query, new object[] { t.Nv.Mã_NViên, t.Giờ_vào.ToString(formatGio), t.Giờ_ra.ToString(formatGio), t.Ngày_làm_việc.ToString(formatNgay) });
            return(kq > 0);
        }
Beispiel #5
0
        public bool UpdateTime_DAL(GioCong t, int iD)
        {
            int    kq    = 0;
            string query = "UPDATE dbo.GIOCONG SET GioVao = @in , GioRa = @out , NgayLamViec = @date WHERE TimeID = @id ";

            kq = DataProvider.Instance.ExecuteNonQuery(query, new object[] { t.Giờ_vào.ToString(formatGio), t.Giờ_ra.ToString(formatGio), t.Ngày_làm_việc.ToString(formatNgay), iD });
            return(kq > 0);
        }
        protected override void OnActivated()
        {
            base.OnActivated();
            int soNgayChuaCapNhat = 0;
            /*Tìm ngày cuối cùng lúc trước khi cập nhật*/
            CriteriaOperator criteria = new BinaryOperator("Id", new JoinOperand("NgayTinhCong", null, Aggregate.Max, new OperandProperty("Id")));
            var ngayTinhCongs         = (NgayTinhCong)ObjectSpace.FindObject <NgayTinhCong>(criteria);

            if (Equals(ngayTinhCongs, null))
            {
                NgayTinhCong ngayTinhCong = ObjectSpace.CreateObject <NgayTinhCong>();
                ngayTinhCong.ngayChamCong = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1);
                IList <NhanVien> nhanViens = ObjectSpace.GetObjects <NhanVien>();// new BinaryOperator("daNghiViec", false));
                Console.WriteLine("Danh sach nhan vien");
                Console.WriteLine(nhanViens);
                if (Equals(nhanViens, null))
                {
                    MessageBox.Show("Khong co nhan vien");
                }
                else
                {
                    foreach (NhanVien nhanVien in nhanViens)
                    {
                        GioCong gioCong = ObjectSpace.CreateObject <GioCong>();
                        gioCong.nguoiChamCong = nhanVien;
                        gioCong.ngay          = ngayTinhCong;
                    }
                    ObjectSpace.CommitChanges();
                    //ObjectSpace.Refresh();
                    //View.Refresh();
                }
            }
            else
            {
                DateTime ngayCuoiCung = ngayTinhCongs.ngayChamCong;

                soNgayChuaCapNhat = (int)(DateTime.Today - ngayCuoiCung).TotalDays;

                if (!Equals(soNgayChuaCapNhat, 0))
                {
                    for (int i = 1; i <= soNgayChuaCapNhat; i++)
                    {
                        NgayTinhCong ngayTinhCong = ObjectSpace.CreateObject <NgayTinhCong>();
                        ngayTinhCong.ngayChamCong = ngayCuoiCung.AddDays(i);
                        IList <NhanVien> nhanViens = ObjectSpace.GetObjects <NhanVien>();//new BinaryOperator("daNghiViec", false));
                        foreach (NhanVien nhanVien in nhanViens)
                        {
                            GioCong gioCong = ObjectSpace.CreateObject <GioCong>();
                            gioCong.nguoiChamCong = nhanVien;
                            gioCong.ngay          = ngayTinhCong;
                        }
                    }
                    ObjectSpace.CommitChanges();
                    //ObjectSpace.Refresh();
                    //View.Refresh();
                }
            }
        }
Beispiel #7
0
        public List <GioCong> GetListGioCong_DAL(DateTime from, DateTime to, string idnv)
        {
            List <GioCong> list  = new List <GioCong>();
            string         query = "EXEC dbo.PROC_GetListGioCongByEmpID @idnv = '" + idnv + "' , @date1 = '" + from.ToString(formatNgay) + "' , @date2 = '" + to.ToString(formatNgay) + "' ";
            DataTable      data  = DataProvider.Instance.ExecuteQuery(query);

            foreach (DataRow item in data.Rows)
            {
                GioCong time = new GioCong(item);
                list.Add(time);
            }
            return(list);
        }
Beispiel #8
0
        protected override void OnActivated()
        {
            base.OnActivated();
            string             condition   = CriteriaOperator.And(CriteriaOperator.Parse("[gioCong] Is Null")).ToString();
            CriteriaOperator   criteria    = CriteriaOperator.Parse(condition);
            IList <CheckInOut> checkInOuts = ObjectSpace.GetObjects <CheckInOut>(criteria);

            foreach (CheckInOut checkInOut in checkInOuts)
            {
                CheckInOut       check            = ObjectSpace.GetObjectByKey <CheckInOut>(checkInOut.Id);
                CriteriaOperator criteriaOperator = CriteriaOperator.And(CriteriaOperator.Parse("[nguoiChamCong] = ?", check.nguoiChamCong), CriteriaOperator.Parse("[ngay.ngayChamCong] = ?", check.NgayCham));
                GioCong          gio = ObjectSpace.FindObject <GioCong>(criteriaOperator);
                check.gioCong = gio;
            }
            ObjectSpace.CommitChanges();
            ObjectSpace.Refresh();
            View.Refresh();
        }
Beispiel #9
0
 private void btnLuuGC_Click(object sender, EventArgs e)
 {
     // IF combobox is enabled then it will add, otherwise it will update
     if (dtpClockOut.Value >= dtpClockIn.Value)
     {
         //Convert datetime to timespan
         string   clockin  = dtpClockIn.Value.ToString("HH\\:mm");
         TimeSpan clockIn  = TimeSpan.Parse(clockin);
         string   clockout = dtpClockOut.Value.ToString("HH\\:mm");
         TimeSpan clockOut = TimeSpan.Parse(clockout);
         //Create GioCong object
         GioCong gc = new GioCong(cbTenNV.SelectedItem as NhanVien, clockIn, clockOut, dtpNgay.Value);
         if (cbTenNV.Enabled)
         {
             //Add
             if (BLL_GioCong.Instance.InsertTime_BLL(gc))
             {
                 MessageBox.Show("Thêm giờ công thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
             else
             {
                 MessageBox.Show("Lỗi khi thêm giờ công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else
         {
             //Update
             if (BLL_GioCong.Instance.UpdateTime_BLL(gc, timeID))
             {
                 MessageBox.Show("Cập nhật giờ công thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
             else
             {
                 MessageBox.Show("Lỗi khi cập nhật giờ công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         dShow(null);
         this.Dispose();
     }
     else
     {
         MessageBox.Show("Lỗi nhập giờ vào sớm hơn giờ ra", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Beispiel #10
0
        private void Duyet_Execute(object sender, SimpleActionExecuteEventArgs e)
        {
            LanTangCa lanTangCa = (LanTangCa)View.CurrentObject;

            lanTangCa.ngayDuyet  = DateTime.Today;
            lanTangCa.nguoiDuyet = lanTangCa.Session.GetObjectByKey <NguoiDung>(SecuritySystem.CurrentUserId);

            CriteriaOperator criteriaOperator = CriteriaOperator.And(CriteriaOperator.Parse("[nguoiChamCong] = ?", lanTangCa.nguoiTangCa), CriteriaOperator.Parse("[ngay.ngayChamCong] = ?", lanTangCa.ngayTangCa));
            GioCong          gio = ObjectSpace.FindObject <GioCong>(criteriaOperator);

            if (!Equals(gio, null))
            {
                gio.soGioTangCa   = lanTangCa.thoiGianTangCa;
                gio.ngayDuyet     = lanTangCa.ngayDuyet;
                lanTangCa.gioCong = gio;
            }

            ObjectSpace.CommitChanges();
            ObjectSpace.Refresh();
            View.Refresh();
        }
Beispiel #11
0
        protected override void OnActivated()
        {
            base.OnActivated();
            string              condition    = CriteriaOperator.And(CriteriaOperator.Parse("[ngayDuyet] Is Null")).ToString();
            CriteriaOperator    criteria     = CriteriaOperator.Parse(condition);
            IList <LanXinDiTre> lanXinDiTres = ObjectSpace.GetObjects <LanXinDiTre>(criteria);

            foreach (LanXinDiTre lanXinDiTre in lanXinDiTres)
            {
                CriteriaOperator criteriaOperator = CriteriaOperator.And(CriteriaOperator.Parse("[nguoiChamCong] = ?", lanXinDiTre.nguoiTaoPhieu), CriteriaOperator.Parse("[ngay.ngayChamCong] = ?", lanXinDiTre.ngayXinPhep));
                GioCong          gio = ObjectSpace.FindObject <GioCong>(criteriaOperator);
                //if (!Equals(gio, null))
                //{
                //    //gio.soLanDiTre -= 1;
                //    //gio.soLanDiTre = gio.soLanDiTre - 1;
                //}

                lanXinDiTre.gioCong = gio;
            }
            ObjectSpace.CommitChanges();
            ObjectSpace.Refresh();
            View.Refresh();
        }
Beispiel #12
0
        private void boSungGio_Execute(object sender, SimpleActionExecuteEventArgs e)
        {
            LanBoSungGio lanXinPhep = (LanBoSungGio)View.CurrentObject;

            lanXinPhep.ngayDuyet  = DateTime.Now;
            lanXinPhep.nguoiDuyet = lanXinPhep.Session.GetObjectByKey <NguoiDung>(SecuritySystem.CurrentUserId);
            MessageBox.Show("Đã Duyệt Thành Công");

            CriteriaOperator criteriaOperator = CriteriaOperator.And(CriteriaOperator.Parse("[nguoiChamCong] = ?", lanXinPhep.nguoiBoSungGio), CriteriaOperator.Parse("[ngay.ngayChamCong] = ?", lanXinPhep.thoiGianBoSung));
            GioCong          gio = ObjectSpace.FindObject <GioCong>(criteriaOperator);

            if (!Equals(gio, null))
            {
                if (!Equals(lanXinPhep.thoiGianVao, null))
                {
                    gio.thoiGianVaoCaSaved = lanXinPhep.thoiGianVao;
                }
                if (!Equals(lanXinPhep.thoiGianRaGiuaCa, null))
                {
                    gio.thoiGianRaGiuaCaSaved = lanXinPhep.thoiGianRaGiuaCa;
                }
                if (!Equals(lanXinPhep.thoiGianVaoGiuaCa, null))
                {
                    gio.thoiGianVaoGiuaCaSaved = lanXinPhep.thoiGianVaoGiuaCa;
                }
                if (!Equals(lanXinPhep.thoiGianTanCa, null))
                {
                    gio.thoiGianTanCaSaved = lanXinPhep.thoiGianTanCa;
                }
                gio.ngayDuyet      = lanXinPhep.ngayDuyet;
                lanXinPhep.gioCong = gio;
            }

            ObjectSpace.CommitChanges();
            ObjectSpace.Refresh();
            View.Refresh();
        }
 public bool UpdateTime_BLL(GioCong t, int id)
 {
     return(DAO_GioCong.Instance.UpdateTime_DAL(t, id));
 }
 public bool InsertTime_BLL(GioCong t)
 {
     return(DAO_GioCong.Instance.InsertTime_DAL(t));
 }