Example #1
0
        private async void AttendanceTransactionHandler(string EnrollNumber, int IsInValid, int AttState, int VerifyMethod, int Year, int Month, int Day, int Hour, int Minute, int Second, int WorkCode)
        {
            StringBuilder sb = new StringBuilder();

            // GENERATE LOG TIME --------------------------------------------------------------------------------------------------------------------
            DateTime dt = DateTime.Now;

            /*
             *  sb.AppendLine("Enroll Number: " + EnrollNumber);
             *  sb.AppendLine("Invalid?: " + IsInValid);
             *  sb.AppendLine("Attendance State: " + AttState);
             *  sb.AppendLine("Verify Method: " + VerifyMethod);
             *  sb.AppendLine("Year: " + Year);
             *  sb.AppendLine("Month: " + Month);
             *  sb.AppendLine("Day: " + Day);
             *  sb.AppendLine("Hour: " + Hour);
             *  sb.AppendLine("Minute: " + Minute);
             *  sb.AppendLine("Second: " + Second);
             *  sb.AppendLine("Work Code: " + WorkCode);
             */

            // USER IS VERIFIED
            if (IsInValid <= 0)
            {
                sb.AppendLine(" ------ [EMPLOYEE LOG] ------");
                sb.AppendFormat("User ID: {0}", EnrollNumber);
                sb.AppendFormat("\nLog Time: {0}", dt.ToLongDateString());
            }
            Logs.Items.Add(sb.ToString());


            // SEND DATA TO SERVER ------------------------------------------------------------------------------------------------------------------
            EmployeeLog el = new EmployeeLog();

            el.enrollNumber    = EnrollNumber;
            el.timestamp       = dt;
            el.attendanceState = AttState;

            // SERIALIZE EMPLOYEE OBJECT TO JSON DATA FORMAT
            var json = JsonConvert.SerializeObject(el);
            var data = new StringContent(json, Encoding.UTF8, "application/json");

            // SEND POST REQUEST TO SERVER
            var client = new HttpClient();
            HttpResponseMessage response;

            try
            {
                response = await client.PostAsync(API_URL, data);

                string result = response.Content.ReadAsStringAsync().Result;
                Logs.Items.Add(result);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                Logs.Items.Add("ERROR: Server failed to process employeeLog attendance log");
            }
        }
Example #2
0
        public ActionResult Create(EmployeeLog employeeLog)
        {
            var logname = _iFEmployeeLog.Readlogtype(employeeLog.LogTypeId);

            employeeLog.SuccesLogin = true;
            employeeLog.LogName     = logname.Name;
            employeeLog             = _iFEmployeeLog.Create(UserId, employeeLog);
            return(RedirectToAction("Index"));
        }
Example #3
0
        public EmployeeLog Update(int userId, EmployeeLog employeeLog)
        {
            var eEmployeeLog = EEmployeeLog(employeeLog);

            eEmployeeLog.UpdatedDate = DateTime.Now;
            eEmployeeLog.UpdatedBy   = userId;
            eEmployeeLog             = _iDEmployeeLog.Update(EEmployeeLog(employeeLog));
            return(EmployeeLog(eEmployeeLog));
        }
Example #4
0
        public EmployeeLog Create(int userId, EmployeeLog employeelog)
        {
            EEmployeeLog eEmployeeLog = EEmployeeLog(employeelog);

            eEmployeeLog.CreatedDate = DateTime.Now;
            eEmployeeLog.CreatedBy   = userId;
            eEmployeeLog             = _iDEmployeeLog.Create(eEmployeeLog);
            return(EmployeeLog(eEmployeeLog));
        }
        public void UserLog()
        {
            string logtype = Request["logtype"];
            string empid   = Request["empid"];
            string empname = Request["empname"];

            if (logtype == "O")
            {
                EmployeeLog.InsertLogOutTime(empid, empname);
            }
        }
        public ActionResult CreateLog(EmployeeLog employeeLog)
        {
            var  employee  = _iFEmployee.Read(employeeLog.EmployeeNumber, employeeLog.Pin);
            bool IsSuccess = employee.EmployeeId != 0 && employee.Pin == employeeLog.Pin;

            employeeLog.LogDate             = DateTime.Now;
            employeeLog.EmployeeId          = employee.EmployeeId;
            employeeLog.SuccesLogin         = IsSuccess;
            employeeLog                     = _iFEmployeeLog.Create(UserId, employeeLog);
            employeeLog.EmployeeImageBase64 = employee.EmployeeImageBase64;
            return(RedirectToAction("CreateLog", new { id = employeeLog.EmployeeLogId }));
        }
        public EmployeeLog InsertEmployeeLog(Employee employee, int locationId)
        {
            EmployeeLog log = new EmployeeLog();

            log.Employee   = employee;
            log.SignInDate = DateTime.Now;
            log.LocationId = locationId;

            Session.Save(log);

            return(log);
        }
Example #8
0
 public IActionResult EmployeeLog(EmployeeLog model)
 {
     if (ModelState.IsValid)
     {
         CreateEmployeeLog(model.AccessLocationID,
                           model.StationID,
                           model.AccessDate,
                           model.IDCardNumber,
                           model.DeclineReason);
         return(RedirectToAction("Index"));
     }
     return(View());
 }
Example #9
0
        public static int CreateEmployeeLog(int accessLocationID, string stationID,
                                            DateTime accessDate, int iDCardNumber, string declineReason)
        {
            EmployeeLog data = new EmployeeLog
            {
                AccessLocationID = accessLocationID,
                StationID        = stationID,
                AccessDate       = accessDate,
                IDCardNumber     = iDCardNumber,
                DeclineReason    = declineReason
            };

            string sql = @"insert into dbo.AccessLogs (AccessLocationID, StationID, AccessDate, IDCardNumber, DeclineReason) values(@AccessLocationID, @StationID, @AccessDate, @IDCardNumber, @DeclineReason);";

            return(SqlDataAccess.SaveData(sql, data));
        }
Example #10
0
        public ActionResult Create(EmployeeLog employeeLog)
        {
            var employee = _iFEmployee.Read(employeeLog.EmployeeNumber, employeeLog.Pin);

            if (employee.EmployeeId == 0)
            {
                //return View(employeeLog); //return error
                ModelState.AddModelError("EmployeeNumber", "Employee Number or Pin does not exist");
                return(View(new EmployeeLog()));
            }
            else
            {
                employeeLog.EmployeeId = employee.EmployeeId;
                _iFEmployeeLog.Create(UserId, employeeLog);
                return(RedirectToAction("Index"));
            }
        }
        public static bool IsSaveLogEmployee(EmployeeLog employee)
        {
            MySqlConnection conn = new MySqlConnection(GlobalVariable.ConnectionString);

            conn.Open();
            MySqlTransaction tran = conn.BeginTransaction();

            try
            {
                MySqlCommand cmd = conn.CreateCommand();
                cmd.Transaction = tran;
                cmd.CommandText = QuerySaveLogEmployee(employee);
                cmd.ExecuteNonQuery();

                cmd.CommandText = "SELECT MAX(EmployeeLogID) from provident.employeelog ;";
                string lastHDID = cmd.ExecuteScalar().ToString();

                foreach (EmployeeLogDetail employeeLogDetail in employee.employeeLogDetails)
                {
                    employeeLogDetail.EmployeeLogID = Convert.ToInt32(lastHDID);
                    cmd.Transaction = tran;
                    cmd.CommandText = QuerySaveLogEmployeeDetail(employeeLogDetail);
                    cmd.ExecuteNonQuery();
                }

                tran.Commit();

                return(true);
            }
            catch (Exception ex)
            {
                tran.Rollback();
            }
            finally
            {
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }

                tran.Dispose();
            }

            return(false);
        }
Example #12
0
        private EmployeeLog EmployeeLog(EEmployeeLog eEmployeeLog)
        {
            EmployeeLog returnEmployeeLog = new EmployeeLog
            {
                SuccesLogin    = eEmployeeLog.SuccesLogin,
                CreatedDate    = eEmployeeLog.CreatedDate,
                LogDate        = eEmployeeLog.LogDate,
                UpdatedDate    = eEmployeeLog.UpdatedDate,
                LogName        = eEmployeeLog.LogName,
                CreatedBy      = eEmployeeLog.CreatedBy,
                EmployeeId     = eEmployeeLog.EmployeeId,
                EmployeeLogId  = eEmployeeLog.EmployeeLogId,
                LogTypeId      = eEmployeeLog.LogTypeId,
                UpdatedBy      = eEmployeeLog.UpdatedBy,
                EmployeeNumber = eEmployeeLog.EmployeeNumber
            };

            return(returnEmployeeLog);
        }
Example #13
0
        public ActionResult Create(EmployeeLog employeeLog)
        {
            var  employee  = _iFEmployee.Read(employeeLog.EmployeeNumber, employeeLog.Pin);
            var  logname   = _iFEmployeeLog.Readlogtype(employeeLog.LogTypeId);
            bool IsSuccess = employee.EmployeeId != 0 && employee.Pin == employeeLog.Pin;

            employeeLog.LogName       = logname.Name;
            employeeLog.EmployeeId    = employee.EmployeeId;
            employeeLog.SuccesLogin   = IsSuccess;
            employeeLog               = _iFEmployeeLog.Create(UserId, employeeLog);
            employeeLog.EmployeeImage = employee.EmployeeImage;
            if (!IsSuccess)
            {
                return(View(employeeLog));
            }
            else
            {
                return(View(employeeLog));
            }
        }
Example #14
0
        private EEmployeeLog EEmployeeLog(EmployeeLog employeelog)
        {
            EEmployeeLog returnEEmployeeLog = new EEmployeeLog
            {
                CreatedDate = employeelog.CreatedDate,
                LogDate     = employeelog.LogDate,
                UpdatedDate = employeelog.UpdatedDate,

                CreatedBy     = employeelog.CreatedBy,
                EmployeeId    = employeelog.EmployeeId,
                EmployeeLogId = employeelog.EmployeeLogId,
                LogTypeId     = employeelog.LogTypeId,
                UpdatedBy     = employeelog.UpdatedBy,
                // LogName = employeelog.LogName,

                EmployeeNumber = employeelog.EmployeeNumber
            };

            return(returnEEmployeeLog);
        }
        public static List <EmployeeLog> LoadDataEmployeeLog()
        {
            List <EmployeeLog> employees = new List <EmployeeLog>();
            MySqlConnection    conn      = new MySqlConnection(GlobalVariable.ConnectionString);

            try
            {
                conn.Open();
                MySqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = QueryGetDataEmployeeLog();
                MySqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    EmployeeLog emp = new EmployeeLog();
                    emp.EmployeeLogID              = ReaderHepler.GetValueFromReader <int>(reader, nameof(EmployeeLog.EmployeeLogID));
                    emp.Firstname                  = ReaderHepler.GetValueFromReader <string>(reader, nameof(EmployeeLog.Firstname));
                    emp.Lastname                   = ReaderHepler.GetValueFromReader <string>(reader, nameof(EmployeeLog.Lastname));
                    emp.DateOfBirth                = ReaderHepler.GetValueFromReader <DateTime>(reader, nameof(EmployeeLog.DateOfBirth));
                    emp.StartWorkDate              = ReaderHepler.GetValueFromReader <DateTime>(reader, nameof(EmployeeLog.StartWorkDate));
                    emp.Salary                     = ReaderHepler.GetValueFromReader <decimal>(reader, nameof(EmployeeLog.Salary));
                    emp.ProvidentFundRate          = ReaderHepler.GetValueFromReader <decimal>(reader, nameof(EmployeeLog.ProvidentFundRate));
                    emp.ProvidentFundCollectAmount = ReaderHepler.GetValueFromReader <decimal>(reader, nameof(EmployeeLog.ProvidentFundCollectAmount));
                    emp.employeeLogDetails         = GetEmployeeLogDetail(emp.EmployeeLogID);

                    employees.Add(emp);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }

            return(employees);
        }
Example #16
0
        private void BtnSave_Click(object sender, EventArgs e)
        {
            CalulateOnGird();

            if (!IsValidate())
            {
                return;
            }

            EmployeeLog employee = PrepareData();

            if (!EmployeeManager.IsSaveLogEmployee(employee))
            {
                MessageBox.Show("Fail !", "Alert", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            MessageBox.Show("Success !", "Alert", MessageBoxButtons.OK, MessageBoxIcon.Information);

            ClearData();
        }
        private void GetUserLog()
        {
            string empid = Request["empid"];

            var collection = EmployeeLog.GetAllLogtimeByUser(empid);

            JsonBridge <EmployeeLog> datafeed = new JsonBridge <EmployeeLog>();

            if (collection.Count != 0)
            {
                datafeed.collection = collection;
                datafeed.Valid      = 1;
            }
            else
            {
                datafeed.collection = collection;
                datafeed.Valid      = 0;
            }

            string output = JsonConvert.SerializeObject(datafeed);

            Response.Write(output);
        }
        private static string QuerySaveLogEmployee(EmployeeLog employee)
        {
            List <QuerySource> querySources = new List <QuerySource>();

            querySources.Add(new QuerySource {
                FieldName = nameof(EmployeeLog.Firstname), Value = StringFormatHelper.GetSingleQuote(employee.Firstname)
            });
            querySources.Add(new QuerySource {
                FieldName = nameof(EmployeeLog.Lastname), Value = StringFormatHelper.GetSingleQuote(employee.Lastname)
            });
            querySources.Add(new QuerySource {
                FieldName = nameof(EmployeeLog.DateOfBirth), Value = StringFormatHelper.GetSingleQuote(StringFormatHelper.GetShortEnDateFormat(employee.DateOfBirth))
            });
            querySources.Add(new QuerySource {
                FieldName = nameof(EmployeeLog.StartWorkDate), Value = StringFormatHelper.GetSingleQuote(StringFormatHelper.GetShortEnDateFormat(employee.StartWorkDate))
            });
            querySources.Add(new QuerySource {
                FieldName = nameof(EmployeeLog.Salary), Value = (employee.Salary)
            });
            querySources.Add(new QuerySource {
                FieldName = nameof(EmployeeLog.ProvidentFundRate), Value = (employee.ProvidentFundRate)
            });
            querySources.Add(new QuerySource {
                FieldName = nameof(EmployeeLog.ProvidentFundCollectAmount), Value = (employee.ProvidentFundCollectAmount)
            });

            var fieldNames = querySources.Select(a => a.FieldName).ToArray();
            var values     = querySources.Select(a => a.Value).ToArray();

            string query = "INSERT INTO provident.employeelog ( " + string.Join(",", fieldNames)
                           + ") VALUES ( " + string.Join(",", values) + " "
                           + ");"
            ;

            return(query);
        }
 public ActionResult Update(EmployeeLog employeeLog)
 {
     employeeLog = _iFEmployeeLog.Update(UserId, employeeLog);
     return(RedirectToAction("Index"));
 }
 public ActionResult Create(EmployeeLog employeeLog)
 {
     employeeLog.SuccesLogin = true;
     employeeLog             = _iFEmployeeLog.Create(UserId, employeeLog);
     return(RedirectToAction("Index"));
 }
        public EmployeeLog InsertEmployeeLog(Employee employee, int locationId)
        {
            EmployeeLog log = new EmployeeLog();
            log.Employee = employee;
            log.SignInDate = DateTime.Now;
            log.LocationId = locationId;

            Session.Save(log);

            return log;
        }
        protected void btnLogout_Click(object sender, EventArgs e)
        {
            EmployeeLog.InsertLogOutTime(GlobalAccess.EmpID, GlobalAccess.Fullname);

            ClearServerApplication();
        }
        private void DeleteOrder(DataGridViewCellEventArgs e)
        {
            DialogResult result = MessageBox.Show("Bạn muốn xóa đơn hàng này?", "Xoá đơn hàng", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (result == DialogResult.Yes)
            {
                DataGridViewRow currentRow = dgwOrderList.Rows[e.RowIndex];

                OrderService orderService = new OrderService();
                int          id           = ObjectHelper.GetValueFromAnonymousType <int>(currentRow.DataBoundItem, "Id");
                Order        order        = orderService.GetOrder(id);
                DateTime     systime      = BaoHienRepository.GetBaoHienDBDataContext().GetSystemDate();

                #region CustomerLog

                CustomerLogService cls = new CustomerLogService();
                CustomerLog        cl  = cls.GetCustomerLog(order.OrderCode);
                bool kq = true;
                if (cl != null)
                {
                    kq = cls.DeleteCustomerLog(cl.Id);
                }

                #endregion

                #region ProductLog

                ProductLogService  productLogService = new ProductLogService();
                OrderDetailService orderDetailService = new OrderDetailService();
                List <OrderDetail> details = orderDetailService.SelectOrderDetailByWhere(x => x.OrderId == order.Id).ToList();
                ProductLog         pl, newpl;
                foreach (OrderDetail item in details)
                {
                    pl    = productLogService.GetProductLog(item.ProductId, item.AttributeId, item.UnitId);
                    newpl = new ProductLog()
                    {
                        ProductId    = item.ProductId,
                        AttributeId  = item.AttributeId,
                        UnitId       = item.UnitId,
                        BeforeNumber = pl.AfterNumber,
                        Amount       = item.NumberUnit,
                        AfterNumber  = pl.AfterNumber + item.NumberUnit,
                        RecordCode   = order.OrderCode,
                        Status       = BHConstant.DEACTIVE_STATUS,
                        Direction    = BHConstant.DIRECTION_IN,
                        UpdatedDate  = systime
                    };
                    productLogService.AddProductLog(newpl);
                }
                productLogService.DeactiveProductLog(order.OrderCode);

                #endregion

                #region EmployeeLog

                int salerId = (int)order.Customer.SalerId;
                if (salerId > 0)
                {
                    EmployeeLogService els      = new EmployeeLogService();
                    EmployeeLog        order_el = els.SelectEmployeeLogByWhere(x => x.RecordCode == order.OrderCode).FirstOrDefault();
                    if (order_el != null)
                    {
                        els.DeleteEmployeeLog(order_el.Id);
                    }
                }

                #endregion

                if (!orderService.DeleteOrder(id) && kq)
                {
                    MessageBox.Show("Hiện tại hệ thống đang có lỗi. Vui lòng thử lại sau!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                loadOrderList();
            }
        }