Example #1
0
        //update
        public async Task <int> UpdateDayOffAsync(DayOffDto dto)
        {
            var sql = " UPDATE [dbo].[DayOff] " +
                      "  SET DayOff.[DayOff] = @DayOff " +
                      "     ,[Reason] = @Reason " +
                      "     ,[TimeOff] = @TimeOff " +
                      "     ,[ApprovedBy] = @ApprovedBy " +
                      "     ,[ApprovedDate] = @ApprovedDate " +
                      "  ,[UpdatedId] = @UpdatedId" +
                      "  ,[UpdatedDate] = GetDate() " +
                      "  WHERE  DayOff.Id = @Id";

            var x = await Connection.ExecuteAsync(sql, new
            {
                Id           = dto.Id,
                DayOff       = dto.DayOff1,
                Reason       = dto.Reason,
                TimeOff      = dto.TimeOff,
                ApprovedBy   = dto.ApprovedBy,
                ApprovedDate = dto.ApprovedDate,
                UpdatedId    = dto.UpdatedId
            }, Transaction);

            return(x);
        }
Example #2
0
        public async Task <IActionResult> Post([FromBody] DayOffDto dto)
        {
            using (Logger.BeginScope("Insert Day Off "))
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(new { message = "Not a valid model" + ModelState.ToString() }));
                }
                try
                {
                    _UnitOfWork.Transaction = _UnitOfWork.Begin();
                    var maxYear = await _UnitOfWork.AnnualLeavePaidRepository.GetMaxYear(dto.DayOff1.Value.Year, dto.EmpId.Value);

                    var id = await _UnitOfWork.AnnualLeavePaidRepository.InsertDayOffAsync(dto);

                    if (maxYear > dto.DayOff1.Value.Year)
                    {
                        await _UnitOfWork.AnnualLeavePaidRepository.UpdateDayRemainAsync(dto.DayOff1.Value.Year, dto.EmpId.Value, maxYear);
                    }

                    _UnitOfWork.Commit();

                    return(Ok(id));
                }
                catch (Exception ex)
                {
                    _UnitOfWork.Dispose();
                    return(BadRequest(new { message = ex.Message }));
                }
            }
        }
Example #3
0
        //insert
        public async Task <int> InsertDayOffAsync(DayOffDto dto)
        {
            var sql = " DECLARE @ID int;" +
                      " INSERT INTO [dbo].[DayOff] " +
                      " ([DayOff] " +
                      " ,[Reason] " +
                      " ,[TimeOff] " +
                      " ,[ApprovedBy] " +
                      " ,[ApprovedDate] " +
                      " ,[EmpId] " +
                      " ,[CreatedId] " +
                      " ,[CreatedDate]) " +
                      " VALUES " +
                      " (@DayOff" +
                      " ,@Reason" +
                      " ,@TimeOff" +
                      " ,@ApprovedBy" +
                      " ,@ApprovedDate" +
                      " ,@EmpId" +
                      " ,@CreatedId " +
                      " ,GETDATE() )" +
                      " SET @ID = SCOPE_IDENTITY(); " +
                      " SELECT @ID";

            var result = await Connection.ExecuteAsync(sql, new
            {
                DayOff       = dto.DayOff1,
                Reason       = dto.Reason,
                TimeOff      = dto.TimeOff,
                ApprovedDate = dto.ApprovedDate,
                ApprovedBy   = dto.ApprovedBy,
                EmpId        = dto.EmpId,
                CreatedId    = dto.CreatedId
            }, Transaction);

            return(result);
        }