public ActionResult SaveOvertime(Overtime overtime)
        {
            SaveOvertimeControl uco = new SaveOvertimeControl();

            overtime = uco.Save(overtime);
            return(View("NewOvertime", overtime));
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            Wage ivanov = new Director();

            ivanov = new Overtime(ivanov);
            ivanov = new Premium(ivanov);
            Console.WriteLine(ivanov.info());

            Wage petrov = new Junior();

            petrov = new Late(petrov);
            petrov = new Late(petrov);
            petrov = new Late(petrov);
            Console.WriteLine(petrov.info());

            Wage novikov = new Middle();

            novikov = new Late(novikov);
            novikov = new Overtime(novikov);
            novikov = new Overtime(novikov);
            novikov = new Deal(novikov);
            Console.WriteLine(novikov.info());

            Wage andreev = new Middle();

            andreev = new Overtime(andreev);
            andreev = new Overtime(andreev);
            andreev = new Deal(andreev);
            andreev = new Deal(andreev);
            andreev = new Deal(andreev);
            andreev = new Deal(andreev);
            andreev = new Premium(andreev);
            Console.WriteLine(andreev.info());
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,Day,NumberOfHours,StartTime,DtStartTime,Date,EmployeeId,Employee.FullName")] Overtime overtime)
        {
            if (id != overtime.Id)
            {
                return(NotFound());
            }
            //var employee = _context.Employee.Where(e => e.Id == overtime.EmployeeId).FirstOrDefault();
            //var viewModel = new ViewModel()
            //{
            //    Overtime = overtime,
            //    Employee = employee
            //};

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(overtime);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!OvertimeExists(overtime.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(overtime));
        }
        public async Task <ActionResult> Put(int id, [FromBody] Overtime overtime)
        {
            try
            {
                VerifyUser();
                _validateService.Validate(overtime);
                Overtime overtimeToUpdate = await _overtimeService.GetSingleById(id);

                await _overtimeService.Update(overtimeToUpdate, overtime);

                return(NoContent());
            }
            catch (ServiceValidationExeption e)
            {
                var result = new ResultFormatter(API_VERSION, General.BAD_REQUEST_STATUS_CODE, General.BAD_REQUEST_MESSAGE)
                             .Fail(e);
                return(BadRequest(result));
            }
            catch (Exception e)
            {
                var result = new ResultFormatter(API_VERSION, General.INTERNAL_ERROR_STATUS_CODE, e.Message)
                             .Fail();
                return(StatusCode(General.INTERNAL_ERROR_STATUS_CODE, result));
            }
        }
Beispiel #5
0
        /// <summary>
        /// 查询加班表中的所有信息
        /// </summary>
        /// <returns> 一个加班类组成的list集合</returns>
        public List <Overtime> ReadAll()
        {
            string sql    = "select * from Overtime ";
            var    otList = new List <Overtime>();

            otList.Clear();
            var reader = SQLiteHelper.ExecuteReader(sql);

            if (reader.HasRows)
            {
                while (reader.Read())
                {
                    var ot = new Overtime();
                    ot.Id            = Convert.ToInt32(reader[0]);
                    ot.EmployeeId    = reader[1].ToString();
                    ot.ProjectId     = Convert.ToInt32(reader[2]);
                    ot.DateTimeStart = (DateTime)reader[3];
                    ot.DateTimeEnd   = (DateTime)reader[4];
                    ot.Duration      = (float)Math.Round(Convert.ToDouble(reader[5]), 1);
                    ot.Reason        = reader[6].ToString();
                    ot.Status        = reader[7].ToString();
                    otList.Add(ot);
                }
            }
            reader.Close();
            return(otList);
        }
Beispiel #6
0
        /// <summary>
        /// 详情
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public Overtime GetListyi(int id)
        {
            string sql = "select * from Overtime where OvertimeID=" + id;

            db.PrepareSql(sql);
            DataTable dt = new DataTable();

            dt = db.ExecQuery();
            if (dt.Rows.Count == 0)
            {
                return(null);
            }
            Overtime entity = new Overtime();

            foreach (DataRow item in dt.Rows)
            {
                entity.OvertimeID        = int.Parse(item["OvertimeID"].ToString());
                entity.OvertimeStateTime = DateTime.Parse(item["OvertimeStateTime"].ToString());
                entity.OvertimeEndTime   = DateTime.Parse(item["OvertimeEndTime"].ToString());
                entity.OvertimeDuration  = int.Parse(item["OvertimeDuration"].ToString());
                entity.UserID            = int.Parse(item["UserID"].ToString());
                entity.ApplyTime         = DateTime.Parse(item["ApplyTime"].ToString());
                entity.OvertimeState     = int.Parse(item["OvertimeState"].ToString());
                entity.ApproverReason    = item["ApproverReason"].ToString();
            }
            return(entity);
        }
Beispiel #7
0
        /// <summary>
        /// 更新加班表
        /// </summary>
        /// <param name="ot">需要修改的加班表</param>
        /// <returns>修该成功返回true 否则返回false</returns>
        public bool Update(Overtime ot)
        {
            OvertimeDal od     = new OvertimeDal();
            var         otList = od.QueryByEmpId(ot.EmployeeId);

            if (otList.Count == 0)
            {
                return(od.Add(ot));
            }

            foreach (var item in otList)
            {
                var start = item.DateTimeStart;
                var end   = item.DateTimeEnd;

                //是否要添加的加班表的开始时间早于该item的开始时间   && 要添加的加班表结束时间早于该 item的开始时间
                bool early = ot.DateTimeStart.CompareTo(start) < 0 && ot.DateTimeEnd.CompareTo(start) < 0 ? true : false;

                //是否要添加的加班表的开始时间迟于该item的开始时间   && 要添加的加班表结束时间迟于该 item的开始时间
                bool late = ot.DateTimeStart.CompareTo(end) > 0 && ot.DateTimeEnd.CompareTo(end) > 0 ? true : false;
                if (item.Id != ot.Id)//修改,,不与自己本身做比较
                {
                    if (!early && !late)
                    {
                        return(false);//如果这段时间有加班.就不能更新此例
                    }
                }
            }
            return(od.Update(ot));
        }
Beispiel #8
0
        /// <summary>
        /// 添加加班记录
        /// </summary>
        /// <param name="ot">加班记录类</param>
        /// <returns>添加成功返回 true 否则返回false</returns>
        public bool Add(Overtime ot)
        {
            OvertimeDal od     = new OvertimeDal();
            var         otList = od.QueryByEmpId(ot.EmployeeId);

            if (otList.Count == 0)
            {
                return(od.Add(ot));
            }

            foreach (var item in otList)
            {
                var start = item.DateTimeStart; //某个加班详情的开始时间
                var end   = item.DateTimeEnd;   //结束时间

                //是否要添加的加班表的开始时间早于该item的开始时间   && 要添加的加班表结束时间早于该 item的开始时间
                bool early = ot.DateTimeStart.CompareTo(start) < 0 && ot.DateTimeEnd.CompareTo(start) < 0 ? true : false;

                //是否要添加的加班表的开始时间迟于该item的开始时间   && 要添加的加班表结束时间迟于该 item的开始时间
                bool late = ot.DateTimeStart.CompareTo(end) > 0 && ot.DateTimeEnd.CompareTo(end) > 0 ? true : false;
                if (!early && !late)
                {
                    return(false);//如果不早于也不迟于  表示这段时间有加班.就不能添加此例
                }
            }
            return(od.Add(ot));
            //select * from overtime where  starttime<xxx  and overtime>XXX and empid=XXX and id<>XXX
        }
Beispiel #9
0
 public Task UpdateAsync(Overtime overtime)
 {
     return(Task.Run(() =>
     {
         Update(overtime);
     }));
 }
Beispiel #10
0
 public Task AddAsync(Overtime overtime)
 {
     return(Task.Run(() =>
     {
         Add(overtime);
     }));
 }
        public JsonResult AddOverTime(Overtime overtime)
        {
            var userID = (Session["UserInfo"] as UserInfo).UserID;

            overtime.UserID = userID;
            return(Json(overTimeBLL.AddOverTime(overtime).ToString()));
        }
        public Task <int> Create(Overtime model)
        {
            EntityExtension.FlagForCreate(model, _identityService.Username, USER_AGENT);
            _OvertimeDbSet.Add(model);

            return(_dbContext.SaveChangesAsync());
        }
 public Overtime Save(Overtime overtime)
 {
     if (overtime != null)
     {
         overtime.OvertimeID = "AE0100012";
     }
     return(overtime);
 }
Beispiel #14
0
        public ActionResult DeleteConfirmed(int id)
        {
            Overtime overtime = db.Overtimes.Find(id);

            db.Overtimes.Remove(overtime);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult NewOvertime()
        {
            OvertimeBuilder            builder  = new OvertimeBuilder();
            EOfficeDirector <Overtime> director = new EOfficeDirector <Overtime>();
            Overtime form = director.Construct(builder);

            return(View(form));
        }
Beispiel #16
0
        protected new void HandleRoundOfficiallyEnd(object sender, RoundOfficiallyEndedEventArgs e)
        {
            if (!IsMatchStarted || IsFreezetime)
            {
                return;
            }

            CheckForSpecialClutchEnd();
            UpdateKillsCount();
            UpdatePlayerScore();

            Application.Current.Dispatcher.Invoke(delegate
            {
                Demo.Rounds.Add(CurrentRound);
            });

            // End of a half
            if (IsLastRoundHalf)
            {
                IsHalfMatch    = !IsHalfMatch;
                IsMatchStarted = false;
            }

            // Last round of the match ended, may have OT
            if (_isLastRoundFinal)
            {
                IsMatchStarted = false;
                IsOvertime     = true;

                // Add the current overtime only if it's not the first
                if (CurrentOvertime.Number != 0)
                {
                    Application.Current.Dispatcher.Invoke(delegate
                    {
                        Demo.Overtimes.Add(CurrentOvertime);
                    });
                    IsHalfMatch = true;
                }
                else
                {
                    // If it's the first OT, teams haven't been swapped
                    IsHalfMatch = false;
                }

                // Create new OT
                CurrentOvertime = new Overtime
                {
                    Number = ++OvertimeCount
                };
            }

            if (IsLastRoundHalf)
            {
                CheckForSpecialClutchEnd();
                IsSwapTeamRequired = true;
                IsLastRoundHalf    = false;
            }
        }
Beispiel #17
0
        protected new void HandleRoundOfficiallyEnd(object sender, RoundOfficiallyEndedEventArgs e)
        {
            // Prevent adding rounds that are between half side during overtime
            if (IsOvertime && Parser.TScore == _previousScoreT && Parser.CTScore == _previousScoreCT && !IsHalfMatch)
            {
                IsMatchStarted = false;
                return;
            }

            // Keep track of the score to avoid "warmup" round that are between half side
            if (IsOvertime)
            {
                _previousScoreCT = Parser.CTScore;
                _previousScoreT  = Parser.TScore;
            }

            base.HandleRoundOfficiallyEnd(sender, e);

            if (!IsMatchStarted)
            {
                return;
            }

            int score = Demo.ScoreTeam1 + Demo.ScoreTeam2;

            if (score < 15)
            {
                return;
            }

            if (score == 15)
            {
                IsMatchStarted = false;
                IsHalfMatch    = true;
            }

            if (score < 30)
            {
                return;
            }
            if (score == 30)
            {
                IsMatchStarted = false;
                IsOvertime     = true;

                // Create a new round when the score is 15-15 because round_start isn't raised
                if (Parser.TScore == 15 && Parser.CTScore == 15)
                {
                    CreateNewRound();
                }

                // Init the first OT
                CurrentOvertime = new Overtime()
                {
                    Number = ++OvertimeCount
                };
            }
        }
Beispiel #18
0
        public ActionResult EditOvertime(int id, string searchString = "")
        {
            Overtime overtime = (from over in repository.Overtimes where over.OvertimeID == id select over).FirstOrDefault();

            ViewBag.SearchString = searchString;
            ViewBag.ID           = id;

            return(View(overtime));
        }
Beispiel #19
0
        public void CreateOvertime(string day, TimeSpan startTime, string numberOfHours)
        {
            var newOvertime = new Overtime()
            {
                Day = day, StartTime = startTime, NumberOfHours = Convert.ToInt32(numberOfHours)
            };

            _db.Overtime.Add(newOvertime);
            _db.SaveChanges();
        }
Beispiel #20
0
        protected override void HandleMatchStarted(object sender, MatchStartedEventArgs e)
        {
            _matchStartedCount++;

            // ESEA demos raise begin_new_match between half time, it's only when the LO3 occurs that the match resume
            if (_matchStartedCount == 1)
            {
                IsMatchStarted = false;
            }

            if (IsOvertime && _matchStartedCount == 3)
            {
                // Ignore the first OT
                if (CurrentRound.Number > 32)
                {
                    if (!_overtimeHasSwapped)
                    {
                        SwapTeams();
                        _overtimeHasSwapped = true;
                    }
                    else
                    {
                        _overtimeHasSwapped = false;
                    }
                }

                if (IsHalfMatch && CurrentOvertime.ScoreTeam1 != 0 && CurrentOvertime.ScoreTeam2 != 0)
                {
                    Application.Current.Dispatcher.Invoke(delegate
                    {
                        Demo.Overtimes.Add(CurrentOvertime);
                    });
                    CurrentOvertime = new Overtime()
                    {
                        Number = ++OvertimeCount
                    };
                }

                if (Demo.Overtimes.Count > 0 && IsHalfMatch)
                {
                    IsHalfMatch = false;
                }
                else
                {
                    IsHalfMatch = !IsHalfMatch;
                }

                IsMatchStarted = true;
            }

            if (IsMatchStarted && CurrentRound.Number == 1)
            {
                InitPlayers();
            }
        }
        public async Task <IActionResult> Create([Bind("Id,Day,NumberOfHours,StartTime,DtStartTime,Date,EmployeeId")] Overtime overtime)
        {
            if (ModelState.IsValid)
            {
                _context.Add(overtime);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(overtime));
        }
Beispiel #22
0
 public ActionResult Edit([Bind(Include = "OvertimeID,Date,Hours,UserID")] Overtime overtime)
 {
     if (ModelState.IsValid)
     {
         db.Entry(overtime).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.UserID = new SelectList(db.Users, "UserID", "UserName", overtime.UserID);
     return(View(overtime));
 }
        public async Task <ActionResult> Post([FromBody] Overtime overtime, IFormFile stream)
        {
            try
            {
                VerifyUser();
                _validateService.Validate(overtime);

                //upload file
                if (CloudStorageAccount.TryParse(config.Value.StorageConnection, out CloudStorageAccount storageAccount))
                {
                    CloudBlobClient    blobClient = storageAccount.CreateCloudBlobClient();
                    CloudBlobContainer container  = blobClient.GetContainerReference(config.Value.Container);

                    var chars       = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
                    var stringChars = new char[8];
                    var random      = new Random();
                    for (int i = 0; i < stringChars.Length; i++)
                    {
                        stringChars[i] = chars[random.Next(chars.Length)];
                    }

                    var            finalString = new String(stringChars);
                    CloudBlockBlob blockBlob   = container.GetBlockBlobReference(finalString + stream.FileName);

                    string fileUrl = blockBlob?.Uri.ToString();
                    overtime.FileUrl = fileUrl.ToString();

                    await blockBlob.UploadFromStreamAsync(stream.OpenReadStream());
                }
                else
                {
                    return(null);
                }

                await _overtimeService.Create(overtime);

                return(CreatedAtRoute("Get", new { Id = overtime.Id }, overtime));
            }


            catch (ServiceValidationExeption e)
            {
                var result = new ResultFormatter(API_VERSION, General.BAD_REQUEST_STATUS_CODE, General.BAD_REQUEST_MESSAGE)
                             .Fail(e);
                return(BadRequest(result));
            }
            catch (Exception e)
            {
                var result = new ResultFormatter(API_VERSION, General.INTERNAL_ERROR_STATUS_CODE, e.Message)
                             .Fail();
                return(StatusCode(General.INTERNAL_ERROR_STATUS_CODE, result));
            }
        }
Beispiel #24
0
 public static Overtime Save(Overtime obj, EntityState state)
 {
     if (state == EntityState.Added)
     {
         obj.OvertimeID = _container.Resolve <IOvertimeRepository>().Insert(obj);
     }
     else
     {
         _container.Resolve <IOvertimeRepository>().Update(obj, obj.OvertimeID);
     }
     return(obj);
 }
Beispiel #25
0
        public ActionResult Create([Bind(Include = "OvertimeID,Date,Hours,UserID")] Overtime overtime)
        {
            if (ModelState.IsValid)
            {
                db.Overtimes.Add(overtime);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.UserID = new SelectList(db.Users, "UserID", "UserName", overtime.UserID);
            return(View(overtime));
        }
Beispiel #26
0
        public Overtime DeleteOvertime(int overtimeID)
        {
            Overtime dbEntry = context.Overtimes.Find(overtimeID);

            if (dbEntry != null)
            {
                context.Overtimes.Remove(dbEntry);
                context.SaveChanges();
            }

            return(dbEntry);
        }
Beispiel #27
0
 public GameData(DateTime gameDate, string visitorTeam, string homeTeam, int visitorPoints, int homePoints, string boxScoreLink, string overtimes, int attendance)
 {
     GameDate          = gameDate;
     VisitorTeam       = visitorTeam;
     HomeTeam          = homeTeam;
     WinningTeam       = homePoints > visitorPoints ? homeTeam : visitorTeam;
     VisitorPoints     = visitorPoints;
     HomePoints        = homePoints;
     BoxScoreLink      = boxScoreLink;
     NumberOfOvertimes = new Overtime(overtimes).Count;
     Attendance        = attendance;
     IsPlayoffGame     = new IsPlayoffGame(gameDate);
 }
        public IHttpActionResult DangKyTangCa([FromBody] ThongTinChamCong obj)
        {
            Overtime ov = new Overtime();

            ov.CreatedDate   = obj.NgayDangKy;
            ov.RowIDEmployee = obj._token.RowID;
            ov.TotalHour     = obj.TotalHour;
            ov.Reason        = obj.Reason;
            db.Overtimes.Add(ov);

            int affectedRows = db.SaveChanges();

            return(Ok());
        }
        public async Task<int> GetOvertimeId(Overtime overtime)
        {
            var id = await _context.Overtime
                .AsNoTracking()
                .FirstOrDefaultAsync(
                    x =>
                        x.Date == overtime.Date
                        && x.ClockNumber == overtime.ClockNumber
                        && x.TypeName == overtime.TypeName
                )
                .ConfigureAwait(false);

            return id?.OvertimeId ?? 0;
        }
Beispiel #30
0
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public int Add(Overtime entity)
        {
            string sql = "insert into Overtime(OvertimeStateTime,OvertimeEndTime,OvertimeDuration,UserID,ApplyTime,OvertimeState,ApproverReason) values(@OvertimeStateTime,@OvertimeEndTime,@OvertimeDuration,@UserID,@ApplyTime,@OvertimeState,@ApproverReason)";

            db.PrepareSql(sql);
            db.SetParameter("OvertimeStateTime", entity.OvertimeStateTime);
            db.SetParameter("OvertimeEndTime", entity.OvertimeEndTime);
            db.SetParameter("OvertimeDuration", entity.OvertimeDuration);
            db.SetParameter("UserID", entity.UserID);
            db.SetParameter("ApplyTime", entity.ApplyTime);
            db.SetParameter("OvertimeState", entity.OvertimeState);
            db.SetParameter("ApproverReason", entity.ApproverReason);
            return(db.ExecNonQuery());
        }
 public Overtime Save(Overtime overtime)
 {
     if (overtime != null)
         overtime.OvertimeID = "AE0100012";
     return overtime;
 }
 public ActionResult SaveOvertime(Overtime overtime)
 {
     SaveOvertimeControl uco = new SaveOvertimeControl();
     overtime = uco.Save(overtime);
     return View("NewOvertime", overtime);
 }