public async Task <IActionResult> PutEmpCurrentPettyCashBalance(int id, EmpCurrentPettyCashBalanceDTO empCurrentPettyCashBalanceDto)
        {
            if (id != empCurrentPettyCashBalanceDto.Id)
            {
                return(BadRequest());
            }

            var empCurrentPettyCashBalance = await _context.EmpCurrentPettyCashBalances.FindAsync(id);

            empCurrentPettyCashBalance.Id         = empCurrentPettyCashBalanceDto.Id;
            empCurrentPettyCashBalance.EmployeeId = empCurrentPettyCashBalanceDto.EmployeeId;
            empCurrentPettyCashBalance.CurBalance = empCurrentPettyCashBalanceDto.CurBalance;
            empCurrentPettyCashBalance.UpdatedOn  = empCurrentPettyCashBalanceDto.UpdatedOn;

            _context.EmpCurrentPettyCashBalances.Update(empCurrentPettyCashBalance);
            //_context.Entry(projectDto).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!EmpCurrentPettyCashBalanceExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <ActionResult <EmpCurrentPettyCashBalanceDTO> > GetEmpCurrentPettyCashBalance(int id)
        {
            EmpCurrentPettyCashBalanceDTO empCurrentPettyCashBalanceDTO = new EmpCurrentPettyCashBalanceDTO();

            var empCurrentPettyCashBalance = await _context.EmpCurrentPettyCashBalances.FindAsync(id);

            if (empCurrentPettyCashBalance == null)
            {
                return(NotFound());
            }

            empCurrentPettyCashBalanceDTO.Id         = empCurrentPettyCashBalance.Id;
            empCurrentPettyCashBalanceDTO.EmployeeId = empCurrentPettyCashBalance.EmployeeId;
            empCurrentPettyCashBalanceDTO.CurBalance = empCurrentPettyCashBalance.CurBalance;
            empCurrentPettyCashBalanceDTO.UpdatedOn  = empCurrentPettyCashBalance.UpdatedOn;


            return(empCurrentPettyCashBalanceDTO);
        }
        public async Task <ActionResult <IEnumerable <EmpCurrentPettyCashBalanceDTO> > > GetEmpCurrentPettyCashBalances()
        {
            List <EmpCurrentPettyCashBalanceDTO> ListEmpCurrentPettyCashBalanceDTO = new List <EmpCurrentPettyCashBalanceDTO>();

            var empCurrentPettyCashBalances = await _context.EmpCurrentPettyCashBalances.ToListAsync();

            foreach (EmpCurrentPettyCashBalance empCurrentPettyCashBalance in empCurrentPettyCashBalances)
            {
                EmpCurrentPettyCashBalanceDTO empCurrentPettyCashBalanceDTO = new EmpCurrentPettyCashBalanceDTO();

                empCurrentPettyCashBalanceDTO.Id         = empCurrentPettyCashBalance.Id;
                empCurrentPettyCashBalanceDTO.EmployeeId = empCurrentPettyCashBalance.EmployeeId;
                empCurrentPettyCashBalanceDTO.CurBalance = empCurrentPettyCashBalance.CurBalance;
                empCurrentPettyCashBalanceDTO.UpdatedOn  = empCurrentPettyCashBalance.UpdatedOn;
                ListEmpCurrentPettyCashBalanceDTO.Add(empCurrentPettyCashBalanceDTO);
            }

            return(ListEmpCurrentPettyCashBalanceDTO);
        }
        public async Task <ActionResult <EmpCurrentPettyCashBalanceDTO> > GetEmpCurrentPettyCashBalance(int id)
        {
            EmpCurrentPettyCashBalanceDTO empCurrentPettyCashBalanceDTO = new EmpCurrentPettyCashBalanceDTO();

            var empCurrentPettyCashBalance = _context.EmpCurrentPettyCashBalances.Where(e => e.EmployeeId == id).FirstOrDefault();

            if (empCurrentPettyCashBalance == null)
            {
                empCurrentPettyCashBalanceDTO.CurBalance = 0;
                return(empCurrentPettyCashBalanceDTO);
            }

            //empCurrentPettyCashBalanceDTO.Id = empCurrentPettyCashBalance.Id;
            empCurrentPettyCashBalanceDTO.EmployeeId = empCurrentPettyCashBalance.EmployeeId;
            empCurrentPettyCashBalanceDTO.CurBalance = empCurrentPettyCashBalance.CurBalance;
            empCurrentPettyCashBalanceDTO.UpdatedOn  = empCurrentPettyCashBalance.UpdatedOn;


            return(empCurrentPettyCashBalanceDTO);
        }
        public async Task <IActionResult> PutEmpCurrentPettyCashBalance(int id, EmpCurrentPettyCashBalanceDTO empCurrentPettyCashBalanceDto)
        {
            if (id != empCurrentPettyCashBalanceDto.Id)
            {
                return(Conflict(new RespStatus {
                    Status = "Failure", Message = "Id is invalid"
                }));
            }

            var empCurrentPettyCashBalance = await _context.EmpCurrentPettyCashBalances.FindAsync(id);

            empCurrentPettyCashBalance.Id         = empCurrentPettyCashBalanceDto.Id;
            empCurrentPettyCashBalance.EmployeeId = empCurrentPettyCashBalanceDto.EmployeeId;
            empCurrentPettyCashBalance.CurBalance = empCurrentPettyCashBalanceDto.CurBalance;
            empCurrentPettyCashBalance.UpdatedOn  = empCurrentPettyCashBalanceDto.UpdatedOn;

            _context.EmpCurrentPettyCashBalances.Update(empCurrentPettyCashBalance);
            //_context.Entry(projectDto).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!EmpCurrentPettyCashBalanceExists(id))
                {
                    return(Conflict(new RespStatus {
                        Status = "Failure", Message = "Currnet Balance Id invalid!"
                    }));
                }
                else
                {
                    throw;
                }
            }

            return(Ok(new RespStatus {
                Status = "Success", Message = "Petty Cash Balance Details Updated!"
            }));
        }
        public async Task <ActionResult <EmpCurrentPettyCashBalance> > PostEmpCurrentPettyCashBalance(EmpCurrentPettyCashBalanceDTO empCurrentPettyCashBalanceDto)
        {
            EmpCurrentPettyCashBalance empCurrentPettyCashBalance = new EmpCurrentPettyCashBalance
            {
                Id         = empCurrentPettyCashBalanceDto.Id,
                EmployeeId = empCurrentPettyCashBalanceDto.EmployeeId,
                CurBalance = empCurrentPettyCashBalanceDto.CurBalance,
                UpdatedOn  = empCurrentPettyCashBalanceDto.UpdatedOn
            };

            _context.EmpCurrentPettyCashBalances.Add(empCurrentPettyCashBalance);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetEmpCurrentPettyCashBalance", new { id = empCurrentPettyCashBalance.Id }, empCurrentPettyCashBalance));
        }